]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/performer.cc
* lily/spacing-engraver.cc (finalize): robustifications.
[lilypond.git] / lily / performer.cc
index c1d84ca83b380be89a93bda7be1604105e855b02..6a949311a1255046eb20922743047d2d4c199c6e 100644 (file)
@@ -3,89 +3,49 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1996, 1997 Han-Wen Nienhuys <hanwen@stack.nl>
-                 Jan Nieuwenhuizen <jan@digicash.com>
+  (c) 1996--2003 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+               Jan Nieuwenhuizen <janneke@gnu.org>
  */
 
 
 #include "performer-group-performer.hh"
-#include "debug.hh"
-
-
-IMPLEMENT_IS_TYPE_B(Performer);
-
-Performer::Performer()
-{
-    daddy_perf_l_ = 0;
-    init_b_ =false;
-}
-
-Performer::~Performer()
-{
-}
-
-void
-Performer::do_print() const
-{
-}
+#include "warn.hh"
 
 void 
-Performer::play( Audio_element* p 
+Performer::play_element (Audio_element* p
 { 
-    daddy_perf_l_->play( p ); 
+  get_daddy_perf ()->play_element (p); 
 }
 
 int
-Performer::get_tempo_i()const
+Performer::get_tempo () const
 {
-    return daddy_perf_l_->get_tempo_i();
+  return get_daddy_perf ()->get_tempo ();
 }
 
-void
-Performer::print() const
+Performer_group_performer*
+Performer::get_daddy_perf () const
 {
-#ifndef NPRINT
-    mtor << "\n" << name() << " {";
-    do_print();
-    mtor << "}";
-#endif
+  return (daddy_trans_) 
+    ?dynamic_cast<Performer_group_performer *> (daddy_trans_)
+    : 0;
 }
 
 void
-Performer::process_requests()
-{
-}
-
-bool 
-Performer::do_try_request( Request* req_l )
+Performer::acknowledge_audio_element (Audio_element_info)
 {
-    return false;
-}
-
-bool
-Performer::try_request(Request*r)
-{
-    if (!init_b_) { 
-       creation_processing();
-    }
-    return do_try_request(r);
 }
 
 void
-Performer::creation_processing()
+Performer::create_audio_elements ()
 {
-    if (!init_b_) { 
-       do_creation_processing();
-       init_b_ = true;
-    }
 }
 
-void
-Performer::do_creation_processing()
-{
-}
 
 void
-Performer::do_removal_processing()
+Performer::announce_element (Audio_element_info i)
 {
+  if (!i.origin_trans_)
+    i.origin_trans_= this;
+  get_daddy_perf ()->announce_element (i);
 }