Generated on Mon Aug 27 2012 17:16:07 for Gecode by doxygen 1.8.1.2
Gecode::Set::Int::ChannelBool< View > Class Template Reference

Propagator for channelling between set variable and its characteristic function More...

#include <int.hh>

Classes

class  IndexAdvisor
 Advisor storing a single index More...

Public Member Functions

virtual Actorcopy (Space &home, bool)
 Copy propagator during cloning.
virtual PropCost cost (const Space &home, const ModEventDelta &med) const
 Cost function (defined as PC_QUADRATIC_LO)
virtual size_t dispose (Space &home)
 Delete propagator and return its size.
virtual ExecStatus propagate (Space &home, const ModEventDelta &med)
 Perform propagation.
virtual ExecStatus advise (Space &home, Advisor &a, const Delta &d)
 Give advice to propagator.

Static Public Member Functions

static ExecStatus post (Home home, ViewArray< Gecode::Int::BoolView > &x, View y)
 Post propagator for $x_i=j \Leftrightarrow i\in y_j$.

Protected Types

typedef MixNaryOnePropagator
< Gecode::Int::BoolView,
Gecode::Int::PC_BOOL_VAL, View,
PC_GEN_NONE
Super

Protected Member Functions

 ChannelBool (Space &home, bool share, ChannelBool &p)
 Constructor for cloning p.
 ChannelBool (Home home, ViewArray< Gecode::Int::BoolView > &, View)
 Constructor for posting.
- Protected Member Functions inherited from Gecode::MixNaryOnePropagator< Gecode::Int::BoolView, Gecode::Int::PC_BOOL_VAL, View, PC_GEN_NONE >
 MixNaryOnePropagator (Space &home, bool share, MixNaryOnePropagator &p)
 Constructor for cloning p.
 MixNaryOnePropagator (Home home, ViewArray< Gecode::Int::BoolView > &x, Viewy)
 Constructor for creation.
 MixNaryOnePropagator (Space &home, bool share, Propagator &p, ViewArray< Gecode::Int::BoolView > &x, Viewy)
 Constructor for rewriting p during cloning.
- Protected Member Functions inherited from Gecode::Propagator
 Propagator (Home home)
 Constructor for posting.
 Propagator (Space &home, bool share, Propagator &p)
 Constructor for cloning p.

Protected Attributes

Council< IndexAdvisorco
 Council for managing advisors.
SetDelta delta
 Accumulated delta information.
GLBndSet zeros
 Accumulated zero Booleans.
GLBndSet ones
 Accumulated one Booleans.
bool running
 Flag whether propagation is currently running.
- Protected Attributes inherited from Gecode::MixNaryOnePropagator< Gecode::Int::BoolView, Gecode::Int::PC_BOOL_VAL, View, PC_GEN_NONE >
ViewArray< Gecode::Int::BoolViewx
 Array of views.
View y
 Single view.

Detailed Description

template<class View>
class Gecode::Set::Int::ChannelBool< View >

Propagator for channelling between set variable and its characteristic function

Implements channelling constraints between BoolVar and a SetVar. For BoolVars $x_0,\dots,x_n$ and SetVar $y$ it propagates the constraint $x_i=1 \Leftrightarrow i\in y$.

Requires

#include <gecode/set/int.hh>

Definition at line 346 of file int.hh.

Member Typedef Documentation

Definition at line 353 of file int.hh.

Constructor & Destructor Documentation

template<class View >
Gecode::Set::Int::ChannelBool< View >::ChannelBool ( Space home,
bool  share,
ChannelBool< View > &  p 
)
inlineprotected

Constructor for cloning p.

Definition at line 109 of file channel-bool.hpp.

template<class View >
Gecode::Set::Int::ChannelBool< View >::ChannelBool ( Home  home,
ViewArray< Gecode::Int::BoolView > &  x0,
View  y0 
)
inlineprotected

Constructor for posting.

Definition at line 83 of file channel-bool.hpp.

Member Function Documentation

template<class View >
Actor * Gecode::Set::Int::ChannelBool< View >::copy ( Space home,
bool  share 
)
virtual

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 139 of file channel-bool.hpp.

template<class View >
PropCost Gecode::Set::Int::ChannelBool< View >::cost ( const Space home,
const ModEventDelta med 
) const
virtual

Cost function (defined as PC_QUADRATIC_LO)

Reimplemented from Gecode::MixNaryOnePropagator< Gecode::Int::BoolView, Gecode::Int::PC_BOOL_VAL, View, PC_GEN_NONE >.

Definition at line 125 of file channel-bool.hpp.

template<class View >
size_t Gecode::Set::Int::ChannelBool< View >::dispose ( Space home)
inlinevirtual

Delete propagator and return its size.

Reimplemented from Gecode::MixNaryOnePropagator< Gecode::Int::BoolView, Gecode::Int::PC_BOOL_VAL, View, PC_GEN_NONE >.

Definition at line 131 of file channel-bool.hpp.

template<class View >
ExecStatus Gecode::Set::Int::ChannelBool< View >::propagate ( Space home,
const ModEventDelta med 
)
virtual

Perform propagation.

Implements Gecode::Propagator.

Definition at line 145 of file channel-bool.hpp.

template<class View >
ExecStatus Gecode::Set::Int::ChannelBool< View >::advise ( Space home,
Advisor a,
const Delta d 
)
virtual

Give advice to propagator.

Reimplemented from Gecode::Propagator.

Definition at line 195 of file channel-bool.hpp.

template<class View >
ExecStatus Gecode::Set::Int::ChannelBool< View >::post ( Home  home,
ViewArray< Gecode::Int::BoolView > &  x,
View  y 
)
inlinestatic

Post propagator for $x_i=j \Leftrightarrow i\in y_j$.

Definition at line 116 of file channel-bool.hpp.

Member Data Documentation

template<class View>
Council<IndexAdvisor> Gecode::Set::Int::ChannelBool< View >::co
protected

Council for managing advisors.

Definition at line 383 of file int.hh.

template<class View>
SetDelta Gecode::Set::Int::ChannelBool< View >::delta
protected

Accumulated delta information.

Definition at line 385 of file int.hh.

template<class View>
GLBndSet Gecode::Set::Int::ChannelBool< View >::zeros
protected

Accumulated zero Booleans.

Definition at line 387 of file int.hh.

template<class View>
GLBndSet Gecode::Set::Int::ChannelBool< View >::ones
protected

Accumulated one Booleans.

Definition at line 389 of file int.hh.

template<class View>
bool Gecode::Set::Int::ChannelBool< View >::running
protected

Flag whether propagation is currently running.

Definition at line 391 of file int.hh.


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