Generated on Fri Mar 20 12:35:19 2009 for cpsp-2.3.1 by doxygen 1.5.5

cpsp::gecode::GC_LatticeNeighbored2 Class Reference

#include <GC_LatticeNeighbored2.hh>


Detailed Description

Definition at line 37 of file GC_LatticeNeighbored2.hh.


Public Member Functions

virtual Gecode::Actor * copy (Gecode::Space *home, bool share)
virtual Gecode::PropCost cost (void) const
virtual Gecode::ExecStatus propagate (Gecode::Space *home)

Static Public Member Functions

static Gecode::ExecStatus post (Gecode::Space *home, Gecode::Int::IntView x0, Gecode::Int::IntView x1, const biu::IndexVec *indexedNeighVecs, Gecode::IntConLevel conLvl=Gecode::ICL_BND, unsigned int maxPrSize=MAXPROPSIZEINIT, bool maxPrSizeBin=false, unsigned int minPrSize=0)

Protected Member Functions

 GC_LatticeNeighbored2 (Gecode::Space *home, Gecode::Int::IntView x0, Gecode::Int::IntView x1, const biu::IndexVec *indexedNeighVecs, Gecode::IntConLevel conLvl, unsigned int maxPrSize, bool maxPrSizeBin, unsigned int minPrSize)
 GC_LatticeNeighbored2 (Gecode::Space *home, bool share, GC_LatticeNeighbored2 &p)

Protected Attributes

bool cancelProp
Gecode::IntConLevel conLevel
unsigned int maxPropSize
bool maxPropSizeBin
unsigned int minPropSize
const biu::IndexVec * neighborhood

Private Member Functions

biu::IndexSet & getIndexedNeighbors (const biu::LatticeFrame::index_type center, biu::IndexSet &toFill) const
Gecode::ModEvent removeNonNeighbors (Gecode::Space *home)
Gecode::ModEvent removeNonNeighbors (Gecode::Space *home, Gecode::Int::IntView &x, int center)

Static Private Attributes

static const unsigned int MAXPROPSIZEINIT = 100

Constructor & Destructor Documentation

cpsp::gecode::GC_LatticeNeighbored2::GC_LatticeNeighbored2 ( Gecode::Space *  home,
bool  share,
GC_LatticeNeighbored2 p 
) [protected]

Constructor for cloning p.

Definition at line 67 of file GC_LatticeNeighbored2.cc.

cpsp::gecode::GC_LatticeNeighbored2::GC_LatticeNeighbored2 ( Gecode::Space *  home,
Gecode::Int::IntView  x0,
Gecode::Int::IntView  x1,
const biu::IndexVec *  indexedNeighVecs,
Gecode::IntConLevel  conLvl,
unsigned int  maxPrSize,
bool  maxPrSizeBin,
unsigned int  minPrSize 
) [protected]

Constructor for posting p.

Definition at line 38 of file GC_LatticeNeighbored2.cc.


Member Function Documentation

Gecode::Actor * cpsp::gecode::GC_LatticeNeighbored2::copy ( Gecode::Space *  home,
bool  share 
) [virtual]

Copy propagator during cloning.

Definition at line 99 of file GC_LatticeNeighbored2.cc.

Gecode::PropCost cpsp::gecode::GC_LatticeNeighbored2::cost ( void   )  const [virtual]

Cost function.

Definition at line 121 of file GC_LatticeNeighbored2.cc.

biu::IndexSet & cpsp::gecode::GC_LatticeNeighbored2::getIndexedNeighbors ( const biu::LatticeFrame::index_type  center,
biu::IndexSet &  toFill 
) const [private]

Definition at line 256 of file GC_LatticeNeighbored2.cc.

Gecode::ExecStatus cpsp::gecode::GC_LatticeNeighbored2::post ( Gecode::Space *  home,
Gecode::Int::IntView  x0,
Gecode::Int::IntView  x1,
const biu::IndexVec *  indexedNeighVecs,
Gecode::IntConLevel  conLvl = Gecode::ICL_BND,
unsigned int  maxPrSize = MAXPROPSIZEINIT,
bool  maxPrSizeBin = false,
unsigned int  minPrSize = 0 
) [static]

post a binary neighbor constraint

Definition at line 80 of file GC_LatticeNeighbored2.cc.

Gecode::ExecStatus cpsp::gecode::GC_LatticeNeighbored2::propagate ( Gecode::Space *  home  )  [virtual]

Perform propagation.

Definition at line 129 of file GC_LatticeNeighbored2.cc.

Gecode::ModEvent cpsp::gecode::GC_LatticeNeighbored2::removeNonNeighbors ( Gecode::Space *  home  )  [private]

Removes all elements from x0/x1 that are not neighbored to an element in x1/x0

Definition at line 182 of file GC_LatticeNeighbored2.cc.

Gecode::ModEvent cpsp::gecode::GC_LatticeNeighbored2::removeNonNeighbors ( Gecode::Space *  home,
Gecode::Int::IntView &  x,
int  center 
) [private]

Removes all elements from x that are not neighbored to center.

Definition at line 160 of file GC_LatticeNeighbored2.cc.


Field Documentation

cancels propagation during next propagate() call

Definition at line 85 of file GC_LatticeNeighbored2.hh.

Gecode::IntConLevel cpsp::gecode::GC_LatticeNeighbored2::conLevel [protected]

Consistency level for neighbor propagation. ICL_VAL = only if one domain is bound ICL_BND = only propagating if one domain size is lower than maxPropSize ICL_DOM = full propagation

Definition at line 70 of file GC_LatticeNeighbored2.hh.

the maximal size for the minimal domain so that the neighbor constraint is propagated

Definition at line 74 of file GC_LatticeNeighbored2.hh.

if true, two successive domains have to be smaller or equal than maxPropSize so that the neighbor constraint is propagated

Definition at line 78 of file GC_LatticeNeighbored2.hh.

const unsigned int cpsp::gecode::GC_LatticeNeighbored2::MAXPROPSIZEINIT = 100 [static, private]

the initial maxPropSize value

Definition at line 55 of file GC_LatticeNeighbored2.hh.

the minimal size for the maximal domain so that the neighbor constraint is propagated

Definition at line 82 of file GC_LatticeNeighbored2.hh.

const biu::IndexVec* cpsp::gecode::GC_LatticeNeighbored2::neighborhood [protected]

the indexed neighborhood of lattice for fast access

Definition at line 64 of file GC_LatticeNeighbored2.hh.


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