source file of the GNU LilyPond music typesetter
- (c) 1997 Jan Nieuwenhuizen <jan@digicash.com>
+ (c) 1997--1998 Jan Nieuwenhuizen <janneke@gnu.org>
*/
-
+#include "debug.hh"
#include "audio-item.hh"
#include "midi-item.hh"
+#include "request.hh"
+#include "audio-column.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;
}
+IMPLEMENT_IS_TYPE_B1(Audio_instrument, Audio_item);
-Audio_key::Audio_key( Request* req_l )
- : Audio_item( req_l )
+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)
{
}
Midi_item*
Audio_key::midi_item_p()
{
- return new Midi_key( this );
+ return new Midi_key (this);
}
+IMPLEMENT_IS_TYPE_B1 (Audio_key, Audio_item);
-
-Audio_note::Audio_note( Request* req_l, bool on_b )
- : Audio_item( req_l )
+Audio_note::Audio_note (Request* req_l, int transposing_i)
+ : Audio_item (req_l)
{
- on_b_ = on_b;
+ transposing_i_ = transposing_i;
}
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 )
+IMPLEMENT_IS_TYPE_B1(Audio_note, Audio_item);
+
+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 )
+IMPLEMENT_IS_TYPE_B1(Audio_tempo, Audio_item);
+
+Audio_time_signature::Audio_time_signature (Request* req_l)
+ : Audio_item (req_l)
{
}
Midi_item*
-Audio_meter::midi_item_p()
+Audio_time_signature::midi_item_p()
{
- return new Midi_meter( this );
+ return new Midi_time_signature (this);
}
+IMPLEMENT_IS_TYPE_B1(Audio_time_signature, Audio_item);
-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;
+ text_str_ = text_str;
+ type_ = type;
}
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_text, Audio_item);
+
+IMPLEMENT_IS_TYPE_B1(Audio_item, Audio_element);
+
+void
+Audio_item::do_print () const
+{
+#ifndef NPRINT
+ if (audio_column_l_)
+ {
+ DOUT << "at: "<< audio_column_l_->at_mom ();
+ }
+ if (req_l_)
+ {
+ DOUT << "from: ";
+ req_l_->print ();
+ }
+#endif
}