Bug fix for mustHaveValue tuning parameter
[satune.git] / src / Tuner / tunable.cc
index 5c13a126ac3f9d8d6d9214478d6d2fbd3ff605ab..115e04eb645fe1942f2c6a5b227615ccf11d23eb 100644 (file)
@@ -1,11 +1,55 @@
 #include "tunable.h"
 
-Tuner::Tuner() {
+DefaultTuner::DefaultTuner() {
 }
 
-int Tuner::getTunable(TunableParam param, TunableDesc *descriptor) {
+int DefaultTuner::getTunable(TunableParam param, TunableDesc *descriptor) {
        return descriptor->defaultValue;
 }
-int Tuner::getVarTunable(VarType vartype, TunableParam param, TunableDesc *descriptor) {
+
+int DefaultTuner::getVarTunable(VarType vartype, TunableParam param, TunableDesc *descriptor) {
+       return descriptor->defaultValue;
+}
+
+int DefaultTuner::getVarTunable(VarType vartype1, VarType vartype2, TunableParam param, TunableDesc *descriptor) {
        return descriptor->defaultValue;
 }
+
+const char* tunableParameterToString(Tunables tunable){
+       switch(tunable){
+                case DECOMPOSEORDER:
+                        return "DECOMPOSEORDER";
+                case MUSTREACHGLOBAL:
+                        return "MUSTREACHGLOBAL";
+                case MUSTREACHLOCAL:
+                        return "MUSTREACHLOCAL";
+                case MUSTREACHPRUNE:
+                        return "MUSTREACHPRUNE";
+                case OPTIMIZEORDERSTRUCTURE:
+                        return "OPTIMIZEORDERSTRUCTURE";
+                case ORDERINTEGERENCODING:
+                        return "ORDERINTEGERENCODING";
+                case PREPROCESS:
+                        return "PREPROCESS";
+                case NODEENCODING:
+                        return "NODEENCODING";
+                case EDGEENCODING:
+                        return "EDGEENCODING";
+                case MUSTEDGEPRUNE:
+                        return "MUSTEDGEPRUNE";
+               case ELEMENTOPT: 
+                       return "ELEMENTOPT";
+               case ELEMENTOPTSETS:
+                       return "ELEMENTOPTSETS";
+               case PROXYVARIABLE:
+                       return "PROXYVARIABLE";
+               case ENCODINGGRAPHOPT:
+                       return "ENCODINGGRAPHOPT";
+               case NAIVEENCODER:
+                       return "NAIVEENCODER";
+               case MUSTVALUE:
+                       return "MUSTVALUE";
+                default:
+                        ASSERT(0);
+        }
+}