- if (Note_req * n =dynamic_cast <Note_req *> (m))
- {
- note_req_l_arr_.push (n);
- note_end_mom_ = note_end_mom_ >? now_mom () + m->length_mom ();
-
- return true;
- }
- else if (Tonic_req* t = dynamic_cast<Tonic_req*> (m))
- {
- return true;
- }
- else if (Inversion_req* i = dynamic_cast<Inversion_req*> (m))
- {
- return true;
- }
- else if (Bass_req* b = dynamic_cast<Bass_req*> (m))
- {
- return true;
- }
- else if (Busy_playing_req * p = dynamic_cast<Busy_playing_req*> (m))
- {
- return now_mom () < note_end_mom_;
- }
- else if (Pitch_interrogate_req *p = dynamic_cast<Pitch_interrogate_req*> (m))
- {
- for (int i= note_req_l_arr_.size (); i--;)
- p->pitch_arr_.push (note_req_l_arr_[i]->pitch_); // GUH UGH UGHUGH.
- return true;
- }
- return false;
-