Protected Member Functions |
| | SetVarImp (Space &home, SetVarImp &x) |
| | Constructor for cloning x.
|
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 tests |
|
| bool | assigned (void) const |
| | Test whether variable is assigned.
|
| bool | knownIn (int n) const |
| | Test whether n is contained in greatest lower bound.
|
| bool | knownOut (int) const |
| | Test whether n is not contained in 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.
|
Domain update by range iterator |
|
| template<class I > |
| ModEvent | includeI (Space &home, I &i) |
| | Include set described by i in the greatest lower bound.
|
| template<class I > |
| ModEvent | excludeI (Space &home, I &i) |
| | Exclude set described by i from the least upper bound.
|
| template<class I > |
| ModEvent | intersectI (Space &home, I &i) |
| | Exclude everything but set described by i from the least upper bound.
|
Dependencies |
|
| void | subscribe (Space &home, Propagator &p, PropCond pc, bool schedule=true) |
| | Subscribe propagator p with propagation condition pc to variable.
|
| void | reschedule (Space &home, Propagator &p, PropCond pc) |
| | Re-schedule propagator p with propagation condition pc.
|
| void | subscribe (Space &home, Advisor &a, bool fail) |
| | Subscribe advisor a to variable.
|
Cloning |
|
| SetVarImp * | copy (Space &home) |
| | Return copy of this variable.
|
Delta information for advisors |
|
| static int | glbMin (const Delta &d) |
| | Return minimum value just pruned from glb.
|
| static int | glbMax (const Delta &d) |
| | Return maximum value just pruned from glb.
|
| static bool | glbAny (const Delta &d) |
| | Test whether arbitrary values got pruned from glb.
|
| static int | lubMin (const Delta &d) |
| | Return minimum value just pruned from lub.
|
| static int | lubMax (const Delta &d) |
| | Return maximum value just pruned from lub.
|
| static bool | lubAny (const Delta &d) |
| | Test whether arbitrary values got pruned from lub.
|
Finite integer set variable implementation.