#include "translator.icc"
-using std::map;
-
class Note_spacing_engraver : public Engraver
{
typedef map <Context *, Grob *> Last_spacing_map;
TRANSLATOR_DECLARATIONS (Note_spacing_engraver);
protected:
- DECLARE_ACKNOWLEDGER (rhythmic_grob);
- DECLARE_ACKNOWLEDGER (note_column);
+ void acknowledge_rhythmic_grob (Grob_info);
+ void acknowledge_note_column (Grob_info);
void stop_translation_timestep ();
virtual void finalize ();
virtual void derived_mark () const;
scm_gc_mark (i->first->self_scm ());
}
-Note_spacing_engraver::Note_spacing_engraver ()
+Note_spacing_engraver::Note_spacing_engraver (Context *c)
+ : Engraver (c)
{
spacing_ = 0;
last_spacing_ = 0;
}
-ADD_ACKNOWLEDGER (Note_spacing_engraver, note_column);
-ADD_ACKNOWLEDGER (Note_spacing_engraver, rhythmic_grob);
+
+void
+Note_spacing_engraver::boot ()
+{
+ ADD_ACKNOWLEDGER (Note_spacing_engraver, note_column);
+ ADD_ACKNOWLEDGER (Note_spacing_engraver, rhythmic_grob);
+}
ADD_TRANSLATOR (Note_spacing_engraver,
/* doc */