Generated on Sat Feb 7 2015 02:01:52 for Gecode by doxygen 1.8.9.1
Gecode::Set::Precede::Single< View > Class Template Reference

Single value precedence propagator. More...

#include <precede.hh>

Classes

class  Index
 Advisors for views (by position in array) More...
 

Public Member Functions

virtual Propagatorcopy (Space &home, bool share)
 Copy propagator during cloning. More...
 
virtual PropCost cost (const Space &, const ModEventDelta &) const
 Cost function. More...
 
virtual size_t dispose (Space &home)
 Delete propagator and return its size. More...
 
virtual ExecStatus advise (Space &home, Advisor &a, const Delta &d)
 Give advice to propagator. More...
 
virtual ExecStatus propagate (Space &home, const ModEventDelta &med)
 Perform propagation. More...
 
- Public Member Functions inherited from Gecode::Propagator
ModEventDelta modeventdelta (void) const
 Return the modification event delta. More...
 
double afc (const Space &home) const
 Return the accumlated failure count. More...
 
- Public Member Functions inherited from Gecode::Actor

Static Public Member Functions

static ExecStatus post (Home home, ViewArray< View > &x, int s, int t)
 Post propagator that s precedes t in x. More...
 
- Static Public Member Functions inherited from Gecode::Actor
static void * operator new (size_t s, Space &home)
 Allocate memory from space. More...
 
static void operator delete (void *p, Space &home)
 No-op for exceptions. More...
 

Protected Member Functions

ExecStatus updateAlpha (Space &home)
 Update the alpha pointer. More...
 
ExecStatus updateBeta (Space &home)
 Update the beta pointer. More...
 
 Single (Home home, ViewArray< View > &x, int s, int t, int beta, int gamma)
 Constructor for posting. More...
 
 Single (Space &home, bool share, Single< View > &p)
 Constructor for cloning p. More...
 
- Protected Member Functions inherited from Gecode::NaryPropagator< View, PC_SET_NONE >
 NaryPropagator (Space &home, bool share, NaryPropagator &p)
 Constructor for cloning p. More...
 
 NaryPropagator (Space &home, bool share, Propagator &p, ViewArray< View > &x)
 Constructor for rewriting p during cloning. More...
 
 NaryPropagator (Home home, ViewArray< View > &x)
 Constructor for creation. More...
 
- Protected Member Functions inherited from Gecode::Propagator
 Propagator (Home home)
 Constructor for posting. More...
 
 Propagator (Space &home, bool share, Propagator &p)
 Constructor for cloning p. More...
 
Propagatorfwd (void) const
 Return forwarding pointer during copying. More...
 

Protected Attributes

Council< Indexc
 The advisor council. More...
 
int s
 The value s must precede t. More...
 
int t
 
int alpha
 Pointers updated during propagation. More...
 
int beta
 
int gamma
 
- Protected Attributes inherited from Gecode::NaryPropagator< View, PC_SET_NONE >
ViewArray< View > x
 Array of views. More...
 

Detailed Description

template<class View>
class Gecode::Set::Precede::Single< View >

Single value precedence propagator.

The propagator is based on: Yat Chiu Law and Jimmy H.M. Lee, Global Constraints for Integer and Set Value Precedence, CP 2004, 362–376.

Requires

Definition at line 67 of file precede.hh.

Constructor & Destructor Documentation

template<class View >
Gecode::Set::Precede::Single< View >::Single ( Home  home,
ViewArray< View > &  x,
int  s,
int  t,
int  beta,
int  gamma 
)
inlineprotected

Constructor for posting.

Definition at line 92 of file single.hpp.

template<class View >
Gecode::Set::Precede::Single< View >::Single ( Space home,
bool  share,
Single< View > &  p 
)
inlineprotected

Constructor for cloning p.

Definition at line 146 of file single.hpp.

Member Function Documentation

template<class View >
ExecStatus Gecode::Set::Precede::Single< View >::updateAlpha ( Space home)
inlineprotected

Update the alpha pointer.

Definition at line 60 of file single.hpp.

template<class View >
ExecStatus Gecode::Set::Precede::Single< View >::updateBeta ( Space home)
inlineprotected

Update the beta pointer.

Definition at line 77 of file single.hpp.

template<class View >
Propagator * Gecode::Set::Precede::Single< View >::copy ( Space home,
bool  share 
)
virtual

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 154 of file single.hpp.

template<class View >
PropCost Gecode::Set::Precede::Single< View >::cost ( const Space ,
const ModEventDelta  
) const
virtual

Cost function.

Reimplemented from Gecode::NaryPropagator< View, PC_SET_NONE >.

Definition at line 189 of file single.hpp.

template<class View >
size_t Gecode::Set::Precede::Single< View >::dispose ( Space home)
inlinevirtual

Delete propagator and return its size.

Reimplemented from Gecode::NaryPropagator< View, PC_SET_NONE >.

Definition at line 178 of file single.hpp.

template<class View >
ExecStatus Gecode::Set::Precede::Single< View >::advise ( Space home,
Advisor a,
const Delta d 
)
virtual

Give advice to propagator.

Reimplemented from Gecode::Propagator.

Definition at line 195 of file single.hpp.

template<class View >
ExecStatus Gecode::Set::Precede::Single< View >::propagate ( Space home,
const ModEventDelta med 
)
virtual

Perform propagation.

Implements Gecode::Propagator.

Definition at line 220 of file single.hpp.

template<class View >
ExecStatus Gecode::Set::Precede::Single< View >::post ( Home  home,
ViewArray< View > &  x,
int  s,
int  t 
)
inlinestatic

Post propagator that s precedes t in x.

Definition at line 104 of file single.hpp.

Member Data Documentation

template<class View>
Council<Index> Gecode::Set::Precede::Single< View >::c
protected

The advisor council.

Definition at line 81 of file precede.hh.

template<class View>
int Gecode::Set::Precede::Single< View >::s
protected

The value s must precede t.

Definition at line 83 of file precede.hh.

template<class View>
int Gecode::Set::Precede::Single< View >::t
protected

Definition at line 83 of file precede.hh.

template<class View>
int Gecode::Set::Precede::Single< View >::alpha
protected

Pointers updated during propagation.

Definition at line 85 of file precede.hh.

template<class View>
int Gecode::Set::Precede::Single< View >::beta
protected

Definition at line 85 of file precede.hh.

template<class View>
int Gecode::Set::Precede::Single< View >::gamma
protected

Definition at line 85 of file precede.hh.


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