66 std::stack<Sguidoelement> fStack;
74 bool fGenerateComments, fGenerateBars, fGeneratePositions, fGenerateAutoMeasureNum, fLyricsManualSpacing;
77 bool fInCue, fInGrace, fInhibitNextBar, fPendingBar, fBeamOpened, fBeamGrouping, fMeasureEmpty, fWavyTrillOpened, fSingleScopeTrill, fNonStandardNoteHead, fDoubleBar, fTremoloInProgress, fShouldStopOctava;
79 int fCrescPending, fDiminPending;
82 int fCurrentOctavaShift;
84 std::queue<int> fTiedOpen;
86 std::vector< std::pair<int, int> > fSlurStack;
90 bool isProcessingChord;
97 int fCurrentStaffIndex;
102 int fStartMeasure, fEndMeasure, fEndMeasureOffset;
104 long fCurrentDivision;
113 int fCurrentStemDirection;
118 if (!checkMeasureRange())
return;
120 fStack.top()->add(
elt);
125 if (!checkMeasureRange())
return;
126 add(
elt); fStack.push(
elt);
129 if (!checkMeasureRange())
return;
133 void moveMeasureTime (
long duration,
bool moveVoiceToo=
false);
144 void checkStaff (
int staff );
146 void checkBeamBegin (
const std::vector<S_beam>&
beams,
const S_note&
elt );
147 void checkBeamEnd (
const std::vector<S_beam>&
beams );
148 void checkTupletBegin(
const std::vector<S_tuplet>&
tuplets,
151 void checkTupletEnd (
const std::vector<S_tuplet>&
tuplets );
156 void checkSlur (
const std::vector<S_slur>&
slurs );
157 void checkSlurBegin (
const std::vector<S_slur>&
slurs );
158 void checkSlurEnd (
const std::vector<S_slur>&
slurs );
160 void checkTiedBegin (
const std::vector<S_tied>&
tied );
161 void checkTiedEnd (
const std::vector<S_tied>&
tied );
176 std::vector<S_beam>::const_iterator findValue (
const std::vector<S_beam>&
beams,
const std::string&
val )
const;
177 std::vector<S_slur>::const_iterator findTypeValue (
const std::vector<S_slur>&
slurs,
const std::string&
val )
const;
178 std::vector<S_tied>::const_iterator findTypeValue (
const std::vector<S_tied>&
tied,
const std::string&
val )
const;
179 std::vector< std::pair<int, int> >::const_iterator findSlur (
const int xmlnum )
const;
182 void checkLyricBegin (
const std::vector<S_lyric>&
lyrics );
183 void checkLyricEnd (
const std::vector<S_lyric>&
lyrics );
184 std::vector<S_lyric>::const_iterator findValue (
const std::vector<S_lyric>&
lyrics,
185 const std::string&
val )
const;
186 std::string lyricParams;
189 static std::string alter2accident (
float alter );
192 enum { kStemUndefined, kStemUp, kStemDown, kStemNone };
193 enum { kLeaveChord=-1, kNoChord, kEnterChord } chordState;
209 virtual void visitEnd (
S_key&
elt);
231 std::map<int, float> fStaffDistance;
238 void initialize (Sguidoelement seq,
int staff,
int guidostaff,
int voice,
bool notesonly,
rational defaultTimeSign);
239 void generatePositions (
bool state) { fGeneratePositions = state; }
240 const rational& getTimeSign ()
const {
return fCurrentTimeSign; }
241 bool hasLyrics()
const {
return fHasLyrics;}
244 std::multimap<int, std::pair< int, std::pair< rational, string > > >
staffClefMap;
248 rational fStartPosition, fEndPosition;
250 int lastMeasureNumber() {
return fMeasNum; }
252 std::map<double, int> measurePositionMap;
254 double totalPartDuration() {
return fCurrentScorePosition.toDouble(); }
261 std::map<std::string, std::map<rational, int>>
octavas;
281 bool checkMeasureRange();
286 void checkOctavaBegin();
287 void checkOctavaEnd();
291 double fPreviousPedalYPos;
294 std::queue<int> fDirectionEraserStack;
std::multimap< int, std::pair< int, std::pair< rational, string > > > staffClefMap
Map for staffNum, measureNum, voice-Position and Clef.
Definition xmlpart2guido.h:244
std::map< std::string, std::map< rational, int > > octavas
Map containing octavas on a staff: measureNumberString, PositionInMeasure, Type (0 for stop)
Definition xmlpart2guido.h:261