lilypond-1.3.16
[lilypond.git] / lily / include / chord-tremolo-engraver.hh
blob51b5e2a7200443e42b684a6010fac94516eb93fa
1 /*
2 chord-tremolo-engraver.hh -- declare Chord_tremolo_engraver
4 source file of the GNU LilyPond music typesetter
6 (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7 Jan Nieuwenhuizen <janneke@gnu.org>
8 */
11 #ifndef Chord_tremolo_ENGRAVER_HH
12 #define Chord_tremolo_ENGRAVER_HH
14 #include "engraver.hh"
15 #include "drul-array.hh"
17 /**
18 Generate an abbreviation beam. Eat stems.
20 UGH. Derive me from Beam_engraver.
23 class Chord_tremolo_engraver : public Engraver
25 public:
26 VIRTUAL_COPY_CONS(Translator);
29 Chord_tremolo_engraver();
31 protected:
32 virtual void do_removal_processing();
33 virtual void do_process_requests();
34 virtual bool do_try_music (Music*);
35 virtual void acknowledge_element (Score_element_info);
36 virtual void do_pre_move_processing();
37 virtual void do_post_move_processing();
39 private:
40 void typeset_beam ();
41 Drul_array<Chord_tremolo_req*> reqs_drul_;
42 Chord_tremolo_req* prev_start_req_;
43 Beam* abeam_p_;
44 Beam* finished_abeam_p_;
47 #endif // Chord_tremolo_ENGRAVER_HH