X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fscore-performer.hh;h=d7dc38bb8c3179348989b9318cf3354bb6caf11d;hb=7e72a1e50e94a7f9738d62599de79fe7745f600c;hp=b4030800b49443dc7e1a7ee221be4c35733e6c59;hpb=bdabe71a2bdda41b64c0000da6023771701f4def;p=lilypond.git diff --git a/lily/include/score-performer.hh b/lily/include/score-performer.hh index b4030800b4..d7dc38bb8c 100644 --- a/lily/include/score-performer.hh +++ b/lily/include/score-performer.hh @@ -1,8 +1,8 @@ /* score-performer.hh -- declare Score_performer - (c) 1996, 1997 Han-Wen Nienhuys - Jan Nieuwenhuizen + (c) 1996--2004 Han-Wen Nienhuys + Jan Nieuwenhuizen */ #ifndef SCORE_PERFORMER_HH @@ -11,38 +11,32 @@ #include "performer-group-performer.hh" #include "global-translator.hh" +/** + Top level performer. Completely takes care of MIDI output + */ class Score_performer: - public Performer_group_performer, public Global_translator + public Performer_group_performer, public Global_translator { public: - DECLARE_MY_RUNTIME_TYPEINFO; - Score_performer(); - ~Score_performer(); + TRANSLATOR_DECLARATIONS(Score_performer); + ~Score_performer (); + Performance *performance_; protected: - virtual Translator* ancestor_l( int l ); - virtual int depth_i() const; - - virtual void finish(); - virtual Moment get_mom() const; - virtual void prepare( Moment mom ); - virtual void process(); - virtual void set_score( Score* score_l ); - virtual void start(); - virtual int get_tempo_i() const; - virtual void play(Audio_item*); - virtual void play(Midi_item*); + virtual void finish (); + virtual void prepare (Moment mom); + virtual void one_time_step (); + virtual void start (); + virtual void initialize (); + virtual void announce_element (Audio_element_info); + virtual int get_tempo () const; + virtual void play_element (Audio_element* p); + virtual Music_output *get_output (); private: - void header(Midi_stream&); - - Midi_def* midi_l_; - - Moment prev_mom_; - Moment now_mom_; - Audio_column* audio_column_l_; + void header (Midi_stream&); - Link_array midi_item_l_arr_; + Audio_column* audio_column_; }; #endif // SCORE_PERFORMER_HH