[PPL-devel] [GIT] ppl/ppl(pip): In ascii dump and load methods, also print pivot row strategy info.

Enea Zaffanella zaffanella at cs.unipr.it
Sun Feb 7 09:58:13 CET 2010


Module: ppl/ppl
Branch: pip
Commit: 9a962273cf06b0b16d7feb998f7687cd4deb5f2e
URL:    http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=9a962273cf06b0b16d7feb998f7687cd4deb5f2e

Author: Enea Zaffanella <zaffanella at cs.unipr.it>
Date:   Sat Feb  6 22:16:08 2010 +0100

In ascii dump and load methods, also print pivot row strategy info.

---

 src/PIP_Problem.cc                    |   14 ++++++++++++--
 tests/PIP_Problem/ascii_dump_load1.cc |   15 +++++++++++++++
 2 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/src/PIP_Problem.cc b/src/PIP_Problem.cc
index d9853a2..6663f45 100644
--- a/src/PIP_Problem.cc
+++ b/src/PIP_Problem.cc
@@ -328,6 +328,12 @@ PPL::PIP_Problem::ascii_dump(std::ostream& s) const {
     case CUTTING_STRATEGY_ALL:
       s << "CUTTING_STRATEGY_ALL";
       break;
+    case PIVOT_ROW_STRATEGY_FIRST:
+      s << "PIVOT_ROW_STRATEGY_FIRST";
+      break;
+    case PIVOT_ROW_STRATEGY_MAX_COLUMN:
+      s << "PIVOT_ROW_STRATEGY_MAX_COLUMN";
+      break;
     default:
       s << "Invalid control parameter value";
     }
@@ -427,10 +433,14 @@ PPL::PIP_Problem::ascii_load(std::istream& s) {
     Control_Parameter_Value value;
     if (str == "CUTTING_STRATEGY_FIRST")
       value = CUTTING_STRATEGY_FIRST;
-    if (str == "CUTTING_STRATEGY_DEEPEST")
+    else if (str == "CUTTING_STRATEGY_DEEPEST")
       value = CUTTING_STRATEGY_DEEPEST;
-    if (str == "CUTTING_STRATEGY_ALL")
+    else if (str == "CUTTING_STRATEGY_ALL")
       value = CUTTING_STRATEGY_ALL;
+    else if (str == "PIVOT_ROW_STRATEGY_FIRST")
+      value = PIVOT_ROW_STRATEGY_FIRST;
+    else if (str == "PIVOT_ROW_STRATEGY_MAX_COLUMN")
+      value = PIVOT_ROW_STRATEGY_MAX_COLUMN;
     else
       return false;
     control_parameters[i] = value;
diff --git a/tests/PIP_Problem/ascii_dump_load1.cc b/tests/PIP_Problem/ascii_dump_load1.cc
index a89c8a1..f124a30 100644
--- a/tests/PIP_Problem/ascii_dump_load1.cc
+++ b/tests/PIP_Problem/ascii_dump_load1.cc
@@ -155,6 +155,7 @@ test05() {
 
   PIP_Problem pip1(2, cs.begin(), cs.end(), Variables_Set(P));
   pip1.set_control_parameter(PIP_Problem::CUTTING_STRATEGY_ALL);
+  pip1.set_control_parameter(PIP_Problem::PIVOT_ROW_STRATEGY_MAX_COLUMN);
   pip1.set_big_parameter_dimension(1);
   pip1.solve();
 
@@ -175,6 +176,19 @@ test05() {
   return ok;
 }
 
+bool
+test06() {
+  // Testing output functions.
+  PIP_Problem pip1;
+
+  using namespace IO_Operators;
+  nout << pip1 << endl;
+
+  pip1.ascii_dump();
+
+  return true;
+}
+
 } // namespace
 
 BEGIN_MAIN
@@ -183,4 +197,5 @@ BEGIN_MAIN
   DO_TEST(test03);
   DO_TEST(test04);
   DO_TEST(test05);
+  DO_TEST(test06);
 END_MAIN




More information about the PPL-devel mailing list