Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph Class Reference
#include <distinct.hh>
Detailed Description
template<class View>
class Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph
View-value graph for propagation.
Definition at line 200 of file distinct.hh.
Public Types | |
typedef Support::SentinelStack < ViewNode< View > * > | MatchStack |
Stack used during matching. | |
Public Member Functions | |
ViewValGraph (void) | |
Construct graph as not yet initialized. | |
bool | initialized (void) const |
Test whether graph has been initialized. | |
ExecStatus | init (Space *home, int n, View *x) |
Initialize graph. | |
void | mark (void) |
Mark edges in graph. | |
ExecStatus | tell (Space *home, bool &assigned) |
Prune unmarked edges, assigned is true if a view got assigned. | |
void | purge (void) |
Purge graph if necessary. | |
bool | sync (void) |
Synchronize graph with new view domains. | |
bool | match (MatchStack &m, ViewNode< View > *x) |
Find a matching for node x. | |
Public Attributes | |
ViewNode< View > ** | view |
Array of view nodes. | |
int | n_view |
Number of view nodes. | |
ValNode< View > * | val |
Array of value nodes. | |
int | n_val |
Number of value nodes. | |
unsigned int | count |
Marking counter. |
Member Typedef Documentation
template<class View>
typedef Support::SentinelStack<ViewNode<View>*> Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::MatchStack |
Constructor & Destructor Documentation
template<class View>
Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::ViewValGraph | ( | void | ) | [inline] |
Member Function Documentation
template<class View>
bool Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::initialized | ( | void | ) | const [inline] |
template<class View>
ExecStatus Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::init | ( | Space * | home, | |
int | n, | |||
View * | x | |||
) | [inline] |
template<class View>
void Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::mark | ( | void | ) | [inline] |
template<class View>
ExecStatus Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::tell | ( | Space * | home, | |
bool & | assigned | |||
) | [inline] |
template<class View>
void Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::purge | ( | void | ) | [inline] |
template<class View>
bool Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::sync | ( | void | ) | [inline] |
template<class View>
bool Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::match | ( | MatchStack & | m, | |
ViewNode< View > * | x | |||
) | [inline] |
Member Data Documentation
template<class View>
ViewNode<View>** Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::view |
template<class View>
int Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::n_view |
template<class View>
ValNode<View>* Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::val |
template<class View>
int Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::n_val |
template<class View>
unsigned int Gecode::Int::Distinct::DomCtrl< View >::ViewValGraph::count |
The documentation for this class was generated from the following files:
- gecode/int/distinct.hh (Revision: 7285)
- gecode/int/distinct/dom.icc (Revision: 7359)