X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fmusic-wrapper-iterator.hh;h=ca118be037ad06b68f085625076514dff35e8b11;hb=fdc410ddf1a25df4a7a1cdf8af05d20f1d003a1d;hp=4437d461ed209f3696f3aeef55297db5687ce01a;hpb=1cf3d59c1559fb9774c4c1c8cae155cfe54a927c;p=lilypond.git diff --git a/lily/include/music-wrapper-iterator.hh b/lily/include/music-wrapper-iterator.hh index 4437d461ed..ca118be037 100644 --- a/lily/include/music-wrapper-iterator.hh +++ b/lily/include/music-wrapper-iterator.hh @@ -1,34 +1,40 @@ -/* - music-wrapper-iterator.hh -- declare - +/* + music-wrapper-iterator.hh -- declare Music_wrapper_iterator + source file of the GNU LilyPond music typesetter - - (c) 1998 Han-Wen Nienhuys - - */ + + (c) 1998--2006 Han-Wen Nienhuys +*/ #ifndef MUSIC_WRAPPER_ITERATOR_HH #define MUSIC_WRAPPER_ITERATOR_HH -#include "music.hh" #include "music-iterator.hh" +/** + The iterator for a #Music_wrapper#. Since #Music_wrapper# essentially + does nothing, this iterator creates a child iterator and delegates + all work to that child. +*/ class Music_wrapper_iterator : public Music_iterator { - Music_iterator *child_iter_p_; - Music_wrapper *music_l_; public: - Music_wrapper_iterator (Music_wrapper*); - ~Music_wrapper_iterator (); - virtual void do_print () const; - virtual void construct_children () ; - virtual void process_and_next (Moment) ; - virtual Moment next_moment () const; + DECLARE_SCHEME_CALLBACK (constructor, ()); + Music_wrapper_iterator (); + DECLARE_CLASSNAME(Music_wrapper_iterator); + + virtual void derived_substitute (Context *f, Context *t); + virtual void derived_mark () const; + virtual void construct_children (); + virtual Moment pending_moment () const; + virtual void do_quit (); virtual bool ok () const; - DECLARE_MY_RUNTIME_TYPEINFO; + virtual bool run_always () const; +protected: + virtual void process (Moment); + + Music_iterator *child_iter_; }; #endif /* MUSIC_WRAPPER_ITERATOR_HH */ - -