source file of the GNU LilyPond music typesetter
- (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+ (c) 1997--1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#include "bar.hh"
-class Span_bar : public Bar
+class Span_bar : public virtual Bar
{
- Link_array<Bar> spanning_l_arr_;
+ Link_array<Score_element> spanning_l_arr_;
public:
- NAME_MEMBERS();
- SCORE_ELEM_CLONE(Span_bar);
- void add(Bar* );
- void set( Vertical_align_element *);
- void do_pre_processing();
- void do_substitute_dependency(Score_elem*,Score_elem*);
- Molecule * brew_molecule_p()const;
+ Span_bar();
+ DECLARE_MY_RUNTIME_TYPEINFO;
+ SCORE_ELEMENT_CLONE(Span_bar);
+ virtual Span_bar* access_Span_bar ();
+ void add_bar (Bar*);
+ void set_align (Align_element *);
+
+protected:
+ void evaluate_empty ();
+ virtual Interval do_width() const;
+ virtual void do_pre_processing();
+ virtual void do_post_processing();
+
+ virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual Molecule * brew_molecule_p() const;
+ virtual Atom get_bar_sym (Real dy) const;
};
+
#endif // SPAN_BAR_HH