Gecode::Int::Linear::Lin< Val, P, N, pc > Class Template Reference
#include <linear.hh>
Inherits Gecode::Propagator.
Inherited by Gecode::Int::Linear::DomEq< Val, View >, Gecode::Int::Linear::Eq< Val, P, N >, Gecode::Int::Linear::Lq< Val, P, N >, Gecode::Int::Linear::Nq< Val, P, N >, Gecode::Int::Linear::ReLin< Val, P, N, pc, Ctrl >, Gecode::Int::Linear::ReLin< Gecode::Int::GCC::Val< View, Card, isView >, P, N, PC_INT_BND, Ctrl >, and Gecode::Int::Linear::ReLin< Gecode::Int::GCC::Val< View, Card, isView >, P, N, PC_INT_BND, Gecode::Int::BoolView >.
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 double
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 574 of file linear.hh.
Public Member Functions | |
virtual PropCost | cost (ModEventDelta med) const |
Cost function (defined as dynamic PC_LINEAR_LO). | |
virtual size_t | dispose (Space *home) |
Delete propagator and return its size. | |
Protected Member Functions | |
Lin (Space *home, bool share, Lin &p) | |
Constructor for cloning p. | |
Lin (Space *home, ViewArray< P > &x, ViewArray< N > &y, Val c) | |
Constructor for creation. | |
Reflection::ActorSpec | spec (const Space *home, Reflection::VarMap &m, const Support::Symbol &name) const |
Return specification. | |
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. |
Constructor & Destructor Documentation
Gecode::Int::Linear::Lin< Val, P, N, pc >::Lin | ( | Space * | home, | |
bool | share, | |||
Lin< Val, P, N, pc > & | p | |||
) | [protected] |
Constructor for cloning p.
Member Function Documentation
Reflection::ActorSpec Gecode::Int::Linear::Lin< Val, P, N, pc >::spec | ( | const Space * | home, | |
Reflection::VarMap & | m, | |||
const Support::Symbol & | name | |||
) | const [inline, protected] |
Return specification.
Reimplemented in Gecode::Int::Linear::ReLin< Val, P, N, pc, Ctrl >, Gecode::Int::Linear::ReLin< Gecode::Int::GCC::Val< View, Card, isView >, P, N, PC_INT_BND, Gecode::Int::BoolView >, and Gecode::Int::Linear::ReLin< Gecode::Int::GCC::Val< View, Card, isView >, P, N, PC_INT_BND, Ctrl >.
Definition at line 97 of file int-nary.icc.
PropCost Gecode::Int::Linear::Lin< Val, P, N, pc >::cost | ( | ModEventDelta | med | ) | const [inline, virtual] |
Cost function (defined as dynamic PC_LINEAR_LO).
Implements Gecode::Propagator.
Reimplemented in Gecode::Int::Linear::DomEq< Val, View >.
Definition at line 81 of file int-nary.icc.
size_t Gecode::Int::Linear::Lin< Val, P, N, pc >::dispose | ( | Space * | home | ) | [inline, virtual] |
Delete propagator and return its size.
Reimplemented from Gecode::Actor.
Reimplemented in Gecode::Int::Linear::ReLin< Val, P, N, pc, Ctrl >, Gecode::Int::Linear::ReLin< Gecode::Int::GCC::Val< View, Card, isView >, P, N, PC_INT_BND, Gecode::Int::BoolView >, and Gecode::Int::Linear::ReLin< Gecode::Int::GCC::Val< View, Card, isView >, P, N, PC_INT_BND, Ctrl >.
Definition at line 87 of file int-nary.icc.
Friends And Related Function Documentation
void bounds_p | ( | ModEventDelta | med, | |
ViewArray< View > & | x, | |||
Val & | c, | |||
Val & | sl, | |||
Val & | su | |||
) | [related] |
void bounds_n | ( | ModEventDelta | med, | |
ViewArray< View > & | y, | |||
Val & | c, | |||
Val & | sl, | |||
Val & | su | |||
) | [related] |
Member Data Documentation
ViewArray<P> Gecode::Int::Linear::Lin< Val, P, N, pc >::x [protected] |
ViewArray<N> Gecode::Int::Linear::Lin< Val, P, N, pc >::y [protected] |
Val Gecode::Int::Linear::Lin< Val, P, N, pc >::c [protected] |
The documentation for this class was generated from the following files:
- gecode/int/linear.hh (Revision: 7285)
- gecode/int/linear/int-nary.icc (Revision: 6017)