X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fbeam-scoring-problem.hh;h=755fb388f2b8d6ba3dac2ce24547861e7a3c2c20;hb=3bd8002b58b0408bf9d0f796744fb012b40ba47d;hp=8026f430612b8f8233f579b5c231cdaf7d2f136d;hpb=cc043cb11f95f3d565df2ab791d5a571bb365cd5;p=lilypond.git diff --git a/lily/include/beam-scoring-problem.hh b/lily/include/beam-scoring-problem.hh index 8026f43061..755fb388f2 100644 --- a/lily/include/beam-scoring-problem.hh +++ b/lily/include/beam-scoring-problem.hh @@ -23,11 +23,11 @@ #include "interval.hh" #include "lily-proto.hh" +#include "lily-guile.hh" #include "std-vector.hh" #include "stem-info.hh" #include "main.hh" // DEBUG_BEAM_SCORING -// Unused for now. enum Scorers { // Should be ordered by increasing expensiveness. ORIGINAL_DISTANCE, @@ -41,7 +41,6 @@ struct Beam_configuration { Interval y; Real demerits; - #if DEBUG_BEAM_SCORING string score_card_; #endif @@ -58,9 +57,11 @@ struct Beam_configuration // Comparator for a queue of Beam_configuration*. class Beam_configuration_less { +public: bool operator() (Beam_configuration* const& l, Beam_configuration* const& r) { - return l->demerits < r->demerits; + // Invert + return l->demerits > r->demerits; } }; @@ -140,6 +141,10 @@ private: void init_stems (); + void one_scorer (Beam_configuration* config) const; + Beam_configuration *force_score (SCM inspect_quants, + const vector &configs) const; + // Scoring functions: void score_forbidden_quants (Beam_configuration *config) const; void score_slopes_dy (Beam_configuration *config) const;