8 #ifndef __VRV_ALIGNFUNCTOR_H__
9 #define __VRV_ALIGNFUNCTOR_H__
23 const Mensur *mensur = NULL;
26 data_DURATION equivalence = DURATION_brevis;
59 FunctorCode VisitLayer(
Layer *layer)
override;
60 FunctorCode VisitLayerEnd(
Layer *layer)
override;
61 FunctorCode VisitLayerElement(
LayerElement *layerElement)
override;
62 FunctorCode VisitMeasure(
Measure *measure)
override;
63 FunctorCode VisitMeasureEnd(
Measure *measure)
override;
64 FunctorCode VisitMeterSigGrp(
MeterSigGrp *meterSigGrp)
override;
65 FunctorCode VisitSection(
Section *section)
override;
66 FunctorCode VisitStaff(
Staff *staff)
override;
67 FunctorCode VisitSystem(
System *system)
override;
84 data_NOTATIONTYPE m_notationType;
86 ElementScoreDefRole m_scoreDefRole;
88 bool m_isFirstMeasure;
90 bool m_hasMultipleLayer;
92 bool m_sectionRestart;
121 void StoreCastOffSystemWidths(
bool storeWidths) { m_storeCastOffSystemWidths = storeWidths; }
127 FunctorCode VisitDiv(Div *div)
override;
128 FunctorCode VisitMeasure(Measure *measure)
override;
129 FunctorCode VisitScoreDef(ScoreDef *scoreDef)
override;
130 FunctorCode VisitSection(Section *section)
override;
131 FunctorCode VisitSystem(System *system)
override;
132 FunctorCode VisitSystemEnd(System *system)
override;
145 int m_justifiableWidth;
147 bool m_applySectionRestartShift;
149 bool m_storeCastOffSystemWidths;
179 FunctorCode VisitDiv(
Div *div)
override;
180 FunctorCode VisitFig(
Fig *fig)
override;
181 FunctorCode VisitMeasure(
Measure *measure)
override;
182 FunctorCode VisitPageEnd(
Page *page)
override;
183 FunctorCode VisitRend(
Rend *rend)
override;
184 FunctorCode VisitRunningElement(
RunningElement *runningElement)
override;
185 FunctorCode VisitStaff(
Staff *staff)
override;
186 FunctorCode VisitStaffAlignmentEnd(
StaffAlignment *staffAlignment)
override;
187 FunctorCode VisitSyllable(
Syllable *syllable)
override;
188 FunctorCode VisitSystem(
System *system)
override;
189 FunctorCode VisitSystemEnd(
System *system)
override;
190 FunctorCode VisitVerse(
Verse *verse)
override;
207 int m_cumulatedShift;
209 int m_justificationSum;
240 void SetShift(
int shift) { m_shift = shift; }
241 void SetSystemSpacing(
int spacing) { m_systemSpacing = spacing; }
248 FunctorCode VisitPage(Page *page)
override;
249 FunctorCode VisitPageEnd(Page *page)
override;
250 FunctorCode VisitSystem(System *system)
override;
265 int m_prevBottomOverflow;
266 int m_prevBottomClefOverflow;
268 double m_justificationSum;
This class aligns horizontally the content of a page.
Definition: alignfunctor.h:40
bool ImplementsEndInterface() const override
Return true if the functor implements the end interface.
Definition: alignfunctor.h:53
This class aligns the measures by adjusting the m_drawingXRel position looking at the MeasureAligner.
Definition: alignfunctor.h:103
bool ImplementsEndInterface() const override
Return true if the functor implements the end interface.
Definition: alignfunctor.h:116
This class aligns the system by adjusting the m_drawingYRel position looking at the SystemAligner.
Definition: alignfunctor.h:221
bool ImplementsEndInterface() const override
Return true if the functor implements the end interface.
Definition: alignfunctor.h:234
This class vertically aligns the content of a page.
Definition: alignfunctor.h:160
bool ImplementsEndInterface() const override
Return true if the functor implements the end interface.
Definition: alignfunctor.h:173
This class represents an MEI Div.
Definition: div.h:24
This abstract class is the base class for all mutable functors that need access to the document.
Definition: functor.h:151
This class is a hold the data and corresponds to the model of a MVC design pattern.
Definition: doc.h:41
This class models the MEI <fig> element.
Definition: fig.h:23
Definition: fraction.h:19
This class is a base class for the Layer (<layer>) content.
Definition: layerelement.h:51
This class represents a layer in a laid-out score (Doc).
Definition: layer.h:39
This class aligns the content of a measure It contains a vector of Alignment.
Definition: horizontalaligner.h:425
This class represents a measure in a page-based score (Doc).
Definition: measure.h:46
This class models the MEI <mensur> element.
Definition: mensur.h:34
This class represents a MEI meterSigGrp.
Definition: metersiggrp.h:32
This class models the MEI <meterSig> element.
Definition: metersig.h:34
This class represents a page in a laid-out score (Doc).
Definition: page.h:31
This class models the MEI <proport> element.
Definition: proport.h:23
This class models the MEI <rend> element.
Definition: rend.h:33
This class represents running elements (headers and footers).
Definition: runningelement.h:28
This class represents a MEI section.
Definition: section.h:28
This class stores an alignement position staves will point to.
Definition: verticalaligner.h:172
This class represents a staff in a laid-out score (Doc).
Definition: staff.h:107
This class models the MEI <mensur> element.
Definition: syllable.h:25
This class aligns the content of a system It contains a vector of StaffAlignment.
Definition: verticalaligner.h:31
This class represents a system in a laid-out score (Doc).
Definition: system.h:36
Regroup pointers to meterSig, mensur and proport objects.
Definition: alignfunctor.h:21