LibMusicXML 3.18
msrAfterGraceNotes_MUT_DEP.h
1/*
2 This file is to be included only by msrMutualDependencies.h,
3 to satisfy declarations mutual dependencies.
4*/
5
6//______________________________________________________________________________
7class msrAfterGraceNotesGroupContents : public msrElement
8{
9 public:
10
11 // creation from MusicXML
12 // ------------------------------------------------------
13
14 static SMARTP<msrAfterGraceNotesGroupContents> create (
15 int inputLineNumber,
16 S_msrVoice afterGraceNotesGroupContentsVoiceUpLink);
17
18 SMARTP<msrAfterGraceNotesGroupContents> createAfterGraceNotesGroupContentsNewbornClone (
19 S_msrVoice containingVoice);
20
21 SMARTP<msrVoice> createAfterGraceNotesGroupContentsDeepCopy (
22 S_msrVoice containingVoice);
23
24 protected:
25
26 // constructors/destructor
27 // ------------------------------------------------------
28
30 int inputLineNumber,
31 S_msrVoice afterGraceNotesGroupContentsVoiceUpLink);
32
34
35 public:
36
37 // set and get
38 // ------------------------------------------------------
39
40 const list<S_msrMeasureElement>&
41 getAfterGraceNotesGroupContentsNotesList ()
42 {
43 return
44 fAfterGraceNotesGroupContentsNotesList;
45 }
46
47 // services
48 // ------------------------------------------------------
49
50 // upLinks
51 S_msrPart fetchAfterGraceNotesGroupContentsPartUpLink () const;
52
53 // notes
54 void appendNoteToAfterGraceNotesGroupContents (
55 S_msrNote note);
56 void appendNoteToAfterGraceNotesGroupContents (
57 S_msrChord chord);
58
59 public:
60
61 // visitors
62 // ------------------------------------------------------
63
64 virtual void acceptIn (basevisitor* v);
65 virtual void acceptOut (basevisitor* v);
66
67 virtual void browseData (basevisitor* v);
68
69 public:
70
71 // print
72 // ------------------------------------------------------
73
74 string asShortString () const;
75
76 virtual void print (ostream& os) const;
77
78 private:
79
80 // fields
81 // ------------------------------------------------------
82
83 // upLinks
84 S_msrVoice fAfterGraceNotesGroupContentsVoiceUpLink;
85
86 // the notes list
87 list<S_msrMeasureElement>
88 fAfterGraceNotesGroupContentsNotesList;
89};
90typedef SMARTP<msrAfterGraceNotesGroupContents> S_msrAfterGraceNotesGroupContents;
91EXP ostream& operator<< (ostream& os, const S_msrAfterGraceNotesGroupContents& elt);
92
93//______________________________________________________________________________
94class msrAfterGraceNotesGroup : public msrElement
95{
96 public:
97
98 // creation from MusicXML
99 // ------------------------------------------------------
100
101 static SMARTP<msrAfterGraceNotesGroup> create (
102 int inputLineNumber,
103 S_msrElement afterGraceNotesGroupElement,
104 bool afterGraceNotesGroupIsSlashed,
105 S_msrVoice afterGraceNotesGroupVoiceUpLink);
106
107 SMARTP<msrAfterGraceNotesGroup> createAfterGraceNotesGroupNewbornClone (
108 S_msrNote noteClone,
109 S_msrVoice containingVoice);
110
111 SMARTP<msrVoice> createAfterGraceNotesGroupDeepCopy (
112 S_msrNote noteClone,
113 S_msrVoice containingVoice);
114
115 protected:
116
117 // constructors/destructor
118 // ------------------------------------------------------
119
121 int inputLineNumber,
122 S_msrElement afterGraceNotesGroupElement,
123 bool afterGraceNotesGroupIsSlashed,
124 S_msrVoice afterGraceNotesGroupVoiceUpLink);
125
126 virtual ~msrAfterGraceNotesGroup ();
127
128 public:
129
130 // set and get
131 // ------------------------------------------------------
132
133 S_msrElement getAfterGraceNotesGroupElement () const
134 { return fAfterGraceNotesGroupElement; }
135
136 S_msrAfterGraceNotesGroupContents
137 getAfterGraceNotesGroupContents () const
138 { return fAfterGraceNotesGroupContents; }
139
140 // services
141 // ------------------------------------------------------
142
143 // upLinks
144 S_msrPart fetchAfterGraceNotesGroupPartUpLink () const;
145
146 // notes
147 void appendNoteToAfterGraceNotesGroupContents (
148 S_msrNote note);
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 string asShortString () const;
166
167 virtual void print (ostream& os) const;
168
169 private:
170
171 // fields
172 // ------------------------------------------------------
173
174 // upLinks
175 S_msrVoice fAfterGraceNotesGroupVoiceUpLink;
176
177 S_msrElement fAfterGraceNotesGroupElement;
178
179 bool fAfterGraceNotesGroupIsSlashed;
180
181 S_msrAfterGraceNotesGroupContents
182 fAfterGraceNotesGroupContents;
183};
184typedef SMARTP<msrAfterGraceNotesGroup> S_msrAfterGraceNotesGroup;
185EXP ostream& operator<< (ostream& os, const S_msrAfterGraceNotesGroup& elt);
186
Definition: msrAfterGraceNotes_MUT_DEP.h:8
Definition: msrAfterGraceNotes_MUT_DEP.h:95