Set view for set variables
More...
#include <view.hpp>
|
(Note that these are not member functions.)
|
template<class Char , class Traits > |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const SetView &x) |
| Print set variable view. More...
|
|
bool | same (const VarImpView< VarA > &x, const VarImpView< VarB > &y) |
| Test whether views x and y are the same. More...
|
|
bool | before (const ViewA &x, const ViewB &y) |
| Test whether view x comes before y (arbitrary order) More...
|
|
|
unsigned int | cardMin (void) const |
| Return minimum cardinality. More...
|
|
unsigned int | cardMax (void) const |
| Return maximum cardinality. More...
|
|
int | lubMin (void) const |
| Return minimum of the least upper bound. More...
|
|
int | lubMax (void) const |
| Return maximum of the least upper bound. More...
|
|
int | lubMinN (unsigned int n) const |
| Return n-th smallest element of the least upper bound. More...
|
|
int | glbMin (void) const |
| Return minimum of the greatest lower bound. More...
|
|
int | glbMax (void) const |
| Return maximum of the greatest lower bound. More...
|
|
unsigned int | glbSize (void) const |
| Return the number of elements in the greatest lower bound. More...
|
|
unsigned int | lubSize (void) const |
| Return the number of elements in the least upper bound. More...
|
|
unsigned int | unknownSize (void) const |
| Return the number of unknown elements. More...
|
|
|
ModEvent | cardMin (Space &home, unsigned int m) |
| Restrict cardinality to be greater than or equal to m. More...
|
|
ModEvent | cardMax (Space &home, unsigned int m) |
| Restrict cardinality to be less than or equal to m. More...
|
|
ModEvent | include (Space &home, int i, int j) |
| Update greatest lower bound to include all elements between and including i and j. More...
|
|
ModEvent | exclude (Space &home, int i, int j) |
| Restrict least upper bound to not contain all elements between and including i and j. More...
|
|
ModEvent | include (Space &home, int i) |
| Update greatest lower bound to contain i. More...
|
|
ModEvent | exclude (Space &home, int i) |
| Restrict least upper bound to not contain i. More...
|
|
ModEvent | intersect (Space &home, int i, int j) |
| Update least upper bound to contain at most all elements between and including i and j. More...
|
|
ModEvent | intersect (Space &home, int i) |
| Update least upper bound to contain at most the element i. More...
|
|
|
typedef SetVar | VarType |
| The variable type corresponding to the view. More...
|
|
typedef SetVar ::VarImpType | VarImpType |
| The variable implementation type corresponding to the view. More...
|
|
VarImpType * | varimp (void) const |
| Return variable implementation of view. More...
|
|
unsigned int | degree (void) const |
| Return degree (number of subscribed propagators and advisors) More...
|
|
double | afc (const Space &home) const |
| Return accumulated failure count. More...
|
|
bool | assigned (void) const |
| Test whether view is assigned. More...
|
|
void | subscribe (Space &home, Propagator &p, PropCond pc, bool schedule=true) |
| Subscribe propagator p with propagation condition pc to view. More...
|
|
void | subscribe (Space &home, Advisor &a) |
| Subscribe advisor a to view. More...
|
|
void | cancel (Space &home, Propagator &p, PropCond pc) |
| Cancel subscription of propagator p with propagation condition pc to view. More...
|
|
void | cancel (Space &home, Advisor &a) |
| Cancel subscription of advisor a. More...
|
|
void | update (Space &home, bool share, VarImpView< SetVar > &y) |
| Update this view to be a clone of view y. More...
|
|
static bool | varderived (void) |
| Return whether this view is derived from a VarImpView. More...
|
|
static void | schedule (Space &home, Propagator &p, ModEvent me) |
| Schedule propagator p with modification event me. More...
|
|
static ModEvent | me (const ModEventDelta &med) |
| Return modification event for view type in med. More...
|
|
static ModEventDelta | med (ModEvent me) |
| Translate modification event me to modification event delta for view. More...
|
|
static ModEvent | modevent (const Delta &d) |
| Return modification event. More...
|
|
| VarImpView (void) |
| Default constructor. More...
|
|
| VarImpView (VarImpType *y) |
| Initialize with variable implementation y. More...
|
|
VarImpType * | x |
| Pointer to variable implementation. More...
|
|
Set view for set variables
Definition at line 60 of file view.hpp.
◆ SetView() [1/3]
Gecode::Set::SetView::SetView |
( |
void |
| ) |
|
|
inline |
Default constructor.
Definition at line 52 of file set.hpp.
◆ SetView() [2/3]
Gecode::Set::SetView::SetView |
( |
const SetVar & |
y | ) |
|
|
inline |
Initialize from set variable y.
Definition at line 54 of file set.hpp.
◆ SetView() [3/3]
Gecode::Set::SetView::SetView |
( |
SetVarImp * |
y | ) |
|
|
inline |
Initialize from set variable implementation y.
Definition at line 57 of file set.hpp.
◆ cardMin() [1/2]
unsigned int Gecode::Set::SetView::cardMin |
( |
void |
| ) |
const |
|
inline |
Return minimum cardinality.
Definition at line 86 of file set.hpp.
◆ cardMax() [1/2]
unsigned int Gecode::Set::SetView::cardMax |
( |
void |
| ) |
const |
|
inline |
Return maximum cardinality.
Definition at line 90 of file set.hpp.
◆ lubMin() [1/2]
int Gecode::Set::SetView::lubMin |
( |
void |
| ) |
const |
|
inline |
Return minimum of the least upper bound.
Definition at line 94 of file set.hpp.
◆ lubMax() [1/2]
int Gecode::Set::SetView::lubMax |
( |
void |
| ) |
const |
|
inline |
Return maximum of the least upper bound.
Definition at line 98 of file set.hpp.
◆ lubMinN()
int Gecode::Set::SetView::lubMinN |
( |
unsigned int |
n | ) |
const |
|
inline |
Return n-th smallest element of the least upper bound.
Definition at line 102 of file set.hpp.
◆ glbMin() [1/2]
int Gecode::Set::SetView::glbMin |
( |
void |
| ) |
const |
|
inline |
Return minimum of the greatest lower bound.
Definition at line 106 of file set.hpp.
◆ glbMax() [1/2]
int Gecode::Set::SetView::glbMax |
( |
void |
| ) |
const |
|
inline |
Return maximum of the greatest lower bound.
Definition at line 110 of file set.hpp.
◆ glbSize()
unsigned int Gecode::Set::SetView::glbSize |
( |
void |
| ) |
const |
|
inline |
Return the number of elements in the greatest lower bound.
Definition at line 66 of file set.hpp.
◆ lubSize()
unsigned int Gecode::Set::SetView::lubSize |
( |
void |
| ) |
const |
|
inline |
Return the number of elements in the least upper bound.
Definition at line 70 of file set.hpp.
◆ unknownSize()
unsigned int Gecode::Set::SetView::unknownSize |
( |
void |
| ) |
const |
|
inline |
Return the number of unknown elements.
Definition at line 74 of file set.hpp.
◆ contains()
bool Gecode::Set::SetView::contains |
( |
int |
i | ) |
const |
|
inline |
Test whether i is in the greatest lower bound.
Definition at line 78 of file set.hpp.
◆ notContains()
bool Gecode::Set::SetView::notContains |
( |
int |
i | ) |
const |
|
inline |
Test whether i is not in the least upper bound.
Definition at line 82 of file set.hpp.
◆ cardMin() [2/2]
ModEvent Gecode::Set::SetView::cardMin |
( |
Space & |
home, |
|
|
unsigned int |
m |
|
) |
| |
|
inline |
Restrict cardinality to be greater than or equal to m.
Definition at line 120 of file set.hpp.
◆ cardMax() [2/2]
ModEvent Gecode::Set::SetView::cardMax |
( |
Space & |
home, |
|
|
unsigned int |
m |
|
) |
| |
|
inline |
Restrict cardinality to be less than or equal to m.
Definition at line 125 of file set.hpp.
◆ include() [1/2]
ModEvent Gecode::Set::SetView::include |
( |
Space & |
home, |
|
|
int |
i, |
|
|
int |
j |
|
) |
| |
|
inline |
Update greatest lower bound to include all elements between and including i and j.
Definition at line 130 of file set.hpp.
◆ exclude() [1/2]
ModEvent Gecode::Set::SetView::exclude |
( |
Space & |
home, |
|
|
int |
i, |
|
|
int |
j |
|
) |
| |
|
inline |
Restrict least upper bound to not contain all elements between and including i and j.
Definition at line 160 of file set.hpp.
◆ include() [2/2]
Update greatest lower bound to contain i.
Definition at line 135 of file set.hpp.
◆ exclude() [2/2]
Restrict least upper bound to not contain i.
Definition at line 140 of file set.hpp.
◆ intersect() [1/2]
ModEvent Gecode::Set::SetView::intersect |
( |
Space & |
home, |
|
|
int |
i, |
|
|
int |
j |
|
) |
| |
|
inline |
Update least upper bound to contain at most all elements between and including i and j.
Definition at line 145 of file set.hpp.
◆ intersect() [2/2]
Update least upper bound to contain at most the element i.
Definition at line 150 of file set.hpp.
◆ excludeI()
Remove range sequence described by i from least upper bound.
Definition at line 164 of file set.hpp.
◆ includeI()
Include range sequence described by i in greatest lower bound.
Definition at line 155 of file set.hpp.
◆ intersectI()
template<class I >
ModEvent Gecode::Set::SetView::intersectI |
( |
Space & |
home, |
|
|
I & |
iter |
|
) |
| |
Intersect least upper bound with range sequence described by i.
Definition at line 168 of file set.hpp.
◆ modevent()
Return modification event.
Definition at line 179 of file set.hpp.
◆ glbMin() [2/2]
int Gecode::Set::SetView::glbMin |
( |
const Delta & |
d | ) |
const |
|
inline |
Return minimum value just pruned from glb.
Definition at line 182 of file set.hpp.
◆ glbMax() [2/2]
int Gecode::Set::SetView::glbMax |
( |
const Delta & |
d | ) |
const |
|
inline |
Return maximum value just pruned from glb.
Definition at line 185 of file set.hpp.
◆ glbAny()
bool Gecode::Set::SetView::glbAny |
( |
const Delta & |
d | ) |
const |
|
inline |
Test whether arbitrary values got pruned from glb.
Definition at line 188 of file set.hpp.
◆ lubMin() [2/2]
int Gecode::Set::SetView::lubMin |
( |
const Delta & |
d | ) |
const |
|
inline |
Return minimum value just pruned from lub.
Definition at line 191 of file set.hpp.
◆ lubMax() [2/2]
int Gecode::Set::SetView::lubMax |
( |
const Delta & |
d | ) |
const |
|
inline |
Return maximum value just pruned from lub.
Definition at line 194 of file set.hpp.
◆ lubAny()
bool Gecode::Set::SetView::lubAny |
( |
const Delta & |
d | ) |
const |
|
inline |
Test whether arbitrary values got pruned from lub.
Definition at line 197 of file set.hpp.
◆ operator<<()
template<class Char , class Traits >
std::basic_ostream< Char, Traits > & operator<< |
( |
std::basic_ostream< Char, Traits > & |
os, |
|
|
const SetView & |
x |
|
) |
| |
|
related |
Print set variable view.
Definition at line 85 of file print.hpp.
The documentation for this class was generated from the following files: