]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/lily-proto.hh
(gui_b): excise std_string option.
[lilypond.git] / lily / include / lily-proto.hh
1 /*
2   lily-proto.hh -- declare class names.
3
4   source file of the GNU LilyPond music typesetter
5
6   (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
7 */
8
9 #ifndef LILY_PROTO_HH
10 #define LILY_PROTO_HH
11 #include "flower-proto.hh"
12
13 class All_font_metrics;
14 class Audio_column;
15 class Audio_dynamic;
16 class Audio_element;
17 class Audio_instrument;
18 class Audio_item;
19 class Audio_key;
20 class Audio_note;
21 class Audio_piano_pedal;
22 class Audio_staff;
23 class Audio_tempo;
24 class Audio_text;
25 class Audio_tie;
26 class Audio_time_signature;
27 class Auto_change_iterator;
28 class Auto_change_music;
29 class Axis_group_engraver;
30 class Bar_engraver;
31 class Bar_req_collect_engraver;
32 class Beaming_info_list;
33 class Bezier;
34 class Bezier_bow;
35 class Book;
36 class Box;
37 class Break_algorithm;
38 class Change_iterator;
39 class Change_translator;
40 class Chord_tremolo_iterator;
41 class Cluster_engraver;
42 class Column_x_positions;
43 class Context;
44 class Context_def;
45 class Context_specced_music;
46 class Engraver;
47 class Engraver;
48 class Engraver_group;
49 class Event;
50 class Event_chord;
51 class Event_chord_iterator;
52 class Folded_repeat_iterator;
53 class Font_metric;
54 class Font_size_engraver;
55 class Global_context;
56 class Gourlay_breaking;
57 class Grace_fixup;
58 class Grace_iterator;
59 class Grace_music;
60 class Grob;
61 class Grob_array;
62 class Grob_info;
63 class Hara_kiri_engraver;
64 class Hara_kiri_line_group_engraver;
65 class Includable_lexer;
66 class Input;
67 class Input_file_results;
68 class Item;
69 class Key_performer;
70 class Keyword_ent;
71 class Keyword_table;
72 class Ligature_bracket_engraver;
73 class Ligature_engraver;
74 class Lily_lexer;
75 class Lily_parser;
76 class Lilypond_context_key;
77 class Lilypond_grob_key;
78 class Line_group_engraver_group;
79 class Lookup;
80 class Lyric_combine_music;
81 class Lyric_combine_music_iterator;
82 class Lyric_engraver;
83 class Lyric_performer;
84 class Lyric_phrasing_engraver;
85 class Mensural_ligature_engraver;
86 class Midi_chunk;
87 class Midi_duration;
88 class Midi_dynamic;
89 class Midi_header;
90 class Midi_instrument;
91 class Midi_item;
92 class Midi_key;
93 class Midi_note;
94 class Midi_note_event;
95 class Midi_note_off;
96 class Midi_piano_pedal;
97 class Midi_stream;
98 class Midi_tempo;
99 class Midi_text;
100 class Midi_time_signature;
101 class Midi_track;
102 class Modified_font_metric;
103 class Moment;
104 class Music;
105 class Music_iterator;
106 class Music_list;
107 class Music_output;
108 class Music_sequence;
109 class Music_wrapper;
110 class Music_wrapper_iterator;
111 class Note_performer;
112 class Output_def;
113 class Object_key;
114 class Object_key_dumper;
115 class Object_key_undumper;
116 class Open_type_font;
117 class Output_property;
118 class Page;
119 class Pango_font;
120 class Paper_book;
121 class Paper_column;
122 class Paper_outputter;
123 class Paper_score;
124 class Performance;
125 class Performer;
126 class Performer_group;
127 class Piano_bar_engraver;
128 class Pitch;
129 class Pitch_squash_engraver;
130 class Property_iterator;
131 class Rational;
132 class Relative_octave_music;
133 class Repeated_music;
134 class Scheme_hash_table;
135 class Score;
136 class Score_context;
137 class Score_engraver;
138 class Score_performer;
139 class Sequential_music;
140 class Sequential_music_iterator;
141 class Simple_music_iterator;
142 class Simple_spacer;
143 class Simple_spacer_wrapper;
144 class Simultaneous_music;
145 class Simultaneous_music_iterator;
146 class Skyline_entry;
147 class Slur_configuration;
148 class Slur_score_state;
149 class Span_score_bar_engraver;
150 class Spanner;
151 class Staff_group_bar_engraver;
152 class Staff_performer;
153 class Stencil;
154 class Swallow_engraver;
155 class Swallow_performer;
156 class System;
157 class Tempo_performer;
158 class Tex_font_metric;
159 class Tie;
160 class Tie_details;
161 class Tie_configuration;
162 class Tie_formatting_problem;
163 class Tie_performer;
164 class Time_scaled_music;
165 class Time_scaled_music_iterator;
166 class Time_signature_performer;
167 class Timing_engraver;
168 class Timing_translator;
169 class Translation_property;
170 class Translator;
171 class Translator_change;
172 class Translator_group;
173 class Transposed_music;
174 class Type_swallow_translator;
175 class yyFlexLexer;
176
177 typedef void (*Engraver_void_function_engraver_grob_info) (Engraver *, Grob_info);
178 typedef void (*Translator_void_method_ptr) (Translator *);
179
180
181 /* FIXME: when Link_array is dropped, do grand s/r to vector<TYPE*>.  */
182
183 #include "std-vector.hh"
184
185 #define Link_array__char_ std::vector<char*>
186 #define Link_array__Grob_ std::vector<Grob*>
187 #define Link_array__Accidental_placement_entry_ std::vector<Accidental_placement_entry*>
188 #define Link_array__Audio_item_ std::vector<Audio_item*>
189 #define Link_array__Audio_note_ std::vector<Audio_note*>
190 #define Link_array__Audio_piano_pedal_ std::vector<Audio_piano_pedal*>
191 #define Link_array__Audio_staff_ std::vector<Audio_staff*>
192 #define Link_array__Bracket_nesting_node_ std::vector<Bracket_nesting_node*>
193 #define Link_array__Context_ std::vector<Context*>
194 #define Link_array__Context_def_ std::vector<Context_def*>
195 #define Link_array__Grob_ std::vector<Grob*>
196 #define Link_array__Item_ std::vector<Item*>
197 #define Link_array__Music_ std::vector<Music*>
198 #define Link_array__Note_column_ std::vector<Note_column*>
199 #define Link_array__Output_def_ std::vector<Output_def*>
200 #define Link_array__Slur_configuration_ std::vector<Slur_configuration*>
201 #define Link_array__Source_file_ std::vector<Source_file*>
202 #define Link_array__Spanner_ std::vector<Spanner*>
203 #define Link_array__Tie_configuration_ std::vector<Tie_configuration*>
204
205 #endif /* LILY_PROTO_HH */