Gecode::Set::SetVarImp Class Reference
[Other available functionality]
Inherits Gecode::Set::SetVarImpBase.
Detailed Description
Finite integer set variable implementation.
Definition at line 463 of file var.icc.
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::Set::card_max) | |
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 (int n) const |
Return n -th smallest element in the least upper bound. | |
int | lubMaxN (int n) const |
Return n -th largest 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 process=true) |
Subscribe propagator p with propagation condition pc to variable. | |
Cloning | |
SetVarImp * | copy (Space *home, bool share) |
Return copy of this variable. | |
Protected Member Functions | |
SetVarImp (Space *home, bool share, SetVarImp &x) | |
Constructor for cloning x. |
Constructor & Destructor Documentation
|
Constructor for cloning x.
|
|
Initialize with empty lower and full upper bound.
|
|
Initialize with given bounds and cardinality. Creates a set variable with , , and |
|
Initialize with given bounds and cardinality. Creates a set variable with , , and |
|
Initialize with given bounds and cardinality. Creates a set variable with , , and |
|
Initialize with given bounds and cardinality. Creates a set variable with , , and |
Member Function Documentation
|
Return current cardinality minimum.
|
|
Return current cardinality maximum.
|
|
Return minimum of the least upper bound.
|
|
Return maximum of the least upper bound.
|
|
Return n -th smallest element in the least upper bound.
|
|
Return n -th largest element in the least upper bound.
|
|
Return minimum of the greatest lower bound.
|
|
Return maximum of the greatest lower bound.
|
|
Return the size of the greatest lower bound.
|
|
Return the size of the least upper bound.
|
|
Test whether variable is assigned.
|
|
Test whether n is contained in greatest lower bound.
|
|
Test whether n is not contained in least upper bound.
|
|
Include n in the greatest lower bound.
|
|
Include the range in the greatest lower bound.
|
|
Exclude n from the least upper bound.
|
|
Exclude the range from the least upper bound.
|
|
Exclude everything but n from the least upper bound.
|
|
Exclude everything but the range from the least upper bound.
|
|
Restrict cardinality to be at least n.
|
|
Restrict cardinality to be at most n.
|
|
Include set described by i in the greatest lower bound.
|
|
Exclude set described by i from the least upper bound.
|
|
Exclude everything but set described by i from the least upper bound.
|
|
Subscribe propagator p with propagation condition pc to variable. In case process is false, the propagator is just subscribed but not processed for execution (this must be used when creating subscriptions during propagation). |
|
Return copy of this variable.
|
The documentation for this class was generated from the following files:
- gecode/set/var.icc (Revision: 3568)
- gecode/set/var/imp.cc (Revision: 3568)
- gecode/set/var/imp.icc (Revision: 3568)