source file of the GNU LilyPond music typesetter
- (c) 1997 Jan Nieuwenhuizen <jan@digicash.com>
+ (c) 1997--2002 Jan Nieuwenhuizen <janneke@gnu.org>
*/
#ifndef MIDI_DEF_HH
#define MIDI_DEF_HH
+
#include "lily-proto.hh"
#include "real.hh"
#include "string.hh"
#include "moment.hh"
-
+#include "music-output-def.hh"
/**
definitions for midi output. Rather empty
*/
-struct Midi_def {
- // ugh!
- static int den_i_s;
- static int num_i_s;
-
- /// output file name
- String outfile_str_;
+class Midi_def : public Music_output_def {
+ static int score_count_;
- Input_translator* itrans_p_;
+public:
+ VIRTUAL_COPY_CONS (Music_output_def);
- /// duration of whole note
- Real whole_seconds_f_;
+ Midi_def ();
- Midi_def();
- Midi_def( Midi_def const& midi_c_r );
- ~Midi_def();
-
- Real duration_to_seconds_f(Moment);
- Global_translator* get_global_translator_p() const;
- int get_tempo_i( Moment moment );
- void print() const;
- void set( Input_translator* itrans_p );
- void set_tempo( Moment moment, int count_per_minute_i );
+ int get_tempo (Moment moment);
+ void set_tempo (Moment moment, int count_per_minute_i);
+ virtual int get_next_score_count () const;
+ static void reset_score_count ();
};
#endif // MIDI_DEF_HH
-