-Music_iterator*
-Music_iterator::static_get_iterator_p(Music *m,
- Translator *report_l)
-{
- Music_iterator * p =0;
- if (m->is_type_b( Change_reg::static_name()))
- p = new Change_iterator((Change_reg*)m);
- else if (m->is_type_b( Request_chord::static_name()))
- p = new Request_chord_iterator( (Request_chord*) m);
- else if (m->is_type_b( Chord::static_name()))
- p = new Chord_iterator( (Chord*) m);
- else if (m->is_type_b( Voice::static_name()))
- p = new Voice_iterator( (Voice*) m);
-
- if ( m->is_type_b( Music_list::static_name())) {
- Music_list* ml = (Music_list*) m;
- if (ml -> type_str_ != "") {
- Translator * a =report_l->
- find_get_translator_l(ml-> type_str_, ml->id_str_);
-
-
- p->set_translator( a);
-
- }
- }
- if (! p->report_to_l() )
- p ->set_translator(report_l);
-
- return p;
-}
-
-Music_iterator*
-Music_iterator::get_iterator_p(Music*m)const