--- /dev/null
+/*
+ audio-column.cc -- implement Audio_column
+
+ source file of the GNU LilyPond music typesetter
+
+ (c) 1997 Jan Nieuwenhuizen <jan@digicash.com>
+ */
+
+#include "audio-column.hh"
+#include "audio-item.hh"
+#include "audio-score.hh"
+
+#include "debug.hh"
+
+Audio_column::Audio_column( Moment at_mom )
+{
+ at_mom_ = at_mom;
+ audio_score_l_ = 0;
+}
+
+void
+Audio_column::add( Audio_item* l )
+{
+ audio_item_l_list_.bottom().add( l );
+ l->audio_column_l_ = this;
+}
+
+Moment
+Audio_column::at_mom() const
+{
+ return at_mom_;
+}
+
+void
+Audio_column::print() const
+{
+#ifndef NPRINT
+ mtor << "Audio_column {";
+ mtor << "at: " << at_mom_ << "\n";
+ mtor << "}\n";
+#endif
+}
+
/*
- global-translators.cc -- implement
+ global-performers.cc -- implement
source file of the GNU LilyPond music typesetter
--- /dev/null
+/*
+ audio-column.hh -- declare Audio_column
+
+ (c) 1997 Jan Nieuwenhuizen <jan@digicash.com>
+ */
+
+#ifndef AUDIO_COLUMN_HH
+#define AUDIO_COLUMN_HH
+
+#include "proto.hh"
+#include "plist.hh"
+#include "lily-proto.hh"
+#include "moment.hh"
+
+
+/**
+ generic audio grouped vertically.
+ */
+
+class Audio_column {
+public:
+ Audio_column( Moment at_mom );
+
+ void add( Audio_item* i_l );
+ Moment at_mom() const;
+ void print() const;
+
+ Link_list<Audio_item *> audio_item_l_list_;
+ Audio_score * audio_score_l_;
+
+private:
+ Audio_column( Audio_column const& );
+
+ Moment at_mom_;
+};
+
+
+#endif // AUDIO_COLUMN_HH
#include "key-performer.hh"
#include "command-request.hh"
-#include "midi-item.hh"
+#include "audio-item.hh"
void
Key_performer::process_requests()
{
- if ( key_req_l_ ) {
- int sharps_i = key_req_l_->sharps_i();
- int flats_i = key_req_l_->flats_i();
- // midi cannot handle non-conventional keys
- if ( !( flats_i && sharps_i ) ) {
- Midi_key k( sharps_i - flats_i, key_req_l_->minor_b() );
- play_event( &k );
- }
- key_req_l_ = 0;
- }
+ if ( key_req_l_ )
+ play( new Audio_key( key_req_l_ ) );
+ key_req_l_ = 0;
}
bool
#include "lyric-performer.hh"
#include "text-def.hh"
#include "musical-request.hh"
-#include "midi-item.hh"
+#include "audio-item.hh"
void
Lyric_performer::process_requests()
{
- if ( lreq_arr_.size() ) {
- Midi_text t( Midi_text::LYRIC, lreq_arr_[ 0 ]->tdef_p_->text_str_ );
- play_event( &t );
- }
-
+ if ( lreq_arr_.size() )
+ play( new Audio_text( Audio_text::LYRIC, lreq_arr_[ 0 ]->tdef_p_->text_str_ ) );
lreq_arr_.clear();
}
#include "meter-performer.hh"
#include "command-request.hh"
-#include "midi-item.hh"
+#include "audio-item.hh"
IMPLEMENT_IS_TYPE_B1(Meter_performer,Performer);
ADD_THIS_PERFORMER(Meter_performer);
void
Meter_performer::process_requests()
{
- if ( meter_req_l_ ) {
- Midi_time m( meter_req_l_->beats_i_, meter_req_l_->one_beat_i_, 18 );
- play_event( &m );
- meter_req_l_ = 0;
- }
+ if ( meter_req_l_ )
+ play( new Audio_meter( meter_req_l_ ) );
+ meter_req_l_ = 0;
}
bool