]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/score-performer.hh
Fix some bugs in the dynamic engraver and PostScript backend
[lilypond.git] / lily / include / score-performer.hh
index 929853bba0d59baffb51d1d69107c94b5bf5b693..e38f430c62ed679415addf4cb6f5020876d1225f 100644 (file)
@@ -8,33 +8,31 @@
 #ifndef SCORE_PERFORMER_HH
 #define SCORE_PERFORMER_HH
 
-#include "moment.hh"
 #include "performer-group.hh"
+#include "score-translator.hh"
 
 /**
    Top level performer. Completely takes care of MIDI output
 */
-class Score_performer : public Performer_group
+class Score_performer : public Score_translator,
+                       public virtual Performer_group
 {
 public:
   VIRTUAL_COPY_CONSTRUCTOR (Translator_group, Score_performer);
+  ~Score_performer ();
   Performance *performance_;
 
-  ~Score_performer ();
   Score_performer ();
-
 protected:
-  DECLARE_LISTENER (finish);
-  DECLARE_LISTENER (prepare);
-  DECLARE_LISTENER (one_time_step);
-
-  /* Engraver_group_engraver interface */
-  virtual void connect_to_context (Context *);
-  virtual void disconnect_from_context ();
+  virtual void prepare (Moment mom);
+  virtual void finish ();
+  virtual void one_time_step ();
   virtual void initialize ();
   virtual void announce_element (Audio_element_info);
+  virtual int get_tempo () const;
+  virtual void play_element (Audio_element *p);
+  virtual SCM get_output ();
   virtual void derived_mark () const;
-  virtual void acknowledge_audio_elements ();
 private:
   void header (Midi_stream &);