*/
class Unfolded_repeat_iterator : public Music_iterator
{
+ void add_repeat_command (SCM);
+
public:
VIRTUAL_COPY_CONS (Music_iterator);
/**
*/
int done_count_;
+ /*
+ are we now busy doing the body?
- /// unfold everything, or do volta?
- bool full_unfold_b_;
-
- /// are we busy doing the body?
+ */
bool do_main_b_;
/** How far have we progressed into the repeat.
This excludes the elt currently being iterated.
*/
- Moment done_mom_;
+ Moment here_mom_;
int alternative_count_i_;
Music_iterator * current_iter_p_;
~Unfolded_repeat_iterator();
Unfolded_repeat_iterator ();
-
protected:
virtual void construct_children ();
virtual Moment pending_moment () const;
virtual void process (Moment);
virtual Music_iterator *try_music_in_children (Music *) const;
-
+ virtual void skip (Moment);
+ virtual SCM get_music (Moment) const;
+
virtual bool ok () const;
- virtual void next_element ();
+ virtual void next_element (bool side_effect);
};
#endif /* UNFOLDED_REPEAT_ITERATOR_HH */