LibMusicXML  3.18
lilypondOah.h
1 /*
2  MusicXML Library
3  Copyright (C) Grame 2006-2013
4 
5  This Source Code Form is subject to the terms of the Mozilla Public
6  License, v. 2.0. If a copy of the MPL was not distributed with this
7  file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 
9  Grame Research Laboratory, 11, cours de Verdun Gensoul 69002 Lyon - France
10  research@grame.fr
11 */
12 
13 #ifndef ___lilypondOah___
14 #define ___lilypondOah___
15 
16 #include "oahBasicTypes.h"
17 
18 
19 namespace MusicXML2
20 {
21 
22 //______________________________________________________________________________
24 {
25  public:
26 
27  // creation
28  // ------------------------------------------------------
29 
31  string shortName,
32  string longName,
33  string description,
34  string valueSpecification,
35  string variableName,
36  lpsrScoreOutputKind& lilypondScoreOutputKindVariable);
37 
38  protected:
39 
40  // constructors/destructor
41  // ------------------------------------------------------
42 
44  string shortName,
45  string longName,
46  string description,
47  string valueSpecification,
48  string variableName,
49  lpsrScoreOutputKind& lilypondScoreOutputKindVariable);
50 
51  virtual ~lilypondScoreOutputKindAtom ();
52 
53  public:
54 
55  // set and get
56  // ------------------------------------------------------
57 
58  void setScoreOutputKindVariableValue (
59  lpsrScoreOutputKind value)
60  { fLpsrScoreOutputKindVariable = value; }
61 
62  public:
63 
64  // services
65  // ------------------------------------------------------
66 
67  S_oahValuedAtom handleOptionUnderName (
68  string optionName,
69  ostream& os);
70 
71  void handleValue (
72  string theString,
73  ostream& os);
74 
75  public:
76 
77  // visitors
78  // ------------------------------------------------------
79 
80  virtual void acceptIn (basevisitor* v);
81  virtual void acceptOut (basevisitor* v);
82 
83  virtual void browseData (basevisitor* v);
84 
85  // print
86  // ------------------------------------------------------
87 
88  string asShortNamedOptionString () const;
89  string asActualLongNamedOptionString () const;
90 
91  void print (ostream& os) const;
92 
93  void printAtomOptionsValues (
94  ostream& os,
95  int valueFieldWidth) const;
96 
97  private:
98 
99  // fields
100  // ------------------------------------------------------
101 
102  lpsrScoreOutputKind& fLpsrScoreOutputKindVariable;
103 };
105 EXP ostream& operator<< (ostream& os, const S_lilypondScoreOutputKindAtom& elt);
106 
107 //______________________________________________________________________________
109 {
110  public:
111 
112  // creation
113  // ------------------------------------------------------
114 
116  string shortName,
117  string longName,
118  string description,
119  string variableName,
120  lpsrOctaveEntryKind& lpsrOctaveEntryKindVariable);
121 
122  protected:
123 
124  // constructors/destructor
125  // ------------------------------------------------------
126 
128  string shortName,
129  string longName,
130  string description,
131  string variableName,
132  lpsrOctaveEntryKind& lpsrOctaveEntryKindVariable);
133 
135 
136  public:
137 
138  // set and get
139  // ------------------------------------------------------
140 
141  public:
142 
143  // services
144  // ------------------------------------------------------
145 
146  S_oahValuedAtom handleOptionUnderName (
147  string optionName,
148  ostream& os);
149 
150  public:
151 
152  // visitors
153  // ------------------------------------------------------
154 
155  virtual void acceptIn (basevisitor* v);
156  virtual void acceptOut (basevisitor* v);
157 
158  virtual void browseData (basevisitor* v);
159 
160  public:
161 
162  // print
163  // ------------------------------------------------------
164 
165  void print (ostream& os) const;
166 
167  void printAtomOptionsValues (
168  ostream& os,
169  int valueFieldWidth) const;
170 
171  private:
172 
173  // fields
174  // ------------------------------------------------------
175 
176  lpsrOctaveEntryKind& fLpsrOctaveEntryKindVariable;
177 };
179 EXP ostream& operator<< (ostream& os, const S_lilypondAbsoluteOctaveEntryAtom& elt);
180 
181 //______________________________________________________________________________
183 {
184  public:
185 
186  // creation
187  // ------------------------------------------------------
188 
190  string shortName,
191  string longName,
192  string description,
193  string valueSpecification,
194  string variableName,
195  lpsrOctaveEntryKind& lpsrOctaveEntryKindVariable,
196  S_msrSemiTonesPitchAndOctave& lilypondRelativeOctaveEntryVariable);
197 
198  protected:
199 
200  // constructors/destructor
201  // ------------------------------------------------------
202 
204  string shortName,
205  string longName,
206  string description,
207  string valueSpecification,
208  string variableName,
209  lpsrOctaveEntryKind& lpsrOctaveEntryKindVariable,
210  S_msrSemiTonesPitchAndOctave& lilypondRelativeOctaveEntryVariable);
211 
213 
214  public:
215 
216  // set and get
217  // ------------------------------------------------------
218 
219  void setRelativeOctaveEntryVariableValue (
221  {
222  fMsrSemiTonesPitchAndOctaveVariable = value;
223  }
224 
225  public:
226 
227  // services
228  // ------------------------------------------------------
229 
230  S_oahValuedAtom handleOptionUnderName (
231  string optionName,
232  ostream& os);
233 
234  void handleValue (
235  string theString,
236  ostream& os);
237 
238  public:
239 
240  // visitors
241  // ------------------------------------------------------
242 
243  virtual void acceptIn (basevisitor* v);
244  virtual void acceptOut (basevisitor* v);
245 
246  virtual void browseData (basevisitor* v);
247 
248  public:
249 
250  // print
251  // ------------------------------------------------------
252 
253  string asShortNamedOptionString () const;
254  string asActualLongNamedOptionString () const;
255 
256  void print (ostream& os) const;
257 
258  void printAtomOptionsValues (
259  ostream& os,
260  int valueFieldWidth) const;
261 
262  private:
263 
264  // fields
265  // ------------------------------------------------------
266 
267  lpsrOctaveEntryKind& fLpsrOctaveEntryKindVariable;
268 
270  fMsrSemiTonesPitchAndOctaveVariable;
271 };
273 EXP ostream& operator<< (ostream& os, const S_lilypondRelativeOctaveEntryAtom& elt);
274 
275 //______________________________________________________________________________
277 {
278  public:
279 
280  // creation
281  // ------------------------------------------------------
282 
284  string shortName,
285  string longName,
286  string description,
287  string valueSpecification,
288  string variableName,
289  lpsrOctaveEntryKind& lpsrOctaveEntryKindVariable,
290  S_msrSemiTonesPitchAndOctave& lilypondFixedOctaveEntryVariable);
291 
292  protected:
293 
294  // constructors/destructor
295  // ------------------------------------------------------
296 
298  string shortName,
299  string longName,
300  string description,
301  string valueSpecification,
302  string variableName,
303  lpsrOctaveEntryKind& lpsrOctaveEntryKindVariable,
304  S_msrSemiTonesPitchAndOctave& lilypondFixedOctaveEntryVariable);
305 
306  virtual ~lilypondFixedOctaveEntryAtom ();
307 
308  public:
309 
310  // set and get
311  // ------------------------------------------------------
312 
313  void setFixedOctaveEntryVariableValue (
315  {
316  fMsrSemiTonesPitchAndOctaveVariable = value;
317  }
318 
319  public:
320 
321  // services
322  // ------------------------------------------------------
323 
324  S_oahValuedAtom handleOptionUnderName (
325  string optionName,
326  ostream& os);
327 
328  void handleValue (
329  string theString,
330  ostream& os);
331 
332  public:
333 
334  // visitors
335  // ------------------------------------------------------
336 
337  virtual void acceptIn (basevisitor* v);
338  virtual void acceptOut (basevisitor* v);
339 
340  virtual void browseData (basevisitor* v);
341 
342  public:
343 
344  // print
345  // ------------------------------------------------------
346 
347  string asShortNamedOptionString () const;
348  string asActualLongNamedOptionString () const;
349 
350  void print (ostream& os) const;
351 
352  void printAtomOptionsValues (
353  ostream& os,
354  int valueFieldWidth) const;
355 
356  private:
357 
358  // fields
359  // ------------------------------------------------------
360 
361  lpsrOctaveEntryKind& fLpsrOctaveEntryKindVariable;
362 
364  fMsrSemiTonesPitchAndOctaveVariable;
365 };
367 EXP ostream& operator<< (ostream& os, const S_lilypondFixedOctaveEntryAtom& elt);
368 
369 //______________________________________________________________________________
371 {
372  public:
373 
374  // creation
375  // ------------------------------------------------------
376 
378  string shortName,
379  string longName,
380  string description,
381  string valueSpecification,
382  string variableName,
383  lpsrAccidentalStyleKind&
384  lilypondAccidentalStyleKindVariable);
385 
386  protected:
387 
388  // constructors/destructor
389  // ------------------------------------------------------
390 
392  string shortName,
393  string longName,
394  string description,
395  string valueSpecification,
396  string variableName,
397  lpsrAccidentalStyleKind&
398  lilypondAccidentalStyleKindVariable);
399 
401 
402  public:
403 
404  // set and get
405  // ------------------------------------------------------
406 
407  void setLpsrAccidentalStyleKindVariable (
408  lpsrAccidentalStyleKind value)
409  {
410  fLpsrAccidentalStyleKindVariable = value;
411  }
412 
413  public:
414 
415  // services
416  // ------------------------------------------------------
417 
418  S_oahValuedAtom handleOptionUnderName (
419  string optionName,
420  ostream& os);
421 
422  void handleValue (
423  string theString,
424  ostream& os);
425 
426  public:
427 
428  // visitors
429  // ------------------------------------------------------
430 
431  virtual void acceptIn (basevisitor* v);
432  virtual void acceptOut (basevisitor* v);
433 
434  virtual void browseData (basevisitor* v);
435 
436  public:
437 
438  // print
439  // ------------------------------------------------------
440 
441  string asShortNamedOptionString () const;
442  string asActualLongNamedOptionString () const;
443 
444  void print (ostream& os) const;
445 
446  void printAtomOptionsValues (
447  ostream& os,
448  int valueFieldWidth) const;
449 
450  private:
451 
452  // fields
453  // ------------------------------------------------------
454 
455  lpsrAccidentalStyleKind&
456  fLpsrAccidentalStyleKindVariable;
457 };
459 EXP ostream& operator<< (ostream& os, const S_lilypondAccidentalStyleKindAtom& elt);
460 
461 //______________________________________________________________________________
463 {
464  public:
465 
466  // creation
467  // ------------------------------------------------------
468 
469  static SMARTP<lilypondChordsDisplayAtom> create (
470  string shortName,
471  string longName,
472  string description,
473  string valueSpecification,
474  string variableName,
475  list<pair<string, string> >&
476  lilypondChordsDisplayVariable);
477 
478  protected:
479 
480  // constructors/destructor
481  // ------------------------------------------------------
482 
484  string shortName,
485  string longName,
486  string description,
487  string valueSpecification,
488  string variableName,
489  list<pair<string, string> >&
490  lilypondChordsDisplayVariable);
491 
492  virtual ~lilypondChordsDisplayAtom ();
493 
494  public:
495 
496  // set and get
497  // ------------------------------------------------------
498 
499  void setStringsPairListVariable (
500  pair<string, string> value)
501  {
502  fStringsPairListVariable.push_back (value);
503  }
504 
505  const list<pair<string, string> >&
506  getStringsPairListVariable ()
507  { return fStringsPairListVariable; }
508 
509  public:
510 
511  // services
512  // ------------------------------------------------------
513 
514  S_oahValuedAtom handleOptionUnderName (
515  string optionName,
516  ostream& os);
517 
518  void handleValue (
519  string theString,
520  ostream& os);
521 
522  public:
523 
524  // visitors
525  // ------------------------------------------------------
526 
527  string asShortNamedOptionString () const;
528  string asActualLongNamedOptionString () const;
529 
530  virtual void acceptIn (basevisitor* v);
531  virtual void acceptOut (basevisitor* v);
532 
533  virtual void browseData (basevisitor* v);
534 
535  public:
536 
537  // print
538  // ------------------------------------------------------
539 
540  void print (ostream& os) const;
541 
542  void printAtomOptionsValues (
543  ostream& os,
544  int valueFieldWidth) const;
545 
546  private:
547 
548  // fields
549  // ------------------------------------------------------
550 
551  list<pair<string, string> >&
552  fStringsPairListVariable;
553 };
555 EXP ostream& operator<< (ostream& os, const S_lilypondChordsDisplayAtom& elt);
556 
557 //______________________________________________________________________________
559 {
560  public:
561 
562  // creation
563  // ------------------------------------------------------
564 
566  string shortName,
567  string longName,
568  string description,
569  string valueSpecification,
570  string variableName,
571  lpsrLyricsDurationsKind&
572  lilypondLyricsDurationsKindVariable);
573 
574  protected:
575 
576  // constructors/destructor
577  // ------------------------------------------------------
578 
580  string shortName,
581  string longName,
582  string description,
583  string valueSpecification,
584  string variableName,
585  lpsrLyricsDurationsKind&
586  lilypondLyricsDurationsKindVariable);
587 
589 
590  public:
591 
592  // set and get
593  // ------------------------------------------------------
594 
595  void setLpsrLyricsDurationsKindVariable (
596  lpsrLyricsDurationsKind value)
597  {
598  fLpsrLyricsDurationsKindVariable = value;
599  }
600 
601  public:
602 
603  // services
604  // ------------------------------------------------------
605 
606  S_oahValuedAtom handleOptionUnderName (
607  string optionName,
608  ostream& os);
609 
610  void handleValue (
611  string theString,
612  ostream& os);
613 
614  public:
615 
616  // visitors
617  // ------------------------------------------------------
618 
619  virtual void acceptIn (basevisitor* v);
620  virtual void acceptOut (basevisitor* v);
621 
622  virtual void browseData (basevisitor* v);
623 
624  public:
625 
626  // print
627  // ------------------------------------------------------
628 
629  string asShortNamedOptionString () const;
630  string asActualLongNamedOptionString () const;
631 
632  void print (ostream& os) const;
633 
634  void printAtomOptionsValues (
635  ostream& os,
636  int valueFieldWidth) const;
637 
638  private:
639 
640  // fields
641  // ------------------------------------------------------
642 
643  lpsrLyricsDurationsKind&
644  fLpsrLyricsDurationsKindVariable;
645 };
647 EXP ostream& operator<< (ostream& os, const S_lilypondLyricsDurationsKindAtom& elt);
648 
649 //______________________________________________________________________________
650 class lilypondOah : public oahGroup
651 {
652  public:
653 
654  // data types
655  // ------------------------------------------------------
656 
657  enum scoreNotationKind {
658  kWesternNotation, kJianpuNotation, kABCNotation };
659 
660  static string scoreNotationKindAsString (
661  scoreNotationKind notationKind);
662 
663  public:
664 
665  // creation
666  // ------------------------------------------------------
667 
668  static SMARTP<lilypondOah> create (
669  S_oahHandler handlerUpLink);
670 
671  SMARTP<lilypondOah> createCloneWithDetailedTrace ();
672 
673  public:
674 
675  // initialisation
676  // ------------------------------------------------------
677 
678  void initializeLilypondOah (
679  bool boolOptionsInitialValue);
680 
681  public:
682 
683  // constructors/destructor
684  // ------------------------------------------------------
685 
686  lilypondOah (
687  S_oahHandler handlerUpLink);
688 
689  virtual ~lilypondOah ();
690 
691  // set and get
692  // ------------------------------------------------------
693 
694  // JMI bool setAccidentalStyleKind (
695  // lpsrAccidentalStyleKind accidentalStyleKind);
696 
697  bool setScoreOutputKind (
698  string outputKind);
699 
700  public:
701 
702  // quiet mode
703  // ------------------------------------------------------
704 
705  void enforceQuietness ();
706 
707  public:
708 
709  // consistency check
710  // ------------------------------------------------------
711 
712  virtual void checkOptionsConsistency ();
713 
714  public:
715 
716  // public services
717  // ------------------------------------------------------
718 
719  private:
720 
721  // private services
722  // ------------------------------------------------------
723 
724  void initializeIdentificationOptions (
725  bool boolOptionsInitialValue);
726 
727  void initializeEngraversOptions (
728  bool boolOptionsInitialValue);
729 
730  void initializeClefsKeysTimesOptions (
731  bool boolOptionsInitialValue);
732 
733  void initializeNotesOptions (
734  bool boolOptionsInitialValue);
735 
736  void initializeBarsOptions (
737  bool boolOptionsInitialValue);
738 
739  void initializeLineBreaksOptions (
740  bool boolOptionsInitialValue);
741 
742  void initializePageBreaksOptions (
743  bool boolOptionsInitialValue);
744 
745  void initializeStavesOptions (
746  bool boolOptionsInitialValue);
747 
748  void initializeChordsOptions (
749  bool boolOptionsInitialValue);
750 
751  void initializeTupletsOptions (
752  bool boolOptionsInitialValue);
753 
754  void initializeRepeatOptions (
755  bool boolOptionsInitialValue);
756 
757  void initializeOrnamentsOptions (
758  bool boolOptionsInitialValue);
759 
760  void initializeChordsDisplayOptions (
761  bool boolOptionsInitialValue);
762 
763  void initializeLyricsOptions (
764  bool boolOptionsInitialValue);
765 
766  void initializeFontsOptions (
767  bool boolOptionsInitialValue);
768 
769  void initializeCodeGenerationOptions (
770  bool boolOptionsInitialValue);
771 
772  void initializeScoreNotationOptions (
773  bool boolOptionsInitialValue);
774 
775  void initializeMidiOptions (
776  bool boolOptionsInitialValue);
777 
778  void setOctaveEntryKindToAbsolute () // JMI ???
779  {
780  fOctaveEntryKind =
781  kOctaveEntryAbsolute;
782  }
783 
784  public:
785 
786  // visitors
787  // ------------------------------------------------------
788 
789  virtual void acceptIn (basevisitor* v);
790  virtual void acceptOut (basevisitor* v);
791 
792  virtual void browseData (basevisitor* v);
793 
794  public:
795 
796  // print
797  // ------------------------------------------------------
798 
799  void printLilypondOahHelp ();
800 
801  void printLilypondOahValues (int fieldWidth);
802 
803  virtual void printAtomOptionsValues (
804  ostream& os,
805  int valueFieldWidth) const;
806 
807  public:
808 
809  // identification
810  // --------------------------------------
811 
812  // MusicXML informations
813  string fRights;
814  string fComposer;
815  string fArranger;
816  string fPoet;
817  string fLyricist;
818  string fSoftware;
819 
820  // LilyPond informations
821  string fDedication;
822  string fPiece;
823  string fOpus;
824  string fTitle;
825  string fSubTitle;
826  string fSubSubTitle;
827  string fInstrument;
828  string fMeter;
829  string fTagline;
830  string fCopyright;
831 
832 
833  // names
834  // --------------------------------------
835 
836 
837  // engravers
838  // --------------------------------------
839 
840  bool fAmbitusEngraver;
841  bool fCustosEngraver;
842 
843 
844  // clefs, keys, times
845  // --------------------------------------
846 
847  bool fCommentClefChanges;
848 
849  bool fNumericalTime;
850 
851  // notes
852  // --------------------------------------
853 
854  lpsrOctaveEntryKind fOctaveEntryKind;
855 
856  // this is relevant only for relative octave entry kinds
858  fRelativeOctaveEntrySemiTonesPitchAndOctave;
859  // this is relevant only for fixed octave entry kinds
861  fFixedOctaveEntrySemiTonesPitchAndOctave;
862 
864  fSemiTonesPitchAndOctaveDefaultValue;
865 
866 
867  bool fAllDurations;
868 
869  bool fStems;
870 
871  bool fNoAutoBeaming;
872  bool fNoBeams;
873 
874  bool fRomanStringNumbers;
875  bool fAvoidOpenStrings;
876 
877  lpsrAccidentalStyleKind
878  fAccidentalStyleKind;
879 
880  bool fCompressFullMeasureRests;
881 
882  bool fInputLineNumbers;
883  bool fOriginalMeasureNumbers;
884  bool fPositionsInMeasures;
885 
886 
887  // bars and measures
888  // --------------------------------------
889 
890  bool fShowAllBarNumbers;
891 
892  map<string, int> fResetMeasureElementMeasureNumberMap;
893  map<string, int> fAddEmptyMeasuresAfterMeasureNumberMap;
894 
895  set<int> fBoxAroundBarNumberSet;
896 
897 
898  // line breaks
899  // --------------------------------------
900 
901  bool fIgnoreMusicXMLLineBreaks;
902 
903  bool fBreakLinesAtIncompleteRightMeasures;
904 
905  int fSeparatorLineEveryNMeasures;
906 
907  set<string> fBreakLineAfterMeasureNumberSet;
908 
909  // page breaks
910  // --------------------------------------
911 
912  bool fIgnoreMusicXMLPageBreaks;
913 
914  set<string> fBreakPageAfterMeasureNumberSet;
915 
916 
917  // staves
918  // --------------------------------------
919 
920  bool fModernTab;
921  bool fTabFullNotation;
922 
923  bool fKeepStaffSize;
924 
925  msrRGBColor fLedgerLinesRGBColor; // #(rgb-color 1.0 0.9 0.5)
926  bool fLedgerLinesRGBColorHasBeenSet;
927 
928  // chords
929  // --------------------------------------
930 
931  bool fConnectArpeggios;
932 
933 
934  // tuplets
935  // --------------------------------------
936 
937  bool fIndentTuplets;
938 
939 
940  // repeats
941  // --------------------------------------
942 
943  bool fKeepRepeatBarlines; // otherwise let LilyPond do the job
944  bool fRepeatBrackets;
945  bool fIgnoreRepeatNumbers; // and let LilyPond do the job
946 
947 
948  // ornaments
949  // --------------------------------------
950 
951  rational fDelayedOrnamentsFraction;
952 
953 
954  // chords display
955  // --------------------------------------
956 
957  list<pair<string, string> >
958  fChordsDisplayList;
959  bool fJazzChordsDisplay;
960  string fJazzChordsDisplayLilypondcode;
961 
962 
963  // fonts
964  // --------------------------------------
965 
966  bool fJazzFonts;
967 
968 
969  // code generation
970  // --------------------------------------
971 
972  bool fXml2lyInfos;
973 
974  bool fComments;
975 
976  bool fGlobal;
977 
978  bool fDisplayMusic;
979 
980  bool fNoLilypondCode;
981 
982  bool fNoLilypondLyrics;
983 
984  bool fLilypondCompileDate;
985 
986  bool fPointAndClickOff;
987 
988  bool fDraftMode;
989 
990  bool fWhiteNoteHeads;
991 
992 
993  // score notation
994  // --------------------------------------
995 
996  // scoreNotationKind fScoreNotationKind; JMI ???
997  bool fJianpu;
998 
999 
1000  // lyrics alignment
1001  // --------------------------------------
1002 
1003  lpsrLyricsDurationsKind
1004  fLyricsDurationsKind;
1005 
1006  // midi
1007  // --------------------------------------
1008 
1009  msrMidiTempo fMidiTempo;
1010 
1011  bool fNoMidi;
1012 };
1014 EXP ostream& operator<< (ostream& os, const S_lilypondOah& elt);
1015 
1016 EXP extern S_lilypondOah gLilypondOah;
1017 EXP extern S_lilypondOah gLilypondOahUserChoices;
1018 EXP extern S_lilypondOah gLilypondOahWithDetailedTrace;
1019 
1020 // JMI typedef void (lilypondOah::*lilypondOahMethodPtr)(); //MyTypedef is a type!
1021 
1022 /*
1023  It's worth noting that, as of C++11, you could write this expression
1024  as a more legible using statement:
1025  using lilypondOahMethodPtr = void (lilypondOah::*)();
1026 */
1027 
1028 //______________________________________________________________________________
1029 void initializeLilypondOahHandling (
1030  S_oahHandler handler);
1031 
1032 
1033 }
1034 
1035 
1036 #endif
1037 
1038  /* JMI ???
1039  workNumber
1040  workTitle
1041  movementNumber,
1042  movementTitle,
1043  scoreInstrument
1044  miscellaneousField
1045 
1046  partGroupName
1047  partGroupNameDisplayText
1048  partGroupAbbrevation
1049  partGroupInstrumentName
1050 
1051  partID
1052  partMsrName
1053  partName
1054  partAbbrevation
1055  partInstrumentName
1056  partInstrumentAbbreviation
1057 
1058  staffInstrumentName
1059  staffInstrumentAbbreviation
1060 
1061  pickDedication
1062  pickTitle
1063  pickSubTitle
1064  pickSubSubTitle
1065 
1066  pickInstrument
1067 
1068  pickTagline
1069  pickCopyright
1070  */
1071 
1072 
1073 /* JMI
1074 //______________________________________________________________________________
1075 class lilypondBreakPageAfterMeasureNumberAtom : public oahValuedAtom
1076 {
1077  public:
1078 
1079  // creation
1080  // ------------------------------------------------------
1081 
1082  static SMARTP<lilypondBreakPageAfterMeasureNumberAtom> create (
1083  string shortName,
1084  string longName,
1085  string description,
1086  string valueSpecification,
1087  string variableName,
1088  set<string>& S_lilypondAbsoluteOctaveEntryAtomtringSetVariable);
1089 
1090  protected:
1091 
1092  // constructors/destructor
1093  // ------------------------------------------------------
1094 
1095  lilypondBreakPageAfterMeasureNumberAtom (
1096  string shortName,
1097  string longName,
1098  string description,
1099  string valueSpecification,
1100  string variableName,
1101  set<string>& fStringSetVariable);
1102 
1103  virtual ~lilypondBreakPageAfterMeasureNumberAtom ();
1104 
1105  public:
1106 
1107  // set and get
1108  // ------------------------------------------------------
1109 
1110  const set<string>& getStringSetVariable ()
1111  { return fStringSetVariable; }
1112 
1113  // services
1114  // ------------------------------------------------------
1115 
1116  S_oahValuedAtom handleOptionUnderName (
1117  string optionName,
1118  ostream& os);
1119 
1120  void handleValue (
1121  string theString,
1122  ostream& os);
1123 
1124  // print
1125  // ------------------------------------------------------
1126 
1127  void print (ostream& os) const;
1128 
1129  void printAtomOptionsValues (
1130  ostream& os,
1131  int valueFieldWidth) const;
1132 
1133  private:
1134 
1135  // fields
1136  // ------------------------------------------------------
1137 
1138  set<string>& fStringSetVariable;
1139 };
1140 typedef SMARTP<lilypondBreakPageAfterMeasureNumberAtom> S_lilypondBreakPageAfterMeasureNumberAtom;
1141 EXP ostream& operator<< (ostream& os, const S_lilypondBreakPageAfterMeasureNumberAtom& elt);
1142 */
1143 
1144 /*
1145  enum {
1146  workNumber
1147  workTitle
1148  movementNumber,
1149  movementTitle,
1150  scoreInstrument
1151  miscellaneousField
1152 
1153  partGroupName
1154  partGroupNameDisplayText
1155  partGroupAbbrevation
1156  partGroupInstrumentName
1157 
1158  partID
1159  partMsrName
1160  partName
1161  partAbbrevation
1162  partInstrumentName
1163  partInstrumentAbbreviation
1164 
1165  staffInstrumentName
1166  staffInstrumentAbbreviation
1167  };
1168 */
1169 
MusicXML2::oahGroup
Definition: oahBasicTypes.h:2854
MusicXML2::lilypondAbsoluteOctaveEntryAtom
Definition: lilypondOah.h:109
MusicXML2::lilypondFixedOctaveEntryAtom
Definition: lilypondOah.h:277
MusicXML2::lilypondScoreOutputKindAtom
Definition: lilypondOah.h:24
MusicXML2::lilypondOah
Definition: lilypondOah.h:651
MusicXML2::msrRGBColor
Definition: msrBasicTypes.h:1401
MusicXML2::lilypondAccidentalStyleKindAtom
Definition: lilypondOah.h:371
MusicXML2::lilypondLyricsDurationsKindAtom
Definition: lilypondOah.h:559
MusicXML2::SMARTP
the smart pointer implementation
Definition: smartpointer.h:58
MusicXML2::oahAtomWithVariableName
Definition: oahBasicTypes.h:345
MusicXML2::msrMidiTempo
Definition: msrMidi.h:26
MusicXML2::basevisitor
Definition: basevisitor.h:25
MusicXML2::oahValuedAtom
Definition: oahBasicTypes.h:964
MusicXML2::lilypondRelativeOctaveEntryAtom
Definition: lilypondOah.h:183
MusicXML2::lilypondChordsDisplayAtom
Definition: lilypondOah.h:463
rational
Rational number representation.
Definition: rational.h:25