Generated on Wed Jan 4 17:49:21 2006 for Gecode by doxygen 1.4.6

Gecode::Int::Element::Int< ViewA, ViewB > Class Template Reference
[Integer propagators]

#include <element.hh>

Inherits Gecode::Propagator.

List of all members.


Detailed Description

template<class ViewA, class ViewB>
class Gecode::Int::Element::Int< ViewA, ViewB >

Element propagator for array of integers

Requires

 #include "int/element.hh" 

Definition at line 59 of file element.hh.

Public Member Functions

virtual Actorcopy (Space *home, bool share)
 Perform copying during cloning.
virtual PropCost cost (void) const
 Const function (return PC_BINARY_HI).
virtual ExecStatus propagate (Space *home)
 Perform propagation.
virtual void flush (void)
 Flush cached index-value map.
virtual size_t size (void) const
 Return size of index-value map.
virtual ~Int (void)
 Destructor.

Static Public Member Functions

static ExecStatus post (Space *home, IntSharedArray &i, ViewA x0, ViewB x1)
 Post propagator for $i_{x_0}=x_1$.

Protected Member Functions

 Int (Space *home, bool shared, Int &p)
 Constructor for cloning p.
 Int (Space *home, IntSharedArray &i, ViewA x0, ViewB x1)
 Constructor for creation.

Protected Attributes

ViewA x0
 View for index.
ViewB x1
 View for result.
IntSharedArray c
 Shared array of integer values.
IdxValMapivm
 Cache for index-value map.


Constructor & Destructor Documentation

template<class ViewA, class ViewB>
Gecode::Int::Element::Int< ViewA, ViewB >::Int Space home,
bool  shared,
Int< ViewA, ViewB > &  p
[inline, protected]
 

Constructor for cloning p.

Definition at line 333 of file int.icc.

template<class ViewA, class ViewB>
Gecode::Int::Element::Int< ViewA, ViewB >::Int Space home,
IntSharedArray i,
ViewA  x0,
ViewB  x1
[inline, protected]
 

Constructor for creation.

Definition at line 296 of file int.icc.

template<class ViewA, class ViewB>
Gecode::Int::Element::Int< ViewA, ViewB >::~Int void   )  [virtual]
 

Destructor.

Definition at line 313 of file int.icc.


Member Function Documentation

template<class ViewA, class ViewB>
Actor * Gecode::Int::Element::Int< ViewA, ViewB >::copy Space home,
bool  share
[virtual]
 

Perform copying during cloning.

Implements Gecode::Actor.

Definition at line 342 of file int.icc.

template<class ViewA, class ViewB>
PropCost Gecode::Int::Element::Int< ViewA, ViewB >::cost void   )  const [virtual]
 

Const function (return PC_BINARY_HI).

Implements Gecode::Propagator.

Definition at line 349 of file int.icc.

template<class ViewA, class ViewB>
ExecStatus Gecode::Int::Element::Int< ViewA, ViewB >::propagate Space home  )  [virtual]
 

Perform propagation.

Implements Gecode::Propagator.

Definition at line 355 of file int.icc.

template<class ViewA, class ViewB>
ExecStatus Gecode::Int::Element::Int< ViewA, ViewB >::post Space home,
IntSharedArray i,
ViewA  x0,
ViewB  x1
[static]
 

Post propagator for $i_{x_0}=x_1$.

Definition at line 304 of file int.icc.

template<class ViewA, class ViewB>
void Gecode::Int::Element::Int< ViewA, ViewB >::flush void   )  [virtual]
 

Flush cached index-value map.

Reimplemented from Gecode::Actor.

Definition at line 321 of file int.icc.

template<class ViewA, class ViewB>
size_t Gecode::Int::Element::Int< ViewA, ViewB >::size void   )  const [virtual]
 

Return size of index-value map.

Definition at line 327 of file int.icc.


Member Data Documentation

template<class ViewA, class ViewB>
ViewA Gecode::Int::Element::Int< ViewA, ViewB >::x0 [protected]
 

View for index.

Definition at line 62 of file element.hh.

template<class ViewA, class ViewB>
ViewB Gecode::Int::Element::Int< ViewA, ViewB >::x1 [protected]
 

View for result.

Definition at line 64 of file element.hh.

template<class ViewA, class ViewB>
IntSharedArray Gecode::Int::Element::Int< ViewA, ViewB >::c [protected]
 

Shared array of integer values.

Definition at line 66 of file element.hh.

template<class ViewA, class ViewB>
IdxValMap* Gecode::Int::Element::Int< ViewA, ViewB >::ivm [protected]
 

Cache for index-value map.

Definition at line 68 of file element.hh.


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