X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fperformer.hh;h=70354fdbf2d845f9fe2a571339170b2c0681b43b;hb=014fe25e13112b1e215e2fec5d1a466f6a8ac255;hp=35911605d9b795eddbd992c933246d906aac62a9;hpb=50802c7203c8e4a3eea1d7bf23064d60cd0d3ec7;p=lilypond.git diff --git a/lily/include/performer.hh b/lily/include/performer.hh index 35911605d9..70354fdbf2 100644 --- a/lily/include/performer.hh +++ b/lily/include/performer.hh @@ -1,53 +1,44 @@ /* - performer.hh -- declare Performer + This file is part of LilyPond, the GNU music typesetter. - (c) 1996, 1997 Han-Wen Nienhuys - Jan Nieuwenhuizen - */ + Copyright (C) 1996--2015 Han-Wen Nienhuys + Jan Nieuwenhuizen -#ifndef PERFORMER_HH -#define PERFORMER_HH + 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 "lily-proto.hh" -#include "varray.hh" -#include "request.hh" -#include "score-elem-info.hh" -#include "staff-info.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. -class Performer { - bool init_b_; -public: - DECLARE_MY_RUNTIME_TYPEINFO; - Performer_group_performer* daddy_perf_l_; + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . +*/ - Performer(); - virtual ~Performer(); - - - void print() const; - virtual void process_requests(); +#ifndef PERFORMER_HH +#define PERFORMER_HH - virtual void set( Moment mom ); - // - virtual void set_track( int& track_i_r ); - virtual int get_track_i() const; - // +#include "audio-element-info.hh" +#include "grob-info.hh" +#include "translator.hh" - virtual bool try_request( Request* req_l ); +/* Convert a music definition into an audio representation. + A baseclass. */ +class Performer : public Translator +{ +public: + DECLARE_CLASSNAME (Performer); + friend class Performer_group; + Performer_group *get_daddy_performer () const; - virtual void do_removal_processing(); - void creation_processing(); protected: - virtual void do_creation_processing(); - - virtual bool do_try_request(Request*); - virtual int get_tempo_i() const; - virtual void do_print() const; - virtual Moment get_mom() const; - virtual void play_event( Midi_item* l ); - + virtual void announce_element (Audio_element_info); + virtual void acknowledge_audio_element (Audio_element_info); + virtual void create_audio_elements (); }; -#include "global-performers.hh" +#endif /* PERFORMER_HH */ -#endif // PERFORMER_HH