]> git.donarmstrong.com Git - lilypond.git/commitdiff
method renaming in constrained-breaking
authorJoe Neeman <joeneeman@gmail.com>
Thu, 18 Jan 2007 19:32:32 +0000 (21:32 +0200)
committerJoe Neeman <joeneeman@gmail.com>
Thu, 18 Jan 2007 19:32:32 +0000 (21:32 +0200)
lily/constrained-breaking.cc
lily/include/constrained-breaking.hh
lily/page-breaking.cc
lily/paper-score.cc

index 5fbc3f7fab55e743a7f5977092ec4c55f7986622..931e4c4ceced84a8c9479976ead96cdebfa52a82 100644 (file)
@@ -109,16 +109,6 @@ Constrained_breaking::calc_subproblem (vsize start, vsize sys, vsize brk)
   return found_something;
 }
 
-vector<Column_x_positions>
-Constrained_breaking::solve ()
-{
-  if (!systems_)
-    return get_best_solution (0, VPOS);
-
-  resize (systems_);
-  return get_solution(0, VPOS, systems_);
-}
-
 Column_x_positions
 Constrained_breaking::space_line (vsize i, vsize j)
 {
@@ -156,7 +146,7 @@ Constrained_breaking::resize (vsize systems)
 }
 
 vector<Column_x_positions>
-Constrained_breaking::get_solution (vsize start, vsize end, vsize sys_count)
+Constrained_breaking::solve (vsize start, vsize end, vsize sys_count)
 {
   vsize start_brk = starting_breakpoints_[start];
   vsize end_brk = prepare_solution (start, end, sys_count);
@@ -196,10 +186,10 @@ Constrained_breaking::get_solution (vsize start, vsize end, vsize sys_count)
 }
 
 vector<Column_x_positions>
-Constrained_breaking::get_best_solution (vsize start, vsize end)
+Constrained_breaking::best_solution (vsize start, vsize end)
 {
-  vsize min_systems =  get_min_systems (start, end);
-  vsize max_systems = get_max_systems (start, end);
+  vsize min_systems =  min_system_count (start, end);
+  vsize max_systems = max_system_count (start, end);
   Real best_demerits = infinity_f;
   vector<Column_x_positions> best_so_far;
 
@@ -211,11 +201,11 @@ Constrained_breaking::get_best_solution (vsize start, vsize end)
       if (dem < best_demerits)
        {
          best_demerits = dem;
-         best_so_far = get_solution (start, end, i);
+         best_so_far = solve (start, end, i);
        }
       else
        {
-         vector<Column_x_positions> cur = get_solution (start, end, i);
+         vector<Column_x_positions> cur = solve (start, end, i);
          bool too_many_lines = true;
          
          for (vsize j = 0; j < cur.size (); j++)
@@ -230,11 +220,11 @@ Constrained_breaking::get_best_solution (vsize start, vsize end)
     }
   if (best_so_far.size ())
     return best_so_far;
-  return get_solution (start, end, max_systems);
+  return solve (start, end, max_systems);
 }
 
 std::vector<Line_details>
-Constrained_breaking::get_details (vsize start, vsize end, vsize sys_count)
+Constrained_breaking::line_details (vsize start, vsize end, vsize sys_count)
 {
   vsize brk = prepare_solution (start, end, sys_count);
   Matrix<Constrained_break_node> const &st = state_[start];
@@ -250,7 +240,7 @@ Constrained_breaking::get_details (vsize start, vsize end, vsize sys_count)
 }
 
 int
-Constrained_breaking::get_min_systems (vsize start, vsize end)
+Constrained_breaking::min_system_count (vsize start, vsize end)
 {
   vsize sys_count;
   vsize brk = prepare_solution (start, end, 1);
@@ -272,7 +262,7 @@ Constrained_breaking::get_min_systems (vsize start, vsize end)
 }
 
 int
