2 audio-item.hh -- declare Audio_items
4 (c) 1996--2000 Jan Nieuwenhuizen <janneke@gnu.org>
11 #include "lily-proto.hh"
13 #include "audio-element.hh"
15 #include "musical-pitch.hh"
17 #include "drul-array.hh"
20 Any piece of audio information.
21 We need virtual conclassors,
22 let's try decentralised factory for specific audio implemenations.
25 class Audio_item : public Audio_element
30 Audio_column* audio_column_l_;
34 Audio_item (Audio_item const&);
35 Audio_item& operator=( Audio_item const&);
38 class Audio_dynamic : public Audio_item
41 Audio_dynamic (Real volume);
46 class Audio_key : public Audio_item
49 Audio_key (); //Newkey_def const& key);
53 class Audio_instrument : public Audio_item
56 Audio_instrument (String instrument_str);
61 class Audio_note : public Audio_item
64 Audio_note (Musical_pitch p, Moment m, int transposing_i = 0);
66 void tie_to (Audio_note*);
71 Moment delayed_until_mom_;
76 class Audio_piano_pedal : public Audio_item
83 class Audio_text : public Audio_item
87 TEXT = 1, COPYRIGHT, TRACK_NAME, INSTRUMENT_NAME, LYRIC,
91 Audio_text (Audio_text::Type type, String text_str);
97 class Audio_tempo : public Audio_item
100 Audio_tempo (int per_minute_4_i);
105 class Audio_tie : public Audio_item
109 void set_note (Direction, Audio_note*);
110 Drul_array<Audio_note*> note_l_drul_;
113 class Audio_time_signature : public Audio_item
116 Audio_time_signature (int beats, int one_beat);
122 #endif // AUDIO_ITEM_HH