org.shiwa.fgi.iwir
Class ParallelForEachTask

java.lang.Object
  extended by org.shiwa.fgi.iwir.AbstractTask
      extended by org.shiwa.fgi.iwir.AbstractCompoundTask
          extended by org.shiwa.fgi.iwir.AbstractSimpleCompoundTask
              extended by org.shiwa.fgi.iwir.ParallelForEachTask

public class ParallelForEachTask
extends AbstractSimpleCompoundTask

The Class ParallelForEachTask provides the iteration over a data package without synchronization.


Constructor Summary
ParallelForEachTask(java.lang.String name)
          Instantiates a new parallel for each task.
 
Method Summary
 void addLoopElement(LoopElement loopelement)
          Adds an additional loop element to the task.
 java.util.List<AbstractDataPort> getAllInputPorts()
          Returns a list of all input ports (inputPort, loopPoort,...).
 java.util.List<AbstractDataPort> getAllOutputPorts()
          Returns a list of all output ports (outputPort, unionPort,...).
 java.util.List<LoopElement> getLoopElements()
          Returns a shallow copy of the loop elements.
 
Methods inherited from class org.shiwa.fgi.iwir.AbstractSimpleCompoundTask
addTask, equals, getBodyTasks, getChildren, hashCode
 
Methods inherited from class org.shiwa.fgi.iwir.AbstractCompoundTask
addLink, addLink, getControlLinks, getDataLinks, getLinks
 
Methods inherited from class org.shiwa.fgi.iwir.AbstractTask
addConstraint, addInputPort, addOutputPort, addProperty, getConstraints, getInputPorts, getName, getOutputPorts, getParentTask, getPort, getProperties, getUniqueId, isTopLevelTask, removeProperty, setPortValue, setPortValue, setPortValue, setPortValue, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ParallelForEachTask

public ParallelForEachTask(java.lang.String name)
Instantiates a new parallel for each task.

Parameters:
name - the name of the task.
Method Detail

addLoopElement

public void addLoopElement(LoopElement loopelement)
                    throws NotWellFormedException
Adds an additional loop element to the task. Throws a NotWellFormedException if loopelement already exist, for example.

Parameters:
loopelement - the loopelement to add to the task
Throws:
NotWellFormedException - the not well formed exception

getLoopElements

public java.util.List<LoopElement> getLoopElements()
Returns a shallow copy of the loop elements. Returns an empty list if no loop element exists.

Returns:
the loop elements of the task

getAllInputPorts

public java.util.List<AbstractDataPort> getAllInputPorts()
Description copied from class: AbstractTask
Returns a list of all input ports (inputPort, loopPoort,...). For the loopCounter its ports (from,to,step) are added, if they exist.

Specified by:
getAllInputPorts in class AbstractTask
Returns:
the all input ports

getAllOutputPorts

public java.util.List<AbstractDataPort> getAllOutputPorts()
Description copied from class: AbstractTask
Returns a list of all output ports (outputPort, unionPort,...).

Specified by:
getAllOutputPorts in class AbstractTask
Returns:
the all input ports