This class needs to be implemented by all classes that implement dynamic behavior in the plan. More...
#include <model.h>
Public Member Functions | |
virtual void | endElement (XMLInput &, const Attribute &, const DataElement &) |
bool | getChanged () const |
bool | getDetectProblems () const |
Plannable * | getEntity () const |
Plannable () | |
void | setChanged (bool b=true) |
void | setDetectProblems (bool b) |
virtual void | writeElement (XMLOutput *, const Keyword &, mode=DEFAULT) const |
![]() | |
HasProblems () | |
virtual void | updateProblems ()=0 |
virtual | ~HasProblems () |
![]() | |
virtual void | solve (Solver &s, void *v=NULL) const |
virtual | ~Solvable () |
Static Public Member Functions | |
static void | computeProblems () |
![]() | |
static EntityIterator | beginEntity () |
static EntityIterator | endEntity () |
This class needs to be implemented by all classes that implement dynamic behavior in the plan.
The problem detection logic is implemented in the detectProblems() method. For performance reasons, problem detection is "lazy", i.e. problems are computed only when somebody really needs the access to the list of problems.
|
static |
Loops through all plannable objects and updates their problems if required.
Definition at line 171 of file problem.cpp.
|
virtual |
Reimplemented in frepple::Demand, frepple::Plan, frepple::Resource, frepple::BufferProcure, frepple::Buffer, frepple::OperationAlternate, frepple::OperationRouting, frepple::OperationTimePer, frepple::OperationFixedTime, and frepple::Operation.
Definition at line 221 of file problem.cpp.
|
inline |
|
inline |
|
inlinevirtual |
Implement the pure virtual function from the HasProblem class.
Implements frepple::HasProblems.
|
inline |
void frepple::Plannable::setDetectProblems | ( | bool | b | ) |
Specify whether this entity reports problems.
Definition at line 157 of file problem.cpp.
|
virtual |
Reimplemented in frepple::Demand, frepple::Plan, frepple::ResourceInfinite, frepple::Resource, frepple::BufferProcure, frepple::BufferInfinite, frepple::Buffer, frepple::OperationAlternate, frepple::OperationRouting, frepple::OperationTimePer, frepple::OperationSetup, frepple::OperationFixedTime, and frepple::Operation.
Definition at line 211 of file problem.cpp.