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 |
Static Public Member Functions | |
static void | computeProblems () |
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.
Definition at line 1131 of file model.h.
void frepple::Plannable::computeProblems | ( | ) | [static] |
Loops through all plannable objects and updates their problems if required.
Definition at line 119 of file problem.cpp.
void frepple::Plannable::endElement | ( | XMLInput & | , | |
const Attribute & | , | |||
const DataElement & | ||||
) | [virtual] |
Called while restoring the model from an XML-file.
This is called when the corresponding close element tag is encountered, and the Data() member of pElement is valid.
Implements frepple::utils::Object.
Reimplemented in frepple::Operation, frepple::OperationFixedTime, frepple::OperationTimePer, frepple::OperationRouting, frepple::OperationAlternate, frepple::Buffer, frepple::BufferProcure, frepple::Resource, frepple::Plan, frepple::Demand, and module_forecast::Forecast.
Definition at line 169 of file problem.cpp.
bool frepple::Plannable::getChanged | ( | ) | const [inline] |
bool frepple::Plannable::getDetectProblems | ( | ) | const [inline] |
Plannable* frepple::Plannable::getEntity | ( | ) | const [inline, virtual] |
Implement the pure virtual function from the HasProblem class.
Implements frepple::HasProblems.
void frepple::Plannable::setChanged | ( | bool | b = true |
) | [inline] |
void frepple::Plannable::setDetectProblems | ( | bool | b | ) |
Specify whether this entity reports problems.
Definition at line 105 of file problem.cpp.
void frepple::Plannable::writeElement | ( | XMLOutput * | , | |
const Keyword & | , | |||
mode | = DEFAULT | |||
) | const [virtual] |
Called while writing the model into an XML-file. The user class should write itself out, using the IOutStream members for its "simple" members and calling writeElement recursively for any contained objects. Not all classes are expected to implement this method. In instances of such a class can be created but can't be persisted. E.g. Command
Reimplemented from frepple::utils::Object.
Reimplemented in frepple::Operation, frepple::OperationFixedTime, frepple::OperationTimePer, frepple::OperationRouting, frepple::OperationAlternate, frepple::Buffer, frepple::BufferInfinite, frepple::BufferProcure, frepple::Resource, frepple::ResourceInfinite, frepple::Plan, frepple::Demand, and module_forecast::Forecast.
Definition at line 159 of file problem.cpp.