]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/performer.cc
Issue 5167/6: Changes: show \markup xxx = ... \etc assignments
[lilypond.git] / lily / performer.cc
index 5e15fc53d6c97d737ba27f153212eaa36aa7dfa2..0f8b2e14b1d9b2bdfb78a018a1294907413f0fab 100644 (file)
 /*
-  performer.cc -- declare Performer
+  This file is part of LilyPond, the GNU music typesetter.
 
-  (c) 1996, 1997 Han-Wen Nienhuys <hanwen@stack.nl>
-                 Jan Nieuwenhuizen <jan@digicash.com>
- */
+  Copyright (C) 1996--2015 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  Jan Nieuwenhuizen <janneke@gnu.org>
 
+  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.
 
-#include "performer-group-performer.hh"
-#include "debug.hh"
+  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.
 
+  You should have received a copy of the GNU General Public License
+  along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
+*/
 
-IMPLEMENT_IS_TYPE_B(Performer);
+#include "context.hh"
+#include "performer.hh"
+#include "performer-group.hh"
+#include "warn.hh"
 
-Performer::Performer()
-{
-    daddy_perf_l_ = 0;
-    init_b_ =false;
-}
-
-Performer::~Performer()
+Performer_group *
+Performer::get_daddy_performer () const
 {
+  return
+    dynamic_cast<Performer_group *> (get_daddy_translator ());
 }
 
 void
-Performer::do_print() const
-{
-}
-
-Moment
-Performer::get_mom() const
+Performer::acknowledge_audio_element (Audio_element_info)
 {
-    return daddy_perf_l_->get_mom();
-}
-
-void 
-Performer::play_event( Midi_item* l ) 
-{ 
-    daddy_perf_l_->play_event( l ); 
-}
-
-int
-Performer::get_tempo_i()const
-{
-    return daddy_perf_l_->get_tempo_i();
-}
-
-void
-Performer::print() const
-{
-#ifndef NPRINT
-    mtor << "\n" << name() << " {";
-    do_print();
-    mtor << "}";
-#endif
 }
 
 void
-Performer::process_requests()
+Performer::create_audio_elements ()
 {
 }
 
 void
-Performer::set( Moment )
+Performer::announce_element (Audio_element_info i)
 {
-} 
+  if (!i.origin_trans_)
+    i.origin_trans_ = this;
 
-//<ugh>
-int
-Performer::get_track_i() const
-{
-    return daddy_perf_l_->get_track_i();
-}
-
-void
-Performer::set_track( int& )
-{
-}
-//</ugh>
-
-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()
-{
-    if (!init_b_) { 
-/*     if ( daddy_perf_l_ ) {
-           init_b_ = true;     // ugh. avoid recursion
-           daddy_perf_l_->creation_processing();
-           init_b_ = false;
-       }
-       
-       */
-       do_creation_processing();
-       init_b_ = true;
-    }
-}
-void
-Performer::do_creation_processing()
-{
-}
-
-void
-Performer::do_removal_processing()
-{
+  get_daddy_performer ()->announce_element (i);
 }