14 static SMARTP<msrVoiceStaffChange> create (
16 S_msrStaff staffToChangeTo);
18 SMARTP<msrVoiceStaffChange> createStaffChangeNewbornClone ();
27 S_msrStaff staffToChangeTo);
36 S_msrStaff getStaffToChangeTo ()
const
37 {
return fStaffToChangeTo; }
47 virtual void acceptIn (basevisitor* v);
48 virtual void acceptOut (basevisitor* v);
50 virtual void browseData (basevisitor* v);
57 string asString ()
const;
59 virtual void print (ostream& os)
const;
66 S_msrStaff fStaffToChangeTo;
68typedef SMARTP<msrVoiceStaffChange> S_msrVoiceStaffChange;
69EXP ostream& operator<< (ostream& os,
const S_msrVoiceStaffChange& elt);
79 #define K_NO_STAFF_NUMBER -777
92 static string staffKindAsString (
93 msrStaffKind staffKind);
98 static SMARTP<msrStaff> create (
100 msrStaffKind staffKind,
102 S_msrPart staffPartUpLink);
104 SMARTP<msrStaff> createStaffNewbornClone (
105 S_msrPart containingPart);
114 msrStaffKind staffKind,
116 S_msrPart staffPartUpLink);
125 void initializeStaff ();
134 S_msrPart getStaffPartUpLink ()
const
135 {
return fStaffPartUpLink; }
139 msrStaffKind getStaffKind ()
const
140 {
return fStaffKind; }
144 int getStaffNumber ()
const
145 {
return fStaffNumber; }
147 string getStaffName ()
const
148 {
return fStaffName; }
150 string getStaffInstrumentName ()
const
151 {
return fStaffInstrumentName; }
153 string getStaffInstrumentAbbreviation ()
const
154 {
return fStaffInstrumentAbbreviation; }
158 int getStaffRegularVoicesCounter ()
const
159 {
return fStaffRegularVoicesCounter; }
163 S_msrStaffDetails getCurrentStaffStaffDetails ()
const
164 {
return fCurrentStaffStaffDetails; }
168 const map<int, S_msrVoice>&
169 getStaffAllVoicesMap ()
const
170 {
return fStaffAllVoicesMap; }
172 const map<int, S_msrVoice>&
173 getStaffRegularVoicesMap ()
const
176 fStaffRegularVoicesMap;
179 const list<S_msrVoice>&
180 getStaffAllVoicesVector ()
const
191 void appendStaffDetailsToStaff (
192 S_msrStaffDetails staffDetails);
196 void appendClefToStaff (S_msrClef clef);
198 void appendKeyToStaff (S_msrKey key);
200 void appendTimeToStaff (S_msrTime time);
201 void appendTimeToStaffClone (S_msrTime time);
205 void appendTransposeToStaff (
206 S_msrTranspose transpose);
210 void appendPartNameDisplayToStaff (
211 S_msrPartNameDisplay partNameDisplay);
215 void appendPartAbbreviationDisplayToStaff (
216 S_msrPartAbbreviationDisplay partAbbreviationDisplay);
220 S_msrVoice createVoiceInStaffByItsNumber (
222 msrVoice::msrVoiceKind voiceKind,
224 string currentMeasureNumber);
226 void registerVoiceInStaff (
230 void registerVoiceByItsNumber (
235 void registerVoiceInRegularVoicesMapByItsNumberByItsNumber (
239 void registerVoiceInAllVoicesList (
243 S_msrVoice fetchVoiceFromStaffByItsNumber (
247 S_msrVoice fetchFirstRegularVoiceFromStaff (
248 int inputLineNumber);
250 void assignSequentialNumbersToRegularVoicesInStaff (
251 int inputLineNumber);
253 void addAVoiceToStaffIfItHasNone (
254 int inputLineNumber);
258 void createMeasureAndAppendItToStaff (
260 string measureNumber,
261 msrMeasure::msrMeasureImplicitKind
262 measureImplicitKind);
264 void setNextMeasureNumberInStaff (
266 string nextMeasureNumber);
270 void handleRepeatStartInStaff (
271 int inputLineNumber);
273 void handleRepeatEndInStaff (
275 string measureNumber,
278 void handleRepeatEndingStartInStaff (
279 int inputLineNumber);
281 void handleRepeatEndingEndInStaff (
283 string repeatEndingNumber,
284 msrRepeatEnding::msrRepeatEndingKind
294 void createMeasuresRepeatFromItsFirstMeasuresInStaff (
296 int measuresRepeatMeasuresNumber,
297 int measuresRepeatSlashesNumber);
299 void appendPendingMeasuresRepeatToStaff (
300 int inputLineNumber);
302 void createRestMeasuresInStaff (
304 int restMeasuresNumber);
306 void appendPendingRestMeasuresToStaff (
307 int inputLineNumber);
309 void appendRestMeasuresCloneToStaff (
311 S_msrRestMeasures restMeasures);
313 void createBeatsRepeatFromItsFirstMeasuresInStaff (
315 int beatsRepeatMeasuresNumber,
316 int beatsRepeatSlashesNumber);
318 void appendRepeatCloneToStaff (
320 S_msrRepeat repeatCLone);
322 void appendRepeatEndingCloneToStaff (
323 S_msrRepeatEnding repeatEndingClone);
327 void appendBarlineToStaff (S_msrBarline barline);
331 void appendTransposeToAllStaffVoices (
332 S_msrTranspose transpose);
336 void appendPartNameDisplayToAllStaffVoices (
337 S_msrPartNameDisplay partNameDisplay);
341 void appendPartAbbreviationDisplayToAllStaffVoices (
342 S_msrPartAbbreviationDisplay partAbbreviationDisplay);
346 void appendScordaturaToStaff (
347 S_msrScordatura scordatura);
351 void appendAccordionRegistrationToStaff (
352 S_msrAccordionRegistration
353 accordionRegistration);
357 void appendHarpPedalsTuningToStaff (
358 S_msrHarpPedalsTuning
368 virtual void acceptIn (basevisitor* v);
369 virtual void acceptOut (basevisitor* v);
371 virtual void browseData (basevisitor* v);
380 string staffNumberAsString ();
382 string staffKindAsString ()
const;
384 virtual void print (ostream& os)
const;
386 virtual void printSummary (ostream& os);
395 S_msrPart fStaffPartUpLink;
403 msrStaffKind fStaffKind;
411 string fStaffInstrumentName;
412 string fStaffInstrumentAbbreviation;
416 static int gStaffMaxRegularVoices;
419 map<int, S_msrVoice> fStaffAllVoicesMap;
424 int fStaffRegularVoicesCounter;
425 map<int, S_msrVoice> fStaffRegularVoicesMap;
429 list<S_msrVoice> fStaffRegularVoicesList;
433 list<S_msrVoice> fStaffAllVoicesList;
437 S_msrStaffDetails fCurrentStaffStaffDetails;
441 bool fStaffContainsRestMeasures;
450 void setStaffCurrentClef (S_msrClef clef);
452 S_msrClef getStaffCurrentClef ()
const
453 {
return fStaffCurrentClef; }
455 void setStaffCurrentKey (S_msrKey key);
457 S_msrKey getStaffCurrentKey ()
const
458 {
return fStaffCurrentKey; }
460 void setStaffCurrentTime (S_msrTime time);
462 S_msrTime getStaffCurrentTime ()
const
463 {
return fStaffCurrentTime; }
467 void finalizeCurrentMeasureInStaff (
468 int inputLineNumber);
471 int inputLineNumber);
480 S_msrTranspose getStaffCurrentTranspose ()
const
481 {
return fStaffCurrentTranspose; }
485 static bool compareVoicesByIncreasingNumber (
486 const S_msrVoice& first,
487 const S_msrVoice& second);
489 static bool compareVoicesToHaveHarmoniesAboveCorrespondingVoice (
490 const S_msrVoice& first,
491 const S_msrVoice& second);
493 static bool compareVoicesToHaveFiguredBassesBelowCorrespondingVoice (
494 const S_msrVoice& first,
495 const S_msrVoice& second);
504 S_msrClef fStaffCurrentClef;
506 S_msrKey fStaffCurrentKey;
508 S_msrTime fStaffCurrentTime;
512 S_msrTranspose fStaffCurrentTranspose;
514typedef SMARTP<msrStaff> S_msrStaff;
515EXP ostream& operator<< (ostream& os,
const S_msrStaff& elt);
Definition: msrStaves_MUT_DEP.h:73
Definition: msrStaves_MUT_DEP.h:8