]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/performer.cc
Fix some bugs in the dynamic engraver and PostScript backend
[lilypond.git] / lily / performer.cc
index ad2f9805ed00e7057ba77f7d6df497e0c3f3eb17..af896f23dd9ee60938e1337d9bac9b1cb5dc082e 100644 (file)
@@ -3,91 +3,48 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1996, 1997 Han-Wen Nienhuys <hanwen@stack.nl>
-               Jan Nieuwenhuizen <jan@digicash.com>
- */
+  (c) 1996--2006 Han-Wen Nienhuys <hanwen@xs4all.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()
-{
-}
+#include "context.hh"
+#include "performer-group.hh"
+#include "warn.hh"
 
 void
-Performer::do_print() const
+Performer::play_element (Audio_element *p)
 {
-}
-
-void 
-Performer::play (Audio_element* p) 
-{ 
-  daddy_perf_l_->play (p); 
+  get_daddy_performer ()->play_element (p);
 }
 
 int
-Performer::get_tempo_i()const
+Performer::get_tempo () const
 {
-  return daddy_perf_l_->get_tempo_i();
+  return get_daddy_performer ()->get_tempo ();
 }
 
-void
-Performer::print() const
+Performer_group *
+Performer::get_daddy_performer () const
 {
-#ifndef NPRINT
-  DOUT << "\n" << name() << " {";
-  do_print();
-  DOUT << "}";
-#endif
+  return
+    dynamic_cast<Performer_group *> (get_daddy_translator ());
 }
 
 void
-Performer::process_requests()
-{
-}
-
-bool 
-Performer::do_try_request (Request* req_l)
-{
-  return false;
-}
-
-bool
-Performer::try_request (Request*r)
+Performer::acknowledge_audio_element (Audio_element_info)
 {
-  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()
+Performer::announce_element (Audio_element_info i)
 {
-}
+  if (!i.origin_trans_)
+    i.origin_trans_ = this;
 
-void
-Performer::do_removal_processing()
-{
+  get_daddy_performer ()->announce_element (i);
 }