lilypond-1.3.16
[lilypond.git] / lily / include / stem-beam-grav.hh
blobc7fe5ff4e80742d8a479345d283107905d7aa62e
1 /*
2 stem-beam-grav.hh -- part of GNU LilyPond
4 (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
5 */
8 #ifndef STEMBEAMGRAV_HH
9 #define STEMBEAMGRAV_HH
10 #include "engraver.hh"
12 /**
13 TODO:
14 override default_grouping if setting a n-plet
17 class Stem_beam_engraver : public Engraver {
18 Stem * stem_p_;
19 Beam * beam_p_;
20 Beam_req * beam_req_l_;
21 Stem_req * stem_req_l_;
22 Beam_req * start_req_l_;
23 bool end_beam_b_;
24 Rhythmic_grouping *current_grouping;
25 int default_dir_i_;
26 public:
27 /* *************** */
28 DECLARE_MY_RUNTIME_TYPEINFO;
29 Stem_beam_engraver();
31 protected:
32 ~Stem_beam_engraver();
33 virtual void set_feature (Feature dir_i_);
34 virtual bool do_try_request (Request*);
35 virtual void do_process_requests();
36 virtual void acknowledge_element (Score_elem_info);
37 virtual void do_pre_move_processing();
38 virtual void do_post_move_processing();
40 #endif // STEMBEAMGRAV_HH