class Sequential_music_iterator : public Music_iterator
{
public:
+ VIRTUAL_COPY_CONS (Music_iterator);
+ static SCM constructor_cxx_function;
Sequential_music_iterator ();
+ Sequential_music_iterator (Sequential_music_iterator const&);
virtual ~Sequential_music_iterator ();
virtual void construct_children ();
- virtual Moment next_moment () const;
+ virtual Moment pending_moment () const;
virtual bool ok () const;
+ virtual void skip (Moment);
+ virtual SCM get_music (Moment)const;
protected:
- 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:
Moment here_mom_;
-
SCM cursor_;
Music_iterator * iter_p_;
- /*
- perhaps these can be virtual and protected iso. private?
- */
- void start_next_element();
- void leave_element();
- void set_sequential_music_translator();
+ void next_element ();
+ void descend_to_child ();
};
#endif // SEQUENTIAL_MUSIC_ITERATOR_HH