-Constrained_breaking::get_max_systems (vsize start, vsize end)
+Constrained_breaking::max_system_count (vsize start, vsize end)
 {
   vsize brk = (end >= start_.size ()) ? breaks_.size () - 1 : starting_breakpoints_[end];
   return brk - starting_breakpoints_[start];
index 502e8c234a0fa24b940d6656aa305f3fa57818fb..2478afcacaa0281638fc1deed859a4b0ef7e8155 100644 (file)
@@ -93,17 +93,15 @@ struct Constrained_break_node
 class Constrained_breaking
 {
 public:
-  vector<Column_x_positions> solve ();
+  vector<Column_x_positions> solve (vsize start, vsize end, vsize sys_count);
+  vector<Column_x_positions> best_solution (vsize start, vsize end);
+  vector<Line_details> line_details (vsize start, vsize end, vsize sys_count);
+
   Constrained_breaking (Paper_score *ps);
   Constrained_breaking (Paper_score *ps, vector<vsize> const &start_col_posns);
 
-  vector<Column_x_positions> get_solution (vsize start, vsize end, vsize sys_count);
-  vector<Column_x_positions> get_best_solution (vsize start, vsize end);
-  vector<Line_details> get_details (vsize start, vsize end, vsize sys_count);
-  int get_max_systems (vsize start, vsize end);
-  int get_min_systems (vsize start, vsize end);
-
-  void resize (vsize systems);
+  int max_system_count (vsize start, vsize end);
+  int min_system_count (vsize start, vsize end);
 
 private:
   Paper_score *pscore_;
@@ -127,6 +125,7 @@ private:
   vector<vsize> breaks_;
 
   void initialize ();
+  void resize (vsize systems);
 
   Column_x_positions space_line (vsize start_col, vsize end_col);
   vsize prepare_solution (vsize start, vsize end, vsize sys_count);
index d82b881a21c554427c0e05453e6aad24d69608df..b5c38293e5fdeacb180605b9ea8b20bebf04b623 100644 (file)
@@ -86,7 +86,7 @@ Page_breaking::break_into_pieces (vsize start_break, vsize end_break, Line_divis
          vsize end;
          line_breaker_args (sys, chunks[i], chunks[i+1], &start, &end);
 
-         vector<Column_x_positions> pos = line_breaking_[sys].get_solution (start, end, div[i]);
+         vector<Column_x_positions> pos = line_breaking_[sys].solve (start, end, div[i]);
          all_[sys].pscore_->root_system ()->break_into_pieces (pos);
        }
     }
@@ -130,7 +130,7 @@ Page_breaking::line_details (vsize start_break, vsize end_break, Line_division c
          vsize end;
          line_breaker_args (sys, chunks[i], chunks[i+1], &start, &end);
 
-         vector<Line_details> details = line_breaking_[sys].get_details (start, end, div[i]);
+         vector<Line_details> details = line_breaking_[sys].line_details (start, end, div[i]);
          ret.insert (ret.end (), details.begin (), details.end ());
        }
       else
@@ -351,8 +351,8 @@ Page_breaking::system_count_bounds (vector<Break_position> const &chunks, bool m
          vsize end;
          line_breaker_args (sys, chunks[i], chunks[i+1], &start, &end);
          ret[i] = min
-           ? line_breaking_[sys].get_min_systems (start, end)
-           : line_breaking_[sys].get_max_systems (start, end);
+           ? line_breaking_[sys].min_system_count (start, end)
+           : line_breaking_[sys].max_system_count (start, end);
        }
     }
 
index 0142ef3b926698e68cc90b4a9078935d8eb12910..f91a4cddee1deaa0ab3e2466dc5f99037c7097f7 100644 (file)
@@ -106,9 +106,9 @@ Paper_score::calc_breaking ()
 
   int system_count = robust_scm2int (layout ()->c_variable ("system-count"), 0);
   if (system_count)
-    algorithm.resize (system_count);
+    return algorithm.solve (0, VPOS, system_count);
 
-  return algorithm.solve ();
+  return algorithm.best_solution (0, VPOS);
 }
 
 void