Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

SSmplShopAlg Class Reference

#include <SSmplShopAlg.h>

Inherits SSchedAlgorithm.

Inheritance diagram for SSmplShopAlg:

Inheritance graph
[legend]
List of all members.

Public Methods

virtual ~SSmplShopAlg ()
virtual void startup ()
virtual double innerLoop (const leda_list< STSysSchedEvent > &)
virtual const leda_string getDescription () const
virtual const leda_string & getName () const
virtual const SClassificationgetClassification () const
virtual SLeaBibEntrygetLeaBibEntry () const
virtual bool isFinished () const
STaskSystemgetTaskSystem ()
const STaskSystemgetTaskSystem () const
virtual void setTaskSystem (STaskSystem &rTS)
virtual leda_string getCurrentActionDescription (const int level) const
void addObserver (SObserver &obs)
void deleteObserver (SObserver &obs)
void notifyObservers (const SEvent &event)

Static Public Methods

const leda_string & getNameFromClass ()

Protected Methods

virtual void setCurrentActionDescription (const int level, leda_string descr)

Detailed Description

Simple implementation of a stupid algorithm for all shop problems. This class is meant to be a test for scheduling in shop environments.


Constructor & Destructor Documentation

virtual SSmplShopAlg::~SSmplShopAlg   [inline, virtual]
 


Member Function Documentation

void SObservable::addObserver SObserver   obs [inline, inherited]
 

Here another component can register himself as observer of this component

Parameters:
obs  observer that wants to be notified of events created by this class

void SObservable::deleteObserver SObserver   obs [inline, inherited]
 

Here another component can delete himself from the list of observers of this component

Parameters:
obs  observer that doesn't want to be notified anymore

const SClassification & SSmplShopAlg::getClassification   [virtual]
 

Returns the classification scheme of the problem, which the algorithm is able to solve. NOTE: will be abstract!

Returns:
problem classification

Implements SSchedAlgorithm.

virtual leda_string SSchedAlgorithm::getCurrentActionDescription const int    level const [inline, virtual, inherited]
 

Clones a scheduling algorithm.

Returns:
pointer to the cloned algorithm

const leda_string SSmplShopAlg::getDescription   [virtual]
 

Returns a textual description about this algorithm. This should contain at least the solved problem classification, complexity and a short description how the algorithm works

Returns:
description

Implements SSchedAlgorithm.

SLeaBibEntry & SSmplShopAlg::getLeaBibEntry   [virtual]
 

Returns a dictionary providing detailed information about the algorithm NOTE: will be abstract!

Returns:
dictionary

Implements SSchedAlgorithm.

const leda_string & SSmplShopAlg::getName   [virtual]
 

Returns the name of the scheduling algorithm, e.g. "Coffman-Graham" NOTE: will be abstract!

Returns:
algorithms name

Implements SSchedAlgorithm.

const leda_string& SSchedAlgorithm::getNameFromClass   [static, inherited]
 

const STaskSystem& SSchedAlgorithm::getTaskSystem   const [inline, inherited]
 

Get a read-only reference to the tasksystem.

Returns:
tasksystem

STaskSystem& SSchedAlgorithm::getTaskSystem   [inline, inherited]
 

Get a reference to the tasksystem.

Returns:
tasksystem

double SSmplShopAlg::innerLoop const leda_list< STSysSchedEvent > &    [virtual]
 

Allocating and deallocating of jobs on machines. The algorithm gets the events of the current simulation step, in order to react on these events ("online algorithm"). The algorithm can define a relative alarm time (relative to the current simumlation step); then the tasksystem will advance until the alarm time and call innerLoop() again. This is used for preemtion for instance. If this time is <= 0 the alarm function is deactivated.

Parameters:
rEvents  list of scheduling events
Returns:
relative alarm time

Implements SSchedAlgorithm.

bool SSchedAlgorithm::isFinished   [virtual, inherited]
 

Returns whether the algorithm is finished. The default implementation checks if all jobs are finished.

Returns:
true, if the algorithm is finished and therefore the simulation shall terminate.

Reimplemented in SPlayer, SSmithsRatioRule, and SSmithWSEPT.

void SObservable::notifyObservers const SEvent   event [inline, inherited]
 

Inform all observers of this component about an event. The Observers will receive this event by their SObserver::update()-method.

Parameters:
event  an event that is sent to all observers of this component
See also:
SObserver::update()

void SSchedAlgorithm::setCurrentActionDescription const int    level,
leda_string    descr
[protected, virtual, inherited]
 

virtual void SSchedAlgorithm::setTaskSystem STaskSystem   rTS [inline, virtual, inherited]
 

This should contain initialization code which shall be run only the first time the algorithm works on a specific task system.

Parameters:
rTS  reference to the tasksystem

void SSmplShopAlg::startup   [virtual]
 

Prints a summary to console about the environment of machines, about processing times of jobs and operations and about which operation must be processed on which machine.

Reimplemented from SSchedAlgorithm.


The documentation for this class was generated from the following files:
Generated on Thu May 22 16:50:55 2003 for Sketch-it! by doxygen1.2.18