2 simultaneous-music-iterator.hh -- declare Simultaneous_music_iterator
4 source file of the GNU LilyPond music typesetter
6 (c) 1997--2005 Han-Wen Nienhuys <hanwen@cs.uu.nl>
9 #ifndef SIMULTANEOUS_MUSIC_ITERATOR_HH
10 #define SIMULTANEOUS_MUSIC_ITERATOR_HH
12 #include "music-iterator.hh"
14 class Simultaneous_music_iterator : public Music_iterator
17 Simultaneous_music_iterator ();
18 Simultaneous_music_iterator (Simultaneous_music_iterator const &);
19 virtual void derived_substitute (Context *f, Context *t);
20 virtual void derived_mark () const;
21 DECLARE_SCHEME_CALLBACK (constructor, ());
23 /// make a new context for every child.
24 bool create_separate_contexts_;
26 virtual void construct_children ();
27 virtual Moment pending_moment () const;
28 virtual void do_quit ();
29 virtual bool ok () const;
30 virtual bool run_always () const;
33 virtual void process (Moment);
34 virtual Music_iterator *try_music_in_children (Music *) const;
40 #endif // SIMULTANEOUS_MUSIC_ITERATOR_HH