2 beam-engraver.hh -- declare Beam_engraver
4 source file of the GNU LilyPond music typesetter
6 (c) 1998--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
10 #ifndef BEAM_ENGRAVER_HH
11 #define BEAM_ENGRAVER_HH
13 #include "engraver.hh"
14 #include "drul-array.hh"
16 class Beam_engraver : public Engraver {
17 Drul_array<Span_req*> reqs_drul_;
19 Beam *finished_beam_p_;
21 Span_req * prev_start_req_;
23 Beaming_info_list * beam_info_p_;
24 Beaming_info_list * finished_beam_info_p_;
26 /// location within measure where beam started.
27 Moment beam_start_location_;
29 /// moment (global time) where beam started.
30 Moment beam_start_mom_;
34 virtual void do_pre_move_processing ();
35 virtual void do_post_move_processing ();
36 virtual void do_removal_processing ();
37 virtual void acknowledge_element (Score_element_info);
38 virtual bool do_try_music (Music*);
39 virtual void do_process_requests ();
42 VIRTUAL_COPY_CONS (Translator);
45 #endif /* BEAM_ENGRAVER_HH */