frepple::PeggingIterator Class Reference

This class allows upstream and downstream navigation through the plan. More...

#include <model.h>

Inheritance diagram for frepple::PeggingIterator:

List of all members.

Classes

struct  state

Public Member Functions

virtual void endElement (XMLInput &i, const Attribute &a, const DataElement &d)
BuffergetBuffer () const
Date getConsumingDate () const
OperationPlangetConsumingOperationplan () const
double getFactor () const
short getLevel () const
bool getPegged () const
Date getProducingDate () const
OperationPlangetProducingOperationplan () const
double getQuantityBuffer () const
double getQuantityDemand () const
size_t getSize () const
virtual const MetaClassgetType () const
bool isDownstream ()
 operator bool () const
bool operator!= (const PeggingIterator &x) const
PeggingIterator operator++ (int)
PeggingIteratoroperator++ ()
PeggingIterator operator-- (int)
PeggingIteratoroperator-- ()
bool operator== (const PeggingIterator &x) const
 PeggingIterator (const FlowPlan *e, bool b=true)
 PeggingIterator (const Demand *e)
void updateStack (short, double, double, const FlowPlan *, const FlowPlan *, bool=true)

Static Public Member Functions

static int initialize ()

Static Public Attributes

static const MetaCategorymetadata

Detailed Description

This class allows upstream and downstream navigation through the plan.

Downstream navigation follows the material flow from raw materials towards the produced end item.
Upstream navigation traces back the material flow from the end item up to the consumed raw materials.
The class is implemented as an STL-like iterator.

Definition at line 5732 of file model.h.


Constructor & Destructor Documentation

frepple::PeggingIterator::PeggingIterator ( const Demand e  ) 

Constructor.

Definition at line 53 of file pegging.cpp.

frepple::PeggingIterator::PeggingIterator ( const FlowPlan e,
bool  b = true 
) [inline]

Constructor.

Definition at line 5739 of file model.h.


Member Function Documentation

virtual void frepple::PeggingIterator::endElement ( XMLInput ,
const Attribute ,
const DataElement  
) [inline, 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.

Definition at line 5858 of file model.h.

Buffer* frepple::PeggingIterator::getBuffer (  )  const [inline]

Return the material buffer through which we are pegging.

Definition at line 5758 of file model.h.

Date frepple::PeggingIterator::getConsumingDate (  )  const [inline]

Return the date when the material is consumed.

Definition at line 5773 of file model.h.

OperationPlan* frepple::PeggingIterator::getConsumingOperationplan (  )  const [inline]

Return the operationplan consuming the material.

Definition at line 5751 of file model.h.

double frepple::PeggingIterator::getFactor (  )  const [inline]

Returns which portion of the current flowplan is fed/supplied by the original flowplan.

Definition at line 5810 of file model.h.

short frepple::PeggingIterator::getLevel (  )  const [inline]

Returns the recursion depth of the iterator.
The original flowplan is at level 0, and each level (either upstream or downstream) increments the value by 1.

Definition at line 5790 of file model.h.

bool frepple::PeggingIterator::getPegged (  )  const [inline]

Returns false if the flowplan remained unpegged, i.e. it wasn't -either completely or paritally- unconsumed at the next level.

Definition at line 5815 of file model.h.

Date frepple::PeggingIterator::getProducingDate (  )  const [inline]

Return the date when the material is produced.

Definition at line 5780 of file model.h.

OperationPlan* frepple::PeggingIterator::getProducingOperationplan (  )  const [inline]

Return the operationplan producing the material.

Definition at line 5766 of file model.h.

double frepple::PeggingIterator::getQuantityBuffer (  )  const [inline]

Returns the quantity of the buffer flowplans that is linked to this pegging record.

Definition at line 5800 of file model.h.

double frepple::PeggingIterator::getQuantityDemand (  )  const [inline]

Returns the quantity of the demand that is linked to this pegging record.

Definition at line 5795 of file model.h.

size_t frepple::PeggingIterator::getSize (  )  const [inline, virtual]

Return the memory size of the object in bytes.

Implements frepple::utils::Object.

Definition at line 5864 of file model.h.

virtual const MetaClass& frepple::PeggingIterator::getType (  )  const [inline, virtual]

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

Implements frepple::utils::Object.

Definition at line 5862 of file model.h.

int frepple::PeggingIterator::initialize (  )  [static]

Initialize the class.

Definition at line 37 of file pegging.cpp.

bool frepple::PeggingIterator::isDownstream (  )  [inline]

Returns true if this is a downstream iterator.

Definition at line 5853 of file model.h.

frepple::PeggingIterator::operator bool (  )  const [inline]

Conversion operator to a boolean value. The return value is true when the iterator still has next elements to explore. Returns false when the iteration is finished.

Definition at line 5847 of file model.h.

bool frepple::PeggingIterator::operator!= ( const PeggingIterator x  )  const [inline]

Inequality operator.

Definition at line 5841 of file model.h.

PeggingIterator frepple::PeggingIterator::operator++ ( int   )  [inline]

Move the iterator foward to the next downstream flowplan.
This post-increment operator is less efficient than the pre-increment operator.

Definition at line 5824 of file model.h.

PeggingIterator & frepple::PeggingIterator::operator++ (  ) 

Move the iterator foward to the next downstream flowplan.

Definition at line 91 of file pegging.cpp.

PeggingIterator frepple::PeggingIterator::operator-- ( int   )  [inline]

Move the iterator foward to the next upstream flowplan.
This post-increment operator is less efficient than the pre-decrement operator.

Definition at line 5834 of file model.h.

PeggingIterator & frepple::PeggingIterator::operator-- (  ) 

Move the iterator foward to the next upstream flowplan.

Definition at line 122 of file pegging.cpp.

bool frepple::PeggingIterator::operator== ( const PeggingIterator x  )  const [inline]

Comparison operator.

Definition at line 5838 of file model.h.

void frepple::PeggingIterator::updateStack ( short  l,
double  q,
double  f,
const FlowPlan fc,
const FlowPlan fp,
bool  p = true 
)

Update the stack.

Definition at line 68 of file pegging.cpp.


Member Data Documentation

Definition at line 5863 of file model.h.


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

Documentation generated for frePPLe by  doxygen