Java Reference

Java Reference

Pack.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 
11 // Used to wrap IndexEvaluator1
12 // see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongUnaryOperator.html
13 import java.util.function.LongUnaryOperator;
14 // Used to wrap IndexEvaluator2
15 // see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongBinaryOperator.html
16 import java.util.function.LongBinaryOperator;
17 
18 public class Pack extends Constraint {
19  private transient long swigCPtr;
20 
21  protected Pack(long cPtr, boolean cMemoryOwn) {
22  super(mainJNI.Pack_SWIGUpcast(cPtr), cMemoryOwn);
23  swigCPtr = cPtr;
24  }
25 
26  protected static long getCPtr(Pack obj) {
27  return (obj == null) ? 0 : obj.swigCPtr;
28  }
29 
30  @SuppressWarnings("deprecation")
31  protected void finalize() {
32  delete();
33  }
34 
35  public synchronized void delete() {
36  if (swigCPtr != 0) {
37  if (swigCMemOwn) {
38  swigCMemOwn = false;
39  mainJNI.delete_Pack(swigCPtr);
40  }
41  swigCPtr = 0;
42  }
43  super.delete();
44  }
45 
46  public Pack(Solver s, IntVar[] vars, int number_of_bins) {
47  this(mainJNI.new_Pack(Solver.getCPtr(s), s, vars, number_of_bins), true);
48  }
49 
53  public void addWeightedSumLessOrEqualConstantDimension(long[] weights, long[] bounds) {
54  mainJNI.Pack_addWeightedSumLessOrEqualConstantDimension__SWIG_0(swigCPtr, this, weights, bounds);
55  }
56 
60  public void addWeightedSumLessOrEqualConstantDimension(LongUnaryOperator weights, long[] bounds) {
61  mainJNI.Pack_addWeightedSumLessOrEqualConstantDimension__SWIG_1(swigCPtr, this, weights, bounds);
62  }
63 
67  public void addWeightedSumLessOrEqualConstantDimension(LongBinaryOperator weights, long[] bounds) {
68  mainJNI.Pack_addWeightedSumLessOrEqualConstantDimension__SWIG_2(swigCPtr, this, weights, bounds);
69  }
70 
74  public void addWeightedSumEqualVarDimension(long[] weights, IntVar[] loads) {
75  mainJNI.Pack_addWeightedSumEqualVarDimension__SWIG_0(swigCPtr, this, weights, loads);
76  }
77 
81  public void addWeightedSumEqualVarDimension(LongBinaryOperator weights, IntVar[] loads) {
82  mainJNI.Pack_addWeightedSumEqualVarDimension__SWIG_1(swigCPtr, this, weights, loads);
83  }
84 
88  public void addSumVariableWeightsLessOrEqualConstantDimension(IntVar[] usage, long[] capacity) {
89  mainJNI.Pack_addSumVariableWeightsLessOrEqualConstantDimension(swigCPtr, this, usage, capacity);
90  }
91 
95  public void addWeightedSumOfAssignedDimension(long[] weights, IntVar cost_var) {
96  mainJNI.Pack_addWeightedSumOfAssignedDimension(swigCPtr, this, weights, IntVar.getCPtr(cost_var), cost_var);
97  }
98 
102  public void addCountUsedBinDimension(IntVar count_var) {
103  mainJNI.Pack_addCountUsedBinDimension(swigCPtr, this, IntVar.getCPtr(count_var), count_var);
104  }
105 
109  public void addCountAssignedItemsDimension(IntVar count_var) {
110  mainJNI.Pack_addCountAssignedItemsDimension(swigCPtr, this, IntVar.getCPtr(count_var), count_var);
111  }
112 
113  public void post() {
114  mainJNI.Pack_post(swigCPtr, this);
115  }
116 
117  public void clearAll() {
118  mainJNI.Pack_clearAll(swigCPtr, this);
119  }
120 
121  public void propagateDelayed() {
122  mainJNI.Pack_propagateDelayed(swigCPtr, this);
123  }
124 
125  public void initialPropagate() {
126  mainJNI.Pack_initialPropagate(swigCPtr, this);
127  }
128 
129  public void propagate() {
130  mainJNI.Pack_propagate(swigCPtr, this);
131  }
132 
133  public void oneDomain(int var_index) {
134  mainJNI.Pack_oneDomain(swigCPtr, this, var_index);
135  }
136 
137  public String toString() {
138  return mainJNI.Pack_toString(swigCPtr, this);
139  }
140 
141  public boolean isUndecided(int var_index, int bin_index) {
142  return mainJNI.Pack_isUndecided(swigCPtr, this, var_index, bin_index);
143  }
144 
145  public void setImpossible(int var_index, int bin_index) {
146  mainJNI.Pack_setImpossible(swigCPtr, this, var_index, bin_index);
147  }
148 
149  public void assign(int var_index, int bin_index) {
150  mainJNI.Pack_assign(swigCPtr, this, var_index, bin_index);
151  }
152 
153  public boolean isAssignedStatusKnown(int var_index) {
154  return mainJNI.Pack_isAssignedStatusKnown(swigCPtr, this, var_index);
155  }
156 
157  public boolean isPossible(int var_index, int bin_index) {
158  return mainJNI.Pack_isPossible(swigCPtr, this, var_index, bin_index);
159  }
160 
161  public IntVar assignVar(int var_index, int bin_index) {
162  long cPtr = mainJNI.Pack_assignVar(swigCPtr, this, var_index, bin_index);
163  return (cPtr == 0) ? null : new IntVar(cPtr, false);
164  }
165 
166  public void setAssigned(int var_index) {
167  mainJNI.Pack_setAssigned(swigCPtr, this, var_index);
168  }
169 
170  public void setUnassigned(int var_index) {
171  mainJNI.Pack_setUnassigned(swigCPtr, this, var_index);
172  }
173 
174  public void removeAllPossibleFromBin(int bin_index) {
175  mainJNI.Pack_removeAllPossibleFromBin(swigCPtr, this, bin_index);
176  }
177 
178  public void assignAllPossibleToBin(int bin_index) {
179  mainJNI.Pack_assignAllPossibleToBin(swigCPtr, this, bin_index);
180  }
181 
182  public void assignFirstPossibleToBin(int bin_index) {
183  mainJNI.Pack_assignFirstPossibleToBin(swigCPtr, this, bin_index);
184  }
185 
186  public void assignAllRemainingItems() {
187  mainJNI.Pack_assignAllRemainingItems(swigCPtr, this);
188  }
189 
191  mainJNI.Pack_unassignAllRemainingItems(swigCPtr, this);
192  }
193 
194  public void accept(ModelVisitor visitor) {
195  mainJNI.Pack_accept(swigCPtr, this, ModelVisitor.getCPtr(visitor), visitor);
196  }
197 
198 }
A constraint is the main modeling object.
void unassignAllRemainingItems()
Definition: Pack.java:190
void propagate()
Definition: Pack.java:129
void addSumVariableWeightsLessOrEqualConstantDimension(IntVar[] usage, long[] capacity)
This dimension imposes: forall b in bins, sum (i in items: usage[i] * is_assigned(i,...
Definition: Pack.java:88
void addWeightedSumOfAssignedDimension(long[] weights, IntVar cost_var)
This dimension enforces that cost_var == sum of weights[i] for all objects 'i' assigned to a bin.
Definition: Pack.java:95
boolean isPossible(int var_index, int bin_index)
Definition: Pack.java:157
void addWeightedSumEqualVarDimension(long[] weights, IntVar[] loads)
This dimension imposes that for all bins b, the weighted sum (weights[i]) of all objects i assigned t...
Definition: Pack.java:74
Pack(Solver s, IntVar[] vars, int number_of_bins)
Definition: Pack.java:46
boolean isAssignedStatusKnown(int var_index)
Definition: Pack.java:153
void assignAllRemainingItems()
Definition: Pack.java:186
void assignAllPossibleToBin(int bin_index)
Definition: Pack.java:178
Model visitor.
void addCountUsedBinDimension(IntVar count_var)
This dimension links 'count_var' to the actual number of bins used in the pack.
Definition: Pack.java:102
void oneDomain(int var_index)
Definition: Pack.java:133
The class IntVar is a subset of IntExpr.
void addWeightedSumEqualVarDimension(LongBinaryOperator weights, IntVar[] loads)
This dimension imposes that for all bins b, the weighted sum (weights->Run(i, b)) of all objects i as...
Definition: Pack.java:81
void accept(ModelVisitor visitor)
Accepts the given visitor.
Definition: Pack.java:194
Pack(long cPtr, boolean cMemoryOwn)
Definition: Pack.java:21
boolean isUndecided(int var_index, int bin_index)
Definition: Pack.java:141
void propagateDelayed()
Definition: Pack.java:121
void assign(int var_index, int bin_index)
Definition: Pack.java:149
void addWeightedSumLessOrEqualConstantDimension(LongBinaryOperator weights, long[] bounds)
This dimension imposes that for all bins b, the weighted sum (weights->Run(i, b) of all objects i ass...
Definition: Pack.java:67
String toString()
Definition: Pack.java:137
void addWeightedSumLessOrEqualConstantDimension(long[] weights, long[] bounds)
Dimensions are additional constraints than can restrict what is possible with the pack constraint.
Definition: Pack.java:53
void clearAll()
Definition: Pack.java:117
void addWeightedSumLessOrEqualConstantDimension(LongUnaryOperator weights, long[] bounds)
This dimension imposes that for all bins b, the weighted sum (weights->Run(i)) of all objects i assig...
Definition: Pack.java:60
void setUnassigned(int var_index)
Definition: Pack.java:170
void removeAllPossibleFromBin(int bin_index)
Definition: Pack.java:174
void initialPropagate()
This method performs the initial propagation of the constraint.
Definition: Pack.java:125
void post()
This method is called when the constraint is processed by the solver.
Definition: Pack.java:113
Definition: Pack.java:18
void addCountAssignedItemsDimension(IntVar count_var)
This dimension links 'count_var' to the actual number of items assigned to a bin in the pack.
Definition: Pack.java:109
IntVar assignVar(int var_index, int bin_index)
Definition: Pack.java:161
void setImpossible(int var_index, int bin_index)
Definition: Pack.java:145
void assignFirstPossibleToBin(int bin_index)
Definition: Pack.java:182
void setAssigned(int var_index)
Definition: Pack.java:166
Solver Class A solver represents the main computation engine.
Definition: Solver.java:57