LibMusicXML  3.18
msrMutualDependencies.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 ___msrMutualDependencies___
14 #define ___msrMutualDependencies___
15 
16 #include "typedefs.h"
17 #include "tree_browser.h"
18 #include "exports.h"
19 
20 #include "utilities.h"
21 #include "messagesHandling.h"
22 
23 #include "msrElements.h"
24 
25 #include "msrTupletElements.h"
26 
27 #include "msrVoiceElements.h"
28 
29 #include "msrVarValAssocs.h"
30 
31 #include "msrIdentification.h"
32 
33 #include "msrLayouts.h" // JMI ???
34 #include "msrScaling.h"
35 
36 #include "msrCredits.h"
37 
38 #include "msrDivisions.h"
39 
40 #include "msrPartNamesDisplays.h"
41 
42 #include "msrStavesDetails.h"
43 
44 #include "msrClefs.h"
45 #include "msrKeys.h"
46 #include "msrTimes.h"
47 
48 #include "msrTempos.h"
49 
50 #include "msrRehearsals.h"
51 
52 #include "msrWords.h"
53 
54 #include "msrTranspositions.h"
55 
56 #include "msrBreaks.h"
57 
58 #include "msrStems.h"
59 #include "msrBeams.h"
60 
61 #include "msrTechnicals.h"
62 
63 #include "msrBars.h"
64 
65 #include "msrDynamics.h"
66 #include "msrArticulations.h"
67 
68 #include "msrTablatures.h"
69 #include "msrInstruments.h"
70 #include "msrOtherElements.h"
71 
72 #include "msrTies.h"
73 #include "msrSlurs.h"
74 #include "msrLigatures.h"
75 
76 #include "msrSingleTremolos.h"
77 
78 #include "msrSlashes.h"
79 
80 #include "msrPartGroups.h"
81 
82 #include "msrScores.h"
83 
84 #include "msrMidi.h"
85 
86 #include "generalOah.h"
87 
88 
89 namespace MusicXML2
90 {
91 
92 /*
93  This file declares classes that cannot be placed in 'individual' headers
94  due to mutual dependencies, which C++ requires to be in one and the same file.
95 
96  It includes the corresponding msr*_MUT_DEP.h files,
97  which are meant to be included only in this one.
98 */
99 
100 //______________________________________________________________________________
101 // PRE-declarations for class mutual dependencies
102 
103 class msrNote;
104 typedef SMARTP<msrNote> S_msrNote;
105 
106 class msrChord;
107 typedef SMARTP<msrChord> S_msrChord;
108 
109 class msrTuplet;
110 typedef SMARTP<msrTuplet> S_msrTuplet;
111 
112 class msrGraceNotesGroup;
113 typedef SMARTP<msrGraceNotesGroup> S_msrGraceNotesGroup;
114 
116 typedef SMARTP<msrAfterGraceNotesGroup> S_msrAfterGraceNotesGroup;
117 
118 class msrHarmony;
119 typedef SMARTP<msrHarmony> S_msrHarmony;
120 
121 class msrFiguredBass;
122 typedef SMARTP<msrFiguredBass> S_msrFiguredBass;
123 
124 class msrRestMeasures;
125 typedef SMARTP<msrRestMeasures> S_msrRestMeasures;
126 
127 class msrMeasuresRepeat;
128 typedef SMARTP<msrMeasuresRepeat> S_msrMeasuresRepeat;
129 
130 class msrBeatsRepeat;
131 typedef SMARTP<msrBeatsRepeat> S_msrBeatsRepeat;
132 
133 class msrRepeat;
134 typedef SMARTP<msrRepeat> S_msrRepeat;
135 
136 class msrMeasure;
137 typedef SMARTP<msrMeasure> S_msrMeasure;
138 
139 class msrSegment;
140 typedef SMARTP<msrSegment> S_msrSegment;
141 
142 class msrVoice;
143 typedef SMARTP<msrVoice> S_msrVoice;
144 
145 class msrVoiceStaffChange;
146 typedef SMARTP<msrVoiceStaffChange> S_msrVoiceStaffChange;
147 
148 class msrPart;
149 typedef SMARTP<msrPart> S_msrPart;
150 
151 class msrStanza;
152 typedef SMARTP<msrStanza> S_msrStanza;
153 
154 
155 //______________________________________________________________________________
156 
157 #include "msrOrnaments_MUT_DEP.h"
158 
159 #include "msrDoubleTremolos_MUT_DEP.h"
160 
161 #include "msrSpanners_MUT_DEP.h"
162 
163 #include "msrMeasures_MUT_DEP.h"
164 
165 #include "msrSegments_MUT_DEP.h"
166 
167 #include "msrGraceNotes_MUT_DEP.h"
168 
169 #include "msrAfterGraceNotes_MUT_DEP.h"
170 
171 #include "msrSyllables_MUT_DEP.h"
172 
173 #include "msrHarmonies_MUT_DEP.h"
174 
175 #include "msrFiguredBasses_MUT_DEP.h"
176 
177 #include "msrGlissandos_MUT_DEP.h"
178 
179 #include "msrSlides_MUT_DEP.h"
180 
181 #include "msrNotes_MUT_DEP.h"
182 
183 #include "msrChords_MUT_DEP.h"
184 
185 #include "msrTuplets_MUT_DEP.h"
186 
187 #include "msrStanzas_MUT_DEP.h"
188 
189 #include "msrRepeats_MUT_DEP.h"
190 
191 #include "msrMeasuresRepeats_MUT_DEP.h"
192 
193 #include "msrRestMeasures_MUT_DEP.h"
194 
195 #include "msrBeatsRepeats_MUT_DEP.h"
196 
197 #include "msrRepeatCodas_MUT_DEP.h"
198 
199 //______________________________________________________________________________
200 // PRE-declarations for class mutual dependencies
201 class msrStaff;
202 typedef SMARTP<msrStaff> S_msrStaff;
203 
204 
205 #include "msrVoices_MUT_DEP.h"
206 
207 #include "msrStaves_MUT_DEP.h"
208 
209 
210 //______________________________________________________________________________
211 // PRE-declarations for class mutual dependencies
212 class msrPartGroup;
213 typedef SMARTP<msrPartGroup> S_msrPartGroup;
214 
215 class msrScore;
216 typedef SMARTP<msrScore> S_msrScore;
217 
218 
219 #include "msrParts_MUT_DEP.h"
220 
221 }
222 
223 #endif
msrRestMeasures
Definition: msrRestMeasures_MUT_DEP.h:96
msrBeatsRepeat
Definition: msrBeatsRepeats_MUT_DEP.h:185
msrStaff
Definition: msrStaves_MUT_DEP.h:73
msrVoice
Definition: msrVoices_MUT_DEP.h:8
msrNote
Definition: msrNotes_MUT_DEP.h:8
msrMeasure
Definition: msrMeasures_MUT_DEP.h:8
msrFiguredBass
Definition: msrFiguredBasses_MUT_DEP.h:126
msrGraceNotesGroup
Definition: msrGraceNotes_MUT_DEP.h:8
msrVoiceStaffChange
Definition: msrStaves_MUT_DEP.h:8
msrChord
Definition: msrChords_MUT_DEP.h:8
msrSegment
Definition: msrSegments_MUT_DEP.h:8
msrPart
Definition: msrParts_MUT_DEP.h:8
msrMeasuresRepeat
Definition: msrMeasuresRepeats_MUT_DEP.h:296
msrHarmony
Definition: msrHarmonies_MUT_DEP.h:141
msrTuplet
Definition: msrTuplets_MUT_DEP.h:8
msrStanza
Definition: msrStanzas_MUT_DEP.h:8
msrAfterGraceNotesGroup
Definition: msrAfterGraceNotes_MUT_DEP.h:95
msrRepeat
Definition: msrRepeats_MUT_DEP.h:382