Generated on Mon Aug 25 11:35:50 2008 for Gecode by doxygen 1.5.6

Gecode::Int::Circuit::Base< View > Class Template Reference

#include <circuit.hh>

Inherits NaryPropagator< View, PC_INT_DOM >.

Inherited by Gecode::Int::Circuit::Dom< View >, and Gecode::Int::Circuit::Val< View >.

List of all members.


Detailed Description

template<class View>
class Gecode::Int::Circuit::Base< View >

Base-class for circuit propagator.

Provides routines for checking that the induced variable value graph is strongly connected and for pruning short cycles.

Definition at line 59 of file circuit.hh.


Public Member Functions

virtual size_t dispose (Space *home)
 Delete propagator and return its size.

Protected Member Functions

 Base (Space *home, bool share, Base &p)
 Constructor for cloning p.
 Base (Space *home, ViewArray< View > &x)
 Constructor for posting.
ExecStatus connected (Space *home)
 Check whether the view value graph is strongly connected.
ExecStatus path (Space *home)
 Ensure path property: prune edges that could give to small cycles.
Reflection::ActorSpec spec (const Space *home, Reflection::VarMap &m, const Support::Symbol &name) const
 Specification for this propagator.

Protected Attributes

ViewArray< View > y
 Array for performing value propagation for distinct.

Constructor & Destructor Documentation

template<class View>
Gecode::Int::Circuit::Base< View >::Base ( Space home,
bool  share,
Base< View > &  p 
) [inline, protected]

Constructor for cloning p.

Definition at line 47 of file base.icc.

template<class View>
Gecode::Int::Circuit::Base< View >::Base ( Space home,
ViewArray< View > &  x 
) [inline, protected]

Constructor for posting.

Definition at line 42 of file base.icc.


Member Function Documentation

template<class View>
ExecStatus Gecode::Int::Circuit::Base< View >::connected ( Space home  )  [inline, protected]

Check whether the view value graph is strongly connected.

First non-assigned node.

Information needed for checking scc's

Definition at line 69 of file base.icc.

template<class View>
ExecStatus Gecode::Int::Circuit::Base< View >::path ( Space home  )  [inline, protected]

Ensure path property: prune edges that could give to small cycles.

Definition at line 200 of file base.icc.

template<class View>
Reflection::ActorSpec Gecode::Int::Circuit::Base< View >::spec ( const Space home,
Reflection::VarMap m,
const Support::Symbol name 
) const [inline, protected]

Specification for this propagator.

Reimplemented from Gecode::NaryPropagator< View, PC_INT_DOM >.

Definition at line 258 of file base.icc.

template<class View>
size_t Gecode::Int::Circuit::Base< View >::dispose ( Space home  )  [inline, virtual]

Delete propagator and return its size.

Reimplemented from Gecode::NaryPropagator< View, PC_INT_DOM >.

Definition at line 251 of file base.icc.


Member Data Documentation

template<class View>
ViewArray<View> Gecode::Int::Circuit::Base< View >::y [protected]

Array for performing value propagation for distinct.

Definition at line 63 of file circuit.hh.


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