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
89namespace 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
103class msrNote;
104typedef SMARTP<msrNote> S_msrNote;
105
106class msrChord;
107typedef SMARTP<msrChord> S_msrChord;
108
109class msrTuplet;
110typedef SMARTP<msrTuplet> S_msrTuplet;
111
113typedef SMARTP<msrGraceNotesGroup> S_msrGraceNotesGroup;
114
116typedef SMARTP<msrAfterGraceNotesGroup> S_msrAfterGraceNotesGroup;
117
118class msrHarmony;
119typedef SMARTP<msrHarmony> S_msrHarmony;
120
121class msrFiguredBass;
122typedef SMARTP<msrFiguredBass> S_msrFiguredBass;
123
124class msrRestMeasures;
125typedef SMARTP<msrRestMeasures> S_msrRestMeasures;
126
128typedef SMARTP<msrMeasuresRepeat> S_msrMeasuresRepeat;
129
130class msrBeatsRepeat;
131typedef SMARTP<msrBeatsRepeat> S_msrBeatsRepeat;
132
133class msrRepeat;
134typedef SMARTP<msrRepeat> S_msrRepeat;
135
136class msrMeasure;
137typedef SMARTP<msrMeasure> S_msrMeasure;
138
139class msrSegment;
140typedef SMARTP<msrSegment> S_msrSegment;
141
142class msrVoice;
143typedef SMARTP<msrVoice> S_msrVoice;
144
146typedef SMARTP<msrVoiceStaffChange> S_msrVoiceStaffChange;
147
148class msrPart;
149typedef SMARTP<msrPart> S_msrPart;
150
151class msrStanza;
152typedef 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
201class msrStaff;
202typedef 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
212class msrPartGroup;
213typedef SMARTP<msrPartGroup> S_msrPartGroup;
214
215class msrScore;
216typedef SMARTP<msrScore> S_msrScore;
217
218
219#include "msrParts_MUT_DEP.h"
220
221}
222
223#endif
Definition: msrAfterGraceNotes_MUT_DEP.h:95
Definition: msrBeatsRepeats_MUT_DEP.h:185
Definition: msrChords_MUT_DEP.h:8
Definition: msrFiguredBasses_MUT_DEP.h:126
Definition: msrGraceNotes_MUT_DEP.h:8
Definition: msrHarmonies_MUT_DEP.h:141
Definition: msrMeasures_MUT_DEP.h:8
Definition: msrMeasuresRepeats_MUT_DEP.h:296
Definition: msrNotes_MUT_DEP.h:8
Definition: msrParts_MUT_DEP.h:8
Definition: msrRepeats_MUT_DEP.h:382
Definition: msrRestMeasures_MUT_DEP.h:96
Definition: msrSegments_MUT_DEP.h:8
Definition: msrStaves_MUT_DEP.h:73
Definition: msrStanzas_MUT_DEP.h:8
Definition: msrTuplets_MUT_DEP.h:8
Definition: msrStaves_MUT_DEP.h:8
Definition: msrVoices_MUT_DEP.h:8