Verovio
Source code documentation
functorinterface.h
1 // Name: functorinterface.h
3 // Author: David Bauer
4 // Created: 2022
5 // Copyright (c) Authors and others. All rights reserved.
7 
8 #ifndef __VRV_FUNCTOR_INTERFACE_H__
9 #define __VRV_FUNCTOR_INTERFACE_H__
10 
11 #include "vrvdef.h"
12 
13 namespace vrv {
14 
15 class Accid;
16 class Alignment;
17 class AlignmentReference;
18 class AnchoredText;
19 class Arpeg;
20 class Artic;
21 class BarLine;
22 class Beam;
23 class BeamSpan;
24 class BeatRpt;
25 class BracketSpan;
26 class Breath;
27 class BTrem;
28 class Caesura;
29 class Chord;
30 class Clef;
31 class ControlElement;
32 class Course;
33 class CpMark;
34 class Custos;
35 class Dir;
36 class Div;
37 class Dot;
38 class Dots;
39 class Doc;
40 class Dynam;
41 class EditorialElement;
42 class Ending;
43 class Expansion;
44 class F;
45 class Facsimile;
46 class Fb;
47 class Fermata;
48 class Fing;
49 class Fig;
50 class Flag;
51 class FloatingObject;
52 class FTrem;
53 class GenericLayerElement;
54 class Gliss;
55 class GraceAligner;
56 class GraceGrp;
57 class Graphic;
58 class GrpSym;
59 class Hairpin;
60 class HalfmRpt;
61 class Harm;
62 class HorizontalAligner;
63 class InstrDef;
64 class KeyAccid;
65 class KeySig;
66 class Label;
67 class LabelAbbr;
68 class Layer;
69 class LayerDef;
70 class LayerElement;
71 class Lb;
72 class Ligature;
73 class Lv;
74 class Mdiv;
75 class Measure;
76 class MeasureAligner;
77 class Mensur;
78 class MeterSig;
79 class MeterSigGrp;
80 class Mordent;
81 class MNum;
82 class MRest;
83 class MRpt;
84 class MRpt2;
85 class MSpace;
86 class MultiRest;
87 class MultiRpt;
88 class Nc;
89 class Neume;
90 class Note;
91 class Num;
92 class Object;
93 class Octave;
94 class Ornam;
95 class Page;
96 class PageElement;
97 class PageMilestoneEnd;
98 class Pages;
99 class Pb;
100 class Pedal;
101 class PgFoot;
102 class PgHead;
103 class Phrase;
104 class PitchInflection;
105 class Plica;
106 class Proport;
107 class RepeatMark;
108 class Reh;
109 class Rend;
110 class Rest;
111 class RunningElement;
112 class Sb;
113 class Score;
114 class ScoreDef;
115 class ScoreDefElement;
116 class Section;
117 class Slur;
118 class Space;
119 class Staff;
120 class StaffAlignment;
121 class StaffDef;
122 class StaffGrp;
123 class Stem;
124 class Surface;
125 class Svg;
126 class Syl;
127 class Syllable;
128 class Symbol;
129 class System;
130 class SystemAligner;
131 class SystemElement;
132 class SystemMilestoneEnd;
133 class TabDurSym;
134 class TabGrp;
135 class Tempo;
136 class Text;
137 class TextElement;
138 class TextLayoutElement;
139 class Tie;
140 class TimestampAligner;
141 class TimestampAttr;
142 class Trill;
143 class Tuning;
144 class Tuplet;
145 class TupletBracket;
146 class TupletNum;
147 class Turn;
148 class Verse;
149 class Zone;
150 
151 //----------------------------------------------------------------------------
152 // FunctorInterface
153 //----------------------------------------------------------------------------
154 
160 public:
164  FunctorInterface() {}
166  virtual ~FunctorInterface() = default;
168 
172  virtual FunctorCode VisitObject(Object *object) { return FUNCTOR_CONTINUE; }
174  virtual FunctorCode VisitObjectEnd(Object *object) { return FUNCTOR_CONTINUE; }
175  virtual FunctorCode VisitDoc(Doc *doc);
176  virtual FunctorCode VisitDocEnd(Doc *doc);
178 
182  virtual FunctorCode VisitCourse(Course *course);
184  virtual FunctorCode VisitCourseEnd(Course *course);
185  virtual FunctorCode VisitGrpSym(GrpSym *grpSym);
186  virtual FunctorCode VisitGrpSymEnd(GrpSym *grpSym);
187  virtual FunctorCode VisitInstrDef(InstrDef *instrDef);
188  virtual FunctorCode VisitInstrDefEnd(InstrDef *instrDef);
189  virtual FunctorCode VisitLabel(Label *label);
190  virtual FunctorCode VisitLabelEnd(Label *label);
191  virtual FunctorCode VisitLabelAbbr(LabelAbbr *labelAbbr);
192  virtual FunctorCode VisitLabelAbbrEnd(LabelAbbr *labelAbbr);
193  virtual FunctorCode VisitLayer(Layer *layer);
194  virtual FunctorCode VisitLayerEnd(Layer *layer);
195  virtual FunctorCode VisitLayerDef(LayerDef *layerDef);
196  virtual FunctorCode VisitLayerDefEnd(LayerDef *layerDef);
197  virtual FunctorCode VisitMeasure(Measure *measure);
198  virtual FunctorCode VisitMeasureEnd(Measure *measure);
199  virtual FunctorCode VisitPage(Page *page);
200  virtual FunctorCode VisitPageEnd(Page *page);
201  virtual FunctorCode VisitPages(Pages *pages);
202  virtual FunctorCode VisitPagesEnd(Pages *pages);
203  virtual FunctorCode VisitPb(Pb *pb);
204  virtual FunctorCode VisitPbEnd(Pb *pb);
205  virtual FunctorCode VisitSb(Sb *sb);
206  virtual FunctorCode VisitSbEnd(Sb *sb);
207  virtual FunctorCode VisitScoreDef(ScoreDef *scoreDef);
208  virtual FunctorCode VisitScoreDefEnd(ScoreDef *scoreDef);
209  virtual FunctorCode VisitScoreDefElement(ScoreDefElement *scoreDefElement);
210  virtual FunctorCode VisitScoreDefElementEnd(ScoreDefElement *scoreDefElement);
211  virtual FunctorCode VisitStaff(Staff *staff);
212  virtual FunctorCode VisitStaffEnd(Staff *staff);
213  virtual FunctorCode VisitStaffDef(StaffDef *staffDef);
214  virtual FunctorCode VisitStaffDefEnd(StaffDef *staffDef);
215  virtual FunctorCode VisitStaffGrp(StaffGrp *staffGrp);
216  virtual FunctorCode VisitStaffGrpEnd(StaffGrp *staffGrp);
217  virtual FunctorCode VisitSystem(System *system);
218  virtual FunctorCode VisitSystemEnd(System *system);
219  virtual FunctorCode VisitTuning(Tuning *tuning);
220  virtual FunctorCode VisitTuningEnd(Tuning *tuning);
222 
227  virtual FunctorCode VisitEditorialElement(EditorialElement *editorialElement);
229  virtual FunctorCode VisitEditorialElementEnd(EditorialElement *editorialElement);
231 
235  virtual FunctorCode VisitDiv(Div *div);
237  virtual FunctorCode VisitDivEnd(Div *div);
238  virtual FunctorCode VisitRunningElement(RunningElement *runningElement);
239  virtual FunctorCode VisitRunningElementEnd(RunningElement *runningElement);
240  virtual FunctorCode VisitPgFoot(PgFoot *pgFoot);
241  virtual FunctorCode VisitPgFootEnd(PgFoot *pgFoot);
242  virtual FunctorCode VisitPgHead(PgHead *pgHead);
243  virtual FunctorCode VisitPgHeadEnd(PgHead *pgHead);
244  virtual FunctorCode VisitTextLayoutElement(TextLayoutElement *textLayoutElement);
245  virtual FunctorCode VisitTextLayoutElementEnd(TextLayoutElement *textLayoutElement);
247 
251  virtual FunctorCode VisitEnding(Ending *ending);
253  virtual FunctorCode VisitEndingEnd(Ending *ending);
254  virtual FunctorCode VisitExpansion(Expansion *expansion);
255  virtual FunctorCode VisitExpansionEnd(Expansion *expansion);
256  virtual FunctorCode VisitSection(Section *section);
257  virtual FunctorCode VisitSectionEnd(Section *section);
258  virtual FunctorCode VisitSystemElement(SystemElement *systemElement);
259  virtual FunctorCode VisitSystemElementEnd(SystemElement *systemElement);
260  virtual FunctorCode VisitSystemMilestone(SystemMilestoneEnd *systemMilestoneEnd);
261  virtual FunctorCode VisitSystemMilestoneEnd(SystemMilestoneEnd *systemMilestoneEnd);
263 
267  virtual FunctorCode VisitMdiv(Mdiv *mdiv);
269  virtual FunctorCode VisitMdivEnd(Mdiv *mdiv);
270  virtual FunctorCode VisitPageElement(PageElement *pageElement);
271  virtual FunctorCode VisitPageElementEnd(PageElement *pageElement);
272  virtual FunctorCode VisitPageMilestone(PageMilestoneEnd *pageMilestoneEnd);
273  virtual FunctorCode VisitPageMilestoneEnd(PageMilestoneEnd *pageMilestoneEnd);
274  virtual FunctorCode VisitScore(Score *score);
275  virtual FunctorCode VisitScoreEnd(Score *score);
277 
281  virtual FunctorCode VisitAnchoredText(AnchoredText *anchoredText);
283  virtual FunctorCode VisitAnchoredTextEnd(AnchoredText *anchoredText);
284  virtual FunctorCode VisitArpeg(Arpeg *arpeg);
285  virtual FunctorCode VisitArpegEnd(Arpeg *arpeg);
286  virtual FunctorCode VisitBeamSpan(BeamSpan *beamSpan);
287  virtual FunctorCode VisitBeamSpanEnd(BeamSpan *beamSpan);
288  virtual FunctorCode VisitBracketSpan(BracketSpan *bracketSpan);
289  virtual FunctorCode VisitBracketSpanEnd(BracketSpan *bracketSpan);
290  virtual FunctorCode VisitBreath(Breath *breath);
291  virtual FunctorCode VisitBreathEnd(Breath *breath);
292  virtual FunctorCode VisitCaesura(Caesura *caesura);
293  virtual FunctorCode VisitCaesuraEnd(Caesura *caesura);
294  virtual FunctorCode VisitControlElement(ControlElement *controlElement);
295  virtual FunctorCode VisitControlElementEnd(ControlElement *controlElement);
296  virtual FunctorCode VisitCpMark(CpMark *cpMark);
297  virtual FunctorCode VisitCpMarkEnd(CpMark *cpMark);
298  virtual FunctorCode VisitDir(Dir *dir);
299  virtual FunctorCode VisitDirEnd(Dir *dir);
300  virtual FunctorCode VisitDynam(Dynam *dynam);
301  virtual FunctorCode VisitDynamEnd(Dynam *dynam);
302  virtual FunctorCode VisitFermata(Fermata *fermata);
303  virtual FunctorCode VisitFermataEnd(Fermata *fermata);
304  virtual FunctorCode VisitFing(Fing *fing);
305  virtual FunctorCode VisitFingEnd(Fing *fing);
306  virtual FunctorCode VisitGliss(Gliss *gliss);
307  virtual FunctorCode VisitGlissEnd(Gliss *gliss);
308  virtual FunctorCode VisitHairpin(Hairpin *hairpin);
309  virtual FunctorCode VisitHairpinEnd(Hairpin *hairpin);
310  virtual FunctorCode VisitHarm(Harm *harm);
311  virtual FunctorCode VisitHarmEnd(Harm *harm);
312  virtual FunctorCode VisitLv(Lv *lv);
313  virtual FunctorCode VisitLvEnd(Lv *lv);
314  virtual FunctorCode VisitMordent(Mordent *mordent);
315  virtual FunctorCode VisitMordentEnd(Mordent *mordent);
316  virtual FunctorCode VisitOctave(Octave *octave);
317  virtual FunctorCode VisitOctaveEnd(Octave *octave);
318  virtual FunctorCode VisitOrnam(Ornam *ornam);
319  virtual FunctorCode VisitOrnamEnd(Ornam *ornam);
320  virtual FunctorCode VisitPedal(Pedal *pedal);
321  virtual FunctorCode VisitPedalEnd(Pedal *pedal);
322  virtual FunctorCode VisitPhrase(Phrase *phrase);
323  virtual FunctorCode VisitPhraseEnd(Phrase *phrase);
324  virtual FunctorCode VisitPitchInflection(PitchInflection *pitchInflection);
325  virtual FunctorCode VisitPitchInflectionEnd(PitchInflection *pitchInflection);
326  virtual FunctorCode VisitReh(Reh *reh);
327  virtual FunctorCode VisitRehEnd(Reh *reh);
328  virtual FunctorCode VisitRepeatMark(RepeatMark *repeatMark);
329  virtual FunctorCode VisitRepeatMarkEnd(RepeatMark *repeatMark);
330  virtual FunctorCode VisitSlur(Slur *slur);
331  virtual FunctorCode VisitSlurEnd(Slur *slur);
332  virtual FunctorCode VisitTempo(Tempo *tempo);
333  virtual FunctorCode VisitTempoEnd(Tempo *tempo);
334  virtual FunctorCode VisitTie(Tie *tie);
335  virtual FunctorCode VisitTieEnd(Tie *tie);
336  virtual FunctorCode VisitTrill(Trill *trill);
337  virtual FunctorCode VisitTrillEnd(Trill *trill);
338  virtual FunctorCode VisitTurn(Turn *turn);
339  virtual FunctorCode VisitTurnEnd(Turn *turn);
341 
345  virtual FunctorCode VisitAccid(Accid *accid);
347  virtual FunctorCode VisitAccidEnd(Accid *accid);
348  virtual FunctorCode VisitArtic(Artic *artic);
349  virtual FunctorCode VisitArticEnd(Artic *artic);
350  virtual FunctorCode VisitBarLine(BarLine *barLine);
351  virtual FunctorCode VisitBarLineEnd(BarLine *barLine);
352  virtual FunctorCode VisitBeam(Beam *beam);
353  virtual FunctorCode VisitBeamEnd(Beam *beam);
354  virtual FunctorCode VisitBeatRpt(BeatRpt *beatRpt);
355  virtual FunctorCode VisitBeatRptEnd(BeatRpt *beatRpt);
356  virtual FunctorCode VisitBTrem(BTrem *bTrem);
357  virtual FunctorCode VisitBTremEnd(BTrem *bTrem);
358  virtual FunctorCode VisitChord(Chord *chord);
359  virtual FunctorCode VisitChordEnd(Chord *chord);
360  virtual FunctorCode VisitClef(Clef *clef);
361  virtual FunctorCode VisitClefEnd(Clef *clef);
362  virtual FunctorCode VisitCustos(Custos *custos);
363  virtual FunctorCode VisitCustosEnd(Custos *custos);
364  virtual FunctorCode VisitDot(Dot *dot);
365  virtual FunctorCode VisitDotEnd(Dot *dot);
366  virtual FunctorCode VisitDots(Dots *dots);
367  virtual FunctorCode VisitDotsEnd(Dots *dots);
368  virtual FunctorCode VisitFlag(Flag *flag);
369  virtual FunctorCode VisitFlagEnd(Flag *flag);
370  virtual FunctorCode VisitFTrem(FTrem *fTrem);
371  virtual FunctorCode VisitFTremEnd(FTrem *fTrem);
372  virtual FunctorCode VisitGenericLayerElement(GenericLayerElement *genericLayerElement);
373  virtual FunctorCode VisitGenericLayerElementEnd(GenericLayerElement *genericLayerElement);
374  virtual FunctorCode VisitGraceGrp(GraceGrp *graceGrp);
375  virtual FunctorCode VisitGraceGrpEnd(GraceGrp *graceGrp);
376  virtual FunctorCode VisitHalfmRpt(HalfmRpt *halfmRpt);
377  virtual FunctorCode VisitHalfmRptEnd(HalfmRpt *halfmRpt);
378  virtual FunctorCode VisitKeyAccid(KeyAccid *keyAccid);
379  virtual FunctorCode VisitKeyAccidEnd(KeyAccid *keyAccid);
380  virtual FunctorCode VisitKeySig(KeySig *keySig);
381  virtual FunctorCode VisitKeySigEnd(KeySig *keySig);
382  virtual FunctorCode VisitLayerElement(LayerElement *layerElement);
383  virtual FunctorCode VisitLayerElementEnd(LayerElement *layerElement);
384  virtual FunctorCode VisitLigature(Ligature *ligature);
385  virtual FunctorCode VisitLigatureEnd(Ligature *ligature);
386  virtual FunctorCode VisitMensur(Mensur *mensur);
387  virtual FunctorCode VisitMensurEnd(Mensur *mensur);
388  virtual FunctorCode VisitMeterSig(MeterSig *meterSig);
389  virtual FunctorCode VisitMeterSigEnd(MeterSig *meterSig);
390  virtual FunctorCode VisitMeterSigGrp(MeterSigGrp *meterSigGrp);
391  virtual FunctorCode VisitMeterSigGrpEnd(MeterSigGrp *meterSigGrp);
392  virtual FunctorCode VisitMRest(MRest *mRest);
393  virtual FunctorCode VisitMRestEnd(MRest *mRest);
394  virtual FunctorCode VisitMRpt(MRpt *mRpt);
395  virtual FunctorCode VisitMRptEnd(MRpt *mRpt);
396  virtual FunctorCode VisitMRpt2(MRpt2 *mRpt2);
397  virtual FunctorCode VisitMRpt2End(MRpt2 *mRpt2);
398  virtual FunctorCode VisitMSpace(MSpace *mSpace);
399  virtual FunctorCode VisitMSpaceEnd(MSpace *mSpace);
400  virtual FunctorCode VisitMultiRest(MultiRest *multiRest);
401  virtual FunctorCode VisitMultiRestEnd(MultiRest *multiRest);
402  virtual FunctorCode VisitMultiRpt(MultiRpt *multiRpt);
403  virtual FunctorCode VisitMultiRptEnd(MultiRpt *multiRpt);
404  virtual FunctorCode VisitNc(Nc *nc);
405  virtual FunctorCode VisitNcEnd(Nc *nc);
406  virtual FunctorCode VisitNeume(Neume *neume);
407  virtual FunctorCode VisitNeumeEnd(Neume *neume);
408  virtual FunctorCode VisitNote(Note *note);
409  virtual FunctorCode VisitNoteEnd(Note *note);
410  virtual FunctorCode VisitPlica(Plica *plica);
411  virtual FunctorCode VisitPlicaEnd(Plica *plica);
412  virtual FunctorCode VisitProport(Proport *proport);
413  virtual FunctorCode VisitProportEnd(Proport *proport);
414  virtual FunctorCode VisitRest(Rest *rest);
415  virtual FunctorCode VisitRestEnd(Rest *rest);
416  virtual FunctorCode VisitSpace(Space *space);
417  virtual FunctorCode VisitSpaceEnd(Space *space);
418  virtual FunctorCode VisitStem(Stem *stem);
419  virtual FunctorCode VisitStemEnd(Stem *stem);
420  virtual FunctorCode VisitSyl(Syl *syl);
421  virtual FunctorCode VisitSylEnd(Syl *syl);
422  virtual FunctorCode VisitSyllable(Syllable *syllable);
423  virtual FunctorCode VisitSyllableEnd(Syllable *syllable);
424  virtual FunctorCode VisitTabDurSym(TabDurSym *tabDurSym);
425  virtual FunctorCode VisitTabDurSymEnd(TabDurSym *tabDurSym);
426  virtual FunctorCode VisitTabGrp(TabGrp *tabGrp);
427  virtual FunctorCode VisitTabGrpEnd(TabGrp *tabGrp);
428  virtual FunctorCode VisitTimestamp(TimestampAttr *timestamp);
429  virtual FunctorCode VisitTimestampEnd(TimestampAttr *timestamp);
430  virtual FunctorCode VisitTuplet(Tuplet *tuplet);
431  virtual FunctorCode VisitTupletEnd(Tuplet *tuplet);
432  virtual FunctorCode VisitTupletBracket(TupletBracket *tupletBracket);
433  virtual FunctorCode VisitTupletBracketEnd(TupletBracket *tupletBracket);
434  virtual FunctorCode VisitTupletNum(TupletNum *tupletNum);
435  virtual FunctorCode VisitTupletNumEnd(TupletNum *tupletNum);
436  virtual FunctorCode VisitVerse(Verse *verse);
437  virtual FunctorCode VisitVerseEnd(Verse *verse);
439 
443  virtual FunctorCode VisitF(F *f);
445  virtual FunctorCode VisitFEnd(F *f);
446  virtual FunctorCode VisitFb(Fb *fb);
447  virtual FunctorCode VisitFbEnd(Fb *fb);
448  virtual FunctorCode VisitFig(Fig *fig);
449  virtual FunctorCode VisitFigEnd(Fig *fig);
450  virtual FunctorCode VisitLb(Lb *lb);
451  virtual FunctorCode VisitLbEnd(Lb *lb);
452  virtual FunctorCode VisitMNum(MNum *mNum);
453  virtual FunctorCode VisitMNumEnd(MNum *mNum);
454  virtual FunctorCode VisitNum(Num *num);
455  virtual FunctorCode VisitNumEnd(Num *num);
456  virtual FunctorCode VisitRend(Rend *rend);
457  virtual FunctorCode VisitRendEnd(Rend *rend);
458  virtual FunctorCode VisitSvg(Svg *svg);
459  virtual FunctorCode VisitSvgEnd(Svg *svg);
460  virtual FunctorCode VisitSymbol(Symbol *symbol);
461  virtual FunctorCode VisitSymbolEnd(Symbol *symbol);
462  virtual FunctorCode VisitText(Text *text);
463  virtual FunctorCode VisitTextEnd(Text *text);
464  virtual FunctorCode VisitTextElement(TextElement *textElement);
465  virtual FunctorCode VisitTextElementEnd(TextElement *textElement);
467 
471  virtual FunctorCode VisitFacsimile(Facsimile *facsimile);
473  virtual FunctorCode VisitFacsimileEnd(Facsimile *facsimile);
474  virtual FunctorCode VisitGraphic(Graphic *graphic);
475  virtual FunctorCode VisitGraphicEnd(Graphic *graphic);
476  virtual FunctorCode VisitSurface(Surface *surface);
477  virtual FunctorCode VisitSurfaceEnd(Surface *surface);
478  virtual FunctorCode VisitZone(Zone *zone);
479  virtual FunctorCode VisitZoneEnd(Zone *zone);
481 
485  virtual FunctorCode VisitAlignment(Alignment *alignment);
487  virtual FunctorCode VisitAlignmentEnd(Alignment *alignment);
488  virtual FunctorCode VisitAlignmentReference(AlignmentReference *alignmentReference);
489  virtual FunctorCode VisitAlignmentReferenceEnd(AlignmentReference *alignmentReference);
490  virtual FunctorCode VisitHorizontalAligner(HorizontalAligner *horizontalAligner);
491  virtual FunctorCode VisitHorizontalAlignerEnd(HorizontalAligner *horizontalAligner);
492  virtual FunctorCode VisitMeasureAligner(MeasureAligner *measureAligner);
493  virtual FunctorCode VisitMeasureAlignerEnd(MeasureAligner *measureAligner);
494  virtual FunctorCode VisitGraceAligner(GraceAligner *graceAligner);
495  virtual FunctorCode VisitGraceAlignerEnd(GraceAligner *graceAligner);
496  virtual FunctorCode VisitTimestampAligner(TimestampAligner *timestampAligner);
497  virtual FunctorCode VisitTimestampAlignerEnd(TimestampAligner *timestampAligner);
499 
503  virtual FunctorCode VisitSystemAligner(SystemAligner *systemAligner);
505  virtual FunctorCode VisitSystemAlignerEnd(SystemAligner *systemAligner);
506  virtual FunctorCode VisitStaffAlignment(StaffAlignment *staffAlignment);
507  virtual FunctorCode VisitStaffAlignmentEnd(StaffAlignment *staffAlignment);
509 
513  virtual FunctorCode VisitFloatingObject(FloatingObject *floatingObject);
515  virtual FunctorCode VisitFloatingObjectEnd(FloatingObject *floatingObject);
517 
518 private:
519  //
520 public:
521  //
522 private:
523  //
524 };
525 
526 //----------------------------------------------------------------------------
527 // ConstFunctorInterface
528 //----------------------------------------------------------------------------
529 
535 public:
541  virtual ~ConstFunctorInterface() = default;
543 
547  virtual FunctorCode VisitObject(const Object *object) { return FUNCTOR_CONTINUE; }
549  virtual FunctorCode VisitObjectEnd(const Object *object) { return FUNCTOR_CONTINUE; }
550  virtual FunctorCode VisitDoc(const Doc *doc);
551  virtual FunctorCode VisitDocEnd(const Doc *doc);
553 
557  virtual FunctorCode VisitCourse(const Course *course);
559  virtual FunctorCode VisitCourseEnd(const Course *course);
560  virtual FunctorCode VisitGrpSym(const GrpSym *grpSym);
561  virtual FunctorCode VisitGrpSymEnd(const GrpSym *grpSym);
562  virtual FunctorCode VisitInstrDef(const InstrDef *instrDef);
563  virtual FunctorCode VisitInstrDefEnd(const InstrDef *instrDef);
564  virtual FunctorCode VisitLabel(const Label *label);
565  virtual FunctorCode VisitLabelEnd(const Label *label);
566  virtual FunctorCode VisitLabelAbbr(const LabelAbbr *labelAbbr);
567  virtual FunctorCode VisitLabelAbbrEnd(const LabelAbbr *labelAbbr);
568  virtual FunctorCode VisitLayer(const Layer *layer);
569  virtual FunctorCode VisitLayerEnd(const Layer *layer);
570  virtual FunctorCode VisitLayerDef(const LayerDef *layerDef);
571  virtual FunctorCode VisitLayerDefEnd(const LayerDef *layerDef);
572  virtual FunctorCode VisitMeasure(const Measure *measure);
573  virtual FunctorCode VisitMeasureEnd(const Measure *measure);
574  virtual FunctorCode VisitPage(const Page *page);
575  virtual FunctorCode VisitPageEnd(const Page *page);
576  virtual FunctorCode VisitPages(const Pages *pages);
577  virtual FunctorCode VisitPagesEnd(const Pages *pages);
578  virtual FunctorCode VisitPb(const Pb *pb);
579  virtual FunctorCode VisitPbEnd(const Pb *pb);
580  virtual FunctorCode VisitSb(const Sb *sb);
581  virtual FunctorCode VisitSbEnd(const Sb *sb);
582  virtual FunctorCode VisitScoreDef(const ScoreDef *scoreDef);
583  virtual FunctorCode VisitScoreDefEnd(const ScoreDef *scoreDef);
584  virtual FunctorCode VisitScoreDefElement(const ScoreDefElement *scoreDefElement);
585  virtual FunctorCode VisitScoreDefElementEnd(const ScoreDefElement *scoreDefElement);
586  virtual FunctorCode VisitStaff(const Staff *staff);
587  virtual FunctorCode VisitStaffEnd(const Staff *staff);
588  virtual FunctorCode VisitStaffDef(const StaffDef *staffDef);
589  virtual FunctorCode VisitStaffDefEnd(const StaffDef *staffDef);
590  virtual FunctorCode VisitStaffGrp(const StaffGrp *staffGrp);
591  virtual FunctorCode VisitStaffGrpEnd(const StaffGrp *staffGrp);
592  virtual FunctorCode VisitSystem(const System *system);
593  virtual FunctorCode VisitSystemEnd(const System *system);
594  virtual FunctorCode VisitTuning(const Tuning *tuning);
595  virtual FunctorCode VisitTuningEnd(const Tuning *tuning);
597 
602  virtual FunctorCode VisitEditorialElement(const EditorialElement *editorialElement);
604  virtual FunctorCode VisitEditorialElementEnd(const EditorialElement *editorialElement);
606 
610  virtual FunctorCode VisitDiv(const Div *div);
612  virtual FunctorCode VisitDivEnd(const Div *div);
613  virtual FunctorCode VisitRunningElement(const RunningElement *runningElement);
614  virtual FunctorCode VisitRunningElementEnd(const RunningElement *runningElement);
615  virtual FunctorCode VisitPgFoot(const PgFoot *pgFoot);
616  virtual FunctorCode VisitPgFootEnd(const PgFoot *pgFoot);
617  virtual FunctorCode VisitPgHead(const PgHead *pgHead);
618  virtual FunctorCode VisitPgHeadEnd(const PgHead *pgHead);
619  virtual FunctorCode VisitTextLayoutElement(const TextLayoutElement *textLayoutElement);
620  virtual FunctorCode VisitTextLayoutElementEnd(const TextLayoutElement *textLayoutElement);
622 
626  virtual FunctorCode VisitEnding(const Ending *ending);
628  virtual FunctorCode VisitEndingEnd(const Ending *ending);
629  virtual FunctorCode VisitExpansion(const Expansion *expansion);
630  virtual FunctorCode VisitExpansionEnd(const Expansion *expansion);
631  virtual FunctorCode VisitSection(const Section *section);
632  virtual FunctorCode VisitSectionEnd(const Section *section);
633  virtual FunctorCode VisitSystemElement(const SystemElement *systemElement);
634  virtual FunctorCode VisitSystemElementEnd(const SystemElement *systemElement);
635  virtual FunctorCode VisitSystemMilestone(const SystemMilestoneEnd *systemMilestoneEnd);
636  virtual FunctorCode VisitSystemMilestoneEnd(const SystemMilestoneEnd *systemMilestoneEnd);
638 
642  virtual FunctorCode VisitMdiv(const Mdiv *mdiv);
644  virtual FunctorCode VisitMdivEnd(const Mdiv *mdiv);
645  virtual FunctorCode VisitPageElement(const PageElement *pageElement);
646  virtual FunctorCode VisitPageElementEnd(const PageElement *pageElement);
647  virtual FunctorCode VisitPageMilestone(const PageMilestoneEnd *pageMilestoneEnd);
648  virtual FunctorCode VisitPageMilestoneEnd(const PageMilestoneEnd *pageMilestoneEnd);
649  virtual FunctorCode VisitScore(const Score *score);
650  virtual FunctorCode VisitScoreEnd(const Score *score);
652 
656  virtual FunctorCode VisitAnchoredText(const AnchoredText *anchoredText);
658  virtual FunctorCode VisitAnchoredTextEnd(const AnchoredText *anchoredText);
659  virtual FunctorCode VisitArpeg(const Arpeg *arpeg);
660  virtual FunctorCode VisitArpegEnd(const Arpeg *arpeg);
661  virtual FunctorCode VisitBeamSpan(const BeamSpan *beamSpan);
662  virtual FunctorCode VisitBeamSpanEnd(const BeamSpan *beamSpan);
663  virtual FunctorCode VisitBracketSpan(const BracketSpan *bracketSpan);
664  virtual FunctorCode VisitBracketSpanEnd(const BracketSpan *bracketSpan);
665  virtual FunctorCode VisitBreath(const Breath *breath);
666  virtual FunctorCode VisitBreathEnd(const Breath *breath);
667  virtual FunctorCode VisitCaesura(const Caesura *caesura);
668  virtual FunctorCode VisitCaesuraEnd(const Caesura *caesura);
669  virtual FunctorCode VisitControlElement(const ControlElement *controlElement);
670  virtual FunctorCode VisitControlElementEnd(const ControlElement *controlElement);
671  virtual FunctorCode VisitCpMark(const CpMark *cpMark);
672  virtual FunctorCode VisitCpMarkEnd(const CpMark *cpMark);
673  virtual FunctorCode VisitDir(const Dir *dir);
674  virtual FunctorCode VisitDirEnd(const Dir *dir);
675  virtual FunctorCode VisitDynam(const Dynam *dynam);
676  virtual FunctorCode VisitDynamEnd(const Dynam *dynam);
677  virtual FunctorCode VisitFermata(const Fermata *fermata);
678  virtual FunctorCode VisitFermataEnd(const Fermata *fermata);
679  virtual FunctorCode VisitFing(const Fing *fing);
680  virtual FunctorCode VisitFingEnd(const Fing *fing);
681  virtual FunctorCode VisitGliss(const Gliss *gliss);
682  virtual FunctorCode VisitGlissEnd(const Gliss *gliss);
683  virtual FunctorCode VisitHairpin(const Hairpin *hairpin);
684  virtual FunctorCode VisitHairpinEnd(const Hairpin *hairpin);
685  virtual FunctorCode VisitHarm(const Harm *harm);
686  virtual FunctorCode VisitHarmEnd(const Harm *harm);
687  virtual FunctorCode VisitLv(const Lv *lv);
688  virtual FunctorCode VisitLvEnd(const Lv *lv);
689  virtual FunctorCode VisitMordent(const Mordent *mordent);
690  virtual FunctorCode VisitMordentEnd(const Mordent *mordent);
691  virtual FunctorCode VisitOctave(const Octave *octave);
692  virtual FunctorCode VisitOctaveEnd(const Octave *octave);
693  virtual FunctorCode VisitOrnam(const Ornam *ornam);
694  virtual FunctorCode VisitOrnamEnd(const Ornam *ornam);
695  virtual FunctorCode VisitPedal(const Pedal *pedal);
696  virtual FunctorCode VisitPedalEnd(const Pedal *pedal);
697  virtual FunctorCode VisitPhrase(const Phrase *phrase);
698  virtual FunctorCode VisitPhraseEnd(const Phrase *phrase);
699  virtual FunctorCode VisitPitchInflection(const PitchInflection *pitchInflection);
700  virtual FunctorCode VisitPitchInflectionEnd(const PitchInflection *pitchInflection);
701  virtual FunctorCode VisitReh(const Reh *reh);
702  virtual FunctorCode VisitRehEnd(const Reh *reh);
703  virtual FunctorCode VisitRepeatMark(const RepeatMark *repeatMark);
704  virtual FunctorCode VisitRepeatMarkEnd(const RepeatMark *repeatMark);
705  virtual FunctorCode VisitSlur(const Slur *slur);
706  virtual FunctorCode VisitSlurEnd(const Slur *slur);
707  virtual FunctorCode VisitTempo(const Tempo *tempo);
708  virtual FunctorCode VisitTempoEnd(const Tempo *tempo);
709  virtual FunctorCode VisitTie(const Tie *tie);
710  virtual FunctorCode VisitTieEnd(const Tie *tie);
711  virtual FunctorCode VisitTrill(const Trill *trill);
712  virtual FunctorCode VisitTrillEnd(const Trill *trill);
713  virtual FunctorCode VisitTurn(const Turn *turn);
714  virtual FunctorCode VisitTurnEnd(const Turn *turn);
716 
720  virtual FunctorCode VisitAccid(const Accid *accid);
722  virtual FunctorCode VisitAccidEnd(const Accid *accid);
723  virtual FunctorCode VisitArtic(const Artic *artic);
724  virtual FunctorCode VisitArticEnd(const Artic *artic);
725  virtual FunctorCode VisitBarLine(const BarLine *barLine);
726  virtual FunctorCode VisitBarLineEnd(const BarLine *barLine);
727  virtual FunctorCode VisitBeam(const Beam *beam);
728  virtual FunctorCode VisitBeamEnd(const Beam *beam);
729  virtual FunctorCode VisitBeatRpt(const BeatRpt *beatRpt);
730  virtual FunctorCode VisitBeatRptEnd(const BeatRpt *beatRpt);
731  virtual FunctorCode VisitBTrem(const BTrem *bTrem);
732  virtual FunctorCode VisitBTremEnd(const BTrem *bTrem);
733  virtual FunctorCode VisitChord(const Chord *chord);
734  virtual FunctorCode VisitChordEnd(const Chord *chord);
735  virtual FunctorCode VisitClef(const Clef *clef);
736  virtual FunctorCode VisitClefEnd(const Clef *clef);
737  virtual FunctorCode VisitCustos(const Custos *custos);
738  virtual FunctorCode VisitCustosEnd(const Custos *custos);
739  virtual FunctorCode VisitDot(const Dot *dot);
740  virtual FunctorCode VisitDotEnd(const Dot *dot);
741  virtual FunctorCode VisitDots(const Dots *dots);
742  virtual FunctorCode VisitDotsEnd(const Dots *dots);
743  virtual FunctorCode VisitFlag(const Flag *flag);
744  virtual FunctorCode VisitFlagEnd(const Flag *flag);
745  virtual FunctorCode VisitFTrem(const FTrem *fTrem);
746  virtual FunctorCode VisitFTremEnd(const FTrem *fTrem);
747  virtual FunctorCode VisitGenericLayerElement(const GenericLayerElement *genericLayerElement);
748  virtual FunctorCode VisitGenericLayerElementEnd(const GenericLayerElement *genericLayerElement);
749  virtual FunctorCode VisitGraceGrp(const GraceGrp *graceGrp);
750  virtual FunctorCode VisitGraceGrpEnd(const GraceGrp *graceGrp);
751  virtual FunctorCode VisitHalfmRpt(const HalfmRpt *halfmRpt);
752  virtual FunctorCode VisitHalfmRptEnd(const HalfmRpt *halfmRpt);
753  virtual FunctorCode VisitKeyAccid(const KeyAccid *keyAccid);
754  virtual FunctorCode VisitKeyAccidEnd(const KeyAccid *keyAccid);
755  virtual FunctorCode VisitKeySig(const KeySig *keySig);
756  virtual FunctorCode VisitKeySigEnd(const KeySig *keySig);
757  virtual FunctorCode VisitLayerElement(const LayerElement *layerElement);
758  virtual FunctorCode VisitLayerElementEnd(const LayerElement *layerElement);
759  virtual FunctorCode VisitLigature(const Ligature *ligature);
760  virtual FunctorCode VisitLigatureEnd(const Ligature *ligature);
761  virtual FunctorCode VisitMensur(const Mensur *mensur);
762  virtual FunctorCode VisitMensurEnd(const Mensur *mensur);
763  virtual FunctorCode VisitMeterSig(const MeterSig *meterSig);
764  virtual FunctorCode VisitMeterSigEnd(const MeterSig *meterSig);
765  virtual FunctorCode VisitMeterSigGrp(const MeterSigGrp *meterSigGrp);
766  virtual FunctorCode VisitMeterSigGrpEnd(const MeterSigGrp *meterSigGrp);
767  virtual FunctorCode VisitMRest(const MRest *mRest);
768  virtual FunctorCode VisitMRestEnd(const MRest *mRest);
769  virtual FunctorCode VisitMRpt(const MRpt *mRpt);
770  virtual FunctorCode VisitMRptEnd(const MRpt *mRpt);
771  virtual FunctorCode VisitMRpt2(const MRpt2 *mRpt2);
772  virtual FunctorCode VisitMRpt2End(const MRpt2 *mRpt2);
773  virtual FunctorCode VisitMSpace(const MSpace *mSpace);
774  virtual FunctorCode VisitMSpaceEnd(const MSpace *mSpace);
775  virtual FunctorCode VisitMultiRest(const MultiRest *multiRest);
776  virtual FunctorCode VisitMultiRestEnd(const MultiRest *multiRest);
777  virtual FunctorCode VisitMultiRpt(const MultiRpt *multiRpt);
778  virtual FunctorCode VisitMultiRptEnd(const MultiRpt *multiRpt);
779  virtual FunctorCode VisitNc(const Nc *nc);
780  virtual FunctorCode VisitNcEnd(const Nc *nc);
781  virtual FunctorCode VisitNeume(const Neume *neume);
782  virtual FunctorCode VisitNeumeEnd(const Neume *neume);
783  virtual FunctorCode VisitNote(const Note *note);
784  virtual FunctorCode VisitNoteEnd(const Note *note);
785  virtual FunctorCode VisitPlica(const Plica *plica);
786  virtual FunctorCode VisitPlicaEnd(const Plica *plica);
787  virtual FunctorCode VisitProport(const Proport *proport);
788  virtual FunctorCode VisitProportEnd(const Proport *proport);
789  virtual FunctorCode VisitRest(const Rest *rest);
790  virtual FunctorCode VisitRestEnd(const Rest *rest);
791  virtual FunctorCode VisitSpace(const Space *space);
792  virtual FunctorCode VisitSpaceEnd(const Space *space);
793  virtual FunctorCode VisitStem(const Stem *stem);
794  virtual FunctorCode VisitStemEnd(const Stem *stem);
795  virtual FunctorCode VisitSyl(const Syl *syl);
796  virtual FunctorCode VisitSylEnd(const Syl *syl);
797  virtual FunctorCode VisitSyllable(const Syllable *syllable);
798  virtual FunctorCode VisitSyllableEnd(const Syllable *syllable);
799  virtual FunctorCode VisitTabDurSym(const TabDurSym *tabDurSym);
800  virtual FunctorCode VisitTabDurSymEnd(const TabDurSym *tabDurSym);
801  virtual FunctorCode VisitTabGrp(const TabGrp *tabGrp);
802  virtual FunctorCode VisitTabGrpEnd(const TabGrp *tabGrp);
803  virtual FunctorCode VisitTimestamp(const TimestampAttr *timestamp);
804  virtual FunctorCode VisitTimestampEnd(const TimestampAttr *timestamp);
805  virtual FunctorCode VisitTuplet(const Tuplet *tuplet);
806  virtual FunctorCode VisitTupletEnd(const Tuplet *tuplet);
807  virtual FunctorCode VisitTupletBracket(const TupletBracket *tupletBracket);
808  virtual FunctorCode VisitTupletBracketEnd(const TupletBracket *tupletBracket);
809  virtual FunctorCode VisitTupletNum(const TupletNum *tupletNum);
810  virtual FunctorCode VisitTupletNumEnd(const TupletNum *tupletNum);
811  virtual FunctorCode VisitVerse(const Verse *verse);
812  virtual FunctorCode VisitVerseEnd(const Verse *verse);
814 
818  virtual FunctorCode VisitF(const F *f);
820  virtual FunctorCode VisitFEnd(const F *f);
821  virtual FunctorCode VisitFb(const Fb *fb);
822  virtual FunctorCode VisitFbEnd(const Fb *fb);
823  virtual FunctorCode VisitFig(const Fig *fig);
824  virtual FunctorCode VisitFigEnd(const Fig *fig);
825  virtual FunctorCode VisitLb(const Lb *lb);
826  virtual FunctorCode VisitLbEnd(const Lb *lb);
827  virtual FunctorCode VisitMNum(const MNum *mNum);
828  virtual FunctorCode VisitMNumEnd(const MNum *mNum);
829  virtual FunctorCode VisitNum(const Num *num);
830  virtual FunctorCode VisitNumEnd(const Num *num);
831  virtual FunctorCode VisitRend(const Rend *rend);
832  virtual FunctorCode VisitRendEnd(const Rend *rend);
833  virtual FunctorCode VisitSvg(const Svg *svg);
834  virtual FunctorCode VisitSvgEnd(const Svg *svg);
835  virtual FunctorCode VisitSymbol(const Symbol *symbol);
836  virtual FunctorCode VisitSymbolEnd(const Symbol *symbol);
837  virtual FunctorCode VisitText(const Text *text);
838  virtual FunctorCode VisitTextEnd(const Text *text);
839  virtual FunctorCode VisitTextElement(const TextElement *textElement);
840  virtual FunctorCode VisitTextElementEnd(const TextElement *textElement);
842 
846  virtual FunctorCode VisitFacsimile(const Facsimile *facsimile);
848  virtual FunctorCode VisitFacsimileEnd(const Facsimile *facsimile);
849  virtual FunctorCode VisitGraphic(const Graphic *graphic);
850  virtual FunctorCode VisitGraphicEnd(const Graphic *graphic);
851  virtual FunctorCode VisitSurface(const Surface *surface);
852  virtual FunctorCode VisitSurfaceEnd(const Surface *surface);
853  virtual FunctorCode VisitZone(const Zone *zone);
854  virtual FunctorCode VisitZoneEnd(const Zone *zone);
856 
860  virtual FunctorCode VisitAlignment(const Alignment *alignment);
862  virtual FunctorCode VisitAlignmentEnd(const Alignment *alignment);
863  virtual FunctorCode VisitAlignmentReference(const AlignmentReference *alignmentReference);
864  virtual FunctorCode VisitAlignmentReferenceEnd(const AlignmentReference *alignmentReference);
865  virtual FunctorCode VisitHorizontalAligner(const HorizontalAligner *horizontalAligner);
866  virtual FunctorCode VisitHorizontalAlignerEnd(const HorizontalAligner *horizontalAligner);
867  virtual FunctorCode VisitMeasureAligner(const MeasureAligner *measureAligner);
868  virtual FunctorCode VisitMeasureAlignerEnd(const MeasureAligner *measureAligner);
869  virtual FunctorCode VisitGraceAligner(const GraceAligner *graceAligner);
870  virtual FunctorCode VisitGraceAlignerEnd(const GraceAligner *graceAligner);
871  virtual FunctorCode VisitTimestampAligner(const TimestampAligner *timestampAligner);
872  virtual FunctorCode VisitTimestampAlignerEnd(const TimestampAligner *timestampAligner);
874 
878  virtual FunctorCode VisitSystemAligner(const SystemAligner *systemAligner);
880  virtual FunctorCode VisitSystemAlignerEnd(const SystemAligner *systemAligner);
881  virtual FunctorCode VisitStaffAlignment(const StaffAlignment *staffAlignment);
882  virtual FunctorCode VisitStaffAlignmentEnd(const StaffAlignment *staffAlignment);
884 
888  virtual FunctorCode VisitFloatingObject(const FloatingObject *floatingObject);
890  virtual FunctorCode VisitFloatingObjectEnd(const FloatingObject *floatingObject);
892 
893 private:
894  //
895 public:
896  //
897 private:
898  //
899 };
900 
901 } // namespace vrv
902 
903 #endif // __VRV_FUNCTOR_INTERFACE_H__
vrv::StaffDef
This class represents a MEI staffDef.
Definition: staffdef.h:26
vrv::LabelAbbr
This class models the MEI <labelAbbr> element.
Definition: labelabbr.h:22
vrv::Staff
This class represents a staff in a laid-out score (Doc).
Definition: staff.h:102
vrv::Measure
This class represents a measure in a page-based score (Doc).
Definition: measure.h:37
vrv::Nc
This class models the MEI <nc> element.
Definition: nc.h:34
vrv::RepeatMark
This class models the MEI <ornam> element.
Definition: repeatmark.h:26
vrv::PgHead
This class represents an MEI pgHead.
Definition: pghead.h:22
vrv::F
This class models the MEI <f> element.
Definition: f.h:24
vrv::Turn
This class models the MEI <turn> element.
Definition: turn.h:26
vrv::TimestampAligner
This class stores the timestamps (TimestampsAttr) in a measure.
Definition: horizontalaligner.h:664
vrv::Syllable
This class models the MEI <mensur> element.
Definition: syllable.h:25
vrv::Zone
Implements the zone element in MEI.
Definition: zone.h:30
vrv::BeamSpan
This class models the MEI <beamSpan> element.
Definition: beamspan.h:31
vrv::MSpace
This class models the MEI <space> element.
Definition: mspace.h:22
vrv::Doc
This class is a hold the data and corresponds to the model of a MVC design pattern.
Definition: doc.h:41
vrv::Svg
Definition: svg.h:20
vrv::MeterSig
This class models the MEI <meterSig> element.
Definition: metersig.h:27
vrv::Verse
Definition: verse.h:23
vrv::Graphic
Implements the graphic element in MEI.
Definition: graphic.h:30
vrv::SystemElement
This class represents elements appearing within a measure.
Definition: systemelement.h:25
vrv::Plica
Definition: plica.h:20
vrv::Text
This class models CDATA (text)
Definition: text.h:23
vrv::HorizontalAligner
This class aligns the content horizontally It contains a vector of Alignment.
Definition: horizontalaligner.h:362
vrv::Tempo
This class is an interface for <tempo> elements at the measure level.
Definition: tempo.h:27
vrv::Div
This class represents an MEI Div.
Definition: div.h:24
vrv::FTrem
This class models the MEI <fTrem> element.
Definition: ftrem.h:25
vrv::TabDurSym
This class models the MEI <tabDurSym> element.
Definition: tabdursym.h:25
vrv::Ending
This class represents a MEI ending.
Definition: ending.h:28
vrv::TextElement
Definition: textelement.h:22
vrv::Dots
This class models a group of dots as a layer element part and has no direct MEI equivalent.
Definition: elementpart.h:27
vrv::TupletBracket
This class models a bracket as a layer element part and has no direct MEI equivalent.
Definition: elementpart.h:150
vrv::Section
This class represents a MEI section.
Definition: section.h:28
vrv::Surface
Implements the surface element in MEI.
Definition: surface.h:30
vrv::Chord
This class represents a collection of notes in the same layer with the same onset time.
Definition: chord.h:32
vrv::Phrase
Definition: phrase.h:19
vrv::Accid
This class models the MEI <accid> element.
Definition: accid.h:27
vrv::PageElement
This class represents elements appearing within a page.
Definition: pageelement.h:25
vrv::Breath
This class models the MEI <breath> element.
Definition: breath.h:24
vrv::CpMark
This class models the MEI <cpMark> element.
Definition: cpmark.h:26
vrv::ScoreDefElement
This class is a base class for MEI scoreDef or staffDef elements.
Definition: scoredef.h:42
vrv::Object
This class represents a basic object.
Definition: object.h:59
vrv::Pedal
This class models the MEI <pedal> element.
Definition: pedal.h:27
vrv::Pages
This class represent a <pages> in page-based MEI.
Definition: pages.h:27
vrv::Neume
This class models the MEI <neume> element.
Definition: neume.h:60
vrv::AnchoredText
This class is an interface for <anchoredText> elements at the measure level.
Definition: anchoredtext.h:25
vrv::GraceAligner
This class aligns the content of a grace note group It contains a vector of Alignment.
Definition: horizontalaligner.h:570
vrv::MeterSigGrp
This class represents a MEI meterSigGrp.
Definition: metersiggrp.h:28
vrv::Slur
Definition: slur.h:53
vrv::MNum
This class models the MEI <mNum> element.
Definition: mnum.h:26
vrv::Trill
This class models the MEI <trill> element.
Definition: trill.h:26
vrv::Fb
This class models the MEI <fb> element.
Definition: fb.h:23
vrv::Flag
This class models a stem as a layer element part and has no direct MEI equivalent.
Definition: elementpart.h:97
vrv::Tie
This class models the MEI <tie> element.
Definition: tie.h:27
vrv::Dir
This class models the MEI <dir> element.
Definition: dir.h:26
vrv::InstrDef
This class models the MEI <instrDef> element.
Definition: instrdef.h:24
vrv::GenericLayerElement
This class holds generic elements existing within MEI <layer> but not supported by Verovio.
Definition: genericlayerelement.h:22
vrv::Ligature
This class represents a collection of notes in the same layer with successive onset times,...
Definition: ligature.h:28
vrv::Mensur
This class models the MEI <mensur> element.
Definition: mensur.h:27
vrv::AlignmentReference
This class stores a references of LayerElements for a staff.
Definition: horizontalaligner.h:290
vrv::PitchInflection
This class models the MEI <dir> element.
Definition: pitchinflection.h:23
vrv::TabGrp
This class models the MEI <tabGrp> element.
Definition: tabgrp.h:23
vrv::BTrem
This class models the MEI <bTrem> element.
Definition: btrem.h:23
vrv::Lb
This class models the MEI <lb>
Definition: lb.h:23
vrv::MultiRpt
This class models the MEI <multiRpt> element.
Definition: multirpt.h:25
vrv::Tuning
This class models the MEI <tuning> element.
Definition: tuning.h:23
vrv::HalfmRpt
This class models the MEI <halfmRpt> element.
Definition: halfmrpt.h:26
vrv::Symbol
This class models the MEI <symbol> element.
Definition: symbol.h:25
vrv::BarLine
This class models the MEI <barLine> element.
Definition: barline.h:29
vrv::RunningElement
This class represents running elements (headers and footers).
Definition: runningelement.h:28
vrv::Space
This class models the MEI <space> element.
Definition: space.h:23
vrv::SystemMilestoneEnd
This class models an end milestone element at the system level.
Definition: systemmilestone.h:28
vrv::Clef
This class models the MEI <clef> element.
Definition: clef.h:27
vrv::Course
This class models the MEI <course> element.
Definition: course.h:23
vrv::MRpt2
This class models the MEI <mRpt2> element.
Definition: mrpt2.h:26
vrv::Artic
Definition: artic.h:22
vrv::LayerDef
Definition: layerdef.h:18
vrv::Fig
This class models the MEI <fig> element.
Definition: fig.h:23
vrv::Lv
This class models the MEI <lv> element.
Definition: lv.h:22
vrv::PageMilestoneEnd
This class models an end milestone element and has no MEI equivalent.
Definition: pagemilestone.h:26
vrv::Octave
This class models the MEI <octave> element.
Definition: octave.h:25
vrv::Beam
Definition: beam.h:279
vrv::Gliss
This class models the MEI <gliss> element.
Definition: gliss.h:24
vrv::Proport
This class models the MEI <proport> element.
Definition: proport.h:23
vrv::Arpeg
This class models the MEI <arpeg> element.
Definition: arpeg.h:26
vrv::Alignment
This class stores an alignment position elements will point to.
Definition: horizontalaligner.h:73
vrv::Pb
This class represents a MEI pb in score-based MEI.
Definition: pb.h:25
vrv::TupletNum
This class models a tuplet num as a layer element part and has no direct MEI equivalent.
Definition: elementpart.h:249
vrv::FloatingObject
This class represents elements appearing within a measure.
Definition: floatingobject.h:28
vrv::PgFoot
This class represents an MEI pgFoot.
Definition: pgfoot.h:22
vrv::Custos
Definition: custos.h:24
vrv::MRpt
This class models the MEI <mRpt> element.
Definition: mrpt.h:26
vrv::Reh
This class models the MEI <reh> element.
Definition: reh.h:26
vrv::Note
This class models the MEI <note> element.
Definition: note.h:47
vrv::Mdiv
This class represent a <mdiv> in page-based MEI.
Definition: mdiv.h:24
vrv::Page
This class represents a page in a laid-out score (Doc).
Definition: page.h:31
vrv::MeasureAligner
This class aligns the content of a measure It contains a vector of Alignment.
Definition: horizontalaligner.h:425
vrv::Ornam
This class models the MEI <ornam> element.
Definition: ornam.h:27
vrv::Facsimile
Implements the facsimile element in MEI.
Definition: facsimile.h:31
vrv::Sb
This class represents a MEI sb in score-based MEI.
Definition: sb.h:25
vrv::Mordent
This class models the MEI <mordent> element.
Definition: mordent.h:26
vrv::Label
This class models the MEI <label> element.
Definition: label.h:22
vrv::Dot
Definition: dot.h:22
vrv::Fing
This class models the MEI <fing> element.
Definition: fing.h:25
vrv::System
This class represents a system in a laid-out score (Doc).
Definition: system.h:36
vrv::TimestampAttr
Definition: timestamp.h:19
vrv::BeatRpt
This class models the MEI <beatRpt> element.
Definition: beatrpt.h:25
vrv::Dynam
Definition: dynam.h:24
vrv::Syl
Syl is a TimeSpanningInterface for managing syllable connectors.
Definition: syl.h:31
vrv::KeyAccid
This class models the MEI <keyAccid> element.
Definition: keyaccid.h:26
vrv::Stem
This class models a stem as a layer element part and as MEI <stem> element.
Definition: stem.h:27
vrv::GrpSym
This class represents a MEI grpSym.
Definition: grpsym.h:25
vrv::MultiRest
This class models the MEI <multiRest> element.
Definition: multirest.h:26
vrv::GraceGrp
Definition: gracegrp.h:20
vrv::EditorialElement
This class is a base class for the editorial element containing musical content, for example <rgd> or...
Definition: editorial.h:38
vrv::ScoreDef
This class represents a MEI scoreDef.
Definition: scoredef.h:129
vrv::Tuplet
Definition: tuplet.h:28
vrv::MRest
This class models the MEI <mRest> element.
Definition: mrest.h:27
vrv::Rest
This class models the MEI <rest> element.
Definition: rest.h:37
vrv::ControlElement
This class represents elements appearing within a measure.
Definition: controlelement.h:28
vrv::Score
This class represent a <score> in MEI.
Definition: score.h:30
vrv::Expansion
This class represents a MEI expansion.
Definition: expansion.h:26
vrv::Num
This class models the MEI <num> element.
Definition: num.h:24
vrv::Caesura
This class models the MEI <caesura> element.
Definition: caesura.h:25
vrv::FunctorInterface
This class is an interface for functors based on a visitor pattern.
Definition: functorinterface.h:159
vrv::KeySig
This class models the MEI <keySig> element.
Definition: keysig.h:44
vrv::StaffAlignment
This class stores an alignement position staves will point to.
Definition: verticalaligner.h:172
vrv::StaffGrp
This class represents a MEI staffGrp.
Definition: staffgrp.h:31
vrv::Fermata
This class models the MEI <fermata> element.
Definition: fermata.h:26
vrv::BracketSpan
This class models the MEI <bracketSpan> element.
Definition: bracketspan.h:24
vrv::TextLayoutElement
This class represents a text element featuring horizontal and vertical layout.
Definition: textlayoutelement.h:24
vrv::LayerElement
This class is a base class for the Layer (<layer>) content.
Definition: layerelement.h:46
vrv::Layer
This class represents a layer in a laid-out score (Doc).
Definition: layer.h:33
vrv::Rend
This class models the MEI <rend> element.
Definition: rend.h:25
vrv::ConstFunctorInterface
This class is an interface for const functors based on a visitor pattern.
Definition: functorinterface.h:534
vrv::SystemAligner
This class aligns the content of a system It contains a vector of StaffAlignment.
Definition: verticalaligner.h:31
vrv::Harm
This class models the MEI <harm> element.
Definition: harm.h:27
vrv::Hairpin
This class models the MEI <hairpin> element.
Definition: hairpin.h:25