X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fbeaming-pattern.hh;fp=lily%2Finclude%2Fbeaming-pattern.hh;h=8b9318da5d1ed5e96778a160666752318e70e10a;hb=32a34dcef0c0041c6d62677487a380b5c8b85712;hp=6eed0606b30f462576684afae4e85df2a77349e4;hpb=f41973ff763d5972a85995b6d40c864281ec6714;p=lilypond.git diff --git a/lily/include/beaming-pattern.hh b/lily/include/beaming-pattern.hh index 6eed0606b3..8b9318da5d 100644 --- a/lily/include/beaming-pattern.hh +++ b/lily/include/beaming-pattern.hh @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1999--2011 Han-Wen Nienhuys + Copyright (C) 1999--2012 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -28,11 +28,12 @@ struct Beaming_options { SCM grouping_; bool subdivide_beams_; + bool strict_beat_beaming_; Moment base_moment_; Moment measure_length_; Beaming_options (); - void from_context (Context*); + void from_context (Context *); }; struct Beam_rhythmic_element @@ -43,7 +44,11 @@ struct Beam_rhythmic_element int rhythmic_importance_; bool invisible_; - Beam_rhythmic_element (Moment, int, bool); + Rational factor_; + + bool tuplet_start_; + + Beam_rhythmic_element (Moment, int, bool, Rational, bool); Beam_rhythmic_element (); int count (Direction d) const; @@ -59,19 +64,21 @@ class Beaming_pattern public: Beaming_pattern (); - void beamify (Beaming_options const&); + void beamify (Beaming_options const &); void de_grace (); - void add_stem (Moment d, int beams, bool invisible); + void add_stem (Moment d, int beams, bool invisible, Rational factor, bool tuplet_starrt); int beamlet_count (int idx, Direction d) const; bool invisibility (int idx) const; + Rational factor (int idx) const; + bool tuplet_start (int idx) const; Moment start_moment (int idx) const; Moment end_moment (int idx) const; - Beaming_pattern* split_pattern(int idx); + Beaming_pattern *split_pattern (int idx); private: vector infos_; - Direction flag_direction (Beaming_options const&, vsize) const; - void find_rhythmic_importance (Beaming_options const&); + Direction flag_direction (Beaming_options const &, vsize) const; + void find_rhythmic_importance (Beaming_options const &); void unbeam_invisible_stems (); };