Generated on Thu Apr 11 14:00:03 2019 for Gecode by doxygen 1.6.3

Gecode::Int::Linear::LinTer< Val, A, B, C, pc > Class Template Reference

Base-class for ternary linear propagators. More...

#include <linear.hh>

List of all members.

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.

Protected Member Functions

 LinTer (Space &home, LinTer &p)
 Constructor for cloning p.
 LinTer (Home home, A x0, B x1, C x2, Val c)
 Constructor for creation.
 LinTer (Space &home, Propagator &p, A x0, B x1, C x2, Val c)
 Constructor for rewriting p during cloning.

Protected Attributes

x0
 View of type A.
x1
 View of type B.
x2
 View of type C.
Val c
 Value of type Val.

Detailed Description

template<class Val, class A, class B, class C, PropCond pc>
class Gecode::Int::Linear::LinTer< Val, A, B, C, pc >

Base-class for ternary linear propagators.

The type Val can be either long long int or int, defining the numerical precision during propagation. The types A, B, and C give the types of the views.

The propagation condition pc refers to all three views.

Definition at line 346 of file linear.hh.


Constructor & Destructor Documentation

template<class Val , class A , class B , class C , PropCond pc>
Gecode::Int::Linear::LinTer< Val, A, B, C, pc >::LinTer ( Space home,
LinTer< Val, A, B, C, pc > &  p 
) [inline, protected]

Constructor for cloning p.

Definition at line 51 of file int-ter.hpp.

template<class Val, class A, class B, class C, PropCond pc>
Gecode::Int::Linear::LinTer< Val, A, B, C, pc >::LinTer ( Home  home,
x0,
x1,
x2,
Val  c 
) [inline, protected]

Constructor for creation.

Definition at line 42 of file int-ter.hpp.

template<class Val, class A, class B, class C, PropCond pc>
Gecode::Int::Linear::LinTer< Val, A, B, C, pc >::LinTer ( Space home,
Propagator p,
x0,
x1,
x2,
Val  c 
) [inline, protected]

Constructor for rewriting p during cloning.

Definition at line 60 of file int-ter.hpp.


Member Function Documentation

template<class Val , class A , class B , class C , PropCond pc>
PropCost Gecode::Int::Linear::LinTer< Val, A, B, C, pc >::cost ( const Space home,
const ModEventDelta med 
) const [inline, virtual]

Cost function (defined as low ternary).

Implements Gecode::Propagator.

Definition at line 70 of file int-ter.hpp.

template<class Val , class A , class B , class C , PropCond pc>
void Gecode::Int::Linear::LinTer< Val, A, B, C, pc >::reschedule ( Space home  )  [inline, virtual]

Schedule function.

Implements Gecode::Propagator.

Definition at line 76 of file int-ter.hpp.

template<class Val , class A , class B , class C , PropCond pc>
size_t Gecode::Int::Linear::LinTer< Val, A, B, C, pc >::dispose ( Space home  )  [inline, virtual]

Delete propagator and return its size.

Reimplemented from Gecode::Actor.

Definition at line 84 of file int-ter.hpp.


Member Data Documentation

template<class Val, class A, class B, class C, PropCond pc>
A Gecode::Int::Linear::LinTer< Val, A, B, C, pc >::x0 [protected]

View of type A.

Definition at line 349 of file linear.hh.

template<class Val, class A, class B, class C, PropCond pc>
B Gecode::Int::Linear::LinTer< Val, A, B, C, pc >::x1 [protected]

View of type B.

Definition at line 351 of file linear.hh.

template<class Val, class A, class B, class C, PropCond pc>
C Gecode::Int::Linear::LinTer< Val, A, B, C, pc >::x2 [protected]

View of type C.

Definition at line 353 of file linear.hh.

template<class Val, class A, class B, class C, PropCond pc>
Val Gecode::Int::Linear::LinTer< Val, A, B, C, pc >::c [protected]

Value of type Val.

Definition at line 355 of file linear.hh.


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