]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/slur-configuration.cc
Run `make grand-replace'.
[lilypond.git] / lily / slur-configuration.cc
index d846b9d6159a8a429daf9e838746d5455282e18e..3c39b457932072fc0636647061ec711e82aaf89f 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  (c) 2004--2008 Han-Wen Nienhuys <hanwen@xs4all.nl>
 */
 
 #include "slur-configuration.hh"
@@ -166,6 +166,7 @@ Slur_configuration::generate_curve (Slur_score_state const &state,
 
 Slur_configuration::Slur_configuration ()
 {
+  tags_ = 0x0;
   score_ = 0.0;
   index_ = -1;
 };
@@ -174,9 +175,17 @@ Slur_configuration::Slur_configuration ()
 void
 Slur_configuration::add_score (Real s, string desc)
 {
+  if (s < 0)
+    {
+      programming_error ("Negative demerits found for slur. Ignoring");
+      s = 0.0;
+    }
+  
   if (s)
     {
-      score_card_ += to_string ("%s=%.2f ", desc.c_str (), s);
+      if (score_card_.length () > 0)
+       score_card_ += ", ";
+      score_card_ += to_string ("%s=%.2f", desc.c_str (), s);
       score_ += s;
     }
 }
@@ -399,7 +408,9 @@ Slur_configuration::score_edges (Slur_score_state const &state)
       demerit *= exp (state.dir_ * d * slope
                      * state.parameters_.edge_slope_exponent_);
 
-      add_score (demerit, "edge");
+
+      string dir_str = d == LEFT ? "L" : "R";
+      add_score (demerit, dir_str + " edge");
     }
   while (flip (&d) != LEFT);
 }