]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/audio-score.cc
release: 0.1.11
[lilypond.git] / lily / audio-score.cc
index 1c406c5b7f7b6bdb0f66edd9b7230aa4753fa319..37125f6fc3222fcc9fbff71af0886646f1f56f5b 100644 (file)
@@ -19,9 +19,9 @@
 #include "audio-score.hh"
 #include "score.hh"
 
-Audio_score::Audio_score (Score* l)
+Audio_score::Audio_score ()
 {
-  score_l_ = l;
+  midi_l_ =0;
 }
 
 void
@@ -40,7 +40,7 @@ Audio_score::output (Midi_stream& midi_stream_r)
   midi_stream_r << Midi_header (1, tracks_i, clocks_per_4_i);
   output_header_track (midi_stream_r);
   int n = 1;
-  for ( PCursor<Audio_staff*> i (audio_staff_l_list_); i.ok(); i++ )
+  for (PCursor<Audio_staff*> i (audio_staff_l_list_); i.ok(); i++)
        i->output (midi_stream_r, n++);
 }
 
@@ -55,26 +55,26 @@ Audio_score::output_header_track (Midi_stream& midi_stream_r)
   String str = String ("Creator: ") + get_version_str() + "\n";
 
   Midi_text creator (Midi_text::TEXT, str);
-  midi_track.add (Moment (0), &creator );
+  midi_track.add (Moment (0), &creator);
 
   str = "Automatically generated at ";
   str += ctime (&t);
   str = str.left_str (str.length_i() - 1);
   str += "\n";
   Midi_text generate (Midi_text::TEXT, str);
-  midi_track.add (Moment (0), &generate );
+  midi_track.add (Moment (0), &generate);
 
   str = "from musical definition: ";
 
-  str += score_l_->location_str();
+  str += origin_str_;
   Midi_text from (Midi_text::TEXT, str);
-  midi_track.add (Moment (0), &from );
+  midi_track.add (Moment (0), &from);
 
   Midi_text track_name (Midi_text::TRACK_NAME, "Track " 
-                         + String_convert::i2dec_str (0, 0, '0') );
-  midi_track.add (Moment (0), &track_name );
+                         + String_convert::i2dec_str (0, 0, '0'));
+  midi_track.add (Moment (0), &track_name);
 
-  Midi_tempo tempo (score_l_->midi_p_->get_tempo_i (Moment (1, 4) ) );
+  Midi_tempo tempo (midi_l_->get_tempo_i (Moment (1, 4)));
   midi_track.add (Moment (0), &tempo);
 
   midi_stream_r  << midi_track;
@@ -97,9 +97,8 @@ Audio_score::print() const
 {    
 #ifndef NPRINT
   DOUT << "Audio_score { ";
-  score_l_->midi_p_->print();
   DOUT << "\ncolumns: ";
-  for ( PCursor<Audio_column*> i (audio_column_p_list_); i.ok(); i++ )
+  for (PCursor<Audio_column*> i (audio_column_p_list_); i.ok(); i++)
        i->print();
   DOUT << "}\n";
 #endif 
@@ -108,5 +107,13 @@ Audio_score::print() const
 void
 Audio_score::process()
 {
-}
+  String out=midi_l_->outfile_str_;
+  if (out == "")
+    out = default_out_str_ + ".midi";
+
+  Midi_stream midi_stream (out);
+  *mlog << "MIDI output to " << out<< " ..." << endl;    
 
+  output (midi_stream);
+  *mlog << endl;
+}