From: David Kastrup Date: Fri, 17 Jun 2016 14:23:09 +0000 (+0200) Subject: Issue 4899/3: Revert "Issue 4885/2: Let ADD_ACKNOWLEDGER state actual classes" X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=ffc7faa048d5c54c1c38024b80212f5f789a4361;p=lilypond.git Issue 4899/3: Revert "Issue 4885/2: Let ADD_ACKNOWLEDGER state actual classes" This reverts commit 7c36dbb1834c7c68e4b94777241de3ea02971aca. --- diff --git a/lily/auto-beam-engraver.cc b/lily/auto-beam-engraver.cc index a7a92d9d6d..3f03362b3b 100644 --- a/lily/auto-beam-engraver.cc +++ b/lily/auto-beam-engraver.cc @@ -45,7 +45,6 @@ protected: virtual void finalize (); virtual void derived_mark () const; -public: void acknowledge_rest (Grob_info); void acknowledge_beam (Grob_info); void acknowledge_bar_line (Grob_info); @@ -639,12 +638,12 @@ Grace_auto_beam_engraver::test_moment (Direction dir, Moment test_mom, Moment) void Grace_auto_beam_engraver::boot () { - ADD_LISTENER (Auto_beam_engraver, beam_forbid); - ADD_ACKNOWLEDGER (Auto_beam_engraver, stem); - ADD_ACKNOWLEDGER (Auto_beam_engraver, bar_line); - ADD_ACKNOWLEDGER (Auto_beam_engraver, beam); - ADD_ACKNOWLEDGER (Auto_beam_engraver, breathing_sign); - ADD_ACKNOWLEDGER (Auto_beam_engraver, rest); + ADD_LISTENER (Grace_auto_beam_engraver, beam_forbid); + ADD_ACKNOWLEDGER (Grace_auto_beam_engraver, stem); + ADD_ACKNOWLEDGER (Grace_auto_beam_engraver, bar_line); + ADD_ACKNOWLEDGER (Grace_auto_beam_engraver, beam); + ADD_ACKNOWLEDGER (Grace_auto_beam_engraver, breathing_sign); + ADD_ACKNOWLEDGER (Grace_auto_beam_engraver, rest); } ADD_TRANSLATOR (Grace_auto_beam_engraver, diff --git a/lily/beam-engraver.cc b/lily/beam-engraver.cc index a82dfe8757..9b4df64d9c 100644 --- a/lily/beam-engraver.cc +++ b/lily/beam-engraver.cc @@ -370,9 +370,9 @@ Grace_beam_engraver::valid_end_point () void Grace_beam_engraver::boot () { - ADD_LISTENER (Beam_engraver, beam); - ADD_ACKNOWLEDGER (Beam_engraver, stem); - ADD_ACKNOWLEDGER (Beam_engraver, rest); + ADD_LISTENER (Grace_beam_engraver, beam); + ADD_ACKNOWLEDGER (Grace_beam_engraver, stem); + ADD_ACKNOWLEDGER (Grace_beam_engraver, rest); } ADD_TRANSLATOR (Grace_beam_engraver, diff --git a/lily/include/gregorian-ligature-engraver.hh b/lily/include/gregorian-ligature-engraver.hh index d7011bda99..e1adc3c643 100644 --- a/lily/include/gregorian-ligature-engraver.hh +++ b/lily/include/gregorian-ligature-engraver.hh @@ -26,7 +26,6 @@ class Gregorian_ligature_engraver : public Coherent_ligature_engraver Stream_event *pes_or_flexa_req_; public: - void listen_pes_or_flexa (Stream_event *ev); // no TRANSLATOR_DECLARATIONS (Gregorian_ligature_engraver) needed // since this class is abstract @@ -35,6 +34,7 @@ public: protected: Gregorian_ligature_engraver (); + virtual void listen_pes_or_flexa (Stream_event *ev); virtual void build_ligature (Spanner *ligature, vector const &primitives); virtual void transform_heads (Spanner *ligature, diff --git a/lily/include/ligature-engraver.hh b/lily/include/ligature-engraver.hh index 1f8fd8b85f..726496e91f 100644 --- a/lily/include/ligature-engraver.hh +++ b/lily/include/ligature-engraver.hh @@ -30,6 +30,9 @@ protected: void stop_translation_timestep (); virtual void finalize (); + void acknowledge_rest (Grob_info); + void acknowledge_ligature_head (Grob_info); + virtual void listen_ligature (Stream_event *ev); void process_music (); virtual Spanner *create_ligature_spanner () = 0; virtual void typeset_ligature (Spanner *ligature, @@ -38,9 +41,6 @@ protected: SCM brew_ligature_primitive_proc; public: - void acknowledge_rest (Grob_info); - void acknowledge_ligature_head (Grob_info); - void listen_ligature (Stream_event *ev); // no TRANSLATOR_DECLARATIONS (Ligature_engraver) needed since this // class is abstract DECLARE_TRANSLATOR_CALLBACKS (Ligature_engraver); diff --git a/lily/include/slur-proto-engraver.hh b/lily/include/slur-proto-engraver.hh index 97ed1a6637..61aef237e4 100644 --- a/lily/include/slur-proto-engraver.hh +++ b/lily/include/slur-proto-engraver.hh @@ -54,19 +54,6 @@ protected: const char* event_name_; virtual SCM event_symbol () = 0; - void acknowledge_extra_object (Grob_info); - void stop_translation_timestep (); - void process_music (); - - bool can_create_slur (const string&, vsize, vsize *, Stream_event *); - void create_slur (const string &spanner_id, Event_info evi, Grob *g_cause, Direction dir, bool left_broken); - bool try_to_end (Event_info evi); - - virtual void set_melisma (bool); - virtual void finalize (); - virtual void derived_mark () const; - -public: void acknowledge_inline_accidental (Grob_info); void acknowledge_fingering (Grob_info); void acknowledge_note_column (Grob_info); @@ -75,11 +62,25 @@ public: void acknowledge_text_script (Grob_info); void acknowledge_end_tie (Grob_info); void acknowledge_tuplet_number (Grob_info); + void listen_note (Stream_event *ev); void listen_slur (Stream_event *ev, Stream_event *note); // You'd think the following is the same as defaulting `note' to 0, // but template resolution for trampolines disagrees. Huh. void listen_slur (Stream_event *ev) { listen_slur (ev, 0); } + void acknowledge_extra_object (Grob_info); + void stop_translation_timestep (); + void process_music (); + + bool can_create_slur (const string&, vsize, vsize *, Stream_event *); + void create_slur (const string &spanner_id, Event_info evi, Grob *g_cause, Direction dir, bool left_broken); + bool try_to_end (Event_info evi); + + virtual void set_melisma (bool); + virtual void finalize (); + virtual void derived_mark () const; + +public: // no TRANSLATOR_DECLARATIONS (Slur_proto_engraver) needed since this // class is abstract DECLARE_TRANSLATOR_CALLBACKS (Slur_proto_engraver); diff --git a/lily/kievan-ligature-engraver.cc b/lily/kievan-ligature-engraver.cc index cdb51de3ad..ff9e7b942b 100644 --- a/lily/kievan-ligature-engraver.cc +++ b/lily/kievan-ligature-engraver.cc @@ -132,9 +132,9 @@ Kievan_ligature_engraver::build_ligature (Spanner *ligature, void Kievan_ligature_engraver::boot () { - ADD_LISTENER (Ligature_engraver, ligature); - ADD_ACKNOWLEDGER (Ligature_engraver, rest); - ADD_ACKNOWLEDGER (Ligature_engraver, ligature_head); + ADD_LISTENER (Kievan_ligature_engraver, ligature); + ADD_ACKNOWLEDGER (Kievan_ligature_engraver, rest); + ADD_ACKNOWLEDGER (Kievan_ligature_engraver, ligature_head); } ADD_TRANSLATOR (Kievan_ligature_engraver, diff --git a/lily/mensural-ligature-engraver.cc b/lily/mensural-ligature-engraver.cc index 41652a1006..874b2ebb35 100644 --- a/lily/mensural-ligature-engraver.cc +++ b/lily/mensural-ligature-engraver.cc @@ -492,9 +492,9 @@ Mensural_ligature_engraver::build_ligature (Spanner *ligature, void Mensural_ligature_engraver::boot () { - ADD_LISTENER (Ligature_engraver, ligature); - ADD_ACKNOWLEDGER (Ligature_engraver, rest); - ADD_ACKNOWLEDGER (Ligature_engraver, ligature_head); + ADD_LISTENER (Mensural_ligature_engraver, ligature); + ADD_ACKNOWLEDGER (Mensural_ligature_engraver, rest); + ADD_ACKNOWLEDGER (Mensural_ligature_engraver, ligature_head); } ADD_TRANSLATOR (Mensural_ligature_engraver, diff --git a/lily/phrasing-slur-engraver.cc b/lily/phrasing-slur-engraver.cc index ee7a96a2d7..fa402ef48a 100644 --- a/lily/phrasing-slur-engraver.cc +++ b/lily/phrasing-slur-engraver.cc @@ -72,16 +72,16 @@ void Phrasing_slur_engraver::boot () { ADD_LISTENER (Phrasing_slur_engraver, phrasing_slur); - ADD_LISTENER (Slur_proto_engraver, note); - ADD_ACKNOWLEDGER (Slur_proto_engraver, inline_accidental); - ADD_ACKNOWLEDGER (Slur_proto_engraver, fingering); - ADD_ACKNOWLEDGER (Slur_proto_engraver, note_column); + ADD_LISTENER (Phrasing_slur_engraver, note); + ADD_ACKNOWLEDGER (Phrasing_slur_engraver, inline_accidental); + ADD_ACKNOWLEDGER (Phrasing_slur_engraver, fingering); + ADD_ACKNOWLEDGER (Phrasing_slur_engraver, note_column); ADD_ACKNOWLEDGER (Phrasing_slur_engraver, slur); - ADD_ACKNOWLEDGER (Slur_proto_engraver, script); - ADD_ACKNOWLEDGER (Slur_proto_engraver, dots); - ADD_ACKNOWLEDGER (Slur_proto_engraver, text_script); - ADD_END_ACKNOWLEDGER (Slur_proto_engraver, tie); - ADD_ACKNOWLEDGER (Slur_proto_engraver, tuplet_number); + ADD_ACKNOWLEDGER (Phrasing_slur_engraver, script); + ADD_ACKNOWLEDGER (Phrasing_slur_engraver, dots); + ADD_ACKNOWLEDGER (Phrasing_slur_engraver, text_script); + ADD_END_ACKNOWLEDGER (Phrasing_slur_engraver, tie); + ADD_ACKNOWLEDGER (Phrasing_slur_engraver, tuplet_number); } ADD_TRANSLATOR (Phrasing_slur_engraver, diff --git a/lily/slur-engraver.cc b/lily/slur-engraver.cc index 2ea4595fc1..c0c783f3a0 100644 --- a/lily/slur-engraver.cc +++ b/lily/slur-engraver.cc @@ -62,16 +62,16 @@ Slur_engraver::set_melisma (bool m) void Slur_engraver::boot () { - ADD_LISTENER (Slur_proto_engraver, slur); - ADD_LISTENER (Slur_proto_engraver, note); - ADD_ACKNOWLEDGER (Slur_proto_engraver, inline_accidental); - ADD_ACKNOWLEDGER (Slur_proto_engraver, fingering); - ADD_ACKNOWLEDGER (Slur_proto_engraver, note_column); - ADD_ACKNOWLEDGER (Slur_proto_engraver, script); - ADD_ACKNOWLEDGER (Slur_proto_engraver, text_script); - ADD_ACKNOWLEDGER (Slur_proto_engraver, dots); - ADD_END_ACKNOWLEDGER (Slur_proto_engraver, tie); - ADD_ACKNOWLEDGER (Slur_proto_engraver, tuplet_number); + ADD_LISTENER (Slur_engraver, slur); + ADD_LISTENER (Slur_engraver, note); + ADD_ACKNOWLEDGER (Slur_engraver, inline_accidental); + ADD_ACKNOWLEDGER (Slur_engraver, fingering); + ADD_ACKNOWLEDGER (Slur_engraver, note_column); + ADD_ACKNOWLEDGER (Slur_engraver, script); + ADD_ACKNOWLEDGER (Slur_engraver, text_script); + ADD_ACKNOWLEDGER (Slur_engraver, dots); + ADD_END_ACKNOWLEDGER (Slur_engraver, tie); + ADD_ACKNOWLEDGER (Slur_engraver, tuplet_number); } ADD_TRANSLATOR (Slur_engraver, diff --git a/lily/vaticana-ligature-engraver.cc b/lily/vaticana-ligature-engraver.cc index ddd1386872..6c34e9eb61 100644 --- a/lily/vaticana-ligature-engraver.cc +++ b/lily/vaticana-ligature-engraver.cc @@ -728,10 +728,10 @@ Vaticana_ligature_engraver::transform_heads (Spanner *ligature, void Vaticana_ligature_engraver::boot () { - ADD_LISTENER (Gregorian_ligature_engraver, pes_or_flexa); - ADD_LISTENER (Ligature_engraver, ligature); - ADD_ACKNOWLEDGER (Ligature_engraver, rest); - ADD_ACKNOWLEDGER (Ligature_engraver, ligature_head); + ADD_LISTENER (Vaticana_ligature_engraver, pes_or_flexa); + ADD_LISTENER (Vaticana_ligature_engraver, ligature); + ADD_ACKNOWLEDGER (Vaticana_ligature_engraver, rest); + ADD_ACKNOWLEDGER (Vaticana_ligature_engraver, ligature_head); } ADD_TRANSLATOR (Vaticana_ligature_engraver,