]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/music-wrapper-iterator.hh
Run `make grand-replace'.
[lilypond.git] / lily / include / music-wrapper-iterator.hh
index cd5ad0a9866175e7af43baf7ee8258e3ea744d1c..69188937c1a0a5f82496bf8d389c515d94a74994 100644 (file)
@@ -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 <hanwen@cs.ruu.nl>
-  
- */
+
+  (c) 1998--2008 Han-Wen Nienhuys <hanwen@xs4all.nl>
+*/
 
 #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 */
 
-
-