Definition at line 5234 of file constraint_solver.h.
|
| Pack (Solver *const s, const std::vector< IntVar * > &vars, int number_of_bins) |
|
| ~Pack () override |
|
void | AddWeightedSumLessOrEqualConstantDimension (const std::vector< int64 > &weights, const std::vector< int64 > &bounds) |
| Dimensions are additional constraints than can restrict what is possible with the pack constraint. More...
|
|
void | AddWeightedSumLessOrEqualConstantDimension (Solver::IndexEvaluator1 weights, const std::vector< int64 > &bounds) |
| This dimension imposes that for all bins b, the weighted sum (weights->Run(i)) of all objects i assigned to 'b' is less or equal to 'bounds[b]'. More...
|
|
void | AddWeightedSumLessOrEqualConstantDimension (Solver::IndexEvaluator2 weights, const std::vector< int64 > &bounds) |
| This dimension imposes that for all bins b, the weighted sum (weights->Run(i, b) of all objects i assigned to 'b' is less or equal to 'bounds[b]'. More...
|
|
void | AddWeightedSumEqualVarDimension (const std::vector< int64 > &weights, const std::vector< IntVar * > &loads) |
| This dimension imposes that for all bins b, the weighted sum (weights[i]) of all objects i assigned to 'b' is equal to loads[b]. More...
|
|
void | AddWeightedSumEqualVarDimension (Solver::IndexEvaluator2 weights, const std::vector< IntVar * > &loads) |
| This dimension imposes that for all bins b, the weighted sum (weights->Run(i, b)) of all objects i assigned to 'b' is equal to loads[b]. More...
|
|
void | AddSumVariableWeightsLessOrEqualConstantDimension (const std::vector< IntVar * > &usage, const std::vector< int64 > &capacity) |
| This dimension imposes: forall b in bins, sum (i in items: usage[i] * is_assigned(i, b)) <= capacity[b] where is_assigned(i, b) is true if and only if item i is assigned to the bin b. More...
|
|
void | AddWeightedSumOfAssignedDimension (const std::vector< int64 > &weights, IntVar *const cost_var) |
| This dimension enforces that cost_var == sum of weights[i] for all objects 'i' assigned to a bin. More...
|
|
void | AddCountUsedBinDimension (IntVar *const count_var) |
| This dimension links 'count_var' to the actual number of bins used in the pack. More...
|
|
void | AddCountAssignedItemsDimension (IntVar *const count_var) |
| This dimension links 'count_var' to the actual number of items assigned to a bin in the pack. More...
|
|
void | Post () override |
| This method is called when the constraint is processed by the solver. More...
|
|
void | ClearAll () |
|
void | PropagateDelayed () |
|
void | InitialPropagate () override |
| This method performs the initial propagation of the constraint. More...
|
|
void | Propagate () |
|
void | OneDomain (int var_index) |
|
std::string | DebugString () const override |
|
bool | IsUndecided (int var_index, int bin_index) const |
|
void | SetImpossible (int var_index, int bin_index) |
|
void | Assign (int var_index, int bin_index) |
|
bool | IsAssignedStatusKnown (int var_index) const |
|
bool | IsPossible (int var_index, int bin_index) const |
|
IntVar * | AssignVar (int var_index, int bin_index) const |
|
void | SetAssigned (int var_index) |
|
void | SetUnassigned (int var_index) |
|
void | RemoveAllPossibleFromBin (int bin_index) |
|
void | AssignAllPossibleToBin (int bin_index) |
|
void | AssignFirstPossibleToBin (int bin_index) |
|
void | AssignAllRemainingItems () |
|
void | UnassignAllRemainingItems () |
|
void | Accept (ModelVisitor *const visitor) const override |
| Accepts the given visitor. More...
|
|
void | PostAndPropagate () |
| Calls Post and then Propagate to initialize the constraints. More...
|
|
bool | IsCastConstraint () const |
| Is the constraint created by a cast from expression to integer variable? More...
|
|
virtual IntVar * | Var () |
| Creates a Boolean variable representing the status of the constraint (false = constraint is violated, true = constraint is satisfied). More...
|
|
Solver * | solver () const |
|
void | FreezeQueue () |
| This method freezes the propagation queue. More...
|
|
void | UnfreezeQueue () |
| This method unfreezes the propagation queue. More...
|
|
void | EnqueueDelayedDemon (Demon *const d) |
| This method pushes the demon onto the propagation queue. More...
|
|
void | EnqueueVar (Demon *const d) |
|
void | ExecuteAll (const SimpleRevFIFO< Demon * > &demons) |
|
void | EnqueueAll (const SimpleRevFIFO< Demon * > &demons) |
|
void | set_action_on_fail (Solver::Action a) |
|
void | reset_action_on_fail () |
| This method clears the failure callback. More...
|
|
void | set_variable_to_clean_on_fail (IntVar *v) |
| Shortcut for variable cleaner. More...
|
|
virtual std::string | name () const |
| Object naming. More...
|
|
void | set_name (const std::string &name) |
|
bool | HasName () const |
| Returns whether the object has been named or not. More...
|
|
virtual std::string | BaseName () const |
| Returns a base name for automatic naming. More...
|
|