8 #ifndef __VRV_FUNCTOR_INTERFACE_H__
9 #define __VRV_FUNCTOR_INTERFACE_H__
17 class AlignmentReference;
41 class EditorialElement;
53 class GenericLayerElement;
62 class HorizontalAligner;
97 class PageMilestoneEnd;
104 class PitchInflection;
111 class RunningElement;
115 class ScoreDefElement;
120 class StaffAlignment;
132 class SystemMilestoneEnd;
138 class TextLayoutElement;
140 class TimestampAligner;
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);
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);
227 virtual FunctorCode VisitEditorialElement(
EditorialElement *editorialElement);
229 virtual FunctorCode VisitEditorialElementEnd(
EditorialElement *editorialElement);
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);
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);
267 virtual FunctorCode VisitMdiv(
Mdiv *mdiv);
269 virtual FunctorCode VisitMdivEnd(
Mdiv *mdiv);
270 virtual FunctorCode VisitPageElement(
PageElement *pageElement);
271 virtual FunctorCode VisitPageElementEnd(
PageElement *pageElement);
273 virtual FunctorCode VisitPageMilestoneEnd(
PageMilestoneEnd *pageMilestoneEnd);
274 virtual FunctorCode VisitScore(
Score *score);
275 virtual FunctorCode VisitScoreEnd(
Score *score);
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);
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);
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);
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);
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);
485 virtual FunctorCode VisitAlignment(
Alignment *alignment);
487 virtual FunctorCode VisitAlignmentEnd(
Alignment *alignment);
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);
503 virtual FunctorCode VisitSystemAligner(
SystemAligner *systemAligner);
505 virtual FunctorCode VisitSystemAlignerEnd(
SystemAligner *systemAligner);
506 virtual FunctorCode VisitStaffAlignment(
StaffAlignment *staffAlignment);
507 virtual FunctorCode VisitStaffAlignmentEnd(
StaffAlignment *staffAlignment);
513 virtual FunctorCode VisitFloatingObject(
FloatingObject *floatingObject);
515 virtual FunctorCode VisitFloatingObjectEnd(
FloatingObject *floatingObject);
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);
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);
602 virtual FunctorCode VisitEditorialElement(
const EditorialElement *editorialElement);
604 virtual FunctorCode VisitEditorialElementEnd(
const EditorialElement *editorialElement);
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);
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);
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);
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);
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);
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);
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);
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);
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);
888 virtual FunctorCode VisitFloatingObject(
const FloatingObject *floatingObject);
890 virtual FunctorCode VisitFloatingObjectEnd(
const FloatingObject *floatingObject);
903 #endif // __VRV_FUNCTOR_INTERFACE_H__