X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fligature-engraver.hh;h=f74cf6b6cedfcc2c7ac42a341f45ff442468b6f3;hb=5b4b0d6e9a197e8f9eb085b7c2ad78b8be3e5cfc;hp=137d94688ccdb487f89973e603bf4a7627775164;hpb=2745cbd907f8216a4cc1fc5f488ae19efdfdbd10;p=lilypond.git diff --git a/lily/include/ligature-engraver.hh b/lily/include/ligature-engraver.hh index 137d94688c..f74cf6b6ce 100644 --- a/lily/include/ligature-engraver.hh +++ b/lily/include/ligature-engraver.hh @@ -1,51 +1,53 @@ -/* +/* ligature-engraver.hh -- declare Ligature_engraver - + source file of the GNU LilyPond music typesetter - - (c) 2002--2003 Juergen Reuter - - */ + + (c) 2002--2008 Juergen Reuter +*/ + #ifndef LIGATURE_ENGRAVER_HH #define LIGATURE_ENGRAVER_HH #include "engraver.hh" +#include "moment.hh" class Ligature_engraver : public Engraver { protected: - virtual void stop_translation_timestep (); - virtual void start_translation_timestep (); + Ligature_engraver (); + void stop_translation_timestep (); virtual void finalize (); - virtual void acknowledge_grob (Grob_info); - virtual bool try_music (Music*); - virtual void process_music (); - virtual Spanner *create_ligature_spanner (); /* abstract method */ + DECLARE_ACKNOWLEDGER (rest); + DECLARE_ACKNOWLEDGER (note_head); + virtual void listen_ligature (Stream_event *ev); + void process_music (); + virtual Spanner *create_ligature_spanner () = 0; virtual void typeset_ligature (Spanner *ligature, - Array primitives); /* abstract method */ + vector primitives) = 0; virtual Spanner *current_ligature (); SCM brew_ligature_primitive_proc; public: - TRANSLATOR_DECLARATIONS(Ligature_engraver); + // no TRANSLATOR_DECLARATIONS (Ligature_engraver) needed since this + // class is abstract private: - Drul_array reqs_drul_; - + Drul_array events_drul_; + Spanner *ligature_; - Array primitives_; + vector primitives_; Spanner *finished_ligature_; - Array finished_primitives_; + vector finished_primitives_; - Music *prev_start_req_; + Stream_event *prev_start_event_; // moment where ligature started. Moment ligature_start_mom_; Grob *last_bound_; - }; #endif // LIGATURE_ENGRAVER_HH