frepple::SolverMRP::SolverMRPdata Class Reference

This class is a helper class of the SolverMRP class. More...

#include <solver.h>

Inheritance diagram for frepple::SolverMRP::SolverMRPdata:

List of all members.

Public Member Functions

virtual void commit ()
unsigned short getLogLevel () const
virtual size_t getSize () const
SolverMRPgetSolver () const
virtual const MetaClassgetType () const
bool getVerbose () const
void pop ()
void push (double q=0.0, Date d=Date::infiniteFuture)
 SolverMRPdata (SolverMRP *s=NULL, int c=0, deque< Demand * > *d=NULL)

Static Public Member Functions

static void runme (void *args)

Public Attributes

Stateprevstate
Statestate

Friends

class SolverMRP

Detailed Description

This class is a helper class of the SolverMRP class.

It stores the solver state maintained by each solver thread.

See also:
SolverMRP

Definition at line 552 of file solver.h.


Constructor & Destructor Documentation

frepple::SolverMRP::SolverMRPdata::SolverMRPdata ( SolverMRP s = NULL,
int  c = 0,
deque< Demand * > *  d = NULL 
) [inline]

Constructor.

Definition at line 567 of file solver.h.


Member Function Documentation

void frepple::SolverMRP::SolverMRPdata::commit ( ) [virtual]

This function runs a single planning thread. Such a thread will loop through the following steps:

  • Use the method next_cluster() to find another unplanned cluster.
  • Exit the thread if no more cluster is found.
  • Sort all demands in the cluster, using the demand_comparison() method.
  • Loop through the sorted list of demands and plan each of them. During planning the demands exceptions are caught, and the planning loop will simply move on to the next demand. In this way, an error in a part of the model doesn't ruin the complete plan.
    See also:
    demand_comparison
    next_cluster

Reimplemented from frepple::utils::CommandManager.

Definition at line 79 of file solverplan.cpp.

unsigned short frepple::SolverMRP::SolverMRPdata::getLogLevel ( ) const [inline]

Verbose mode is inherited from the solver.

Definition at line 572 of file solver.h.

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

Definition at line 591 of file solver.h.

SolverMRP* frepple::SolverMRP::SolverMRPdata::getSolver ( ) const [inline]

Return the solver.

Definition at line 564 of file solver.h.

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

Definition at line 590 of file solver.h.

bool frepple::SolverMRP::SolverMRPdata::getVerbose ( ) const [inline]

Definition at line 593 of file solver.h.

void frepple::SolverMRP::SolverMRPdata::pop ( ) [inline]

Removes a state from the status stack.

Definition at line 617 of file solver.h.

void frepple::SolverMRP::SolverMRPdata::push ( double  q = 0.0,
Date  d = Date::infiniteFuture 
) [inline]

Add a new state to the status stack.

Definition at line 599 of file solver.h.

static void frepple::SolverMRP::SolverMRPdata::runme ( void *  args) [inline, static]

Definition at line 556 of file solver.h.


Friends And Related Function Documentation

friend class SolverMRP [friend]

Definition at line 554 of file solver.h.


Member Data Documentation

Pointer to the solver status one level higher on the stack.

Definition at line 655 of file solver.h.

Pointer to the current solver status.

Definition at line 652 of file solver.h.


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

Documentation generated for frePPLe by  doxygen