LibMusicXML
3.22
src
factory
sortvisitor.h
1
/*
2
MusicXML Library
3
Copyright (C) Grame 2006-2013
4
5
This Source Code Form is subject to the terms of the Mozilla Public
6
License, v. 2.0. If a copy of the MPL was not distributed with this
7
file, You can obtain one at http://mozilla.org/MPL/2.0/.
8
9
Grame Research Laboratory, 11, cours de Verdun Gensoul 69002 Lyon - France
10
research@grame.fr
11
*/
12
13
#ifndef __sortVisitor__
14
#define __sortVisitor__
15
16
#include "visitor.h"
17
#include "typedefs.h"
18
#include "xml.h"
19
20
namespace
MusicXML2
21
{
22
31
class
sortvisitor
:
32
public
visitor
<S_accord>,
33
public
visitor
<S_accordion_registration>,
34
public
visitor
<S_appearance>,
35
public
visitor
<S_attributes>,
36
public
visitor
<S_backup>,
37
public
visitor
<S_barline>,
38
public
visitor
<S_bass>,
39
public
visitor
<S_beat_repeat>,
40
public
visitor
<S_bend>,
41
public
visitor
<S_clef>,
42
public
visitor
<S_defaults>,
43
public
visitor
<S_degree>,
44
public
visitor
<S_direction>,
45
public
visitor
<S_figure>,
46
public
visitor
<S_figured_bass>,
47
public
visitor
<S_forward>,
48
public
visitor
<S_frame_note>,
49
public
visitor
<S_frame>,
50
public
visitor
<S_harmonic>,
51
public
visitor
<S_harmony>,
52
public
visitor
<S_identification>,
53
public
visitor
<S_measure_style>,
54
public
visitor
<S_metronome_note>,
55
public
visitor
<S_metronome_tuplet>,
56
public
visitor
<S_midi_instrument>,
57
public
visitor
<S_notations>,
58
public
visitor
<S_note>,
59
public
visitor
<S_page_layout>,
60
public
visitor
<S_page_margins>,
61
public
visitor
<S_part_group>,
62
public
visitor
<S_pedal_tuning>,
63
public
visitor
<S_pitch>,
64
public
visitor
<S_print>,
65
public
visitor
<S_rest>,
66
public
visitor
<S_root>,
67
public
visitor
<S_scaling>,
68
public
visitor
<S_score_instrument>,
69
public
visitor
<S_score_part>,
70
public
visitor
<S_score_partwise>,
71
public
visitor
<S_slash>,
72
public
visitor
<S_sound>,
73
public
visitor
<S_staff_details>,
74
public
visitor
<S_staff_tuning>,
75
public
visitor
<S_system_layout>,
76
public
visitor
<S_system_margins>,
77
public
visitor
<S_time_modification>,
78
public
visitor
<S_transpose>,
79
public
visitor
<S_tuplet_actual>,
80
public
visitor
<S_tuplet_normal>,
81
public
visitor
<S_tuplet>,
82
public
visitor
<S_unpitched>,
83
public
visitor
<S_work>
84
{
85
protected
:
86
87
public
:
88
sortvisitor
();
89
virtual
~sortvisitor
() {}
90
91
virtual
void
visitStart(
S_accord
&
elt
);
92
virtual
void
visitStart(
S_accordion_registration
&
elt
);
93
virtual
void
visitStart(
S_appearance
&
elt
);
94
virtual
void
visitStart(
S_attributes
&
elt
);
95
virtual
void
visitStart(
S_backup
&
elt
);
96
virtual
void
visitStart(
S_barline
&
elt
);
97
virtual
void
visitStart(
S_bass
&
elt
);
98
virtual
void
visitStart(
S_beat_repeat
&
elt
);
99
virtual
void
visitStart(
S_bend
&
elt
);
100
virtual
void
visitStart(
S_clef
&
elt
);
101
virtual
void
visitStart(
S_defaults
&
elt
);
102
virtual
void
visitStart(
S_degree
&
elt
);
103
virtual
void
visitStart(
S_direction
&
elt
);
104
virtual
void
visitStart(
S_figure
&
elt
);
105
virtual
void
visitStart(
S_figured_bass
&
elt
);
106
virtual
void
visitStart(
S_forward
&
elt
);
107
virtual
void
visitStart(
S_frame_note
&
elt
);
108
virtual
void
visitStart(
S_frame
&
elt
);
109
virtual
void
visitStart(
S_harmonic
&
elt
);
110
virtual
void
visitStart(
S_harmony
&
elt
);
111
virtual
void
visitStart(
S_identification
&
elt
);
112
virtual
void
visitStart(
S_measure_style
&
elt
);
113
virtual
void
visitStart(
S_metronome_note
&
elt
);
114
virtual
void
visitStart(
S_metronome_tuplet
&
elt
);
115
virtual
void
visitStart(
S_midi_instrument
&
elt
);
116
virtual
void
visitStart(
S_notations
&
elt
);
117
virtual
void
visitStart(
S_note
&
elt
);
118
virtual
void
visitStart(
S_page_layout
&
elt
);
119
virtual
void
visitStart(
S_page_margins
&
elt
);
120
virtual
void
visitStart(
S_part_group
&
elt
);
121
virtual
void
visitStart(
S_pedal_tuning
&
elt
);
122
virtual
void
visitStart(
S_pitch
&
elt
);
123
virtual
void
visitStart(
S_print
&
elt
);
124
virtual
void
visitStart(
S_rest
&
elt
);
125
virtual
void
visitStart(
S_root
&
elt
);
126
virtual
void
visitStart(
S_scaling
&
elt
);
127
virtual
void
visitStart(
S_score_instrument
&
elt
);
128
virtual
void
visitStart(
S_score_part
&
elt
);
129
virtual
void
visitStart(
S_score_partwise
&
elt
);
130
virtual
void
visitStart(
S_slash
&
elt
);
131
virtual
void
visitStart(
S_sound
&
elt
);
132
virtual
void
visitStart(
S_staff_details
&
elt
);
133
virtual
void
visitStart(
S_staff_tuning
&
elt
);
134
virtual
void
visitStart(
S_system_layout
&
elt
);
135
virtual
void
visitStart(
S_system_margins
&
elt
);
136
virtual
void
visitStart(
S_time_modification
&
elt
);
137
virtual
void
visitStart(
S_transpose
&
elt
);
138
virtual
void
visitStart(
S_tuplet_actual
&
elt
);
139
virtual
void
visitStart(
S_tuplet_normal
&
elt
);
140
virtual
void
visitStart(
S_tuplet
&
elt
);
141
virtual
void
visitStart(
S_unpitched
&
elt
);
142
virtual
void
visitStart(
S_work
&
elt
);
143
};
144
147
}
148
149
#endif
MusicXML2::SMARTP
the smart pointer implementation
Definition
smartpointer.h:58
MusicXML2::sortvisitor
A visitor that sorts a musicxml tree according to the dtd.
Definition
sortvisitor.h:84
MusicXML2::visitor
Definition
visitor.h:27
Generated by
1.9.8