/*
- performer.cc -- declare Performer
+ performer.cc -- implement Performer
- (c) 1996, 1997 Han-Wen Nienhuys <hanwen@stack.nl>
- Jan Nieuwenhuizen <jan@digicash.com>
- */
+ source file of the GNU LilyPond music typesetter
-#if 0
+ (c) 1996--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ Jan Nieuwenhuizen <janneke@gnu.org>
+*/
-#include "lily-proto.hh"
-#include "performer.hh"
-#include "performer-group-performer.hh"
+#include "context.hh"
+#include "performer-group.hh"
+#include "warn.hh"
-IMPLEMENT_STATIC_NAME(Performer);
-IMPLEMENT_IS_TYPE_B(Performer);
-
-Performer::Performer()
+void
+Performer::play_element (Audio_element *p)
{
+ get_daddy_performer ()->play_element (p);
}
-Performer::~Performer()
+int
+Performer::get_tempo () const
{
+ return get_daddy_performer ()->get_tempo ();
}
-bool
-Performer::try_request( Request* req_l );
+Performer_group *
+Performer::get_daddy_performer () const
{
- return daddy_perf_l_->try_request( req_l );
+ return
+ dynamic_cast<Performer_group *> (get_daddy_translator ());
}
-void
-Performer::play_event( Midi_item i )
-{
- daddy_perf_l_->play_event( i );
+void
+Performer::acknowledge_audio_element (Audio_element_info)
+{
}
void
-Performer::print() const
+Performer::create_audio_elements ()
{
-#ifndef NPRINT
- mtor << "\n" << name() << " {";
- do_print();
- mtor << "}";
-#endif
}
+void
+Performer::announce_element (Audio_element_info i)
+{
+ if (!i.origin_trans_)
+ i.origin_trans_ = this;
-#endif
+ get_daddy_performer ()->announce_element (i);
+}