]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/span-bar-grav.hh
c7e6241e84f4f1d85a9a5cb9529688f364273d84
[lilypond.git] / lily / include / span-bar-grav.hh
1 /*
2   span-bar-grav.hh -- declare Span_bar_engraver
3
4   source file of the GNU LilyPond music typesetter
5
6   (c)  1997--1998 Han-Wen Nienhuys <hanwen@stack.nl>
7 */
8
9
10 #ifndef SPAN_BAR_GRAV_HH
11 #define SPAN_BAR_GRAV_HH
12
13 #include "engraver.hh"
14
15 /** 
16
17   Make bars that span multiple "staffs". Catch bars, and span a
18   Span_bar over them if we find more than 2 bars
19
20   */
21 class Span_bar_engraver : public Engraver
22 {
23   Span_bar * spanbar_p_;
24   Array<Bar*> bar_l_arr_;
25   Vertical_align_element * valign_l_;
26 public:
27   TRANSLATOR_CLONE(Span_bar_engraver);
28   DECLARE_MY_RUNTIME_TYPEINFO;
29     
30   Span_bar_engraver();
31 protected:
32   virtual void do_creation_processing ();
33   virtual void do_removal_processing ();
34   virtual void acknowledge_element (Score_elem_info);
35   virtual void do_pre_move_processing();
36   virtual Span_bar* get_span_bar_p() const;
37 };
38
39 #endif // SPAN_BAR_GRAV_HH