2 audio-item.hh -- declare Audio_items
4 (c) 1996--2003 Jan Nieuwenhuizen <janneke@gnu.org>
11 #include "lily-proto.hh"
13 #include "audio-element.hh"
17 #include "drul-array.hh"
21 Any piece of audio information. We need virtual constructors, let's
22 try decentralised factory for specific audio implemenations.
24 class Audio_item : public Audio_element
29 Audio_column* audio_column_;
33 Audio_item (Audio_item const&);
34 Audio_item& operator= ( Audio_item const&);
37 class Audio_dynamic : public Audio_item
40 Audio_dynamic (Real volume);
45 class Audio_key : public Audio_item
48 Audio_key (int acc, bool major);
54 class Audio_instrument : public Audio_item
57 Audio_instrument (String instrument_string);
62 class Audio_note : public Audio_item
65 Audio_note (Pitch p, Moment m, int transposing_i = 0);
67 void tie_to (Audio_note*);
72 Moment delayed_until_mom_;
77 class Audio_piano_pedal : public Audio_item
84 class Audio_text : public Audio_item
88 TEXT = 1, COPYRIGHT, TRACK_NAME, INSTRUMENT_NAME, LYRIC,
92 Audio_text (Audio_text::Type type, String text_string);
98 class Audio_tempo : public Audio_item
101 Audio_tempo (int per_minute_4_i);
106 class Audio_tie : public Audio_item
110 void set_note (Direction, Audio_note*);
111 Drul_array<Audio_note*> note_drul_;
114 class Audio_time_signature : public Audio_item
117 Audio_time_signature (int beats, int one_beat);
123 #endif // AUDIO_ITEM_HH