Generated on Sat Feb 7 2015 02:01:45 for Gecode by doxygen 1.8.9.1
Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak > Class Template Reference

Argument maximum propagator. More...

#include <arithmetic.hh>

Public Member Functions

virtual Actorcopy (Space &home, bool share)
 Copy propagator during cloning. More...
 
virtual PropCost cost (const Space &home, const ModEventDelta &med) const
 Cost function. More...
 
virtual ExecStatus propagate (Space &home, const ModEventDelta &med)
 Perform propagation. More...
 
virtual size_t dispose (Space &home)
 Delete propagator and return its size. More...
 
- Public Member Functions inherited from Gecode::Propagator
ModEventDelta modeventdelta (void) const
 Return the modification event delta. More...
 
virtual ExecStatus advise (Space &home, Advisor &a, const Delta &d)
 Advise function. More...
 
double afc (const Space &home) const
 Return the accumlated failure count. More...
 
- Public Member Functions inherited from Gecode::Actor

Static Public Member Functions

static ExecStatus post (Home home, IdxViewArray< VA > &x, VB y)
 Post propagator $ \operatorname{argmax} x=y$. More...
 
- Static Public Member Functions inherited from Gecode::Actor
static void * operator new (size_t s, Space &home)
 Allocate memory from space. More...
 
static void operator delete (void *p, Space &home)
 No-op for exceptions. More...
 

Protected Member Functions

 ArgMax (Space &home, bool share, ArgMax &p)
 Constructor for cloning p. More...
 
 ArgMax (Home home, IdxViewArray< VA > &x, VB y)
 Constructor for posting. More...
 
- Protected Member Functions inherited from Gecode::Propagator
 Propagator (Home home)
 Constructor for posting. More...
 
 Propagator (Space &home, bool share, Propagator &p)
 Constructor for cloning p. More...
 
Propagatorfwd (void) const
 Return forwarding pointer during copying. More...
 

Protected Attributes

IdxViewArray< VA > x
 Map of index and views. More...
 
VB y
 Position of maximum view (maximal argument) More...
 

Detailed Description

template<class VA, class VB, bool tiebreak>
class Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak >

Argument maximum propagator.

Tiebreaking is used if tiebreak is true and views can be shared if shread is true.

Requires

Definition at line 264 of file arithmetic.hh.

Constructor & Destructor Documentation

template<class VA , class VB , bool tiebreak>
Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak >::ArgMax ( Space home,
bool  share,
ArgMax< VA, VB, tiebreak > &  p 
)
inlineprotected

Constructor for cloning p.

Definition at line 80 of file argmax.hpp.

template<class VA , class VB , bool tiebreak>
Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak >::ArgMax ( Home  home,
IdxViewArray< VA > &  x,
VB  y 
)
inlineprotected

Constructor for posting.

Definition at line 44 of file argmax.hpp.

Member Function Documentation

template<class VA , class VB , bool tiebreak>
Actor * Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak >::copy ( Space home,
bool  share 
)
virtual

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 89 of file argmax.hpp.

template<class VA , class VB , bool tiebreak>
PropCost Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak >::cost ( const Space home,
const ModEventDelta med 
) const
virtual

Cost function.

Implements Gecode::Propagator.

Definition at line 95 of file argmax.hpp.

template<class VA , class VB , bool tiebreak>
ExecStatus Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak >::propagate ( Space home,
const ModEventDelta med 
)
virtual

Perform propagation.

Implements Gecode::Propagator.

Definition at line 102 of file argmax.hpp.

template<class VA , class VB , bool tiebreak>
size_t Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak >::dispose ( Space home)
inlinevirtual

Delete propagator and return its size.

Reimplemented from Gecode::Actor.

Definition at line 254 of file argmax.hpp.

template<class VA , class VB , bool tiebreak>
ExecStatus Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak >::post ( Home  home,
IdxViewArray< VA > &  x,
VB  y 
)
static

Post propagator $ \operatorname{argmax} x=y$.

Note that y must be constrained to be in the proper range for the index values in x.

Definition at line 52 of file argmax.hpp.

Member Data Documentation

template<class VA, class VB, bool tiebreak>
IdxViewArray<VA> Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak >::x
protected

Map of index and views.

Definition at line 267 of file arithmetic.hh.

template<class VA, class VB, bool tiebreak>
VB Gecode::Int::Arithmetic::ArgMax< VA, VB, tiebreak >::y
protected

Position of maximum view (maximal argument)

Definition at line 269 of file arithmetic.hh.


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