frepple::OperationPlanRouting Class Reference

OperationPlans for routing operation uses this subclass for the instances. More...

#include <model.h>

Inheritance diagram for frepple::OperationPlanRouting:
frepple::OperationPlan frepple::utils::Object frepple::HasProblems frepple::utils::NonCopyable

List of all members.

Public Member Functions

void addSubOperationPlan (OperationPlan *o)
void eraseSubOperationPlan (OperationPlan *o)
virtual size_t getSize () const
virtual const
OperationPlan::OperationPlanList
getSubOperationPlans () const
bool initialize ()
void setEnd (Date d)
virtual void setLocked (bool b=true)
void setQuantity (double f, bool roundDown=false, bool update=true)
void setStart (Date d)
virtual void update ()
void updateProblems ()
 ~OperationPlanRouting ()

Friends

class OperationRouting

Detailed Description

OperationPlans for routing operation uses this subclass for the instances.

Definition at line 2436 of file model.h.


Constructor & Destructor Documentation

frepple::OperationPlanRouting::~OperationPlanRouting (  ) 

Definition at line 703 of file operationplan.cpp.


Member Function Documentation

void frepple::OperationPlanRouting::addSubOperationPlan ( OperationPlan o  ) 

Definition at line 684 of file operationplan.cpp.

void frepple::OperationPlanRouting::eraseSubOperationPlan ( OperationPlan o  ) 

Definition at line 733 of file operationplan.cpp.

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

Return the memory size of the object in bytes.

Reimplemented from frepple::OperationPlan.

Definition at line 2476 of file model.h.

virtual const OperationPlan::OperationPlanList& frepple::OperationPlanRouting::getSubOperationPlans (  )  const [inline, virtual]

Returns a reference to the list of sub-operationplans.
Subclasses where multiple sub-operationplans exist must override this method.

See also:
getSubOperationPlan

Reimplemented from frepple::OperationPlan.

Definition at line 2458 of file model.h.

bool frepple::OperationPlanRouting::initialize (  )  [virtual]

Initializes the operationplan and all steps in it. If no step operationplans had been created yet this method will create them. During this type of creation the end date of the routing operationplan is used and step operationplans are created. After the step operationplans are created the start date of the routing will be equal to the start of the first step.

Reimplemented from frepple::OperationPlan.

Definition at line 832 of file operationplan.cpp.

void frepple::OperationPlanRouting::setEnd ( Date  d  )  [virtual]

Updates the end date of the operation. Slack can be introduced in the routing by this method, i.e. the sub operationplans are only moved if required to meet the end date.

Reimplemented from frepple::OperationPlan.

Definition at line 748 of file operationplan.cpp.

void frepple::OperationPlanRouting::setLocked ( bool  b = true  )  [virtual]

Locks/unlocks an operationplan. A locked operationplan is never changed.

Reimplemented from frepple::OperationPlan.

Definition at line 739 of file operationplan.cpp.

void frepple::OperationPlanRouting::setQuantity ( double  f,
bool  roundDown = false,
bool  update = true 
) [virtual]

Updates the quantity.
The operationplan quantity is subject to the following rules:

  • The quantity must be greater than the minimum size.
    The value is rounded up to the minimum size ir required, or rounded down to 0.
  • The quantity must be a multiple of the multiple_size field.
    The value is rounded up or down to meet this constraint.
  • There is no maximum size to an operationplan.
  • Setting the quantity of an operationplan to 0 is always possible, regardless of the minimum and multiples values. This method can only be called on top operationplans. Sub operation plans should pass on a call to the parent operationplan.

Reimplemented from frepple::OperationPlan.

Definition at line 718 of file operationplan.cpp.

void frepple::OperationPlanRouting::setStart ( Date  d  )  [virtual]

Updates the start date of the operation. Slack can be introduced in the routing by this method, i.e. the sub operationplans are only moved if required to meet the start date.

Reimplemented from frepple::OperationPlan.

Definition at line 778 of file operationplan.cpp.

void frepple::OperationPlanRouting::update (  )  [virtual]

Updates the operationplan based on the latest information of quantity, date and locked flag.

Reimplemented from frepple::OperationPlan.

Definition at line 808 of file operationplan.cpp.

void frepple::OperationPlanRouting::updateProblems (  )  [virtual]

Problem detection is actually done by the Operation class. That class actually "delegates" the responsability to this class, for efficiency.

Reimplemented from frepple::OperationPlan.

Definition at line 165 of file problems_operationplan.cpp.


Friends And Related Function Documentation

friend class OperationRouting [friend]

Definition at line 2438 of file model.h.


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

Generated on 25 Feb 2010 for frePPLe by  doxygen 1.6.1