/*
- 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--2009 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()
+Performer_group *
+Performer::get_daddy_performer () const
{
+ return
+ dynamic_cast<Performer_group *> (get_daddy_translator ());
}
-Performer::~Performer()
+void
+Performer::acknowledge_audio_element (Audio_element_info)
{
}
-bool
-Performer::try_request( Request* req_l );
+void
+Performer::create_audio_elements ()
{
- return daddy_perf_l_->try_request( req_l );
-}
-
-void
-Performer::play_event( Midi_item i )
-{
- daddy_perf_l_->play_event( i );
}
void
-Performer::print() const
+Performer::announce_element (Audio_element_info i)
{
-#ifndef NPRINT
- mtor << "\n" << name() << " {";
- do_print();
- mtor << "}";
-#endif
-}
-
+ if (!i.origin_trans_)
+ i.origin_trans_ = this;
-#endif
+ get_daddy_performer ()->announce_element (i);
+}