73 JNIEXPORT
void JNICALL
75 (JNIEnv* env, jclass ) {
80 JNIEXPORT
void JNICALL
82 (JNIEnv* env, jclass ) {
88 JNIEXPORT
void JNICALL
90 (JNIEnv* env, jclass j_by_ref_class) {
92 fID = env->GetFieldID(j_by_ref_class,
"obj",
"Ljava/lang/Object;");
96 mID = env->GetMethodID(j_by_ref_class,
"<init>",
"(Ljava/lang/Object;)V");
101 JNIEXPORT jint JNICALL
103 return PPL_COEFFICIENT_BITS;
106 JNIEXPORT
void JNICALL
108 (JNIEnv* env, jclass j_coeff_class) {
110 fID = env->GetFieldID(j_coeff_class,
"value",
"Ljava/math/BigInteger;");
114 mID = env->GetMethodID(j_coeff_class,
"<init>",
"(Ljava/lang/String;)V");
117 mID = env->GetMethodID(j_coeff_class,
"toString",
"()Ljava/lang/String;");
121 mID = env->GetStaticMethodID(cached_classes.
Boolean,
"valueOf",
122 "(Z)Ljava/lang/Boolean;");
126 mID = env->GetStaticMethodID(cached_classes.
Integer,
"valueOf",
127 "(I)Ljava/lang/Integer;");
130 mID = env->GetMethodID(cached_classes.
Integer,
"intValue",
"()I");
134 mID = env->GetStaticMethodID(cached_classes.
Long,
"valueOf",
135 "(J)Ljava/lang/Long;");
138 mID = env->GetMethodID(cached_classes.
Long,
"longValue",
"()J");
143 JNIEXPORT
void JNICALL
145 (JNIEnv* env, jclass j_complexity_class) {
146 jmethodID mID = env->GetMethodID(j_complexity_class,
"ordinal",
"()I");
151 JNIEXPORT
void JNICALL
153 (JNIEnv* env, jclass j_congruence_class) {
155 fID = env->GetFieldID(j_congruence_class,
"mod",
156 "Lparma_polyhedra_library/Coefficient;");
159 fID = env->GetFieldID(j_congruence_class,
"lhs",
160 "Lparma_polyhedra_library/Linear_Expression;");
163 fID = env->GetFieldID(j_congruence_class,
"rhs",
164 "Lparma_polyhedra_library/Linear_Expression;");
168 mID = env->GetMethodID(j_congruence_class,
"<init>",
169 "(Lparma_polyhedra_library/Linear_Expression;"
170 "Lparma_polyhedra_library/Linear_Expression;"
171 "Lparma_polyhedra_library/Coefficient;)V");
176 JNIEXPORT
void JNICALL
178 (JNIEnv* env, jclass j_con_sys_class) {
180 mID = env->GetMethodID(j_con_sys_class,
"<init>",
"()V");
183 mID = env->GetMethodID(j_con_sys_class,
"add",
"(Ljava/lang/Object;)Z");
188 JNIEXPORT
void JNICALL
190 (JNIEnv* env, jclass j_constraint_class) {
192 fID = env->GetFieldID(j_constraint_class,
"lhs",
193 "Lparma_polyhedra_library/Linear_Expression;");
196 fID = env->GetFieldID(j_constraint_class,
"rhs",
197 "Lparma_polyhedra_library/Linear_Expression;");
200 fID = env->GetFieldID(j_constraint_class,
"kind",
201 "Lparma_polyhedra_library/Relation_Symbol;");
205 mID = env->GetMethodID(j_constraint_class,
"<init>",
206 "(Lparma_polyhedra_library/Linear_Expression;"
207 "Lparma_polyhedra_library/Relation_Symbol;"
208 "Lparma_polyhedra_library/Linear_Expression;)V");
213 JNIEXPORT
void JNICALL
215 (JNIEnv* env, jclass j_con_sys_class) {
217 mID = env->GetMethodID(j_con_sys_class,
"<init>",
"()V");
220 mID = env->GetMethodID(j_con_sys_class,
"add",
"(Ljava/lang/Object;)Z");
224 mID = env->GetMethodID(j_con_sys_class,
"iterator",
225 "()Ljava/util/Iterator;");
228 mID = env->GetMethodID(cached_classes.
Iterator,
"hasNext",
"()Z");
231 assert(cached_classes.
Iterator != NULL);
232 mID = env->GetMethodID(cached_classes.
Iterator,
"next",
233 "()Ljava/lang/Object;");
238 JNIEXPORT
void JNICALL
240 (JNIEnv* env, jclass j_degenerate_class) {
241 jmethodID mID = env->GetMethodID(j_degenerate_class,
"ordinal",
"()I");
246 JNIEXPORT
void JNICALL
248 (JNIEnv* env, jclass j_generator_class) {
250 fID = env->GetFieldID(j_generator_class,
"gt",
251 "Lparma_polyhedra_library/Generator_Type;");
254 fID = env->GetFieldID(j_generator_class,
"le",
255 "Lparma_polyhedra_library/Linear_Expression;");
258 fID = env->GetFieldID(j_generator_class,
"div",
259 "Lparma_polyhedra_library/Coefficient;");
263 mID = env->GetStaticMethodID(j_generator_class,
"line",
264 "(Lparma_polyhedra_library/Linear_Expression;)"
265 "Lparma_polyhedra_library/Generator;");
268 mID = env->GetStaticMethodID(j_generator_class,
"ray",
269 "(Lparma_polyhedra_library/Linear_Expression;)"
270 "Lparma_polyhedra_library/Generator;");
273 mID = env->GetStaticMethodID(j_generator_class,
"point",
274 "(Lparma_polyhedra_library/Linear_Expression;"
275 "Lparma_polyhedra_library/Coefficient;)"
276 "Lparma_polyhedra_library/Generator;");
279 mID = env->GetStaticMethodID(j_generator_class,
"closure_point",
280 "(Lparma_polyhedra_library/Linear_Expression;"
281 "Lparma_polyhedra_library/Coefficient;)"
282 "Lparma_polyhedra_library/Generator;");
287 JNIEXPORT
void JNICALL
289 (JNIEnv* env, jclass j_gen_sys_class) {
291 mID = env->GetMethodID(j_gen_sys_class,
"<init>",
"()V");
294 mID = env->GetMethodID(j_gen_sys_class,
"add",
"(Ljava/lang/Object;)Z");
299 JNIEXPORT
void JNICALL
301 (JNIEnv* env, jclass j_gen_type_class) {
303 mID = env->GetMethodID(j_gen_type_class,
"ordinal",
"()I");
308 JNIEXPORT
void JNICALL
310 (JNIEnv* env, jclass j_grid_generator_class) {
312 fID = env->GetFieldID(j_grid_generator_class,
"gt",
313 "Lparma_polyhedra_library/Grid_Generator_Type;");
316 fID = env->GetFieldID(j_grid_generator_class,
"le",
317 "Lparma_polyhedra_library/Linear_Expression;");
320 fID = env->GetFieldID(j_grid_generator_class,
"div",
321 "Lparma_polyhedra_library/Coefficient;");
325 mID = env->GetStaticMethodID(j_grid_generator_class,
"grid_line",
326 "(Lparma_polyhedra_library/Linear_Expression;)"
327 "Lparma_polyhedra_library/Grid_Generator;");
330 mID = env->GetStaticMethodID(j_grid_generator_class,
"parameter",
331 "(Lparma_polyhedra_library/Linear_Expression;"
332 "Lparma_polyhedra_library/Coefficient;)"
333 "Lparma_polyhedra_library/Grid_Generator;");
336 mID = env->GetStaticMethodID(j_grid_generator_class,
"grid_point",
337 "(Lparma_polyhedra_library/Linear_Expression;"
338 "Lparma_polyhedra_library/Coefficient;)"
339 "Lparma_polyhedra_library/Grid_Generator;");
344 JNIEXPORT
void JNICALL
346 (JNIEnv* env, jclass j_gen_sys_class) {
348 mID = env->GetMethodID(j_gen_sys_class,
"<init>",
"()V");
351 mID = env->GetMethodID(j_gen_sys_class,
"add",
"(Ljava/lang/Object;)Z");
356 JNIEXPORT
void JNICALL
358 (JNIEnv* env, jclass j_grid_gen_type_class) {
360 mID = env->GetMethodID(j_grid_gen_type_class,
"ordinal",
"()I");
365 JNIEXPORT
void JNICALL
367 (JNIEnv* env, jclass j_le_class) {
369 mID = env->GetMethodID(j_le_class,
"sum",
370 "(Lparma_polyhedra_library/Linear_Expression;)"
371 "Lparma_polyhedra_library/Linear_Expression;");
374 mID = env->GetMethodID(j_le_class,
"times",
375 "(Lparma_polyhedra_library/Coefficient;)"
376 "Lparma_polyhedra_library/Linear_Expression;");
381 JNIEXPORT
void JNICALL
383 (JNIEnv* env, jclass j_le_coeff_class) {
385 fID = env->GetFieldID(j_le_coeff_class,
"coeff",
386 "Lparma_polyhedra_library/Coefficient;");
390 mID = env->GetMethodID(j_le_coeff_class,
"<init>",
391 "(Lparma_polyhedra_library/Coefficient;)V");
396 JNIEXPORT
void JNICALL
398 (JNIEnv* env, jclass j_le_diff_class) {
400 fID = env->GetFieldID(j_le_diff_class,
"lhs",
401 "Lparma_polyhedra_library/Linear_Expression;");
404 fID = env->GetFieldID(j_le_diff_class,
"rhs",
405 "Lparma_polyhedra_library/Linear_Expression;");
410 JNIEXPORT
void JNICALL
412 (JNIEnv* env, jclass j_le_sum_class) {
414 fID = env->GetFieldID(j_le_sum_class,
"lhs",
415 "Lparma_polyhedra_library/Linear_Expression;");
418 fID = env->GetFieldID(j_le_sum_class,
"rhs",
419 "Lparma_polyhedra_library/Linear_Expression;");
424 JNIEXPORT
void JNICALL
426 (JNIEnv* env, jclass j_le_times_class) {
428 fID = env->GetFieldID(j_le_times_class,
"coeff",
429 "Lparma_polyhedra_library/Coefficient;");
432 fID = env->GetFieldID(j_le_times_class,
"lin_expr",
433 "Lparma_polyhedra_library/Linear_Expression;");
437 mID = env->GetMethodID(j_le_times_class,
"<init>",
438 "(Lparma_polyhedra_library/Coefficient;"
439 "Lparma_polyhedra_library/Variable;)V");
444 JNIEXPORT
void JNICALL
446 (JNIEnv* env, jclass j_le_uminus_class) {
448 fID = env->GetFieldID(j_le_uminus_class,
"arg",
449 "Lparma_polyhedra_library/Linear_Expression;");
454 JNIEXPORT
void JNICALL
456 (JNIEnv* env, jclass j_le_var_class) {
458 mID = env->GetMethodID(j_le_var_class,
"<init>",
459 "(Lparma_polyhedra_library/Variable;)V");
462 mID = env->GetMethodID(j_le_var_class,
"var_id",
"()J");
467 JNIEXPORT jboolean JNICALL
469 (JNIEnv* env, jobject j_this) {
471 return build_cxx_linear_expression(env, j_this).
is_zero();
477 JNIEXPORT jboolean JNICALL
479 (JNIEnv* env, jobject j_this) {
487 JNIEXPORT
void JNICALL
489 (JNIEnv* env, jclass j_mip_status_class) {
491 fID = env->GetStaticFieldID(j_mip_status_class,
"UNFEASIBLE_MIP_PROBLEM",
492 "Lparma_polyhedra_library/MIP_Problem_Status;");
495 fID = env->GetStaticFieldID(j_mip_status_class,
"UNBOUNDED_MIP_PROBLEM",
496 "Lparma_polyhedra_library/MIP_Problem_Status;");
499 fID = env->GetStaticFieldID(j_mip_status_class,
"OPTIMIZED_MIP_PROBLEM",
500 "Lparma_polyhedra_library/MIP_Problem_Status;");
504 mID = env->GetMethodID(j_mip_status_class,
"ordinal",
"()I");
509 JNIEXPORT
void JNICALL
511 (JNIEnv* env, jclass j_mip_status_class) {
513 fID = env->GetStaticFieldID(j_mip_status_class,
"UNFEASIBLE_PIP_PROBLEM",
514 "Lparma_polyhedra_library/PIP_Problem_Status;");
517 fID = env->GetStaticFieldID(j_mip_status_class,
"OPTIMIZED_PIP_PROBLEM",
518 "Lparma_polyhedra_library/PIP_Problem_Status;");
522 mID = env->GetMethodID(j_mip_status_class,
"ordinal",
"()I");
527 JNIEXPORT
void JNICALL
529 (JNIEnv* env, jclass j_opt_mode_class) {
531 fID = env->GetStaticFieldID(j_opt_mode_class,
"MAXIMIZATION",
532 "Lparma_polyhedra_library/Optimization_Mode;");
535 fID = env->GetStaticFieldID(j_opt_mode_class,
"MINIMIZATION",
536 "Lparma_polyhedra_library/Optimization_Mode;");
540 mID = env->GetMethodID(j_opt_mode_class,
"ordinal",
"()I");
545 JNIEXPORT
void JNICALL
547 (JNIEnv* env, jclass j_pair_class) {
549 fID = env->GetFieldID(j_pair_class,
"first",
"Ljava/lang/Object;");
552 fID = env->GetFieldID(j_pair_class,
"second",
"Ljava/lang/Object;");
557 JNIEXPORT
void JNICALL
559 (JNIEnv* env, jclass j_poly_con_relation_class) {
561 mID = env->GetMethodID(j_poly_con_relation_class,
"<init>",
"(I)V");
566 JNIEXPORT
void JNICALL
568 (JNIEnv* env, jclass j_poly_gen_relation_class) {
570 mID = env->GetMethodID(j_poly_gen_relation_class,
"<init>",
"(I)V");
575 JNIEXPORT
void JNICALL
577 (JNIEnv* env, jclass j_ppl_object_class) {
578 jfieldID fID = env->GetFieldID(j_ppl_object_class,
"ptr",
"J");
583 JNIEXPORT
void JNICALL
585 (JNIEnv* env, jclass j_rel_sym_class) {
587 fID = env->GetStaticFieldID(j_rel_sym_class,
"EQUAL",
588 "Lparma_polyhedra_library/Relation_Symbol;");
591 fID = env->GetStaticFieldID(j_rel_sym_class,
"GREATER_THAN",
592 "Lparma_polyhedra_library/Relation_Symbol;");
595 fID = env->GetStaticFieldID(j_rel_sym_class,
"GREATER_OR_EQUAL",
596 "Lparma_polyhedra_library/Relation_Symbol;");
600 mID = env->GetMethodID(j_rel_sym_class,
"ordinal",
"()I");
605 JNIEXPORT
void JNICALL
607 (JNIEnv* env, jclass j_bounded_overflow_class) {
609 fID = env->GetStaticFieldID(j_bounded_overflow_class,
"OVERFLOW_WRAPS",
610 "Lparma_polyhedra_library/Bounded_Integer_Type_Overflow;");
613 fID = env->GetStaticFieldID(j_bounded_overflow_class,
"OVERFLOW_UNDEFINED",
614 "Lparma_polyhedra_library/Bounded_Integer_Type_Overflow;");
617 fID = env->GetStaticFieldID(j_bounded_overflow_class,
"OVERFLOW_IMPOSSIBLE",
618 "Lparma_polyhedra_library/Bounded_Integer_Type_Overflow;");
622 mID = env->GetMethodID(j_bounded_overflow_class,
"ordinal",
"()I");
627 JNIEXPORT
void JNICALL
629 (JNIEnv* env, jclass j_bounded_rep_class) {
631 fID = env->GetStaticFieldID(j_bounded_rep_class,
"UNSIGNED",
632 "Lparma_polyhedra_library/Bounded_Integer_Type_Representation;");
635 fID = env->GetStaticFieldID(j_bounded_rep_class,
"SIGNED_2_COMPLEMENT",
636 "Lparma_polyhedra_library/Bounded_Integer_Type_Representation;");
640 mID = env->GetMethodID(j_bounded_rep_class,
"ordinal",
"()I");
645 JNIEXPORT
void JNICALL
647 (JNIEnv* env, jclass j_bounded_width_class) {
649 fID = env->GetStaticFieldID(j_bounded_width_class,
"BITS_8",
650 "Lparma_polyhedra_library/Bounded_Integer_Type_Width;");
653 fID = env->GetStaticFieldID(j_bounded_width_class,
"BITS_16",
654 "Lparma_polyhedra_library/Bounded_Integer_Type_Width;");
657 fID = env->GetStaticFieldID(j_bounded_width_class,
"BITS_32",
658 "Lparma_polyhedra_library/Bounded_Integer_Type_Width;");
661 fID = env->GetStaticFieldID(j_bounded_width_class,
"BITS_64",
662 "Lparma_polyhedra_library/Bounded_Integer_Type_Width;");
665 fID = env->GetStaticFieldID(j_bounded_width_class,
"BITS_128",
666 "Lparma_polyhedra_library/Bounded_Integer_Type_Width;");
670 mID = env->GetMethodID(j_bounded_width_class,
"ordinal",
"()I");
675 JNIEXPORT
void JNICALL
677 (JNIEnv* env, jclass j_variable_class) {
678 jfieldID fID = env->GetFieldID(j_variable_class,
"varid",
"J");
681 fID = env->GetStaticFieldID(j_variable_class,
"stringifier",
682 "Lparma_polyhedra_library/Variable_Stringifier;");
685 jmethodID mID = env->GetMethodID(j_variable_class,
"<init>",
"(J)V");
690 JNIEXPORT
void JNICALL
692 (JNIEnv* env, jclass j_vset_class) {
694 mID = env->GetMethodID(j_vset_class,
"<init>",
"()V");
697 mID = env->GetMethodID(j_vset_class,
"add",
"(Ljava/lang/Object;)Z");
700 mID = env->GetMethodID(j_vset_class,
"iterator",
"()Ljava/util/Iterator;");
704 jclass j_vset_iter_class = env->FindClass(
"java/util/Iterator");
706 mID = env->GetMethodID(j_vset_iter_class,
"hasNext",
"()Z");
709 mID = env->GetMethodID(j_vset_iter_class,
"next",
"()Ljava/lang/Object;");
715 JNIEXPORT jint JNICALL
721 JNIEXPORT jint JNICALL
727 JNIEXPORT jint JNICALL
733 JNIEXPORT jint JNICALL
739 JNIEXPORT jstring JNICALL
741 (JNIEnv* env, jclass) {
742 #if defined(__sun) || defined(__sun__)
748 #else // !(defined(__sun) || defined(__sun__))
750 return env->NewStringUTF(
version());
752 #endif // !(defined(__sun) || defined(__sun__))
755 JNIEXPORT jstring JNICALL
757 (JNIEnv* env, jclass) {
758 return env->NewStringUTF(
banner());
761 JNIEXPORT
void JNICALL
763 (JNIEnv* env, jclass) {
770 JNIEXPORT
void JNICALL
772 (JNIEnv* env, jclass) {
779 JNIEXPORT jint JNICALL
781 (JNIEnv* env , jclass) {
789 JNIEXPORT
void JNICALL
791 (JNIEnv* env , jclass, jint p) {
793 unsigned cxx_p = jtype_to_unsigned<unsigned>(p);
799 JNIEXPORT
void JNICALL
801 (JNIEnv* env, jclass, jint csecs) {
806 unsigned cxx_csecs = jtype_to_unsigned<unsigned>(csecs);
807 assert(cxx_csecs > 0);
816 JNIEXPORT
void JNICALL
818 (JNIEnv* env, jclass) {
825 JNIEXPORT
void JNICALL
827 (JNIEnv* env, jclass, jint unscaled_weight, jint scale) {
830 reset_deterministic_timeout();
832 assert(unscaled_weight >= 0 && scale >= 0);
833 unsigned long cxx_unscaled_weight
834 = jtype_to_unsigned<unsigned long>(unscaled_weight);
835 unsigned cxx_scale = jtype_to_unsigned<unsigned>(scale);
838 p_deterministic_timeout_object
839 =
new Weightwatch(Traits::compute_delta(cxx_unscaled_weight, cxx_scale),
845 JNIEXPORT
void JNICALL
847 (JNIEnv* env, jclass) {
849 reset_deterministic_timeout();
854 JNIEXPORT jlong JNICALL
856 (JNIEnv* env , jobject j_this_mip_problem) {
859 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
866 JNIEXPORT jlong JNICALL
868 (JNIEnv* env , jobject j_this_mip_problem) {
871 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
878 JNIEXPORT jobject JNICALL
880 (JNIEnv* env , jobject j_this_mip_problem) {
883 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
891 JNIEXPORT jobject JNICALL
893 (JNIEnv* env , jobject j_this_mip_problem) {
896 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
899 jobject j_coeff_inhomogeneous_term
900 = build_java_coeff(env, inhomogeneous_term);
904 j_coeff_inhomogeneous_term);
908 return env->CallObjectMethod(j_le,
917 JNIEXPORT jobject JNICALL
919 (JNIEnv* env , jobject j_this_mip_problem) {
922 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
930 JNIEXPORT jobject JNICALL
932 (JNIEnv* env , jobject j_this_mip_problem,
936 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
938 = build_cxx_control_parameter_name(env, j_cpn);
940 build_java_control_parameter_value(env,
948 JNIEXPORT
void JNICALL
950 (JNIEnv* env , jobject j_this_mip_problem,
954 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
956 = build_cxx_control_parameter_value(env, j_cpv);
962 JNIEXPORT jobject JNICALL
964 (JNIEnv* env, jobject j_this_mip_problem) {
971 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
974 jobject j_constraint = build_java_constraint(env, *cs_it);
975 env->CallBooleanMethod(j_cs,
987 JNIEXPORT
void JNICALL
989 (JNIEnv* env , jobject j_this_mip_problem) {
992 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
998 JNIEXPORT
void JNICALL
1000 (JNIEnv* env , jobject j_this_mip_problem, jlong j_dim) {
1003 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1004 dimension_type ppl_dim = jtype_to_unsigned<dimension_type>(j_dim);
1010 JNIEXPORT
void JNICALL
1012 (JNIEnv* env , jobject j_this_mip_problem, jobject j_vset) {
1015 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1022 JNIEXPORT
void JNICALL
1024 (JNIEnv* env , jobject j_this_mip_problem, jobject j_c) {
1027 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1034 JNIEXPORT
void JNICALL
1036 (JNIEnv* env , jobject j_this_mip_problem, jobject j_cs) {
1039 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1046 JNIEXPORT
void JNICALL
1048 (JNIEnv* env , jobject j_this_mip_problem, jobject j_le) {
1051 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1058 JNIEXPORT
void JNICALL
1060 (JNIEnv* env , jobject j_this_mip_problem, jobject j_opt_mode) {
1063 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1070 JNIEXPORT jboolean JNICALL
1072 (JNIEnv* env , jobject j_this_mip_problem) {
1075 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1083 (JNIEnv* env , jobject j_this_mip_problem) {
1086 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1087 return build_java_mip_status(env, mip->
solve());
1094 JNIEXPORT
void JNICALL
1096 (JNIEnv* env, jobject j_this_mip_problem, jobject j_gen,
1097 jobject j_coeff_num, jobject j_coeff_den) {
1100 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1101 Generator g = build_cxx_generator(env, j_gen);
1105 set_coefficient(env, j_coeff_num, build_java_coeff(env, num));
1106 set_coefficient(env, j_coeff_den, build_java_coeff(env, den));
1111 JNIEXPORT jobject JNICALL
1113 (JNIEnv* env , jobject j_this_mip_problem) {
1116 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1118 return build_java_generator(env, g);
1125 JNIEXPORT jobject JNICALL
1127 (JNIEnv* env , jobject j_this_mip_problem) {
1130 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1132 return build_java_generator(env, g);
1139 JNIEXPORT
void JNICALL
1141 (JNIEnv* env, jobject j_this_mip_problem,
1142 jobject j_coeff_num, jobject j_coeff_den) {
1147 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1149 set_coefficient(env, j_coeff_num, build_java_coeff(env, coeff_num));
1150 set_coefficient(env, j_coeff_den, build_java_coeff(env, coeff_den));
1155 JNIEXPORT jboolean JNICALL
1157 (JNIEnv* env , jobject j_this_mip_problem) {
1160 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1167 JNIEXPORT
void JNICALL
1169 (JNIEnv* env, jobject j_this_mip_problem, jlong j_dim) {
1171 dimension_type ppl_dim = jtype_to_unsigned<dimension_type>(j_dim);
1173 set_ptr(env, j_this_mip_problem, mip_ptr);
1178 JNIEXPORT
void JNICALL
1180 (JNIEnv* env , jobject j_this_mip_problem, jlong j_dim, jobject j_cs,
1181 jobject j_le, jobject j_opt_mode) {
1183 dimension_type ppl_dim = jtype_to_unsigned<dimension_type>(j_dim);
1188 set_ptr(env, j_this_mip_problem, mip_ptr);
1193 JNIEXPORT
void JNICALL
1195 (JNIEnv* env, jobject j_this, jobject j_y)
1199 set_ptr(env, j_this, this_ptr);
1202 JNIEXPORT
void JNICALL
1204 (JNIEnv* env, jobject j_this) {
1206 if (!is_java_marked(env, j_this)) {
1209 set_ptr(env, j_this, null_ptr);
1213 JNIEXPORT
void JNICALL
1215 (JNIEnv* env, jobject j_this) {
1217 if (!is_java_marked(env, j_this))
1221 JNIEXPORT jlong JNICALL
1223 (JNIEnv* env , jobject j_this_mip_problem) {
1226 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this_mip_problem));
1233 JNIEXPORT jstring JNICALL
1235 (JNIEnv* env, jobject j_this) {
1237 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this));
1239 std::ostringstream s;
1241 return env->NewStringUTF(s.str().c_str());
1244 JNIEXPORT jstring JNICALL
1246 (JNIEnv* env, jobject j_this) {
1249 =
reinterpret_cast<MIP_Problem*
>(get_ptr(env, j_this));
1250 std::ostringstream s;
1252 return env->NewStringUTF(s.str().c_str());
1258 JNIEXPORT jstring JNICALL
1260 (JNIEnv* env, jobject j_this) {
1262 Variable ppl_var = build_cxx_variable(env, j_this);
1263 std::ostringstream s;
1265 return env->NewStringUTF(s.str().c_str());
1268 JNIEXPORT
void JNICALL
1270 (JNIEnv* env, jclass j_variable_class, jobject j_stringifier) {
1272 env->SetStaticObjectField(j_variable_class,
1275 if (j_stringifier == NULL) {
1284 jclass vs_class = env->GetObjectClass(j_stringifier);
1287 jmethodID mID = env->GetMethodID(vs_class,
"stringify",
1288 "(J)Ljava/lang/String;");
1296 JNIEXPORT jstring JNICALL
1298 (JNIEnv* env, jobject j_this) {
1301 std::ostringstream s;
1303 return env->NewStringUTF(s.str().c_str());
1306 JNIEXPORT jstring JNICALL
1308 (JNIEnv* env, jobject j_this) {
1310 std::ostringstream s;
1313 return env->NewStringUTF(s.str().c_str());
1319 JNIEXPORT jstring JNICALL
1321 (JNIEnv* env, jobject g) {
1323 std::ostringstream s;
1324 Generator ppl_g = build_cxx_generator(env, g);
1326 return env->NewStringUTF(s.str().c_str());
1329 JNIEXPORT jstring JNICALL
1331 (JNIEnv* env, jobject j_this) {
1333 std::ostringstream s;
1334 Generator g = build_cxx_generator(env, j_this);
1336 return env->NewStringUTF(s.str().c_str());
1342 JNIEXPORT jstring JNICALL
1344 (JNIEnv* env, jobject c) {
1346 std::ostringstream s;
1347 Constraint ppl_c = build_cxx_constraint(env, c);
1349 return env->NewStringUTF(s.str().c_str());
1352 JNIEXPORT jstring JNICALL
1354 (JNIEnv* env, jobject j_this) {
1356 std::ostringstream s;
1357 Constraint c = build_cxx_constraint(env, j_this);
1359 return env->NewStringUTF(s.str().c_str());
1365 JNIEXPORT jstring JNICALL
1367 (JNIEnv* env, jobject g) {
1369 std::ostringstream s;
1372 return env->NewStringUTF(s.str().c_str());
1375 JNIEXPORT jstring JNICALL
1377 (JNIEnv* env, jobject j_this) {
1379 std::ostringstream s;
1382 return env->NewStringUTF(s.str().c_str());
1388 JNIEXPORT jstring JNICALL
1390 (JNIEnv* env, jobject g) {
1392 std::ostringstream s;
1393 Congruence ppl_g = build_cxx_congruence(env, g);
1395 return env->NewStringUTF(s.str().c_str());
1398 JNIEXPORT jstring JNICALL
1400 (JNIEnv* env, jobject j_this) {
1402 std::ostringstream s;
1403 Congruence c = build_cxx_congruence(env, j_this);
1405 return env->NewStringUTF(s.str().c_str());
1411 JNIEXPORT jstring JNICALL
1413 (JNIEnv* env, jobject ggs) {
1415 std::ostringstream s;
1418 return env->NewStringUTF(s.str().c_str());
1421 JNIEXPORT jstring JNICALL
1423 (JNIEnv* env, jobject j_this) {
1425 std::ostringstream s;
1428 return env->NewStringUTF(s.str().c_str());
1434 JNIEXPORT jstring JNICALL
1436 (JNIEnv* env, jobject gs) {
1438 std::ostringstream s;
1441 return env->NewStringUTF(s.str().c_str());
1444 JNIEXPORT jstring JNICALL
1446 (JNIEnv* env, jobject j_this) {
1448 std::ostringstream s;
1451 return env->NewStringUTF(s.str().c_str());
1457 JNIEXPORT jstring JNICALL
1459 (JNIEnv* env, jobject cs) {
1461 std::ostringstream s;
1464 return env->NewStringUTF(s.str().c_str());
1468 JNIEXPORT jstring JNICALL
1470 (JNIEnv* env, jobject j_this) {
1472 std::ostringstream s;
1475 return env->NewStringUTF(s.str().c_str());
1481 JNIEXPORT jstring JNICALL
1483 (JNIEnv* env, jobject cgs) {
1485 std::ostringstream s;
1488 return env->NewStringUTF(s.str().c_str());
1491 JNIEXPORT jstring JNICALL
1493 (JNIEnv* env, jobject j_this) {
1495 std::ostringstream s;
1498 return env->NewStringUTF(s.str().c_str());
1504 JNIEXPORT jstring JNICALL
1506 (JNIEnv* env, jclass, jstring str, jint indent_depth,
1507 jint preferred_first_line_length, jint preferred_line_length) {
1509 unsigned ind = jtype_to_unsigned<unsigned int>(indent_depth);
1510 unsigned pfll = jtype_to_unsigned<unsigned int>
1511 (preferred_first_line_length);
1512 unsigned pll = jtype_to_unsigned<unsigned int>(preferred_line_length);
1513 const char* chars = env->GetStringUTFChars(str, 0);
1516 std::string s =
wrap_string(chars, ind, pfll, pll);
1517 env->ReleaseStringUTFChars(str, chars);
1518 return env->NewStringUTF(s.c_str());
1524 JNIEXPORT
void JNICALL
1526 (JNIEnv* env, jobject j_this_pip_problem, jlong j_dim) {
1528 dimension_type ppl_dim = jtype_to_unsigned<dimension_type>(j_dim);
1530 set_ptr(env, j_this_pip_problem, pip_ptr);
1535 JNIEXPORT
void JNICALL
1537 (JNIEnv* env , jobject j_this_pip_problem, jlong j_dim,
1538 jobject j_cs, jobject j_vars) {
1542 Variables_Set p_vars = build_cxx_variables_set(env, j_vars);
1544 p_cs.end(), p_vars);
1545 set_ptr(env, j_this_pip_problem, pip_ptr);
1550 JNIEXPORT
void JNICALL
1552 (JNIEnv* env, jobject j_this, jobject j_y)
1556 set_ptr(env, j_this, this_ptr);
1559 JNIEXPORT jboolean JNICALL
1561 (JNIEnv* env , jobject j_this_pip_problem) {
1564 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1571 JNIEXPORT jlong JNICALL
1573 (JNIEnv* env , jobject j_this_pip_problem) {
1576 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1583 JNIEXPORT jlong JNICALL
1585 (JNIEnv* env , jobject j_this_pip_problem) {
1588 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1595 JNIEXPORT jstring JNICALL
1597 (JNIEnv* env, jobject j_this) {
1599 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this));
1601 std::ostringstream s;
1603 return env->NewStringUTF(s.str().c_str());
1606 JNIEXPORT jstring JNICALL
1608 (JNIEnv* env, jobject j_this) {
1611 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this));
1612 std::ostringstream s;
1614 return env->NewStringUTF(s.str().c_str());
1620 JNIEXPORT
void JNICALL
1622 (JNIEnv* env, jobject j_this) {
1624 if (!is_java_marked(env, j_this)) {
1627 set_ptr(env, j_this, null_ptr);
1631 JNIEXPORT
void JNICALL
1633 (JNIEnv* env, jobject j_this) {
1635 if (!is_java_marked(env, j_this))
1639 JNIEXPORT jlong JNICALL
1641 (JNIEnv* env , jobject j_this_pip_problem) {
1644 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1651 JNIEXPORT jlong JNICALL
1653 (JNIEnv* env , jobject j_this_pip_problem) {
1656 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1663 JNIEXPORT jlong JNICALL
1665 (JNIEnv* env , jobject j_this_pip_problem) {
1668 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1675 JNIEXPORT jobject JNICALL
1677 (JNIEnv* env , jobject j_this_pip_problem) {
1680 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1688 JNIEXPORT
void JNICALL
1690 (JNIEnv* env , jobject j_this_pip_problem, jlong j_dim) {
1693 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1694 dimension_type ppl_dim = jtype_to_unsigned<dimension_type>(j_dim);
1700 JNIEXPORT jlong JNICALL
1702 (JNIEnv* env , jobject j_this_pip_problem) {
1705 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1712 JNIEXPORT
void JNICALL
1714 (JNIEnv* env , jobject j_this_pip_problem, jlong j_dim_vars, jlong j_dim_pars) {
1717 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1718 dimension_type ppl_dim_vars = jtype_to_unsigned<dimension_type>(j_dim_vars);
1719 dimension_type ppl_dim_pars = jtype_to_unsigned<dimension_type>(j_dim_pars);
1725 JNIEXPORT
void JNICALL
1727 (JNIEnv* env , jobject j_this_pip_problem, jobject j_vars) {
1730 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1731 Variables_Set ppl_vars = build_cxx_variables_set(env, j_vars);
1737 JNIEXPORT jlong JNICALL
1739 (JNIEnv* env , jobject j_this_pip_problem) {
1742 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1749 JNIEXPORT
void JNICALL
1751 (JNIEnv* env , jobject j_this_pip_problem, jobject j_c) {
1754 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1755 Constraint c = build_cxx_constraint(env, j_c);
1761 JNIEXPORT
void JNICALL
1763 (JNIEnv* env , jobject j_this_pip_problem, jobject j_cs) {
1766 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1773 JNIEXPORT jboolean JNICALL
1775 (JNIEnv* env , jobject j_this_pip_problem) {
1778 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1786 (JNIEnv* env , jobject j_this_pip_problem) {
1789 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1790 return build_java_pip_status(env, pip->
solve());
1798 (JNIEnv* env , jobject j_this_pip_problem) {
1801 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1804 jclass j_class_s = env->FindClass(
"parma_polyhedra_library/PIP_Tree_Node");
1806 jmethodID j_ctr_id_s = env->GetMethodID(j_class_s,
"<init>",
"()V");
1808 jobject j_obj_s = env->NewObject(j_class_s, j_ctr_id_s);
1810 set_ptr(env, j_obj_s, solution);
1818 JNIEXPORT jobject JNICALL
1820 (JNIEnv* env , jobject j_this_pip_problem) {
1823 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1826 jclass j_class_s = env->FindClass(
"parma_polyhedra_library/PIP_Tree_Node");
1828 jmethodID j_ctr_id_s = env->GetMethodID(j_class_s,
"<init>",
"()V");
1830 jobject j_obj_s = env->NewObject(j_class_s, j_ctr_id_s);
1832 set_ptr(env, j_obj_s, solution);
1840 JNIEXPORT jobject JNICALL
1842 (JNIEnv* env , jobject j_this_pip_problem,
1846 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1848 = build_cxx_pip_problem_control_parameter_name(env, j_cpn);
1850 build_java_pip_problem_control_parameter_value
1858 JNIEXPORT jobject JNICALL
1860 (JNIEnv* env, jobject j_this_pip_problem, jlong j_index) {
1863 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1864 dimension_type p_index = jtype_to_unsigned<dimension_type>(j_index);
1872 JNIEXPORT jobject JNICALL
1874 (JNIEnv* env, jobject j_this_pip_problem) {
1881 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1884 jobject j_constraint = build_java_constraint(env, *cs_it);
1885 env->CallBooleanMethod(j_cs,
1897 JNIEXPORT
void JNICALL
1899 (JNIEnv* env, jobject j_this_pip_problem, jobject j_cpv) {
1902 =
reinterpret_cast<PIP_Problem*
>(get_ptr(env, j_this_pip_problem));
1904 = build_cxx_pip_problem_control_parameter_value(env, j_cpv);
1910 JNIEXPORT jboolean JNICALL
1912 (JNIEnv* env, jobject j_this_pip_tree) {
1915 =
reinterpret_cast<PIP_Tree_Node*
>(get_ptr(env, j_this_pip_tree));
1922 JNIEXPORT
void JNICALL
1924 (JNIEnv* env, jobject j_this) {
1926 if (!is_java_marked(env, j_this)) {
1929 set_ptr(env, j_this, null_ptr);
1933 JNIEXPORT
void JNICALL
1935 (JNIEnv* env, jobject j_this) {
1937 if (!is_java_marked(env, j_this))
1941 JNIEXPORT jobject JNICALL
1943 (JNIEnv* env, jobject j_this_pip_node) {
1950 =
reinterpret_cast<PIP_Tree_Node*
>(get_ptr(env, j_this_pip_node));
1951 return build_java_constraint_system(env, pip->
constraints());
1958 JNIEXPORT jobject JNICALL
1960 (JNIEnv* env, jobject j_this) {
1964 if (solution == 0) {
1970 = env->FindClass(
"parma_polyhedra_library/PIP_Solution_Node");
1972 jmethodID j_ctr_id_s = env->GetMethodID(j_class_s,
"<init>",
"()V");
1974 jobject j_obj_s = env->NewObject(j_class_s, j_ctr_id_s);
1976 set_ptr(env, j_obj_s, solution);
1984 JNIEXPORT jobject JNICALL
1986 (JNIEnv* env, jobject j_this) {
1990 if (decision == 0) {
1996 = env->FindClass(
"parma_polyhedra_library/PIP_Decision_Node");
1998 jmethodID j_ctr_id_d = env->GetMethodID(j_class_d,
"<init>",
"()V");
2000 jobject j_obj_d = env->NewObject(j_class_d, j_ctr_id_d);
2002 set_ptr(env, j_obj_d, decision);
2010 JNIEXPORT jlong JNICALL
2012 (JNIEnv* env , jobject j_this) {
2021 JNIEXPORT jobject JNICALL
2023 (JNIEnv* env, jobject j_this_pip_node) {
2031 =
reinterpret_cast<const PIP_Tree_Node*
>(get_ptr(env, j_this_pip_node));
2032 for (PIP_Tree_Node::Artificial_Parameter_Sequence::const_iterator
2035 jobject j_art = build_java_artificial_parameter(env, *i);
2036 env->CallBooleanMethod(j_arts,
2048 JNIEXPORT jstring JNICALL
2050 (JNIEnv* env, jobject j_this) {
2054 std::ostringstream s;
2056 return env->NewStringUTF(s.str().c_str());
2059 JNIEXPORT jobject JNICALL
2061 (JNIEnv* env, jobject j_this, jboolean j_branch) {
2070 jclass j_class_s = env->FindClass(
"parma_polyhedra_library/PIP_Tree_Node");
2072 jmethodID j_ctr_id_s = env->GetMethodID(j_class_s,
"<init>",
"()V");
2074 jobject j_obj_s = env->NewObject(j_class_s, j_ctr_id_s);
2076 set_ptr(env, j_obj_s, child);
2084 JNIEXPORT jobject JNICALL
2086 (JNIEnv* env, jobject j_this, jobject j_var) {
2089 Variable v = build_cxx_variable(env, j_var);
2093 JNIEXPORT
void JNICALL
2095 (JNIEnv* env, jclass j_artificial_parameter_class) {
2097 fID = env->GetFieldID(j_artificial_parameter_class,
"le",
2098 "Lparma_polyhedra_library/Linear_Expression;");
2101 fID = env->GetFieldID(j_artificial_parameter_class,
"den",
2102 "Lparma_polyhedra_library/Coefficient;");
2106 mID = env->GetMethodID(j_artificial_parameter_class,
"<init>",
2107 "(Lparma_polyhedra_library/Linear_Expression;"
2108 "Lparma_polyhedra_library/Coefficient;)V");
2113 JNIEXPORT jstring JNICALL
2115 (JNIEnv* env, jobject j_this) {
2117 std::ostringstream s;
2118 PIP_Tree_Node::Artificial_Parameter art
2119 = build_cxx_artificial_parameter(env, j_this);
2121 return env->NewStringUTF(s.str().c_str());
2127 JNIEXPORT jstring JNICALL
2129 (JNIEnv* env, jobject j_this) {
2131 std::ostringstream s;
2132 PIP_Tree_Node::Artificial_Parameter ppl_art
2133 = build_cxx_artificial_parameter(env, j_this);
2135 return env->NewStringUTF(s.str().c_str());
2138 JNIEXPORT
void JNICALL
2140 (JNIEnv* env, jclass j_aps_class) {
2142 mID = env->GetMethodID(j_aps_class,
"<init>",
"()V");
2145 mID = env->GetMethodID(j_aps_class,
"add",
"(Ljava/lang/Object;)Z");
2151 JNIEXPORT
void JNICALL
2153 (JNIEnv* env, jobject j_this_pfunc) {
2156 set_ptr(env, j_this_pfunc, pfunc_ptr);
2161 JNIEXPORT jboolean JNICALL
2163 (JNIEnv* env , jobject j_this_pfunc) {
2173 JNIEXPORT jlong JNICALL
2175 (JNIEnv* env , jobject j_this_pfunc) {
2185 JNIEXPORT jlong JNICALL
2187 (JNIEnv* env, jobject j_this_pfunc, jlong j_i) {
2192 if (pfunc->
maps(i, j))
2198 JNIEXPORT
void JNICALL
2200 (JNIEnv* env , jobject j_this_pfunc, jlong i, jlong j) {
2209 JNIEXPORT
void JNICALL
2211 (JNIEnv* env, jobject j_this) {
2214 if (!is_java_marked(env, j_this)) {
2217 set_ptr(env, j_this, null_ptr);
2221 JNIEXPORT
void JNICALL
2223 (JNIEnv* env, jobject j_this) {
2226 if (!is_java_marked(env, j_this))
Artificial_Parameter_Sequence::const_iterator art_parameter_begin() const
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_Partial_1Function_max_1in_1codomain(JNIEnv *env, jobject j_this_pfunc)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_finalize(JNIEnv *env, jobject j_this)
bool is_satisfiable() const
jmethodID Linear_Expression_Variable_var_id_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_set_1timeout(JNIEnv *env, jclass, jint csecs)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Grid_1Generator_1System_toString(JNIEnv *env, jobject ggs)
jmethodID Optimization_Mode_ordinal_ID
jfieldID Generator_div_ID
jfieldID Relation_Symbol_GREATER_OR_EQUAL_ID
jmethodID Linear_Expression_Variable_init_ID
jmethodID Coefficient_toString_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Degenerate_1Element_initIDs(JNIEnv *env, jclass j_degenerate_class)
const_iterator constraints_end() const
void set_optimization_mode(Optimization_Mode mode)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_initIDs(JNIEnv *env, jclass j_le_class)
jmethodID Coefficient_init_from_String_ID
static dimension_type max_space_dimension()
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Optimization_1Mode_initIDs(JNIEnv *env, jclass j_opt_mode_class)
jmethodID Poly_Gen_Relation_init_ID
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_space_1dimension(JNIEnv *env, jobject j_this_mip_problem)
JNIEXPORT jint JNICALL Java_parma_1polyhedra_1library_Coefficient_bits(JNIEnv *, jclass)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Generator_ascii_1dump(JNIEnv *env, jobject j_this)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_set_1deterministic_1timeout(JNIEnv *env, jclass, jint unscaled_weight, jint scale)
jmethodID Variable_init_ID
void add_constraint(const Constraint &c)
virtual const PIP_Decision_Node * as_decision() const =0
jfieldID Bounded_Integer_Type_Overflow_OVERFLOW_WRAPS_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_add_1to_1parameter_1space_1dimensions(JNIEnv *env, jobject j_this_pip_problem, jobject j_vars)
jfieldID Congruence_lhs_ID
jmethodID Grid_Generator_Type_ordinal_ID
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Constraint_1System_ascii_1dump(JNIEnv *env, jobject j_this)
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_max_1space_1dimension(JNIEnv *env, jobject j_this_mip_problem)
jmethodID Congruence_System_add_ID
void set_control_parameter(Control_Parameter_Value value)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Tree_1Node_free(JNIEnv *env, jobject j_this)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Generator_1System_initIDs(JNIEnv *env, jclass j_gen_sys_class)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_add_1space_1dimensions_1and_1embed(JNIEnv *env, jobject j_this_pip_problem, jlong j_dim_vars, jlong j_dim_pars)
void add_constraints(const Constraint_System &cs)
#define CHECK_RESULT_ASSERT(env, cond)
jmethodID Congruence_init_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_add_1constraint(JNIEnv *env, jobject j_this_mip_problem, jobject j_c)
void add_constraints(const Constraint_System &cs)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Artificial_1Parameter_initIDs(JNIEnv *env, jclass j_artificial_parameter_class)
jfieldID Congruence_mod_ID
jfieldID Variable_stringifier_ID
Coefficient_traits::const_reference inhomogeneous_term() const
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_version(JNIEnv *env, jclass)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Tree_1Node_as_1solution(JNIEnv *env, jobject j_this)
jmethodID Boolean_valueOf_ID
jfieldID Linear_Expression_Coefficient_coeff_ID
jmethodID Generator_System_init_ID
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Tree_1Node_as_1decision(JNIEnv *env, jobject j_this)
#define PPL_DIRTY_TEMP_COEFFICIENT(id)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Congruence_1System_ascii_1dump(JNIEnv *env, jobject j_this)
const_iterator constraints_end() const
JNIEXPORT jint JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_version_1revision(JNIEnv *, jclass)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_build_1cpp_1object__J(JNIEnv *env, jobject j_this_pip_problem, jlong j_dim)
const Linear_Expression & parametric_values(Variable var) const
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Partial_1Function_free(JNIEnv *env, jobject j_this)
jfieldID Coefficient_value_ID
jfieldID Relation_Symbol_GREATER_THAN_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_add_1space_1dimensions_1and_1embed(JNIEnv *env, jobject j_this_mip_problem, jlong j_dim)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Grid_1Generator_1System_ascii_1dump(JNIEnv *env, jobject j_this)
jclass Variable_Stringifier
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Partial_1Function_build_1cpp_1object(JNIEnv *env, jobject j_this_pfunc)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Generator_1System_toString(JNIEnv *env, jobject gs)
jfieldID Artificial_Parameter_den_ID
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Congruence_toString(JNIEnv *env, jobject g)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_By_1Reference_initIDs(JNIEnv *env, jclass j_by_ref_class)
jmethodID Variables_Set_init_ID
jmethodID Complexity_Class_ordinal_ID
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_ascii_1dump(JNIEnv *env, jobject j_this)
Constraint_Sequence::const_iterator const_iterator
dimension_type space_dimension() const
jmethodID Degenerate_Element_ordinal_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Grid_1Generator_1System_initIDs(JNIEnv *env, jclass j_gen_sys_class)
jfieldID Constraint_kind_ID
JNIEXPORT jboolean JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_is_1satisfiable(JNIEnv *env, jobject j_this_pip_problem)
jfieldID Optimization_Mode_MINIMIZATION_ID
jmethodID Variables_Set_Iterator_has_next_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Generator_initIDs(JNIEnv *env, jclass j_generator_class)
void set_big_parameter_dimension(dimension_type big_dim)
memory_size_type total_memory_in_bytes() const
jmethodID Linear_Expression_times_ID
jclass Linear_Expression_Coefficient
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_max_1space_1dimension(JNIEnv *env, jobject j_this_pip_problem)
bool has_empty_codomain() const
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_IO_wrap_1string(JNIEnv *env, jclass, jstring str, jint indent_depth, jint preferred_first_line_length, jint preferred_line_length)
std::string wrap_string(const std::string &src_string, unsigned indent_depth, unsigned preferred_first_line_length, unsigned preferred_line_length)
void evaluate_objective_function(const Generator &evaluating_point, Coefficient &numer, Coefficient &denom) const
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Poly_1Con_1Relation_initIDs(JNIEnv *env, jclass j_poly_con_relation_class)
jmethodID MIP_Problem_Status_ordinal_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Partial_1Function_finalize(JNIEnv *env, jobject j_this)
jmethodID Variables_Set_iterator_ID
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_banner(JNIEnv *env, jclass)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_optimization_1mode(JNIEnv *env, jobject j_this_mip_problem)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Artificial_1Parameter_1Sequence_initIDs(JNIEnv *env, jclass j_aps_class)
void add_constraint(const Constraint &c)
memory_size_type external_memory_in_bytes() const
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_build_1cpp_1object__JLparma_1polyhedra_1library_Constraint_1System_2Lparma_1polyhedra_1library_Variables_1Set_2(JNIEnv *env, jobject j_this_pip_problem, jlong j_dim, jobject j_cs, jobject j_vars)
#define CHECK_RESULT_RETURN(env, cond, val)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_optimizing_1point(JNIEnv *env, jobject j_this_mip_problem)
JNIEXPORT jboolean JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_is_1zero(JNIEnv *env, jobject j_this)
jmethodID Generator_Type_ordinal_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Bounded_1Integer_1Type_1Overflow_initIDs(JNIEnv *env, jclass j_bounded_overflow_class)
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_external_1memory_1in_1bytes(JNIEnv *env, jobject j_this_pip_problem)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_finalize_1library(JNIEnv *env, jclass)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Partial_1Function_insert(JNIEnv *env, jobject j_this_pfunc, jlong i, jlong j)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Poly_1Gen_1Relation_initIDs(JNIEnv *env, jclass j_poly_gen_relation_class)
jfieldID Linear_Expression_Unary_Minus_arg_ID
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Constraint_1System_toString(JNIEnv *env, jobject cs)
void set_irrational_precision(const unsigned p)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Variable_initIDs(JNIEnv *env, jclass j_variable_class)
Artificial_Parameter_Sequence::const_iterator art_parameter_end() const
const Variables_Set & integer_space_dimensions() const
jmethodID Linear_Expression_sum_ID
jfieldID Bounded_Integer_Type_Representation_UNSIGNED_ID
jmethodID Poly_Con_Relation_init_ID
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Variable_toString(JNIEnv *env, jobject j_this)
const Linear_Expression & objective_function() const
const Generator & optimizing_point() const
void set_rounding_for_PPL()
JNIEXPORT jboolean JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_is_1satisfiable(JNIEnv *env, jobject j_this_mip_problem)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_free(JNIEnv *env, jobject j_this)
jfieldID Grid_Generator_div_ID
Control_Parameter_Value get_control_parameter(Control_Parameter_Name name) const
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Complexity_1Class_initIDs(JNIEnv *env, jclass j_complexity_class)
JNIEXPORT jint JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_version_1major(JNIEnv *, jclass)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_build_1cpp_1object__JLparma_1polyhedra_1library_Constraint_1System_2Lparma_1polyhedra_1library_Linear_1Expression_2Lparma_1polyhedra_1library_Optimization_1Mode_2(JNIEnv *env, jobject j_this_mip_problem, jlong j_dim, jobject j_cs, jobject j_le, jobject j_opt_mode)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_set_1big_1parameter_1dimension(JNIEnv *env, jobject j_this_pip_problem, jlong j_dim)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Grid_1Generator_toString(JNIEnv *env, jobject g)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_solve(JNIEnv *env, jobject j_this_mip_problem)
jmethodID Generator_System_add_ID
jfieldID Relation_Symbol_EQUAL_ID
dimension_type art_parameter_count() const
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Bounded_1Integer_1Type_1Representation_initIDs(JNIEnv *env, jclass j_bounded_rep_class)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_add_1constraints(JNIEnv *env, jobject j_this_pip_problem, jobject j_cs)
JNIEXPORT jboolean JNICALL Java_parma_1polyhedra_1library_PIP_1Tree_1Node_OK(JNIEnv *env, jobject j_this_pip_tree)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_build_1cpp_1object__Lparma_1polyhedra_1library_PIP_1Problem_2(JNIEnv *env, jobject j_this, jobject j_y)
const_iterator constraints_begin() const
jfieldID By_Reference_obj_ID
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_constraints(JNIEnv *env, jobject j_this_pip_problem)
jfieldID Congruence_rhs_ID
jfieldID Bounded_Integer_Type_Overflow_OVERFLOW_UNDEFINED_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Tree_1Node_finalize(JNIEnv *env, jobject j_this)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_1Coefficient_initIDs(JNIEnv *env, jclass j_le_coeff_class)
const Variables_Set & parameter_space_dimensions() const
jmethodID Constraint_System_init_ID
JNIEXPORT jboolean JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_all_1homogeneous_1terms_1are_1zero(JNIEnv *env, jobject j_this)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_parameter_1space_1dimensions(JNIEnv *env, jobject j_this_pip_problem)
virtual bool OK() const =0
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Grid_1Generator_1Type_initIDs(JNIEnv *env, jclass j_grid_gen_type_class)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_build_1cpp_1object__J(JNIEnv *env, jobject j_this_mip_problem, jlong j_dim)
Optimization_Mode optimization_mode() const
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_initialize_1library(JNIEnv *env, jclass)
jmethodID Grid_Generator_System_init_ID
jmethodID Bounded_Integer_Type_Width_ordinal_ID
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Artificial_1Parameter_toString(JNIEnv *env, jobject j_this)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Decision_1Node_child_1node(JNIEnv *env, jobject j_this, jboolean j_branch)
jmethodID Linear_Expression_Coefficient_init_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_add_1constraint(JNIEnv *env, jobject j_this_pip_problem, jobject j_c)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Congruence_1System_initIDs(JNIEnv *env, jclass j_con_sys_class)
static void default_output_function(std::ostream &s, const Variable v)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_clear(JNIEnv *env, jobject j_this_mip_problem)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_build_1cpp_1object__Lparma_1polyhedra_1library_MIP_1Problem_2(JNIEnv *env, jobject j_this, jobject j_y)
void optimal_value(Coefficient &numer, Coefficient &denom) const
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Artificial_1Parameter_ascii_1dump(JNIEnv *env, jobject j_this)
jmethodID Grid_Generator_System_add_ID
jmethodID Linear_Expression_Times_init_from_coeff_var_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_1Status_initIDs(JNIEnv *env, jclass j_mip_status_class)
const Constraint_System & constraints() const
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Grid_1Generator_ascii_1dump(JNIEnv *env, jobject j_this)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Tree_1Node_artificials(JNIEnv *env, jobject j_this_pip_node)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Variables_1Set_initIDs(JNIEnv *env, jclass j_vset_class)
memory_size_type total_memory_in_bytes() const
jfieldID PIP_Problem_Status_UNFEASIBLE_PIP_PROBLEM_ID
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_get_1pip_1problem_1control_1parameter(JNIEnv *env, jobject j_this_pip_problem, jobject j_cpn)
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_total_1memory_1in_1bytes(JNIEnv *env, jobject j_this_pip_problem)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Constraint_toString(JNIEnv *env, jobject c)
jfieldID Linear_Expression_Sum_rhs_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Constraint_initIDs(JNIEnv *env, jclass j_constraint_class)
jclass Artificial_Parameter_Sequence
jmethodID Generator_ray_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Generator_1Type_initIDs(JNIEnv *env, jclass j_gen_type_class)
#define CHECK_EXCEPTION_RETURN(env, val)
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_number_1of_1constraints(JNIEnv *env, jobject j_this_pip_problem)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_set_1optimization_1mode(JNIEnv *env, jobject j_this_mip_problem, jobject j_opt_mode)
bool is_satisfiable() const
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_1Unary_1Minus_initIDs(JNIEnv *env, jclass j_le_uminus_class)
bool all_homogeneous_terms_are_zero() const
virtual const PIP_Solution_Node * as_solution() const =0
jfieldID MIP_Problem_Status_OPTIMIZED_MIP_PROBLEM_ID
jfieldID Constraint_lhs_ID
const PIP_Tree_Node * child_node(bool b) const
jfieldID Bounded_Integer_Type_Overflow_OVERFLOW_IMPOSSIBLE_ID
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_toString(JNIEnv *env, jobject j_this)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_reset_1deterministic_1timeout(JNIEnv *env, jclass)
jmethodID Artificial_Parameter_init_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_add_1constraints(JNIEnv *env, jobject j_this_mip_problem, jobject j_cs)
JNIEXPORT jint JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_irrational_1precision(JNIEnv *env, jclass)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_reset_1timeout(JNIEnv *env, jclass)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PPL_1Object_initIDs(JNIEnv *env, jclass j_ppl_object_class)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Bounded_1Integer_1Type_1Width_initIDs(JNIEnv *env, jclass j_bounded_width_class)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Constraint_1System_initIDs(JNIEnv *env, jclass j_con_sys_class)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_restore_1pre_1PPL_1rounding(JNIEnv *env, jclass)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Congruence_1System_toString(JNIEnv *env, jobject cgs)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Pair_initIDs(JNIEnv *env, jclass j_pair_class)
jmethodID Relation_Symbol_ordinal_ID
jfieldID Bounded_Integer_Type_Width_BITS_16_ID
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_space_1dimension(JNIEnv *env, jobject j_this_pip_problem)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_1Status_initIDs(JNIEnv *env, jclass j_mip_status_class)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_set_1objective_1function(JNIEnv *env, jobject j_this_mip_problem, jobject j_le)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_free(JNIEnv *env, jobject j_this)
dimension_type max_in_codomain() const
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Coefficient_initIDs(JNIEnv *env, jclass j_coeff_class)
jfieldID PPL_Object_ptr_ID
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_constraint_1at_1index(JNIEnv *env, jobject j_this_pip_problem, jlong j_index)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_get_1control_1parameter(JNIEnv *env, jobject j_this_mip_problem, jobject j_cpn)
void clear_cache(JNIEnv *env)
Resets all fields to NULL.
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Relation_1Symbol_initIDs(JNIEnv *env, jclass j_rel_sym_class)
jfieldID Artificial_Parameter_le_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_set_1control_1parameter(JNIEnv *env, jobject j_this_mip_problem, jobject j_cpv)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_set_1pip_1problem_1control_1parameter(JNIEnv *env, jobject j_this_pip_problem, jobject j_cpv)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_optimal_1value(JNIEnv *env, jobject j_this_mip_problem, jobject j_coeff_num, jobject j_coeff_den)
jfieldID MIP_Problem_Status_UNBOUNDED_MIP_PROBLEM_ID
jmethodID Grid_Generator_grid_point_ID
unsigned version_revision()
PIP_Problem_Status solve() const
const Generator & feasible_point() const
jmethodID System_Iterator_next_ID
jmethodID Artificial_Parameter_Sequence_add_ID
jfieldID Optimization_Mode_MAXIMIZATION_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_1Times_initIDs(JNIEnv *env, jclass j_le_times_class)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_integer_1space_1dimensions(JNIEnv *env, jobject j_this_mip_problem)
jmethodID Bounded_Integer_Type_Overflow_ordinal_ID
jmethodID Long_valueOf_ID
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_solution(JNIEnv *env, jobject j_this_pip_problem)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Variable_setStringifier(JNIEnv *env, jclass j_variable_class, jobject j_stringifier)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_toString(JNIEnv *env, jobject j_this)
jfieldID Grid_Generator_gt_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_1Difference_initIDs(JNIEnv *env, jclass j_le_diff_class)
unsigned irrational_precision()
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Congruence_ascii_1dump(JNIEnv *env, jobject j_this)
PIP_Tree solution() const
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_Partial_1Function_maps(JNIEnv *env, jobject j_this_pfunc, jlong j_i)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_PIP_1Tree_1Node_toString(JNIEnv *env, jobject j_this)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Constraint_ascii_1dump(JNIEnv *env, jobject j_this)
jmethodID Constraint_System_add_ID
void set_objective_function(const Linear_Expression &obj)
jmethodID Congruence_System_init_ID
JNIEXPORT jint JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_version_1minor(JNIEnv *, jclass)
jmethodID Variables_Set_add_ID
MIP_Problem_Status solve() const
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_constraints(JNIEnv *env, jobject j_this_mip_problem)
jmethodID Generator_closure_point_ID
jmethodID Generator_point_ID
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_ascii_1dump(JNIEnv *env, jobject j_this)
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_get_1big_1parameter_1dimension(JNIEnv *env, jobject j_this_pip_problem)
jfieldID Linear_Expression_Difference_rhs_ID
jfieldID Constraint_rhs_ID
jmethodID Grid_Generator_parameter_ID
JNIEXPORT jint JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_version_1beta(JNIEnv *, jclass)
jfieldID Variable_varid_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_evaluate_1objective_1function(JNIEnv *env, jobject j_this_mip_problem, jobject j_gen, jobject j_coeff_num, jobject j_coeff_den)
jfieldID MIP_Problem_Status_UNFEASIBLE_MIP_PROBLEM_ID
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_PIP_1Tree_1Node_number_1of_1artificials(JNIEnv *env, jobject j_this)
jmethodID System_iterator_ID
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_optimizing_1solution(JNIEnv *env, jobject j_this_pip_problem)
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_1Variable_initIDs(JNIEnv *env, jclass j_le_var_class)
jmethodID By_Reference_init_ID
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_toString(JNIEnv *env, jobject j_this)
jmethodID PIP_Problem_Status_ordinal_ID
bool maps(dimension_type i, dimension_type &j) const
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Linear_1Expression_1Sum_initIDs(JNIEnv *env, jclass j_le_sum_class)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Tree_1Node_constraints(JNIEnv *env, jobject j_this_pip_node)
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_number_1of_1parameter_1space_1dimensions(JNIEnv *env, jobject j_this_pip_problem)
jmethodID Artificial_Parameter_Sequence_init_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_PIP_1_problem_finalize(JNIEnv *env, jobject j_this)
jmethodID Integer_valueOf_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Congruence_initIDs(JNIEnv *env, jclass j_congruence_class)
jmethodID Grid_Generator_grid_line_ID
JNIEXPORT jboolean JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_OK(JNIEnv *env, jobject j_this_mip_problem)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_solve(JNIEnv *env, jobject j_this_pip_problem)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Generator_1System_ascii_1dump(JNIEnv *env, jobject j_this)
jmethodID Integer_intValue_ID
jfieldID Bounded_Integer_Type_Width_BITS_64_ID
void set_control_parameter(Control_Parameter_Value value)
dimension_type get_big_parameter_dimension() const
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_PIP_1Solution_1Node_parametric_1values(JNIEnv *env, jobject j_this, jobject j_var)
jmethodID Variables_Set_Iterator_next_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_add_1to_1integer_1space_1dimensions(JNIEnv *env, jobject j_this_mip_problem, jobject j_vset)
static void set_output_function(output_function_type *p)
void add_to_parameter_space_dimensions(const Variables_Set &p_vars)
void init_cache(JNIEnv *env)
Initializes all cache fields.
void add_space_dimensions_and_embed(dimension_type m)
const Throwable *volatile abandon_expensive_computations
jfieldID Linear_Expression_Difference_lhs_ID
const_iterator constraints_begin() const
jmethodID Constraint_init_ID
jfieldID Bounded_Integer_Type_Width_BITS_128_ID
jfieldID PIP_Problem_Status_OPTIMIZED_PIP_PROBLEM_ID
jmethodID System_Iterator_has_next_ID
JNIEXPORT jboolean JNICALL Java_parma_1polyhedra_1library_Partial_1Function_has_1empty_1codomain(JNIEnv *env, jobject j_this_pfunc)
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_objective_1function(JNIEnv *env, jobject j_this_mip_problem)
Control_Parameter_Value get_control_parameter(Control_Parameter_Name name) const
void add_space_dimensions_and_embed(dimension_type m_vars, dimension_type m_params)
jmethodID Variable_Stringifier_stringify_ID
jfieldID Bounded_Integer_Type_Width_BITS_32_ID
jfieldID Grid_Generator_le_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_set_1irrational_1precision(JNIEnv *env, jclass, jint p)
jmethodID Bounded_Integer_Type_Representation_ordinal_ID
JNIEXPORT jboolean JNICALL Java_parma_1polyhedra_1library_PIP_1Problem_OK(JNIEnv *env, jobject j_this_pip_problem)
JNIEXPORT jlong JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_total_1memory_1in_1bytes(JNIEnv *env, jobject j_this_mip_problem)
jfieldID Linear_Expression_Sum_lhs_ID
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Grid_1Generator_initIDs(JNIEnv *env, jclass j_grid_generator_class)
PIP_Tree optimizing_solution() const
static dimension_type max_space_dimension()
bool le(Boundary_Type type1, const T1 &x1, const Info1 &info1, Boundary_Type type2, const T2 &x2, const Info2 &info2)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_ascii_1dump(JNIEnv *env, jobject j_this)
JNIEXPORT jstring JNICALL Java_parma_1polyhedra_1library_Generator_toString(JNIEnv *env, jobject g)
jmethodID Long_longValue_ID
void restore_pre_PPL_rounding()
jfieldID Linear_Expression_Times_coeff_ID
JNIEXPORT jobject JNICALL Java_parma_1polyhedra_1library_MIP_1Problem_feasible_1point(JNIEnv *env, jobject j_this_mip_problem)
jmethodID Generator_line_ID
jfieldID Bounded_Integer_Type_Width_BITS_8_ID
void insert(dimension_type i, dimension_type j)
jfieldID Bounded_Integer_Type_Representation_SIGNED_2_COMPLEMENT_ID
void add_to_integer_space_dimensions(const Variables_Set &i_vars)
jfieldID Linear_Expression_Times_lin_expr_ID
dimension_type space_dimension() const
JNIEXPORT void JNICALL Java_parma_1polyhedra_1library_Parma_1Polyhedra_1Library_set_1rounding_1for_1PPL(JNIEnv *env, jclass)