#include "event.hh"
#include "audio-item.hh"
#include "audio-column.hh"
-#include "global-translator.hh"
+#include "global-context.hh"
#include "warn.hh"
class Drum_note_performer : public Performer {
public:
- TRANSLATOR_DECLARATIONS(Drum_note_performer);
+ TRANSLATOR_DECLARATIONS (Drum_note_performer);
protected:
virtual bool try_music (Music *ev) ;
virtual void stop_translation_timestep ();
virtual void create_audio_elements ();
-
- Global_translator* get_global_translator ();
private:
Link_array<Music> note_evs_;
Link_array<Audio_note> notes_;
while (note_evs_.size ())
{
Music* n = note_evs_.pop ();
- SCM sym = n->get_mus_property ("drum-type");
+ SCM sym = n->get_property ("drum-type");
SCM defn = SCM_EOL;
- if (gh_symbol_p (sym)
+ if (scm_is_symbol (sym)
&& (scm_hash_table_p (tab) == SCM_BOOL_T))
defn = scm_hashq_ref (tab, sym, SCM_EOL);
note_evs_.clear ();
}
-Global_translator*
-Drum_note_performer::get_global_translator ()
-{
- Translator *t = this;
- Global_translator *global =0;
- do
- {
- t = t->daddy_trans_ ;
- global = dynamic_cast<Global_translator*> (t);
- }
- while (!global);
-
- return global;
-}
-
-
void
Drum_note_performer::stop_translation_timestep ()
{
// why don't grace notes show up here?
// --> grace notes effectively do not get delayed
- Global_translator* global = get_global_translator ();
+ Global_context * global = get_global_context ();
for (int i=0; i < notes_.size (); i++)
{
Audio_note* n = notes_[i];
return false;
}
-ENTER_DESCRIPTION(Drum_note_performer,
+ENTER_DESCRIPTION (Drum_note_performer,
"Play drum notes.","",
"note-event busy-playing-event","","","");
-Drum_note_performer::Drum_note_performer()
+Drum_note_performer::Drum_note_performer ()
{
}