]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/staff-gravs.hh
release: 0.0.72pre
[lilypond.git] / lily / include / staff-gravs.hh
1 /*
2   staff-gravs.hh -- declare Staff_engravers
3
4   source file of the GNU LilyPond music typesetter
5
6   (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
7 */
8
9
10 #ifndef STAFF_GRAVS_HH
11 #define STAFF_GRAVS_HH
12
13 #include "engraver-group.hh"
14
15 /**
16   Engravers which manage a Staff (one 5-line linestaff)
17   
18  */
19 class Staff_engravers : public Engraver_group_engraver {
20     Line_of_staff *staffline_p_;   
21     Link_array<Score_elem> staff_elem_l_arr_;
22
23     void group_staff_elems();
24 protected:
25     virtual void do_pre_move_processing();
26     virtual void do_creation_processing();
27     virtual void do_removal_processing();
28     virtual void typeset_element(Score_elem*);
29     virtual void typeset_breakable_item( Item * it_p);
30
31 public:
32     
33     NAME_MEMBERS();
34     Staff_engravers();
35 };
36
37 #endif // STAFF_GRAVS_HH