de.upb.swt.epctools.simulator.explicit
Class Node_DS

java.lang.Object
  extended by de.upb.swt.epctools.simulator.explicit.Node_DS
Direct Known Subclasses:
EventFunction_DS, JoinConnector_DS, SplitConnector_DS

abstract class Node_DS
extends java.lang.Object

Implements a node of the EPC data structure.

Author:
Ekkart Kindler, kindler@upb.de

Field Summary
(package private)  EPC_DS epc
          The EPC data structure to which this node belongs to.
(package private)  Node modelNode
          The node in the actual EPC model to which this node corresponds.
(package private)  int nodeNumber
          The number of this node in the data structure.
 
Constructor Summary
Node_DS()
           
 
Method Summary
(package private) abstract  void addInputArc(Arc_DS arc)
          Adds an input arc to this node;
(package private) abstract  void addOutputArc(Arc_DS arc)
          Adds an output arc to this node;
(package private) abstract  void addSuccessors(State state, TransitionSystem ts)
          Adds the successor states and he corresponding transitions for that node to the transition system.
(package private) abstract  boolean enabled(State state)
          Checks whether the node is enabled in the given state.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

modelNode

Node modelNode
The node in the actual EPC model to which this node corresponds.


epc

EPC_DS epc
The EPC data structure to which this node belongs to.


nodeNumber

int nodeNumber
The number of this node in the data structure. Note that there is a separate numbering for local nodes, OR-join connectors, and XOR-join connectors.

Constructor Detail

Node_DS

Node_DS()
Method Detail

addInputArc

abstract void addInputArc(Arc_DS arc)
                   throws EPCSyntaxError
Adds an input arc to this node;

Parameters:
arc - to be added as input arc
Throws:
EPCSyntaxError - if there is an input arc already

addOutputArc

abstract void addOutputArc(Arc_DS arc)
                    throws EPCSyntaxError
Adds an output arc to this node;

Parameters:
arc - to be added as output arc
Throws:
EPCSyntaxError - if there is an output arc already

enabled

abstract boolean enabled(State state)
Checks whether the node is enabled in the given state.

Parameters:
state -
Returns:
true if the node is enabled in the state

addSuccessors

abstract void addSuccessors(State state,
                            TransitionSystem ts)
Adds the successor states and he corresponding transitions for that node to the transition system. Note that this methos must not be called with a state in which the node is not enabled.

Parameters:
state -
ts - to which the succesor states are added