protected:
virtual void initialize ();
virtual void finalize ();
- DECLARE_TRANSLATOR_LISTENER (sustain);
- DECLARE_TRANSLATOR_LISTENER (una_corda);
- DECLARE_TRANSLATOR_LISTENER (sostenuto);
+ void listen_sustain (Stream_event *);
+ void listen_una_corda (Stream_event *);
+ void listen_sostenuto (Stream_event *);
void stop_translation_timestep ();
void process_music ();
ADD_SCM_INIT_FUNC (Piano_pedal_engraver_init_pedal_types_, init_pedal_types);
-Piano_pedal_engraver::Piano_pedal_engraver ()
+Piano_pedal_engraver::Piano_pedal_engraver (Context *c)
+ : Engraver (c)
{
}
info_list_[NUM_PEDAL_TYPES].type_ = 0;
}
-IMPLEMENT_TRANSLATOR_LISTENER (Piano_pedal_engraver, sostenuto);
void
Piano_pedal_engraver::listen_sostenuto (Stream_event *ev)
{
ASSIGN_EVENT_ONCE (info_list_[SOSTENUTO].event_drul_[d], ev);
}
-IMPLEMENT_TRANSLATOR_LISTENER (Piano_pedal_engraver, sustain);
void
Piano_pedal_engraver::listen_sustain (Stream_event *ev)
{
ASSIGN_EVENT_ONCE (info_list_[SUSTAIN].event_drul_[d], ev);
}
-IMPLEMENT_TRANSLATOR_LISTENER (Piano_pedal_engraver, una_corda);
void
Piano_pedal_engraver::listen_una_corda (Stream_event *ev)
{
}
}
+void
+Piano_pedal_engraver::boot ()
+{
+ ADD_LISTENER (Piano_pedal_engraver, sostenuto);
+ ADD_LISTENER (Piano_pedal_engraver, sustain);
+ ADD_LISTENER (Piano_pedal_engraver, una_corda);
+}
+
ADD_TRANSLATOR (Piano_pedal_engraver,
/* doc */
"Engrave piano pedal symbols and brackets.",