Generated on Sat Feb 12 2011 17:41:32 for Gecode by doxygen 1.7.3

Gecode::Set::Element::ElementIntersection< SView, RView > Class Template Reference

Propagator for element with intersection More...

#include <element.hh>

List of all members.

Public Types

typedef
Gecode::Int::Element::IdxViewArray
< SView > 
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.

Static Public Member Functions

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

Protected Member Functions

 ElementIntersection (Space &home, bool share, ElementIntersection &p)
 Constructor for cloning p.
 ElementIntersection (Home home, RView, IdxViewArray &, RView, const IntSet &universe)
 Constructor for posting.

Protected Attributes

IntSet universe
RView x0
IdxViewArray iv
RView x1

Detailed Description

template<class SView, class RView>
class Gecode::Set::Element::ElementIntersection< SView, RView >

Propagator for element with intersection

Requires

Definition at line 72 of file element.hh.


Member Typedef Documentation

template<class SView, class RView>
typedef Gecode::Int::Element::IdxViewArray<SView> Gecode::Set::Element::ElementIntersection< SView, RView >::IdxViewArray

Definition at line 74 of file element.hh.


Constructor & Destructor Documentation

template<class SView , class RView >
Gecode::Set::Element::ElementIntersection< SView, RView >::ElementIntersection ( Space home,
bool  share,
ElementIntersection< SView, RView > &  p 
) [inline, protected]

Constructor for cloning p.

Definition at line 59 of file inter.hpp.

template<class SView , class RView >
Gecode::Set::Element::ElementIntersection< SView, RView >::ElementIntersection ( Home  home,
RView  y0,
IdxViewArray iv0,
RView  y1,
const IntSet universe 
) [inline, protected]

Constructor for posting.

Definition at line 45 of file inter.hpp.


Member Function Documentation

template<class SView , class RView >
Actor * Gecode::Set::Element::ElementIntersection< SView, RView >::copy ( Space home,
bool  share 
) [virtual]

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 106 of file inter.hpp.

template<class SView , class RView >
PropCost Gecode::Set::Element::ElementIntersection< SView, RView >::cost ( const Space home,
const ModEventDelta med 
) const [virtual]

Cost function.

Implements Gecode::Propagator.

Definition at line 70 of file inter.hpp.

template<class SView , class RView >
size_t Gecode::Set::Element::ElementIntersection< SView, RView >::dispose ( Space home) [inline, virtual]

Delete propagator and return its size.

Reimplemented from Gecode::Actor.

Definition at line 77 of file inter.hpp.

template<class SView , class RView >
ExecStatus Gecode::Set::Element::ElementIntersection< SView, RView >::propagate ( Space home,
const ModEventDelta med 
) [virtual]

Perform propagation.

Implements Gecode::Propagator.

Definition at line 112 of file inter.hpp.

template<class SView , class RView >
ExecStatus Gecode::Set::Element::ElementIntersection< SView, RView >::post ( Home  home,
RView  z,
IdxViewArray x,
RView  y,
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 92 of file inter.hpp.


Member Data Documentation

template<class SView, class RView>
IntSet Gecode::Set::Element::ElementIntersection< SView, RView >::universe [protected]

Definition at line 76 of file element.hh.

template<class SView, class RView>
RView Gecode::Set::Element::ElementIntersection< SView, RView >::x0 [protected]

Definition at line 77 of file element.hh.

template<class SView, class RView>
IdxViewArray Gecode::Set::Element::ElementIntersection< SView, RView >::iv [protected]

Definition at line 78 of file element.hh.

template<class SView, class RView>
RView Gecode::Set::Element::ElementIntersection< SView, RView >::x1 [protected]

Definition at line 79 of file element.hh.


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