Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 > Class Template Reference

Mixed ternary propagator. More...

`#include <pattern.hpp>`

## Public Member Functions

virtual PropCost | cost (const Space &home, const ModEventDelta &med) const
| Cost function (defined as low ternary).
virtual void | reschedule (Space &home)
| Schedule function.
virtual size_t | dispose (Space &home)
| Delete propagator and return its size.
virtual ExecStatus | propagate (Space &home, const ModEventDelta &med)=0
| Propagation function.
ModEventDelta | modeventdelta (void) const
| Return the modification event delta.
virtual ExecStatus | advise (Space &home, Advisor &a, const Delta &d)
| Advise function.
virtual void | advise (Space &home, Advisor &a)
| Run advisor a to be run on failure in failed space.
double | afc (void) const
| Return the accumlated failure count.
unsigned int | id (void) const
| Return propagator id.
PropagatorGroup | group (void) const
| Return group propagator belongs to.
void | group (PropagatorGroup g)
| Add propagator to group g.
bool | disabled (void) const
| Whether propagator is currently disabled.
Public Member Functions inherited from Gecode::Actor
virtual Actor * | copy (Space &home)=0
| Create copy.
virtual | ~Actor (void)
| To avoid warnings.

## Protected Member Functions

| MixTernaryPropagator (Space &home, MixTernaryPropagator &p)
| Constructor for cloning.
| MixTernaryPropagator (Home home, View0 x0, View1 x1, View2 x2)
| Constructor for creation.
| MixTernaryPropagator (Space &home, Propagator &p, View0 x0, View1 x1, View2 x2)
| Constructor for rewriting p during cloning.
Protected Member Functions inherited from Gecode::Propagator
| Propagator (Home home)
| Constructor for posting.
| Propagator (Space &home, Propagator &p)
| Constructor for cloning p.
Propagator * | fwd (void) const
| Return forwarding pointer during copying.
Kernel::GPI::Info & | gpi (void)
| Provide access to global propagator information.

## Protected Attributes

View0 | x0
| View of type View0.
View1 | x1
| View of type View1.
View2 | x2
| View of type View2.

## Additional Inherited Members

static void * | operator new (size_t s, Space &home)
| Allocate memory from space.
static void | operator delete (void *p, Space &home)
| No-op for exceptions.
static void * | operator new (size_t s)
| Not used.
static void | operator delete (void *p)
| Not used.

## Detailed Description

template<class View0, PropCond pc0, class View1, PropCond pc1, class View2, PropCond pc2>
class Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 >

Mixed ternary propagator.

Stores three views of type View0, View1, and View2 with propagation conditions pc0, pc1, and pc2.

If the propagation conditions pc0, pc1, pc2 have the values PC_GEN_NONE, no subscriptions are created.

Definition at line 237 of file pattern.hpp.

## Constructor & Destructor Documentation

## MixTernaryPropagator() [1/3]

template<class View0, PropCond pc0, class View1, PropCond pc1, class View2, PropCond pc2>

Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 >::MixTernaryPropagator | ( | Space & | home,
|  | MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 > & | p )

inline protected

Constructor for cloning.

Definition at line 660 of file pattern.hpp.

## MixTernaryPropagator() [2/3]

template<class View0, PropCond pc0, class View1, PropCond pc1, class View2, PropCond pc2>

Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 >::MixTernaryPropagator | ( | Home | home,
|  | View0 | x0,
|  | View1 | x1,
|  | View2 | x2 )

protected

Constructor for creation.

Definition at line 646 of file pattern.hpp.

## MixTernaryPropagator() [3/3]

template<class View0, PropCond pc0, class View1, PropCond pc1, class View2, PropCond pc2>

Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 >::MixTernaryPropagator | ( | Space & | home,
|  | Propagator & | p,
|  | View0 | x0,
|  | View1 | x1,
|  | View2 | x2 )

inline protected

Constructor for rewriting p during cloning.

Definition at line 673 of file pattern.hpp.

## Member Function Documentation

## cost()

template<class View0, PropCond pc0, class View1, PropCond pc1, class View2, PropCond pc2>

PropCost Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 >::cost | ( | const Space & | home,
|  | const ModEventDelta & | med ) const

virtual

Cost function (defined as low ternary).

Implements Gecode::Propagator.

Reimplemented in Gecode::Int::Arithmetic::MultPlusDom< VA, VB, VC >.

Definition at line 684 of file pattern.hpp.

## reschedule()

template<class View0, PropCond pc0, class View1, PropCond pc1, class View2, PropCond pc2>

void Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 >::reschedule | ( | Space & | home | ) |

virtual

Schedule function.

Implements Gecode::Propagator.

Definition at line 692 of file pattern.hpp.

## dispose()

template<class View0, PropCond pc0, class View1, PropCond pc1, class View2, PropCond pc2>

size_t Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 >::dispose | ( | Space & | home | ) |

inline virtual

Delete propagator and return its size.

Reimplemented from Gecode::Actor.

Definition at line 704 of file pattern.hpp.

## Member Data Documentation

## x0

template<class View0, PropCond pc0, class View1, PropCond pc1, class View2, PropCond pc2>

View0 Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 >::x0

protected

View of type View0.

Definition at line 240 of file pattern.hpp.

## x1

template<class View0, PropCond pc0, class View1, PropCond pc1, class View2, PropCond pc2>

View1 Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 >::x1

protected

View of type View1.

Definition at line 242 of file pattern.hpp.

## x2

template<class View0, PropCond pc0, class View1, PropCond pc1, class View2, PropCond pc2>

View2 Gecode::MixTernaryPropagator< View0, pc0, View1, pc1, View2, pc2 >::x2

protected

View of type View2.

Definition at line 244 of file pattern.hpp.

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

- gecode/kernel/propagator/pattern.hpp