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.2
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
9package 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
13import java.util.function.LongUnaryOperator;
14// Used to wrap IndexEvaluator2
15// see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongBinaryOperator.html
16import java.util.function.LongBinaryOperator;
17
18public 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
59 public void addWeightedSumLessOrEqualConstantDimension(long[] weights, long[] bounds) {
60 mainJNI.Pack_addWeightedSumLessOrEqualConstantDimension__SWIG_0(swigCPtr, this, weights, bounds);
61 }
62
69 public void addWeightedSumLessOrEqualConstantDimension(LongUnaryOperator weights, long[] bounds) {
70 mainJNI.Pack_addWeightedSumLessOrEqualConstantDimension__SWIG_1(swigCPtr, this, weights, bounds);
71 }
72
79 public void addWeightedSumLessOrEqualConstantDimension(LongBinaryOperator weights, long[] bounds) {
80 mainJNI.Pack_addWeightedSumLessOrEqualConstantDimension__SWIG_2(swigCPtr, this, weights, bounds);
81 }
82
87 public void addWeightedSumEqualVarDimension(long[] weights, IntVar[] loads) {
88 mainJNI.Pack_addWeightedSumEqualVarDimension__SWIG_0(swigCPtr, this, weights, loads);
89 }
90
96 public void addWeightedSumEqualVarDimension(LongBinaryOperator weights, IntVar[] loads) {
97 mainJNI.Pack_addWeightedSumEqualVarDimension__SWIG_1(swigCPtr, this, weights, loads);
98 }
99
111 public void addSumVariableWeightsLessOrEqualConstantDimension(IntVar[] usage, long[] capacity) {
112 mainJNI.Pack_addSumVariableWeightsLessOrEqualConstantDimension(swigCPtr, this, usage, capacity);
113 }
114
119 public void addWeightedSumOfAssignedDimension(long[] weights, IntVar cost_var) {
120 mainJNI.Pack_addWeightedSumOfAssignedDimension(swigCPtr, this, weights, IntVar.getCPtr(cost_var), cost_var);
121 }
122
127 public void addCountUsedBinDimension(IntVar count_var) {
128 mainJNI.Pack_addCountUsedBinDimension(swigCPtr, this, IntVar.getCPtr(count_var), count_var);
129 }
130
135 public void addCountAssignedItemsDimension(IntVar count_var) {
136 mainJNI.Pack_addCountAssignedItemsDimension(swigCPtr, this, IntVar.getCPtr(count_var), count_var);
137 }
138
139 public void post() {
140 mainJNI.Pack_post(swigCPtr, this);
141 }
142
143 public void clearAll() {
144 mainJNI.Pack_clearAll(swigCPtr, this);
145 }
146
147 public void propagateDelayed() {
148 mainJNI.Pack_propagateDelayed(swigCPtr, this);
149 }
150
151 public void initialPropagate() {
152 mainJNI.Pack_initialPropagate(swigCPtr, this);
153 }
154
155 public void propagate() {
156 mainJNI.Pack_propagate(swigCPtr, this);
157 }
158
159 public void oneDomain(int var_index) {
160 mainJNI.Pack_oneDomain(swigCPtr, this, var_index);
161 }
162
163 public String toString() {
164 return mainJNI.Pack_toString(swigCPtr, this);
165 }
166
167 public boolean isUndecided(int var_index, int bin_index) {
168 return mainJNI.Pack_isUndecided(swigCPtr, this, var_index, bin_index);
169 }
170
171 public void setImpossible(int var_index, int bin_index) {
172 mainJNI.Pack_setImpossible(swigCPtr, this, var_index, bin_index);
173 }
174
175 public void assign(int var_index, int bin_index) {
176 mainJNI.Pack_assign(swigCPtr, this, var_index, bin_index);
177 }
178
179 public boolean isAssignedStatusKnown(int var_index) {
180 return mainJNI.Pack_isAssignedStatusKnown(swigCPtr, this, var_index);
181 }
182
183 public boolean isPossible(int var_index, int bin_index) {
184 return mainJNI.Pack_isPossible(swigCPtr, this, var_index, bin_index);
185 }
186
187 public IntVar assignVar(int var_index, int bin_index) {
188 long cPtr = mainJNI.Pack_assignVar(swigCPtr, this, var_index, bin_index);
189 return (cPtr == 0) ? null : new IntVar(cPtr, false);
190 }
191
192 public void setAssigned(int var_index) {
193 mainJNI.Pack_setAssigned(swigCPtr, this, var_index);
194 }
195
196 public void setUnassigned(int var_index) {
197 mainJNI.Pack_setUnassigned(swigCPtr, this, var_index);
198 }
199
200 public void removeAllPossibleFromBin(int bin_index) {
201 mainJNI.Pack_removeAllPossibleFromBin(swigCPtr, this, bin_index);
202 }
203
204 public void assignAllPossibleToBin(int bin_index) {
205 mainJNI.Pack_assignAllPossibleToBin(swigCPtr, this, bin_index);
206 }
207
208 public void assignFirstPossibleToBin(int bin_index) {
209 mainJNI.Pack_assignFirstPossibleToBin(swigCPtr, this, bin_index);
210 }
211
213 mainJNI.Pack_assignAllRemainingItems(swigCPtr, this);
214 }
215
217 mainJNI.Pack_unassignAllRemainingItems(swigCPtr, this);
218 }
219
220 public void accept(ModelVisitor visitor) {
221 mainJNI.Pack_accept(swigCPtr, this, ModelVisitor.getCPtr(visitor), visitor);
222 }
223
224}
boolean isPossible(int var_index, int bin_index)
Definition: Pack.java:183
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 a...
Definition: Pack.java:96
IntVar assignVar(int var_index, int bin_index)
Definition: Pack.java:187
Pack(long cPtr, boolean cMemoryOwn)
Definition: Pack.java:21
boolean isAssignedStatusKnown(int var_index)
Definition: Pack.java:179
void assignAllPossibleToBin(int bin_index)
Definition: Pack.java:204
void addWeightedSumLessOrEqualConstantDimension(long[] weights, long[] bounds)
Dimensions are additional constraints than can restrict what is possible with the pack constraint.
Definition: Pack.java:59
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:111
void addWeightedSumEqualVarDimension(long[] weights, IntVar[] loads)
This dimension imposes that for all bins b, the weighted sum (weights[i]) of all objects i assigned ...
Definition: Pack.java:87
boolean isUndecided(int var_index, int bin_index)
Definition: Pack.java:167
void setImpossible(int var_index, int bin_index)
Definition: Pack.java:171
Pack(Solver s, IntVar[] vars, int number_of_bins)
Definition: Pack.java:46
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:135
void initialPropagate()
This method performs the initial propagation of the constraint.
Definition: Pack.java:151
void assign(int var_index, int bin_index)
Definition: Pack.java:175
void assignFirstPossibleToBin(int bin_index)
Definition: Pack.java:208
void post()
This method is called when the constraint is processed by the solver.
Definition: Pack.java:139
void addWeightedSumLessOrEqualConstantDimension(LongUnaryOperator weights, long[] bounds)
This dimension imposes that for all bins b, the weighted sum (weights->Run(i)) of all objects i assi...
Definition: Pack.java:69
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 as...
Definition: Pack.java:79
void addCountUsedBinDimension(IntVar count_var)
This dimension links 'count_var' to the actual number of bins used in the pack.
Definition: Pack.java:127
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:119
void removeAllPossibleFromBin(int bin_index)
Definition: Pack.java:200
void accept(ModelVisitor visitor)
Accepts the given visitor.
Definition: Pack.java:220
void setUnassigned(int var_index)
Definition: Pack.java:196
Solver Class A solver represents the main computation engine.
Definition: Solver.java:76