2 repeat-engraver.hh -- declare Repeat_engraver
4 source file of the GNU LilyPond music typesetter
6 (c) 1998--2000 Jan Nieuwenhuizen <janneke@gnu.org>
9 #ifndef REPEAT_ENGRAVER_HH
10 #define REPEAT_ENGRAVER_HH
12 #include "engraver.hh"
15 struct Bar_create_event
22 Bar_create_event (Moment w, String s);
23 Bar_create_event (Moment w, int i, int j);
26 int compare (Bar_create_event const & c1, Bar_create_event const &c2)
28 return (c1.when_ - c2.when_).sign();
32 Generate repeat-bars |: :| for repeated-music
34 class Repeat_engraver : public Engraver
37 VIRTUAL_COPY_CONS(Translator);
40 virtual void acknowledge_element (Score_element_info i);
41 virtual void do_removal_processing ();
42 virtual bool do_try_music (Music *req_l);
43 virtual void do_process_music();
44 virtual void do_pre_move_processing();
45 virtual void do_post_move_processing ();
49 Repeated_music *repeated_music_l_;
50 bool done_this_one_b_;
53 Royal_brackla_create_queue is only two Whiskies away. :-)
55 Cons<Bar_create_event> *create_barmoments_queue_;
57 Volta_spanner * volta_span_p_;
58 Volta_spanner* end_volta_span_p_;
61 #endif // REPEAT_ENGRAVER_HH