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

Gecode::Int::Count::BaseView< VX, VY, VZ, shr > Class Template Reference

#include <count.hh>

Inherits Gecode::Propagator.

Inherited by Gecode::Int::Count::EqView< VX, VY, VZ, shr >, Gecode::Int::Count::GqView< VX, VY, VZ, shr >, Gecode::Int::Count::LqView< VX, VY, VZ, shr >, and Gecode::Int::Count::NqView< VX, VY, VZ, shr >.

List of all members.


Detailed Description

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

Base-class for count propagators (view).

Definition at line 283 of file count.hh.


Public Member Functions

virtual size_t dispose (Space *home)
 Delete propagator and return its size.
virtual PropCost cost (ModEventDelta med) const
 Cost function (defined as dynamic PC_LINEAR_LO).

Protected Member Functions

 BaseView (Space *home, bool shr, BaseView &p)
 Constructor for cloning p.
 BaseView (Space *home, ViewArray< VX > &x, VY y, VZ z, int c)
 Constructor for creation.
Reflection::ActorSpec spec (const Space *home, Reflection::VarMap &m, const Support::Symbol &name) const
 Specification for this propagator.
void count (Space *home)
 Count how many views are equal now.
int atleast (void) const
 How many views are at least equal.
int atmost (void) const
 How many views are at most equal.

Static Protected Member Functions

static bool sharing (const ViewArray< VX > &x, const VY &y, const VZ &z)
 Test whether there is sharing of z with x or y.

Protected Attributes

ViewArray< VX > x
 Views still to count.
VY y
 View to compare to.
VZ z
 View which yields result of counting.
int c
 Number of views which are equal and have been eliminated.

Constructor & Destructor Documentation

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

Constructor for cloning p.

Definition at line 57 of file view.icc.

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

Constructor for creation.

Definition at line 47 of file view.icc.


Member Function Documentation

template<class VX, class VY, class VZ, bool shr>
Reflection::ActorSpec Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::spec ( const Space home,
Reflection::VarMap m,
const Support::Symbol name 
) const [inline, protected]

Specification for this propagator.

Definition at line 73 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
size_t Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::dispose ( Space home  )  [inline, virtual]

Delete propagator and return its size.

Reimplemented from Gecode::Actor.

Definition at line 84 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
PropCost Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::cost ( ModEventDelta  med  )  const [inline, virtual]

Cost function (defined as dynamic PC_LINEAR_LO).

Implements Gecode::Propagator.

Definition at line 67 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
void Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::count ( Space home  )  [inline, protected]

Count how many views are equal now.

Definition at line 95 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
int Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::atleast ( void   )  const [inline, protected]

How many views are at least equal.

Definition at line 116 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
int Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::atmost ( void   )  const [inline, protected]

How many views are at most equal.

Definition at line 122 of file view.icc.

template<class VX, class VY, class VZ, bool shr>
bool Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::sharing ( const ViewArray< VX > &  x,
const VY &  y,
const VZ &  z 
) [inline, static, protected]

Test whether there is sharing of z with x or y.

Definition at line 128 of file view.icc.


Member Data Documentation

template<class VX, class VY, class VZ, bool shr>
ViewArray<VX> Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::x [protected]

Views still to count.

Definition at line 286 of file count.hh.

template<class VX, class VY, class VZ, bool shr>
VY Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::y [protected]

View to compare to.

Definition at line 288 of file count.hh.

template<class VX, class VY, class VZ, bool shr>
VZ Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::z [protected]

View which yields result of counting.

Definition at line 290 of file count.hh.

template<class VX, class VY, class VZ, bool shr>
int Gecode::Int::Count::BaseView< VX, VY, VZ, shr >::c [protected]

Number of views which are equal and have been eliminated.

Definition at line 292 of file count.hh.


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