X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Ftie-configuration.cc;h=c455c5ccc41200a57b8cf8d4be4ef8bee966210b;hb=5b4b0d6e9a197e8f9eb085b7c2ad78b8be3e5cfc;hp=cc20444431e906968dde80a47b464ea4ce47d53a;hpb=a276a19dc6bd57832db3107f2f2cbb04cb4677b6;p=lilypond.git diff --git a/lily/tie-configuration.cc b/lily/tie-configuration.cc index cc20444431..c455c5ccc4 100644 --- a/lily/tie-configuration.cc +++ b/lily/tie-configuration.cc @@ -3,7 +3,7 @@ source file of the GNU LilyPond music typesetter - (c) 2005--2007 Han-Wen Nienhuys + (c) 2005--2008 Han-Wen Nienhuys */ @@ -64,7 +64,7 @@ Tie_configuration::get_transformed_bezier (Tie_details const &details) const Bezier Tie_configuration::get_untransformed_bezier (Tie_details const &details) const { - Real l = attachment_x_.length(); + Real l = attachment_x_.length (); if (isinf (l) || isnan (l)) { programming_error ("Inf or NaN encountered"); @@ -106,14 +106,14 @@ Tie_configuration::add_score (Real s, string desc) Real Tie_configuration::height (Tie_details const &details) const { - Real l = attachment_x_.length(); + Real l = attachment_x_.length (); return slur_shape (l, details.height_limit_, details.ratio_).curve_point (0.5)[Y_AXIS]; } -Ties_configuration::Ties_configuration() +Ties_configuration::Ties_configuration () { score_ = 0.0; scored_ = false; @@ -157,8 +157,46 @@ Ties_configuration::score () const return score_; } + +string +Ties_configuration::complete_tie_card (vsize i) const +{ + string s; + s += to_string ("%d (%.2f) %c: ", (*this)[i].position_, (*this)[i].delta_y_, + ((*this)[i].dir_ == UP ? 'u' : 'd')) + + (*this)[i].card () + (*this).tie_card (i); + + /* + this is a little awkward, but we must decide where to put + aggregrates. + */ + if (i == 0) + s += card (); + + if (i + 1 == size ()) + s += to_string ("TOTAL=%.2f", score ()); + + return s; +} + +/* for use inside GDB */ +string +Ties_configuration::complete_score_card () const +{ + string s; + for (vsize i = 0; i < size (); i++) + { + s += complete_tie_card (i); + } + + return s; +} + + + string Ties_configuration::card () const { return score_card_; } +