Generated on Tue Feb 11 2025 17:33:26 for Gecode by doxygen 1.12.0
Gecode::Int::Cumulative::ManFlexTask Class Reference

Cumulative (mandatory) task with flexible processing time. More...

#include <cumulative.hh>

Protected Attributes

int _c
 Required capacity.
 
- Protected Attributes inherited from Gecode::Int::Unary::ManFlexTask
Int::IntView _s
 Start time.
 
Int::IntView _p
 Processing time.
 
Int::IntView _e
 End time.
 

Constructors and initialization

 ManFlexTask (void)
 Default constructor.
 
 ManFlexTask (IntVar s, IntVar p, IntVar e, int c)
 Initialize with start time s, processing time p, end time e.
 
void init (IntVar s, IntVar p, IntVar e, int c)
 Initialize with start time s, processing time p, end time e.
 
void init (const ManFlexTask &t)
 Initialize from task t.
 

Value access

int c (void) const
 Return required capacity.
 
long long int e (void) const
 Return required energy.
 

Cloning

void update (Space &home, ManFlexTask &t)
 Update this task to be a clone of task t.
 

Additional Inherited Members

- Public Member Functions inherited from Gecode::Int::Unary::ManFlexTask
 ManFlexTask (void)
 Default constructor.
 
 ManFlexTask (IntVar s, IntVar p, IntVar e)
 Initialize with start time s, processing time p, end time e.
 
void init (IntVar s, IntVar p, IntVar e)
 Initialize with start time s, processing time p, end time e.
 
void init (const ManFlexTask &t)
 Initialize from task t.
 
int est (void) const
 Return earliest start time.
 
int ect (void) const
 Return earliest completion time.
 
int lst (void) const
 Return latest start time.
 
int lct (void) const
 Return latest completion time.
 
int pmin (void) const
 Return minimum processing time.
 
int pmax (void) const
 Return maximum processing time.
 
IntVar st (void) const
 Return start time.
 
IntVar p (void) const
 Return processing time.
 
IntVar e (void) const
 Return end time.
 
bool mandatory (void) const
 Whether task is mandatory.
 
bool excluded (void) const
 Whether task is excluded.
 
bool optional (void) const
 Whether task can still be optional.
 
bool assigned (void) const
 Test whether task is assigned.
 
ModEvent est (Space &home, int n)
 Update earliest start time to n.
 
ModEvent ect (Space &home, int n)
 Update earliest completion time to n.
 
ModEvent lst (Space &home, int n)
 Update latest start time to n.
 
ModEvent lct (Space &home, int n)
 Update latest completion time to n.
 
ModEvent norun (Space &home, int e, int l)
 Update such that task cannot run from e to l.
 
ModEvent mandatory (Space &home)
 Mark task as mandatory.
 
ModEvent excluded (Space &home)
 Mark task as excluded.
 
void update (Space &home, ManFlexTask &t)
 Update this task to be a clone of task t.
 
void subscribe (Space &home, Propagator &p, PropCond pc)
 Subscribe propagator p to task.
 
void cancel (Space &home, Propagator &p, PropCond pc)
 Cancel subscription of propagator p for task.
 
void reschedule (Space &home, Propagator &p, PropCond pc)
 Schedule propagator p.
 

Detailed Description

Cumulative (mandatory) task with flexible processing time.

Definition at line 166 of file cumulative.hh.

Constructor & Destructor Documentation

◆ ManFlexTask() [1/2]

ManFlexTask::ManFlexTask ( void )
inline

Default constructor.

Definition at line 125 of file task.hpp.

◆ ManFlexTask() [2/2]

ManFlexTask::ManFlexTask ( IntVar s,
IntVar p,
IntVar e,
int c )
inline

Initialize with start time s, processing time p, end time e.

Definition at line 127 of file task.hpp.

Member Function Documentation

◆ init() [1/2]

void ManFlexTask::init ( IntVar s,
IntVar p,
IntVar e,
int c )
inline

Initialize with start time s, processing time p, end time e.

Definition at line 130 of file task.hpp.

◆ init() [2/2]

void ManFlexTask::init ( const ManFlexTask & t)
inline

Initialize from task t.

Definition at line 134 of file task.hpp.

◆ c()

int ManFlexTask::c ( void ) const
inline

Return required capacity.

Definition at line 139 of file task.hpp.

◆ e()

long long int ManFlexTask::e ( void ) const
inline

Return required energy.

Definition at line 143 of file task.hpp.

◆ update()

void ManFlexTask::update ( Space & home,
ManFlexTask & t )
inline

Update this task to be a clone of task t.

Definition at line 148 of file task.hpp.

Member Data Documentation

◆ _c

int Gecode::Int::Cumulative::ManFlexTask::_c
protected

Required capacity.

Definition at line 169 of file cumulative.hh.


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