Solver.java
Go to the documentation of this file.
1 /* ----------------------------------------------------------------------------
2  * This file was automatically generated by SWIG (http://www.swig.org).
3  * Version 3.0.12
4  *
5  * Do not make changes to this file unless you know what you are doing--modify
6  * the SWIG interface file instead.
7  * ----------------------------------------------------------------------------- */
8 
9 package com.google.ortools.constraintsolver;
10 
13 
14 // Used to wrap DisplayCallback (std::function<std::string()>)
15 // see https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html
16 import java.util.function.Supplier;
17 // Used to wrap std::function<bool()>
18 // see https://docs.oracle.com/javase/8/docs/api/java/util/function/BooleanSupplier.html
19 import java.util.function.BooleanSupplier;
20 
21 // Used to wrap IndexEvaluator1 (std::function<int64(int64)>)
22 // see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongUnaryOperator.html
23 import java.util.function.LongUnaryOperator;
24 // Used to wrap IndexEvaluator2 (std::function<int64(int64, int64)>)
25 // see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongBinaryOperator.html
26 import java.util.function.LongBinaryOperator;
27 // Used to wrap IndexEvaluator3 (std::function<int64(int64, int64, int64)>)
28 // note: Java does not provide TernaryOperator so we provide it.
30 // Used to wrap std::function<int64(int, int)>
31 // note: Java does not provide it, so we provide it.
33 
34 // Used to wrap IndexFilter1 (std::function<bool(int64)>)
35 // see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongPredicate.html
36 import java.util.function.LongPredicate;
37 
38 // Used to wrap std::function<bool(int64, int64, int64)>
39 // note: Java does not provide TernaryPredicate so we provide it
41 
42 // Used to wrap std::function<void(Solver*)>
43 // see https://docs.oracle.com/javase/8/docs/api/java/util/function/Consumer.html
44 import java.util.function.Consumer;
45 
46 // Used to wrap ObjectiveWatcher (std::function<void(int64)>)
47 // see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongConsumer.html
48 import java.util.function.LongConsumer;
49 
50 // Used to wrap Closure (std::function<void()>)
51 // see https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html
52 import java.lang.Runnable;
53 
54 public class Solver {
55  private transient long swigCPtr;
56  protected transient boolean swigCMemOwn;
57 
58  protected Solver(long cPtr, boolean cMemoryOwn) {
59  swigCMemOwn = cMemoryOwn;
60  swigCPtr = cPtr;
61  }
62 
63  protected static long getCPtr(Solver obj) {
64  return (obj == null) ? 0 : obj.swigCPtr;
65  }
66 
67  protected void finalize() {
68  delete();
69  }
70 
71  public synchronized void delete() {
72  if (swigCPtr != 0) {
73  if (swigCMemOwn) {
74  swigCMemOwn = false;
75  mainJNI.delete_Solver(swigCPtr);
76  }
77  swigCPtr = 0;
78  }
79  }
80 
84  public static class FailException extends Exception {
85  public FailException() {
86  super();
87  }
88 
89  public FailException(String message) {
90  super(message);
91  }
92  }
93 
94  public IntVar[] makeIntVarArray(int count, long min, long max) {
95  IntVar[] array = new IntVar[count];
96  for (int i = 0; i < count; ++i) {
97  array[i] = makeIntVar(min, max);
98  }
99  return array;
100  }
101 
102  public IntVar[] makeIntVarArray(int count, long min, long max, String name) {
103  IntVar[] array = new IntVar[count];
104  for (int i = 0; i < count; ++i) {
105  String var_name = name + i;
106  array[i] = makeIntVar(min, max, var_name);
107  }
108  return array;
109  }
110 
111  public IntVar[] makeBoolVarArray(int count) {
112  IntVar[] array = new IntVar[count];
113  for (int i = 0; i < count; ++i) {
114  array[i] = makeBoolVar();
115  }
116  return array;
117  }
118 
119  public IntVar[] makeBoolVarArray(int count, String name) {
120  IntVar[] array = new IntVar[count];
121  for (int i = 0; i < count; ++i) {
122  String var_name = name + i;
123  array[i] = makeBoolVar(var_name);
124  }
125  return array;
126  }
127 
129  long start_min,
130  long start_max,
131  long duration,
132  boolean optional) {
133  IntervalVar[] array = new IntervalVar[count];
134  for (int i = 0; i < count; ++i) {
135  array[i] = makeFixedDurationIntervalVar(start_min,
136  start_max,
137  duration,
138  optional,
139  "");
140  }
141  return array;
142  }
143 
145  long start_min,
146  long start_max,
147  long duration,
148  boolean optional,
149  String name) {
150  IntervalVar[] array = new IntervalVar[count];
151  for (int i = 0; i < count; ++i) {
152  array[i] = makeFixedDurationIntervalVar(start_min,
153  start_max,
154  duration,
155  optional,
156  name + i);
157  }
158  return array;
159  }
160 
161  static public class IntegerCastInfo {
162  private transient long swigCPtr;
163  protected transient boolean swigCMemOwn;
164 
165  protected IntegerCastInfo(long cPtr, boolean cMemoryOwn) {
166  swigCMemOwn = cMemoryOwn;
167  swigCPtr = cPtr;
168  }
169 
170  protected static long getCPtr(IntegerCastInfo obj) {
171  return (obj == null) ? 0 : obj.swigCPtr;
172  }
173 
174  protected void finalize() {
175  delete();
176  }
177 
178  public synchronized void delete() {
179  if (swigCPtr != 0) {
180  if (swigCMemOwn) {
181  swigCMemOwn = false;
182  mainJNI.delete_Solver_IntegerCastInfo(swigCPtr);
183  }
184  swigCPtr = 0;
185  }
186  }
187 
188  public IntegerCastInfo() {
189  this(mainJNI.new_Solver_IntegerCastInfo__SWIG_0(), true);
190  }
191 
193  this(mainJNI.new_Solver_IntegerCastInfo__SWIG_1(IntVar.getCPtr(v), v, IntExpr.getCPtr(e), e, Constraint.getCPtr(c), c), true);
194  }
195 
196  public void setVariable(IntVar value) {
197  mainJNI.Solver_IntegerCastInfo_variable_set(swigCPtr, this, IntVar.getCPtr(value), value);
198  }
199 
200  public IntVar getVariable() {
201  long cPtr = mainJNI.Solver_IntegerCastInfo_variable_get(swigCPtr, this);
202  return (cPtr == 0) ? null : new IntVar(cPtr, false);
203  }
204 
205  public void setExpression(IntExpr value) {
206  mainJNI.Solver_IntegerCastInfo_expression_set(swigCPtr, this, IntExpr.getCPtr(value), value);
207  }
208 
210  long cPtr = mainJNI.Solver_IntegerCastInfo_expression_get(swigCPtr, this);
211  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
212  }
213 
214  public void setMaintainer(Constraint value) {
215  mainJNI.Solver_IntegerCastInfo_maintainer_set(swigCPtr, this, Constraint.getCPtr(value), value);
216  }
217 
219  long cPtr = mainJNI.Solver_IntegerCastInfo_maintainer_get(swigCPtr, this);
220  return (cPtr == 0) ? null : new Constraint(cPtr, false);
221  }
222 
223  }
224 
225  public Solver(String name) {
226  this(mainJNI.new_Solver__SWIG_0(name), true);
227  }
228 
230  this(mainJNI.new_Solver__SWIG_1(name, parameters.toByteArray()), true);
231  }
232 
234  byte[] buf = mainJNI.Solver_parameters(swigCPtr, this);
235  if (buf == null || buf.length == 0) {
236  return null;
237  }
238  try {
240  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
241  throw new RuntimeException(
242  "Unable to parse com.google.ortools.constraintsolver.ConstraintSolverParameters protocol message.");
243  }
244 }
245 
247  byte[] buf = mainJNI.Solver_defaultSolverParameters();
248  if (buf == null || buf.length == 0) {
249  return null;
250  }
251  try {
253  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
254  throw new RuntimeException(
255  "Unable to parse com.google.ortools.constraintsolver.ConstraintSolverParameters protocol message.");
256  }
257 }
258 
259  public void addConstraint(Constraint c) {
260  mainJNI.Solver_addConstraint(swigCPtr, this, Constraint.getCPtr(c), c);
261  }
262 
263  public void addCastConstraint(CastConstraint constraint, IntVar target_var, IntExpr expr) {
264  mainJNI.Solver_addCastConstraint(swigCPtr, this, CastConstraint.getCPtr(constraint), constraint, IntVar.getCPtr(target_var), target_var, IntExpr.getCPtr(expr), expr);
265  }
266 
267  public boolean solve(DecisionBuilder db, SearchMonitor[] monitors) {
268  return mainJNI.Solver_solve__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db), db, monitors);
269  }
270 
271  public boolean solve(DecisionBuilder db) {
272  return mainJNI.Solver_solve__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db), db);
273  }
274 
275  public boolean solve(DecisionBuilder db, SearchMonitor m1) {
276  return mainJNI.Solver_solve__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1);
277  }
278 
279  public boolean solve(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2) {
280  return mainJNI.Solver_solve__SWIG_3(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2);
281  }
282 
284  return mainJNI.Solver_solve__SWIG_4(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2, SearchMonitor.getCPtr(m3), m3);
285  }
286 
288  return mainJNI.Solver_solve__SWIG_5(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2, SearchMonitor.getCPtr(m3), m3, SearchMonitor.getCPtr(m4), m4);
289  }
290 
291  public void newSearch(DecisionBuilder db, SearchMonitor[] monitors) {
292  mainJNI.Solver_newSearch__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db), db, monitors);
293  }
294 
295  public void newSearch(DecisionBuilder db) {
296  mainJNI.Solver_newSearch__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db), db);
297  }
298 
300  mainJNI.Solver_newSearch__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1);
301  }
302 
304  mainJNI.Solver_newSearch__SWIG_3(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2);
305  }
306 
308  mainJNI.Solver_newSearch__SWIG_4(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2, SearchMonitor.getCPtr(m3), m3);
309  }
310 
312  mainJNI.Solver_newSearch__SWIG_5(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2, SearchMonitor.getCPtr(m3), m3, SearchMonitor.getCPtr(m4), m4);
313  }
314 
315  public boolean nextSolution() {
316  return mainJNI.Solver_nextSolution(swigCPtr, this);
317  }
318 
319  public void restartSearch() {
320  mainJNI.Solver_restartSearch(swigCPtr, this);
321  }
322 
323  public void endSearch() {
324  mainJNI.Solver_endSearch(swigCPtr, this);
325  }
326 
327  public boolean solveAndCommit(DecisionBuilder db, SearchMonitor[] monitors) {
328  return mainJNI.Solver_solveAndCommit__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db), db, monitors);
329  }
330 
331  public boolean solveAndCommit(DecisionBuilder db) {
332  return mainJNI.Solver_solveAndCommit__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db), db);
333  }
334 
336  return mainJNI.Solver_solveAndCommit__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1);
337  }
338 
340  return mainJNI.Solver_solveAndCommit__SWIG_3(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2);
341  }
342 
344  return mainJNI.Solver_solveAndCommit__SWIG_4(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(m1), m1, SearchMonitor.getCPtr(m2), m2, SearchMonitor.getCPtr(m3), m3);
345  }
346 
347  public boolean checkAssignment(Assignment solution) {
348  return mainJNI.Solver_checkAssignment(swigCPtr, this, Assignment.getCPtr(solution), solution);
349  }
350 
351  public boolean checkConstraint(Constraint ct) {
352  return mainJNI.Solver_checkConstraint(swigCPtr, this, Constraint.getCPtr(ct), ct);
353  }
354 
355  public int state() {
356  return mainJNI.Solver_state(swigCPtr, this);
357  }
358 
359  public void fail() {
360  mainJNI.Solver_fail(swigCPtr, this);
361  }
362 
363  public String toString() {
364  return mainJNI.Solver_toString(swigCPtr, this);
365  }
366 
367  public static long memoryUsage() {
368  return mainJNI.Solver_memoryUsage();
369  }
370 
371  public SWIGTYPE_p_absl__Time Now() {
372  return new SWIGTYPE_p_absl__Time(mainJNI.Solver_Now(swigCPtr, this), true);
373  }
374 
375  public long wallTime() {
376  return mainJNI.Solver_wallTime(swigCPtr, this);
377  }
378 
379  public long branches() {
380  return mainJNI.Solver_branches(swigCPtr, this);
381  }
382 
383  public long solutions() {
384  return mainJNI.Solver_solutions(swigCPtr, this);
385  }
386 
387  public long unchecked_solutions() {
388  return mainJNI.Solver_unchecked_solutions(swigCPtr, this);
389  }
390 
391  public long demon_runs(int p) {
392  return mainJNI.Solver_demon_runs(swigCPtr, this, p);
393  }
394 
395  public long failures() {
396  return mainJNI.Solver_failures(swigCPtr, this);
397  }
398 
399  public long neighbors() {
400  return mainJNI.Solver_neighbors(swigCPtr, this);
401  }
402 
403  public long filteredNeighbors() {
404  return mainJNI.Solver_filteredNeighbors(swigCPtr, this);
405  }
406 
407  public long acceptedNeighbors() {
408  return mainJNI.Solver_acceptedNeighbors(swigCPtr, this);
409  }
410 
411  public java.math.BigInteger stamp() {
412  return mainJNI.Solver_stamp(swigCPtr, this);
413  }
414 
415  public java.math.BigInteger fail_stamp() {
416  return mainJNI.Solver_fail_stamp(swigCPtr, this);
417  }
418 
419  public int optimization_direction() {
420  return mainJNI.Solver_optimization_direction(swigCPtr, this);
421  }
422 
423  public void set_optimization_direction(int direction) {
424  mainJNI.Solver_set_optimization_direction(swigCPtr, this, direction);
425  }
426 
427  public IntVar makeIntVar(long min, long max, String name) {
428  long cPtr = mainJNI.Solver_makeIntVar__SWIG_0(swigCPtr, this, min, max, name);
429  return (cPtr == 0) ? null : new IntVar(cPtr, false);
430  }
431 
432  public IntVar makeIntVar(long[] values, String name) {
433  long cPtr = mainJNI.Solver_makeIntVar__SWIG_1(swigCPtr, this, values, name);
434  return (cPtr == 0) ? null : new IntVar(cPtr, false);
435  }
436 
437  public IntVar makeIntVar(int[] values, String name) {
438  long cPtr = mainJNI.Solver_makeIntVar__SWIG_2(swigCPtr, this, values, name);
439  return (cPtr == 0) ? null : new IntVar(cPtr, false);
440  }
441 
442  public IntVar makeIntVar(long min, long max) {
443  long cPtr = mainJNI.Solver_makeIntVar__SWIG_3(swigCPtr, this, min, max);
444  return (cPtr == 0) ? null : new IntVar(cPtr, false);
445  }
446 
447  public IntVar makeIntVar(long[] values) {
448  long cPtr = mainJNI.Solver_makeIntVar__SWIG_4(swigCPtr, this, values);
449  return (cPtr == 0) ? null : new IntVar(cPtr, false);
450  }
451 
452  public IntVar makeIntVar(int[] values) {
453  long cPtr = mainJNI.Solver_makeIntVar__SWIG_5(swigCPtr, this, values);
454  return (cPtr == 0) ? null : new IntVar(cPtr, false);
455  }
456 
457  public IntVar makeBoolVar(String name) {
458  long cPtr = mainJNI.Solver_makeBoolVar__SWIG_0(swigCPtr, this, name);
459  return (cPtr == 0) ? null : new IntVar(cPtr, false);
460  }
461 
462  public IntVar makeBoolVar() {
463  long cPtr = mainJNI.Solver_makeBoolVar__SWIG_1(swigCPtr, this);
464  return (cPtr == 0) ? null : new IntVar(cPtr, false);
465  }
466 
467  public IntVar makeIntConst(long val, String name) {
468  long cPtr = mainJNI.Solver_makeIntConst__SWIG_0(swigCPtr, this, val, name);
469  return (cPtr == 0) ? null : new IntVar(cPtr, false);
470  }
471 
472  public IntVar makeIntConst(long val) {
473  long cPtr = mainJNI.Solver_makeIntConst__SWIG_1(swigCPtr, this, val);
474  return (cPtr == 0) ? null : new IntVar(cPtr, false);
475  }
476 
477  public IntExpr makeSum(IntExpr left, IntExpr right) {
478  long cPtr = mainJNI.Solver_makeSum__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
479  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
480  }
481 
482  public IntExpr makeSum(IntExpr expr, long value) {
483  long cPtr = mainJNI.Solver_makeSum__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
484  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
485  }
486 
487  public IntExpr makeSum(IntVar[] vars) {
488  long cPtr = mainJNI.Solver_makeSum__SWIG_2(swigCPtr, this, vars);
489  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
490  }
491 
492  public IntExpr makeScalProd(IntVar[] vars, long[] coefs) {
493  long cPtr = mainJNI.Solver_makeScalProd__SWIG_0(swigCPtr, this, vars, coefs);
494  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
495  }
496 
497  public IntExpr makeScalProd(IntVar[] vars, int[] coefs) {
498  long cPtr = mainJNI.Solver_makeScalProd__SWIG_1(swigCPtr, this, vars, coefs);
499  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
500  }
501 
502  public IntExpr makeDifference(IntExpr left, IntExpr right) {
503  long cPtr = mainJNI.Solver_makeDifference__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
504  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
505  }
506 
507  public IntExpr makeDifference(long value, IntExpr expr) {
508  long cPtr = mainJNI.Solver_makeDifference__SWIG_1(swigCPtr, this, value, IntExpr.getCPtr(expr), expr);
509  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
510  }
511 
512  public IntExpr makeOpposite(IntExpr expr) {
513  long cPtr = mainJNI.Solver_makeOpposite(swigCPtr, this, IntExpr.getCPtr(expr), expr);
514  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
515  }
516 
517  public IntExpr makeProd(IntExpr left, IntExpr right) {
518  long cPtr = mainJNI.Solver_makeProd__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
519  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
520  }
521 
522  public IntExpr makeProd(IntExpr expr, long value) {
523  long cPtr = mainJNI.Solver_makeProd__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
524  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
525  }
526 
527  public IntExpr makeDiv(IntExpr expr, long value) {
528  long cPtr = mainJNI.Solver_makeDiv__SWIG_0(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
529  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
530  }
531 
532  public IntExpr makeDiv(IntExpr numerator, IntExpr denominator) {
533  long cPtr = mainJNI.Solver_makeDiv__SWIG_1(swigCPtr, this, IntExpr.getCPtr(numerator), numerator, IntExpr.getCPtr(denominator), denominator);
534  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
535  }
536 
537  public IntExpr makeAbs(IntExpr expr) {
538  long cPtr = mainJNI.Solver_makeAbs(swigCPtr, this, IntExpr.getCPtr(expr), expr);
539  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
540  }
541 
542  public IntExpr makeSquare(IntExpr expr) {
543  long cPtr = mainJNI.Solver_makeSquare(swigCPtr, this, IntExpr.getCPtr(expr), expr);
544  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
545  }
546 
547  public IntExpr makePower(IntExpr expr, long n) {
548  long cPtr = mainJNI.Solver_makePower(swigCPtr, this, IntExpr.getCPtr(expr), expr, n);
549  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
550  }
551 
552  public IntExpr makeElement(long[] values, IntVar index) {
553  long cPtr = mainJNI.Solver_makeElement__SWIG_0(swigCPtr, this, values, IntVar.getCPtr(index), index);
554  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
555  }
556 
557  public IntExpr makeElement(int[] values, IntVar index) {
558  long cPtr = mainJNI.Solver_makeElement__SWIG_1(swigCPtr, this, values, IntVar.getCPtr(index), index);
559  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
560  }
561 
562  public IntExpr makeElement(LongUnaryOperator values, IntVar index) {
563  long cPtr = mainJNI.Solver_makeElement__SWIG_2(swigCPtr, this, values, IntVar.getCPtr(index), index);
564  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
565  }
566 
567  public IntExpr makeMonotonicElement(LongUnaryOperator values, boolean increasing, IntVar index) {
568  long cPtr = mainJNI.Solver_makeMonotonicElement(swigCPtr, this, values, increasing, IntVar.getCPtr(index), index);
569  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
570  }
571 
572  public IntExpr makeElement(LongBinaryOperator values, IntVar index1, IntVar index2) {
573  long cPtr = mainJNI.Solver_makeElement__SWIG_3(swigCPtr, this, values, IntVar.getCPtr(index1), index1, IntVar.getCPtr(index2), index2);
574  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
575  }
576 
577  public IntExpr makeElement(IntVar[] vars, IntVar index) {
578  long cPtr = mainJNI.Solver_makeElement__SWIG_4(swigCPtr, this, vars, IntVar.getCPtr(index), index);
579  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
580  }
581 
582  public IntExpr makeIndexExpression(IntVar[] vars, long value) {
583  long cPtr = mainJNI.Solver_makeIndexExpression(swigCPtr, this, vars, value);
584  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
585  }
586 
587  public Constraint makeIfThenElseCt(IntVar condition, IntExpr then_expr, IntExpr else_expr, IntVar target_var) {
588  long cPtr = mainJNI.Solver_makeIfThenElseCt(swigCPtr, this, IntVar.getCPtr(condition), condition, IntExpr.getCPtr(then_expr), then_expr, IntExpr.getCPtr(else_expr), else_expr, IntVar.getCPtr(target_var), target_var);
589  return (cPtr == 0) ? null : new Constraint(cPtr, false);
590  }
591 
592  public IntExpr makeMin(IntVar[] vars) {
593  long cPtr = mainJNI.Solver_makeMin__SWIG_0(swigCPtr, this, vars);
594  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
595  }
596 
597  public IntExpr makeMin(IntExpr left, IntExpr right) {
598  long cPtr = mainJNI.Solver_makeMin__SWIG_1(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
599  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
600  }
601 
602  public IntExpr makeMin(IntExpr expr, long value) {
603  long cPtr = mainJNI.Solver_makeMin__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
604  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
605  }
606 
607  public IntExpr makeMin(IntExpr expr, int value) {
608  long cPtr = mainJNI.Solver_makeMin__SWIG_3(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
609  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
610  }
611 
612  public IntExpr makeMax(IntVar[] vars) {
613  long cPtr = mainJNI.Solver_makeMax__SWIG_0(swigCPtr, this, vars);
614  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
615  }
616 
617  public IntExpr makeMax(IntExpr left, IntExpr right) {
618  long cPtr = mainJNI.Solver_makeMax__SWIG_1(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
619  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
620  }
621 
622  public IntExpr makeMax(IntExpr expr, long value) {
623  long cPtr = mainJNI.Solver_makeMax__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
624  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
625  }
626 
627  public IntExpr makeMax(IntExpr expr, int value) {
628  long cPtr = mainJNI.Solver_makeMax__SWIG_3(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
629  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
630  }
631 
632  public IntExpr makeConvexPiecewiseExpr(IntExpr expr, long early_cost, long early_date, long late_date, long late_cost) {
633  long cPtr = mainJNI.Solver_makeConvexPiecewiseExpr(swigCPtr, this, IntExpr.getCPtr(expr), expr, early_cost, early_date, late_date, late_cost);
634  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
635  }
636 
637  public IntExpr makeSemiContinuousExpr(IntExpr expr, long fixed_charge, long step) {
638  long cPtr = mainJNI.Solver_makeSemiContinuousExpr(swigCPtr, this, IntExpr.getCPtr(expr), expr, fixed_charge, step);
639  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
640  }
641 
642  public IntExpr makeModulo(IntExpr x, long mod) {
643  long cPtr = mainJNI.Solver_makeModulo__SWIG_0(swigCPtr, this, IntExpr.getCPtr(x), x, mod);
644  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
645  }
646 
648  long cPtr = mainJNI.Solver_makeModulo__SWIG_1(swigCPtr, this, IntExpr.getCPtr(x), x, IntExpr.getCPtr(mod), mod);
649  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
650  }
651 
652  public IntExpr makeConditionalExpression(IntVar condition, IntExpr expr, long unperformed_value) {
653  long cPtr = mainJNI.Solver_makeConditionalExpression(swigCPtr, this, IntVar.getCPtr(condition), condition, IntExpr.getCPtr(expr), expr, unperformed_value);
654  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
655  }
656 
658  long cPtr = mainJNI.Solver_makeTrueConstraint(swigCPtr, this);
659  return (cPtr == 0) ? null : new Constraint(cPtr, false);
660  }
661 
663  long cPtr = mainJNI.Solver_makeFalseConstraint__SWIG_0(swigCPtr, this);
664  return (cPtr == 0) ? null : new Constraint(cPtr, false);
665  }
666 
667  public Constraint makeFalseConstraint(String explanation) {
668  long cPtr = mainJNI.Solver_makeFalseConstraint__SWIG_1(swigCPtr, this, explanation);
669  return (cPtr == 0) ? null : new Constraint(cPtr, false);
670  }
671 
672  public Constraint makeIsEqualCstCt(IntExpr var, long value, IntVar boolvar) {
673  long cPtr = mainJNI.Solver_makeIsEqualCstCt(swigCPtr, this, IntExpr.getCPtr(var), var, value, IntVar.getCPtr(boolvar), boolvar);
674  return (cPtr == 0) ? null : new Constraint(cPtr, false);
675  }
676 
677  public IntVar makeIsEqualCstVar(IntExpr var, long value) {
678  long cPtr = mainJNI.Solver_makeIsEqualCstVar(swigCPtr, this, IntExpr.getCPtr(var), var, value);
679  return (cPtr == 0) ? null : new IntVar(cPtr, false);
680  }
681 
683  long cPtr = mainJNI.Solver_makeIsEqualVar__SWIG_0(swigCPtr, this, IntExpr.getCPtr(v1), v1, IntExpr.getCPtr(v2), v2, IntVar.getCPtr(b), b);
684  return (cPtr == 0) ? null : new Constraint(cPtr, false);
685  }
686 
688  long cPtr = mainJNI.Solver_makeIsEqualVar__SWIG_1(swigCPtr, this, IntExpr.getCPtr(v1), v1, IntExpr.getCPtr(v2), v2);
689  return (cPtr == 0) ? null : new IntVar(cPtr, false);
690  }
691 
692  public Constraint makeEquality(IntExpr left, IntExpr right) {
693  long cPtr = mainJNI.Solver_makeEquality__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
694  return (cPtr == 0) ? null : new Constraint(cPtr, false);
695  }
696 
697  public Constraint makeEquality(IntExpr expr, long value) {
698  long cPtr = mainJNI.Solver_makeEquality__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
699  return (cPtr == 0) ? null : new Constraint(cPtr, false);
700  }
701 
702  public Constraint makeEquality(IntExpr expr, int value) {
703  long cPtr = mainJNI.Solver_makeEquality__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
704  return (cPtr == 0) ? null : new Constraint(cPtr, false);
705  }
706 
707  public Constraint makeIsDifferentCstCt(IntExpr var, long value, IntVar boolvar) {
708  long cPtr = mainJNI.Solver_makeIsDifferentCstCt__SWIG_0(swigCPtr, this, IntExpr.getCPtr(var), var, value, IntVar.getCPtr(boolvar), boolvar);
709  return (cPtr == 0) ? null : new Constraint(cPtr, false);
710  }
711 
712  public IntVar makeIsDifferentCstVar(IntExpr var, long value) {
713  long cPtr = mainJNI.Solver_makeIsDifferentCstVar__SWIG_0(swigCPtr, this, IntExpr.getCPtr(var), var, value);
714  return (cPtr == 0) ? null : new IntVar(cPtr, false);
715  }
716 
718  long cPtr = mainJNI.Solver_makeIsDifferentCstVar__SWIG_1(swigCPtr, this, IntExpr.getCPtr(v1), v1, IntExpr.getCPtr(v2), v2);
719  return (cPtr == 0) ? null : new IntVar(cPtr, false);
720  }
721 
723  long cPtr = mainJNI.Solver_makeIsDifferentCstCt__SWIG_1(swigCPtr, this, IntExpr.getCPtr(v1), v1, IntExpr.getCPtr(v2), v2, IntVar.getCPtr(b), b);
724  return (cPtr == 0) ? null : new Constraint(cPtr, false);
725  }
726 
728  long cPtr = mainJNI.Solver_makeNonEquality__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
729  return (cPtr == 0) ? null : new Constraint(cPtr, false);
730  }
731 
732  public Constraint makeNonEquality(IntExpr expr, long value) {
733  long cPtr = mainJNI.Solver_makeNonEquality__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
734  return (cPtr == 0) ? null : new Constraint(cPtr, false);
735  }
736 
737  public Constraint makeNonEquality(IntExpr expr, int value) {
738  long cPtr = mainJNI.Solver_makeNonEquality__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
739  return (cPtr == 0) ? null : new Constraint(cPtr, false);
740  }
741 
742  public Constraint makeIsLessOrEqualCstCt(IntExpr var, long value, IntVar boolvar) {
743  long cPtr = mainJNI.Solver_makeIsLessOrEqualCstCt(swigCPtr, this, IntExpr.getCPtr(var), var, value, IntVar.getCPtr(boolvar), boolvar);
744  return (cPtr == 0) ? null : new Constraint(cPtr, false);
745  }
746 
747  public IntVar makeIsLessOrEqualCstVar(IntExpr var, long value) {
748  long cPtr = mainJNI.Solver_makeIsLessOrEqualCstVar(swigCPtr, this, IntExpr.getCPtr(var), var, value);
749  return (cPtr == 0) ? null : new IntVar(cPtr, false);
750  }
751 
753  long cPtr = mainJNI.Solver_makeIsLessOrEqualVar(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
754  return (cPtr == 0) ? null : new IntVar(cPtr, false);
755  }
756 
758  long cPtr = mainJNI.Solver_makeIsLessOrEqualCt(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right, IntVar.getCPtr(b), b);
759  return (cPtr == 0) ? null : new Constraint(cPtr, false);
760  }
761 
763  long cPtr = mainJNI.Solver_makeLessOrEqual__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
764  return (cPtr == 0) ? null : new Constraint(cPtr, false);
765  }
766 
767  public Constraint makeLessOrEqual(IntExpr expr, long value) {
768  long cPtr = mainJNI.Solver_makeLessOrEqual__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
769  return (cPtr == 0) ? null : new Constraint(cPtr, false);
770  }
771 
772  public Constraint makeLessOrEqual(IntExpr expr, int value) {
773  long cPtr = mainJNI.Solver_makeLessOrEqual__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
774  return (cPtr == 0) ? null : new Constraint(cPtr, false);
775  }
776 
777  public Constraint makeIsGreaterOrEqualCstCt(IntExpr var, long value, IntVar boolvar) {
778  long cPtr = mainJNI.Solver_makeIsGreaterOrEqualCstCt(swigCPtr, this, IntExpr.getCPtr(var), var, value, IntVar.getCPtr(boolvar), boolvar);
779  return (cPtr == 0) ? null : new Constraint(cPtr, false);
780  }
781 
782  public IntVar makeIsGreaterOrEqualCstVar(IntExpr var, long value) {
783  long cPtr = mainJNI.Solver_makeIsGreaterOrEqualCstVar(swigCPtr, this, IntExpr.getCPtr(var), var, value);
784  return (cPtr == 0) ? null : new IntVar(cPtr, false);
785  }
786 
788  long cPtr = mainJNI.Solver_makeIsGreaterOrEqualVar(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
789  return (cPtr == 0) ? null : new IntVar(cPtr, false);
790  }
791 
793  long cPtr = mainJNI.Solver_makeIsGreaterOrEqualCt(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right, IntVar.getCPtr(b), b);
794  return (cPtr == 0) ? null : new Constraint(cPtr, false);
795  }
796 
798  long cPtr = mainJNI.Solver_makeGreaterOrEqual__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
799  return (cPtr == 0) ? null : new Constraint(cPtr, false);
800  }
801 
802  public Constraint makeGreaterOrEqual(IntExpr expr, long value) {
803  long cPtr = mainJNI.Solver_makeGreaterOrEqual__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
804  return (cPtr == 0) ? null : new Constraint(cPtr, false);
805  }
806 
807  public Constraint makeGreaterOrEqual(IntExpr expr, int value) {
808  long cPtr = mainJNI.Solver_makeGreaterOrEqual__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
809  return (cPtr == 0) ? null : new Constraint(cPtr, false);
810  }
811 
813  long cPtr = mainJNI.Solver_makeIsGreaterCstCt(swigCPtr, this, IntExpr.getCPtr(v), v, c, IntVar.getCPtr(b), b);
814  return (cPtr == 0) ? null : new Constraint(cPtr, false);
815  }
816 
817  public IntVar makeIsGreaterCstVar(IntExpr var, long value) {
818  long cPtr = mainJNI.Solver_makeIsGreaterCstVar(swigCPtr, this, IntExpr.getCPtr(var), var, value);
819  return (cPtr == 0) ? null : new IntVar(cPtr, false);
820  }
821 
822  public IntVar makeIsGreaterVar(IntExpr left, IntExpr right) {
823  long cPtr = mainJNI.Solver_makeIsGreaterVar(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
824  return (cPtr == 0) ? null : new IntVar(cPtr, false);
825  }
826 
828  long cPtr = mainJNI.Solver_makeIsGreaterCt(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right, IntVar.getCPtr(b), b);
829  return (cPtr == 0) ? null : new Constraint(cPtr, false);
830  }
831 
832  public Constraint makeGreater(IntExpr left, IntExpr right) {
833  long cPtr = mainJNI.Solver_makeGreater__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
834  return (cPtr == 0) ? null : new Constraint(cPtr, false);
835  }
836 
837  public Constraint makeGreater(IntExpr expr, long value) {
838  long cPtr = mainJNI.Solver_makeGreater__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
839  return (cPtr == 0) ? null : new Constraint(cPtr, false);
840  }
841 
842  public Constraint makeGreater(IntExpr expr, int value) {
843  long cPtr = mainJNI.Solver_makeGreater__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
844  return (cPtr == 0) ? null : new Constraint(cPtr, false);
845  }
846 
847  public Constraint makeIsLessCstCt(IntExpr v, long c, IntVar b) {
848  long cPtr = mainJNI.Solver_makeIsLessCstCt(swigCPtr, this, IntExpr.getCPtr(v), v, c, IntVar.getCPtr(b), b);
849  return (cPtr == 0) ? null : new Constraint(cPtr, false);
850  }
851 
852  public IntVar makeIsLessCstVar(IntExpr var, long value) {
853  long cPtr = mainJNI.Solver_makeIsLessCstVar(swigCPtr, this, IntExpr.getCPtr(var), var, value);
854  return (cPtr == 0) ? null : new IntVar(cPtr, false);
855  }
856 
857  public IntVar makeIsLessVar(IntExpr left, IntExpr right) {
858  long cPtr = mainJNI.Solver_makeIsLessVar(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
859  return (cPtr == 0) ? null : new IntVar(cPtr, false);
860  }
861 
862  public Constraint makeIsLessCt(IntExpr left, IntExpr right, IntVar b) {
863  long cPtr = mainJNI.Solver_makeIsLessCt(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right, IntVar.getCPtr(b), b);
864  return (cPtr == 0) ? null : new Constraint(cPtr, false);
865  }
866 
867  public Constraint makeLess(IntExpr left, IntExpr right) {
868  long cPtr = mainJNI.Solver_makeLess__SWIG_0(swigCPtr, this, IntExpr.getCPtr(left), left, IntExpr.getCPtr(right), right);
869  return (cPtr == 0) ? null : new Constraint(cPtr, false);
870  }
871 
872  public Constraint makeLess(IntExpr expr, long value) {
873  long cPtr = mainJNI.Solver_makeLess__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
874  return (cPtr == 0) ? null : new Constraint(cPtr, false);
875  }
876 
877  public Constraint makeLess(IntExpr expr, int value) {
878  long cPtr = mainJNI.Solver_makeLess__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, value);
879  return (cPtr == 0) ? null : new Constraint(cPtr, false);
880  }
881 
882  public Constraint makeSumLessOrEqual(IntVar[] vars, long cst) {
883  long cPtr = mainJNI.Solver_makeSumLessOrEqual(swigCPtr, this, vars, cst);
884  return (cPtr == 0) ? null : new Constraint(cPtr, false);
885  }
886 
887  public Constraint makeSumGreaterOrEqual(IntVar[] vars, long cst) {
888  long cPtr = mainJNI.Solver_makeSumGreaterOrEqual(swigCPtr, this, vars, cst);
889  return (cPtr == 0) ? null : new Constraint(cPtr, false);
890  }
891 
892  public Constraint makeSumEquality(IntVar[] vars, long cst) {
893  long cPtr = mainJNI.Solver_makeSumEquality__SWIG_0(swigCPtr, this, vars, cst);
894  return (cPtr == 0) ? null : new Constraint(cPtr, false);
895  }
896 
897  public Constraint makeSumEquality(IntVar[] vars, IntVar var) {
898  long cPtr = mainJNI.Solver_makeSumEquality__SWIG_1(swigCPtr, this, vars, IntVar.getCPtr(var), var);
899  return (cPtr == 0) ? null : new Constraint(cPtr, false);
900  }
901 
902  public Constraint makeScalProdEquality(IntVar[] vars, long[] coefficients, long cst) {
903  long cPtr = mainJNI.Solver_makeScalProdEquality__SWIG_0(swigCPtr, this, vars, coefficients, cst);
904  return (cPtr == 0) ? null : new Constraint(cPtr, false);
905  }
906 
907  public Constraint makeScalProdEquality(IntVar[] vars, int[] coefficients, long cst) {
908  long cPtr = mainJNI.Solver_makeScalProdEquality__SWIG_1(swigCPtr, this, vars, coefficients, cst);
909  return (cPtr == 0) ? null : new Constraint(cPtr, false);
910  }
911 
912  public Constraint makeScalProdEquality(IntVar[] vars, long[] coefficients, IntVar target) {
913  long cPtr = mainJNI.Solver_makeScalProdEquality__SWIG_2(swigCPtr, this, vars, coefficients, IntVar.getCPtr(target), target);
914  return (cPtr == 0) ? null : new Constraint(cPtr, false);
915  }
916 
917  public Constraint makeScalProdEquality(IntVar[] vars, int[] coefficients, IntVar target) {
918  long cPtr = mainJNI.Solver_makeScalProdEquality__SWIG_3(swigCPtr, this, vars, coefficients, IntVar.getCPtr(target), target);
919  return (cPtr == 0) ? null : new Constraint(cPtr, false);
920  }
921 
922  public Constraint makeScalProdGreaterOrEqual(IntVar[] vars, long[] coeffs, long cst) {
923  long cPtr = mainJNI.Solver_makeScalProdGreaterOrEqual__SWIG_0(swigCPtr, this, vars, coeffs, cst);
924  return (cPtr == 0) ? null : new Constraint(cPtr, false);
925  }
926 
927  public Constraint makeScalProdGreaterOrEqual(IntVar[] vars, int[] coeffs, long cst) {
928  long cPtr = mainJNI.Solver_makeScalProdGreaterOrEqual__SWIG_1(swigCPtr, this, vars, coeffs, cst);
929  return (cPtr == 0) ? null : new Constraint(cPtr, false);
930  }
931 
932  public Constraint makeScalProdLessOrEqual(IntVar[] vars, long[] coefficients, long cst) {
933  long cPtr = mainJNI.Solver_makeScalProdLessOrEqual__SWIG_0(swigCPtr, this, vars, coefficients, cst);
934  return (cPtr == 0) ? null : new Constraint(cPtr, false);
935  }
936 
937  public Constraint makeScalProdLessOrEqual(IntVar[] vars, int[] coefficients, long cst) {
938  long cPtr = mainJNI.Solver_makeScalProdLessOrEqual__SWIG_1(swigCPtr, this, vars, coefficients, cst);
939  return (cPtr == 0) ? null : new Constraint(cPtr, false);
940  }
941 
942  public Constraint makeMinEquality(IntVar[] vars, IntVar min_var) {
943  long cPtr = mainJNI.Solver_makeMinEquality(swigCPtr, this, vars, IntVar.getCPtr(min_var), min_var);
944  return (cPtr == 0) ? null : new Constraint(cPtr, false);
945  }
946 
947  public Constraint makeMaxEquality(IntVar[] vars, IntVar max_var) {
948  long cPtr = mainJNI.Solver_makeMaxEquality(swigCPtr, this, vars, IntVar.getCPtr(max_var), max_var);
949  return (cPtr == 0) ? null : new Constraint(cPtr, false);
950  }
951 
952  public Constraint makeElementEquality(long[] vals, IntVar index, IntVar target) {
953  long cPtr = mainJNI.Solver_makeElementEquality__SWIG_0(swigCPtr, this, vals, IntVar.getCPtr(index), index, IntVar.getCPtr(target), target);
954  return (cPtr == 0) ? null : new Constraint(cPtr, false);
955  }
956 
957  public Constraint makeElementEquality(int[] vals, IntVar index, IntVar target) {
958  long cPtr = mainJNI.Solver_makeElementEquality__SWIG_1(swigCPtr, this, vals, IntVar.getCPtr(index), index, IntVar.getCPtr(target), target);
959  return (cPtr == 0) ? null : new Constraint(cPtr, false);
960  }
961 
962  public Constraint makeElementEquality(IntVar[] vars, IntVar index, IntVar target) {
963  long cPtr = mainJNI.Solver_makeElementEquality__SWIG_2(swigCPtr, this, vars, IntVar.getCPtr(index), index, IntVar.getCPtr(target), target);
964  return (cPtr == 0) ? null : new Constraint(cPtr, false);
965  }
966 
967  public Constraint makeElementEquality(IntVar[] vars, IntVar index, long target) {
968  long cPtr = mainJNI.Solver_makeElementEquality__SWIG_3(swigCPtr, this, vars, IntVar.getCPtr(index), index, target);
969  return (cPtr == 0) ? null : new Constraint(cPtr, false);
970  }
971 
972  public Constraint makeAbsEquality(IntVar var, IntVar abs_var) {
973  long cPtr = mainJNI.Solver_makeAbsEquality(swigCPtr, this, IntVar.getCPtr(var), var, IntVar.getCPtr(abs_var), abs_var);
974  return (cPtr == 0) ? null : new Constraint(cPtr, false);
975  }
976 
977  public Constraint makeIndexOfConstraint(IntVar[] vars, IntVar index, long target) {
978  long cPtr = mainJNI.Solver_makeIndexOfConstraint(swigCPtr, this, vars, IntVar.getCPtr(index), index, target);
979  return (cPtr == 0) ? null : new Constraint(cPtr, false);
980  }
981 
983  long cPtr = mainJNI.Solver_makeConstraintInitialPropagateCallback(swigCPtr, this, Constraint.getCPtr(ct), ct);
984  return (cPtr == 0) ? null : new Demon(cPtr, false);
985  }
986 
988  long cPtr = mainJNI.Solver_makeDelayedConstraintInitialPropagateCallback(swigCPtr, this, Constraint.getCPtr(ct), ct);
989  return (cPtr == 0) ? null : new Demon(cPtr, false);
990  }
991 
992  public Demon makeClosureDemon(Runnable closure) {
993  long cPtr = mainJNI.Solver_makeClosureDemon(swigCPtr, this, closure);
994  return (cPtr == 0) ? null : new Demon(cPtr, false);
995  }
996 
997  public Constraint makeBetweenCt(IntExpr expr, long l, long u) {
998  long cPtr = mainJNI.Solver_makeBetweenCt(swigCPtr, this, IntExpr.getCPtr(expr), expr, l, u);
999  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1000  }
1001 
1002  public Constraint makeNotBetweenCt(IntExpr expr, long l, long u) {
1003  long cPtr = mainJNI.Solver_makeNotBetweenCt(swigCPtr, this, IntExpr.getCPtr(expr), expr, l, u);
1004  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1005  }
1006 
1007  public Constraint makeIsBetweenCt(IntExpr expr, long l, long u, IntVar b) {
1008  long cPtr = mainJNI.Solver_makeIsBetweenCt(swigCPtr, this, IntExpr.getCPtr(expr), expr, l, u, IntVar.getCPtr(b), b);
1009  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1010  }
1011 
1012  public IntVar makeIsBetweenVar(IntExpr v, long l, long u) {
1013  long cPtr = mainJNI.Solver_makeIsBetweenVar(swigCPtr, this, IntExpr.getCPtr(v), v, l, u);
1014  return (cPtr == 0) ? null : new IntVar(cPtr, false);
1015  }
1016 
1017  public Constraint makeMemberCt(IntExpr expr, long[] values) {
1018  long cPtr = mainJNI.Solver_makeMemberCt__SWIG_0(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1019  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1020  }
1021 
1022  public Constraint makeMemberCt(IntExpr expr, int[] values) {
1023  long cPtr = mainJNI.Solver_makeMemberCt__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1024  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1025  }
1026 
1027  public Constraint makeNotMemberCt(IntExpr expr, long[] values) {
1028  long cPtr = mainJNI.Solver_makeNotMemberCt__SWIG_0(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1029  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1030  }
1031 
1032  public Constraint makeNotMemberCt(IntExpr expr, int[] values) {
1033  long cPtr = mainJNI.Solver_makeNotMemberCt__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1034  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1035  }
1036 
1037  public Constraint makeNotMemberCt(IntExpr expr, long[] starts, long[] ends) {
1038  long cPtr = mainJNI.Solver_makeNotMemberCt__SWIG_2(swigCPtr, this, IntExpr.getCPtr(expr), expr, starts, ends);
1039  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1040  }
1041 
1042  public Constraint makeNotMemberCt(IntExpr expr, int[] starts, int[] ends) {
1043  long cPtr = mainJNI.Solver_makeNotMemberCt__SWIG_3(swigCPtr, this, IntExpr.getCPtr(expr), expr, starts, ends);
1044  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1045  }
1046 
1047  public Constraint makeIsMemberCt(IntExpr expr, long[] values, IntVar boolvar) {
1048  long cPtr = mainJNI.Solver_makeIsMemberCt__SWIG_0(swigCPtr, this, IntExpr.getCPtr(expr), expr, values, IntVar.getCPtr(boolvar), boolvar);
1049  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1050  }
1051 
1052  public Constraint makeIsMemberCt(IntExpr expr, int[] values, IntVar boolvar) {
1053  long cPtr = mainJNI.Solver_makeIsMemberCt__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, values, IntVar.getCPtr(boolvar), boolvar);
1054  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1055  }
1056 
1057  public IntVar makeIsMemberVar(IntExpr expr, long[] values) {
1058  long cPtr = mainJNI.Solver_makeIsMemberVar__SWIG_0(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1059  return (cPtr == 0) ? null : new IntVar(cPtr, false);
1060  }
1061 
1062  public IntVar makeIsMemberVar(IntExpr expr, int[] values) {
1063  long cPtr = mainJNI.Solver_makeIsMemberVar__SWIG_1(swigCPtr, this, IntExpr.getCPtr(expr), expr, values);
1064  return (cPtr == 0) ? null : new IntVar(cPtr, false);
1065  }
1066 
1067  public Constraint makeCount(IntVar[] vars, long value, long max_count) {
1068  long cPtr = mainJNI.Solver_makeCount__SWIG_0(swigCPtr, this, vars, value, max_count);
1069  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1070  }
1071 
1072  public Constraint makeCount(IntVar[] vars, long value, IntVar max_count) {
1073  long cPtr = mainJNI.Solver_makeCount__SWIG_1(swigCPtr, this, vars, value, IntVar.getCPtr(max_count), max_count);
1074  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1075  }
1076 
1077  public Constraint makeDistribute(IntVar[] vars, long[] values, IntVar[] cards) {
1078  long cPtr = mainJNI.Solver_makeDistribute__SWIG_0(swigCPtr, this, vars, values, cards);
1079  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1080  }
1081 
1082  public Constraint makeDistribute(IntVar[] vars, int[] values, IntVar[] cards) {
1083  long cPtr = mainJNI.Solver_makeDistribute__SWIG_1(swigCPtr, this, vars, values, cards);
1084  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1085  }
1086 
1087  public Constraint makeDistribute(IntVar[] vars, IntVar[] cards) {
1088  long cPtr = mainJNI.Solver_makeDistribute__SWIG_2(swigCPtr, this, vars, cards);
1089  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1090  }
1091 
1092  public Constraint makeDistribute(IntVar[] vars, long card_min, long card_max, long card_size) {
1093  long cPtr = mainJNI.Solver_makeDistribute__SWIG_3(swigCPtr, this, vars, card_min, card_max, card_size);
1094  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1095  }
1096 
1097  public Constraint makeDistribute(IntVar[] vars, long[] card_min, long[] card_max) {
1098  long cPtr = mainJNI.Solver_makeDistribute__SWIG_4(swigCPtr, this, vars, card_min, card_max);
1099  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1100  }
1101 
1102  public Constraint makeDistribute(IntVar[] vars, int[] card_min, int[] card_max) {
1103  long cPtr = mainJNI.Solver_makeDistribute__SWIG_5(swigCPtr, this, vars, card_min, card_max);
1104  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1105  }
1106 
1107  public Constraint makeDistribute(IntVar[] vars, long[] values, long[] card_min, long[] card_max) {
1108  long cPtr = mainJNI.Solver_makeDistribute__SWIG_6(swigCPtr, this, vars, values, card_min, card_max);
1109  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1110  }
1111 
1112  public Constraint makeDistribute(IntVar[] vars, int[] values, int[] card_min, int[] card_max) {
1113  long cPtr = mainJNI.Solver_makeDistribute__SWIG_7(swigCPtr, this, vars, values, card_min, card_max);
1114  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1115  }
1116 
1117  public Constraint makeDeviation(IntVar[] vars, IntVar deviation_var, long total_sum) {
1118  long cPtr = mainJNI.Solver_makeDeviation(swigCPtr, this, vars, IntVar.getCPtr(deviation_var), deviation_var, total_sum);
1119  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1120  }
1121 
1123  long cPtr = mainJNI.Solver_makeAllDifferent__SWIG_0(swigCPtr, this, vars);
1124  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1125  }
1126 
1127  public Constraint makeAllDifferent(IntVar[] vars, boolean stronger_propagation) {
1128  long cPtr = mainJNI.Solver_makeAllDifferent__SWIG_1(swigCPtr, this, vars, stronger_propagation);
1129  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1130  }
1131 
1132  public Constraint makeAllDifferentExcept(IntVar[] vars, long escape_value) {
1133  long cPtr = mainJNI.Solver_makeAllDifferentExcept(swigCPtr, this, vars, escape_value);
1134  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1135  }
1136 
1137  public Constraint makeSortingConstraint(IntVar[] vars, IntVar[] sorted) {
1138  long cPtr = mainJNI.Solver_makeSortingConstraint(swigCPtr, this, vars, sorted);
1139  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1140  }
1141 
1142  public Constraint makeLexicalLess(IntVar[] left, IntVar[] right) {
1143  long cPtr = mainJNI.Solver_makeLexicalLess(swigCPtr, this, left, right);
1144  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1145  }
1146 
1148  long cPtr = mainJNI.Solver_makeLexicalLessOrEqual(swigCPtr, this, left, right);
1149  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1150  }
1151 
1153  long cPtr = mainJNI.Solver_makeInversePermutationConstraint(swigCPtr, this, left, right);
1154  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1155  }
1156 
1158  long cPtr = mainJNI.Solver_makeIndexOfFirstMaxValueConstraint(swigCPtr, this, IntVar.getCPtr(index), index, vars);
1159  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1160  }
1161 
1163  long cPtr = mainJNI.Solver_makeIndexOfFirstMinValueConstraint(swigCPtr, this, IntVar.getCPtr(index), index, vars);
1164  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1165  }
1166 
1167  public Constraint makeNullIntersect(IntVar[] first_vars, IntVar[] second_vars) {
1168  long cPtr = mainJNI.Solver_makeNullIntersect(swigCPtr, this, first_vars, second_vars);
1169  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1170  }
1171 
1172  public Constraint makeNullIntersectExcept(IntVar[] first_vars, IntVar[] second_vars, long escape_value) {
1173  long cPtr = mainJNI.Solver_makeNullIntersectExcept(swigCPtr, this, first_vars, second_vars, escape_value);
1174  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1175  }
1176 
1177  public Constraint makeNoCycle(IntVar[] nexts, IntVar[] active, LongPredicate sink_handler) {
1178  long cPtr = mainJNI.Solver_makeNoCycle__SWIG_0(swigCPtr, this, nexts, active, sink_handler);
1179  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1180  }
1181 
1182  public Constraint makeNoCycle(IntVar[] nexts, IntVar[] active) {
1183  long cPtr = mainJNI.Solver_makeNoCycle__SWIG_1(swigCPtr, this, nexts, active);
1184  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1185  }
1186 
1187  public Constraint makeNoCycle(IntVar[] nexts, IntVar[] active, LongPredicate sink_handler, boolean assume_paths) {
1188  long cPtr = mainJNI.Solver_makeNoCycle__SWIG_2(swigCPtr, this, nexts, active, sink_handler, assume_paths);
1189  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1190  }
1191 
1192  public Constraint makeCircuit(IntVar[] nexts) {
1193  long cPtr = mainJNI.Solver_makeCircuit(swigCPtr, this, nexts);
1194  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1195  }
1196 
1198  long cPtr = mainJNI.Solver_makeSubCircuit(swigCPtr, this, nexts);
1199  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1200  }
1201 
1202  public Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] transits) {
1203  long cPtr = mainJNI.Solver_makePathCumul__SWIG_0(swigCPtr, this, nexts, active, cumuls, transits);
1204  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1205  }
1206 
1207  public Constraint makeDelayedPathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] transits) {
1208  long cPtr = mainJNI.Solver_makeDelayedPathCumul(swigCPtr, this, nexts, active, cumuls, transits);
1209  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1210  }
1211 
1212  public Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, LongBinaryOperator transit_evaluator) {
1213  long cPtr = mainJNI.Solver_makePathCumul__SWIG_1(swigCPtr, this, nexts, active, cumuls, transit_evaluator);
1214  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1215  }
1216 
1217  public Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] slacks, LongBinaryOperator transit_evaluator) {
1218  long cPtr = mainJNI.Solver_makePathCumul__SWIG_2(swigCPtr, this, nexts, active, cumuls, slacks, transit_evaluator);
1219  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1220  }
1221 
1222  public Constraint makePathConnected(IntVar[] nexts, long[] sources, long[] sinks, IntVar[] status) {
1223  long cPtr = mainJNI.Solver_makePathConnected(swigCPtr, this, nexts, sources, sinks, status);
1224  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1225  }
1226 
1227  public Constraint makeMapDomain(IntVar var, IntVar[] actives) {
1228  long cPtr = mainJNI.Solver_makeMapDomain(swigCPtr, this, IntVar.getCPtr(var), var, actives);
1229  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1230  }
1231 
1233  long cPtr = mainJNI.Solver_makeAllowedAssignment(swigCPtr, this, vars, IntTupleSet.getCPtr(tuples), tuples);
1234  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1235  }
1236 
1237  public Constraint makeTransitionConstraint(IntVar[] vars, IntTupleSet transition_table, long initial_state, long[] final_states) {
1238  long cPtr = mainJNI.Solver_makeTransitionConstraint__SWIG_0(swigCPtr, this, vars, IntTupleSet.getCPtr(transition_table), transition_table, initial_state, final_states);
1239  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1240  }
1241 
1242  public Constraint makeTransitionConstraint(IntVar[] vars, IntTupleSet transition_table, long initial_state, int[] final_states) {
1243  long cPtr = mainJNI.Solver_makeTransitionConstraint__SWIG_1(swigCPtr, this, vars, IntTupleSet.getCPtr(transition_table), transition_table, initial_state, final_states);
1244  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1245  }
1246 
1247  public Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, IntVar[] x_size, IntVar[] y_size) {
1248  long cPtr = mainJNI.Solver_makeNonOverlappingBoxesConstraint__SWIG_0(swigCPtr, this, x_vars, y_vars, x_size, y_size);
1249  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1250  }
1251 
1252  public Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, long[] x_size, long[] y_size) {
1253  long cPtr = mainJNI.Solver_makeNonOverlappingBoxesConstraint__SWIG_1(swigCPtr, this, x_vars, y_vars, x_size, y_size);
1254  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1255  }
1256 
1257  public Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, int[] x_size, int[] y_size) {
1258  long cPtr = mainJNI.Solver_makeNonOverlappingBoxesConstraint__SWIG_2(swigCPtr, this, x_vars, y_vars, x_size, y_size);
1259  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1260  }
1261 
1262  public Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, IntVar[] x_size, IntVar[] y_size) {
1263  long cPtr = mainJNI.Solver_makeNonOverlappingNonStrictBoxesConstraint__SWIG_0(swigCPtr, this, x_vars, y_vars, x_size, y_size);
1264  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1265  }
1266 
1267  public Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, long[] x_size, long[] y_size) {
1268  long cPtr = mainJNI.Solver_makeNonOverlappingNonStrictBoxesConstraint__SWIG_1(swigCPtr, this, x_vars, y_vars, x_size, y_size);
1269  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1270  }
1271 
1272  public Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, int[] x_size, int[] y_size) {
1273  long cPtr = mainJNI.Solver_makeNonOverlappingNonStrictBoxesConstraint__SWIG_2(swigCPtr, this, x_vars, y_vars, x_size, y_size);
1274  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1275  }
1276 
1277  public Pack makePack(IntVar[] vars, int number_of_bins) {
1278  long cPtr = mainJNI.Solver_makePack(swigCPtr, this, vars, number_of_bins);
1279  return (cPtr == 0) ? null : new Pack(cPtr, false);
1280  }
1281 
1282  public IntervalVar makeFixedDurationIntervalVar(long start_min, long start_max, long duration, boolean optional, String name) {
1283  long cPtr = mainJNI.Solver_makeFixedDurationIntervalVar__SWIG_0(swigCPtr, this, start_min, start_max, duration, optional, name);
1284  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1285  }
1286 
1287  public IntervalVar makeFixedDurationIntervalVar(IntVar start_variable, long duration, String name) {
1288  long cPtr = mainJNI.Solver_makeFixedDurationIntervalVar__SWIG_1(swigCPtr, this, IntVar.getCPtr(start_variable), start_variable, duration, name);
1289  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1290  }
1291 
1292  public IntervalVar makeFixedDurationIntervalVar(IntVar start_variable, long duration, IntVar performed_variable, String name) {
1293  long cPtr = mainJNI.Solver_makeFixedDurationIntervalVar__SWIG_2(swigCPtr, this, IntVar.getCPtr(start_variable), start_variable, duration, IntVar.getCPtr(performed_variable), performed_variable, name);
1294  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1295  }
1296 
1297  public IntervalVar makeFixedInterval(long start, long duration, String name) {
1298  long cPtr = mainJNI.Solver_makeFixedInterval(swigCPtr, this, start, duration, name);
1299  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1300  }
1301 
1302  public IntervalVar makeIntervalVar(long start_min, long start_max, long duration_min, long duration_max, long end_min, long end_max, boolean optional, String name) {
1303  long cPtr = mainJNI.Solver_makeIntervalVar(swigCPtr, this, start_min, start_max, duration_min, duration_max, end_min, end_max, optional, name);
1304  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1305  }
1306 
1308  long cPtr = mainJNI.Solver_makeMirrorInterval(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var);
1309  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1310  }
1311 
1312  public IntervalVar makeFixedDurationStartSyncedOnStartIntervalVar(IntervalVar interval_var, long duration, long offset) {
1313  long cPtr = mainJNI.Solver_makeFixedDurationStartSyncedOnStartIntervalVar(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var, duration, offset);
1314  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1315  }
1316 
1317  public IntervalVar makeFixedDurationStartSyncedOnEndIntervalVar(IntervalVar interval_var, long duration, long offset) {
1318  long cPtr = mainJNI.Solver_makeFixedDurationStartSyncedOnEndIntervalVar(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var, duration, offset);
1319  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1320  }
1321 
1322  public IntervalVar makeFixedDurationEndSyncedOnStartIntervalVar(IntervalVar interval_var, long duration, long offset) {
1323  long cPtr = mainJNI.Solver_makeFixedDurationEndSyncedOnStartIntervalVar(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var, duration, offset);
1324  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1325  }
1326 
1327  public IntervalVar makeFixedDurationEndSyncedOnEndIntervalVar(IntervalVar interval_var, long duration, long offset) {
1328  long cPtr = mainJNI.Solver_makeFixedDurationEndSyncedOnEndIntervalVar(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var, duration, offset);
1329  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1330  }
1331 
1333  long cPtr = mainJNI.Solver_makeIntervalRelaxedMin(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var);
1334  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1335  }
1336 
1338  long cPtr = mainJNI.Solver_makeIntervalRelaxedMax(swigCPtr, this, IntervalVar.getCPtr(interval_var), interval_var);
1339  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
1340  }
1341 
1343  long cPtr = mainJNI.Solver_makeIntervalVarRelation__SWIG_0(swigCPtr, this, IntervalVar.getCPtr(t), t, r, d);
1344  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1345  }
1346 
1348  long cPtr = mainJNI.Solver_makeIntervalVarRelation__SWIG_1(swigCPtr, this, IntervalVar.getCPtr(t1), t1, r, IntervalVar.getCPtr(t2), t2);
1349  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1350  }
1351 
1353  long cPtr = mainJNI.Solver_makeIntervalVarRelationWithDelay(swigCPtr, this, IntervalVar.getCPtr(t1), t1, r, IntervalVar.getCPtr(t2), t2, delay);
1354  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1355  }
1356 
1358  long cPtr = mainJNI.Solver_makeTemporalDisjunction__SWIG_0(swigCPtr, this, IntervalVar.getCPtr(t1), t1, IntervalVar.getCPtr(t2), t2, IntVar.getCPtr(alt), alt);
1359  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1360  }
1361 
1363  long cPtr = mainJNI.Solver_makeTemporalDisjunction__SWIG_1(swigCPtr, this, IntervalVar.getCPtr(t1), t1, IntervalVar.getCPtr(t2), t2);
1364  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1365  }
1366 
1368  long cPtr = mainJNI.Solver_makeDisjunctiveConstraint(swigCPtr, this, intervals, name);
1369  return (cPtr == 0) ? null : new DisjunctiveConstraint(cPtr, false);
1370  }
1371 
1373  long cPtr = mainJNI.Solver_makeStrictDisjunctiveConstraint(swigCPtr, this, intervals, name);
1374  return (cPtr == 0) ? null : new DisjunctiveConstraint(cPtr, false);
1375  }
1376 
1377  public Constraint makeCumulative(IntervalVar[] intervals, long[] demands, long capacity, String name) {
1378  long cPtr = mainJNI.Solver_makeCumulative__SWIG_0(swigCPtr, this, intervals, demands, capacity, name);
1379  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1380  }
1381 
1382  public Constraint makeCumulative(IntervalVar[] intervals, int[] demands, long capacity, String name) {
1383  long cPtr = mainJNI.Solver_makeCumulative__SWIG_1(swigCPtr, this, intervals, demands, capacity, name);
1384  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1385  }
1386 
1387  public Constraint makeCumulative(IntervalVar[] intervals, long[] demands, IntVar capacity, String name) {
1388  long cPtr = mainJNI.Solver_makeCumulative__SWIG_2(swigCPtr, this, intervals, demands, IntVar.getCPtr(capacity), capacity, name);
1389  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1390  }
1391 
1392  public Constraint makeCumulative(IntervalVar[] intervals, int[] demands, IntVar capacity, String name) {
1393  long cPtr = mainJNI.Solver_makeCumulative__SWIG_3(swigCPtr, this, intervals, demands, IntVar.getCPtr(capacity), capacity, name);
1394  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1395  }
1396 
1397  public Constraint makeCumulative(IntervalVar[] intervals, IntVar[] demands, long capacity, String name) {
1398  long cPtr = mainJNI.Solver_makeCumulative__SWIG_4(swigCPtr, this, intervals, demands, capacity, name);
1399  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1400  }
1401 
1402  public Constraint makeCumulative(IntervalVar[] intervals, IntVar[] demands, IntVar capacity, String name) {
1403  long cPtr = mainJNI.Solver_makeCumulative__SWIG_5(swigCPtr, this, intervals, demands, IntVar.getCPtr(capacity), capacity, name);
1404  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1405  }
1406 
1407  public Constraint makeCover(IntervalVar[] vars, IntervalVar target_var) {
1408  long cPtr = mainJNI.Solver_makeCover(swigCPtr, this, vars, IntervalVar.getCPtr(target_var), target_var);
1409  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1410  }
1411 
1413  long cPtr = mainJNI.Solver_makeEquality__SWIG_3(swigCPtr, this, IntervalVar.getCPtr(var1), var1, IntervalVar.getCPtr(var2), var2);
1414  return (cPtr == 0) ? null : new Constraint(cPtr, false);
1415  }
1416 
1418  long cPtr = mainJNI.Solver_makeAssignment__SWIG_0(swigCPtr, this);
1419  return (cPtr == 0) ? null : new Assignment(cPtr, false);
1420  }
1421 
1423  long cPtr = mainJNI.Solver_makeAssignment__SWIG_1(swigCPtr, this, Assignment.getCPtr(a), a);
1424  return (cPtr == 0) ? null : new Assignment(cPtr, false);
1425  }
1426 
1428  long cPtr = mainJNI.Solver_makeFirstSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment);
1429  return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
1430  }
1431 
1433  long cPtr = mainJNI.Solver_makeFirstSolutionCollector__SWIG_1(swigCPtr, this);
1434  return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
1435  }
1436 
1438  long cPtr = mainJNI.Solver_makeLastSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment);
1439  return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
1440  }
1441 
1443  long cPtr = mainJNI.Solver_makeLastSolutionCollector__SWIG_1(swigCPtr, this);
1444  return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
1445  }
1446 
1447  public SolutionCollector makeBestValueSolutionCollector(Assignment assignment, boolean maximize) {
1448  long cPtr = mainJNI.Solver_makeBestValueSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment, maximize);
1449  return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
1450  }
1451 
1453  long cPtr = mainJNI.Solver_makeBestValueSolutionCollector__SWIG_1(swigCPtr, this, maximize);
1454  return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
1455  }
1456 
1457  public SolutionCollector makeNBestValueSolutionCollector(Assignment assignment, int solution_count, boolean maximize) {
1458  long cPtr = mainJNI.Solver_makeNBestValueSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment, solution_count, maximize);
1459  return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
1460  }
1461 
1462  public SolutionCollector makeNBestValueSolutionCollector(int solution_count, boolean maximize) {
1463  long cPtr = mainJNI.Solver_makeNBestValueSolutionCollector__SWIG_1(swigCPtr, this, solution_count, maximize);
1464  return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
1465  }
1466 
1468  long cPtr = mainJNI.Solver_makeAllSolutionCollector__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment);
1469  return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
1470  }
1471 
1473  long cPtr = mainJNI.Solver_makeAllSolutionCollector__SWIG_1(swigCPtr, this);
1474  return (cPtr == 0) ? null : new SolutionCollector(cPtr, false);
1475  }
1476 
1477  public OptimizeVar makeMinimize(IntVar v, long step) {
1478  long cPtr = mainJNI.Solver_makeMinimize(swigCPtr, this, IntVar.getCPtr(v), v, step);
1479  return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
1480  }
1481 
1482  public OptimizeVar makeMaximize(IntVar v, long step) {
1483  long cPtr = mainJNI.Solver_makeMaximize(swigCPtr, this, IntVar.getCPtr(v), v, step);
1484  return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
1485  }
1486 
1487  public OptimizeVar makeOptimize(boolean maximize, IntVar v, long step) {
1488  long cPtr = mainJNI.Solver_makeOptimize(swigCPtr, this, maximize, IntVar.getCPtr(v), v, step);
1489  return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
1490  }
1491 
1492  public OptimizeVar makeWeightedMinimize(IntVar[] sub_objectives, long[] weights, long step) {
1493  long cPtr = mainJNI.Solver_makeWeightedMinimize__SWIG_0(swigCPtr, this, sub_objectives, weights, step);
1494  return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
1495  }
1496 
1497  public OptimizeVar makeWeightedMinimize(IntVar[] sub_objectives, int[] weights, long step) {
1498  long cPtr = mainJNI.Solver_makeWeightedMinimize__SWIG_1(swigCPtr, this, sub_objectives, weights, step);
1499  return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
1500  }
1501 
1502  public OptimizeVar makeWeightedMaximize(IntVar[] sub_objectives, long[] weights, long step) {
1503  long cPtr = mainJNI.Solver_makeWeightedMaximize__SWIG_0(swigCPtr, this, sub_objectives, weights, step);
1504  return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
1505  }
1506 
1507  public OptimizeVar makeWeightedMaximize(IntVar[] sub_objectives, int[] weights, long step) {
1508  long cPtr = mainJNI.Solver_makeWeightedMaximize__SWIG_1(swigCPtr, this, sub_objectives, weights, step);
1509  return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
1510  }
1511 
1512  public OptimizeVar makeWeightedOptimize(boolean maximize, IntVar[] sub_objectives, long[] weights, long step) {
1513  long cPtr = mainJNI.Solver_makeWeightedOptimize__SWIG_0(swigCPtr, this, maximize, sub_objectives, weights, step);
1514  return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
1515  }
1516 
1517  public OptimizeVar makeWeightedOptimize(boolean maximize, IntVar[] sub_objectives, int[] weights, long step) {
1518  long cPtr = mainJNI.Solver_makeWeightedOptimize__SWIG_1(swigCPtr, this, maximize, sub_objectives, weights, step);
1519  return (cPtr == 0) ? null : new OptimizeVar(cPtr, false);
1520  }
1521 
1522  public SearchMonitor makeTabuSearch(boolean maximize, IntVar v, long step, IntVar[] vars, long keep_tenure, long forbid_tenure, double tabu_factor) {
1523  long cPtr = mainJNI.Solver_makeTabuSearch(swigCPtr, this, maximize, IntVar.getCPtr(v), v, step, vars, keep_tenure, forbid_tenure, tabu_factor);
1524  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1525  }
1526 
1527  public SearchMonitor makeGenericTabuSearch(boolean maximize, IntVar v, long step, IntVar[] tabu_vars, long forbid_tenure) {
1528  long cPtr = mainJNI.Solver_makeGenericTabuSearch(swigCPtr, this, maximize, IntVar.getCPtr(v), v, step, tabu_vars, forbid_tenure);
1529  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1530  }
1531 
1532  public SearchMonitor makeSimulatedAnnealing(boolean maximize, IntVar v, long step, long initial_temperature) {
1533  long cPtr = mainJNI.Solver_makeSimulatedAnnealing(swigCPtr, this, maximize, IntVar.getCPtr(v), v, step, initial_temperature);
1534  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1535  }
1536 
1537  public SearchMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongBinaryOperator objective_function, long step, IntVar[] vars, double penalty_factor) {
1538  long cPtr = mainJNI.Solver_makeGuidedLocalSearch__SWIG_0(swigCPtr, this, maximize, IntVar.getCPtr(objective), objective, objective_function, step, vars, penalty_factor);
1539  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1540  }
1541 
1542  public SearchMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongTernaryOperator objective_function, long step, IntVar[] vars, IntVar[] secondary_vars, double penalty_factor) {
1543  long cPtr = mainJNI.Solver_makeGuidedLocalSearch__SWIG_1(swigCPtr, this, maximize, IntVar.getCPtr(objective), objective, objective_function, step, vars, secondary_vars, penalty_factor);
1544  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1545  }
1546 
1547  public SearchMonitor makeLubyRestart(int scale_factor) {
1548  long cPtr = mainJNI.Solver_makeLubyRestart(swigCPtr, this, scale_factor);
1549  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1550  }
1551 
1552  public SearchMonitor makeConstantRestart(int frequency) {
1553  long cPtr = mainJNI.Solver_makeConstantRestart(swigCPtr, this, frequency);
1554  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1555  }
1556 
1557  public RegularLimit makeTimeLimit(long time_in_ms) {
1558  long cPtr = mainJNI.Solver_makeTimeLimit(swigCPtr, this, time_in_ms);
1559  return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
1560  }
1561 
1563  long cPtr = mainJNI.Solver_makeBranchesLimit(swigCPtr, this, branches);
1564  return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
1565  }
1566 
1568  long cPtr = mainJNI.Solver_makeFailuresLimit(swigCPtr, this, failures);
1569  return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
1570  }
1571 
1573  long cPtr = mainJNI.Solver_makeSolutionsLimit(swigCPtr, this, solutions);
1574  return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
1575  }
1576 
1577  public RegularLimit makeLimit(long time, long branches, long failures, long solutions) {
1578  long cPtr = mainJNI.Solver_makeLimit__SWIG_0(swigCPtr, this, time, branches, failures, solutions);
1579  return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
1580  }
1581 
1582  public RegularLimit makeLimit(long time, long branches, long failures, long solutions, boolean smart_time_check) {
1583  long cPtr = mainJNI.Solver_makeLimit__SWIG_1(swigCPtr, this, time, branches, failures, solutions, smart_time_check);
1584  return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
1585  }
1586 
1587  public RegularLimit makeLimit(long time, long branches, long failures, long solutions, boolean smart_time_check, boolean cumulative) {
1588  long cPtr = mainJNI.Solver_makeLimit__SWIG_2(swigCPtr, this, time, branches, failures, solutions, smart_time_check, cumulative);
1589  return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
1590  }
1591 
1593  long cPtr = mainJNI.Solver_makeLimit__SWIG_3(swigCPtr, this, proto.toByteArray());
1594  return (cPtr == 0) ? null : new RegularLimit(cPtr, false);
1595  }
1596 
1598  byte[] buf = mainJNI.Solver_makeDefaultRegularLimitParameters(swigCPtr, this);
1599  if (buf == null || buf.length == 0) {
1600  return null;
1601  }
1602  try {
1604  } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1605  throw new RuntimeException(
1606  "Unable to parse com.google.ortools.constraintsolver.RegularLimitParameters protocol message.");
1607  }
1608 }
1609 
1610  public SearchLimit makeLimit(SearchLimit limit_1, SearchLimit limit_2) {
1611  long cPtr = mainJNI.Solver_makeLimit__SWIG_4(swigCPtr, this, SearchLimit.getCPtr(limit_1), limit_1, SearchLimit.getCPtr(limit_2), limit_2);
1612  return (cPtr == 0) ? null : new SearchLimit(cPtr, false);
1613  }
1614 
1615  public SearchLimit makeCustomLimit(BooleanSupplier limiter) {
1616  long cPtr = mainJNI.Solver_makeCustomLimit(swigCPtr, this, limiter);
1617  return (cPtr == 0) ? null : new SearchLimit(cPtr, false);
1618  }
1619 
1620  public SearchMonitor makeSearchLog(int branch_period) {
1621  long cPtr = mainJNI.Solver_makeSearchLog__SWIG_0(swigCPtr, this, branch_period);
1622  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1623  }
1624 
1625  public SearchMonitor makeSearchLog(int branch_period, IntVar var) {
1626  long cPtr = mainJNI.Solver_makeSearchLog__SWIG_1(swigCPtr, this, branch_period, IntVar.getCPtr(var), var);
1627  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1628  }
1629 
1630  public SearchMonitor makeSearchLog(int branch_period, Supplier<String> display_callback) {
1631  long cPtr = mainJNI.Solver_makeSearchLog__SWIG_2(swigCPtr, this, branch_period, display_callback);
1632  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1633  }
1634 
1635  public SearchMonitor makeSearchLog(int branch_period, IntVar var, Supplier<String> display_callback) {
1636  long cPtr = mainJNI.Solver_makeSearchLog__SWIG_3(swigCPtr, this, branch_period, IntVar.getCPtr(var), var, display_callback);
1637  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1638  }
1639 
1640  public SearchMonitor makeSearchLog(int branch_period, OptimizeVar opt_var) {
1641  long cPtr = mainJNI.Solver_makeSearchLog__SWIG_4(swigCPtr, this, branch_period, OptimizeVar.getCPtr(opt_var), opt_var);
1642  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1643  }
1644 
1645  public SearchMonitor makeSearchLog(int branch_period, OptimizeVar opt_var, Supplier<String> display_callback) {
1646  long cPtr = mainJNI.Solver_makeSearchLog__SWIG_5(swigCPtr, this, branch_period, OptimizeVar.getCPtr(opt_var), opt_var, display_callback);
1647  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1648  }
1649 
1650  public SearchMonitor makeSearchTrace(String prefix) {
1651  long cPtr = mainJNI.Solver_makeSearchTrace(swigCPtr, this, prefix);
1652  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1653  }
1654 
1655  public SearchMonitor makeEnterSearchCallback(Runnable callback) {
1656  long cPtr = mainJNI.Solver_makeEnterSearchCallback(swigCPtr, this, callback);
1657  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1658  }
1659 
1660  public SearchMonitor makeExitSearchCallback(Runnable callback) {
1661  long cPtr = mainJNI.Solver_makeExitSearchCallback(swigCPtr, this, callback);
1662  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1663  }
1664 
1665  public SearchMonitor makeAtSolutionCallback(Runnable callback) {
1666  long cPtr = mainJNI.Solver_makeAtSolutionCallback(swigCPtr, this, callback);
1667  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1668  }
1669 
1671  long cPtr = mainJNI.Solver_makePrintModelVisitor(swigCPtr, this);
1672  return (cPtr == 0) ? null : new ModelVisitor(cPtr, false);
1673  }
1674 
1676  long cPtr = mainJNI.Solver_makeStatisticsModelVisitor(swigCPtr, this);
1677  return (cPtr == 0) ? null : new ModelVisitor(cPtr, false);
1678  }
1679 
1681  long cPtr = mainJNI.Solver_makeSymmetryManager__SWIG_0(swigCPtr, this, visitors);
1682  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1683  }
1684 
1686  long cPtr = mainJNI.Solver_makeSymmetryManager__SWIG_1(swigCPtr, this, SymmetryBreaker.getCPtr(v1), v1);
1687  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1688  }
1689 
1691  long cPtr = mainJNI.Solver_makeSymmetryManager__SWIG_2(swigCPtr, this, SymmetryBreaker.getCPtr(v1), v1, SymmetryBreaker.getCPtr(v2), v2);
1692  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1693  }
1694 
1696  long cPtr = mainJNI.Solver_makeSymmetryManager__SWIG_3(swigCPtr, this, SymmetryBreaker.getCPtr(v1), v1, SymmetryBreaker.getCPtr(v2), v2, SymmetryBreaker.getCPtr(v3), v3);
1697  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1698  }
1699 
1701  long cPtr = mainJNI.Solver_makeSymmetryManager__SWIG_4(swigCPtr, this, SymmetryBreaker.getCPtr(v1), v1, SymmetryBreaker.getCPtr(v2), v2, SymmetryBreaker.getCPtr(v3), v3, SymmetryBreaker.getCPtr(v4), v4);
1702  return (cPtr == 0) ? null : new SearchMonitor(cPtr, false);
1703  }
1704 
1705  public Decision makeAssignVariableValue(IntVar var, long val) {
1706  long cPtr = mainJNI.Solver_makeAssignVariableValue(swigCPtr, this, IntVar.getCPtr(var), var, val);
1707  return (cPtr == 0) ? null : new Decision(cPtr, false);
1708  }
1709 
1711  long cPtr = mainJNI.Solver_makeVariableLessOrEqualValue(swigCPtr, this, IntVar.getCPtr(var), var, value);
1712  return (cPtr == 0) ? null : new Decision(cPtr, false);
1713  }
1714 
1716  long cPtr = mainJNI.Solver_makeVariableGreaterOrEqualValue(swigCPtr, this, IntVar.getCPtr(var), var, value);
1717  return (cPtr == 0) ? null : new Decision(cPtr, false);
1718  }
1719 
1720  public Decision makeSplitVariableDomain(IntVar var, long val, boolean start_with_lower_half) {
1721  long cPtr = mainJNI.Solver_makeSplitVariableDomain(swigCPtr, this, IntVar.getCPtr(var), var, val, start_with_lower_half);
1722  return (cPtr == 0) ? null : new Decision(cPtr, false);
1723  }
1724 
1726  long cPtr = mainJNI.Solver_makeAssignVariableValueOrFail(swigCPtr, this, IntVar.getCPtr(var), var, value);
1727  return (cPtr == 0) ? null : new Decision(cPtr, false);
1728  }
1729 
1731  long cPtr = mainJNI.Solver_MakeAssignVariableValueOrDoNothing(swigCPtr, this, IntVar.getCPtr(var), var, value);
1732  return (cPtr == 0) ? null : new Decision(cPtr, false);
1733  }
1734 
1735  public Decision makeAssignVariablesValues(IntVar[] vars, long[] values) {
1736  long cPtr = mainJNI.Solver_makeAssignVariablesValues(swigCPtr, this, vars, values);
1737  return (cPtr == 0) ? null : new Decision(cPtr, false);
1738  }
1739 
1741  long cPtr = mainJNI.Solver_makeFailDecision(swigCPtr, this);
1742  return (cPtr == 0) ? null : new Decision(cPtr, false);
1743  }
1744 
1745  public Decision makeDecision(Consumer<Solver> apply, Consumer<Solver> refute) {
1746  long cPtr = mainJNI.Solver_makeDecision(swigCPtr, this, apply, refute);
1747  return (cPtr == 0) ? null : new Decision(cPtr, false);
1748  }
1749 
1751  long cPtr = mainJNI.Solver_compose__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2);
1752  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1753  }
1754 
1756  long cPtr = mainJNI.Solver_compose__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2, DecisionBuilder.getCPtr(db3), db3);
1757  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1758  }
1759 
1761  long cPtr = mainJNI.Solver_compose__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2, DecisionBuilder.getCPtr(db3), db3, DecisionBuilder.getCPtr(db4), db4);
1762  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1763  }
1764 
1766  long cPtr = mainJNI.Solver_compose__SWIG_3(swigCPtr, this, dbs);
1767  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1768  }
1769 
1771  long cPtr = mainJNI.Solver_tryDecisions__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2);
1772  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1773  }
1774 
1776  long cPtr = mainJNI.Solver_tryDecisions__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2, DecisionBuilder.getCPtr(db3), db3);
1777  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1778  }
1779 
1781  long cPtr = mainJNI.Solver_tryDecisions__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db1), db1, DecisionBuilder.getCPtr(db2), db2, DecisionBuilder.getCPtr(db3), db3, DecisionBuilder.getCPtr(db4), db4);
1782  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1783  }
1784 
1786  long cPtr = mainJNI.Solver_tryDecisions__SWIG_3(swigCPtr, this, dbs);
1787  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1788  }
1789 
1790  public DecisionBuilder makePhase(IntVar[] vars, int var_str, int val_str) {
1791  long cPtr = mainJNI.Solver_makePhase__SWIG_0(swigCPtr, this, vars, var_str, val_str);
1792  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1793  }
1794 
1795  public DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, int val_str) {
1796  long cPtr = mainJNI.Solver_makePhase__SWIG_1(swigCPtr, this, vars, var_evaluator, val_str);
1797  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1798  }
1799 
1800  public DecisionBuilder makePhase(IntVar[] vars, int var_str, LongBinaryOperator value_evaluator) {
1801  long cPtr = mainJNI.Solver_makePhase__SWIG_2(swigCPtr, this, vars, var_str, value_evaluator);
1802  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1803  }
1804 
1805  public DecisionBuilder makePhase(IntVar[] vars, int var_str, LongTernaryPredicate var_val1_val2_comparator) {
1806  long cPtr = mainJNI.Solver_makePhase__SWIG_3(swigCPtr, this, vars, var_str, var_val1_val2_comparator);
1807  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1808  }
1809 
1810  public DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, LongBinaryOperator value_evaluator) {
1811  long cPtr = mainJNI.Solver_makePhase__SWIG_4(swigCPtr, this, vars, var_evaluator, value_evaluator);
1812  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1813  }
1814 
1815  public DecisionBuilder makePhase(IntVar[] vars, int var_str, LongBinaryOperator value_evaluator, LongUnaryOperator tie_breaker) {
1816  long cPtr = mainJNI.Solver_makePhase__SWIG_5(swigCPtr, this, vars, var_str, value_evaluator, tie_breaker);
1817  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1818  }
1819 
1820  public DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, LongBinaryOperator value_evaluator, LongUnaryOperator tie_breaker) {
1821  long cPtr = mainJNI.Solver_makePhase__SWIG_6(swigCPtr, this, vars, var_evaluator, value_evaluator, tie_breaker);
1822  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1823  }
1824 
1826  long cPtr = mainJNI.Solver_makeDefaultPhase__SWIG_0(swigCPtr, this, vars);
1827  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1828  }
1829 
1831  long cPtr = mainJNI.Solver_makeDefaultPhase__SWIG_1(swigCPtr, this, vars, DefaultPhaseParameters.getCPtr(parameters), parameters);
1832  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1833  }
1834 
1835  public DecisionBuilder makePhase(IntVar v0, int var_str, int val_str) {
1836  long cPtr = mainJNI.Solver_makePhase__SWIG_7(swigCPtr, this, IntVar.getCPtr(v0), v0, var_str, val_str);
1837  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1838  }
1839 
1840  public DecisionBuilder makePhase(IntVar v0, IntVar v1, int var_str, int val_str) {
1841  long cPtr = mainJNI.Solver_makePhase__SWIG_8(swigCPtr, this, IntVar.getCPtr(v0), v0, IntVar.getCPtr(v1), v1, var_str, val_str);
1842  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1843  }
1844 
1845  public DecisionBuilder makePhase(IntVar v0, IntVar v1, IntVar v2, int var_str, int val_str) {
1846  long cPtr = mainJNI.Solver_makePhase__SWIG_9(swigCPtr, this, IntVar.getCPtr(v0), v0, IntVar.getCPtr(v1), v1, IntVar.getCPtr(v2), v2, var_str, val_str);
1847  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1848  }
1849 
1850  public DecisionBuilder makePhase(IntVar v0, IntVar v1, IntVar v2, IntVar v3, int var_str, int val_str) {
1851  long cPtr = mainJNI.Solver_makePhase__SWIG_10(swigCPtr, this, IntVar.getCPtr(v0), v0, IntVar.getCPtr(v1), v1, IntVar.getCPtr(v2), v2, IntVar.getCPtr(v3), v3, var_str, val_str);
1852  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1853  }
1854 
1855  public Decision makeScheduleOrPostpone(IntervalVar var, long est, long[] marker) {
1856  long cPtr = mainJNI.Solver_makeScheduleOrPostpone(swigCPtr, this, IntervalVar.getCPtr(var), var, est, marker);
1857  return (cPtr == 0) ? null : new Decision(cPtr, false);
1858  }
1859 
1860  public Decision makeScheduleOrExpedite(IntervalVar var, long est, long[] marker) {
1861  long cPtr = mainJNI.Solver_makeScheduleOrExpedite(swigCPtr, this, IntervalVar.getCPtr(var), var, est, marker);
1862  return (cPtr == 0) ? null : new Decision(cPtr, false);
1863  }
1864 
1865  public Decision makeRankFirstInterval(SequenceVar sequence, int index) {
1866  long cPtr = mainJNI.Solver_makeRankFirstInterval(swigCPtr, this, SequenceVar.getCPtr(sequence), sequence, index);
1867  return (cPtr == 0) ? null : new Decision(cPtr, false);
1868  }
1869 
1870  public Decision makeRankLastInterval(SequenceVar sequence, int index) {
1871  long cPtr = mainJNI.Solver_makeRankLastInterval(swigCPtr, this, SequenceVar.getCPtr(sequence), sequence, index);
1872  return (cPtr == 0) ? null : new Decision(cPtr, false);
1873  }
1874 
1875  public DecisionBuilder makePhase(IntVar[] vars, LongBinaryOperator eval, int str) {
1876  long cPtr = mainJNI.Solver_makePhase__SWIG_11(swigCPtr, this, vars, eval, str);
1877  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1878  }
1879 
1880  public DecisionBuilder makePhase(IntVar[] vars, LongBinaryOperator eval, LongUnaryOperator tie_breaker, int str) {
1881  long cPtr = mainJNI.Solver_makePhase__SWIG_12(swigCPtr, this, vars, eval, tie_breaker, str);
1882  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1883  }
1884 
1885  public DecisionBuilder makePhase(IntervalVar[] intervals, int str) {
1886  long cPtr = mainJNI.Solver_makePhase__SWIG_13(swigCPtr, this, intervals, str);
1887  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1888  }
1889 
1890  public DecisionBuilder makePhase(SequenceVar[] sequences, int str) {
1891  long cPtr = mainJNI.Solver_makePhase__SWIG_14(swigCPtr, this, sequences, str);
1892  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1893  }
1894 
1896  long cPtr = mainJNI.Solver_makeDecisionBuilderFromAssignment(swigCPtr, this, Assignment.getCPtr(assignment), assignment, DecisionBuilder.getCPtr(db), db, vars);
1897  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1898  }
1899 
1901  long cPtr = mainJNI.Solver_makeConstraintAdder(swigCPtr, this, Constraint.getCPtr(ct), ct);
1902  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1903  }
1904 
1906  long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db), db);
1907  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1908  }
1909 
1911  long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(monitor1), monitor1);
1912  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1913  }
1914 
1916  long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2);
1917  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1918  }
1919 
1921  long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_3(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2, SearchMonitor.getCPtr(monitor3), monitor3);
1922  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1923  }
1924 
1926  long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_4(swigCPtr, this, DecisionBuilder.getCPtr(db), db, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2, SearchMonitor.getCPtr(monitor3), monitor3, SearchMonitor.getCPtr(monitor4), monitor4);
1927  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1928  }
1929 
1931  long cPtr = mainJNI.Solver_makeSolveOnce__SWIG_5(swigCPtr, this, DecisionBuilder.getCPtr(db), db, monitors);
1932  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1933  }
1934 
1935  public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step) {
1936  long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_0(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step);
1937  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1938  }
1939 
1940  public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1) {
1941  long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_1(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step, SearchMonitor.getCPtr(monitor1), monitor1);
1942  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1943  }
1944 
1945  public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2) {
1946  long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_2(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2);
1947  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1948  }
1949 
1950  public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3) {
1951  long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_3(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2, SearchMonitor.getCPtr(monitor3), monitor3);
1952  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1953  }
1954 
1955  public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3, SearchMonitor monitor4) {
1956  long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_4(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step, SearchMonitor.getCPtr(monitor1), monitor1, SearchMonitor.getCPtr(monitor2), monitor2, SearchMonitor.getCPtr(monitor3), monitor3, SearchMonitor.getCPtr(monitor4), monitor4);
1957  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1958  }
1959 
1960  public DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor[] monitors) {
1961  long cPtr = mainJNI.Solver_makeNestedOptimize__SWIG_5(swigCPtr, this, DecisionBuilder.getCPtr(db), db, Assignment.getCPtr(solution), solution, maximize, step, monitors);
1962  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1963  }
1964 
1966  long cPtr = mainJNI.Solver_makeRestoreAssignment(swigCPtr, this, Assignment.getCPtr(assignment), assignment);
1967  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1968  }
1969 
1971  long cPtr = mainJNI.Solver_makeStoreAssignment(swigCPtr, this, Assignment.getCPtr(assignment), assignment);
1972  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
1973  }
1974 
1975  public LocalSearchOperator makeOperator(IntVar[] vars, int op) {
1976  long cPtr = mainJNI.Solver_makeOperator__SWIG_0(swigCPtr, this, vars, op);
1977  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
1978  }
1979 
1980  public LocalSearchOperator makeOperator(IntVar[] vars, IntVar[] secondary_vars, int op) {
1981  long cPtr = mainJNI.Solver_makeOperator__SWIG_1(swigCPtr, this, vars, secondary_vars, op);
1982  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
1983  }
1984 
1985  public LocalSearchOperator makeOperator(IntVar[] vars, LongTernaryOperator evaluator, int op) {
1986  long cPtr = mainJNI.Solver_makeOperator__SWIG_2(swigCPtr, this, vars, evaluator, op);
1987  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
1988  }
1989 
1990  public LocalSearchOperator makeOperator(IntVar[] vars, IntVar[] secondary_vars, LongTernaryOperator evaluator, int op) {
1991  long cPtr = mainJNI.Solver_makeOperator__SWIG_3(swigCPtr, this, vars, secondary_vars, evaluator, op);
1992  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
1993  }
1994 
1995  public LocalSearchOperator makeRandomLnsOperator(IntVar[] vars, int number_of_variables) {
1996  long cPtr = mainJNI.Solver_makeRandomLnsOperator__SWIG_0(swigCPtr, this, vars, number_of_variables);
1997  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
1998  }
1999 
2000  public LocalSearchOperator makeRandomLnsOperator(IntVar[] vars, int number_of_variables, int seed) {
2001  long cPtr = mainJNI.Solver_makeRandomLnsOperator__SWIG_1(swigCPtr, this, vars, number_of_variables, seed);
2002  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
2003  }
2004 
2006  long cPtr = mainJNI.Solver_makeMoveTowardTargetOperator__SWIG_0(swigCPtr, this, Assignment.getCPtr(target), target);
2007  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
2008  }
2009 
2010  public LocalSearchOperator makeMoveTowardTargetOperator(IntVar[] variables, long[] target_values) {
2011  long cPtr = mainJNI.Solver_makeMoveTowardTargetOperator__SWIG_1(swigCPtr, this, variables, target_values);
2012  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
2013  }
2014 
2016  long cPtr = mainJNI.Solver_concatenateOperators__SWIG_0(swigCPtr, this, ops);
2017  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
2018  }
2019 
2021  long cPtr = mainJNI.Solver_concatenateOperators__SWIG_1(swigCPtr, this, ops, restart);
2022  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
2023  }
2024 
2026  long cPtr = mainJNI.Solver_concatenateOperators__SWIG_2(swigCPtr, this, ops, evaluator);
2027  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
2028  }
2029 
2031  long cPtr = mainJNI.Solver_randomConcatenateOperators__SWIG_0(swigCPtr, this, ops);
2032  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
2033  }
2034 
2036  long cPtr = mainJNI.Solver_randomConcatenateOperators__SWIG_1(swigCPtr, this, ops, seed);
2037  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
2038  }
2039 
2041  long cPtr = mainJNI.Solver_makeNeighborhoodLimit(swigCPtr, this, LocalSearchOperator.getCPtr(op), op, limit);
2042  return (cPtr == 0) ? null : new LocalSearchOperator(cPtr, false);
2043  }
2044 
2046  long cPtr = mainJNI.Solver_makeLocalSearchPhase__SWIG_0(swigCPtr, this, Assignment.getCPtr(assignment), assignment, LocalSearchPhaseParameters.getCPtr(parameters), parameters);
2047  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
2048  }
2049 
2051  long cPtr = mainJNI.Solver_makeLocalSearchPhase__SWIG_1(swigCPtr, this, vars, DecisionBuilder.getCPtr(first_solution), first_solution, LocalSearchPhaseParameters.getCPtr(parameters), parameters);
2052  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
2053  }
2054 
2055  public DecisionBuilder makeLocalSearchPhase(IntVar[] vars, DecisionBuilder first_solution, DecisionBuilder first_solution_sub_decision_builder, LocalSearchPhaseParameters parameters) {
2056  long cPtr = mainJNI.Solver_makeLocalSearchPhase__SWIG_2(swigCPtr, this, vars, DecisionBuilder.getCPtr(first_solution), first_solution, DecisionBuilder.getCPtr(first_solution_sub_decision_builder), first_solution_sub_decision_builder, LocalSearchPhaseParameters.getCPtr(parameters), parameters);
2057  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
2058  }
2059 
2061  long cPtr = mainJNI.Solver_makeLocalSearchPhase__SWIG_3(swigCPtr, this, vars, DecisionBuilder.getCPtr(first_solution), first_solution, LocalSearchPhaseParameters.getCPtr(parameters), parameters);
2062  return (cPtr == 0) ? null : new DecisionBuilder(cPtr, false);
2063  }
2064 
2066  long cPtr = mainJNI.Solver_makeDefaultSolutionPool(swigCPtr, this);
2067  return (cPtr == 0) ? null : new SolutionPool(cPtr, false);
2068  }
2069 
2071  long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_0(swigCPtr, this, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder);
2072  return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
2073  }
2074 
2076  long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_1(swigCPtr, this, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder, RegularLimit.getCPtr(limit), limit);
2077  return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
2078  }
2079 
2081  long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_2(swigCPtr, this, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder, RegularLimit.getCPtr(limit), limit, filters);
2082  return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
2083  }
2084 
2086  long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_3(swigCPtr, this, SolutionPool.getCPtr(pool), pool, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder);
2087  return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
2088  }
2089 
2091  long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_4(swigCPtr, this, SolutionPool.getCPtr(pool), pool, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder, RegularLimit.getCPtr(limit), limit);
2092  return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
2093  }
2094 
2096  long cPtr = mainJNI.Solver_makeLocalSearchPhaseParameters__SWIG_5(swigCPtr, this, SolutionPool.getCPtr(pool), pool, LocalSearchOperator.getCPtr(ls_operator), ls_operator, DecisionBuilder.getCPtr(sub_decision_builder), sub_decision_builder, RegularLimit.getCPtr(limit), limit, filters);
2097  return (cPtr == 0) ? null : new LocalSearchPhaseParameters(cPtr, false);
2098  }
2099 
2101  long cPtr = mainJNI.Solver_makeVariableDomainFilter(swigCPtr, this);
2102  return (cPtr == 0) ? null : new LocalSearchFilter(cPtr, false);
2103  }
2104 
2105  public IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, LongBinaryOperator values, IntVar objective, int filter_enum) {
2106  long cPtr = mainJNI.Solver_makeSumObjectiveFilter__SWIG_0(swigCPtr, this, vars, values, IntVar.getCPtr(objective), objective, filter_enum);
2107  return (cPtr == 0) ? null : new IntVarLocalSearchFilter(cPtr, false);
2108  }
2109 
2110  public IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, LongBinaryOperator values, LongConsumer delta_objective_callback, IntVar objective, int filter_enum) {
2111  long cPtr = mainJNI.Solver_makeSumObjectiveFilter__SWIG_1(swigCPtr, this, vars, values, delta_objective_callback, IntVar.getCPtr(objective), objective, filter_enum);
2112  return (cPtr == 0) ? null : new IntVarLocalSearchFilter(cPtr, false);
2113  }
2114 
2115  public IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, IntVar[] secondary_vars, LongTernaryOperator values, IntVar objective, int filter_enum) {
2116  long cPtr = mainJNI.Solver_makeSumObjectiveFilter__SWIG_2(swigCPtr, this, vars, secondary_vars, values, IntVar.getCPtr(objective), objective, filter_enum);
2117  return (cPtr == 0) ? null : new IntVarLocalSearchFilter(cPtr, false);
2118  }
2119 
2120  public IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, IntVar[] secondary_vars, LongTernaryOperator values, LongConsumer delta_objective_callback, IntVar objective, int filter_enum) {
2121  long cPtr = mainJNI.Solver_makeSumObjectiveFilter__SWIG_3(swigCPtr, this, vars, secondary_vars, values, delta_objective_callback, IntVar.getCPtr(objective), objective, filter_enum);
2122  return (cPtr == 0) ? null : new IntVarLocalSearchFilter(cPtr, false);
2123  }
2124 
2125  public void topPeriodicCheck() {
2126  mainJNI.Solver_topPeriodicCheck(swigCPtr, this);
2127  }
2128 
2129  public int topProgressPercent() {
2130  return mainJNI.Solver_topProgressPercent(swigCPtr, this);
2131  }
2132 
2133  public void pushState() {
2134  mainJNI.Solver_pushState(swigCPtr, this);
2135  }
2136 
2137  public void popState() {
2138  mainJNI.Solver_popState(swigCPtr, this);
2139  }
2140 
2141  public int searchDepth() {
2142  return mainJNI.Solver_searchDepth(swigCPtr, this);
2143  }
2144 
2145  public int searchLeftDepth() {
2146  return mainJNI.Solver_searchLeftDepth(swigCPtr, this);
2147  }
2148 
2149  public int solveDepth() {
2150  return mainJNI.Solver_solveDepth(swigCPtr, this);
2151  }
2152 
2153  public long rand64(long size) {
2154  return mainJNI.Solver_rand64(swigCPtr, this, size);
2155  }
2156 
2157  public int rand32(int size) {
2158  return mainJNI.Solver_rand32(swigCPtr, this, size);
2159  }
2160 
2161  public void reSeed(int seed) {
2162  mainJNI.Solver_reSeed(swigCPtr, this, seed);
2163  }
2164 
2165  public void exportProfilingOverview(String filename) {
2166  mainJNI.Solver_exportProfilingOverview(swigCPtr, this, filename);
2167  }
2168 
2169  public String localSearchProfile() {
2170  return mainJNI.Solver_localSearchProfile(swigCPtr, this);
2171  }
2172 
2173  public boolean currentlyInSolve() {
2174  return mainJNI.Solver_currentlyInSolve(swigCPtr, this);
2175  }
2176 
2177  public int constraints() {
2178  return mainJNI.Solver_constraints(swigCPtr, this);
2179  }
2180 
2181  public void accept(ModelVisitor visitor) {
2182  mainJNI.Solver_accept(swigCPtr, this, ModelVisitor.getCPtr(visitor), visitor);
2183  }
2184 
2186  long cPtr = mainJNI.Solver_balancing_decision(swigCPtr, this);
2187  return (cPtr == 0) ? null : new Decision(cPtr, false);
2188  }
2189 
2190  public void clear_fail_intercept() {
2191  mainJNI.Solver_clear_fail_intercept(swigCPtr, this);
2192  }
2193 
2194  public void SetUseFastLocalSearch(boolean use_fast_local_search) {
2195  mainJNI.Solver_SetUseFastLocalSearch(swigCPtr, this, use_fast_local_search);
2196  }
2197 
2198  public boolean UseFastLocalSearch() {
2199  return mainJNI.Solver_UseFastLocalSearch(swigCPtr, this);
2200  }
2201 
2202  public boolean hasName(PropagationBaseObject object) {
2203  return mainJNI.Solver_hasName(swigCPtr, this, PropagationBaseObject.getCPtr(object), object);
2204  }
2205 
2206  public Demon registerDemon(Demon demon) {
2207  long cPtr = mainJNI.Solver_registerDemon(swigCPtr, this, Demon.getCPtr(demon), demon);
2208  return (cPtr == 0) ? null : new Demon(cPtr, false);
2209  }
2210 
2212  long cPtr = mainJNI.Solver_registerIntExpr(swigCPtr, this, IntExpr.getCPtr(expr), expr);
2213  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
2214  }
2215 
2217  long cPtr = mainJNI.Solver_registerIntVar(swigCPtr, this, IntVar.getCPtr(var), var);
2218  return (cPtr == 0) ? null : new IntVar(cPtr, false);
2219  }
2220 
2222  long cPtr = mainJNI.Solver_registerIntervalVar(swigCPtr, this, IntervalVar.getCPtr(var), var);
2223  return (cPtr == 0) ? null : new IntervalVar(cPtr, false);
2224  }
2225 
2226  public ModelCache cache() {
2227  long cPtr = mainJNI.Solver_cache(swigCPtr, this);
2228  return (cPtr == 0) ? null : new ModelCache(cPtr, false);
2229  }
2230 
2231  public boolean instrumentsDemons() {
2232  return mainJNI.Solver_instrumentsDemons(swigCPtr, this);
2233  }
2234 
2235  public boolean isProfilingEnabled() {
2236  return mainJNI.Solver_isProfilingEnabled(swigCPtr, this);
2237  }
2238 
2240  return mainJNI.Solver_isLocalSearchProfilingEnabled(swigCPtr, this);
2241  }
2242 
2243  public boolean instrumentsVariables() {
2244  return mainJNI.Solver_instrumentsVariables(swigCPtr, this);
2245  }
2246 
2247  public boolean nameAllVariables() {
2248  return mainJNI.Solver_nameAllVariables(swigCPtr, this);
2249  }
2250 
2251  public String model_name() {
2252  return mainJNI.Solver_model_name(swigCPtr, this);
2253  }
2254 
2256  long cPtr = mainJNI.Solver_getPropagationMonitor(swigCPtr, this);
2257  return (cPtr == 0) ? null : new PropagationMonitor(cPtr, false);
2258  }
2259 
2261  mainJNI.Solver_addPropagationMonitor(swigCPtr, this, PropagationMonitor.getCPtr(monitor), monitor);
2262  }
2263 
2265  long cPtr = mainJNI.Solver_getLocalSearchMonitor(swigCPtr, this);
2266  return (cPtr == 0) ? null : new LocalSearchMonitor(cPtr, false);
2267  }
2268 
2270  mainJNI.Solver_addLocalSearchMonitor(swigCPtr, this, LocalSearchMonitor.getCPtr(monitor), monitor);
2271  }
2272 
2274  long cPtr = mainJNI.Solver_GetOrCreateLocalSearchState(swigCPtr, this);
2275  return (cPtr == 0) ? null : new Assignment(cPtr, false);
2276  }
2277 
2278  public void ClearLocalSearchState() {
2279  mainJNI.Solver_ClearLocalSearchState(swigCPtr, this);
2280  }
2281 
2282  public void setTmp_vector_(long[] value) {
2283  mainJNI.Solver_tmp_vector__set(swigCPtr, this, value);
2284  }
2285 
2286  public long[] getTmp_vector_() {
2287  return mainJNI.Solver_tmp_vector__get(swigCPtr, this);
2288 }
2289 
2291  long cPtr = mainJNI.Solver_castExpression(swigCPtr, this, IntVar.getCPtr(var), var);
2292  return (cPtr == 0) ? null : new IntExpr(cPtr, false);
2293  }
2294 
2295  public void finishCurrentSearch() {
2296  mainJNI.Solver_finishCurrentSearch(swigCPtr, this);
2297  }
2298 
2299  public void restartCurrentSearch() {
2300  mainJNI.Solver_restartCurrentSearch(swigCPtr, this);
2301  }
2302 
2303  public void shouldFail() {
2304  mainJNI.Solver_shouldFail(swigCPtr, this);
2305  }
2306 
2307  public void checkFail() {
2308  mainJNI.Solver_checkFail(swigCPtr, this);
2309  }
2310 
2311  public final static int kNumPriorities = mainJNI.Solver_kNumPriorities_get();
2312  // IntVarStrategy
2313  public final static int INT_VAR_DEFAULT = mainJNI.Solver_INT_VAR_DEFAULT_get();
2314  public final static int INT_VAR_SIMPLE = mainJNI.Solver_INT_VAR_SIMPLE_get();
2315  public final static int CHOOSE_FIRST_UNBOUND = mainJNI.Solver_CHOOSE_FIRST_UNBOUND_get();
2316  public final static int CHOOSE_RANDOM = mainJNI.Solver_CHOOSE_RANDOM_get();
2317  public final static int CHOOSE_MIN_SIZE_LOWEST_MIN = mainJNI.Solver_CHOOSE_MIN_SIZE_LOWEST_MIN_get();
2318  public final static int CHOOSE_MIN_SIZE_HIGHEST_MIN = mainJNI.Solver_CHOOSE_MIN_SIZE_HIGHEST_MIN_get();
2319  public final static int CHOOSE_MIN_SIZE_LOWEST_MAX = mainJNI.Solver_CHOOSE_MIN_SIZE_LOWEST_MAX_get();
2320  public final static int CHOOSE_MIN_SIZE_HIGHEST_MAX = mainJNI.Solver_CHOOSE_MIN_SIZE_HIGHEST_MAX_get();
2321  public final static int CHOOSE_LOWEST_MIN = mainJNI.Solver_CHOOSE_LOWEST_MIN_get();
2322  public final static int CHOOSE_HIGHEST_MAX = mainJNI.Solver_CHOOSE_HIGHEST_MAX_get();
2323  public final static int CHOOSE_MIN_SIZE = mainJNI.Solver_CHOOSE_MIN_SIZE_get();
2324  public final static int CHOOSE_MAX_SIZE = mainJNI.Solver_CHOOSE_MAX_SIZE_get();
2325  public final static int CHOOSE_MAX_REGRET_ON_MIN = mainJNI.Solver_CHOOSE_MAX_REGRET_ON_MIN_get();
2326  public final static int CHOOSE_PATH = mainJNI.Solver_CHOOSE_PATH_get();
2327 
2328  // IntValueStrategy
2329  public final static int INT_VALUE_DEFAULT = mainJNI.Solver_INT_VALUE_DEFAULT_get();
2330  public final static int INT_VALUE_SIMPLE = mainJNI.Solver_INT_VALUE_SIMPLE_get();
2331  public final static int ASSIGN_MIN_VALUE = mainJNI.Solver_ASSIGN_MIN_VALUE_get();
2332  public final static int ASSIGN_MAX_VALUE = mainJNI.Solver_ASSIGN_MAX_VALUE_get();
2333  public final static int ASSIGN_RANDOM_VALUE = mainJNI.Solver_ASSIGN_RANDOM_VALUE_get();
2334  public final static int ASSIGN_CENTER_VALUE = mainJNI.Solver_ASSIGN_CENTER_VALUE_get();
2335  public final static int SPLIT_LOWER_HALF = mainJNI.Solver_SPLIT_LOWER_HALF_get();
2336  public final static int SPLIT_UPPER_HALF = mainJNI.Solver_SPLIT_UPPER_HALF_get();
2337 
2338  // EvaluatorStrategy
2339  public final static int CHOOSE_STATIC_GLOBAL_BEST = mainJNI.Solver_CHOOSE_STATIC_GLOBAL_BEST_get();
2340  public final static int CHOOSE_DYNAMIC_GLOBAL_BEST = mainJNI.Solver_CHOOSE_DYNAMIC_GLOBAL_BEST_get();
2341 
2342  // SequenceStrategy
2343  public final static int SEQUENCE_DEFAULT = mainJNI.Solver_SEQUENCE_DEFAULT_get();
2344  public final static int SEQUENCE_SIMPLE = mainJNI.Solver_SEQUENCE_SIMPLE_get();
2345  public final static int CHOOSE_MIN_SLACK_RANK_FORWARD = mainJNI.Solver_CHOOSE_MIN_SLACK_RANK_FORWARD_get();
2346  public final static int CHOOSE_RANDOM_RANK_FORWARD = mainJNI.Solver_CHOOSE_RANDOM_RANK_FORWARD_get();
2347 
2348  // IntervalStrategy
2349  public final static int INTERVAL_DEFAULT = mainJNI.Solver_INTERVAL_DEFAULT_get();
2350  public final static int INTERVAL_SIMPLE = mainJNI.Solver_INTERVAL_SIMPLE_get();
2351  public final static int INTERVAL_SET_TIMES_FORWARD = mainJNI.Solver_INTERVAL_SET_TIMES_FORWARD_get();
2352  public final static int INTERVAL_SET_TIMES_BACKWARD = mainJNI.Solver_INTERVAL_SET_TIMES_BACKWARD_get();
2353 
2354  // LocalSearchOperators
2355  public final static int TWOOPT = mainJNI.Solver_TWOOPT_get();
2356  public final static int OROPT = mainJNI.Solver_OROPT_get();
2357  public final static int RELOCATE = mainJNI.Solver_RELOCATE_get();
2358  public final static int EXCHANGE = mainJNI.Solver_EXCHANGE_get();
2359  public final static int CROSS = mainJNI.Solver_CROSS_get();
2360  public final static int MAKEACTIVE = mainJNI.Solver_MAKEACTIVE_get();
2361  public final static int MAKEINACTIVE = mainJNI.Solver_MAKEINACTIVE_get();
2362  public final static int MAKECHAININACTIVE = mainJNI.Solver_MAKECHAININACTIVE_get();
2363  public final static int SWAPACTIVE = mainJNI.Solver_SWAPACTIVE_get();
2364  public final static int EXTENDEDSWAPACTIVE = mainJNI.Solver_EXTENDEDSWAPACTIVE_get();
2365  public final static int PATHLNS = mainJNI.Solver_PATHLNS_get();
2366  public final static int FULLPATHLNS = mainJNI.Solver_FULLPATHLNS_get();
2367  public final static int UNACTIVELNS = mainJNI.Solver_UNACTIVELNS_get();
2368  public final static int INCREMENT = mainJNI.Solver_INCREMENT_get();
2369  public final static int DECREMENT = mainJNI.Solver_DECREMENT_get();
2370  public final static int SIMPLELNS = mainJNI.Solver_SIMPLELNS_get();
2371 
2372  // EvaluatorLocalSearchOperators
2373  public final static int LK = mainJNI.Solver_LK_get();
2374  public final static int TSPOPT = mainJNI.Solver_TSPOPT_get();
2375  public final static int TSPLNS = mainJNI.Solver_TSPLNS_get();
2376 
2377  // LocalSearchFilterBound
2378  public final static int GE = mainJNI.Solver_GE_get();
2379  public final static int LE = mainJNI.Solver_LE_get();
2380  public final static int EQ = mainJNI.Solver_EQ_get();
2381 
2382  // DemonPriority
2383  public final static int DELAYED_PRIORITY = mainJNI.Solver_DELAYED_PRIORITY_get();
2384  public final static int VAR_PRIORITY = mainJNI.Solver_VAR_PRIORITY_get();
2385  public final static int NORMAL_PRIORITY = mainJNI.Solver_NORMAL_PRIORITY_get();
2386 
2387  // BinaryIntervalRelation
2388  public final static int ENDS_AFTER_END = mainJNI.Solver_ENDS_AFTER_END_get();
2389  public final static int ENDS_AFTER_START = mainJNI.Solver_ENDS_AFTER_START_get();
2390  public final static int ENDS_AT_END = mainJNI.Solver_ENDS_AT_END_get();
2391  public final static int ENDS_AT_START = mainJNI.Solver_ENDS_AT_START_get();
2392  public final static int STARTS_AFTER_END = mainJNI.Solver_STARTS_AFTER_END_get();
2393  public final static int STARTS_AFTER_START = mainJNI.Solver_STARTS_AFTER_START_get();
2394  public final static int STARTS_AT_END = mainJNI.Solver_STARTS_AT_END_get();
2395  public final static int STARTS_AT_START = mainJNI.Solver_STARTS_AT_START_get();
2396  public final static int STAYS_IN_SYNC = mainJNI.Solver_STAYS_IN_SYNC_get();
2397 
2398  // UnaryIntervalRelation
2399  public final static int ENDS_AFTER = mainJNI.Solver_ENDS_AFTER_get();
2400  public final static int ENDS_AT = mainJNI.Solver_ENDS_AT_get();
2401  public final static int ENDS_BEFORE = mainJNI.Solver_ENDS_BEFORE_get();
2402  public final static int STARTS_AFTER = mainJNI.Solver_STARTS_AFTER_get();
2403  public final static int STARTS_AT = mainJNI.Solver_STARTS_AT_get();
2404  public final static int STARTS_BEFORE = mainJNI.Solver_STARTS_BEFORE_get();
2405  public final static int CROSS_DATE = mainJNI.Solver_CROSS_DATE_get();
2406  public final static int AVOID_DATE = mainJNI.Solver_AVOID_DATE_get();
2407 
2408  // DecisionModification
2409  public final static int NO_CHANGE = mainJNI.Solver_NO_CHANGE_get();
2410  public final static int KEEP_LEFT = mainJNI.Solver_KEEP_LEFT_get();
2411  public final static int KEEP_RIGHT = mainJNI.Solver_KEEP_RIGHT_get();
2412  public final static int KILL_BOTH = mainJNI.Solver_KILL_BOTH_get();
2413  public final static int SWITCH_BRANCHES = mainJNI.Solver_SWITCH_BRANCHES_get();
2414 
2415  // MarkerType
2416  public final static int SENTINEL = mainJNI.Solver_SENTINEL_get();
2417  public final static int SIMPLE_MARKER = mainJNI.Solver_SIMPLE_MARKER_get();
2418  public final static int CHOICE_POINT = mainJNI.Solver_CHOICE_POINT_get();
2419  public final static int REVERSIBLE_ACTION = mainJNI.Solver_REVERSIBLE_ACTION_get();
2420 
2421  // SolverState
2422  public final static int OUTSIDE_SEARCH = mainJNI.Solver_OUTSIDE_SEARCH_get();
2423  public final static int IN_ROOT_NODE = mainJNI.Solver_IN_ROOT_NODE_get();
2424  public final static int IN_SEARCH = mainJNI.Solver_IN_SEARCH_get();
2425  public final static int AT_SOLUTION = mainJNI.Solver_AT_SOLUTION_get();
2426  public final static int NO_MORE_SOLUTIONS = mainJNI.Solver_NO_MORE_SOLUTIONS_get();
2427  public final static int PROBLEM_INFEASIBLE = mainJNI.Solver_PROBLEM_INFEASIBLE_get();
2428 
2429  // OptimizationDirection
2430  public final static int NOT_SET = mainJNI.Solver_NOT_SET_get();
2431  public final static int MAXIMIZATION = mainJNI.Solver_MAXIMIZATION_get();
2432  public final static int MINIMIZATION = mainJNI.Solver_MINIMIZATION_get();
2433 
2434 }
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder, RegularLimit limit, LocalSearchFilter[] filters)
Definition: Solver.java:2080
Constraint makeIsMemberCt(IntExpr expr, int[] values, IntVar boolvar)
Definition: Solver.java:1052
SearchMonitor makeSimulatedAnnealing(boolean maximize, IntVar v, long step, long initial_temperature)
Definition: Solver.java:1532
IntExpr makeDiv(IntExpr numerator, IntExpr denominator)
Definition: Solver.java:532
LocalSearchOperator makeOperator(IntVar[] vars, IntVar[] secondary_vars, int op)
Definition: Solver.java:1980
IntVar makeIntVar(long[] values, String name)
Definition: Solver.java:432
IntervalVar makeFixedInterval(long start, long duration, String name)
Definition: Solver.java:1297
IntExpr makeElement(LongUnaryOperator values, IntVar index)
Definition: Solver.java:562
DecisionBuilder compose(DecisionBuilder db1, DecisionBuilder db2, DecisionBuilder db3, DecisionBuilder db4)
Definition: Solver.java:1760
IntExpr makeMin(IntExpr left, IntExpr right)
Definition: Solver.java:597
Constraint makeDistribute(IntVar[] vars, long[] values, IntVar[] cards)
Definition: Solver.java:1077
SearchMonitor makeEnterSearchCallback(Runnable callback)
Definition: Solver.java:1655
OptimizeVar makeWeightedMaximize(IntVar[] sub_objectives, long[] weights, long step)
Definition: Solver.java:1502
Constraint makeDistribute(IntVar[] vars, long[] values, long[] card_min, long[] card_max)
Definition: Solver.java:1107
IntExpr makeElement(int[] values, IntVar index)
Definition: Solver.java:557
com.google.ortools.constraintsolver.ConstraintSolverParameters parameters()
Definition: Solver.java:233
Constraint makeNoCycle(IntVar[] nexts, IntVar[] active, LongPredicate sink_handler, boolean assume_paths)
Definition: Solver.java:1187
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(SolutionPool pool, LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder, RegularLimit limit)
Definition: Solver.java:2090
PropagationMonitor getPropagationMonitor()
Definition: Solver.java:2255
OptimizeVar makeMaximize(IntVar v, long step)
Definition: Solver.java:1482
boolean solveAndCommit(DecisionBuilder db)
Definition: Solver.java:331
SearchMonitor makeSymmetryManager(SymmetryBreaker v1, SymmetryBreaker v2, SymmetryBreaker v3, SymmetryBreaker v4)
Definition: Solver.java:1700
Constraint makeIsGreaterOrEqualCt(IntExpr left, IntExpr right, IntVar b)
Definition: Solver.java:792
RegularLimit makeLimit(com.google.ortools.constraintsolver.RegularLimitParameters proto)
Definition: Solver.java:1592
Constraint makeEquality(IntervalVar var1, IntervalVar var2)
Definition: Solver.java:1412
SolutionCollector makeNBestValueSolutionCollector(int solution_count, boolean maximize)
Definition: Solver.java:1462
IntervalVar makeIntervalRelaxedMax(IntervalVar interval_var)
Definition: Solver.java:1337
Decision makeDecision(Consumer< Solver > apply, Consumer< Solver > refute)
Definition: Solver.java:1745
boolean solve(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3)
Definition: Solver.java:283
Constraint makeGreaterOrEqual(IntExpr expr, long value)
Definition: Solver.java:802
Constraint makeLess(IntExpr expr, long value)
Definition: Solver.java:872
Constraint makeSumEquality(IntVar[] vars, IntVar var)
Definition: Solver.java:897
DecisionBuilder makePhase(IntVar v0, IntVar v1, IntVar v2, IntVar v3, int var_str, int val_str)
Definition: Solver.java:1850
IntVar makeIsBetweenVar(IntExpr v, long l, long u)
Definition: Solver.java:1012
OptimizeVar makeMinimize(IntVar v, long step)
Definition: Solver.java:1477
DecisionBuilder makeSolveOnce(DecisionBuilder db, SearchMonitor monitor1)
Definition: Solver.java:1910
LocalSearchFilter makeVariableDomainFilter()
Definition: Solver.java:2100
Constraint makeIntervalVarRelationWithDelay(IntervalVar t1, int r, IntervalVar t2, long delay)
Definition: Solver.java:1352
Constraint makeScalProdLessOrEqual(IntVar[] vars, int[] coefficients, long cst)
Definition: Solver.java:937
void newSearch(DecisionBuilder db)
Definition: Solver.java:295
IntVar makeIsDifferentCstVar(IntExpr v1, IntExpr v2)
Definition: Solver.java:717
Constraint makeNoCycle(IntVar[] nexts, IntVar[] active)
Definition: Solver.java:1182
RegularLimit makeBranchesLimit(long branches)
Definition: Solver.java:1562
LocalSearchOperator makeOperator(IntVar[] vars, LongTernaryOperator evaluator, int op)
Definition: Solver.java:1985
Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] slacks, LongBinaryOperator transit_evaluator)
Definition: Solver.java:1217
IntVar makeIsGreaterCstVar(IntExpr var, long value)
Definition: Solver.java:817
DecisionBuilder tryDecisions(DecisionBuilder db1, DecisionBuilder db2, DecisionBuilder db3)
Definition: Solver.java:1775
boolean solve(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3, SearchMonitor m4)
Definition: Solver.java:287
SearchLimit makeCustomLimit(BooleanSupplier limiter)
Definition: Solver.java:1615
Constraint makeScalProdEquality(IntVar[] vars, int[] coefficients, long cst)
Definition: Solver.java:907
LocalSearchOperator makeRandomLnsOperator(IntVar[] vars, int number_of_variables, int seed)
Definition: Solver.java:2000
DecisionBuilder compose(DecisionBuilder[] dbs)
Definition: Solver.java:1765
Constraint makeScalProdEquality(IntVar[] vars, long[] coefficients, IntVar target)
Definition: Solver.java:912
DecisionBuilder makeDefaultPhase(IntVar[] vars)
Definition: Solver.java:1825
Decision makeScheduleOrPostpone(IntervalVar var, long est, long[] marker)
Definition: Solver.java:1855
IntExpr makeMax(IntExpr expr, int value)
Definition: Solver.java:627
Constraint makeScalProdLessOrEqual(IntVar[] vars, long[] coefficients, long cst)
Definition: Solver.java:932
Constraint makeIsMemberCt(IntExpr expr, long[] values, IntVar boolvar)
Definition: Solver.java:1047
Constraint makeAllowedAssignment(IntVar[] vars, IntTupleSet tuples)
Definition: Solver.java:1232
OptimizeVar makeOptimize(boolean maximize, IntVar v, long step)
Definition: Solver.java:1487
DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, int val_str)
Definition: Solver.java:1795
IntExpr makeMax(IntExpr expr, long value)
Definition: Solver.java:622
Constraint makeNullIntersectExcept(IntVar[] first_vars, IntVar[] second_vars, long escape_value)
Definition: Solver.java:1172
DecisionBuilder makeLocalSearchPhase(IntVar[] vars, DecisionBuilder first_solution, LocalSearchPhaseParameters parameters)
Definition: Solver.java:2050
DecisionBuilder tryDecisions(DecisionBuilder[] dbs)
Definition: Solver.java:1785
DecisionBuilder makePhase(SequenceVar[] sequences, int str)
Definition: Solver.java:1890
DecisionBuilder makeSolveOnce(DecisionBuilder db)
Definition: Solver.java:1905
SearchMonitor makeConstantRestart(int frequency)
Definition: Solver.java:1552
Constraint makeNonEquality(IntExpr expr, int value)
Definition: Solver.java:737
IntervalVar makeFixedDurationEndSyncedOnEndIntervalVar(IntervalVar interval_var, long duration, long offset)
Definition: Solver.java:1327
static com.google.ortools.constraintsolver.ConstraintSolverParameters parseFrom(java.nio.ByteBuffer data)
boolean solve(DecisionBuilder db, SearchMonitor[] monitors)
Definition: Solver.java:267
SolutionCollector makeNBestValueSolutionCollector(Assignment assignment, int solution_count, boolean maximize)
Definition: Solver.java:1457
IntervalVar [] makeFixedDurationIntervalVarArray(int count, long start_min, long start_max, long duration, boolean optional)
Definition: Solver.java:128
IntVar makeIsGreaterVar(IntExpr left, IntExpr right)
Definition: Solver.java:822
Constraint makeIsGreaterCstCt(IntExpr v, long c, IntVar b)
Definition: Solver.java:812
SearchMonitor makeAtSolutionCallback(Runnable callback)
Definition: Solver.java:1665
SearchMonitor makeExitSearchCallback(Runnable callback)
Definition: Solver.java:1660
Constraint makeCumulative(IntervalVar[] intervals, int[] demands, long capacity, String name)
Definition: Solver.java:1382
Constraint makeIndexOfFirstMinValueConstraint(IntVar index, IntVar[] vars)
Definition: Solver.java:1162
Constraint makeElementEquality(long[] vals, IntVar index, IntVar target)
Definition: Solver.java:952
Constraint makeElementEquality(IntVar[] vars, IntVar index, long target)
Definition: Solver.java:967
Constraint makeIsEqualCstCt(IntExpr var, long value, IntVar boolvar)
Definition: Solver.java:672
static long getCPtr(Demon obj)
Definition: Demon.java:19
Constraint makeGreaterOrEqual(IntExpr expr, int value)
Definition: Solver.java:807
Decision makeVariableLessOrEqualValue(IntVar var, long value)
Definition: Solver.java:1710
Constraint makeAbsEquality(IntVar var, IntVar abs_var)
Definition: Solver.java:972
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder, RegularLimit limit)
Definition: Solver.java:2075
SolutionCollector makeLastSolutionCollector()
Definition: Solver.java:1442
Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, IntVar[] x_size, IntVar[] y_size)
Definition: Solver.java:1262
IntExpr makeScalProd(IntVar[] vars, long[] coefs)
Definition: Solver.java:492
IntVar makeIsGreaterOrEqualVar(IntExpr left, IntExpr right)
Definition: Solver.java:787
Constraint makeFalseConstraint(String explanation)
Definition: Solver.java:667
RegularLimit makeFailuresLimit(long failures)
Definition: Solver.java:1567
Constraint makeLessOrEqual(IntExpr expr, long value)
Definition: Solver.java:767
IntVar [] makeIntVarArray(int count, long min, long max)
Definition: Solver.java:94
Constraint makeIsLessOrEqualCt(IntExpr left, IntExpr right, IntVar b)
Definition: Solver.java:757
boolean solve(DecisionBuilder db)
Definition: Solver.java:271
Constraint makeAllDifferent(IntVar[] vars)
Definition: Solver.java:1122
SearchMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongTernaryOperator objective_function, long step, IntVar[] vars, IntVar[] secondary_vars, double penalty_factor)
Definition: Solver.java:1542
IntVar makeIsLessOrEqualVar(IntExpr left, IntExpr right)
Definition: Solver.java:752
DecisionBuilder makePhase(IntVar[] vars, int var_str, LongTernaryPredicate var_val1_val2_comparator)
Definition: Solver.java:1805
Constraint makeSumLessOrEqual(IntVar[] vars, long cst)
Definition: Solver.java:882
SolutionCollector makeBestValueSolutionCollector(boolean maximize)
Definition: Solver.java:1452
DecisionBuilder makeLocalSearchPhase(IntVar[] vars, DecisionBuilder first_solution, DecisionBuilder first_solution_sub_decision_builder, LocalSearchPhaseParameters parameters)
Definition: Solver.java:2055
Constraint makeInversePermutationConstraint(IntVar[] left, IntVar[] right)
Definition: Solver.java:1152
IntExpr makeModulo(IntExpr x, long mod)
Definition: Solver.java:642
static long getCPtr(Solver obj)
Definition: Solver.java:63
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(SolutionPool pool, LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder, RegularLimit limit, LocalSearchFilter[] filters)
Definition: Solver.java:2095
IntExpr makeProd(IntExpr left, IntExpr right)
Definition: Solver.java:517
Constraint makeNonEquality(IntExpr expr, long value)
Definition: Solver.java:732
IntExpr makeSum(IntExpr expr, long value)
Definition: Solver.java:482
Constraint makeScalProdEquality(IntVar[] vars, int[] coefficients, IntVar target)
Definition: Solver.java:917
Constraint makeIntervalVarRelation(IntervalVar t1, int r, IntervalVar t2)
Definition: Solver.java:1347
Constraint makeLexicalLessOrEqual(IntVar[] left, IntVar[] right)
Definition: Solver.java:1147
IntVar makeIsEqualCstVar(IntExpr var, long value)
Definition: Solver.java:677
Constraint makeSumGreaterOrEqual(IntVar[] vars, long cst)
Definition: Solver.java:887
Demon makeDelayedConstraintInitialPropagateCallback(Constraint ct)
Definition: Solver.java:987
IntVar makeIsGreaterOrEqualCstVar(IntExpr var, long value)
Definition: Solver.java:782
Constraint makeDistribute(IntVar[] vars, int[] values, int[] card_min, int[] card_max)
Definition: Solver.java:1112
Constraint makeIntervalVarRelation(IntervalVar t, int r, long d)
Definition: Solver.java:1342
Decision MakeAssignVariableValueOrDoNothing(IntVar var, long value)
Definition: Solver.java:1730
Constraint makeGreater(IntExpr left, IntExpr right)
Definition: Solver.java:832
IntVar makeIntVar(long min, long max, String name)
Definition: Solver.java:427
Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, long[] x_size, long[] y_size)
Definition: Solver.java:1252
IntVar makeIsMemberVar(IntExpr expr, int[] values)
Definition: Solver.java:1062
Decision makeVariableGreaterOrEqualValue(IntVar var, long value)
Definition: Solver.java:1715
Constraint makeIfThenElseCt(IntVar condition, IntExpr then_expr, IntExpr else_expr, IntVar target_var)
Definition: Solver.java:587
IntExpr makeConvexPiecewiseExpr(IntExpr expr, long early_cost, long early_date, long late_date, long late_cost)
Definition: Solver.java:632
IntExpr makeSemiContinuousExpr(IntExpr expr, long fixed_charge, long step)
Definition: Solver.java:637
Constraint makeIsBetweenCt(IntExpr expr, long l, long u, IntVar b)
Definition: Solver.java:1007
IntVar makeIsLessVar(IntExpr left, IntExpr right)
Definition: Solver.java:857
Constraint makeNotMemberCt(IntExpr expr, long[] starts, long[] ends)
Definition: Solver.java:1037
DecisionBuilder makePhase(IntVar[] vars, int var_str, int val_str)
Definition: Solver.java:1790
IntervalVar [] makeFixedDurationIntervalVarArray(int count, long start_min, long start_max, long duration, boolean optional, String name)
Definition: Solver.java:144
Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, int[] x_size, int[] y_size)
Definition: Solver.java:1257
Constraint makeIsDifferentCstCt(IntExpr v1, IntExpr v2, IntVar b)
Definition: Solver.java:722
Constraint makeAllDifferent(IntVar[] vars, boolean stronger_propagation)
Definition: Solver.java:1127
IntExpr makeSum(IntExpr left, IntExpr right)
Definition: Solver.java:477
RegularLimit makeLimit(long time, long branches, long failures, long solutions, boolean smart_time_check, boolean cumulative)
Definition: Solver.java:1587
Constraint makeGreater(IntExpr expr, long value)
Definition: Solver.java:837
boolean solve(DecisionBuilder db, SearchMonitor m1)
Definition: Solver.java:275
LocalSearchOperator makeMoveTowardTargetOperator(Assignment target)
Definition: Solver.java:2005
Constraint makeMapDomain(IntVar var, IntVar[] actives)
Definition: Solver.java:1227
SearchMonitor makeLubyRestart(int scale_factor)
Definition: Solver.java:1547
IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, LongBinaryOperator values, LongConsumer delta_objective_callback, IntVar objective, int filter_enum)
Definition: Solver.java:2110
Constraint makeBetweenCt(IntExpr expr, long l, long u)
Definition: Solver.java:997
Constraint makeIsDifferentCstCt(IntExpr var, long value, IntVar boolvar)
Definition: Solver.java:707
Constraint makeTransitionConstraint(IntVar[] vars, IntTupleSet transition_table, long initial_state, int[] final_states)
Definition: Solver.java:1242
Constraint makeDistribute(IntVar[] vars, int[] values, IntVar[] cards)
Definition: Solver.java:1082
Constraint makeIsLessCt(IntExpr left, IntExpr right, IntVar b)
Definition: Solver.java:862
DecisionBuilder makeRestoreAssignment(Assignment assignment)
Definition: Solver.java:1965
boolean solveAndCommit(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2)
Definition: Solver.java:339
SearchMonitor makeSearchLog(int branch_period, Supplier< String > display_callback)
Definition: Solver.java:1630
Constraint makeElementEquality(int[] vals, IntVar index, IntVar target)
Definition: Solver.java:957
SearchMonitor makeTabuSearch(boolean maximize, IntVar v, long step, IntVar[] vars, long keep_tenure, long forbid_tenure, double tabu_factor)
Definition: Solver.java:1522
Constraint makeMaxEquality(IntVar[] vars, IntVar max_var)
Definition: Solver.java:947
SolutionCollector makeAllSolutionCollector()
Definition: Solver.java:1472
void SetUseFastLocalSearch(boolean use_fast_local_search)
Definition: Solver.java:2194
DecisionBuilder makeDefaultPhase(IntVar[] vars, DefaultPhaseParameters parameters)
Definition: Solver.java:1830
Constraint makeNullIntersect(IntVar[] first_vars, IntVar[] second_vars)
Definition: Solver.java:1167
DecisionBuilder makeConstraintAdder(Constraint ct)
Definition: Solver.java:1900
Constraint makeNotMemberCt(IntExpr expr, int[] starts, int[] ends)
Definition: Solver.java:1042
SolutionCollector makeFirstSolutionCollector(Assignment assignment)
Definition: Solver.java:1427
SolutionCollector makeBestValueSolutionCollector(Assignment assignment, boolean maximize)
Definition: Solver.java:1447
Constraint makeGreater(IntExpr expr, int value)
Definition: Solver.java:842
Constraint makeMemberCt(IntExpr expr, long[] values)
Definition: Solver.java:1017
DecisionBuilder makeLocalSearchPhase(Assignment assignment, LocalSearchPhaseParameters parameters)
Definition: Solver.java:2045
RegularLimit makeLimit(long time, long branches, long failures, long solutions, boolean smart_time_check)
Definition: Solver.java:1582
IntExpr makeMin(IntExpr expr, long value)
Definition: Solver.java:602
IntVar makeIntVar(int[] values, String name)
Definition: Solver.java:437
IntegerCastInfo(IntVar v, IntExpr e, Constraint c)
Definition: Solver.java:192
IntExpr makeDifference(long value, IntExpr expr)
Definition: Solver.java:507
void newSearch(DecisionBuilder db, SearchMonitor[] monitors)
Definition: Solver.java:291
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(java.nio.ByteBuffer data)
Decision makeAssignVariablesValues(IntVar[] vars, long[] values)
Definition: Solver.java:1735
Constraint makeDistribute(IntVar[] vars, long[] card_min, long[] card_max)
Definition: Solver.java:1097
Constraint makeNoCycle(IntVar[] nexts, IntVar[] active, LongPredicate sink_handler)
Definition: Solver.java:1177
IntervalVar makeMirrorInterval(IntervalVar interval_var)
Definition: Solver.java:1307
OptimizeVar makeWeightedOptimize(boolean maximize, IntVar[] sub_objectives, int[] weights, long step)
Definition: Solver.java:1517
void addPropagationMonitor(PropagationMonitor monitor)
Definition: Solver.java:2260
DisjunctiveConstraint makeStrictDisjunctiveConstraint(IntervalVar[] intervals, String name)
Definition: Solver.java:1372
IntExpr makeMonotonicElement(LongUnaryOperator values, boolean increasing, IntVar index)
Definition: Solver.java:567
Decision makeRankFirstInterval(SequenceVar sequence, int index)
Definition: Solver.java:1865
SearchMonitor makeSearchTrace(String prefix)
Definition: Solver.java:1650
boolean solveAndCommit(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3)
Definition: Solver.java:343
void accept(ModelVisitor visitor)
Definition: Solver.java:2181
Constraint makeCumulative(IntervalVar[] intervals, int[] demands, IntVar capacity, String name)
Definition: Solver.java:1392
IntVar makeIsDifferentCstVar(IntExpr var, long value)
Definition: Solver.java:712
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder)
Definition: Solver.java:2070
IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, IntVar[] secondary_vars, LongTernaryOperator values, LongConsumer delta_objective_callback, IntVar objective, int filter_enum)
Definition: Solver.java:2120
Constraint makeSortingConstraint(IntVar[] vars, IntVar[] sorted)
Definition: Solver.java:1137
DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, LongBinaryOperator value_evaluator)
Definition: Solver.java:1810
Constraint makeLessOrEqual(IntExpr expr, int value)
Definition: Solver.java:772
LocalSearchOperator randomConcatenateOperators(LocalSearchOperator[] ops, int seed)
Definition: Solver.java:2035
IntervalVar makeFixedDurationStartSyncedOnStartIntervalVar(IntervalVar interval_var, long duration, long offset)
Definition: Solver.java:1312
SearchMonitor makeSymmetryManager(SymmetryBreaker[] visitors)
Definition: Solver.java:1680
IntExpr makeDiv(IntExpr expr, long value)
Definition: Solver.java:527
Constraint makeElementEquality(IntVar[] vars, IntVar index, IntVar target)
Definition: Solver.java:962
Constraint makeSumEquality(IntVar[] vars, long cst)
Definition: Solver.java:892
Constraint makeNotMemberCt(IntExpr expr, long[] values)
Definition: Solver.java:1027
LocalSearchOperator makeMoveTowardTargetOperator(IntVar[] variables, long[] target_values)
Definition: Solver.java:2010
Constraint makeIsLessOrEqualCstCt(IntExpr var, long value, IntVar boolvar)
Definition: Solver.java:742
DecisionBuilder makeSolveOnce(DecisionBuilder db, SearchMonitor[] monitors)
Definition: Solver.java:1930
OptimizeVar makeWeightedMinimize(IntVar[] sub_objectives, long[] weights, long step)
Definition: Solver.java:1492
LocalSearchOperator makeNeighborhoodLimit(LocalSearchOperator op, long limit)
Definition: Solver.java:2040
Constraint makeIsGreaterOrEqualCstCt(IntExpr var, long value, IntVar boolvar)
Definition: Solver.java:777
Constraint makeDelayedPathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] transits)
Definition: Solver.java:1207
Demon makeConstraintInitialPropagateCallback(Constraint ct)
Definition: Solver.java:982
LocalSearchOperator concatenateOperators(LocalSearchOperator[] ops, boolean restart)
Definition: Solver.java:2020
LocalSearchOperator concatenateOperators(LocalSearchOperator[] ops, IntIntToLongFunction evaluator)
Definition: Solver.java:2025
void newSearch(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3, SearchMonitor m4)
Definition: Solver.java:311
IntExpr makeMin(IntExpr expr, int value)
Definition: Solver.java:607
Constraint makeScalProdGreaterOrEqual(IntVar[] vars, long[] coeffs, long cst)
Definition: Solver.java:922
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1)
Definition: Solver.java:1940
IntVar makeIntConst(long val, String name)
Definition: Solver.java:467
DecisionBuilder makePhase(IntVar v0, IntVar v1, int var_str, int val_str)
Definition: Solver.java:1840
Constraint makeIndexOfConstraint(IntVar[] vars, IntVar index, long target)
Definition: Solver.java:977
Decision makeSplitVariableDomain(IntVar var, long val, boolean start_with_lower_half)
Definition: Solver.java:1720
IntVar [] makeBoolVarArray(int count, String name)
Definition: Solver.java:119
IntVar [] makeIntVarArray(int count, long min, long max, String name)
Definition: Solver.java:102
boolean solve(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2)
Definition: Solver.java:279
RegularLimit makeSolutionsLimit(long solutions)
Definition: Solver.java:1572
SearchMonitor makeGenericTabuSearch(boolean maximize, IntVar v, long step, IntVar[] tabu_vars, long forbid_tenure)
Definition: Solver.java:1527
This exceptions signal that a failure has been raised in the C++ world.
Definition: Solver.java:84
IntExpr makeProd(IntExpr expr, long value)
Definition: Solver.java:522
DecisionBuilder makeLocalSearchPhase(SequenceVar[] vars, DecisionBuilder first_solution, LocalSearchPhaseParameters parameters)
Definition: Solver.java:2060
DecisionBuilder compose(DecisionBuilder db1, DecisionBuilder db2)
Definition: Solver.java:1750
Solver(long cPtr, boolean cMemoryOwn)
Definition: Solver.java:58
Constraint makePathConnected(IntVar[] nexts, long[] sources, long[] sinks, IntVar[] status)
Definition: Solver.java:1222
boolean checkConstraint(Constraint ct)
Definition: Solver.java:351
IntVar makeIsLessCstVar(IntExpr var, long value)
Definition: Solver.java:852
DecisionBuilder makePhase(IntVar[] vars, LongBinaryOperator eval, int str)
Definition: Solver.java:1875
IntervalVar makeFixedDurationStartSyncedOnEndIntervalVar(IntervalVar interval_var, long duration, long offset)
Definition: Solver.java:1317
IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, LongBinaryOperator values, IntVar objective, int filter_enum)
Definition: Solver.java:2105
DecisionBuilder makePhase(IntVar[] vars, int var_str, LongBinaryOperator value_evaluator)
Definition: Solver.java:1800
IntVar makeIsMemberVar(IntExpr expr, long[] values)
Definition: Solver.java:1057
IntExpr makeConditionalExpression(IntVar condition, IntExpr expr, long unperformed_value)
Definition: Solver.java:652
IntExpr makeModulo(IntExpr x, IntExpr mod)
Definition: Solver.java:647
Constraint makeMinEquality(IntVar[] vars, IntVar min_var)
Definition: Solver.java:942
SearchMonitor makeSearchLog(int branch_period, OptimizeVar opt_var, Supplier< String > display_callback)
Definition: Solver.java:1645
Constraint makeScalProdEquality(IntVar[] vars, long[] coefficients, long cst)
Definition: Solver.java:902
Constraint makeIsLessCstCt(IntExpr v, long c, IntVar b)
Definition: Solver.java:847
Decision makeAssignVariableValue(IntVar var, long val)
Definition: Solver.java:1705
Constraint makeTransitionConstraint(IntVar[] vars, IntTupleSet transition_table, long initial_state, long[] final_states)
Definition: Solver.java:1237
OptimizeVar makeWeightedMinimize(IntVar[] sub_objectives, int[] weights, long step)
Definition: Solver.java:1497
SearchMonitor makeSymmetryManager(SymmetryBreaker v1)
Definition: Solver.java:1685
static com.google.ortools.constraintsolver.ConstraintSolverParameters defaultSolverParameters()
Definition: Solver.java:246
Constraint makeDistribute(IntVar[] vars, long card_min, long card_max, long card_size)
Definition: Solver.java:1092
SearchLimit makeLimit(SearchLimit limit_1, SearchLimit limit_2)
Definition: Solver.java:1610
SearchMonitor makeSearchLog(int branch_period, IntVar var)
Definition: Solver.java:1625
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step)
Definition: Solver.java:1935
SolutionCollector makeLastSolutionCollector(Assignment assignment)
Definition: Solver.java:1437
Constraint makeCumulative(IntervalVar[] intervals, long[] demands, long capacity, String name)
Definition: Solver.java:1377
Constraint makeCircuit(IntVar[] nexts)
Definition: Solver.java:1192
boolean solveAndCommit(DecisionBuilder db, SearchMonitor[] monitors)
Definition: Solver.java:327
IntVar makeIntVar(long min, long max)
Definition: Solver.java:442
SearchMonitor makeSymmetryManager(SymmetryBreaker v1, SymmetryBreaker v2, SymmetryBreaker v3)
Definition: Solver.java:1695
Constraint makeDeviation(IntVar[] vars, IntVar deviation_var, long total_sum)
Definition: Solver.java:1117
Constraint makeEquality(IntExpr expr, int value)
Definition: Solver.java:702
Constraint makeIndexOfFirstMaxValueConstraint(IntVar index, IntVar[] vars)
Definition: Solver.java:1157
Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, LongBinaryOperator transit_evaluator)
Definition: Solver.java:1212
Constraint makeGreaterOrEqual(IntExpr left, IntExpr right)
Definition: Solver.java:797
Constraint makeAllDifferentExcept(IntVar[] vars, long escape_value)
Definition: Solver.java:1132
RegularLimit makeTimeLimit(long time_in_ms)
Definition: Solver.java:1557
IntExpr makeScalProd(IntVar[] vars, int[] coefs)
Definition: Solver.java:497
SearchMonitor makeGuidedLocalSearch(boolean maximize, IntVar objective, LongBinaryOperator objective_function, long step, IntVar[] vars, double penalty_factor)
Definition: Solver.java:1537
Demon makeClosureDemon(Runnable closure)
Definition: Solver.java:992
DecisionBuilder makePhase(IntVar[] vars, LongBinaryOperator eval, LongUnaryOperator tie_breaker, int str)
Definition: Solver.java:1880
DisjunctiveConstraint makeDisjunctiveConstraint(IntervalVar[] intervals, String name)
Definition: Solver.java:1367
Decision makeAssignVariableValueOrFail(IntVar var, long value)
Definition: Solver.java:1725
boolean solveAndCommit(DecisionBuilder db, SearchMonitor m1)
Definition: Solver.java:335
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor[] monitors)
Definition: Solver.java:1960
boolean checkAssignment(Assignment solution)
Definition: Solver.java:347
Constraint makeCover(IntervalVar[] vars, IntervalVar target_var)
Definition: Solver.java:1407
DecisionBuilder makeStoreAssignment(Assignment assignment)
Definition: Solver.java:1970
void addCastConstraint(CastConstraint constraint, IntVar target_var, IntExpr expr)
Definition: Solver.java:263
IntervalVar makeFixedDurationIntervalVar(IntVar start_variable, long duration, IntVar performed_variable, String name)
Definition: Solver.java:1292
IntervalVar makeFixedDurationIntervalVar(long start_min, long start_max, long duration, boolean optional, String name)
Definition: Solver.java:1282
IntVarLocalSearchFilter makeSumObjectiveFilter(IntVar[] vars, IntVar[] secondary_vars, LongTernaryOperator values, IntVar objective, int filter_enum)
Definition: Solver.java:2115
Constraint makeIsEqualVar(IntExpr v1, IntExpr v2, IntVar b)
Definition: Solver.java:682
DecisionBuilder compose(DecisionBuilder db1, DecisionBuilder db2, DecisionBuilder db3)
Definition: Solver.java:1755
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2)
Definition: Solver.java:1945
Decision makeScheduleOrExpedite(IntervalVar var, long est, long[] marker)
Definition: Solver.java:1860
LocalSearchPhaseParameters makeLocalSearchPhaseParameters(SolutionPool pool, LocalSearchOperator ls_operator, DecisionBuilder sub_decision_builder)
Definition: Solver.java:2085
Represents a function that accepts two int-valued arguments and produces a long-valued result.
IntervalVar makeFixedDurationEndSyncedOnStartIntervalVar(IntervalVar interval_var, long duration, long offset)
Definition: Solver.java:1322
DecisionBuilder tryDecisions(DecisionBuilder db1, DecisionBuilder db2)
Definition: Solver.java:1770
SearchMonitor makeSearchLog(int branch_period)
Definition: Solver.java:1620
boolean hasName(PropagationBaseObject object)
Definition: Solver.java:2202
IntExpr makeMax(IntExpr left, IntExpr right)
Definition: Solver.java:617
Constraint makeLess(IntExpr expr, int value)
Definition: Solver.java:877
LocalSearchOperator makeRandomLnsOperator(IntVar[] vars, int number_of_variables)
Definition: Solver.java:1995
Constraint makeDistribute(IntVar[] vars, int[] card_min, int[] card_max)
Definition: Solver.java:1102
Constraint makeTemporalDisjunction(IntervalVar t1, IntervalVar t2)
Definition: Solver.java:1362
void addLocalSearchMonitor(LocalSearchMonitor monitor)
Definition: Solver.java:2269
Constraint makeEquality(IntExpr expr, long value)
Definition: Solver.java:697
IntVar makeIsLessOrEqualCstVar(IntExpr var, long value)
Definition: Solver.java:747
OptimizeVar makeWeightedOptimize(boolean maximize, IntVar[] sub_objectives, long[] weights, long step)
Definition: Solver.java:1512
Constraint makeNotBetweenCt(IntExpr expr, long l, long u)
Definition: Solver.java:1002
void exportProfilingOverview(String filename)
Definition: Solver.java:2165
DecisionBuilder makeSolveOnce(DecisionBuilder db, SearchMonitor monitor1, SearchMonitor monitor2)
Definition: Solver.java:1915
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3, SearchMonitor monitor4)
Definition: Solver.java:1955
com.google.ortools.constraintsolver.RegularLimitParameters makeDefaultRegularLimitParameters()
Definition: Solver.java:1597
OptimizeVar makeWeightedMaximize(IntVar[] sub_objectives, int[] weights, long step)
Definition: Solver.java:1507
IntExpr makeElement(IntVar[] vars, IntVar index)
Definition: Solver.java:577
DecisionBuilder tryDecisions(DecisionBuilder db1, DecisionBuilder db2, DecisionBuilder db3, DecisionBuilder db4)
Definition: Solver.java:1780
void newSearch(DecisionBuilder db, SearchMonitor m1)
Definition: Solver.java:299
Solver(String name, com.google.ortools.constraintsolver.ConstraintSolverParameters parameters)
Definition: Solver.java:229
IntExpr makeElement(long[] values, IntVar index)
Definition: Solver.java:552
RegularLimit makeLimit(long time, long branches, long failures, long solutions)
Definition: Solver.java:1577
Decision makeRankLastInterval(SequenceVar sequence, int index)
Definition: Solver.java:1870
SolutionCollector makeFirstSolutionCollector()
Definition: Solver.java:1432
Constraint makeCumulative(IntervalVar[] intervals, long[] demands, IntVar capacity, String name)
Definition: Solver.java:1387
IntervalVar registerIntervalVar(IntervalVar var)
Definition: Solver.java:2221
Constraint makeEquality(IntExpr left, IntExpr right)
Definition: Solver.java:692
Represents a predicate (boolean-valued function) uppon three.
Constraint makeLessOrEqual(IntExpr left, IntExpr right)
Definition: Solver.java:762
DecisionBuilder makePhase(IntVar[] vars, LongUnaryOperator var_evaluator, LongBinaryOperator value_evaluator, LongUnaryOperator tie_breaker)
Definition: Solver.java:1820
void set_optimization_direction(int direction)
Definition: Solver.java:423
LocalSearchOperator concatenateOperators(LocalSearchOperator[] ops)
Definition: Solver.java:2015
Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, int[] x_size, int[] y_size)
Definition: Solver.java:1272
Constraint makeCumulative(IntervalVar[] intervals, IntVar[] demands, long capacity, String name)
Definition: Solver.java:1397
DecisionBuilder makePhase(IntVar v0, IntVar v1, IntVar v2, int var_str, int val_str)
Definition: Solver.java:1845
void newSearch(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3)
Definition: Solver.java:307
IntExpr makePower(IntExpr expr, long n)
Definition: Solver.java:547
IntervalVar makeIntervalRelaxedMin(IntervalVar interval_var)
Definition: Solver.java:1332
IntervalVar makeFixedDurationIntervalVar(IntVar start_variable, long duration, String name)
Definition: Solver.java:1287
Constraint makeNonEquality(IntExpr left, IntExpr right)
Definition: Solver.java:727
IntExpr makeIndexExpression(IntVar[] vars, long value)
Definition: Solver.java:582
DecisionBuilder makeDecisionBuilderFromAssignment(Assignment assignment, DecisionBuilder db, IntVar[] vars)
Definition: Solver.java:1895
Constraint makeLexicalLess(IntVar[] left, IntVar[] right)
Definition: Solver.java:1142
LocalSearchMonitor getLocalSearchMonitor()
Definition: Solver.java:2264
static long getCPtr(IntExpr obj)
Definition: IntExpr.java:19
IntExpr makeElement(LongBinaryOperator values, IntVar index1, IntVar index2)
Definition: Solver.java:572
DecisionBuilder makeNestedOptimize(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3)
Definition: Solver.java:1950
Constraint makeSubCircuit(IntVar[] nexts)
Definition: Solver.java:1197
SearchMonitor makeSearchLog(int branch_period, OptimizeVar opt_var)
Definition: Solver.java:1640
DecisionBuilder makePhase(IntVar v0, int var_str, int val_str)
Definition: Solver.java:1835
LocalSearchOperator randomConcatenateOperators(LocalSearchOperator[] ops)
Definition: Solver.java:2030
Constraint makeIsGreaterCt(IntExpr left, IntExpr right, IntVar b)
Definition: Solver.java:827
SearchMonitor makeSearchLog(int branch_period, IntVar var, Supplier< String > display_callback)
Definition: Solver.java:1635
LocalSearchOperator makeOperator(IntVar[] vars, int op)
Definition: Solver.java:1975
Constraint makePathCumul(IntVar[] nexts, IntVar[] active, IntVar[] cumuls, IntVar[] transits)
Definition: Solver.java:1202
Constraint makeMemberCt(IntExpr expr, int[] values)
Definition: Solver.java:1022
Pack makePack(IntVar[] vars, int number_of_bins)
Definition: Solver.java:1277
IntVar makeIsEqualVar(IntExpr v1, IntExpr v2)
Definition: Solver.java:687
Constraint makeScalProdGreaterOrEqual(IntVar[] vars, int[] coeffs, long cst)
Definition: Solver.java:927
Assignment makeAssignment(Assignment a)
Definition: Solver.java:1422
SolutionCollector makeAllSolutionCollector(Assignment assignment)
Definition: Solver.java:1467
Constraint makeTemporalDisjunction(IntervalVar t1, IntervalVar t2, IntVar alt)
Definition: Solver.java:1357
Constraint makeDistribute(IntVar[] vars, IntVar[] cards)
Definition: Solver.java:1087
Constraint makeCount(IntVar[] vars, long value, IntVar max_count)
Definition: Solver.java:1072
Constraint makeCumulative(IntervalVar[] intervals, IntVar[] demands, IntVar capacity, String name)
Definition: Solver.java:1402
Constraint makeLess(IntExpr left, IntExpr right)
Definition: Solver.java:867
IntervalVar makeIntervalVar(long start_min, long start_max, long duration_min, long duration_max, long end_min, long end_max, boolean optional, String name)
Definition: Solver.java:1302
DecisionBuilder makePhase(IntervalVar[] intervals, int str)
Definition: Solver.java:1885
void newSearch(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2)
Definition: Solver.java:303
Constraint makeCount(IntVar[] vars, long value, long max_count)
Definition: Solver.java:1067
Constraint makeNonOverlappingNonStrictBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, long[] x_size, long[] y_size)
Definition: Solver.java:1267
SearchMonitor makeSymmetryManager(SymmetryBreaker v1, SymmetryBreaker v2)
Definition: Solver.java:1690
LocalSearchOperator makeOperator(IntVar[] vars, IntVar[] secondary_vars, LongTernaryOperator evaluator, int op)
Definition: Solver.java:1990
DecisionBuilder makeSolveOnce(DecisionBuilder db, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3)
Definition: Solver.java:1920
IntExpr makeDifference(IntExpr left, IntExpr right)
Definition: Solver.java:502
DecisionBuilder makeSolveOnce(DecisionBuilder db, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3, SearchMonitor monitor4)
Definition: Solver.java:1925
Constraint makeNotMemberCt(IntExpr expr, int[] values)
Definition: Solver.java:1032
Constraint makeNonOverlappingBoxesConstraint(IntVar[] x_vars, IntVar[] y_vars, IntVar[] x_size, IntVar[] y_size)
Definition: Solver.java:1247
DecisionBuilder makePhase(IntVar[] vars, int var_str, LongBinaryOperator value_evaluator, LongUnaryOperator tie_breaker)
Definition: Solver.java:1815