2 paper-column-engraver.hh -- declare Paper_column_engraver
4 source file of the GNU LilyPond music typesetter
6 (c) 2005--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
9 #ifndef PAPER_COLUMN_ENGRAVER_HH
10 #define PAPER_COLUMN_ENGRAVER_HH
12 #include "engraver.hh"
13 #include "listener.hh"
14 #include "stream-event.hh"
16 class Paper_column_engraver : public Engraver
19 void set_columns (Paper_column *, Paper_column *);
20 TRANSLATOR_DECLARATIONS (Paper_column_engraver);
23 void stop_translation_timestep ();
24 void start_translation_timestep ();
25 void process_music ();
26 virtual void initialize ();
27 virtual void finalize ();
29 DECLARE_TRANSLATOR_LISTENER (break);
31 DECLARE_ACKNOWLEDGER (item);
32 DECLARE_ACKNOWLEDGER (note_spacing);
33 DECLARE_ACKNOWLEDGER (staff_spacing);
36 vector<Stream_event*> break_events_;
37 int breaks_; // used for stat printing
38 Paper_column *command_column_;
39 Paper_column *musical_column_;
44 Moment last_breakable_moment_;
45 Paper_column *last_breakable_column_;
49 #endif /* PAPER_COLUMN_ENGRAVER_HH */