Gecode::Set::SingletonView Class Reference
[Set views]
List of all members.Detailed Description
Singleton set view.
A singleton set view for an integer view
provides operations such that
behaves like the singleton set
.
Definition at line 633 of file view.icc.
Constructors and initialization | |
SingletonView (void) | |
Default constructor. | |
SingletonView (Gecode::Int::IntView &x) | |
Initialize with integer view x. | |
Value access | |
unsigned int | cardMin (void) const |
Return minimum cardinality. | |
unsigned int | cardMax (void) const |
Return maximum cardinality. | |
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 of the least upper bound. | |
int | lubMaxN (int n) const |
Return the n-th largest element of 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 number of elements in the greatest lower bound. | |
unsigned int | lubSize (void) const |
Return the number of elements in the least upper bound. | |
unsigned int | unknownSize (void) const |
Return the number of unknown elements. | |
Domain tests | |
bool | assigned (void) const |
Test whether view is assigned. | |
bool | contains (int i) const |
Test whether i is in the greatest lower bound. | |
bool | notContains (int i) const |
Test whether i is not in the least upper bound. | |
Domain update by value | |
ModEvent | cardMin (Space *home, unsigned int m) |
Restrict cardinality to be greater than or equal to m. | |
ModEvent | cardMax (Space *home, unsigned int m) |
Restrict cardinality to be less than or equal to m. | |
ModEvent | include (Space *home, int i, int j) |
Update greatest lower bound to include all elements between and including i and j. | |
ModEvent | exclude (Space *home, int i, int j) |
Restrict least upper bound to not contain all elements between and including i and j. | |
ModEvent | include (Space *home, int i) |
Update greatest lower bound to contain i. | |
ModEvent | exclude (Space *home, int i) |
Restrict least upper bound to not contain i. | |
ModEvent | intersect (Space *home, int i, int j) |
Update least upper bound to contain at most all elements between and including i and j. | |
ModEvent | intersect (Space *home, int i) |
Update least upper bound to contain at most the element i. | |
Domain update by range iterator | |
template<class I> | |
ModEvent | excludeI (Space *home, I &i) |
Remove range sequence described by i from least upper bound. | |
template<class I> | |
ModEvent | includeI (Space *home, I &i) |
Include range sequence described by i in greatest lower bound. | |
template<class I> | |
ModEvent | intersectI (Space *home, I &iter) |
Intersect least upper bound with range sequence described by i. | |
Dependencies | |
void | subscribe (Space *home, Propagator *p, PropCond pc) |
Subscribe propagator p with propagation condition pc to view. | |
void | cancel (Propagator *p, PropCond pc) |
Cancel subscription of propagator p with propagation condition pc to view. | |
Cloning | |
void | update (Space *home, bool share, SingletonView &x) |
Update this view to be a clone of view x. | |
static bool | destruct (void) |
Whether this view needs to be destructed. | |
Propagator modification events | |
static ModEvent | pme (const Propagator *p) |
Return modification event of propagator p for view. | |
static PropModEvent | pme (ModEvent) |
Translate modification event me to propagator modification event for view. | |
View comparison | |
bool | same (const Set::SingletonView &x, const Set::SingletonView &y) |
Test whether views x and y are the same. | |
bool | before (const Set::SingletonView &x, const Set::SingletonView &y) |
Test whether view x comes before y (arbitrary order). | |
Static Protected Member Functions | |
static PropCond | pc_settoint (PropCond pc) |
Convert set variable PropCond pc to a PropCond for integer variables. | |
static ModEvent | me_inttoset (ModEvent me) |
Convert integer variable ModEvent me to a ModEvent for set variables. | |
Related Functions | |
(Note that these are not member functions.) | |
std::ostream & | operator<< (std::ostream &, const Gecode::Set::SingletonView &) |
Print singelton set view. |
Constructor & Destructor Documentation
|
Default constructor.
Definition at line 31 of file singleton.icc. |
|
Initialize with integer view x.
Definition at line 34 of file singleton.icc. |
Member Function Documentation
|
Convert set variable PropCond pc to a PropCond for integer variables.
Definition at line 38 of file singleton.icc. |
|
Convert integer variable ModEvent me to a ModEvent for set variables.
Definition at line 50 of file singleton.icc. |
|
Return minimum cardinality.
Definition at line 87 of file singleton.icc. |
|
Return maximum cardinality.
Definition at line 90 of file singleton.icc. |
|
Return minimum of the least upper bound.
Definition at line 93 of file singleton.icc. |
|
Return maximum of the least upper bound.
Definition at line 96 of file singleton.icc. |
|
Return n-th smallest element of the least upper bound.
|
|
Return the n-th largest element of the least upper bound.
|
|
Return minimum of the greatest lower bound.
Definition at line 99 of file singleton.icc. |
|
Return maximum of the greatest lower bound.
Definition at line 103 of file singleton.icc. |
|
Return the number of elements in the greatest lower bound.
Definition at line 69 of file singleton.icc. |
|
Return the number of elements in the least upper bound.
Definition at line 72 of file singleton.icc. |
|
Return the number of unknown elements.
Definition at line 75 of file singleton.icc. |
|
Test whether view is assigned.
Definition at line 66 of file singleton.icc. |
|
Test whether i is in the greatest lower bound.
Definition at line 80 of file singleton.icc. |
|
Test whether i is not in the least upper bound.
Definition at line 84 of file singleton.icc. |
|
Restrict cardinality to be greater than or equal to m.
Definition at line 107 of file singleton.icc. |
|
Restrict cardinality to be less than or equal to m.
Definition at line 112 of file singleton.icc. |
|
Update greatest lower bound to include all elements between and including i and j.
Definition at line 150 of file singleton.icc. |
|
Restrict least upper bound to not contain all elements between and including i and j.
Definition at line 155 of file singleton.icc. |
|
Update greatest lower bound to contain i.
Definition at line 117 of file singleton.icc. |
|
Restrict least upper bound to not contain i.
Definition at line 145 of file singleton.icc. |
|
Update least upper bound to contain at most all elements between and including i and j.
Definition at line 127 of file singleton.icc. |
|
Update least upper bound to contain at most the element i.
Definition at line 122 of file singleton.icc. |
|
Remove range sequence described by i from least upper bound.
Definition at line 173 of file singleton.icc. |
|
Include range sequence described by i in greatest lower bound.
Definition at line 178 of file singleton.icc. |
|
Intersect least upper bound with range sequence described by i.
Definition at line 194 of file singleton.icc. |
|
Return modification event of propagator p for view.
Definition at line 209 of file singleton.icc. |
|
Translate modification event me to propagator modification event for view.
Definition at line 213 of file singleton.icc. |
|
Subscribe propagator p with propagation condition pc to view.
Definition at line 199 of file singleton.icc. |
|
Cancel subscription of propagator p with propagation condition pc to view.
Definition at line 203 of file singleton.icc. |
|
Update this view to be a clone of view x.
Definition at line 219 of file singleton.icc. |
|
Whether this view needs to be destructed.
Definition at line 224 of file singleton.icc. |
Friends And Related Function Documentation
|
Test whether views x and y are the same.
Definition at line 338 of file singleton.icc. |
|
Test whether view x comes before y (arbitrary order).
Definition at line 342 of file singleton.icc. |
|
Print singelton set view.
|
The documentation for this class was generated from the following files: