X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fbeam.hh;h=e7594f5a4d745032e12d00b608d26a5c09eb6e41;hb=6d10791f358dc637ee7d8858fb61f959f1262b3c;hp=bc3fc1ea502793bfb32e76b043eb88716b7d6ce0;hpb=abe1ad3cfffafc458a67c750c4c8b6374fcce9dc;p=lilypond.git diff --git a/lily/include/beam.hh b/lily/include/beam.hh index bc3fc1ea50..e7594f5a4d 100644 --- a/lily/include/beam.hh +++ b/lily/include/beam.hh @@ -1,7 +1,10 @@ /* beam.hh -- part of GNU LilyPond - (c) 1996--2002 Han-Wen Nienhuys + source file of the LilyPond music typesetter + + (c) 1996--2004 Han-Wen Nienhuys + Jan Nieuwenhuizen */ #ifndef BEAM_HH @@ -22,13 +25,17 @@ public: DECLARE_SCHEME_CALLBACK (rest_collision_callback, (SCM element, SCM axis)); Beam (SCM); static void add_stem (Grob*,Grob*); + static bool is_knee (Grob*); static void set_beaming (Grob*,Beaming_info_list *); static void set_stemlens (Grob*); static int get_beam_count (Grob*me); - static Real get_beam_space (Grob*me); + static void position_beam (Grob* me); + static Real get_beam_translation (Grob*me); + static Real get_thickness (Grob*me); + static void connect_beams (Grob*me); DECLARE_SCHEME_CALLBACK (space_function, (SCM, SCM)); - DECLARE_SCHEME_CALLBACK (brew_molecule, (SCM)); + DECLARE_SCHEME_CALLBACK (print, (SCM)); DECLARE_SCHEME_CALLBACK (before_line_breaking, (SCM)); DECLARE_SCHEME_CALLBACK (after_line_breaking, (SCM)); @@ -38,32 +45,36 @@ public: DECLARE_SCHEME_CALLBACK (slope_damping, (SCM)); DECLARE_SCHEME_CALLBACK (shift_region_to_valid, (SCM)); DECLARE_SCHEME_CALLBACK (quanting, (SCM)); - static Real score_slopes_dy (Grob*, Real,Real,Real,Real, bool); - static Real score_stem_lengths (Link_array, - Array, - Array, Array, - Real, Real, - bool,Grob*,Real , Real); - static Real score_forbidden_quants (Grob*, Real, Real, + static Real score_slopes_dy (Real, Real, Real, Real, Real, bool); + + static Real score_stem_lengths (Link_array const &stems, + Array const &stem_infos, + Array const &base_stem_ys, + Array const &stem_xs, + Real xl, Real xr, + bool knee, + Real yl, Real yr); + static Real score_forbidden_quants (Real, Real, Real, Real, Real, Real, - int, Direction, Direction); - + Drul_array, Direction, Direction); + + static int get_direction_beam_count (Grob *me, Direction d); private: static Direction get_default_dir (Grob*); static void set_stem_directions (Grob*, Direction ); - static void consider_auto_knees (Grob*, Direction d); + static void consider_auto_knees (Grob*); static void set_stem_shorten (Grob*); static Real calc_stem_y (Grob*, Grob* s, Grob**c, Real, Real, - Interval pos, bool french); + Drul_array pos, bool french); static void set_stem_lengths (Grob*); static int forced_stem_count (Grob*); }; const int REGION_SIZE = 2; -#define DEBUG_QUANTING 0 +#define DEBUG_QUANTING 1 #endif /* BEAM_HH */