#include <SOptCriterionLog.h>
Inherits SLogger.
Inheritance diagram for SOptCriterionLog:
Public Types | |
enum | Type { MAX, SUM, MEAN } |
enum | Criterion { COMPLETION, FLOW, LATENESS, TARDINESS, EARLINESS, NUMTARDYTASKS } |
Public Methods | |
SOptCriterionLog (STaskSystem &ts, bool registerAsObserver=true) | |
~SOptCriterionLog () | |
virtual void | feedEvent (const SEvent &event) |
double | getValue (Criterion crit, Type type=MAX, bool weighted=false) const |
double | getMakeSpan () const |
double | getMeanFlowTime () const |
double | getMaxLateness () const |
double | getCompletionTime (int job) const |
void | reset () |
virtual void | update (const SEvent &event) |
|
Criteria: COMPLETION, FLOW, LATENESS, TARDINESS, EARLINESS, NUMTARDYTASKS |
|
Functions: MAX, SUM, MEAN |
|
Constructor
|
|
Destructor |
|
Here the logger must be fed with events when it is a dependent logger
Implements SLogger. |
|
Get the completion time of a job
|
|
Frequently used criterion: make span ( = maximum completion time)
|
|
Frequently used criterion: maximum lateness
|
|
Frequently used criterion: mean flow time
|
|
Get the value for a specified optimality criterion. You can mix every criterion with MAX, SUM or MEAN and weighted as you like, even if it doesn't make sense; You can use this method also when scheduling is in progress, but remember that only finished jobs will be considered; NOTE: with NUMTARDYTASKS the type (MAX,SUM,MEAN) doesn't matter
|
|
Adjust internal data structure to number of jobs in tasksystem and reset data structure to default values. Call it when the number of jobs have changed. |
|
Here the logger receives events when it is a stand-alone logger
Implements SObserver. Reimplemented in SGanttLog. |