frepple::utils::Object Class Reference

Object is the abstract base class for the main entities. More...

#include <utils.h>

Inheritance diagram for frepple::utils::Object:
frepple::Calendar frepple::Calendar::Bucket frepple::Customer frepple::Flow frepple::Item frepple::Load frepple::Location frepple::OperationPlan frepple::Plannable frepple::Problem frepple::Solver

List of all members.

Public Member Functions

virtual void beginElement (XMLInput &, const Attribute &)
virtual void endElement (XMLInput &, const Attribute &, const DataElement &)=0
virtual bool getHidden () const
virtual size_t getSize () const =0
virtual const MetaClassgetType () const =0
 Object ()
virtual void setHidden (bool b)
virtual void writeElement (XMLOutput *, const Keyword &, mode=DEFAULT) const
virtual ~Object ()

Static Public Member Functions

template<class T >
static ObjectcreateDefault ()
template<class T >
static ObjectcreateString (const string &n)

Detailed Description

Object is the abstract base class for the main entities.

It handles to following capabilities:

Definition at line 2633 of file utils.h.


Constructor & Destructor Documentation

frepple::utils::Object::Object (  )  [inline, explicit]

Constructor.

Definition at line 2637 of file utils.h.

virtual frepple::utils::Object::~Object (  )  [inline, virtual]

Destructor.

Definition at line 2640 of file utils.h.


Member Function Documentation

virtual void frepple::utils::Object::beginElement ( XMLInput ,
const Attribute  
) [inline, virtual]

Called while restoring the model from an XML-file.
This is called for each element within the "this" element, for which the "this" element is immediate parent.
It is called when the open element tag is encountered.

Reimplemented in frepple::Calendar, frepple::CalendarPointer< T >::BucketPointer, frepple::CalendarPointer< T >, frepple::Location, frepple::Customer, frepple::Operation, frepple::OperationPlan, frepple::OperationRouting, frepple::OperationAlternate, frepple::Item, frepple::Buffer, frepple::Flow, frepple::Resource, frepple::Load, frepple::Plan, frepple::Demand, and module_forecast::Forecast.

Definition at line 2658 of file utils.h.

template<class T >
static Object* frepple::utils::Object::createDefault (  )  [inline, static]

This template function can generate a factory method for objects that can be constructed with their default constructor.

Definition at line 2682 of file utils.h.

template<class T >
static Object* frepple::utils::Object::createString ( const string &  n  )  [inline, static]

This template function can generate a factory method for objects that need a string argument in their constructor.

Definition at line 2687 of file utils.h.

virtual void frepple::utils::Object::endElement ( XMLInput ,
const Attribute ,
const DataElement  
) [pure virtual]
virtual bool frepple::utils::Object::getHidden (  )  const [inline, virtual]

Returns whether an entity is real or dummy.

Reimplemented in frepple::Operation, frepple::OperationPlan, frepple::Buffer, frepple::Flow, frepple::Resource, frepple::Load, and frepple::Demand.

Definition at line 2671 of file utils.h.

virtual size_t frepple::utils::Object::getSize (  )  const [pure virtual]
virtual const MetaClass& frepple::utils::Object::getType (  )  const [pure virtual]

This returns the type information on the object, a bit similar to the standard type_info information.

Implemented in frepple::Calendar::Bucket, frepple::Calendar, frepple::CalendarValue< T >::BucketValue, frepple::CalendarValue< T >, frepple::CalendarPointer< T >::BucketPointer, frepple::CalendarPointer< T >, frepple::CalendarVoid, frepple::CalendarDouble, frepple::CalendarInt, frepple::CalendarBool, frepple::CalendarString, frepple::CalendarOperation, frepple::Problem, frepple::Solver, frepple::Location, frepple::LocationDefault, frepple::Customer, frepple::CustomerDefault, frepple::OperationPlan, frepple::OperationFixedTime, frepple::OperationTimePer, frepple::OperationRouting, frepple::OperationAlternate, frepple::Item, frepple::ItemDefault, frepple::Buffer, frepple::BufferDefault, frepple::BufferInfinite, frepple::BufferProcure, frepple::Flow, frepple::FlowStart, frepple::FlowEnd, frepple::Resource, frepple::ResourceDefault, frepple::ResourceInfinite, frepple::Load, frepple::Plan, frepple::Demand, frepple::DemandDefault, frepple::ProblemBeforeCurrent, frepple::ProblemBeforeFence, frepple::ProblemPrecedence, frepple::ProblemDemandNotPlanned, frepple::ProblemLate, frepple::ProblemEarly, frepple::ProblemShort, frepple::ProblemExcess, frepple::ProblemPlannedLate, frepple::ProblemPlannedEarly, frepple::ProblemCapacityOverload, frepple::ProblemCapacityUnderload, frepple::ProblemMaterialShortage, frepple::ProblemMaterialExcess, frepple::SolverMRP, module_forecast::Forecast, module_forecast::ForecastBucket, module_forecast::ForecastSolver, module_lp_solver::LPSolver, frepple::CalendarValue< double >, frepple::CalendarValue< int >, frepple::CalendarValue< string >, frepple::CalendarValue< bool >, and frepple::CalendarPointer< Operation >.

virtual void frepple::utils::Object::setHidden ( bool  b  )  [inline, virtual]

Mark the object as hidden or not. Hidden objects are not exported and are used only as dummy constructs.

Reimplemented in frepple::Operation, frepple::Buffer, frepple::Resource, and frepple::Demand.

Definition at line 2668 of file utils.h.

virtual void frepple::utils::Object::writeElement ( XMLOutput ,
const Keyword ,
mode  = DEFAULT 
) const [inline, virtual]

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

Generated on 25 Sep 2009 for frePPLe by  doxygen 1.6.1