]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/performer.cc
Doc-es: various updates.
[lilypond.git] / lily / performer.cc
index c1d84ca83b380be89a93bda7be1604105e855b02..0f8b2e14b1d9b2bdfb78a018a1294907413f0fab 100644 (file)
@@ -1,91 +1,50 @@
 /*
-  performer.cc -- implement Performer
+  This file is part of LilyPond, the GNU music typesetter.
 
-  source file of the GNU LilyPond music typesetter
+  Copyright (C) 1996--2015 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  Jan Nieuwenhuizen <janneke@gnu.org>
 
-  (c) 1996, 1997 Han-Wen Nienhuys <hanwen@stack.nl>
-                 Jan Nieuwenhuizen <jan@digicash.com>
- */
+  LilyPond is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
 
+  LilyPond is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
 
-#include "performer-group-performer.hh"
-#include "debug.hh"
+  You should have received a copy of the GNU General Public License
+  along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
+*/
 
+#include "context.hh"
+#include "performer.hh"
+#include "performer-group.hh"
+#include "warn.hh"
 
-IMPLEMENT_IS_TYPE_B(Performer);
-
-Performer::Performer()
-{
-    daddy_perf_l_ = 0;
-    init_b_ =false;
-}
-
-Performer::~Performer()
-{
-}
-
-void
-Performer::do_print() const
-{
-}
-
-void 
-Performer::play( Audio_element* p ) 
-{ 
-    daddy_perf_l_->play( p ); 
-}
-
-int
-Performer::get_tempo_i()const
+Performer_group *
+Performer::get_daddy_performer () const
 {
-    return daddy_perf_l_->get_tempo_i();
+  return
+    dynamic_cast<Performer_group *> (get_daddy_translator ());
 }
 
 void
-Performer::print() const
+Performer::acknowledge_audio_element (Audio_element_info)
 {
-#ifndef NPRINT
-    mtor << "\n" << name() << " {";
-    do_print();
-    mtor << "}";
-#endif
 }
 
 void
-Performer::process_requests()
+Performer::create_audio_elements ()
 {
 }
 
-bool 
-Performer::do_try_request( Request* req_l )
-{
-    return false;
-}
-
-bool
-Performer::try_request(Request*r)
-{
-    if (!init_b_) { 
-       creation_processing();
-    }
-    return do_try_request(r);
-}
-
 void
-Performer::creation_processing()
+Performer::announce_element (Audio_element_info i)
 {
-    if (!init_b_) { 
-       do_creation_processing();
-       init_b_ = true;
-    }
-}
+  if (!i.origin_trans_)
+    i.origin_trans_ = this;
 
-void
-Performer::do_creation_processing()
-{
-}
-
-void
-Performer::do_removal_processing()
-{
+  get_daddy_performer ()->announce_element (i);
 }