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

Gecode::Int::Count::LqView< VX, VY, VZ, shr > Class Template Reference
[Integer propagators]

#include <count.hh>

Inherits Gecode::Int::Count::BaseView< VX, VY, VZ, shr >.

List of all members.


Detailed Description

template<class VX, class VY, class VZ, bool shr>
class Gecode::Int::Count::LqView< VX, VY, VZ, shr >

Propagator for counting views (less or equal to number of equal views)

Not all combinations of views are possible. The types VX and VY must be either equal, or VY must be ConstIntView.

Requires

 #include "gecode/int/count.hh" 

Definition at line 408 of file count.hh.


Public Member Functions

 LqView (Space *home, ViewArray< VX > &x, VY y, VZ z, int c)
 Constructor for creation.
virtual Actorcopy (Space *home, bool shr)
 Create copy during cloning.
virtual ExecStatus propagate (Space *home, ModEventDelta med)
 Perform propagation.
virtual Reflection::ActorSpec spec (const Space *home, Reflection::VarMap &m) const
 Specification for this propagator.

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)
 Name of this propagator.
static ExecStatus post (Space *home, ViewArray< VX > &x, VY y, VZ z, int c)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\leq z+c$.

Protected Member Functions

 LqView (Space *home, bool shr, LqView &p)
 Constructor for cloning p.

Constructor & Destructor Documentation

template<class VX, class VY, class VZ, bool shr>
Gecode::Int::Count::LqView< VX, VY, VZ, shr >::LqView ( Space home,
bool  shr,
LqView< VX, VY, VZ, shr > &  p 
) [inline, protected]

Constructor for cloning p.

Definition at line 321 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
Gecode::Int::Count::LqView< VX, VY, VZ, shr >::LqView ( Space home,
ViewArray< VX > &  x,
VY  y,
VZ  z,
int  c 
) [inline]

Constructor for creation.

Definition at line 302 of file view.icc.


Member Function Documentation

template<class VX, class VY, class VZ, bool shr>
Actor * Gecode::Int::Count::LqView< VX, VY, VZ, shr >::copy ( Space home,
bool  shr 
) [inline, virtual]

Create copy during cloning.

Implements Gecode::Actor.

Definition at line 327 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
ExecStatus Gecode::Int::Count::LqView< VX, VY, VZ, shr >::propagate ( Space home,
ModEventDelta  med 
) [inline, virtual]

Perform propagation.

Implements Gecode::Propagator.

Definition at line 357 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
Reflection::ActorSpec Gecode::Int::Count::LqView< VX, VY, VZ, shr >::spec ( const Space home,
Reflection::VarMap m 
) const [inline, virtual]

Specification for this propagator.

Reimplemented from Gecode::Actor.

Definition at line 339 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
void Gecode::Int::Count::LqView< VX, VY, VZ, shr >::post ( Space home,
Reflection::VarMap vars,
const Reflection::ActorSpec spec 
) [inline, static]

Post propagator according to specification.

Definition at line 345 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
Support::Symbol Gecode::Int::Count::LqView< VX, VY, VZ, shr >::ati ( void   )  [inline, static]

Name of this propagator.

Definition at line 333 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
ExecStatus Gecode::Int::Count::LqView< VX, VY, VZ, shr >::post ( Space home,
ViewArray< VX > &  x,
VY  y,
VZ  z,
int  c 
) [inline, static]

Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\leq z+c$.

Definition at line 308 of file view.icc.


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