+
+void
+Note_performer::do_pre_move_processing ()
+{
+
+ // why don't grace notes show up here?
+ // --> grace notes effectively do not get delayed
+ Global_translator* global_l = global_translator_l ();
+ for (int i=0; i < note_p_arr_.size (); i++)
+ {
+ Audio_note* n = note_p_arr_[i];
+ if (Moment m= n->delayed_until_mom_)
+ {
+ global_l->add_moment_to_process (m);
+ delayed_p_arr_.push (n);
+ note_p_arr_[i] = 0;
+ note_p_arr_.del (i);
+ i--;
+ }
+ }
+
+ Moment now = now_mom ();
+ for (int i=0; i < note_p_arr_.size (); i++)
+ {
+ play_element (note_p_arr_[i]);
+ }
+ note_p_arr_.clear ();
+ note_req_l_arr_.clear ();
+ for (int i=0; i < delayed_p_arr_.size (); i++)
+ {
+ Audio_note* n = delayed_p_arr_[i];
+ if (n->delayed_until_mom_ <= now)
+ {
+ play_element (n);
+ delayed_p_arr_[i] = 0;
+ delayed_p_arr_.del (i);
+ i--;
+ }
+ }
+}
+
+bool
+Note_performer::do_try_music (Music* req_l)