Java Reference

Java Reference

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