X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fbeaming-pattern.hh;h=217af19088a4268ce8cfc88cb1a970dbfe6c3a31;hb=47db9a3883d726ca53e2133a3b2298f78dd6a32e;hp=a9bb44ae9f19f6d122ff53fd3f2f1775268d805b;hpb=0706458a184d83d0776ffa03b07f710d9e3138ba;p=lilypond.git diff --git a/lily/include/beaming-pattern.hh b/lily/include/beaming-pattern.hh index a9bb44ae9f..217af19088 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--2010 Han-Wen Nienhuys + Copyright (C) 1999--2015 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 (); };