MKDIR_P = mkdir -p
OBJ_DIR = bin
-C_SOURCES := $(wildcard *.c) $(wildcard AST/*.c) $(wildcard Collections/*.c) $(wildcard Backend/*.c) $(wildcard Encoders/*.c)
+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 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)
${OBJ_DIR}:
${MKDIR_P} ${OBJ_DIR}
${MKDIR_P} ${OBJ_DIR}/AST
+ ${MKDIR_P} ${OBJ_DIR}/Tuner
${MKDIR_P} ${OBJ_DIR}/Collections
${MKDIR_P} ${OBJ_DIR}/Backend
${MKDIR_P} ${OBJ_DIR}/Encoders
--- /dev/null
+#include "tunable.h"
--- /dev/null
+#ifndef TUNABLE_H
+#define TUNABLE_H
+#include "classlist.h"
+
+
+struct Tuner {
+};
+
+struct TunableDesc {
+ int lowValue;
+ int highValue;
+ int defaultValue;
+};
+
+int getTunable(Tuner This, TunableParam param, TunableDesc * descriptor);
+int getVarTunable(Tuner This, VarType vartype, TunableParam param, TunableDesc * descriptor);
+
+#define GETTUNABLE(This, param, descriptor) getTunable(This, param, descriptor);
+#define GETVARTUNABLE(This, vartype, param, descriptor) getTunable(This, param, descriptor);
+
+#endif
struct OrderEncoder;
typedef struct OrderEncoder OrderEncoder;
+struct Tuner;
+typedef struct Tuner Tuner;
+struct TunableDesc;
+typedef struct TunableDesc TunableDesc;
+typedef int TunableParam;
+
typedef unsigned int uint;
typedef long int int64;
typedef uint64_t VarType;