GUIDOLib  1.7.7
Guido Engine Internal Documentation
GRStaff.h
1 #ifndef GRStaff_H
2 #define GRStaff_H
3 
4 /*
5  GUIDO Library
6  Copyright (C) 2002 Holger Hoos, Juergen Kilian, Kai Renz
7  Copyright (C) 2002-2017 Grame
8 
9  This Source Code Form is subject to the terms of the Mozilla Public
10  License, v. 2.0. If a copy of the MPL was not distributed with this
11  file, You can obtain one at http://mozilla.org/MPL/2.0/.
12 
13  Grame Research Laboratory, 11, cours de Verdun Gensoul 69002 Lyon - France
14  research@grame.fr
15 
16 */
17 
18 #include <iostream>
19 
20 #include "GRCompositeNotationElement.h"
21 #include "GuidoDefs.h"
22 
23 class ARBar;
24 class ARBarFormat;
25 class ARClef;
26 class ARDoubleBar;
27 class ARKey;
28 class ARInstrument;
29 class ARIntens;
30 class AROctava;
31 class ARRepeatBegin;
32 class ARRepeatEnd;
34 class ARFinishBar;
35 class ARText;
36 class ARMeter;
38 class ARStaffFormat;
39 
40 class GRVoice;
41 class GRClef;
42 class GRNote;
43 class GRMeter;
44 // class GRNoteFactory;
45 class GRKey;
46 class GRStaffManager;
47 class GRVoiceManager;
48 class GRSystem;
49 class GRSystemSlice;
50 class GRGlue;
51 class GRSpring;
52 class GRRod;
53 class GRFinishBar;
54 class GRInstrument;
55 
56 class GRRepeatEnd;
57 class GRRepeatBegin;
58 class GRDoubleBar;
59 class GRIntens;
60 class GRText;
61 class GRBar;
63 class GROctava;
64 class TCollisions;
65 
66 class TagParameterFloat;
67 
68 template <class T> class KF_List;
69 
70 typedef KF_List<float> AccList;
71 // typedef KF_IPointerList<GRTag> GRTagPointerList;
72 // typedef KF_Vector<float> UnitVect;
73 
76 // DF - class introduced on nov. 4 2011 to cover octave changes
77 // and to comply to the practice described in "Behind Bars" E. Gould p. 79
79 {
80  enum { kPitchClasses = 12, kOctRange=10 }; // 12 pitch classes to differentiate 'is' notes
81  float fAccidentals[kPitchClasses][kOctRange]; // keeps current accidentals at measure level
82  float fPClass[kPitchClasses]; // keeps current accidentals by pîtch class
83  public:
85  virtual ~MeasureAccidentals() {}
86 
87  void reset();
88  void setPitchClassAccidental(int pclass, float accidental);
89  void setAccidental(int pitch, int oct, float accidental);
90  float accidental (int pitch, int oct) const;
91  float accidental (int pitch) const;
92 
94 };
95 
99 {
100  friend class GRStaff;
101  friend class GRStaffManager;
102  friend class GRVoiceManager;
103  friend class GRSystem;
104  friend class GRSystemSlice;
105 
106  public:
108 
109  GRStaffState();
110  virtual ~GRStaffState();
111 
112  GRStaffState & operator=(const GRStaffState &tmp);
113 
114  GRStaffState & getState() { return *this; }
115  int getInstrKeyNumber() const { return instrNumKeys; }
116  void reset2key();
117 
118  float getYOffset() const { return fYOffset; }
119  const TagParameterFloat* getStaffDistance() const { return staffDistance; }
120 
121  void setStaffLSPACE(float value) { staffLSPACE = value * 2; } // Factor 2 to be consistent with GRStaff::setStaffFormat(ARStaffFormat * staffrmt)
122  void setMultiVoiceCollisions(bool state) { fMultiVoiceCollisions = state; }
123  bool multiVoiceCollisions() const { return fMultiVoiceCollisions; }
124  const MeasureAccidentals& getMeasureAccidentals() const { return fMeasureAccidentals; }
125 
126  private:
127  // Meter-Parameters
128  bool meterset; // flag if meter-sig is given . TRUE, FALSE
129 
130  const ARMeter * curmeter;
131  // Noteparameter
132  bool keyset; // flag for if key-sig is given
133  int numkeys; // number of accidentals, neede for GRKey.
134  float KeyArray[NUMNOTES];
135  MeasureAccidentals fMeasureAccidentals;
136 
137  const ARKey * curkey;
138  // clef-Parameter
139  clefstate clefset; // CLEFINTERN, CLEFEXPLICIT, CLEFAUTO, [ CLEFOFF ]
140  std::string clefname; // clef name (same as for ARClef ...)
141  int basepit;
142  int basepitoffs; // these two parameters are for
143  int instrNumKeys; // instrument-tag:
144  // basepitoffs: the offset for the given instrument, example: clarinet in A
145  // has an offset of -2, it is two pitchclasses away from c-major
146  // instrnumkeys: the number of keys for the transposed instrument ,,,
147  float instrKeyArray[NUMNOTES];
148  // the key-array for the current instrument (if transposed).
149 
150  int baseoct;
151  int octava;
152  int baseline;
153 
154  const ARClef * curclef;
155  const ARBarFormat * curbarfrmt;
156  const ARStaffFormat * curstaffrmt;
157 
158  float staffLSPACE; // distance between two lines
159  int numlines; // Zahl der Notenlinien.
160  float lineThickness;
161  float fYOffset;
162  const TagParameterFloat* staffDistance;
163  unsigned char *colRef;
164  float distance;
165  bool distanceset;
166  bool fMultiVoiceCollisions = false;
167  // this is VOICE-Stuff!
168  // Stemdirection
169  // stemstate stemset; // STEMUP, STEMDOWN, STEMAUTO
170 
171  // This is voice-stuff!
172  // Tuplets
173  // int tupletset;
174  // GRTupletState tplstate;
175 
176  };
177 
182 {
183  friend class GRPossibleBreakState;
184  friend class GRStaffState;
185  friend class GRStaffManager;
186  friend class GRVoiceManager;
187 
188  public:
189  GRStaff(GRSystemSlice * systemslice, float propRender);
190  virtual ~GRStaff();
191 
192  float getDistance() const;
193  GRSystem * getGRSystem() const;
195  GRStaff * getPreviousStaff() const;
196  GRStaff * getNextStaff() const;
197  int getStaffNumber() const;
198  GRGlue * getEndGlue() const;
199  GRGlue * getStartGlue() const;
200  GRGlue * getSecondGlue() const;
201  int getFontSize() const;
202  float getStaffLSPACE() const { return mStaffState.staffLSPACE; }
203  float getSizeRatio() const { return mStaffState.staffLSPACE / LSPACE; }
204  const GRStaffState * getStaffState() const { return &mStaffState; }
206  const GRStaffState & getGRStaffState() const { return mStaffState; }
207  float getXEndPosition(TYPE_TIMEPOSITION pos, TYPE_DURATION dur) const;
208  const ARMeter * getCurMeter() const { return mStaffState.curmeter; }
209 
210  virtual float getNotePosition(TYPE_PITCH pit, TYPE_REGISTER oct) const;
211  virtual GDirection getDefaultThroatDirection(TYPE_PITCH pit, TYPE_REGISTER oct) const;
212  virtual int getNumHelplines(TYPE_PITCH pit, TYPE_REGISTER oct) const;
213  virtual VGColor getNoteColor(TYPE_PITCH pit) const;
214  virtual int getNumlines() const { return mStaffState.numlines; }
215  virtual unsigned char* getStffrmtColRef() const { return mStaffState.colRef; }
216  virtual float getLineThickness() const { return mStaffState.lineThickness; }
217  virtual float getDredgeSize() const;
218  virtual float getMappingDredgeSize() const;
219  virtual float getKeyPosition(TYPE_PITCH pitch, int numkeys = 1) const;
220  virtual GRNote * getLastNote() const;
221  const GRNote * getFirstNote() const;
222  virtual GRBar * getLastBar() const;
223  virtual void print(std::ostream& os) const;
224  virtual void accept (GRVisitor& visitor);
225 
226  virtual void setStaffFormat (const ARStaffFormat * staffrmt);
227  void setStaffState (GRStaffState * state);
228  void setInstrumentFormat (const GRStaffState & state);
229  void setBarFormat (const ARBarFormat * barfrmt);
230  void setNoteParameters (const GRNote * inNote );
231  void setKeyParameters (GRKey * inKey);
232  void setDistance (float distance) { mStaffState.distanceset = true; mStaffState.distance = distance; }
233  void setEndPosition (float newendpos) { mLength = newendpos - mPosition.x; }
234  void setLength (float newlength) { mLength = newlength; }
235 
236  GROctava * AddOctava (const AROctava * aroct);
237  void AddSecondGlue (GRGlue * myglue);
238  void AddElementAt (GuidoPos pos,GRNotationElement * el);
241  GRDoubleBar * AddDoubleBar (ARDoubleBar * ardbar,const TYPE_TIMEPOSITION & tp);
242  GRFinishBar * AddFinishBar (ARFinishBar * arfbar,const TYPE_TIMEPOSITION & tp);
243  GRIntens * AddIntens (const ARIntens * aintens);
244  GRText * AddText (const ARText * atext);
245  GRKey * AddKey (const ARKey * arkey);
246  GRBar * AddBar (ARBar * abar, const TYPE_TIMEPOSITION & von);
247  GRMeter * AddMeter (const ARMeter * armeter);
248  void AddTag (GRNotationElement * grtag);
249  GRClef * AddClef (const ARClef *);
251 
252  virtual AccList * askAccidentals(TYPE_PITCH p_pit, TYPE_REGISTER p_oct, int p_acc, float detune=0.f);
253 
254  virtual void boundingBoxPreview();
255  virtual void updateBoundingBox();
256  virtual void FinishStaff();
257  virtual float FirstNoteORRestXPos() const;
258 
259  void UpdateStaffState(GuidoPos pos);
260  void TellNewStaff(GuidoPos pos);
261  void createNewRods(GRStaffManager * staffmgr, int & startspr, int & endspr, float optForce);
262  void CreateBeginElements(GRStaffManager * staffmgr,GRStaffState & state, int staffnum);
263  GuidoPos EndStaff(const TYPE_TIMEPOSITION & tp, GRStaffManager * staffmgr,
264  GuidoPos endpos = 0, int lastline = 0);
265 
266  void EndStaff(const TYPE_TIMEPOSITION & tp, GRSpring * spr);
267  void BeginStaff(GRStaffManager * staffmgr);
268  void addElementsToSprings();
269 
270  virtual void OnDraw( VGDevice & hdc ) const;
271  virtual void GetMap( GuidoElementSelector sel, MapCollector& f, MapInfos& infos ) const;
272  void setOnOff(bool onoff, TYPE_TIMEPOSITION tp);
273  void setOnOff(bool onoff);
274  bool isStaffBeginOn();
275  bool isStaffEndOn();
276  void setNextOnOff(bool onoff){isNextOn = onoff;}
277  bool isNextStaffOn(){return isNextOn;}
278 
279  // this function was defined as private previously. Because GRNoteFactory needs to add elements
280  // to the staff (Tuplets), it must be defined public.
281 
282  // Dies function will be very powerfull ...
283  // It must do the part of createStaffElements and call createCutStaffElement aufrufen ...
284  // the old functionality will be lost
285  void addNotationElement(GRNotationElement * notationElement);
286 
287  void checkSystemBar(const TYPE_TIMEPOSITION & tp);
288 
289  void generatePositions();
290  float currentLineThikness() const;
291 
292  float getProportionnalRender() const { return this->fProportionnalRendering; }
293  float getStaffBottom () const;
294  void checkCollisions (TCollisions& state) const;
296  float getNotesDensity () const;
297  size_t getLyrics (std::vector<const GRNotationElement*>& list) const;
298  void inhibitNextReset2Key() { fInhibitNextReset2key = true; }
299 
300  protected:
301  void DebugPrintState(const char * info) const;
302 
303  void DrawStaffUsingSymbolScale( VGDevice & hdc ) const;
304  void DrawStaffUsingSymbolRepeat( VGDevice & hdc ) const;
305  void DrawStaffUsingLines( VGDevice & hdc ) const;
306  void DrawNotationElements( VGDevice & hdc ) const;
307 
309  void setMeterParameters( GRMeter * grmeter );
310 
311  void setStaffSize( float size ) { mStaffState.setStaffLSPACE(size); }
312 
313  GuidoPos lastrodpos;
321 
322  float mLength;
324 
325  // for the STEM-Auto calculation
328 
329  private:
330  TYPE_TIMEPOSITION fLastSystemBarChecked;
331  void newMeasure(const TYPE_TIMEPOSITION & tp, bool reset=true);
332 
333  std::map<TYPE_TIMEPOSITION, bool> fOnOffList;
334  std::map<float, float> fPositions;
335  bool isNextOn;
336  bool firstOnOffSetting;
337 
338  bool fInhibitNextReset2key = false;
339  float fProportionnalRendering;
340 };
341 
342 std::ostream& operator<< (std::ostream& os, const GRStaff& staff);
343 std::ostream& operator<< (std::ostream& os, const GRStaff* staff);
344 
345 #endif
346 
347 
GRStaff::getCurMeter
const ARMeter * getCurMeter() const
Definition: GRStaff.h:208
GRBar
Measure bar.
Definition: GRBar.h:29
GRStaff::getLyrics
size_t getLyrics(std::vector< const GRNotationElement * > &list) const
GRStaff::BeginStaff
void BeginStaff(GRStaffManager *staffmgr)
GRStaffState::getYOffset
float getYOffset() const
Definition: GRStaff.h:118
GRVisitor
Definition: GRVisitor.h:39
GRStaff::DrawStaffUsingSymbolRepeat
void DrawStaffUsingSymbolRepeat(VGDevice &hdc) const
GRStaff::AddSecondGlue
void AddSecondGlue(GRGlue *myglue)
MapCollector
an abstract class to be provided by clients to collect mappings
Definition: GUIDOScoreMap.h:109
GRStaff::AddElementAt
void AddElementAt(GuidoPos pos, GRNotationElement *el)
GRStaff::getGRStaffState
GRStaffState & getGRStaffState()
Definition: GRStaff.h:205
ARInstrument
not yet documented
Definition: ARInstrument.h:53
GRStaff::getNumHelplines
virtual int getNumHelplines(TYPE_PITCH pit, TYPE_REGISTER oct) const
GRStaff::FirstNoteORRestXPos
virtual float FirstNoteORRestXPos() const
ARRepeatEndRangeEnd
not yet documented
Definition: ARRepeatEndRangeEnd.h:22
GRStaff::getStartGlue
GRGlue * getStartGlue() const
GRStaff::getGRStaffState
const GRStaffState & getGRStaffState() const
Definition: GRStaff.h:206
ARBar
Bar tag.
Definition: ARBar.h:51
GRStaff::DebugPrintState
void DebugPrintState(const char *info) const
GRStaff::mNoteCount
int mNoteCount
Definition: GRStaff.h:327
ARMeter
not yet documented
Definition: ARMeter.h:64
GRStaff::setKeyParameters
void setKeyParameters(GRKey *inKey)
GRStaff::getProportionnalRender
float getProportionnalRender() const
Definition: GRStaff.h:292
GRStaff::getNextStaff
GRStaff * getNextStaff() const
GRStaff::isStaffBeginOn
bool isStaffBeginOn()
GRStaff::print
virtual void print(std::ostream &os) const
GRKey
Key notation tag.
Definition: GRKey.h:29
TCollisions
Definition: TCollisions.h:53
GRStaff::AddRepeatBegin
GRRepeatBegin * AddRepeatBegin(ARRepeatBegin *)
GRStaff::AddClef
GRClef * AddClef(const ARClef *)
GRSpring
Used with rods and space fore functions.
Definition: GRSpring.h:38
GRStaffState::getStaffDistance
const TagParameterFloat * getStaffDistance() const
Definition: GRStaff.h:119
GRStaff::AddKey
GRKey * AddKey(const ARKey *arkey)
GRStaff::addNotationElement
void addNotationElement(GRNotationElement *notationElement)
GRStaff::getStaffNumber
int getStaffNumber() const
GRStaff::getStaffBottom
float getStaffBottom() const
NVPoint::x
float x
Definition: NVPoint.h:68
GRStaffManager
This class manages the staffs of a system.
Definition: GRStaffManager.h:160
GRStaff::accept
virtual void accept(GRVisitor &visitor)
GRStaff::mGrSystemSlice
GRSystemSlice * mGrSystemSlice
Definition: GRStaff.h:320
GRStaff::TellNewStaff
void TellNewStaff(GuidoPos pos)
GRStaff::checkCollisions
void checkCollisions(TCollisions &state) const
Fraction
Numerator and denominator.
Definition: Fraction.h:23
GRStaff::startglue
GRGlue * startglue
Definition: GRStaff.h:317
GRStaff::getStffrmtColRef
virtual unsigned char * getStffrmtColRef() const
Definition: GRStaff.h:215
GRStaff::getEndGlue
GRGlue * getEndGlue() const
GRStaff::setStaffSize
void setStaffSize(float size)
Definition: GRStaff.h:311
GRStaff::isStaffEndOn
bool isStaffEndOn()
GRStaff::getNotePosition
virtual float getNotePosition(TYPE_PITCH pit, TYPE_REGISTER oct) const
GRStaff::getKeyPosition
virtual float getKeyPosition(TYPE_PITCH pitch, int numkeys=1) const
GRStaff::getGRSystemSlice
GRSystemSlice * getGRSystemSlice() const
ARKey
Key signature.
Definition: ARKey.h:54
GRStaffState::operator=
GRStaffState & operator=(const GRStaffState &tmp)
AROctava
The Octava tag.
Definition: AROctava.h:45
GRStaff::getGRSystem
GRSystem * getGRSystem() const
GRNotationElement
parent class for all notation elements.
Definition: GRNotationElement.h:54
GRRepeatEnd
The left facing repeat bar sign.
Definition: GRRepeatEnd.h:31
ARIntens
The intensity tag.
Definition: ARIntens.h:51
GRStaff::getPreviousStaff
GRStaff * getPreviousStaff() const
GRStaffState::CLEFEXPLICIT
Definition: GRStaff.h:107
GRClef
Graphial representation of a staff clef.
Definition: GRClef.h:28
GRStaff::mStaffState
GRStaffState mStaffState
Definition: GRStaff.h:323
MeasureAccidentals::MeasureAccidentals
MeasureAccidentals()
Definition: GRStaff.h:84
GRStaff::firstrod
GRRod * firstrod
Definition: GRStaff.h:315
GRNote
Graphical representation of a note.
Definition: GRNote.h:31
GRStaff::setDistance
void setDistance(float distance)
Definition: GRStaff.h:232
GRStaff::generatePositions
void generatePositions()
GRStaff::AddOctava
GROctava * AddOctava(const AROctava *aroct)
GRRod
Used with springs and space-force functions.
Definition: GRRod.h:33
GRStaff::mGrSystem
GRSystem * mGrSystem
Definition: GRStaff.h:319
ARDoubleBar
not yet documented
Definition: ARDoubleBar.h:41
GRVoiceManager
not yet documented
Definition: GRVoiceManager.h:60
GRVoiceManager::staffnum
int staffnum
Definition: GRVoiceManager.h:140
MeasureAccidentals::reset
void reset()
GRStaff::setLength
void setLength(float newlength)
Definition: GRStaff.h:234
GRStaff::UpdateStaffState
void UpdateStaffState(GuidoPos pos)
GRStaff::endglue
GRGlue * endglue
Definition: GRStaff.h:316
GRStaffState::multiVoiceCollisions
bool multiVoiceCollisions() const
Definition: GRStaff.h:123
GRStaffState
Keeps information about a staff.
Definition: GRStaff.h:98
GRStaff::AddBar
GRBar * AddBar(ARBar *abar, const TYPE_TIMEPOSITION &von)
GRStaff::AddIntens
GRIntens * AddIntens(const ARIntens *aintens)
MapInfos
A class to propagate device related information.
Definition: GObject.h:42
GRText
A text string.
Definition: GRText.h:34
ARRepeatBegin
The right facing repeat sign.
Definition: ARRepeatBegin.h:38
ARFinishBar
not yet documented
Definition: ARFinishBar.h:41
ARStaffFormat
not yet documented
Definition: ARStaffFormat.h:51
GRStaff
A GRStaff represents a single line of music.
Definition: GRStaff.h:181
MeasureAccidentals::~MeasureAccidentals
virtual ~MeasureAccidentals()
Definition: GRStaff.h:85
GRStaff::boundingBoxPreview
virtual void boundingBoxPreview()
GRStaffState::reset2key
void reset2key()
GRStaff::GRStaff
GRStaff(GRSystemSlice *systemslice, float propRender)
GRStaff::AddText
GRText * AddText(const ARText *atext)
GRStaff::getStaffState
const GRStaffState * getStaffState() const
Definition: GRStaff.h:204
GRStaff::getMappingDredgeSize
virtual float getMappingDredgeSize() const
GRStaff::secglue
GRGlue * secglue
Definition: GRStaff.h:318
GRStaffState::getMeasureAccidentals
const MeasureAccidentals & getMeasureAccidentals() const
Definition: GRStaff.h:124
GRStaff::setStaffState
void setStaffState(GRStaffState *state)
GRStaff::createNewRods
void createNewRods(GRStaffManager *staffmgr, int &startspr, int &endspr, float optForce)
GRStaff::getSizeRatio
float getSizeRatio() const
Definition: GRStaff.h:203
GRStaff::askAccidentals
virtual AccList * askAccidentals(TYPE_PITCH p_pit, TYPE_REGISTER p_oct, int p_acc, float detune=0.f)
GRStaffState::CLEFOFF
Definition: GRStaff.h:107
GRStaffState::clefstate
clefstate
Definition: GRStaff.h:107
GRStaff::CreateBeginElements
void CreateBeginElements(GRStaffManager *staffmgr, GRStaffState &state, int staffnum)
GRStaff::updateBoundingBox
virtual void updateBoundingBox()
GRStaff::getFirstNote
const GRNote * getFirstNote() const
GRStaff::checkMultiVoiceNotesCollision
void checkMultiVoiceNotesCollision()
GRCompositeNotationElement
not yet documented
Definition: GRCompositeNotationElement.h:24
GRRepeatBegin
The right facing repeat bar sign.
Definition: GRRepeatBegin.h:27
GRVoice
Graphical representation of a voice.
Definition: GRVoice.h:49
GRStaff::inhibitNextReset2Key
void inhibitNextReset2Key()
Definition: GRStaff.h:298
GRStaff::getFontSize
int getFontSize() const
GRStaff::checkSystemBar
void checkSystemBar(const TYPE_TIMEPOSITION &tp)
GRStaff::getNotesDensity
float getNotesDensity() const
VGDevice
Generic platform independant drawing device.
Definition: VGDevice.h:68
VGColor
Generic class to manipulate device independant colors.
Definition: VGColor.h:34
GRStaff::AddMeter
GRMeter * AddMeter(const ARMeter *armeter)
GRStaff::getSecondGlue
GRGlue * getSecondGlue() const
GRStaff::AddInstrument
GRInstrument * AddInstrument(const ARInstrument *)
GRStaff::isNextStaffOn
bool isNextStaffOn()
Definition: GRStaff.h:277
GRStaffState::setMultiVoiceCollisions
void setMultiVoiceCollisions(bool state)
Definition: GRStaff.h:122
GRStaff::AddFinishBar
GRFinishBar * AddFinishBar(ARFinishBar *arfbar, const TYPE_TIMEPOSITION &tp)
GRStaffState::GRStaffState
GRStaffState()
GRStaff::getStaffLSPACE
float getStaffLSPACE() const
Definition: GRStaff.h:202
GRStaffState::CLEFAUTO
Definition: GRStaff.h:107
GRStaff::getLastNote
virtual GRNote * getLastNote() const
GRStaff::setNoteParameters
void setNoteParameters(const GRNote *inNote)
TagParameterFloat
The floating point parameter type for Guido Tags.
Definition: TagParameterFloat.h:24
MeasureAccidentals
Keeps information about accidentals at measure level.
Definition: GRStaff.h:78
GRStaff::getDistance
float getDistance() const
GRStaff::getDefaultThroatDirection
virtual GDirection getDefaultThroatDirection(TYPE_PITCH pit, TYPE_REGISTER oct) const
GRStaff::lastrod
GRRod * lastrod
Definition: GRStaff.h:314
GRStaff::AddRepeatEnd
GRRepeatEnd * AddRepeatEnd(ARRepeatEnd *)
GRStaff::setInstrumentFormat
void setInstrumentFormat(const GRStaffState &state)
GRStaff::AddTag
void AddTag(GRNotationElement *grtag)
ARMusicalVoiceState
This class manage the state of a voice. Here additional information for voices will be stored (i....
Definition: ARMusicalVoiceState.h:39
GObject::mPosition
NVPoint mPosition
Definition: GObject.h:102
GRIntens
not yet documented
Definition: GRIntens.h:28
GRStaff::currentLineThikness
float currentLineThikness() const
GRGlue
not yet documented
Definition: GRGlue.h:25
GRStaff::getDredgeSize
virtual float getDredgeSize() const
GRSystemSlice
Form the basis for the optimum system-break-algorithm.
Definition: GRSystemSlice.h:55
GuidoElementSelector
GuidoElementSelector
Definition: GUIDOScoreMap.h:40
GRStaff::AddDoubleBar
GRDoubleBar * AddDoubleBar(ARDoubleBar *ardbar, const TYPE_TIMEPOSITION &tp)
GRStaff::FinishStaff
virtual void FinishStaff()
ARClef
Abstract representation of a staff clef.
Definition: ARClef.h:60
GRStaffState::~GRStaffState
virtual ~GRStaffState()
GRInstrument
not yet documented
Definition: GRInstrument.h:26
GRStaff::DrawStaffUsingLines
void DrawStaffUsingLines(VGDevice &hdc) const
GRStaff::setStaffFormat
virtual void setStaffFormat(const ARStaffFormat *staffrmt)
ARRepeatEnd
not yet documented
Definition: ARRepeatEnd.h:39
GRStaff::GetMap
virtual void GetMap(GuidoElementSelector sel, MapCollector &f, MapInfos &infos) const
ARBarFormat
the bar format tag parameter.
Definition: ARBarFormat.h:47
GRStaffState::CLEFINTERN
Definition: GRStaff.h:107
GRMeter
Meter notation tag.
Definition: GRMeter.h:30
GRStaff::addElementsToSprings
void addElementsToSprings()
GRStaff::getNumlines
virtual int getNumlines() const
Definition: GRStaff.h:214
GRStaff::setClefParameters
void setClefParameters(GRClef *grclef, GRStaffState::clefstate cstate=GRStaffState::CLEFAUTO)
GRStaffState::getState
GRStaffState & getState()
Definition: GRStaff.h:114
GRStaff::getLastBar
virtual GRBar * getLastBar() const
GRSystem
Manages a number of staffs and has a given start and end timeposition. GRSystem is the grafical repre...
Definition: GRSystem.h:52
GRStaff::setEndPosition
void setEndPosition(float newendpos)
Definition: GRStaff.h:233
GRStaff::setBarFormat
void setBarFormat(const ARBarFormat *barfrmt)
GRFinishBar
not yet documented
Definition: GRFinishBar.h:25
GRStaffState::getInstrKeyNumber
int getInstrKeyNumber() const
Definition: GRStaff.h:115
MeasureAccidentals::setAccidental
void setAccidental(int pitch, int oct, float accidental)
GRStaffState::setStaffLSPACE
void setStaffLSPACE(float value)
Definition: GRStaff.h:121
MeasureAccidentals::operator=
MeasureAccidentals & operator=(const MeasureAccidentals &ma)
operator<<
std::ostream & operator<<(std::ostream &os, const svgendl &eol)
GRDoubleBar
The double barline.
Definition: GRDoubleBar.h:26
GRStaff::getXEndPosition
float getXEndPosition(TYPE_TIMEPOSITION pos, TYPE_DURATION dur) const
GRStaff::~GRStaff
virtual ~GRStaff()
ARText
The text tag.
Definition: ARText.h:49
GRStaff::DrawNotationElements
void DrawNotationElements(VGDevice &hdc) const
MeasureAccidentals::accidental
float accidental(int pitch, int oct) const
GRStaff::lastrodpos
GuidoPos lastrodpos
Definition: GRStaff.h:313
GRStaff::setNextOnOff
void setNextOnOff(bool onoff)
Definition: GRStaff.h:276
GRStaff::DrawStaffUsingSymbolScale
void DrawStaffUsingSymbolScale(VGDevice &hdc) const
GRStaff::avg_position
float avg_position
Definition: GRStaff.h:326
GRStaff::setOnOff
void setOnOff(bool onoff, TYPE_TIMEPOSITION tp)
MeasureAccidentals::setPitchClassAccidental
void setPitchClassAccidental(int pclass, float accidental)
KF_List
Definition: GRBreakMatrix.h:24
GRStaff::mLength
float mLength
Definition: GRStaff.h:322
GROctava
not yet documented
Definition: GROctava.h:33
GRStaff::EndStaff
GuidoPos EndStaff(const TYPE_TIMEPOSITION &tp, GRStaffManager *staffmgr, GuidoPos endpos=0, int lastline=0)
GRStaff::getNoteColor
virtual VGColor getNoteColor(TYPE_PITCH pit) const
GRStaff::getLineThickness
virtual float getLineThickness() const
Definition: GRStaff.h:216
GRStaff::OnDraw
virtual void OnDraw(VGDevice &hdc) const
GRPossibleBreakState
GRPossibleBreakState saves the states of all structures that are important, if it is decided by the B...
Definition: GRPossibleBreakState.h:35
GRStaff::setMeterParameters
void setMeterParameters(GRMeter *grmeter)

Guido Project Copyright © 2019 Grame-CNCM