Gecode::VarImpView< Var > Class Template Reference
[Programming views for variables]
Base-class for variable implementation views. More...
#include <view.hpp>
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. | |
| void | varimp (VarImpType *y) |
| Set variable implementation to y. | |
Protected Attributes | |
| VarImpType * | x |
| Pointer to variable implementation. | |
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. | |
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. | |
Delta information for advisors | |
|
| |
| static ModEvent | modevent (const Delta &d) |
| Return modification event. | |
Domain tests | |
|
| |
| bool | assigned (void) const |
| Test whether view is assigned. | |
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 | reschedule (Space &home, Propagator &p, PropCond pc) |
| Re-schedule propagator p with propagation condition pc. | |
| void | subscribe (Space &home, Advisor &a, bool fail=false) |
| Subscribe advisor a to view. | |
| void | cancel (Space &home, Advisor &a, bool fail=false) |
| Cancel subscription of advisor a. | |
Cloning | |
|
| |
| void | update (Space &home, VarImpView< Var > &y) |
| Update this view to be a clone of view y. | |
Ordering | |
|
| |
| bool | operator< (const VarImpView &y) const |
| Whether this view comes before view y (arbitray order). | |
Detailed Description
template<class Var>
class Gecode::VarImpView< Var >
Base-class for variable implementation views.
Definition at line 133 of file view.hpp.
Member Typedef Documentation
template<class Var>
| typedef Var Gecode::VarImpView< Var >::VarType |
template<class Var>
| typedef Var::VarImpType Gecode::VarImpView< Var >::VarImpType |
Constructor & Destructor Documentation
template<class Var >
| Gecode::VarImpView< Var >::VarImpView | ( | void | ) | [inline, protected] |
template<class Var >
| Gecode::VarImpView< Var >::VarImpView | ( | VarImpType * | y | ) | [inline, protected] |
Member Function Documentation
template<class Var >
| void Gecode::VarImpView< Var >::varimp | ( | VarImpType * | y | ) | [inline, protected] |
template<class Var >
| bool Gecode::VarImpView< Var >::varderived | ( | void | ) | [inline, static] |
Return whether this view is derived from a VarImpView.
template<class Var >
| Var::VarImpType * Gecode::VarImpView< Var >::varimp | ( | void | ) | const [inline] |
template<class Var >
| unsigned int Gecode::VarImpView< Var >::degree | ( | void | ) | const [inline] |
template<class Var >
| double Gecode::VarImpView< Var >::afc | ( | void | ) | const [inline] |
template<class Var >
| bool Gecode::VarImpView< Var >::assigned | ( | void | ) | const [inline] |
template<class Var >
| void Gecode::VarImpView< Var >::schedule | ( | Space & | home, | |
| Propagator & | p, | |||
| ModEvent | me | |||
| ) | [inline, static] |
template<class Var >
| ModEvent Gecode::VarImpView< Var >::me | ( | const ModEventDelta & | med | ) | [inline, static] |
template<class Var >
| ModEventDelta Gecode::VarImpView< Var >::med | ( | ModEvent | me | ) | [inline, static] |
Translate modification event me to modification event delta for view.
Reimplemented in Gecode::Float::FloatView, Gecode::Int::IntView, and Gecode::Int::BoolView.
template<class Var >
| void Gecode::VarImpView< Var >::subscribe | ( | Space & | home, | |
| Propagator & | p, | |||
| PropCond | pc, | |||
| bool | schedule = true | |||
| ) | [inline] |
template<class Var >
| void Gecode::VarImpView< Var >::cancel | ( | Space & | home, | |
| Propagator & | p, | |||
| PropCond | pc | |||
| ) | [inline] |
template<class Var >
| void Gecode::VarImpView< Var >::reschedule | ( | Space & | home, | |
| Propagator & | p, | |||
| PropCond | pc | |||
| ) | [inline] |
template<class Var >
| void Gecode::VarImpView< Var >::subscribe | ( | Space & | home, | |
| Advisor & | a, | |||
| bool | fail = false | |||
| ) | [inline] |
template<class Var >
| void Gecode::VarImpView< Var >::cancel | ( | Space & | home, | |
| Advisor & | a, | |||
| bool | fail = false | |||
| ) | [inline] |
template<class Var >
| ModEvent Gecode::VarImpView< Var >::modevent | ( | const Delta & | d | ) | [inline, static] |
Return modification event.
Reimplemented in Gecode::Set::SetView.
template<class Var>
| void Gecode::VarImpView< Var >::update | ( | Space & | home, | |
| VarImpView< Var > & | y | |||
| ) | [inline] |
template<class Var>
| bool Gecode::VarImpView< Var >::operator< | ( | const VarImpView< Var > & | y | ) | const |
Whether this view comes before view y (arbitray order).
Member Data Documentation
template<class Var>
VarImpType* Gecode::VarImpView< Var >::x [protected] |
The documentation for this class was generated from the following file:
- gecode/kernel/view.hpp
