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

Gecode::Int::Count::NqView< 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::NqView< VX, VY, VZ, shr >

Propagator for counting views (different from 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 367 of file count.hh.


Public Member Functions

 NqView (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\}\neq z+c$.

Protected Member Functions

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

Constructor & Destructor Documentation

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

Constructor for cloning p.

Definition at line 242 of file view.icc.

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

Constructor for creation.

Definition at line 226 of file view.icc.


Member Function Documentation

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

Create copy during cloning.

Implements Gecode::Actor.

Definition at line 248 of file view.icc.

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

Perform propagation.

Implements Gecode::Propagator.

Definition at line 278 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
Reflection::ActorSpec Gecode::Int::Count::NqView< 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 260 of file view.icc.

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

Post propagator according to specification.

Definition at line 266 of file view.icc.

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

Name of this propagator.

Definition at line 254 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
ExecStatus Gecode::Int::Count::NqView< 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\}\neq z+c$.

Definition at line 232 of file view.icc.


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