X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Ftie-configuration.hh;h=cd3bfe399882c875400d70fb9a7f2758f132af9d;hb=8624c6220a4c6a9c3f39f330e7024cdb72fa54ce;hp=3608a94bc6ce00193f026d1c3997dc15fb611ebd;hpb=64313890b232c731d432e5b096f30bffc3f3756d;p=lilypond.git diff --git a/lily/include/tie-configuration.hh b/lily/include/tie-configuration.hh index 3608a94bc6..cd3bfe3998 100644 --- a/lily/include/tie-configuration.hh +++ b/lily/include/tie-configuration.hh @@ -10,6 +10,7 @@ #ifndef TIE_CONFIGURATION_HH #define TIE_CONFIGURATION_HH +#include "main.hh" #include "lily-proto.hh" #include "direction.hh" #include "interval.hh" @@ -18,19 +19,32 @@ class Tie_configuration { +#if DEBUG_SLUR_SCORING + string score_card_; +#endif + Real score_; + bool scored_; + friend class Tie_formatting_problem; + public: + Real score () const { return score_; } + string card () const { return score_card_; } + int position_; Direction dir_; Real delta_y_; - + Drul_array column_ranks_; + /* computed. */ Interval attachment_x_; - + + void add_score (Real, string); Tie_configuration (); void center_tie_vertically (Tie_details const &); Bezier get_transformed_bezier (Tie_details const &) const; Bezier get_untransformed_bezier (Tie_details const &) const; Real height (Tie_details const&) const; + int column_span_length () const; static int compare (Tie_configuration const &a, Tie_configuration const &b); @@ -40,7 +54,23 @@ public: INSTANTIATE_COMPARE (Tie_configuration, Tie_configuration::compare); -typedef std::vector Ties_configuration; +class Ties_configuration : public vector +{ + Real score_; + string score_card_; + bool scored_; + vector tie_score_cards_; + + friend class Tie_formatting_problem; +public: + Ties_configuration (); + void add_score (Real amount, string description); + void add_tie_score (Real amount, int i, string description); + Real score () const; + void reset_score (); + string card () const; + string tie_card (int i) const { return tie_score_cards_[i]; } +}; #endif /* TIE_CONFIGURATION_HH */