2 score-performer.hh -- declare Score_performer
4 (c) 1996--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
5 Jan Nieuwenhuizen <janneke@gnu.org>
8 #ifndef SCORE_PERFORMER_HH
9 #define SCORE_PERFORMER_HH
12 #include "performer-group.hh"
13 #include "score-translator.hh"
16 Top level performer. Completely takes care of MIDI output
18 class Score_performer : public Score_translator,
19 public virtual Performer_group
22 VIRTUAL_COPY_CONSTRUCTOR (Translator_group, Score_performer);
24 Performance *performance_;
28 DECLARE_LISTENER (finish);
29 DECLARE_LISTENER (prepare);
30 DECLARE_LISTENER (one_time_step);
32 /* Engraver_group_engraver interface */
33 virtual void connect_to_context (Context *);
34 virtual void disconnect_from_context ();
35 virtual void initialize ();
36 virtual void announce_element (Audio_element_info);
37 virtual int get_tempo () const;
38 virtual void play_element (Audio_element *p);
39 virtual SCM get_output ();
40 virtual void derived_mark () const;
42 void header (Midi_stream &);
44 Audio_column *audio_column_;
46 Moment skip_start_mom_;
50 #endif // SCORE_PERFORMER_HH