Generated on Mon Aug 27 2012 17:16:03 for Gecode by doxygen 1.8.1.2
Gecode::Int::Distinct::Graph< View > Class Template Reference

View-value graph for propagation. More...

#include <distinct.hh>

Public Member Functions

 Graph (void)
 Construct graph as not yet initialized.
ExecStatus init (Space &home, ViewArray< View > &x)
 Initialize graph.
bool mark (Space &home)
 Mark edges in graph, return true if pruning is at all possible.
ExecStatus prune (Space &home, bool &assigned)
 Prune unmarked edges, assigned is true if a view got assigned.
bool sync (Space &home)
 Synchronize graph with new view domains.
- Public Member Functions inherited from Gecode::Int::ViewValGraph::Graph< View >
bool initialized (void) const
 Test whether graph has been initialized.
void purge (void)
 Purge graph if necessary (reset information to avoid overflow)

Additional Inherited Members

- Protected Types inherited from Gecode::Int::ViewValGraph::Graph< View >
typedef Support::StaticStack
< ViewNode< View > *, Region
ViewNodeStack
 Stack used during matching.
- Protected Member Functions inherited from Gecode::Int::ViewValGraph::Graph< View >
void init (Space &home, ViewNode< View > *x)
 Initialize the edges for the view node x.
bool match (ViewNodeStack &m, ViewNode< View > *x)
 Find a matching for node x.
void scc (Space &home)
 Compute the strongly connected components.
- Protected Attributes inherited from Gecode::Int::ViewValGraph::Graph< View >
ViewNode< View > ** view
 Array of view nodes.
ValNode< View > * val
 Array of value nodes.
int n_view
 Number of view nodes.
int n_val
 Number of value nodes.
unsigned int count
 Marking counter.

Detailed Description

template<class View>
class Gecode::Int::Distinct::Graph< View >

View-value graph for propagation.

Definition at line 186 of file distinct.hh.

Constructor & Destructor Documentation

template<class View >
Graph::Graph ( void  )
inline

Construct graph as not yet initialized.

Reimplemented from Gecode::Int::ViewValGraph::Graph< View >.

Definition at line 44 of file graph.hpp.

Member Function Documentation

template<class View >
ExecStatus Graph::init ( Space home,
ViewArray< View > &  x 
)
inline

Initialize graph.

Definition at line 48 of file graph.hpp.

template<class View >
bool Graph::mark ( Space home)
inline

Mark edges in graph, return true if pruning is at all possible.

Definition at line 178 of file graph.hpp.

template<class View >
ExecStatus Graph::prune ( Space home,
bool &  assigned 
)
inline

Prune unmarked edges, assigned is true if a view got assigned.

Definition at line 242 of file graph.hpp.

template<class View >
bool Graph::sync ( Space home)
inline

Synchronize graph with new view domains.

Definition at line 116 of file graph.hpp.


The documentation for this class was generated from the following files: