Gecode::Int::Cumulative::OptProp< OptTask, Cap, PL > Class Template Reference
Other available functionality » Integer propagators

Scheduling propagator for cumulative resource with optional tasks. More...

`#include <cumulative.hh>`

## Public Member Functions

virtual Actor * | copy (Space &home)
| Perform copying during cloning.
virtual ExecStatus | propagate (Space &home, const ModEventDelta &med)
| Perform propagation.
virtual size_t | dispose (Space &home)
| Delete propagator and return its size.
Public Member Functions inherited from Gecode::Int::TaskProp< OptTask, PL >
virtual PropCost | cost (const Space &home, const ModEventDelta &med) const
| Cost function (defined as high linear).
virtual void | reschedule (Space &home)
| Schedule 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.
virtual | ~Actor (void)
| To avoid warnings.

## Static Public Member Functions

static ExecStatus | post (Home home, Cap c, TaskArray< OptTask > &t)
| Post propagator that schedules tasks on cumulative resource.
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.

## Protected Member Functions

| OptProp (Home home, Cap c, TaskArray< OptTask > &t)
| Constructor for creation.
| OptProp (Space &home, OptProp &p)
| Constructor for cloning p.
Protected Member Functions inherited from Gecode::Int::TaskProp< OptTask, PL >
| TaskProp (Home home, TaskArray< OptTask > &t)
| 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

Cap | c
| Resource capacity.
Protected Attributes inherited from Gecode::Int::TaskProp< OptTask, PL >
TaskArray< OptTask > | t
| Tasks.

## Detailed Description

template<class OptTask, class Cap, class PL>
class Gecode::Int::Cumulative::OptProp< OptTask, Cap, PL >

Scheduling propagator for cumulative resource with optional tasks.

Requires

#include <gecode/int/cumulative.hh>
cumulative.hh

Definition at line 729 of file cumulative.hh.

## Constructor & Destructor Documentation

## OptProp() [1/2]

template<class OptTask, class Cap, class PL>

Gecode::Int::Cumulative::OptProp< OptTask, Cap, PL >::OptProp | ( | Home | home,
|  | Cap | c,
|  | TaskArray< OptTask > & | t )

inline protected

Constructor for creation.

Definition at line 42 of file opt-prop.hpp.

## OptProp() [2/2]

template<class OptTask, class Cap, class PL>

Gecode::Int::Cumulative::OptProp< OptTask, Cap, PL >::OptProp | ( | Space & | home,
|  | OptProp< OptTask, Cap, PL > & | p )

inline protected

Constructor for cloning p.

Definition at line 49 of file opt-prop.hpp.

## Member Function Documentation

## copy()

template<class OptTask, class Cap, class PL>

Actor * Gecode::Int::Cumulative::OptProp< OptTask, Cap, PL >::copy | ( | Space & | home | ) |

virtual

Perform copying during cloning.

Implements Gecode::Actor.

Definition at line 102 of file opt-prop.hpp.

## propagate()

template<class OptTask, class Cap, class PL>

ExecStatus Gecode::Int::Cumulative::OptProp< OptTask, Cap, PL >::propagate | ( | Space & | home,
|  | const ModEventDelta & | med )

virtual

Perform propagation.

Implements Gecode::Propagator.

Definition at line 116 of file opt-prop.hpp.

## post()

template<class OptTask, class Cap, class PL>

ExecStatus Gecode::Int::Cumulative::OptProp< OptTask, Cap, PL >::post | ( | Home | home,
|  | Cap | c,
|  | TaskArray< OptTask > & | t )

static

Post propagator that schedules tasks on cumulative resource.

Definition at line 56 of file opt-prop.hpp.

## dispose()

template<class OptTask, class Cap, class PL>

size_t Gecode::Int::Cumulative::OptProp< OptTask, Cap, PL >::dispose | ( | Space & | home | ) |

inline virtual

Delete propagator and return its size.

Reimplemented from Gecode::Int::TaskProp< OptTask, PL >.

Definition at line 108 of file opt-prop.hpp.

## Member Data Documentation

## c

template<class OptTask, class Cap, class PL>

Cap Gecode::Int::Cumulative::OptProp< OptTask, Cap, PL >::c

protected

Resource capacity.

Definition at line 733 of file cumulative.hh.

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

- gecode/int/cumulative.hh
- gecode/int/cumulative/opt-prop.hpp