2 music-wrapper-iterator.cc -- implement Music_wrapper_iterator
4 source file of the GNU LilyPond music typesetter
6 (c) 1998--2005 Han-Wen Nienhuys <hanwen@cs.uu.nl>
9 #include "music-wrapper-iterator.hh"
10 #include "music-wrapper.hh"
12 Music_wrapper_iterator::Music_wrapper_iterator ()
18 Music_wrapper_iterator::do_quit ()
24 Music_wrapper_iterator::derived_mark () const
27 scm_gc_mark (child_iter_
->self_scm ());
31 Music_wrapper_iterator::derived_substitute (Context
*f
, Context
*t
)
34 child_iter_
->substitute_outlet (f
, t
);
38 Music_wrapper_iterator::construct_children ()
40 Music
*m
= dynamic_cast<Music_wrapper
const *> (get_music ())->element ();
41 child_iter_
= unsmob_iterator (get_iterator (m
));
45 Music_wrapper_iterator::ok () const
47 return child_iter_
&& child_iter_
->ok ();
51 Music_wrapper_iterator::process (Moment m
)
53 child_iter_
->process (m
);
57 Music_wrapper_iterator::pending_moment () const
59 return child_iter_
->pending_moment ();
63 Music_wrapper_iterator::try_music_in_children (Music
*m
) const
65 return child_iter_
->try_music (m
);
68 IMPLEMENT_CTOR_CALLBACK (Music_wrapper_iterator
);
71 Music_wrapper_iterator::run_always () const
73 return child_iter_
->run_always ();