From d459d8a6265e8ef502b8105856c819f1ed44f23d Mon Sep 17 00:00:00 2001 From: bdemsky Date: Sun, 20 Aug 2017 23:38:58 -0700 Subject: [PATCH] edit --- src/Makefile | 4 ++-- src/Tuner/tunable.c | 15 +++++++++++++++ src/Tuner/tunable.h | 3 +++ src/csolver.c | 3 +++ src/csolver.h | 3 ++- 5 files changed, 25 insertions(+), 3 deletions(-) diff --git a/src/Makefile b/src/Makefile index 965d4d7..007705d 100644 --- a/src/Makefile +++ b/src/Makefile @@ -6,12 +6,12 @@ OBJ_DIR = bin C_SOURCES := $(wildcard *.c) $(wildcard AST/*.c) $(wildcard Tuner/*.c) $(wildcard Collections/*.c) $(wildcard Backend/*.c) $(wildcard Encoders/*.c) -HEADERS := $(wildcard *.h) $(wildcard AST/*.h) $(wildcard Tuner.*.h) $(wildcard Collections/*.h) $(wildcard Backend/*.h) $(wildcard Encoders/*.h) +HEADERS := $(wildcard *.h) $(wildcard AST/*.h) $(wildcard Tuner/*.h) $(wildcard Collections/*.h) $(wildcard Backend/*.h) $(wildcard Encoders/*.h) OBJECTS := $(CPP_SOURCES:%.cc=$(OBJ_DIR)/%.o) $(C_SOURCES:%.c=$(OBJ_DIR)/%.o) CFLAGS := -Wall -g -O0 -CFLAGS += -IAST -ICollections -IBackend -I. -IEncoders +CFLAGS += -IAST -ICollections -IBackend -I. -IEncoders -ITuner LDFLAGS := -ldl -lrt -rdynamic SHARED := -shared diff --git a/src/Tuner/tunable.c b/src/Tuner/tunable.c index 81fe363..6cd46f9 100644 --- a/src/Tuner/tunable.c +++ b/src/Tuner/tunable.c @@ -1 +1,16 @@ #include "tunable.h" + +Tuner * allocTuner() { + return ourmalloc(sizeof(Tuner)); +} + +void deleteTuner(Tuner *This) { + ourfree(This); +} + +int getTunable(Tuner This, TunableParam param, TunableDesc * descriptor) { + return descriptor->defaultValue; +} +int getVarTunable(Tuner This, VarType vartype, TunableParam param, TunableDesc * descriptor) { + return descriptor->defaultValue; +} diff --git a/src/Tuner/tunable.h b/src/Tuner/tunable.h index 84bf862..6f091ab 100644 --- a/src/Tuner/tunable.h +++ b/src/Tuner/tunable.h @@ -12,6 +12,9 @@ struct TunableDesc { int defaultValue; }; +Tuner * allocTuner(); +void deleteTuner(Tuner *This); + int getTunable(Tuner This, TunableParam param, TunableDesc * descriptor); int getVarTunable(Tuner This, VarType vartype, TunableParam param, TunableDesc * descriptor); diff --git a/src/csolver.c b/src/csolver.c index 2295e7b..036729b 100644 --- a/src/csolver.c +++ b/src/csolver.c @@ -9,6 +9,7 @@ #include "function.h" #include "satencoder.h" #include "sattranslator.h" +#include "tunable.h" CSolver *allocCSolver() { CSolver *This = (CSolver *) ourmalloc(sizeof(CSolver)); @@ -22,6 +23,7 @@ CSolver *allocCSolver() { This->allOrders = allocDefVectorOrder(); This->allFunctions = allocDefVectorFunction(); This->satEncoder = allocSATEncoder(); + This->tuner = allocTuner(); return This; } @@ -72,6 +74,7 @@ void deleteSolver(CSolver *This) { } deleteVectorFunction(This->allFunctions); deleteSATEncoder(This->satEncoder); + deleteTuner(This->tuner); ourfree(This); } diff --git a/src/csolver.h b/src/csolver.h index e225d08..fbf22da 100644 --- a/src/csolver.h +++ b/src/csolver.h @@ -7,7 +7,8 @@ struct CSolver { SATEncoder *satEncoder; bool unsat; - + Tuner *tuner; + /** This is a vector of constraints that must be satisfied. */ HashSetBoolean *constraints; -- 2.34.1