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

Base-class for reified n-ary linear propagators. More...

`#include <linear.hh>`

## Public Member Functions

virtual void | reschedule (Space &home)
| Schedule function.
virtual size_t | dispose (Space &home)
| Delete propagator and return its size.
Public Member Functions inherited from Gecode::Int::Linear::Lin< Val, P, N, pc >
virtual PropCost | cost (const Space &home, const ModEventDelta &med) const
| Cost function (defined as low linear).
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

| ReLin (Space &home, ReLin &p)
| Constructor for cloning p.
| ReLin (Home home, ViewArray< P > &x, ViewArray< N > &y, Val c, Ctrl b)
| Constructor for creation.
Protected Member Functions inherited from Gecode::Int::Linear::Lin< Val, P, N, pc >
| Lin (Space &home, 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 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

Ctrl | b
| Control view for reification.
Protected Attributes inherited from Gecode::Int::Linear::Lin< Val, P, N, pc >
ViewArray< P > | x
| Array of positive views.
ViewArray< N > | y
| Array of negative views.
Val | c
| Constant value.

## 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.
Related Symbols inherited from Gecode::Int::Linear::Lin< Val, P, N, pc >
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 Ctrl>
class Gecode::Int::Linear::ReLin< Val, P, N, pc, Ctrl >

Base-class for reified 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 529 of file linear.hh.

## Constructor & Destructor Documentation

## ReLin() [1/2]

template<class Val, class P, class N, PropCond pc, class Ctrl>

Gecode::Int::Linear::ReLin< Val, P, N, pc, Ctrl >::ReLin | ( | Space & | home,
|  | ReLin< Val, P, N, pc, Ctrl > & | p )

protected

Constructor for cloning p.

## ReLin() [2/2]

template<class Val, class P, class N, PropCond pc, class Ctrl>

Gecode::Int::Linear::ReLin< Val, P, N, pc, Ctrl >::ReLin | ( | Home | home,
|  | ViewArray< P > & | x,
|  | ViewArray< N > & | y,
|  | Val | c,
|  | Ctrl | b )

inline protected

Constructor for creation.

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

## Member Function Documentation

## reschedule()

template<class Val, class P, class N, PropCond pc, class Ctrl>

void Gecode::Int::Linear::ReLin< Val, P, N, pc, Ctrl >::reschedule | ( | Space & | home | ) |

virtual

Schedule function.

Reimplemented from Gecode::Int::Linear::Lin< Val, P, N, pc >.

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

## dispose()

template<class Val, class P, class N, PropCond pc, class Ctrl>

size_t Gecode::Int::Linear::ReLin< Val, P, N, pc, Ctrl >::dispose | ( | Space & | home | ) |

inline virtual

Delete propagator and return its size.

Reimplemented from Gecode::Int::Linear::Lin< Val, P, N, pc >.

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

## Member Data Documentation

## b

template<class Val, class P, class N, PropCond pc, class Ctrl>

Ctrl Gecode::Int::Linear::ReLin< Val, P, N, pc, Ctrl >::b

protected

Control view for reification.

Definition at line 534 of file linear.hh.

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

- gecode/int/linear.hh
- gecode/int/linear/int-nary.hpp