2 // midi-event.hh -- declare midi_event
4 // copyright 1997 Jan Nieuwenhuizen <jan@digicash.com>
12 // * be Voice_elements/requests
13 // * get a name-change
20 virtual ~Midi_event();
22 virtual String
mudela_str(); // = 0;
23 virtual void output_mudela( Lily_stream
& lily_stream_r
);
30 class Midi_key
: public Midi_event
{
32 Midi_key( int accidentals_i
, int minor
);
35 String
notename_str( int pitch_i
);
43 class Midi_note
: public Midi_event
{
45 int const c0_pitch_i_c_
= 60;
47 Midi_note( Midi_key
* midi_key_l
, Midi_time
* midi_time_l
, int division_1_i
, int pitch_i
, int time_i
);
56 class Midi_tempo
: public Midi_event
{
58 Midi_tempo( int useconds_per_4_i
);
59 virtual ~Midi_tempo();
61 int get_tempo_i( Moment moment
);
64 int useconds_per_4_i_
;
65 Real seconds_per_1_f_
;
68 class Midi_time
: public Midi_event
{
70 Midi_time( int num_i
, int den_i
, int division_4_i
, int count_32_i
);
73 Duration
i2_dur( int time_i
, int division_1_i
);
84 #endif // MIDI_EVENT_HH