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

SPrecDAGMod Class Reference

#include <SPrecDAGMod.h>

Inherits SPrecRelationMod.

Inheritance diagram for SPrecDAGMod:

Inheritance graph
[legend]
List of all members.

Public Methods

 SPrecDAGMod (SPrecDAG &prec)
virtual void jobsAdded (const leda_list< SJob * > &newJobs)
virtual void jobsDeleted (const leda_list< SJob * > &jobs)
virtual void synchronize ()
virtual SPrecRelationclone_for (STaskSystem &rTS)
virtual leda_edge addDependency (SJob &source, SJob &target, bool doCycleCheck=false)
virtual bool delDependency (SJob &source, SJob &target)
SPrecDAGgetDAG ()
virtual bool load (std::istream &in)
virtual void save (std::ostream &out) const
virtual void sample ()

Protected Methods

SFlexLexergetLexer (std::istream &in)

Detailed Description

Modifier for DAG precedence relation.
See also:
SPrecDAG


Constructor & Destructor Documentation

SPrecDAGMod::SPrecDAGMod SPrecDAG   prec [inline]
 

Constructor


Member Function Documentation

leda_edge SPrecDAGMod::addDependency SJob   source,
SJob   target,
bool    doCycleCheck = false
[virtual]
 

Add edge in DAG. ("job source must be finished, before job target can be scheduled").

Parameters:
source  job which must precede job 'target'
target  target job
doCycleCheck  enable/disable check, if edge would create cycles
Returns:
inserted edge if successful, otherwise nil

Implements SPrecRelationMod.

SPrecRelation * SPrecDAGMod::clone_for STaskSystem   rTS [virtual]
 

bool SPrecDAGMod::delDependency SJob   source,
SJob   target
[virtual]
 

Delete edge in DAG.

Parameters:
source  source job
target  target job
Returns:
true, if an edge between 'source' and 'target' has been deleted, otherwise false (i.e. there was no edge, or the jobs were not different)

Implements SPrecRelationMod.

SPrecDAG& SPrecDAGMod::getDAG   [inline]
 

Return the DAG

SFlexLexer & SModifier::getLexer std::istream &    in [protected, inherited]
 

Get a reference to the global lexical-analyzer, in order to parse an input stream. There is only one lexer for all modifiers in the tasksystem to avoid wasting space. When the input stream is switched, the current line number is set to 1.

Parameters:
in  input stream

void SPrecDAGMod::jobsAdded const leda_list< SJob * > &    newJobs [virtual]
 

Information that new jobs have been appended to the task system

Parameters:
newJobs  list of new jobs

Implements SPrecRelationMod.

void SPrecDAGMod::jobsDeleted const leda_list< SJob * > &    jobs [virtual]
 

Information that jobs have been deleted from the task system

Parameters:
job  list of old jobs

Implements SPrecRelationMod.

bool SPrecDAGMod::load std::istream &    in [virtual]
 

Load DAG from stream 'in'

Returns:
true if successfull, otherwise false

Implements SModifier.

virtual void SPrecDAGMod::sample   [inline, virtual]
 

Reimplemented from SModifier.

void SPrecDAGMod::save std::ostream &    out const [virtual]
 

Save DAG to stream 'out'

Implements SModifier.

void SPrecDAGMod::synchronize   [virtual]
 

Synchronizing precedence relation with jobs of tasksystem after deletion of jobs

Implements SPrecRelationMod.


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