2 staff-side.hh -- declare Staff_side_{element,spanner,item}
4 source file of the GNU LilyPond music typesetter
6 (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
16 #include "staff-symbol-referencer.hh"
17 #include "directional-element.hh"
20 Position myself next to a set of elements. Configurable in axis
27 Amount of extra space to add.
29 class Staff_side_element : public Staff_symbol_referencer,
30 public Directional_element
32 void position_self ();
35 Score_element * to_position_l_;
38 Link_array<Score_element> support_l_arr_;
41 bool staff_support_b_;
43 Staff_side_element ();
44 void set_victim (Score_element*);
45 void add_support (Score_element*);
47 VIRTUAL_COPY_CONS(Score_element);
48 virtual Direction get_default_direction () const;
50 virtual Interval do_height () const;
51 virtual void do_print () const;
52 virtual void do_add_processing ();
53 virtual void do_substitute_element_pointer (Score_element*,Score_element*);
54 virtual void do_pre_processing ();
55 virtual void do_post_processing ();
58 class Staff_side_item : public Staff_side_element, public Item
61 VIRTUAL_COPY_CONS(Score_element);
63 virtual Interval do_width () const;
64 virtual void do_print () const;
67 class Staff_side_spanner : public Staff_side_element, public Spanner
70 VIRTUAL_COPY_CONS(Score_element);
72 virtual void do_print () const;
75 #endif /* STAFF_SIDE_HH */