ok () -- events left ?
pending_mom () -- time tag of the next event to be processed.
- PRECONDITION: this->ok () holds.
+ PRECONDITION: ok () holds.
process (M) -- process all at M (Precondition: no events exist
- before M, this->ok () holds). Side-effects:
+ before M, ok () holds). Side-effects:
* This removes all events at M from the pending queue.
public:
int print_smob (SCM, scm_print_state *) const;
SCM mark_smob () const;
- static const char type_p_name_[];
+ static const char * const type_p_name_;
virtual ~Music_iterator ();
protected:
Moment music_length_;
public:
Moment music_get_length () const;
+ // music_start_mom () is calculated relative to the time where the
+ // iterator occurs in the music stream, so it will usually be
+ // non-zero only for expressions starting with grace notes.
Moment music_start_mom () const;
Music_iterator ();
void report_event (Music *);
virtual Moment pending_moment () const;
virtual bool ok () const;
virtual bool run_always () const;
+ // process is called with a time relative to the iterator start, so
+ // usually the last processed moment is the same as music_get_length.
virtual void process (Moment until);
virtual void derived_mark () const;
virtual void construct_children ();