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

Gecode::Int::Linear::Lin< Val, P, N, pc > Class Template Reference

Base-class for n-ary 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 linear).
virtual void reschedule (Space &home)
 Schedule function.
virtual size_t dispose (Space &home)
 Delete propagator and return its size.

Protected Member Functions

 Lin (Space &home, bool share, Lin< Val, P, N, pc > &p)
 Constructor for cloning p.
 Lin (Home home, ViewArray< P > &x, ViewArray< N > &y, Val c)
 Constructor for creation.

Protected Attributes

ViewArray< P > x
 Array of positive views.
ViewArray< N > y
 Array of negative views.
Val c
 Constant value.

Related Functions

(Note that these are not member functions.)



template<class Val , class View >
void bounds_p (ModEventDelta med, ViewArray< View > &x, Val &c, Val &sl, Val &su)
 Compute bounds information for positive views.
template<class Val , class View >
void bounds_n (ModEventDelta med, ViewArray< View > &y, Val &c, Val &sl, Val &su)
 Compute bounds information for negative views.

Detailed Description

template<class Val, class P, class N, PropCond pc>
class Gecode::Int::Linear::Lin< Val, P, N, pc >

Base-class for n-ary linear propagators.

The type Val can be either long long int or int, defining the numerical precision during propagation. Positive views are of type P whereas negative views are of type N.

The propagation condition pc refers to all views.

Definition at line 501 of file linear.hh.


Constructor & Destructor Documentation

template<class Val, class P, class N, PropCond pc>
Gecode::Int::Linear::Lin< Val, P, N, pc >::Lin ( Space home,
bool  share,
Lin< Val, P, N, pc > &  p 
) [inline, protected]

Constructor for cloning p.

Definition at line 73 of file int-nary.hpp.

template<class Val, class P, class N, PropCond pc>
Gecode::Int::Linear::Lin< Val, P, N, pc >::Lin ( Home  home,
ViewArray< P > &  x,
ViewArray< N > &  y,
Val  c 
) [inline, protected]

Constructor for creation.

Definition at line 65 of file int-nary.hpp.


Member Function Documentation

template<class Val , class P , class N , PropCond pc>
PropCost Gecode::Int::Linear::Lin< Val, P, N, pc >::cost ( const Space home,
const ModEventDelta med 
) const [inline, virtual]

Cost function (defined as low linear).

Implements Gecode::Propagator.

Reimplemented in Gecode::Int::Linear::DomEq< Val, View >.

Definition at line 81 of file int-nary.hpp.

template<class Val , class P , class N , PropCond pc>
void Gecode::Int::Linear::Lin< Val, P, N, pc >::reschedule ( Space home  )  [inline, virtual]
template<class Val , class P , class N , PropCond pc>
size_t Gecode::Int::Linear::Lin< Val, P, N, pc >::dispose ( Space home  )  [inline, virtual]

Friends And Related Function Documentation

template<class Val , class View >
void bounds_p ( ModEventDelta  med,
ViewArray< View > &  x,
Val &  c,
Val &  sl,
Val &  su 
) [related]

Compute bounds information for positive views.

Definition at line 144 of file int-nary.hpp.

template<class Val , class View >
void bounds_n ( ModEventDelta  med,
ViewArray< View > &  y,
Val &  c,
Val &  sl,
Val &  su 
) [related]

Compute bounds information for negative views.

Definition at line 165 of file int-nary.hpp.


Member Data Documentation

template<class Val, class P, class N, PropCond pc>
ViewArray<P> Gecode::Int::Linear::Lin< Val, P, N, pc >::x [protected]

Array of positive views.

Definition at line 504 of file linear.hh.

template<class Val, class P, class N, PropCond pc>
ViewArray<N> Gecode::Int::Linear::Lin< Val, P, N, pc >::y [protected]

Array of negative views.

Definition at line 506 of file linear.hh.

template<class Val, class P, class N, PropCond pc>
Val Gecode::Int::Linear::Lin< Val, P, N, pc >::c [protected]

Constant value.

Definition at line 508 of file linear.hh.


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