Public Types |
typedef Var | VarType |
| The variable type corresponding to the view.
|
typedef Var::VarImpType | VarImpType |
| The variable implementation type corresponding to the view.
|
Protected Member Functions |
| VarImpView (void) |
| Default constructor.
|
| VarImpView (VarImpType *y) |
| Initialize with variable implementation y.
|
Protected Attributes |
VarImpType * | x |
| Pointer to variable implementation.
|
View comparison |
template<class VarA , class VarB > |
bool | same (const VarImpView< VarA > &x, const VarImpView< VarB > &y) |
| Test whether views x and y are the same.
|
template<class ViewA , class ViewB > |
bool | before (const ViewA &x, const ViewB &y) |
| Test whether view x comes before y (arbitrary order)
|
Generic view information |
static bool | varderived (void) |
| Return whether this view is derived from a VarImpView.
|
VarImpType * | varimp (void) const |
| Return variable implementation of view.
|
unsigned int | degree (void) const |
| Return degree (number of subscribed propagators and advisors)
|
double | afc (void) const |
| Return accumulated failure count (plus degree)
|
Domain tests |
bool | assigned (void) const |
| Test whether view is assigned.
|
View-dependent propagator support |
static void | schedule (Space &home, Propagator &p, ModEvent me) |
| Schedule propagator p with modification event me.
|
static ModEvent | me (const ModEventDelta &med) |
| Return modification event for view type in med.
|
static ModEventDelta | med (ModEvent me) |
| Translate modification event me to modification event delta for view.
|
Dependencies |
void | subscribe (Space &home, Propagator &p, PropCond pc, bool schedule=true) |
| Subscribe propagator p with propagation condition pc to view.
|
void | cancel (Space &home, Propagator &p, PropCond pc) |
| Cancel subscription of propagator p with propagation condition pc to view.
|
void | subscribe (Space &home, Advisor &a) |
| Subscribe advisor a to view.
|
void | cancel (Space &home, Advisor &a) |
| Cancel subscription of advisor a.
|
Delta information for advisors |
static ModEvent | modevent (const Delta &d) |
| Return modification event.
|
Cloning |
void | update (Space &home, bool share, VarImpView< Var > &y) |
| Update this view to be a clone of view y.
|
Base-class for variable implementation views.