37 enum msrHarmonyDegreeTypeKind {
38 kHarmonyDegreeTypeAdd,
39 kHarmonyDegreeTypeAlter,
40 kHarmonyDegreeTypeSubstract };
42 static string harmonyDegreeTypeKindAsString (
43 msrHarmonyDegreeTypeKind harmonyDegreeTypeKind);
48 static SMARTP<msrHarmonyDegree> create (
50 int harmonyDegreeValue,
51 msrAlterationKind harmonyDegreeAlterationKind,
52 msrHarmonyDegreeTypeKind harmonyDegreeTypeKind);
69 int harmonyDegreeValue,
70 msrAlterationKind harmonyDegreeAlterationKind,
71 msrHarmonyDegreeTypeKind harmonyDegreeTypeKind);
80 void setHarmonyDegreeHarmonyUpLink (
81 S_msrHarmony harmonyUpLink);
83 S_msrHarmony getHarmonyDegreeHarmonyUpLink ()
const
84 {
return fHarmonyDegreeHarmonyUpLink; }
86 int getHarmonyDegreeValue ()
const
87 {
return fHarmonyDegreeValue; }
89 msrAlterationKind getHarmonyDegreeAlterationKind ()
const
90 {
return fHarmonyDegreeAlterationKind; }
92 msrHarmonyDegreeTypeKind
93 getHarmonyDegreeTypeKind ()
const
94 {
return fHarmonyDegreeTypeKind; }
99 int harmonyDegreeAsSemitones ()
const;
106 virtual void acceptIn (basevisitor* v);
107 virtual void acceptOut (basevisitor* v);
109 virtual void browseData (basevisitor* v);
116 string harmonyDegreeKindAsString ()
const;
117 string harmonyDegreeKindAsShortString ()
const;
119 string asString ()
const;
121 virtual void print (ostream& os)
const;
129 S_msrHarmony fHarmonyDegreeHarmonyUpLink;
131 int fHarmonyDegreeValue;
132 msrAlterationKind fHarmonyDegreeAlterationKind;
133 msrHarmonyDegreeTypeKind
134 fHarmonyDegreeTypeKind;
136typedef SMARTP<msrHarmonyDegree> S_msrHarmonyDegree;
137EXP ostream& operator<< (ostream& os,
const S_msrHarmonyDegree& elt);
147 static SMARTP<msrHarmony> createWithoutVoiceUplink (
150 msrQuarterTonesPitchKind harmonyRootQuarterTonesPitchKind,
151 msrHarmonyKind harmonyKind,
152 string harmonyKindText,
153 int harmonyInversion,
154 msrQuarterTonesPitchKind harmonyBassQuarterTonesPitchKind,
157 int harmonyStaffNumber,
158 msrTupletFactor harmonyTupletFactor,
161 SMARTP<msrHarmony> createHarmonyNewbornClone (
162 S_msrVoice containingVoice);
164 SMARTP<msrHarmony> createHarmonyDeepCopy (
165 S_msrVoice containingVoice);
170 static SMARTP<msrHarmony> createWithVoiceUplink (
172 S_msrVoice harmonyVoiceUpLink,
173 msrQuarterTonesPitchKind harmonyRootQuarterTonesPitchKind,
174 msrHarmonyKind harmonyKind,
175 string harmonyKindText,
176 int harmonyInversion,
177 msrQuarterTonesPitchKind harmonyBassQuarterTonesPitchKind,
180 int harmonyStaffNumber,
181 msrTupletFactor harmonyTupletFactor,
191 S_msrVoice harmonyVoiceUpLink,
192 msrQuarterTonesPitchKind harmonyRootQuarterTonesPitchKind,
193 msrHarmonyKind harmonyKind,
194 string harmonyKindText,
195 int harmonyInversion,
196 msrQuarterTonesPitchKind harmonyBassQuarterTonesPitchKind,
199 int harmonyStaffNumber,
200 msrTupletFactor harmonyTupletFactor,
211 void setHarmonyNoteUpLink (
213 { fHarmonyNoteUpLink = note; }
215 S_msrNote getHarmonyNoteUpLink ()
const
216 {
return fHarmonyNoteUpLink; }
218 void setHarmonyVoiceUpLink (
220 { fHarmonyVoiceUpLink = voice; }
222 S_msrVoice getHarmonyVoiceUpLink ()
const
223 {
return fHarmonyVoiceUpLink; }
225 void setHarmonySoundingWholeNotes (
227 { fMeasureElementSoundingWholeNotes = wholeNotes; }
229 rational getHarmonySoundingWholeNotes ()
const
230 {
return fMeasureElementSoundingWholeNotes; }
232 void setHarmonyDisplayWholeNotes (
234 { fHarmonyDisplayWholeNotes = wholeNotes; }
236 rational getHarmonyDisplayWholeNotes ()
const
237 {
return fHarmonyDisplayWholeNotes; }
239 msrQuarterTonesPitchKind
240 getHarmonyRootQuarterTonesPitchKind ()
const
241 {
return fHarmonyRootQuarterTonesPitchKind; }
243 msrHarmonyKind getHarmonyKind ()
const
244 {
return fHarmonyKind; }
246 string getHarmonyKindText ()
const
247 {
return fHarmonyKindText; }
249 const list<S_msrHarmonyDegree>&
250 getHarmonyDegreesList ()
251 {
return fHarmonyDegreesList; }
253 int getHarmonyInversion ()
const
254 {
return fHarmonyInversion; }
256 msrQuarterTonesPitchKind
257 getHarmonyBassQuarterTonesPitchKind ()
const
258 {
return fHarmonyBassQuarterTonesPitchKind; }
260 void setHarmonyStaffNumber (
262 { fHarmonyStaffNumber = staffNumber; }
264 int getHarmonyStaffNumber ()
const
265 {
return fHarmonyStaffNumber; }
267 void setHarmonyTupletFactor (
268 msrTupletFactor tupletFactor);
270 msrTupletFactor getHarmonyTupletFactor ()
const
271 {
return fHarmonyTupletFactor; }
273 rational getHarmonyWholeNotesOffset ()
const
274 {
return fHarmonyWholeNotesOffset; }
276 void setHarmonyPositionInMeasure (
282 void appendHarmonyDegreeToHarmony (
283 S_msrHarmonyDegree harmonyDegree)
285 fHarmonyDegreesList.push_back (
294 virtual void acceptIn (basevisitor* v);
295 virtual void acceptOut (basevisitor* v);
297 virtual void browseData (basevisitor* v);
304 string asString ()
const;
306 virtual void print (ostream& os)
const;
314 S_msrNote fHarmonyNoteUpLink;
315 S_msrVoice fHarmonyVoiceUpLink;
319 msrQuarterTonesPitchKind
320 fHarmonyRootQuarterTonesPitchKind;
322 msrHarmonyKind fHarmonyKind;
323 string fHarmonyKindText;
325 int fHarmonyInversion;
327 msrQuarterTonesPitchKind
328 fHarmonyBassQuarterTonesPitchKind;
330 list<S_msrHarmonyDegree>
333 int fHarmonyStaffNumber;
335 msrTupletFactor fHarmonyTupletFactor;
339typedef SMARTP<msrHarmony> S_msrHarmony;
340EXP ostream& operator<< (ostream& os,
const S_msrHarmony& elt);
Definition: msrHarmonies_MUT_DEP.h:8
Definition: msrHarmonies_MUT_DEP.h:141
Rational number representation.
Definition: rational.h:25