20 #ifndef __IMPORTMXMLPASS2_H__ 21 #define __IMPORTMXMLPASS2_H__ 42 using Tuplets = std::map<QString, Tuplet*>;
90 bool _isStarted {
false };
91 bool _isStopped {
false };
104 void addLyric(
Lyrics*
const lyric);
105 void setExtend(
const int no,
const int track,
const Fraction& tick);
123 void skipLogCurrElem();
125 QXmlStreamReader&
_e;
139 void addAttribute(
const QStringRef name,
const QStringRef value);
140 QString attribute(
const QString& name)
const;
141 QString
name()
const {
return _name; }
142 QString print()
const;
143 void setText(
const QString& text) { _text = text; }
144 QString
text()
const {
return _text; }
162 using SlurStack = std::array<SlurDesc, MAX_NUMBER_LEVEL>;
164 using BracketsStack = std::array<MusicXmlExtendedSpannerDesc, MAX_NUMBER_LEVEL>;
165 using OttavasStack = std::array<MusicXmlExtendedSpannerDesc, MAX_NUMBER_LEVEL>;
166 using HairpinsStack = std::array<MusicXmlExtendedSpannerDesc, MAX_NUMBER_LEVEL>;
167 using SpannerStack = std::array<MusicXmlExtendedSpannerDesc, MAX_NUMBER_LEVEL>;
186 void addTechnical(
Note* note);
187 void articulations();
190 void glissandoSlide();
191 void mordentNormalOrInverted();
194 void skipLogCurrElem();
198 QXmlStreamReader&
_e;
211 int _tremoloNr { 0 };
213 int _wavyLineNo { 0 };
223 bool _slurStop {
false };
224 bool _wavyLineStop {
false };
242 void initPartState(
const QString& partId);
245 void scorePartwise();
249 void measChordNote( );
250 void measChordFlush( );
251 void measure(
const QString& partId,
const Fraction time);
252 void attributes(
const QString& partId,
Measure* measure,
const Fraction& tick);
253 void measureStyle(
Measure* measure);
255 void barline(
const QString& partId,
Measure* measure,
const Fraction& tick);
256 void key(
const QString& partId,
Measure* measure,
const Fraction& tick);
257 void clef(
const QString& partId,
Measure* measure,
const Fraction& tick);
258 void time(
const QString& partId,
Measure* measure,
const Fraction& tick);
260 void transpose(
const QString& partId);
264 void notePrintSpacingNo(
Fraction& dura);
268 void harmony(
const QString& partId,
Measure* measure,
const Fraction sTime);
276 void doEnding(
const QString& partId,
Measure* measure,
const QString& number,
const QString&
type,
const QString& text);
277 void staffDetails(
const QString& partId);
279 void skipLogCurrElem();
282 void setMultiMeasureRestCount(
int count);
283 int getAndDecMultiMeasureRestCount();
334 QXmlStreamReader&
_e;
362 void directionType(QList<MusicXmlSpannerDesc>& starts, QList<MusicXmlSpannerDesc>& stops);
363 void bracket(
const QString&
type,
const int number, QList<MusicXmlSpannerDesc>& starts, QList<MusicXmlSpannerDesc>& stops);
364 void octaveShift(
const QString&
type,
const int number, QList<MusicXmlSpannerDesc>& starts, QList<MusicXmlSpannerDesc>& stops);
365 void pedal(
const QString&
type,
const int number, QList<MusicXmlSpannerDesc>& starts, QList<MusicXmlSpannerDesc>& stops);
366 void dashes(
const QString&
type,
const int number, QList<MusicXmlSpannerDesc>& starts, QList<MusicXmlSpannerDesc>& stops);
367 void wedge(
const QString&
type,
const int number, QList<MusicXmlSpannerDesc>& starts, QList<MusicXmlSpannerDesc>& stops);
368 QString metronome(
double& r);
371 void handleRepeats(
Measure* measure,
const int track);
372 void skipLogCurrElem();
QString _enclosure
Definition: importmxmlpass2.h:341
QString _sndFine
Definition: importmxmlpass2.h:352
Definition: durationtype.h:28
FiguredBass * _figBass
Current figured bass element (to attach to next note)
Definition: importmxmlpass2.h:319
MusicXmlTupletDesc _tupletDesc
Definition: importmxmlpass2.h:201
Definition: importmxmlpass2.h:174
Definition of class MusicXML.
Describe the information extracted from a single note/notations/tuplet element.
Definition: importmxmlpass2.h:62
Tie * _tie
Definition: importmxmlpass2.h:309
QString _technicalFret
Definition: importmxmlpass2.h:218
Fretboard diagram.
Definition: fret.h:122
MusicXmlExtendedSpannerDesc _pedal
Current pedal.
Definition: importmxmlpass2.h:315
MusicXMLParserPass2 & _pass2
Definition: importmxmlpass2.h:337
std::set< Spanner * > SpannerSet
Definition: importmxmlpass2.h:168
QString _tiedLineType
Definition: importmxmlpass2.h:204
QSet< Lyrics * > _lyrics
Definition: importmxmlpass2.h:108
MxmlStartStop
Definition: importmxmlpass1.h:67
Definition of Score class.
void setText(const QString &text)
Definition: importmxmlpass2.h:143
std::array< SlurDesc, MAX_NUMBER_LEVEL > SlurStack
Definition: importmxmlpass2.h:162
Definition: importmxmlpass2.h:115
one measure in a system
Definition: measure.h:65
QString _tempo
Definition: importmxmlpass2.h:346
QString _dynaVelocity
Definition: importmxmlpass2.h:345
TupletNumberType
Definition: types.h:500
QString _chordLineType
Definition: importmxmlpass2.h:214
QString _sndCoda
Definition: importmxmlpass2.h:348
Score *const _score
Definition: importmxmlpass2.h:199
SymId
Definition: sym.h:30
MxmlStartStop type
Definition: importmxmlpass2.h:64
std::array< MusicXmlExtendedSpannerDesc, MAX_NUMBER_LEVEL > BracketsStack
Definition: importmxmlpass2.h:164
Definition: importmxmllogger.h:20
std::map< QString, QString > _attributes
Definition: importmxmlpass2.h:148
bool mustStopGraceAFter() const
Definition: importmxmlpass2.h:184
QString _tremoloType
Definition: importmxmlpass2.h:210
Definition: importmxmlpass2.h:231
const LyricNumberHandler _lyricNumberHandler
Definition: importmxmlpass2.h:124
const MusicXMLParserPass1 & _pass1
Definition: importmxmlpass2.h:336
const int MAX_NUMBER_LEVEL
Definition: musicxml.h:50
const char * toString(Direction val)
Definition: mscore.cpp:176
MusicXmlLyricsExtend()
Definition: importmxmlpass2.h:102
QMap< int, Lyrics * > _numberedLyrics
Definition: importmxmlpass2.h:128
QString _wavyLineType
Definition: importmxmlpass2.h:212
QStringList _dynamicsList
Definition: importmxmlpass2.h:206
Definition: accidental.h:65
bool _hasDefaultY
Definition: importmxmlpass2.h:353
TupletBracketType
Definition: types.h:501
Pedal * _pedalContinue
Current pedal type="change" requiring fixup.
Definition: importmxmlpass2.h:316
Definition: stringdata.h:35
double _tpoSound
Definition: importmxmlpass2.h:358
int tremoloNr() const
Definition: importmxmlpass2.h:183
std::map< QString, MxmlTupletState > MxmlTupletStates
Definition: importmxmlpass1.h:99
std::array< Trill *, MAX_NUMBER_LEVEL > TrillStack
Definition: importmxmlpass2.h:163
QList< Chord * > GraceChordList
Definition: importmxmlpass2.h:38
Placement placement
Definition: importmxmlpass2.h:65
QString _sndDacapo
Definition: importmxmlpass2.h:349
Score *const _score
Definition: importmxmlpass2.h:289
MxmlLogger * _logger
Error logger.
Definition: importmxmlpass2.h:338
Placement
Definition: types.h:312
std::array< MusicXmlExtendedSpannerDesc, MAX_NUMBER_LEVEL > SpannerStack
Definition: importmxmlpass2.h:167
QString _rehearsalText
Definition: importmxmlpass2.h:344
SLine * _sp
Definition: importmxmlpass2.h:75
OttavasStack _ottavas
Current ottavas.
Definition: importmxmlpass2.h:303
std::vector< SymId > _articulationSymbols
Definition: importmxmlpass2.h:207
TupletBracketType bracket
Definition: importmxmlpass2.h:66
MxmlLogger * _logger
Error logger.
Definition: importmxmlpass2.h:291
MusicXmlLyricsExtend _extendedLyrics
Lyrics with "extend" requiring fixup.
Definition: importmxmlpass2.h:321
int _nr
Definition: importmxmlpass2.h:77
MusicXmlTupletDesc tupletDesc() const
Definition: importmxmlpass2.h:181
Definition: glissando.h:49
Fraction _offset
Definition: importmxmlpass2.h:360
virtual base class for Hairpin, Trill and TextLine
Definition: line.h:70
Definition: importmxmlpass1.h:115
QXmlStreamReader _e
Definition: importmxmlpass2.h:287
QString _name
Definition: importmxmlpass2.h:146
std::map< QString, Tuplet * > Tuplets
Definition: importmxmlpass2.h:42
MusicXmlExtendedSpannerDesc _dummyNewMusicXmlSpannerDesc
Definition: importmxmlpass2.h:305
QMap< SLine *, QPair< int, int > > MusicXmlSpannerMap
Definition: musicxml.h:126
QSet< Lyrics * > extendedLyrics() const
Definition: importmxmlpass2.h:119
QString _text
Definition: importmxmlpass2.h:147
Volta * _lastVolta
Definition: importmxmlpass2.h:310
Harmony * _harmony
Current harmony.
Definition: importmxmlpass2.h:317
FileError
Definition: score.h:395
Definition: importmxmlpass2.h:74
QString _sndSegno
Definition: importmxmlpass2.h:351
Mode
Definition: beam.h:73
QString _arpeggioType
Definition: importmxmlpass2.h:222
QVector< FiguredBass * > FiguredBassList
Definition: importmxmlpass2.h:39
MusicXmlSpannerMap _spanners
Definition: importmxmlpass2.h:313
Definition: aeolus.cpp:26
QString _sndCapo
Definition: importmxmlpass2.h:347
MxmlLogger * _logger
Definition: importmxmlpass2.h:200
MxmlLogger * _logger
Error logger.
Definition: importmxmlpass2.h:127
Definition: importmxmlpass2.h:100
double _tpoMetro
Definition: importmxmlpass2.h:357
QString _sndDalsegno
Definition: importmxmlpass2.h:350
QXmlStreamReader & _e
Definition: importmxmlpass2.h:334
QString _technicalFingering
Definition: importmxmlpass2.h:217
QList< Element * > _elems
Definition: importmxmlpass2.h:359
BracketsStack _brackets
Definition: importmxmlpass2.h:302
Fraction _timeSigDura
Definition: importmxmlpass2.h:298
Definition: importmxmlpass2.h:328
Definition: importmxmlpass2.h:86
TupletNumberType shownumber
Definition: importmxmlpass2.h:67
a Tie has a Note as startElement/endElement
Definition: tie.h:60
Graphic representation of a chord.
Definition: chord.h:55
QString name() const
Definition: importmxmlpass2.h:141
QString tremoloType() const
Definition: importmxmlpass2.h:182
QXmlStreamReader & _e
Definition: importmxmlpass2.h:198
Chord * _tremStart
Starting chord for current tremolo.
Definition: importmxmlpass2.h:318
std::vector< Notation > _notations
Definition: importmxmlpass2.h:209
Definition: chordrest.h:48
Direction
Definition: types.h:282
QStringList _dynamicsList
Definition: importmxmlpass2.h:340
MusicXmlSpannerDesc(SLine *sp, ElementType tp, int nr)
Definition: importmxmlpass2.h:78
QXmlStreamReader & _e
Definition: importmxmlpass2.h:125
ElementType _tp
Definition: importmxmlpass2.h:76
QString _metroText
Definition: importmxmlpass2.h:343
QString _dynamicsPlacement
Definition: importmxmlpass2.h:205
QString text() const
Definition: importmxmlpass2.h:144
qreal _defaultY
Definition: importmxmlpass2.h:354
Graphic representation of a note.
Definition: note.h:212
QString _tiedType
Definition: importmxmlpass2.h:202
QString _technicalString
Definition: importmxmlpass2.h:220
Definition: fraction.h:46
QString _technicalPluck
Definition: importmxmlpass2.h:219
Score *const _score
Definition: importmxmlpass2.h:335
ElementType
Definition: types.h:34
MusicXmlTupletDesc()
Definition: importmxmlpass2.cpp:93
Notation(const QString &name)
Definition: importmxmlpass2.h:138
MusicXmlExtendedSpannerDesc()
Definition: importmxmlpass2.h:92
QString _fermataType
Definition: importmxmlpass2.h:215
bool _coda
Definition: importmxmlpass2.h:355
std::array< MusicXmlExtendedSpannerDesc, MAX_NUMBER_LEVEL > OttavasStack
Definition: importmxmlpass2.h:165
QString _strongAccentType
Definition: importmxmlpass2.h:221
Score *const _score
Definition: importmxmlpass2.h:126
MusicXmlSpannerDesc(ElementType tp, int nr)
Definition: importmxmlpass2.h:79
MusicXMLParserPass1 & _pass1
Definition: importmxmlpass2.h:290
HairpinsStack _hairpins
Current hairpins.
Definition: importmxmlpass2.h:304
bool _hasDrumset
drumset defined TODO: move to pass 1
Definition: importmxmlpass2.h:311
int _multiMeasureRestCount
Definition: importmxmlpass2.h:320
std::array< MusicXmlExtendedSpannerDesc, MAX_NUMBER_LEVEL > HairpinsStack
Definition: importmxmlpass2.h:166
Definition: importxmlfirstpass.h:38
bool _segno
Definition: importmxmlpass2.h:356
Definition: importmxmlpass2.h:136
int _divs
Definition: importmxmlpass2.h:288
QSet< Lyrics * > _extendedLyrics
Definition: importmxmlpass2.h:129
QMap< int, Lyrics * > numberedLyrics() const
Definition: importmxmlpass2.h:120
QString _tiedOrientation
Definition: importmxmlpass2.h:203
QString _wordsText
Definition: importmxmlpass2.h:342