-Translator_group::initialize ()
-{
- SCM tab = scm_make_vector (gh_int2scm (19), SCM_BOOL_F);
- set_property ("acceptHashTable", tab);
- each (&Translator::initialize);
-}
-
-void
-Translator_group::finalize ()
-{
- each (&Translator::finalize);
-}
-
-bool
-translator_accepts_any_of (Translator*tr, SCM ifaces)
-{
- SCM ack_ifs = scm_assoc (ly_symbol2scm ("events-accepted"),
- tr->translator_description());
- ack_ifs = gh_cdr (ack_ifs);
- for (SCM s = ifaces; ly_pair_p (s); s = ly_cdr (s))
- if (scm_memq (ly_car (s), ack_ifs) != SCM_BOOL_F)
- return true;
- return false;
-}
-
-SCM
-find_accept_translators (SCM gravlist, SCM ifaces)
-{
- SCM l = SCM_EOL;
- for (SCM s = gravlist; ly_pair_p (s); s = ly_cdr (s))
- {
- Translator* tr = unsmob_translator (ly_car (s));
- if (translator_accepts_any_of (tr, ifaces))
- l = scm_cons (tr->self_scm (), l);
- }
- l = scm_reverse_x (l, SCM_EOL);
-
- return l;
-}
-
-bool
-Translator_group::try_music_on_nongroup_children (Music *m )