2 beam.hh -- part of LilyPond
4 (c) 1996,97 Han-Wen Nienhuys
10 #include "directionalspanner.hh"
13 /// a beam connects multiple stems
14 struct Beam: public Directional_spanner {
15 PointerList<Stem*> stems;
18 /// dir: -1 below heads, +1 above heads.
22 virtual Interval width()const;
23 Offset center() const;
24 Spanner *do_break_at(PCol *, PCol *) const;
29 void set_default_dir();
30 void do_pre_processing();
31 void do_post_processing();
34 void set_grouping(Rhythmic_grouping def, Rhythmic_grouping current);
39 Molecule stem_beams(Stem *here, Stem *next, Stem *prev)const;
41 Molecule*brew_molecule()const;
43 /** Beam adjusts the stems its owns to make sure that they reach the
44 beam and that point in the correct direction */