]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/horizontal-bracket-engraver.cc
Issue 5062: Redo send_stream_event in type-clean manner
[lilypond.git] / lily / horizontal-bracket-engraver.cc
index 7f14a7ee9bd03b8c4ff81e5af219aa66a0393c2a..6dd34c17855f564989dcf79ccedfa9da3a6f018a 100644 (file)
@@ -28,8 +28,6 @@
 
 #include "translator.icc"
 
-using std::vector;
-
 class Horizontal_bracket_engraver : public Engraver
 {
 public:
@@ -41,17 +39,17 @@ public:
 
   void stop_translation_timestep ();
   void process_music ();
-  DECLARE_ACKNOWLEDGER (note_column);
-  DECLARE_TRANSLATOR_LISTENER (note_grouping);
+  void acknowledge_note_column (Grob_info);
+  void listen_note_grouping (Stream_event *);
 };
 
-Horizontal_bracket_engraver::Horizontal_bracket_engraver ()
+Horizontal_bracket_engraver::Horizontal_bracket_engraver (Context *c)
+  : Engraver (c)
 {
   pop_count_ = 0;
   push_count_ = 0;
 }
 
-IMPLEMENT_TRANSLATOR_LISTENER (Horizontal_bracket_engraver, note_grouping);
 void
 Horizontal_bracket_engraver::listen_note_grouping (Stream_event *ev)
 {
@@ -111,7 +109,13 @@ Horizontal_bracket_engraver::stop_translation_timestep ()
   events_.clear ();
 }
 
-ADD_ACKNOWLEDGER (Horizontal_bracket_engraver, note_column);
+void
+Horizontal_bracket_engraver::boot ()
+{
+  ADD_LISTENER (Horizontal_bracket_engraver, note_grouping);
+  ADD_ACKNOWLEDGER (Horizontal_bracket_engraver, note_column);
+}
+
 ADD_TRANSLATOR (Horizontal_bracket_engraver,
                 /* doc */
                 "Create horizontal brackets over notes for musical analysis"