0a7d6725773f4219a85b45dea0eafe5cdf5bff96
[satune.git] / src / satune_SatuneJavaAPI.cc
1 /* DO NOT EDIT THIS FILE - it is machine generated */
2 #include "satune_SatuneJavaAPI.h"
3 #include "ccsolver.h"
4 #define CCSOLVER(solver) (void *)solver
5 /* Header for class SatuneJavaAPI */
6
7 /*
8  * Class:     SatuneJavaAPI
9  * Method:    createCCSolver
10  * Signature: ()J
11  */
12
13 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createCCSolver
14         (JNIEnv *env, jobject obj)
15 {
16         return (jlong)createCCSolver();
17
18 }
19
20 /*
21  * Class:     SatuneJavaAPI
22  * Method:    deleteCCSolver
23  * Signature: (J)V
24  */
25 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_deleteCCSolver
26         (JNIEnv *env, jobject obj, jlong solver)
27 {
28         deleteCCSolver(CCSOLVER(solver));
29 }
30
31 /*
32  * Class:     SatuneJavaAPI
33  * Method:    resetCCSolver
34  * Signature: (J)V
35  */
36 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_resetCCSolver
37         (JNIEnv *env, jobject obj, jlong solver)
38 {
39         resetCCSolver(CCSOLVER(solver));
40 }
41
42 /*
43  * Class:     SatuneJavaAPI
44  * Method:    createSet
45  * Signature: (JIJI)J
46  */
47 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createSet
48         (JNIEnv *env, jobject obj, jlong solver, jint type, jlongArray arr)
49 {
50         jsize num = env->GetArrayLength(arr);
51         jlong *elements = env->GetLongArrayElements(arr, 0);
52         return (jlong)createSet((void *)solver,(unsigned int) type, elements, (unsigned int) num);
53 }
54
55 /*
56  * Class:     SatuneJavaAPI
57  * Method:    createRangeSet
58  * Signature: (JIJJ)J
59  */
60 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createRangeSet
61         (JNIEnv *env, jobject obj, jlong solver, jint type, jlong lowrange, jlong highrange)
62 {
63         return (jlong)createRangeSet((void *)solver,(unsigned int) type, (long) lowrange, (long) highrange);
64 }
65
66 /*
67  * Class:     SatuneJavaAPI
68  * Method:    createRangeVar
69  * Signature: (JIJJ)J
70  */
71 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createRangeVar
72         (JNIEnv *env, jobject obj, jlong solver, jint type, jlong lowrange, jlong highrange)
73 {
74         return (jlong)createRangeVar((void *)solver,(unsigned int) type, (long) lowrange, (long) highrange);
75 }
76
77 /*
78  * Class:     SatuneJavaAPI
79  * Method:    createMutableSet
80  * Signature: (JI)J
81  */
82 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createMutableSet
83         (JNIEnv *env, jobject obj, jlong solver, jint type)
84 {
85         return (jlong)createMutableSet((void *)solver,(unsigned int) type);
86 }
87
88 /*
89  * Class:     SatuneJavaAPI
90  * Method:    addItem
91  * Signature: (JJJ)V
92  */
93 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_addItem
94         (JNIEnv *env, jobject obj, jlong solver, jlong set, jlong element)
95 {
96         addItem((void *)solver,(void *)set, (long) element);
97 }
98
99 /*
100  * Class:     SatuneJavaAPI
101  * Method:    finalizeMutableSet
102  * Signature: (JJ)V
103  */
104 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_finalizeMutableSet
105         (JNIEnv *ev, jobject obj, jlong solver, jlong set)
106 {
107         finalizeMutableSet((void *)solver,(void *)set);
108 }
109
110 /*
111  * Class:     SatuneJavaAPI
112  * Method:    getElementVar
113  * Signature: (JJ)J
114  */
115 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_getElementVar
116         (JNIEnv *env, jobject obj, jlong solver, jlong set)
117 {
118         return (jlong) getElementVar((void *)solver,(void *)set);
119 }
120
121 /*
122  * Class:     SatuneJavaAPI
123  * Method:    getElementConst
124  * Signature: (JIJ)J
125  */
126 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_getElementConst
127         (JNIEnv *env, jobject obj, jlong solver, jint type, jlong value)
128 {
129         return (jlong)getElementConst((void *)solver,(unsigned int) type, (long) value);
130 }
131
132 /*
133  * Class:     SatuneJavaAPI
134  * Method:    getElementRange
135  * Signature: (JJ)J
136  */
137 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_getElementRange
138         (JNIEnv *env, jobject obj, jlong solver, jlong element)
139 {
140         return (jlong)getElementRange ((void *)solver,(void *)element);
141 }
142
143 /*
144  * Class:     SatuneJavaAPI
145  * Method:    getBooleanVar
146  * Signature: (JI)J
147  */
148 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_getBooleanVar
149         (JNIEnv *env, jobject obj, jlong solver, jint type)
150 {
151         return (jlong)getBooleanVar((void *)solver,(unsigned int) type);
152 }
153
154
155 /*
156  * Class:     SatuneJavaAPI
157  * Method:    getBooleanVar
158  * Signature: (JI)J
159  */
160 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_getBooleanTrue
161         (JNIEnv *env, jobject obj, jlong solver)
162 {
163         return (jlong)getBooleanTrue((void *)solver);
164 }
165
166 /*
167  * Class:     SatuneJavaAPI
168  * Method:    getBooleanVar
169  * Signature: (JI)J
170  */
171 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_getBooleanFalse
172         (JNIEnv *env, jobject obj, jlong solver)
173 {
174         return (jlong)getBooleanFalse((void *)solver);
175 }
176
177 /*
178  * Class:     SatuneJavaAPI
179  * Method:    createFunctionOperator
180  * Signature: (JIJI)J
181  */
182 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createFunctionOperator
183         (JNIEnv *env, jobject obj, jlong solver, jint op, jlong range, jint overflowbehavior)
184 {
185         return (jlong)createFunctionOperator((void *)solver,(unsigned int) op, (void *)range,(unsigned int) overflowbehavior);
186 }
187
188 /*
189  * Class:     SatuneJavaAPI
190  * Method:    createPredicateOperator
191  * Signature: (JI)J
192  */
193 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createPredicateOperator
194         (JNIEnv *env, jobject obj, jlong solver, jint op)
195 {
196         return (jlong)createPredicateOperator((void *)solver,(unsigned int) op);
197 }
198
199 /*
200  * Class:     SatuneJavaAPI
201  * Method:    createPredicateTable
202  * Signature: (JJI)J
203  */
204 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createPredicateTable
205         (JNIEnv *env, jobject obj, jlong solver, jlong table, jint behavior)
206 {
207         return (jlong) createPredicateTable((void *)solver,(void *)table, (unsigned int) behavior);
208 }
209
210 /*
211  * Class:     SatuneJavaAPI
212  * Method:    createTable
213  * Signature: (JJ)J
214  */
215 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createTable
216         (JNIEnv *env, jobject obj, jlong solver, jlong range)
217 {
218         return (jlong)createTable((void *)solver, (void *)range);
219 }
220
221 /*
222  * Class:     SatuneJavaAPI
223  * Method:    createTableForPredicate
224  * Signature: (J)J
225  */
226 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createTableForPredicate
227         (JNIEnv *env, jobject obj, jlong solver)
228 {
229         return (jlong)createTableForPredicate((void *)solver);
230 }
231
232 /*
233  * Class:     SatuneJavaAPI
234  * Method:    addTableEntry
235  * Signature: (JJJIJ)V
236  */
237 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_addTableEntry
238         (JNIEnv *env, jobject obj, jlong solver, jlong table, jlong inputs, jint inputSize, jlong result)
239 {
240         addTableEntry((void *)solver,(void *)table, (void *)inputs, (unsigned int) inputSize, (long) result);
241 }
242
243 /*
244  * Class:     SatuneJavaAPI
245  * Method:    completeTable
246  * Signature: (JJI)J
247  */
248 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_completeTable
249         (JNIEnv *env, jobject obj, jlong solver, jlong table, jint behavior)
250 {
251         return (jlong)completeTable((void *)solver,(void *)table, (unsigned int) behavior);
252 }
253
254 /*
255  * Class:     SatuneJavaAPI
256  * Method:    applyFunction
257  * Signature: (JJJIJ)J
258  */
259 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_applyFunction
260         (JNIEnv *env, jobject obj, jlong solver, jlong function, jlong array, jint numArrays, jlong overflowstatus)
261 {
262         return (jlong)applyFunction((void *)solver,(void *)function, (void **)array, (unsigned int) numArrays, (void *)overflowstatus);
263 }
264
265 /*
266  * Class:     SatuneJavaAPI
267  * Method:    applyPredicateTable
268  * Signature: (JJJIJ)J
269  */
270 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_applyPredicateTable
271         (JNIEnv *env, jobject obj, jlong solver, jlong predicate, jlongArray arr, jlong undefinedStatus)
272 {
273         jsize numInputs = env->GetArrayLength(arr);
274         jlong *inputs = env->GetLongArrayElements(arr, 0);
275         return (jlong) applyPredicateTable((void *)solver,(void *)predicate, (void **)inputs, (unsigned int) numInputs, (void *)undefinedStatus);
276 }
277
278 /*
279  * Class:     SatuneJavaAPI
280  * Method:    applyPredicate
281  * Signature: (JJJI)J
282  */
283 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_applyPredicate
284         (JNIEnv *env, jobject obj, jlong solver, jlong predicate, jlongArray arr)
285 {
286         jsize numInputs = env->GetArrayLength(arr);
287         jlong *inputs = env->GetLongArrayElements(arr, 0);
288         return (jlong)applyPredicate((void *)solver,(void *)predicate, (void **)inputs, (unsigned int) numInputs);
289 }
290
291 /*
292  * Class:     SatuneJavaAPI
293  * Method:    applyLogicalOperation
294  * Signature: (JIJI)J
295  */
296 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_applyLogicalOperation
297         (JNIEnv *env, jobject obj, jlong solver, jint op, jlongArray arr)
298 {
299         jsize asize = env->GetArrayLength(arr);
300         jlong *array = env->GetLongArrayElements(arr, 0);
301         return (jlong)applyLogicalOperation((void *)solver,(unsigned int) op, (void **)array, (unsigned int) asize);
302 }
303
304 /*
305  * Class:     SatuneJavaAPI
306  * Method:    applyLogicalOperation
307  * Signature: (JIJI)J
308  */
309 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_applyExactlyOneConstraint
310         (JNIEnv *env, jobject obj, jlong solver, jlongArray arr)
311 {
312         jsize asize = env->GetArrayLength(arr);
313         jlong *array = env->GetLongArrayElements(arr, 0);
314         return (jlong)applyExactlyOneConstraint((void *)solver,(void **)array, (unsigned int) asize);
315 }
316
317 /*
318  * Class:     SatuneJavaAPI
319  * Method:    applyLogicalOperationTwo
320  * Signature: (JIJJ)J
321  */
322 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_applyLogicalOperationTwo
323         (JNIEnv *env, jobject obj, jlong solver, jint op, jlong arg1, jlong arg2)
324 {
325         return (jlong) applyLogicalOperationTwo((void *)solver,(unsigned int) op, (void *)arg1, (void *)arg2);
326 }
327
328 /*
329  * Class:     SatuneJavaAPI
330  * Method:    applyLogicalOperationOne
331  * Signature: (JIJ)J
332  */
333 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_applyLogicalOperationOne
334         (JNIEnv *env, jobject obj, jlong solver, jint op, jlong arg)
335 {
336         return (jlong)applyLogicalOperationOne((void *)solver,(unsigned int) op, (void *)arg);
337 }
338
339 /*
340  * Class:     SatuneJavaAPI
341  * Method:    addConstraint
342  * Signature: (JJ)V
343  */
344 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_addConstraint
345         (JNIEnv *env, jobject obj, jlong solver, jlong constraint)
346 {
347         addConstraint((void *)solver,(void *)constraint);
348 }
349
350 /*
351  * Class:     SatuneJavaAPI
352  * Method:    printConstraint
353  * Signature: (JJ)V
354  */
355 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_printConstraint
356         (JNIEnv *env, jobject obj, jlong solver, jlong constraint)
357 {
358         printConstraint((void *)solver,(void *)constraint);
359 }
360
361 /*
362  * Class:     SatuneJavaAPI
363  * Method:    createOrder
364  * Signature: (JIJ)J
365  */
366 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_createOrder
367         (JNIEnv *env, jobject obj, jlong solver, jint type, jlong set)
368 {
369         return (jlong)createOrder((void *)solver,(unsigned int) type, (void *)set);
370 }
371
372 /*
373  * Class:     SatuneJavaAPI
374  * Method:    orderConstraint
375  * Signature: (JJJJ)J
376  */
377 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_orderConstraint
378         (JNIEnv *env, jobject obj, jlong solver, jlong order, jlong first, jlong second)
379 {
380         return (jlong)orderConstraint((void *)solver,(void *)order, (long) first, (long) second);
381 }
382
383 /*
384  * Class:     SatuneJavaAPI
385  * Method:    solve
386  * Signature: (J)I
387  */
388 JNIEXPORT jint JNICALL Java_satune_SatuneJavaAPI_solve
389         (JNIEnv *env, jobject obj, jlong solver)
390 {
391         return (jint) solve((void *)solver);
392 }
393
394 /*
395  * Class:     SatuneJavaAPI
396  * Method:    solveIncremental
397  * Signature: (J)I
398  */
399 JNIEXPORT jint JNICALL Java_satune_SatuneJavaAPI_solveIncremental
400         (JNIEnv *env, jobject obj, jlong solver)
401 {
402         return (jint) solveIncremental((void *)solver);
403 }
404
405 /*
406  * Class:     SatuneJavaAPI
407  * Method:    getElementValue
408  * Signature: (JJ)J
409  */
410 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_getElementValue
411         (JNIEnv *env, jobject obj, jlong solver, jlong element)
412 {
413         return (jlong) getElementValue((void *)solver,(void *)element);
414 }
415
416 /*
417  * Class:     SatuneJavaAPI
418  * Method:    freezeElement
419  * Signature: (JJ)J
420  */
421 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_freezeElement
422         (JNIEnv *env, jobject obj, jlong solver, jlong element)
423 {
424         freezeElement((void *)solver,(void *)element);
425 }
426
427 /*
428  * Class:     SatuneJavaAPI
429  * Method:    getBooleanValue
430  * Signature: (JJ)I
431  */
432 JNIEXPORT jint JNICALL Java_satune_SatuneJavaAPI_getBooleanValue
433         (JNIEnv *env, jobject obj, jlong solver, jlong boolean)
434 {
435         return (jint) getBooleanValue((void *)solver, (void *)boolean);
436 }
437
438 /*
439  * Class:     SatuneJavaAPI
440  * Method:    getOrderConstraintValue
441  * Signature: (JJJJ)I
442  */
443 JNIEXPORT jint JNICALL Java_satune_SatuneJavaAPI_getOrderConstraintValue
444         (JNIEnv *env, jobject obj, jlong solver, jlong order, jlong first, jlong second)
445 {
446         return (jint) getOrderConstraintValue((void *)solver,(void *)order, (long) first, (long) second);
447 }
448
449 /*
450  * Class:     SatuneJavaAPI
451  * Method:    printConstraints
452  * Signature: (J)V
453  */
454 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_printConstraints
455         (JNIEnv *env, jobject obj, jlong solver)
456 {
457         printConstraints((void *)solver);
458 }
459
460 /*
461  * Class:     SatuneJavaAPI
462  * Method:    turnoffOptimizations
463  * Signature: (J)V
464  */
465 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_turnoffOptimizations
466         (JNIEnv *env, jobject obj, jlong solver)
467 {
468         turnoffOptimizations((void *)solver);
469 }
470
471 /*
472  * Class:     SatuneJavaAPI
473  * Method:    serialize
474  * Signature: (J)V
475  */
476 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_serialize
477         (JNIEnv *env, jobject obj, jlong solver)
478 {
479         serialize((void *)solver);
480 }
481
482 /*
483  * Class:     SatuneJavaAPI
484  * Method:    mustHaveValue
485  * Signature: (JJ)V
486  */
487 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_mustHaveValue
488         (JNIEnv *env, jobject obj, jlong solver, jlong element)
489 {
490         mustHaveValue((void *)solver, (void *)element);
491 }
492
493 /*
494  * Class:     SatuneJavaAPI
495  * Method:    setInterpreter
496  * Signature: (JI)V
497  */
498 JNIEXPORT void JNICALL Java_satune_SatuneJavaAPI_setInterpreter
499         (JNIEnv *env, jobject obj, jlong solver, jint type)
500 {
501         setInterpreter((void *)solver, (unsigned int) type);
502 }
503
504 /*
505  * Class:     SatuneJavaAPI
506  * Method:    clone
507  * Signature: (J)J
508  */
509 JNIEXPORT jlong JNICALL Java_satune_SatuneJavaAPI_clone
510         (JNIEnv *env, jobject obj, jlong solver)
511 {
512         return (jlong)clone((void *)solver);
513 }
514