]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/audio-item.cc
release: 0.1.11
[lilypond.git] / lily / audio-item.cc
index 689c34af3851cebc7e5f87fe7ed7e8a79e4ff0f0..55367026fa56545c46452d976e8f27e465a80d51 100644 (file)
@@ -9,68 +9,72 @@
 #include "audio-item.hh"
 #include "midi-item.hh"
 
-#if 0
-Audio_instrument::Audio_instrument( String instrument_str )
-       : Audio_item( 0 )
+Audio_instrument::Audio_instrument (String instrument_str)
+       : Audio_item (0)
 {
+  str_ = instrument_str;
 }
-#endif
-                                      
-Audio_item::Audio_item( Request* req_l )
+
+Midi_item*
+Audio_instrument::midi_item_p()
 {
-    audio_column_l_ = 0;
-    req_l_ = req_l;
+  return str_.length_i() ? new Midi_instrument(0, str_) : 0;
+}
+                                    
+Audio_item::Audio_item (Request* req_l)
+{
+  audio_column_l_ = 0;
+  req_l_ = req_l;
 }
 
-Audio_key::Audio_key( Request* req_l )
-       : Audio_item( req_l )
+Audio_key::Audio_key (Request* req_l)
+       : Audio_item (req_l)
 {
 }
 
 Midi_item*
 Audio_key::midi_item_p()
 {
-    return new Midi_key( this );
+  return new Midi_key (this);
 }
 
 
-Audio_note::Audio_note( Request* req_l, bool on_b )
-       : Audio_item( req_l )
+Audio_note::Audio_note (Request* req_l)
+       : Audio_item (req_l)
 {
-    on_b_ = on_b;
 }
 
 Midi_item*
 Audio_note::midi_item_p()
 {
-    return new Midi_note( this );
+  return new Midi_note (this);
 }
 
-Audio_tempo::Audio_tempo( int per_minute_4_i )
-       : Audio_item( 0 )
+Audio_tempo::Audio_tempo (int per_minute_4_i)
+       : Audio_item (0)
 {
-    per_minute_4_i_ = per_minute_4_i;
+  per_minute_4_i_ = per_minute_4_i;
 }
 
 Midi_item*
 Audio_tempo::midi_item_p()
 {
-    return new Midi_tempo( this );
+  return new Midi_tempo (this);
 }
 
-Audio_meter::Audio_meter( Request* req_l )
-       : Audio_item( req_l )
+Audio_meter::Audio_meter (Request* req_l)
+       : Audio_item (req_l)
 {
 }
 
 Midi_item*
 Audio_meter::midi_item_p()
 {
-    return new Midi_meter( this );
+  return new Midi_meter (this);
 }
 
-Audio_text::Audio_text( Audio_text::Type type, String text_str )
-       : Audio_item( 0 )
+Audio_text::Audio_text (Audio_text::Type type, String text_str)
+       : Audio_item (0)
 {
        text_str_ = text_str;
        type_ = type;
@@ -79,6 +83,8 @@ Audio_text::Audio_text( Audio_text::Type type, String text_str )
 Midi_item*
 Audio_text::midi_item_p()
 {
-    return new Midi_text( this );
+  return text_str_.length_i() ? new Midi_text(this) : 0;
 }
 
+
+IMPLEMENT_IS_TYPE_B1(Audio_item, Audio_element);