]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/paper-column-engraver.hh
* lily/include/translator.icc: new file.
[lilypond.git] / lily / include / paper-column-engraver.hh
1 /*
2   paper-column-engraver.hh -- declare Paper_column_engraver
3
4   source file of the GNU LilyPond music typesetter
5
6   (c) 2005 Han-Wen Nienhuys <hanwen@xs4all.nl>
7
8 */
9
10 #ifndef PAPER_COLUMN_ENGRAVER_HH
11 #define PAPER_COLUMN_ENGRAVER_HH
12
13
14 #include "engraver.hh"
15
16
17 class Paper_column_engraver : public Engraver
18 {
19   void make_columns ();
20   void set_columns (Paper_column*, Paper_column*); 
21   TRANSLATOR_DECLARATIONS(Paper_column_engraver);
22
23 protected:
24   PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
25   PRECOMPUTED_VIRTUAL void start_translation_timestep ();
26   PRECOMPUTED_VIRTUAL void process_music ();
27   virtual void initialize ();
28   virtual void finalize ();
29   virtual bool try_music (Music*);
30   virtual void acknowledge_grob (Grob_info);
31
32   System *system_;
33   Music *break_event_;
34   int breaks_;                  // used for stat printing
35   Paper_column *command_column_;
36   Paper_column *musical_column_;
37   Link_array<Item> items_;
38   bool first_;
39   Moment last_moment_;
40 public:
41   // ug.h 
42   void forbid_breaks ();
43
44 };
45
46 #endif /* PAPER_COLUMN_ENGRAVER_HH */