pipe.dataLayer.calculations
Class myNode

java.lang.Object
  extended bypipe.dataLayer.calculations.myNode

public class myNode
extends java.lang.Object

Author:
Matthew Cook after James Bloom/Clare Clark Class used in state space and GSPN modules for generation of trees and arrays of possible state spaces

Field Summary
(package private)  myNode[] children
           
(package private)  int depth
           
(package private)  int[] Markup
           
(package private)  myNode parent
           
(package private)  myNode previousInstance
           
(package private)  boolean Repeated_Node
           
(package private)  boolean[] trans_array
           
(package private)  myTree tree
           
 
Constructor Summary
myNode(int[] marking_array, myNode parent_node, myTree atree, int treeDepth)
           
myNode(int[] marking_array, myTree atree, int treeDepth)
           
 
Method Summary
 boolean FindMarkup(myNode n)
           
 int[] fire(int transIndex)
           
 boolean InsertOmegas()
           
 boolean MarkupCompare(int[] check)
           
 void print(boolean[] transitions)
           
 void RecordDeadlockPath()
           
 void RecursiveExpansion()
           
 void RecursiveExpansion(StateList statespace, boolean[] timedTrans)
          This function recursively generates potential state spaces from existing state spaces (as per algorithm written by James Bloom & Clare Clark for PIPE 2003) and adds new state spaces to the StateList array supplied as a parameter.
 boolean TransitionEnabled(int transIndex)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

trans_array

boolean[] trans_array

parent

myNode parent

children

myNode[] children

tree

myTree tree

Markup

int[] Markup

previousInstance

myNode previousInstance

depth

int depth

Repeated_Node

boolean Repeated_Node
Constructor Detail

myNode

public myNode(int[] marking_array,
              myTree atree,
              int treeDepth)

myNode

public myNode(int[] marking_array,
              myNode parent_node,
              myTree atree,
              int treeDepth)
Method Detail

TransitionEnabled

public boolean TransitionEnabled(int transIndex)

fire

public int[] fire(int transIndex)

RecursiveExpansion

public void RecursiveExpansion()
                        throws TreeTooBigException
Throws:
TreeTooBigException

RecordDeadlockPath

public void RecordDeadlockPath()

RecursiveExpansion

public void RecursiveExpansion(StateList statespace,
                               boolean[] timedTrans)
                        throws TreeTooBigException
This function recursively generates potential state spaces from existing state spaces (as per algorithm written by James Bloom & Clare Clark for PIPE 2003) and adds new state spaces to the StateList array supplied as a parameter. The StateList add method checks for duplicate entries before accepting the add, so once the recursion is complete, the list contains a complete and unique set of all possible markings of the specified net. It contains checking to ensure that states containing both timed and untimed enabled transitions will only allow the untimed transitions to fire.

Parameters:
statespace -
Throws:
TreeTooBigException

InsertOmegas

public boolean InsertOmegas()

FindMarkup

public boolean FindMarkup(myNode n)

MarkupCompare

public boolean MarkupCompare(int[] check)

print

public void print(boolean[] transitions)