]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/request-chord-iterator.hh
patch::: 1.3.86.jcn1
[lilypond.git] / lily / include / request-chord-iterator.hh
1 /*
2   request-iter.hh -- declare Request_chord_iterator
3
4   source file of the GNU LilyPond music typesetter
5
6   (c)  1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7 */
8
9
10 #ifndef REQUEST_ITER_HH
11 #define REQUEST_ITER_HH
12
13 #include "music-iterator.hh"
14
15 /**
16    Walk through a Request_chord
17  */
18 class Request_chord_iterator : public Music_iterator
19 {
20   Request_chord * elt_l () const;
21   /**
22      cache elt_l ()->length_mom ().
23    */
24   Moment elt_length_mom_;
25   bool last_b_;
26
27 public:
28   VIRTUAL_COPY_CONS (Music_iterator);
29   Request_chord_iterator ();
30   Request_chord_iterator (Request_chord_iterator const&);
31   
32   virtual bool next ();
33   virtual bool ok () const;
34
35 protected:
36   virtual void do_process_and_next (Moment);
37   virtual Moment next_moment() const;
38   virtual void construct_children();
39   virtual void do_print() const;
40 };
41
42
43 #endif // REQUEST_ITER_HH