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"
15 #include "stream-event.hh"
17 class Paper_column_engraver : public Engraver
20 void set_columns (Paper_column *, Paper_column *);
21 TRANSLATOR_DECLARATIONS (Paper_column_engraver);
23 Paper_column *find_turnable_column (Moment after_this);
24 void revoke_page_turns (Moment after_this, Real new_penalty);
27 void stop_translation_timestep ();
28 void start_translation_timestep ();
29 void process_music ();
30 virtual void initialize ();
31 virtual void finalize ();
33 DECLARE_TRANSLATOR_LISTENER (break);
35 DECLARE_ACKNOWLEDGER (item);
36 DECLARE_ACKNOWLEDGER (note_spacing);
37 DECLARE_ACKNOWLEDGER (staff_spacing);
40 vector<Stream_event*> break_events_;
41 int breaks_; // used for stat printing
42 Paper_column *command_column_;
43 Paper_column *musical_column_;
51 #endif /* PAPER_COLUMN_ENGRAVER_HH */