source file of the GNU LilyPond music typesetter
- (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1999--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
*/
class Folded_repeat_iterator : public Music_iterator
{
- Music_iterator * main_iter_p_;
- Music_iterator * alternative_iter_p_;
- int count_;
- Moment main_length_mom_;
public:
+ DECLARE_SCHEME_CALLBACK(constructor, ());
+
+ Folded_repeat_iterator (Folded_repeat_iterator const &src);
Folded_repeat_iterator ();
- ~Folded_repeat_iterator ();
-
+ virtual void derived_mark () const;
+ virtual void derived_substitute (Translator_group*f, Translator_group*t) ;
+
+
virtual void construct_children ();
- virtual Moment next_moment () const;
+ virtual Moment pending_moment () const;
+ virtual void do_quit();
virtual bool ok () const;
protected:
void enter_alternative ();
void leave_body ();
- virtual void do_print () const;
- virtual void do_process_and_next (Moment);
+ virtual void process (Moment);
+ virtual Music_iterator *try_music_in_children (Music *) const;
+
+private:
+ Music_iterator * main_iter_;
+ Music_iterator * alternative_iter_;
+
+ Moment main_length_mom_;
};
#endif /* FOLDED_REPEAT_ITERATOR_HH */