private native void printConstraints(long solver);
private native void turnoffOptimizations(long solver);
private native void serialize(long solver);
+ private native void serializeID(long solver, long id);
private native void mustHaveValue(long solver, long element);
private native void setInterpreter(long solver, int type);
private native long clone(long solver);
CCSOLVER(solver)->turnoffOptimizations();
}
+void serializeID(void *solver, long id) {
+ CCSOLVER(solver)->serializeID(id);
+}
void serialize(void *solver) {
CCSOLVER(solver)->serialize();
int getOrderConstraintValue(void *solver,void *order, long first, long second);
void printConstraints(void *solver);
void turnoffOptimizations(void *solver);
+void serializeID(void *solver, long id);
void serialize(void *solver);
void mustHaveValue(void *solver, void *element);
void setInterpreter(void *solver, unsigned int type);
return deserializer.deserialize();
}
-void CSolver::serialize() {
+void CSolver::serializeID(long long id) {
model_print("serializing ...\n");
char buffer[255];
- long long nanotime = getTimeNano();
- int numchars = sprintf(buffer, "DUMP%llu", nanotime);
+ int numchars = sprintf(buffer, "%llu.dump", id);
Serializer serializer(buffer);
SetIteratorBooleanEdge *it = getConstraints();
while (it->hasNext()) {
delete it;
}
+void CSolver::serialize() {
+ long long nanotime = getTimeNano();
+ serializeID(nanotime);
+}
+
Set *CSolver::createSet(VarType type, uint64_t *elements, uint numelements) {
Set *set = new Set(type, elements, numelements);
allSets.push(set);
void replaceBooleanWithFalse(BooleanEdge bexpr);
void replaceBooleanWithBoolean(BooleanEdge oldb, BooleanEdge newb);
CSolver *clone();
+ void serializeID(long long id);
void serialize();
static CSolver *deserialize(const char *file, InterpreterType itype = SATUNE);
void autoTune(uint budget);
turnoffOptimizations((void *)solver);
}
+/*
+ * Class: SatuneJavaAPI
+ * Method: serialize
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_serializeID
+ (JNIEnv *env, jobject obj, jlong solver, jlong id)
+{
+ serializeID((void *)solver, id);
+}
+
/*
* Class: SatuneJavaAPI
* Method: serialize
JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_serialize
(JNIEnv *, jobject, jlong);
+/*
+ * Class: satune_SatuneJavaAPI
+ * Method: serialize
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_serializeID
+ (JNIEnv *, jobject, jlong, jlong);
+
/*
* Class: satune_SatuneJavaAPI
* Method: mustHaveValue