Constructors and initialization |
| SetVarImp (Space &home) |
| Initialize with empty lower and full upper bound.
|
| SetVarImp (Space &home, int glbMin, int glbMax, int lubMin, int lubMax, unsigned int cardMin=0, unsigned int cardMax=Limits::card) |
| Initialize with given bounds and cardinality.
|
| SetVarImp (Space &home, const IntSet &glbD, int lubMin, int lubMax, unsigned int cardMin, unsigned int cardMax) |
| Initialize with given bounds and cardinality.
|
| SetVarImp (Space &home, int glbMin, int glbMax, const IntSet &lubD, unsigned int cardMin, unsigned int cardMax) |
| Initialize with given bounds and cardinality.
|
| SetVarImp (Space &home, const IntSet &glbD, const IntSet &lubD, unsigned int cardMin, unsigned int cardMax) |
| Initialize with given bounds and cardinality.
|
Value access |
unsigned int | cardMin (void) const |
| Return current cardinality minimum.
|
unsigned int | cardMax (void) const |
| Return current cardinality maximum.
|
int | lubMin (void) const |
| Return minimum of the least upper bound.
|
int | lubMax (void) const |
| Return maximum of the least upper bound.
|
int | lubMinN (unsigned int n) const |
| Return n -th smallest element in the least upper bound.
|
int | glbMin (void) const |
| Return minimum of the greatest lower bound.
|
int | glbMax (void) const |
| Return maximum of the greatest lower bound.
|
unsigned int | glbSize (void) const |
| Return the size of the greatest lower bound.
|
unsigned int | lubSize (void) const |
| Return the size of the least upper bound.
|
Domain update by value |
ModEvent | include (Space &home, int n) |
| Include n in the greatest lower bound.
|
ModEvent | include (Space &home, int i, int j) |
| Include the range in the greatest lower bound.
|
ModEvent | exclude (Space &home, int n) |
| Exclude n from the least upper bound.
|
ModEvent | exclude (Space &home, int i, int j) |
| Exclude the range from the least upper bound.
|
ModEvent | intersect (Space &home, int n) |
| Exclude everything but n from the least upper bound.
|
ModEvent | intersect (Space &home, int i, int j) |
| Exclude everything but the range from the least upper bound.
|
ModEvent | cardMin (Space &home, unsigned int n) |
| Restrict cardinality to be at least n.
|
ModEvent | cardMax (Space &home, unsigned int n) |
| Restrict cardinality to be at most n.
|
Additional Inherited Members |
| SetVarImpBase (void) |
| Constructor for creating static instance of variable.
|
| SetVarImpBase (Gecode::Space &home) |
| Constructor for creating variable.
|
void | subscribe (Gecode::Space &home, Gecode::Propagator &p, Gecode::PropCond pc, bool assigned, bool schedule) |
| Subscribe propagator p with propagation condition pc.
|
void | subscribe (Gecode::Space &home, Gecode::Advisor &a, bool assigned) |
| Subscribe advisor a if assigned is false.
|
Gecode::ModEvent | notify (Gecode::Space &home, Gecode::ModEvent me, Gecode::Delta &d) |
| Notify that variable implementation has been modified with modification event me and delta information d.
|
| VarImp (Space &home) |
| Creation.
|
| VarImp (void) |
| Creation of static instances.
|
VarImp * | next (void) const |
| Return next copied variable.
|
| VarImp (Space &home, bool share, VarImp &x) |
| Constructor for cloning.
|
bool | copied (void) const |
| Is variable already copied.
|
VarImp * | forward (void) const |
| Use forward pointer if variable already copied.
|
void | cancel (Space &home, Propagator &p, PropCond pc, bool assigned) |
| Cancel subscription of propagator p with propagation condition pc.
|
void | cancel (Space &home, Advisor &a, bool assigned) |
| Cancel subscription of advisor a.
|
void | subscribe (Space &home, Propagator &p, PropCond pc, bool assigned, ModEvent me, bool schedule) |
| Subscribe propagator p with propagation condition pc.
|
unsigned int | degree (void) const |
| Return degree (number of subscribed propagators and advisors)
|
double | afc (void) const |
| Return accumulated failure count (plus degree)
|
unsigned int | bits (void) const |
| Provide access to free bits.
|
unsigned int & | bits (void) |
| Provide access to free bits.
|
Finite integer set variable implementation.
Definition at line 434 of file var-imp.hpp.