Generated on Tue Feb 11 2025 17:33:26 for Gecode by doxygen 1.12.0
Gecode::Int::Distinct::DomCtrl< View > Class Template Reference

Propagation controller for domain consistent distinct. More...

#include <distinct.hh>

Public Member Functions

 DomCtrl (void)
 Initialize with non-initialized view-value graph.
 
bool available (void)
 Check whether a view-value graph is available.
 
ExecStatus init (Space &home, ViewArray< View > &x)
 Initialize view-value graph for views x.
 
ExecStatus sync (void)
 Synchronize available view-value graph.
 
ExecStatus propagate (Space &home, bool &assigned)
 Perform propagation, assigned is true if a view gets assigned.
 

Protected Attributes

Graph< View > g
 Propagation is performed on a view-value graph.
 

Detailed Description

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

Propagation controller for domain consistent distinct.

The propagation controller provides convenient access to performing incremental domain consistent distinct propagation so that the routines can be reused easily.

Requires

Definition at line 250 of file distinct.hh.

Constructor & Destructor Documentation

◆ DomCtrl()

template<class View >
Gecode::Int::Distinct::DomCtrl< View >::DomCtrl ( void )
inline

Initialize with non-initialized view-value graph.

Definition at line 45 of file dom-ctrl.hpp.

Member Function Documentation

◆ available()

template<class View >
bool Gecode::Int::Distinct::DomCtrl< View >::available ( void )
inline

Check whether a view-value graph is available.

Definition at line 49 of file dom-ctrl.hpp.

◆ init()

template<class View >
ExecStatus Gecode::Int::Distinct::DomCtrl< View >::init ( Space & home,
ViewArray< View > & x )

Initialize view-value graph for views x.

Definition at line 55 of file dom-ctrl.hpp.

◆ sync()

template<class View >
ExecStatus Gecode::Int::Distinct::DomCtrl< View >::sync ( void )

Synchronize available view-value graph.

Definition at line 61 of file dom-ctrl.hpp.

◆ propagate()

template<class View >
ExecStatus Gecode::Int::Distinct::DomCtrl< View >::propagate ( Space & home,
bool & assigned )

Perform propagation, assigned is true if a view gets assigned.

Definition at line 68 of file dom-ctrl.hpp.

Member Data Documentation

◆ g

template<class View >
Graph<View> Gecode::Int::Distinct::DomCtrl< View >::g
protected

Propagation is performed on a view-value graph.

Definition at line 253 of file distinct.hh.


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