Generated on Sun Aug 26 2012 08:44:26 for Gecode by doxygen 1.8.1.1
Gecode::Set::Element::ElementIntersection< View, View0, View1 > Class Template Reference

Propagator for element with intersection More...

#include <element.hh>

List of all members.

Public Types

typedef
Gecode::Int::Element::IdxViewArray
< View > 
IdxViewArray

Public Member Functions

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

Static Public Member Functions

static ExecStatus post (Home home, IdxViewArray &x, View0 y, View1 z, const IntSet &u)

Protected Member Functions

 ElementIntersection (Space &home, bool share, ElementIntersection &p)
 Constructor for cloning p.
 ElementIntersection (Home home, IdxViewArray &, View0, View1, const IntSet &universe)
 Constructor for posting.
- Protected Member Functions inherited from Gecode::Propagator
 Propagator (Home home)
 Constructor for posting.
 Propagator (Space &home, bool share, Propagator &p)
 Constructor for cloning p.

Protected Attributes

IntSet universe
IdxViewArray iv
View0 x0
View1 x1

Detailed Description

template<class View, class View0, class View1>
class Gecode::Set::Element::ElementIntersection< View, View0, View1 >

Propagator for element with intersection

Requires

Definition at line 78 of file element.hh.


Member Typedef Documentation

template<class View, class View0, class View1>
typedef Gecode::Int::Element::IdxViewArray<View> Gecode::Set::Element::ElementIntersection< View, View0, View1 >::IdxViewArray

Definition at line 80 of file element.hh.


Constructor & Destructor Documentation

template<class View , class View0 , class View1 >
Gecode::Set::Element::ElementIntersection< View, View0, View1 >::ElementIntersection ( Space home,
bool  share,
ElementIntersection< View, View0, View1 > &  p 
)
inlineprotected

Constructor for cloning p.

Definition at line 57 of file inter.hpp.

template<class View , class View0 , class View1 >
Gecode::Set::Element::ElementIntersection< View, View0, View1 >::ElementIntersection ( Home  home,
IdxViewArray iv0,
View0  y0,
View1  y1,
const IntSet universe 
)
inlineprotected

Constructor for posting.

Definition at line 45 of file inter.hpp.


Member Function Documentation

template<class View , class View0 , class View1 >
Actor * Gecode::Set::Element::ElementIntersection< View, View0, View1 >::copy ( Space home,
bool  share 
)
virtual

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 104 of file inter.hpp.

template<class View , class View0 , class View1 >
PropCost Gecode::Set::Element::ElementIntersection< View, View0, View1 >::cost ( const Space home,
const ModEventDelta med 
) const
virtual

Cost function.

Implements Gecode::Propagator.

Definition at line 68 of file inter.hpp.

template<class View , class View0 , class View1 >
size_t Gecode::Set::Element::ElementIntersection< View, View0, View1 >::dispose ( Space home)
inlinevirtual

Delete propagator and return its size.

Reimplemented from Gecode::Actor.

Definition at line 75 of file inter.hpp.

template<class View , class View0 , class View1 >
ExecStatus Gecode::Set::Element::ElementIntersection< View, View0, View1 >::propagate ( Space home,
const ModEventDelta med 
)
virtual

Perform propagation.

Implements Gecode::Propagator.

Definition at line 110 of file inter.hpp.

template<class View , class View0 , class View1 >
ExecStatus Gecode::Set::Element::ElementIntersection< View, View0, View1 >::post ( Home  home,
IdxViewArray x,
View0  y,
View1  z,
const IntSet u 
)
static

Post propagator for $ z=\bigcap\langle x_0,\dots,x_{n-1}\rangle[y] $ using u as universe

If y is empty, z will be constrained to be the given universe u (as an empty intersection is the universe).

Definition at line 90 of file inter.hpp.


Member Data Documentation

template<class View, class View0, class View1>
IntSet Gecode::Set::Element::ElementIntersection< View, View0, View1 >::universe
protected

Definition at line 82 of file element.hh.

template<class View, class View0, class View1>
IdxViewArray Gecode::Set::Element::ElementIntersection< View, View0, View1 >::iv
protected

Definition at line 83 of file element.hh.

template<class View, class View0, class View1>
View0 Gecode::Set::Element::ElementIntersection< View, View0, View1 >::x0
protected

Definition at line 84 of file element.hh.

template<class View, class View0, class View1>
View1 Gecode::Set::Element::ElementIntersection< View, View0, View1 >::x1
protected

Definition at line 85 of file element.hh.


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