Generated on Tue Apr 18 10:23:50 2017 for Gecode by doxygen 1.6.3

Gecode::Int::Extensional::Base< View, subscribe > Class Template Reference
[Integer propagators]

Base for domain consistent extensional propagation More...

#include <extensional.hh>

List of all members.

Public Member Functions

virtual PropCost cost (const Space &home, const ModEventDelta &med) const
 Cost function (defined as high quadratic).
virtual void reschedule (Space &home)
 Schedule function.
virtual size_t dispose (Space &home)
 Delete propagator and return its size.

Protected Member Functions

TupleSet::TupleSetIts (void)
 Base (Space &home, bool share, Base< View, subscribe > &p)
 Constructor for cloning p.
 Base (Home home, ViewArray< View > &x, const TupleSet &t)
 Constructor for posting.
void init_last (Space &home, Tuple **source, Tuple *base)
 Initialize last support.
Tuple last (int i, int n)
 Find last support for view at position i and value n.
Tuple last_next (int i, int n)
 Find last support for view at position i and value n.
void init_dom (Space &home, Domain dom)
 Initialize domain information.
bool valid (Tuple t, Domain dom)
 Check wether tuple is valid for domain.
Tuple find_support (Domain dom, int i, int n)
 Find support for view at position i and value n.

Protected Attributes

ViewArray< View > x
 Variables.
TupleSet tupleSet
 Definition of constraint.
Tuple ** last_data
 Last tuple looked at Access real tuple-set.

Detailed Description

template<class View, bool subscribe = true>
class Gecode::Int::Extensional::Base< View, subscribe >

Base for domain consistent extensional propagation

This class contains support for implementing domain consistent extensional propagation algorithms that use positive tuple sets and a last data structure.

Requires

Definition at line 244 of file extensional.hh.


Constructor & Destructor Documentation

template<class View, bool subscribe>
Gecode::Int::Extensional::Base< View, subscribe >::Base ( Space home,
bool  share,
Base< View, subscribe > &  p 
) [inline, protected]

Constructor for cloning p.

Definition at line 64 of file base.hpp.

template<class View, bool subscribe>
Gecode::Int::Extensional::Base< View, subscribe >::Base ( Home  home,
ViewArray< View > &  x,
const TupleSet t 
) [inline, protected]

Constructor for posting.

Definition at line 49 of file base.hpp.


Member Function Documentation

template<class View , bool subscribe>
TupleSet::TupleSetI * Gecode::Int::Extensional::Base< View, subscribe >::ts ( void   )  [inline, protected]

Definition at line 85 of file base.hpp.

template<class View , bool subscribe>
void Gecode::Int::Extensional::Base< View, subscribe >::init_last ( Space home,
Tuple **  source,
Tuple base 
) [inline, protected]

Initialize last support.

Definition at line 74 of file base.hpp.

template<class View , bool subscribe>
Tuple Gecode::Int::Extensional::Base< View, subscribe >::last ( int  i,
int  n 
) [inline, protected]

Find last support for view at position i and value n.

Definition at line 106 of file base.hpp.

template<class View , bool subscribe>
Tuple Gecode::Int::Extensional::Base< View, subscribe >::last_next ( int  i,
int  n 
) [inline, protected]

Find last support for view at position i and value n.

Definition at line 112 of file base.hpp.

template<class View , bool subscribe>
void Gecode::Int::Extensional::Base< View, subscribe >::init_dom ( Space home,
Domain  dom 
) [inline, protected]

Initialize domain information.

Definition at line 125 of file base.hpp.

template<class View , bool subscribe>
bool Gecode::Int::Extensional::Base< View, subscribe >::valid ( Tuple  t,
Domain  dom 
) [inline, protected]

Check wether tuple is valid for domain.

Definition at line 136 of file base.hpp.

template<class View , bool subscribe>
Tuple Gecode::Int::Extensional::Base< View, subscribe >::find_support ( Domain  dom,
int  i,
int  n 
) [inline, protected]

Find support for view at position i and value n.

Definition at line 145 of file base.hpp.

template<class View , bool subscribe>
PropCost Gecode::Int::Extensional::Base< View, subscribe >::cost ( const Space home,
const ModEventDelta med 
) const [inline, virtual]

Cost function (defined as high quadratic).

Implements Gecode::Propagator.

Reimplemented in Gecode::Int::Extensional::Basic< View, shared >, and Gecode::Int::Extensional::Incremental< View >.

Definition at line 98 of file base.hpp.

template<class View , bool subscribe>
void Gecode::Int::Extensional::Base< View, subscribe >::reschedule ( Space home  )  [inline, virtual]

Schedule function.

Implements Gecode::Propagator.

Reimplemented in Gecode::Int::Extensional::Incremental< View >.

Definition at line 91 of file base.hpp.

template<class View , bool subscribe>
size_t Gecode::Int::Extensional::Base< View, subscribe >::dispose ( Space home  )  [inline, virtual]

Delete propagator and return its size.

Reimplemented from Gecode::Actor.

Reimplemented in Gecode::Int::Extensional::Incremental< View >.

Definition at line 155 of file base.hpp.


Member Data Documentation

template<class View, bool subscribe = true>
ViewArray<View> Gecode::Int::Extensional::Base< View, subscribe >::x [protected]

Variables.

Definition at line 246 of file extensional.hh.

template<class View, bool subscribe = true>
TupleSet Gecode::Int::Extensional::Base< View, subscribe >::tupleSet [protected]

Definition of constraint.

Definition at line 247 of file extensional.hh.

template<class View, bool subscribe = true>
Tuple** Gecode::Int::Extensional::Base< View, subscribe >::last_data [protected]

Last tuple looked at Access real tuple-set.

Definition at line 248 of file extensional.hh.


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