GUIDOLib
1.7.7
Guido Engine Internal Documentation
|
14 #ifndef __GuidoPianoRoll__ 15 #define __GuidoPianoRoll__ 20 #include "ARMusicalVoice.h" 21 #include "ARNoteFormat.h" 25 #include "PianoRoll.h" 26 #include "GUIDOScoreMap.h" 29 #include "MidiShareLight.h" 32 #include "GUIDOEngine.h" 34 #define kDefaultWidth 1024 // the default canvas width 35 #define kDefaultHeight 512 // the default canvas height 36 #define kDefaultLowPitch -1 // the default min pitch 37 #define kDefaultHighPitch -1 // the default max pitch 38 #define kDefaultStartDateNum 0 // the default start date num 39 #define kDefaultStartDateDenom 1 // the default start date num 40 #define kDefaultEndDateNum 0 // the default start date num 41 #define kDefaultEndDateDenom 0 // the default start date num 46 void initAutoVoiceColors ();
68 DrawParams(
int inWidth,
int inHeight,
float inNoteHeight,
float inUntimedLeftElementWidth,
VGDevice *inDev) {
105 virtual void DrawNote (
int pitch,
double date,
double dur,
const DrawParams& drawParams)
const;
106 virtual void DrawRect (
float x,
float y,
double dur,
const DrawParams& drawParams)
const;
118 virtual void DrawFromMidi (
const DrawParams& drawParams);
119 virtual void DrawMidiSeq (MidiSeqPtr seq,
int tpqn,
const DrawParams& drawParams)
const;
127 virtual float date2xpos (
double pos,
int width,
float untimedLeftElementWidth)
const;
128 virtual float duration2width (
double dur,
int width,
float untimedLeftElementWidth)
const;
134 float roundFloat(
float numberToRound)
const {
return floor(numberToRound + 0.5f); }
TYPE_TIMEPOSITION fEndDate
Definition: PianoRoll.h:140
The class for GUIDO sequence, list of timepositions of events of a stream.
Definition: ARMusicalVoice.h:76
void DrawOctavesGrid(DrawParams &drawParams) const
virtual void onDraw(int width, int height, VGDevice *dev)
int fNoteColor
Definition: PianoRoll.h:151
void autoAdjustPitchRange(int &lowerPitch, int &higherPitch)
bool fVoicesAutoColored
Definition: PianoRoll.h:146
virtual void DrawNote(int pitch, double date, double dur, const DrawParams &drawParams) const
PianoRoll(ARMusic *arMusic)
ARMusic * fARMusic
Definition: PianoRoll.h:136
TYPE_DURATION fChordDuration
Definition: PianoRoll.h:154
virtual float date2xpos(double pos, int width, float untimedLeftElementWidth) const
int height
Definition: PianoRoll.h:78
virtual void DrawRect(float x, float y, double dur, const DrawParams &drawParams) const
float getKeyboardWidth(int height) const
int width
Definition: PianoRoll.h:77
Numerator and denominator.
Definition: Fraction.h:23
virtual void enableKeyboard(bool enabled)
Definition: PianoRoll.h:55
double colorHue
Definition: PianoRoll.h:81
virtual void setColor(VGDevice *dev, const VGColor &color)
bool fChord
Definition: PianoRoll.h:153
int fLowPitch
Definition: PianoRoll.h:143
DrawParams createDrawParamsStructure(int width, int height, VGDevice *dev) const
virtual float pitch2ypos(int midipitch, const DrawParams &drawParams) const
double fDuration
Definition: PianoRoll.h:141
bool fBytes[12]
Definition: PianoRoll.h:159
DrawParams(int inWidth, int inHeight, float inNoteHeight, float inUntimedLeftElementWidth, VGDevice *inDev)
Definition: PianoRoll.h:68
virtual float stepheight(int height) const
Definition: PianoRoll.h:130
VGDevice * dev
Definition: PianoRoll.h:82
virtual void handleColor(const ARNoteFormat *e, const DrawParams &drawParams)
virtual void setPitchRange(int minPitch, int maxPitch)
virtual void setColorToVoice(int voiceNum, int r, int g, int b, int a)
virtual void DrawMeasureBar(double date, const DrawParams &drawParams) const
float noteHeight
Definition: PianoRoll.h:79
bool getVoiceColor(unsigned int index, VGColor &color) const
virtual void enableRandomVoicesColor(bool enabled)
Definition: PianoRoll.h:57
virtual void DrawMusicalObject(ARMusicalObject *e, TYPE_TIMEPOSITION date, TYPE_DURATION dur, const DrawParams &drawParams)
Definition: PianoRoll.h:67
std::vector< TMapSegments > Time2GraphicMap
Definition: GUIDOScoreMap.h:89
virtual void DrawVoice(ARMusicalVoice *v, const DrawParams &drawParams)
TYPE_TIMEPOSITION fStartDate
Definition: PianoRoll.h:139
Representation of a date as a rational value.
Definition: GUIDOEngine.h:83
virtual void enableMeasureBars(bool enabled)
Definition: PianoRoll.h:60
Generic platform independant drawing device.
Definition: VGDevice.h:68
Generic class to manipulate device independant colors.
Definition: VGColor.h:34
float untimedLeftElementWidth
Definition: PianoRoll.h:80
const char * fMidiFileName
Definition: PianoRoll.h:137
int fHighPitch
Definition: PianoRoll.h:144
virtual void initRendering(DrawParams &drawParams) const
TYPE_TIMEPOSITION getMidiEndDate() const
Definition: PianoRoll.h:123
virtual void getMap(int w, int h, Time2GraphicMap &outmap) const
float computeKeyboardWidth(float noteHeight) const
void DrawTwoLinesGrid(DrawParams &drawParams) const
int detectARExtremePitch(bool detectLowerPitch)
virtual float duration2width(double dur, int width, float untimedLeftElementWidth) const
int detectMidiExtremePitch(bool)
Definition: PianoRoll.h:124
virtual void DrawGrid(DrawParams &drawParams) const
virtual ~PianoRoll()
Definition: PianoRoll.h:51
std::vector< VGColor > fAutoVoicesColors
Definition: PianoRoll.h:149
void DrawDiatonicGrid(DrawParams &drawParams) const
Definition: PianoRoll.h:45
int fPitchLinesDisplayMode
Definition: PianoRoll.h:158
The base class for all AR objects. It contains all musical information : duration and time position.
Definition: ARMusicalObject.h:33
virtual void endRendering(DrawParams &drawParams) const
virtual void DrawKeyboard(DrawParams &drawParams) const
virtual void popColor(VGDevice *dev)
virtual void setLimitDates(GuidoDate start, GuidoDate end)
virtual void setPitchLinesDisplayMode(int mode)
bool fKeyboardEnabled
Definition: PianoRoll.h:156
virtual float computeNoteHeight(int height) const
void DrawChromaticGrid(DrawParams &drawParams, bool isUserDefined=false) const
bool fMeasureBarsEnabled
Definition: PianoRoll.h:157
std::map< int, VGColor > fVoicesColors
Definition: PianoRoll.h:148
virtual int pitchRange() const
Definition: PianoRoll.h:129
Translation of a GUIDO Segment into a class.
Definition: ARMusic.h:31
virtual void DrawFromAR(const DrawParams &drawParams)
virtual bool removeColorToVoice(int voiceNum)
float roundFloat(float numberToRound) const
Definition: PianoRoll.h:134