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

Gecode::Int::Linear::ReGqBoolView< XV, YV, BV > Class Template Reference
[Integer propagators]

#include <linear.hh>

Inherits Gecode::Int::Linear::ReLinBoolView< XV, YV, BV >.

List of all members.


Detailed Description

template<class XV, class YV, class BV>
class Gecode::Int::Linear::ReGqBoolView< XV, YV, BV >

Propagator for reified greater or equal to Boolean sum (cardinality)

Requires

Definition at line 1337 of file linear.hh.


Public Member Functions

virtual Actorcopy (Space *home, bool share)
 Create copy during cloning.
virtual ExecStatus propagate (Space *home, ModEventDelta med)
 Perform propagation.
virtual Reflection::ActorSpec spec (const Space *home, Reflection::VarMap &m) const
 Return specification for this propagator given a variable map m.

Static Public Member Functions

static void post (Space *home, Reflection::VarMap &vars, const Reflection::ActorSpec &spec)
 Post propagator according to specification.
static Support::Symbol ati (void)
 Mangled propagator name.
static ExecStatus post (Space *home, ViewArray< XV > &x, YV y, int c, BV b)
 Post propagator for $\left(\sum_{i=0}^{|x|-1}x_i \geq y+c\right)\Leftrightarrow b$.

Protected Member Functions

 ReGqBoolView (Space *home, bool share, ReGqBoolView &p)
 Constructor for cloning p.
 ReGqBoolView (Space *home, ViewArray< XV > &x, YV y, int c, BV b)
 Constructor for creation.

Constructor & Destructor Documentation

template<class XV, class YV, class BV>
Gecode::Int::Linear::ReGqBoolView< XV, YV, BV >::ReGqBoolView ( Space home,
bool  share,
ReGqBoolView< XV, YV, BV > &  p 
) [protected]

Constructor for cloning p.

template<class XV, class YV, class BV>
Gecode::Int::Linear::ReGqBoolView< XV, YV, BV >::ReGqBoolView ( Space home,
ViewArray< XV > &  x,
YV  y,
int  c,
BV  b 
) [protected]

Constructor for creation.


Member Function Documentation

template<class XV, class YV, class BV>
virtual Actor* Gecode::Int::Linear::ReGqBoolView< XV, YV, BV >::copy ( Space home,
bool  share 
) [virtual]

Create copy during cloning.

Implements Gecode::Actor.

template<class XV, class YV, class BV>
virtual ExecStatus Gecode::Int::Linear::ReGqBoolView< XV, YV, BV >::propagate ( Space home,
ModEventDelta  med 
) [virtual]

Perform propagation.

Implements Gecode::Propagator.

template<class XV, class YV, class BV>
virtual Reflection::ActorSpec Gecode::Int::Linear::ReGqBoolView< XV, YV, BV >::spec ( const Space home,
Reflection::VarMap m 
) const [virtual]

Return specification for this propagator given a variable map m.

Reimplemented from Gecode::Actor.

template<class XV, class YV, class BV>
static void Gecode::Int::Linear::ReGqBoolView< XV, YV, BV >::post ( Space home,
Reflection::VarMap vars,
const Reflection::ActorSpec spec 
) [static]

Post propagator according to specification.

template<class XV, class YV, class BV>
static Support::Symbol Gecode::Int::Linear::ReGqBoolView< XV, YV, BV >::ati ( void   )  [static]

Mangled propagator name.

template<class XV, class YV, class BV>
static ExecStatus Gecode::Int::Linear::ReGqBoolView< XV, YV, BV >::post ( Space home,
ViewArray< XV > &  x,
YV  y,
int  c,
BV  b 
) [static]

Post propagator for $\left(\sum_{i=0}^{|x|-1}x_i \geq y+c\right)\Leftrightarrow b$.


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