20template<
typename T>
class SwigValueWrapper {
21 struct SwigMovePointer {
23 SwigMovePointer(T *p) : ptr(p) { }
24 ~SwigMovePointer() {
delete ptr; }
25 SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0;
delete oldptr; ptr = rhs.ptr; rhs.ptr = 0;
return *
this; }
27 SwigValueWrapper& operator=(
const SwigValueWrapper<T>& rhs);
28 SwigValueWrapper(
const SwigValueWrapper<T>& rhs);
30 SwigValueWrapper() : pointer(0) { }
31 SwigValueWrapper& operator=(
const T& t) { SwigMovePointer tmp(
new T(t)); pointer = tmp;
return *
this; }
32 operator T&()
const {
return *pointer.ptr; }
33 T *operator&() {
return pointer.ptr; }
36template <
typename T> T SwigValueInit() {
47#ifndef SWIGTEMPLATEDISAMBIGUATOR
48# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
49# define SWIGTEMPLATEDISAMBIGUATOR template
50# elif defined(__HP_aCC)
53# define SWIGTEMPLATEDISAMBIGUATOR template
55# define SWIGTEMPLATEDISAMBIGUATOR
61# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
62# define SWIGINLINE inline
71# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
72# define SWIGUNUSED __attribute__ ((__unused__))
77# define SWIGUNUSED __attribute__ ((__unused__))
83#ifndef SWIG_MSC_UNSUPPRESS_4505
85# pragma warning(disable : 4505)
91# define SWIGUNUSEDPARM(p)
93# define SWIGUNUSEDPARM(p) p SWIGUNUSED
99# define SWIGINTERN static SWIGUNUSED
103#ifndef SWIGINTERNINLINE
104# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
109# if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
110# ifndef GCC_HASCLASSVISIBILITY
111# define GCC_HASCLASSVISIBILITY
117# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
118# if defined(STATIC_LINKED)
121# define SWIGEXPORT __declspec(dllexport)
124# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
125# define SWIGEXPORT __attribute__ ((visibility("default")))
134# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
135# define SWIGSTDCALL __stdcall
142#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
143# define _CRT_SECURE_NO_DEPRECATE
147#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
148# define _SCL_SECURE_NO_DEPRECATE
152#if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES)
153# define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0
161#ifdef __INTEL_COMPILER
162# pragma warning disable 592
167#if defined(__GNUC__) && !defined(__INTEL_COMPILER)
168 typedef long long __int64;
199 const char *java_exception;
220 while (except_ptr->
code != code && except_ptr->
code)
223 jenv->ExceptionClear();
226 jenv->ThrowNew(excep, msg);
232#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, msg); return nullreturn; } else
258 std::string error_message;
260 return error_message;
263 std::unordered_set<std::string> names;
265 if (!
var.name().empty() && !names.insert(
var.name()).second) {
266 LOG(
FATAL) <<
"found duplicated variable names " +
var.name();
269 std::string error_message;
271 return error_message;
284 const absl::Status
status =
305 if (variables.size() != values.size()) {
306 LOG(
FATAL) <<
"Different number of variables and values when setting "
309 std::vector<std::pair<const operations_research::MPVariable*, double> >
310 hint(variables.size());
311 for (
int i = 0; i < variables.size(); ++i) {
312 hint[i] = std::make_pair(variables[i], values[i]);
331 jresult = (jint)result;
343 jresult = (jint)result;
355 jresult = (jint)result;
367 jresult = (jint)result;
379 jresult = (jint)result;
391 jresult = (jint)result;
403 jresult = (jint)result;
415 jresult = (jint)result;
427 jresult = (jint)result;
439 jresult = (jint)result;
451 jresult = (jint)result;
463 jresult = (jint)result;
475 jresult = (jint)result;
487 jresult = (jint)result;
494 std::string *arg1 = 0 ;
504 const char *arg1_pstr = (
const char *)jenv->GetStringUTFChars(jarg1, 0);
505 if (!arg1_pstr)
return 0;
506 std::string arg1_str(arg1_pstr);
508 jenv->ReleaseStringUTFChars(jarg1, arg1_pstr);
528 std::string *arg1 = 0 ;
537 const char *arg1_pstr = (
const char *)jenv->GetStringUTFChars(jarg1, 0);
538 if (!arg1_pstr)
return 0;
539 std::string arg1_str(arg1_pstr);
541 jenv->ReleaseStringUTFChars(jarg1, arg1_pstr);
549 jboolean jresult = 0 ;
557 jresult = (jboolean)result;
563 jboolean jresult = 0 ;
572 jresult = (jboolean)result;
587 jresult = (jint)result;
613 jresult = (jint)result;
619 jobjectArray jresult = 0 ;
621 std::vector< operations_research::MPVariable * > *result = 0 ;
629 if (
nullptr == result)
631 std::string java_class_path =
"com/google/ortools/linearsolver" "/""MPVariable";
632 jclass object_class = jenv->FindClass(java_class_path.c_str());
633 if (
nullptr == object_class)
635 jresult = jenv->NewObjectArray(result->size(), object_class, 0);
636 jmethodID ctor = jenv->GetMethodID(object_class,
"<init>",
"(JZ)V");
637 for (
int i = 0; i < result->size(); ++i) {
640 jobject elem = jenv->NewObject(object_class, ctor, obj_ptr,
false);
641 jenv->SetObjectArrayElement(jresult, i, elem);
668 std::string *arg2 = 0 ;
679 const char *arg2_pstr = (
const char *)jenv->GetStringUTFChars(jarg2, 0);
680 if (!arg2_pstr)
return 0;
681 std::string arg2_str(arg2_pstr);
683 jenv->ReleaseStringUTFChars(jarg2, arg2_pstr);
696 std::string *arg5 = 0 ;
703 arg2 = (double)jarg2;
704 arg3 = (double)jarg3;
705 arg4 = jarg4 ? true :
false;
710 const char *arg5_pstr = (
const char *)jenv->GetStringUTFChars(jarg5, 0);
711 if (!arg5_pstr)
return 0;
712 std::string arg5_str(arg5_pstr);
714 jenv->ReleaseStringUTFChars(jarg5, arg5_pstr);
726 std::string *arg4 = 0 ;
733 arg2 = (double)jarg2;
734 arg3 = (double)jarg3;
739 const char *arg4_pstr = (
const char *)jenv->GetStringUTFChars(jarg4, 0);
740 if (!arg4_pstr)
return 0;
741 std::string arg4_str(arg4_pstr);
743 jenv->ReleaseStringUTFChars(jarg4, arg4_pstr);
755 std::string *arg4 = 0 ;
762 arg2 = (double)jarg2;
763 arg3 = (double)jarg3;
768 const char *arg4_pstr = (
const char *)jenv->GetStringUTFChars(jarg4, 0);
769 if (!arg4_pstr)
return 0;
770 std::string arg4_str(arg4_pstr);
772 jenv->ReleaseStringUTFChars(jarg4, arg4_pstr);
782 std::string *arg2 = 0 ;
793 const char *arg2_pstr = (
const char *)jenv->GetStringUTFChars(jarg2, 0);
794 if (!arg2_pstr)
return 0;
795 std::string arg2_str(arg2_pstr);
797 jenv->ReleaseStringUTFChars(jarg2, arg2_pstr);
814 jresult = (jint)result;
820 jobjectArray jresult = 0 ;
822 std::vector< operations_research::MPConstraint * > *result = 0 ;
830 if (
nullptr == result)
832 std::string java_class_path =
"com/google/ortools/linearsolver" "/""MPConstraint";
833 jclass object_class = jenv->FindClass(java_class_path.c_str());
834 if (
nullptr == object_class)
836 jresult = jenv->NewObjectArray(result->size(), object_class, 0);
837 jmethodID ctor = jenv->GetMethodID(object_class,
"<init>",
"(JZ)V");
838 for (
int i = 0; i < result->size(); ++i) {
841 jobject elem = jenv->NewObject(object_class, ctor, obj_ptr,
false);
842 jenv->SetObjectArrayElement(jresult, i, elem);
869 std::string *arg2 = 0 ;
880 const char *arg2_pstr = (
const char *)jenv->GetStringUTFChars(jarg2, 0);
881 if (!arg2_pstr)
return 0;
882 std::string arg2_str(arg2_pstr);
884 jenv->ReleaseStringUTFChars(jarg2, arg2_pstr);
902 arg2 = (double)jarg2;
903 arg3 = (double)jarg3;
930 std::string *arg4 = 0 ;
937 arg2 = (double)jarg2;
938 arg3 = (double)jarg3;
943 const char *arg4_pstr = (
const char *)jenv->GetStringUTFChars(jarg4, 0);
944 if (!arg4_pstr)
return 0;
945 std::string arg4_str(arg4_pstr);
947 jenv->ReleaseStringUTFChars(jarg4, arg4_pstr);
957 std::string *arg2 = 0 ;
968 const char *arg2_pstr = (
const char *)jenv->GetStringUTFChars(jarg2, 0);
969 if (!arg2_pstr)
return 0;
970 std::string arg2_str(arg2_pstr);
972 jenv->ReleaseStringUTFChars(jarg2, arg2_pstr);
1001 jresult = (jint)result;
1016 jresult = (jint)result;
1038 jresult = (jint)result;
1044 jdoubleArray jresult = 0 ;
1046 std::vector< double > result;
1054 const std::vector<double>& vec = result;
1055 jresult = jenv->NewDoubleArray(vec.size());
1056 jenv->SetDoubleArrayRegion(jresult, 0, vec.size(),
reinterpret_cast<const jdouble*
>(vec.data()));
1063 jboolean jresult = 0 ;
1073 arg2 = (double)jarg2;
1074 arg3 = jarg3 ? true :
false;
1076 jresult = (jboolean)result;
1093 jboolean jresult = 0 ;
1102 jresult = (jboolean)result;
1108 jboolean jresult = 0 ;
1110 std::string *arg2 = 0 ;
1121 const char *arg2_pstr = (
const char *)jenv->GetStringUTFChars(jarg2, 0);
1122 if (!arg2_pstr)
return 0;
1123 std::string arg2_str(arg2_pstr);
1125 jenv->ReleaseStringUTFChars(jarg2, arg2_pstr);
1126 result = (bool)(arg1)->SetSolverSpecificParametersAsString((std::string
const &)*arg2);
1127 jresult = (jboolean)result;
1139 jresult = (jint)result;
1145 jdouble jresult = 0 ;
1151 jresult = (jdouble)result;
1163 (arg1)->EnableOutput();
1174 (arg1)->SuppressOutput();
1188 jresult = (jlong)result;
1203 jresult = (jlong)result;
1209 jdouble jresult = 0 ;
1218 jresult = (jdouble)result;
1231 arg2 = (int64_t)jarg2;
1232 (arg1)->set_time_limit(arg2);
1246 jresult = (jlong)result;
1252 jstring jresult = 0 ;
1264 std::unique_ptr<char[]> proto_buffer(
1266 bool parsed_ok = temp2.ParseFromArray(proto_buffer.get(), proto_size);
1270 "Unable to parse operations_research::MPModelProto protocol message.");
1275 jresult = jenv->NewStringUTF((&result)->c_str());
1281 jstring jresult = 0 ;
1293 std::unique_ptr<char[]> proto_buffer(
1295 bool parsed_ok = temp2.ParseFromArray(proto_buffer.get(), proto_size);
1299 "Unable to parse operations_research::MPModelProto protocol message.");
1304 jresult = jenv->NewStringUTF((&result)->c_str());
1310 jbyteArray jresult = 0 ;
1320 const long size = (&result)->ByteSizeLong();
1321 std::unique_ptr<char[]> buf(
new char[size]);
1322 (&result)->SerializeWithCachedSizesToArray(
reinterpret_cast<uint8_t*
>(buf.get()));
1330 jbyteArray jresult = 0 ;
1340 const long size = (&result)->ByteSizeLong();
1341 std::unique_ptr<char[]> buf(
new char[size]);
1342 (&result)->SerializeWithCachedSizesToArray(
reinterpret_cast<uint8_t*
>(buf.get()));
1350 jboolean jresult = 0 ;
1362 std::unique_ptr<char[]> proto_buffer(
1364 bool parsed_ok = temp2.ParseFromArray(proto_buffer.get(), proto_size);
1368 "Unable to parse operations_research::MPSolutionResponse protocol message.");
1373 jresult = (jboolean)result;
1379 jbyteArray jresult = 0 ;
1388 std::unique_ptr<char[]> proto_buffer(
1390 bool parsed_ok = temp1.ParseFromArray(proto_buffer.get(), proto_size);
1394 "Unable to parse operations_research::MPModelRequest protocol message.");
1400 const long size = (&result)->ByteSizeLong();
1401 std::unique_ptr<char[]> buf(
new char[size]);
1402 (&result)->SerializeWithCachedSizesToArray(
reinterpret_cast<uint8_t*
>(buf.get()));
1410 jstring jresult = 0 ;
1426 jresult = jenv->NewStringUTF((&result)->c_str());
1432 jstring jresult = 0 ;
1441 jresult = jenv->NewStringUTF((&result)->c_str());
1447 jstring jresult = 0 ;
1463 jresult = jenv->NewStringUTF((&result)->c_str());
1469 jstring jresult = 0 ;
1478 jresult = jenv->NewStringUTF((&result)->c_str());
1485 std::vector< operations_research::MPVariable * > *arg2 = 0 ;
1486 std::vector< double > *arg3 = 0 ;
1487 std::vector< operations_research::MPVariable * > result2 ;
1494 std::string java_class_path =
"com/google/ortools/linearsolver" "/""MPVariable";
1495 jclass object_class = jenv->FindClass(java_class_path.c_str());
1496 if (
nullptr == object_class)
1498 jmethodID method_id =
1499 jenv->GetStaticMethodID(
1500 object_class,
"getCPtr",
1501 std::string(
"(L" + java_class_path +
";)J").c_str());
1502 assert(method_id !=
nullptr);
1503 for (
int i = 0; i < jenv->GetArrayLength(jarg2); i++) {
1504 jobject elem = jenv->GetObjectArrayElement(jarg2, i);
1505 jlong ptr_value = jenv->CallStaticLongMethod(object_class, method_id, elem);
1514 arg3 =
new std::vector<double>;
1515 const int size = jenv->GetArrayLength(jarg3);
1516 arg3->reserve(size);
1517 jdouble *values = jenv->GetDoubleArrayElements((jdoubleArray)jarg3, NULL);
1518 for (
int i = 0; i < size; ++i) {
1519 arg3->emplace_back(values[i]);
1521 jenv->ReleaseDoubleArrayElements((jdoubleArray)jarg3, values, JNI_ABORT);
1536 jboolean jresult = 0 ;
1547 jresult = (jboolean)result;
1574 arg3 = (double)jarg3;
1580 jdouble jresult = 0 ;
1592 jresult = (jdouble)result;
1605 arg2 = (double)jarg2;
1606 (arg1)->SetOffset(arg2);
1611 jdouble jresult = 0 ;
1620 jresult = (jdouble)result;
1633 arg2 = jarg2 ? true :
false;
1634 (arg1)->SetOptimizationDirection(arg2);
1645 (arg1)->SetMinimization();
1656 (arg1)->SetMaximization();
1661 jboolean jresult = 0 ;
1670 jresult = (jboolean)result;
1676 jboolean jresult = 0 ;
1685 jresult = (jboolean)result;
1691 jdouble jresult = 0 ;
1700 jresult = (jdouble)result;
1706 jdouble jresult = 0 ;
1715 jresult = (jdouble)result;
1731 jstring jresult = 0 ;
1733 std::string *result = 0 ;
1740 jresult = jenv->NewStringUTF(result->c_str());
1753 arg2 = jarg2 ? true :
false;
1754 (arg1)->SetInteger(arg2);
1759 jdouble jresult = 0 ;
1768 jresult = (jdouble)result;
1783 jresult = (jint)result;
1789 jdouble jresult = 0 ;
1798 jresult = (jdouble)result;
1804 jdouble jresult = 0 ;
1813 jresult = (jdouble)result;
1826 arg2 = (double)jarg2;
1827 (arg1)->SetLB(arg2);
1839 arg2 = (double)jarg2;
1840 (arg1)->SetUB(arg2);
1853 arg2 = (double)jarg2;
1854 arg3 = (double)jarg3;
1855 (arg1)->SetBounds(arg2,arg3);
1860 jdouble jresult = 0 ;
1869 jresult = (jdouble)result;
1884 jresult = (jint)result;
1900 jstring jresult = 0 ;
1902 std::string *result = 0 ;
1909 jresult = jenv->NewStringUTF(result->c_str());
1925 arg3 = (double)jarg3;
1931 jdouble jresult = 0 ;
1943 jresult = (jdouble)result;
1949 jdouble jresult = 0 ;
1958 jresult = (jdouble)result;
1964 jdouble jresult = 0 ;
1973 jresult = (jdouble)result;
1986 arg2 = (double)jarg2;
1987 (arg1)->SetLB(arg2);
1999 arg2 = (double)jarg2;
2000 (arg1)->SetUB(arg2);
2013 arg2 = (double)jarg2;
2014 arg3 = (double)jarg3;
2015 (arg1)->SetBounds(arg2,arg3);
2020 jboolean jresult = 0 ;
2029 jresult = (jboolean)result;
2042 arg2 = jarg2 ? true :
false;
2043 (arg1)->set_is_lazy(arg2);
2057 jresult = (jint)result;
2063 jdouble jresult = 0 ;
2072 jresult = (jdouble)result;
2087 jresult = (jint)result;
2109 jresult = (jint)result;
2121 jresult = (jint)result;
2133 jresult = (jint)result;
2145 jresult = (jint)result;
2157 jresult = (jint)result;
2169 jresult = (jint)result;
2181 jresult = (jint)result;
2193 jresult = (jint)result;
2205 jresult = (jint)result;
2217 jresult = (jint)result;
2229 jresult = (jint)result;
2241 jresult = (jint)result;
2253 jresult = (jint)result;
2265 jresult = (jint)result;
2277 jresult = (jint)result;
2289 jresult = (jint)result;
2295 jdouble jresult = 0 ;
2301 jresult = (jdouble)result;
2307 jdouble jresult = 0 ;
2313 jresult = (jdouble)result;
2319 jdouble jresult = 0 ;
2325 jresult = (jdouble)result;
2337 jresult = (jint)result;
2349 jresult = (jint)result;
2376 arg3 = (double)jarg3;
2377 (arg1)->SetDoubleParam(arg2,arg3);
2392 (arg1)->SetIntegerParam(arg2,arg3);
2397 jdouble jresult = 0 ;
2408 jresult = (jdouble)result;
2425 jresult = (jint)result;
2460 arg2 = jarg2 ? true :
false;
2461 if (arg1) (arg1)->obfuscate = arg2;
2466 jboolean jresult = 0 ;
2474 result = (bool) ((arg1)->obfuscate);
2475 jresult = (jboolean)result;
2488 arg2 = jarg2 ? true :
false;
2489 if (arg1) (arg1)->log_invalid_names = arg2;
2494 jboolean jresult = 0 ;
2502 result = (bool) ((arg1)->log_invalid_names);
2503 jresult = (jboolean)result;
2516 arg2 = jarg2 ? true :
false;
2517 if (arg1) (arg1)->show_unused_variables = arg2;
2522 jboolean jresult = 0 ;
2530 result = (bool) ((arg1)->show_unused_variables);
2531 jresult = (jboolean)result;
2545 if (arg1) (arg1)->max_line_length = arg2;
2558 result = (int) ((arg1)->max_line_length);
2559 jresult = (jint)result;
#define LOG_IF(severity, condition)
static jbyteArray MakeJByteArray(JNIEnv *env, const char *a, int size)
static char * MakeCharArray(JNIEnv *env, jbyteArray a, int *size)
The class for constraints of a Mathematical Programming (MP) model.
const ::operations_research::MPVariableProto & variable(int index) const
A class to express a linear objective.
This mathematical programming (MP) solver class is the main class though which users build and solve ...
void FillSolutionResponseProto(MPSolutionResponse *response) const
Encodes the current solution in a solution response protocol buffer.
static bool SupportsProblemType(OptimizationProblemType problem_type)
Whether the given problem type is supported (this will depend on the targets that you linked).
static MPSolver * CreateSolver(const std::string &solver_id)
Recommended factory method to create a MPSolver instance, especially in non C++ languages.
void SetHint(std::vector< std::pair< const MPVariable *, double > > hint)
Sets a hint for solution.
ResultStatus
The status of solving the problem.
@ NOT_SOLVED
not been solved yet.
OptimizationProblemType
The type of problems (LP or MIP) that will be solved and the underlying solver (GLOP,...
@ GLOP_LINEAR_PROGRAMMING
@ CPLEX_MIXED_INTEGER_PROGRAMMING
@ XPRESS_LINEAR_PROGRAMMING
@ GLPK_LINEAR_PROGRAMMING
@ CPLEX_LINEAR_PROGRAMMING
@ GUROBI_LINEAR_PROGRAMMING
@ XPRESS_MIXED_INTEGER_PROGRAMMING
@ GUROBI_MIXED_INTEGER_PROGRAMMING
@ BOP_INTEGER_PROGRAMMING
@ SCIP_MIXED_INTEGER_PROGRAMMING
@ SAT_INTEGER_PROGRAMMING
@ GLPK_MIXED_INTEGER_PROGRAMMING
@ CBC_MIXED_INTEGER_PROGRAMMING
absl::Status LoadSolutionFromProto(const MPSolutionResponse &response, double tolerance=std::numeric_limits< double >::infinity())
Load a solution encoded in a protocol buffer onto this solver for easy access via the MPSolver interf...
absl::Status SetNumThreads(int num_threads)
Sets the number of threads to use by the underlying solver.
void ExportModelToProto(MPModelProto *output_model) const
Exports model to protocol buffer.
std::vector< double > ComputeConstraintActivities() const
Advanced usage: compute the "activities" of all constraints, which are the sums of their linear terms...
static double infinity()
Infinity.
static void SolveWithProto(const MPModelRequest &model_request, MPSolutionResponse *response, std::atomic< bool > *interrupt=nullptr)
Solves the model encoded by a MPModelRequest protocol buffer and fills the solution encoded as a MPSo...
MPSolverResponseStatus LoadModelFromProto(const MPModelProto &input_model, std::string *error_message)
Loads model from protocol buffer.
bool InterruptSolve()
Interrupts the Solve() execution to terminate processing if possible.
ResultStatus Solve()
Solves the problem using the default parameter values.
MPSolverResponseStatus LoadModelFromProtoWithUniqueNamesOrDie(const MPModelProto &input_model, std::string *error_message)
Loads model from protocol buffer.
BasisStatus
Advanced usage: possible basis status values for a variable and the slack variable of a linear constr...
This class stores parameter settings for LP and MIP solvers.
static const double kDefaultRelativeMipGap
IncrementalityValues
Advanced usage: Incrementality options.
@ INCREMENTALITY_OFF
Start solve from scratch.
@ INCREMENTALITY_ON
Reuse results from previous solve as much as the underlying solver allows.
ScalingValues
Advanced usage: Scaling options.
@ SCALING_ON
Scaling is on.
@ SCALING_OFF
Scaling is off.
static const IncrementalityValues kDefaultIncrementality
DoubleParam
Enumeration of parameters that take continuous values.
@ DUAL_TOLERANCE
Advanced usage: tolerance for dual feasibility of basic solutions.
@ PRIMAL_TOLERANCE
Advanced usage: tolerance for primal feasibility of basic solutions.
@ RELATIVE_MIP_GAP
Limit for relative MIP gap.
static const PresolveValues kDefaultPresolve
static const double kDefaultDualTolerance
IntegerParam
Enumeration of parameters that take integer or categorical values.
@ LP_ALGORITHM
Algorithm to solve linear programs.
@ SCALING
Advanced usage: enable or disable matrix scaling.
@ PRESOLVE
Advanced usage: presolve mode.
@ INCREMENTALITY
Advanced usage: incrementality from one solve to the next.
LpAlgorithmValues
LP algorithm to use.
@ BARRIER
Barrier algorithm.
PresolveValues
For each categorical parameter, enumeration of possible values.
@ PRESOLVE_ON
Presolve is on.
@ PRESOLVE_OFF
Presolve is off.
static const double kDefaultPrimalTolerance
The class for variables of a Mathematical Programming (MP) model.
SharedResponseManager * response
A C++ wrapper that provides a simple and unified interface to several linear programming and mixed in...
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1index(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_new_1MPSolver(JNIEnv *jenv, jclass jcls, jstring jarg1, jint jarg2)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1minimization(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1INCREMENTALITY_1ON_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1setHint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobjectArray jarg2, jdoubleArray jarg3)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1CPLEX_1LINEAR_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1kDefaultPresolve_1get(JNIEnv *jenv, jclass jcls)
SWIGINTERN operations_research::MPSolutionResponse operations_research_MPSolver_createSolutionResponseProto(operations_research::MPSolver *self)
SWIGEXPORT jdoubleArray JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1computeConstraintActivities(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1setOptimizationDirection(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1makeVar(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2, jdouble jarg3, jboolean jarg4, jstring jarg5)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1value(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1LP_1ALGORITHM_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1basisStatus(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1SCALING_1ON_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1isMip(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1createSolver(JNIEnv *jenv, jclass jcls, jstring jarg1)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1setLb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2)
SWIGINTERN std::string operations_research_MPSolver_loadModelFromProtoWithUniqueNamesOrDie(operations_research::MPSolver *self, operations_research::MPModelProto const &input_model)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1solve_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1objective(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1suppressOutput(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1PRESOLVE_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1BOP_1INTEGER_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1PRESOLVE_1ON_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1makeConstraint_1_1SWIG_12(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2, jdouble jarg3, jstring jarg4)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1SAT_1INTEGER_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1setBounds(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2, jdouble jarg3)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1basisStatus(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1kDefaultPrimalTolerance_1get(JNIEnv *jenv, jclass jcls)
SWIGINTERN bool operations_research_MPSolver_setNumThreads(operations_research::MPSolver *self, int num_theads)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1NOT_1SOLVED_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1getCoefficient(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_)
SWIGEXPORT jobjectArray JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1variables(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1nodes(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1setIsLazy(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2)
SWIGEXPORT jstring JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_delete_1MPVariable(JNIEnv *jenv, jclass jcls, jlong jarg1)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1getDoubleParam(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1lb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1setTimeLimit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2)
SWIGEXPORT jbyteArray JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1createSolutionResponseProto(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1computeExactConditionNumber(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1GLPK_1LINEAR_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGINTERN bool operations_research_MPSolver_loadSolutionFromProto(operations_research::MPSolver *self, operations_research::MPSolutionResponse const &response)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1setOffset(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1supportsProblemType(JNIEnv *jenv, jclass jcls, jint jarg1)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1makeBoolVar(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1maximization(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1lb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_delete_1MPModelExportOptions(JNIEnv *jenv, jclass jcls, jlong jarg1)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1solve_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1setCoefficient(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jdouble jarg3)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1setMinimization(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1setInteger(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1setUb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2)
SWIGEXPORT jbyteArray JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1exportModelToProto(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_new_1MPModelExportOptions(JNIEnv *jenv, jclass jcls)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPModelExportOptions_1ShowUnusedVariables_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1makeNumVar(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2, jdouble jarg3, jstring jarg4)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1isLazy(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_delete_1MPConstraint(JNIEnv *jenv, jclass jcls, jlong jarg1)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1DUAL_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1SCIP_1MIXED_1INTEGER_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1PRESOLVE_1OFF_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1problemType(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1GUROBI_1LINEAR_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
static void SWIGUNUSED SWIG_JavaThrowException(JNIEnv *jenv, SWIG_JavaExceptionCodes code, const char *msg)
@ SWIG_JavaArithmeticException
@ SWIG_JavaRuntimeException
@ SWIG_JavaNullPointerException
@ SWIG_JavaDirectorPureVirtual
@ SWIG_JavaOutOfMemoryError
@ SWIG_JavaIllegalStateException
@ SWIG_JavaIllegalArgumentException
@ SWIG_JavaIndexOutOfBoundsException
SWIGINTERN std::string operations_research_MPSolver_loadModelFromProto(operations_research::MPSolver *self, operations_research::MPModelProto const &input_model)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1BARRIER_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1FREE_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1loadSolutionFromProto(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jbyteArray jarg2)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_delete_1MPSolverParameters(JNIEnv *jenv, jclass jcls, jlong jarg1)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1index(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1setSolverSpecificParametersAsString(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPModelExportOptions_1Obfuscate_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1constraint(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1setDoubleParam(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jdouble jarg3)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1XPRESS_1MIXED_1INTEGER_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1CPLEX_1MIXED_1INTEGER_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1CLP_1LINEAR_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1infinity(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1offset(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1ub(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1DUAL_1TOLERANCE_1get(JNIEnv *jenv, jclass jcls)
SWIGINTERN std::string operations_research_MPSolver_exportModelAsMpsFormat__SWIG_0(operations_research::MPSolver *self, operations_research::MPModelExportOptions const &options=operations_research::MPModelExportOptions())
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1numConstraints(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_delete_1MPSolver(JNIEnv *jenv, jclass jcls, jlong jarg1)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1INCREMENTALITY_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPModelExportOptions_1LogInvalidNames_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1reset(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPModelExportOptions_1MaxLineLength_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1GLOP_1LINEAR_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jbyteArray JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1solveWithProto(JNIEnv *jenv, jclass jcls, jbyteArray jarg1)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1ub(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jstring JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1exportModelAsLpFormat_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1makeConstraint_1_1SWIG_13(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1lookupConstraintOrNull(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2)
SWIGEXPORT jstring JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1loadModelFromProto(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jbyteArray jarg2)
SWIGEXPORT jstring JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1exportModelAsMpsFormat_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_)
SWIGINTERN void operations_research_MPSolver_setHint(operations_research::MPSolver *self, std::vector< operations_research::MPVariable * > const &variables, std::vector< double > const &values)
SWIGINTERN operations_research::MPSolutionResponse operations_research_MPSolver_solveWithProto(operations_research::MPModelRequest const &model_request)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1kDefaultRelativeMipGap_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1clear(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPModelExportOptions_1Obfuscate_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1CBC_1MIXED_1INTEGER_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1setNumThreads(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2)
SWIGEXPORT jstring JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1loadModelFromProtoWithUniqueNamesOrDie(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jbyteArray jarg2)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1kDefaultDualTolerance_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPModelExportOptions_1ShowUnusedVariables_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1makeIntVar(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2, jdouble jarg3, jstring jarg4)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1RELATIVE_1MIP_1GAP_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1setLb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2)
SWIGEXPORT jstring JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1exportModelAsMpsFormat_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1makeConstraint_1_1SWIG_11(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1solutionValue(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1interruptSolve(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1XPRESS_1LINEAR_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1PRIMAL_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1variable(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1kDefaultIncrementality_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1INCREMENTALITY_1OFF_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1PRIMAL_1TOLERANCE_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1SCALING_1OFF_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1setIntegerParam(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jint jarg3)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1reducedCost(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1makeConstraint_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2, jdouble jarg3)
SWIGEXPORT jobjectArray JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1constraints(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1setCoefficient(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jdouble jarg3)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1dualValue(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPConstraint_1setUb(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1setBounds(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2, jdouble jarg3)
SWIGEXPORT jboolean JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1verifySolution(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2, jboolean jarg3)
SWIGEXPORT jstring JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1exportModelAsLpFormat_1_1SWIG_10(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPModelExportOptions_1LogInvalidNames_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_new_1MPSolverParameters(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1getCoefficient(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1enableOutput(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGINTERN std::string operations_research_MPSolver_exportModelAsLpFormat__SWIG_0(operations_research::MPSolver *self, operations_research::MPModelExportOptions const &options=operations_research::MPModelExportOptions())
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1clear(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jstring JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPVariable_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1GUROBI_1MIXED_1INTEGER_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1SCALING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1wallTime(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolverParameters_1getIntegerParam(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1GLPK_1MIXED_1INTEGER_1PROGRAMMING_1get(JNIEnv *jenv, jclass jcls)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1lookupVariableOrNull(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2)
SWIGEXPORT jdouble JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1bestBound(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_delete_1MPObjective(JNIEnv *jenv, jclass jcls, jlong jarg1)
SWIGEXPORT jint JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1numVariables(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGINTERN operations_research::MPModelProto operations_research_MPSolver_exportModelToProto(operations_research::MPSolver *self)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPObjective_1setMaximization(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT jlong JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPSolver_1iterations(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_)
SWIGEXPORT void JNICALL Java_com_google_ortools_linearsolver_main_1research_1linear_1solverJNI_MPModelExportOptions_1MaxLineLength_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2)
int NumVariables(const VariablesProto &variables)
int NumConstraints(const LinearConstraintsProto &linear_constraints)
IntegerValue GetCoefficient(const IntegerVariable var, const LinearExpression &expr)
std::function< int64_t(const Model &)> Value(IntegerVariable v)
absl::StatusOr< std::string > ExportModelAsMpsFormat(const MPModelProto &model, const MPModelExportOptions &options)
Outputs the current model (variables, constraints, objective) as a string encoded in MPS file format,...
absl::StatusOr< std::string > ExportModelAsLpFormat(const MPModelProto &model, const MPModelExportOptions &options)
Outputs the current model (variables, constraints, objective) as a string encoded in the so-called "C...
const char * java_exception
SWIG_JavaExceptionCodes code