- for ( PCursor<Performer*> i (perf_p_list_.top()); i.ok (); i++ )
- i->do_removal_processing();
-}
-
-bool
-Performer_group_performer::do_try_request (Request* req_l)
-{
- bool hebbes_b =false;
- for (int i =0; !hebbes_b && i < nongroup_l_arr_.size() ; i++)
- hebbes_b =nongroup_l_arr_[i]->try_request (req_l);
- if ( !hebbes_b && daddy_perf_l_)
- hebbes_b = daddy_perf_l_->try_request (req_l);
- return hebbes_b ;
-}
-
-Translator*
-Performer_group_performer::find_get_translator_l (String n,String id)
-{
- Translator * ret=0;
- Input_translator* itrans_l= itrans_l_-> recursive_find ( n);
- if (itrans_l) {
- ret = find_performer_l (n,id);
- if (!ret) {
- Performer_group_performer * group =
- itrans_l-> get_group_performer_p();
-
- add (group);
- ret = group;
-
- if (group->itrans_l_->is_name_b (n) )
- ret ->id_str_ = id;
- else
- return ret->find_get_translator_l (n,id);
-
+ for (int j =0; j < announce_info_arr_.size (); j++)
+ {
+ Audio_element_info info = announce_info_arr_[j];
+
+ for (SCM p = simple_trans_list_; gh_pair_p (p); p = ly_cdr (p))
+ {
+ Translator * t = unsmob_translator (ly_car (p));
+ Performer * eng = dynamic_cast<Performer*> (t);
+ if (eng && eng!= info.origin_trans_l_)
+ eng->acknowledge_audio_element (info);