2 // midi-score.cc -- implement Midi_score
4 // copyright 1997 Jan Nieuwenhuizen <jan@digicash.com>
8 Midi_score::Midi_score( int format_i, int tracks_i, int tempo_i )
15 Midi_score::~Midi_score()
20 Midi_score::add_track( Midi_track* midi_track_p )
22 midi_track_p_list_.bottom().add( midi_track_p );
26 Midi_score::output_mudela( String filename_str )
28 tor( NORMAL_ver ) << "Lily output to " << filename_str << " ..." << endl;
31 Lily_stream lily_stream( filename_str );
32 for ( PCursor<Midi_track*> i( midi_track_p_list_.top() ); i.ok(); i++ ) {
33 tor( NORMAL_ver ) << "track " << track_i++ << ": " << flush;
34 i->output_mudela( lily_stream );
35 lily_stream.newline();
36 tor( NORMAL_ver ) << endl;
39 lily_stream << "\\score{";
41 for ( PCursor<Midi_track*> i( midi_track_p_list_.top() ); i.ok(); i++ ) {
42 lily_stream << "\\staff{ melodicregs ";
43 lily_stream << i->name_str();
45 lily_stream.newline();
47 lily_stream.newline();
48 lily_stream << "\\paper{";
50 lily_stream << "\\unitspace 20\\mm";
53 lily_stream << "\\midi{";
55 // not use silly 0 track
56 midi_track_p_list_.bottom()->midi_tempo_p_->output_mudela( lily_stream, true );
62 lily_stream.newline();
71 for ( PCursor<Midi_track*> i( midi_track_p_list_.top() ); i.ok(); i++ ) {
72 tor( NORMAL_ver ) << "track " << track_i++ << ": " << flush;
74 tor( NORMAL_ver ) << endl;