2 engraver.cc -- implement Engraver
4 Sourcefile of GNU LilyPond music type setter
6 (c) 1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
10 #include "engraver.hh"
11 #include "engraver-group-engraver.hh"
17 Engraver::announce_grob (Grob_info inf)
19 daddy_grav_l ()->announce_grob (inf);
23 Engraver::announce_grob (Grob* e, Music *m)
25 if (m && store_locations_global_b
26 && m->origin ()->location_str ().length_i ())
28 e->set_grob_property ("origin", m->get_mus_property ("origin"));
32 if (!i.origin_trans_l_)
33 i.origin_trans_l_ = this;
34 daddy_grav_l ()->announce_grob (i);
40 Engraver::typeset_grob (Grob*p)
42 daddy_grav_l ()->typeset_grob (p);
46 Engraver_group_engraver*
47 Engraver::daddy_grav_l () const
49 return (daddy_trans_l_)
50 ? dynamic_cast<Engraver_group_engraver *> (daddy_trans_l_)
55 Engraver::process_music ()