Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## pipe.dataLayer
Class DataLayer

    java.lang.Object
      java.util.Observable
          pipe.dataLayer.DataLayer

All Implemented Interfaces:
  Constants

public class DataLayer
extends java.util.Observable
implements Constants

DataLayer - Encapsulates entire Petri-Net, also contains functions to perform calculations

Version:
  1.0
Author:
  James D Bloom
See Also:

  PNML - Petri-Net XMLSchema (stNet.xsd),

  DataLayer UML

Field Summary
`private java.util.ArrayList` | `arcsArray` ArrayList containing all the Arc objects in the Petri-Net
`private java.util.Hashtable` | `arcsMap` Hashtable which maps PlaceTransitionObjects to their list of connected arcs
`private java.util.ArrayList` | `arrowsArray` ArrayList containing all the Arrow objects in the Petri-Net
`private PNMatrix` | `backwardsIncidenceMatrix` Backward Incidence Matrix
`private java.util.ArrayList` | `changeArrayList` An ArrayList used to point to either the Arc, Place or Transition ArrayLists when these ArrayLists are being update
`private int[]` | `currentMarkupMatrix` Initial Markup Matrix
`private int` | `DISPLAY_SCALE_FACTORX` X-Axis Scale Value
`private int` | `DISPLAY_SCALE_FACTORY` Y-Axis Scale Value
`private int` | `DISPLAY_SHIFT_FACTORX` X-Axis Shift Value
`private int` | `DISPLAY_SHIFT_FACTORY` Y-Axis Shift Value
`private PNMatrix` | `fowardsIncidenceMatrix` Foward Incidence Matrix
`private PNMatrix` | `incidenceMatrix` Incidence Matrix
`private int[]` | `initialMarkupMatrix` Initial Markup Matrix
`private java.util.ArrayList` | `labelsArray` ArrayList for net-level label objects (as opposed to element-level labels).
`private PNMatrix` | `markupHistoryMatrix` Markup Storage Array
`private int[]` | `markupMatrixAnimationStorage` Markup Matrix Storage used during animation
`private java.lang.Object[]` | `markupStore` Markup Matrix Storage
`private java.util.ArrayList` | `placesArray` List containing all the Place objects in the Petri-Net
`private java.lang.String` | `pnmlName` PNML File Name
`private int` | `position` Markup Matrix Storage Position
`private static java.util.Random` | `randomNumber`
`private java.util.ArrayList` | `tokensArray` ArrayList containing all the Token objects in the Petri-Net
`private java.util.ArrayList` | `transitionsArray` ArrayList containing all the Transition objects in the Petri-Net

Fields inherited from class java.util.Observable
``

Fields inherited from interface pipe.gui.Constants
`ADDTOKEN, ANIMATE, ANNOTATION, ANNOTATION_DEFAULT_FONT, ANNOTATION_DEFAULT_FONT_SIZE, ANNOTATION_LAYER_OFFSET, ANNOTATION_MIN_WIDTH, ANNOTATION_SIZE_OFFSET, ARC, ARC_CONTROL_POINT_CONSTANT, ARC_LAYER_OFFSET, ARC_PATH_PROXIMITY_WIDTH, ARC_PATH_SELECTION_WIDTH, ARC_POINT_LAYER_OFFSET, CREATING, DEFAULT_ELEMENT_TYPE, DELETE, DELTOKEN, DRAW, ELEMENT_FILL_COLOUR, ELEMENT_LINE_COLOUR, ENABLED_TRANSITION_COLOUR, FIRE, GRID, IMMTRANS, LOWEST_LAYER_OFFSET, NOTE_DISABLED_COLOUR, NOTE_EDITING_COLOUR, PLACE, PLACE_TRANSITION_HEIGHT, PLACE_TRANSITION_LAYER_OFFSET, PLACE_TRANSITION_PROXIMITY_RADIUS, PROPERTY_FILE_DESC, PROPERTY_FILE_EXTENSION, RANDOM, RESERVED_BORDER, RESIZE_POINT_DOWN_COLOUR, SELECT, SELECTION_FILL_COLOUR, SELECTION_LAYER_OFFSET, SELECTION_LINE_COLOUR, START, STEPBACKWARD, STEPFORWARD, STOP, TIMEDTRANS`

Constructor Summary
`DataLayer()` Create empty Petri-Net object
`DataLayer(java.io.File pnmlFile)` Create Petri-Net object from pnmlFile
`DataLayer(java.lang.String pnmlFileName)` Create Petri-Net object from PNML file with URI pnmlFileName

Method Summary
`void` | `addAnnotation(AnnotationNote labelInput)` Add placeInput to the back of the Place ArrayList All observers are notified of this change (Model-View Architecture)
`void` | `addArc(Arc arcInput)` Add arcInput to back of the Arc ArrayList All observers are notified of this change (Model-View Architecture)
`private void` | `addArcToArcsMap(Arc arcInput)` Update the arcsMap hashtable to reflect the new arc
`void` | `addPetriNetObject(PetriNetObject pnObject)` Add any PetriNetObject - the object will be added to the appropriate list.
`void` | `addPlace(Place placeInput)` Add placeInput to the back of the Place ArrayList All observers are notified of this change (Model-View Architecture)
`void` | `addToken(Token tokenInput)` Add tokenInput to the back of the Token ArrayList All observers are notified of this change.
`void` | `addTransition(Transition transitionInput)` Add transitionInput to back of the Transition ArrayList All observers are notified of this change (Model-View Architecture)
`private AnnotationNote` | `createAnnotation(org.w3c.dom.Element inputLabelElement)` Creates a Label object from a Label DOM Element
`private org.w3c.dom.Element` | `createAnnotationNoteElement(AnnotationNote inputLabel, org.w3c.dom.Document document)` Creates a Place Element for a PNML Petri-Net DOM
`private Arc` | `createArc(org.w3c.dom.Element inputArcElement)` Creates a Arc object from a Arc DOM Element
`private org.w3c.dom.Element` | `createArcElement(Arc inputArc, org.w3c.dom.Document document)` Creates a Arc Element for a PNML Petri-Net DOM
`private org.w3c.dom.Element` | `createArcPoint(java.lang.String x, java.lang.String y, java.lang.String type, org.w3c.dom.Document document, int id)`
`private void` | `createBackwardsIncidenceMatrix()` Creates Backwards Incidence Matrix from current Petri-Net
`private void` | `createCurrentMarkupMatrix()` Creates Initial Markup Matrix from current Petri-Net
`private void` | `createFowardIncidenceMatrix()` Creates Foward Incidence Matrix from current Petri-Net
`private void` | `createIncidenceMatrix()` Creates Incidence Matrix from current Petri-Net
`private void` | `createInitialMarkupMatrix()` Creates Initial Markup Matrix from current Petri-Net
`private void` | `createMatrixes()` Creates all Petri-Net Matrixes from current Petri-Net
`private Place` | `createPlace(org.w3c.dom.Element inputPlaceElement)` Creates a Place object from a Place DOM Element
`private org.w3c.dom.Element` | `createPlaceElement(Place inputPlace, org.w3c.dom.Document document)` Creates a Place Element for a PNML Petri-Net DOM
`private Transition` | `createTransition(org.w3c.dom.Element inputTransitionElement)` Creates a Transition object from a Transition DOM Element
`private org.w3c.dom.Element` | `createTransitionElement(Transition inputTransition, org.w3c.dom.Document document)` Creates a Transition Element for a PNML Petri-Net DOM
`void` | `emptyPNML()` Empty all attributes, turn into empty Petri-Net
`Transition` | `fireRandomTransition()` Fire a random transition, takes rate (probability) of Transitions into account
`void` | `fireRandomTransitionBackwards()`
`private void` | `fireTransition(int transitionNo)` Fire a specified transition, no affect if transtions not enabled
`void` | `fireTransition(Transition transition)` Fire a specified transition, no affect if transtions not enabled
`private void` | `fireTransitionBackwards(int transitionNo)`
`void` | `fireTransitionBackwards(Transition transition)`
`Arc` | `getArc(java.lang.String arcName)` Return the Arc called arcName from the Petri-Net
`Arc[]` | `getArcs()` Get an List of all the Arcs objects in the Petri-Net
`Arc` | `getArcWithSource(PetriNetObject arcName)` Return the Arc called arcName from the Petri-Net
`Arc` | `getArcWithTarget(PetriNetObject arcName)` Return the Arc called arcName from the Petri-Net
`int[][]` | `getBackwardsIncidenceMatrix()` Return the Backward Incidence Matrix for the Petri-Net
`int[]` | `getCurrentMarkupMatrix()` Return the Initial Markup Matrix for the Petri-Net
`org.w3c.dom.Document` | `getDOM()` Return a DOM for the Petri-Net
`org.w3c.dom.Document` | `getDOM(java.io.File pnmlFile)` Return a DOM for the PNML File pnmlFile
`org.w3c.dom.Document` | `getDOM(java.lang.String pnmlFileName)` Return a DOM for the PNML file at URI pnmlFileName
`int[][]` | `getForwardsIncidenceMatrix()` Return the Foward Incidence Matrix for the Petri-Net
`int[][]` | `getIncidenceMatrix()` Return the Incidence Matrix for the Petri-Net
`int[]` | `getInitialMarkupMatrix()` Return the Initial Markup Matrix for the Petri-Net
`AnnotationNote[]` | `getLabels()` Get a List of all the net-level NameLabel objects in the Petri-Net
`int` | `getListPosition(PetriNetObject pnObject)` Get position of Petri-Net Object in ArrayList of given Petri-Net Object's type
`java.util.Iterator` | `getPetriNetObjects()` Returns an iterator of all PetriNetObjects - the order of these cannot be guaranteed.
`Place` | `getPlace(int placeNo)` Return the Place called placeName from the Petri-Net
`Place` | `getPlace(java.lang.String placeName)` Return the Place called placeName from the Petri-Net
`Place[]` | `getPlaces()` Get an List of all the Place objects in the Petri-Net
`PlaceTransitionObject` | `getPlaceTransitionObject(java.lang.String ptoId)` Return the PlaceTransitionObject called ptoName from the Petri-Net
`Transition` | `getTransition(int transitionNo)` Return the Transition called transitionName from the Petri-Net
`Transition` | `getTransition(java.lang.String transitionName)` Return the Transition called transitionName from the Petri-Net
`Transition[]` | `getTransitions()` Get an List of all the Transition objects in the Petri-Net
`java.lang.String` | `getURI()` Return a URI for the PNML file for the Petri-Net
`private void` | `initializeMatrixes()` Initialize Arrays
`void` | `loadPNML(java.lang.String filename)` Load PNML file
`void` | `print()` prints out a brief representation of the dataLayer object
`void` | `removeArc(java.lang.String idInput)` Remove first Arc that has an id equal to idInput
`void` | `removePetriNetObject(PetriNetObject pnObject)` Removes the specified object from the appropriate ArrayList of objects.
`void` | `removePlace(java.lang.String idInput)` Remove first Place that has an id equal to idInput
`void` | `removeTransition(java.lang.String idInput)` Remove first Transition that has an id equal to idInput
`void` | `resetEnabledTransitions()`
`void` | `restoreInitialMarking()` Restores Initial Markup Matrix to current Petri-Net Markup
`void` | `restoreState()` Restores To previous Stored Markup
`java.util.Iterator` | `returnTransitions()`
`void` | `savePNML(java.io.File file)` Save the Petri-Net
`void` | `savePNML(java.lang.String filename)` Save the Petri-Net
`void` | `setArcConnectionMap()` Function populates the arcsMap hashtable enabling easier cross referencing of places, transitions and the arcs connected to them.
`void` | `setBackwardsIncidenceMatrix(int[][] backwardsIncidenceInput)` Set the Backward Incidence Matrix
`void` | `setEnabledTransitions()` Determines whether all transitions are enabled and sets the correct value of the enabled boolean
`void` | `setEnabledTransitionsBackwards()` Determines whether all transitions are enabled and sets the correct value of the enabled boolean
`void` | `setFowardIncidenceMatrix(int[][] fowardIncidenceInput)` Set the Foward Incidence Matrix
`void` | `setIncidenceMatrix(int[][] incidenceInput)` Set the Incidence Matrix
`void` | `setInitalMarkupMatrix(int[][] markupInput)` Set the Initial Markup Matrix
`private boolean` | `setPetriNetObjectArrayList(PetriNetObject pnObject)` Sets an internal ArrayList according to the class of the object passed in.
`void` | `storeInitialMarking()` Stores Initial Markup Matrix from current Petri-Net Markup
`void` | `storeState()` Stores Current Markup

Methods inherited from class java.util.Observable
`addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### randomNumber

    private static java.util.Random randomNumber

### pnmlName

    private java.lang.String pnmlName

  PNML File Name

### placesArray

    private java.util.ArrayList placesArray

  List containing all the Place objects in the Petri-Net

### transitionsArray

    private java.util.ArrayList transitionsArray

  ArrayList containing all the Transition objects in the Petri-Net

### arcsArray

    private java.util.ArrayList arcsArray

  ArrayList containing all the Arc objects in the Petri-Net

### tokensArray

    private java.util.ArrayList tokensArray

  ArrayList containing all the Token objects in the Petri-Net

### arrowsArray

    private java.util.ArrayList arrowsArray

  ArrayList containing all the Arrow objects in the Petri-Net

### labelsArray

    private java.util.ArrayList labelsArray

  ArrayList for net-level label objects (as opposed to element-level labels).

### changeArrayList

    private java.util.ArrayList changeArrayList

  An ArrayList used to point to either the Arc, Place or Transition ArrayLists when these ArrayLists are being update

### initialMarkupMatrix

    private int[] initialMarkupMatrix

  Initial Markup Matrix

### currentMarkupMatrix

    private int[] currentMarkupMatrix

  Initial Markup Matrix

### markupMatrixAnimationStorage

    private int[] markupMatrixAnimationStorage

  Markup Matrix Storage used during animation

### markupStore

    private java.lang.Object[] markupStore

  Markup Matrix Storage

### position

    private int position

  Markup Matrix Storage Position

### markupHistoryMatrix

    private PNMatrix markupHistoryMatrix

  Markup Storage Array

### fowardsIncidenceMatrix

    private PNMatrix fowardsIncidenceMatrix

  Foward Incidence Matrix

### backwardsIncidenceMatrix

    private PNMatrix backwardsIncidenceMatrix

  Backward Incidence Matrix

### incidenceMatrix

    private PNMatrix incidenceMatrix

  Incidence Matrix

### DISPLAY_SCALE_FACTORX

    private final int DISPLAY_SCALE_FACTORX

  X-Axis Scale Value

  See Also:
    Constant Field Values

### DISPLAY_SCALE_FACTORY

    private final int DISPLAY_SCALE_FACTORY

  Y-Axis Scale Value

  See Also:
    Constant Field Values

### DISPLAY_SHIFT_FACTORX

    private final int DISPLAY_SHIFT_FACTORX

  X-Axis Shift Value

  See Also:
    Constant Field Values

### DISPLAY_SHIFT_FACTORY

    private final int DISPLAY_SHIFT_FACTORY

  Y-Axis Shift Value

  See Also:
    Constant Field Values

### arcsMap

    private java.util.Hashtable arcsMap

  Hashtable which maps PlaceTransitionObjects to their list of connected arcs

Constructor Detail

### DataLayer

    public DataLayer(java.lang.String pnmlFileName)

  Create Petri-Net object from PNML file with URI pnmlFileName

Parameters:
  `pnmlFileName` - Name of PNML File

### DataLayer

    public DataLayer(java.io.File pnmlFile)

  Create Petri-Net object from pnmlFile

Parameters:
  `pnmlFile` - PNML File

### DataLayer

    public DataLayer()

  Create empty Petri-Net object

Method Detail

### initializeMatrixes

    private void initializeMatrixes()

  Initialize Arrays

### setArcConnectionMap

    public void setArcConnectionMap()

  Function populates the arcsMap hashtable enabling easier cross referencing of places, transitions and the arcs connected to them.

### removePlace

    public void removePlace(java.lang.String idInput)

  Remove first Place that has an id equal to idInput

  Parameters:
    `idInput` - id of Place object to remove from Petri-Net

### removeTransition

    public void removeTransition(java.lang.String idInput)

  Remove first Transition that has an id equal to idInput

  Parameters:
    `idInput` - id of Transition object to remove from Petri-Net

### removeArc

    public void removeArc(java.lang.String idInput)

  Remove first Arc that has an id equal to idInput

  Parameters:
    `idInput` - id of Arc object to remove from Petri-Net

### addPlace

    public void addPlace(Place placeInput)

  Add placeInput to the back of the Place ArrayList All observers are notified of this change (Model-View Architecture)

  Parameters:
    `placeInput` - Place Object to add

### addAnnotation

    public void addAnnotation(AnnotationNote labelInput)

  Add placeInput to the back of the Place ArrayList All observers are notified of this change (Model-View Architecture)

### addTransition

    public void addTransition(Transition transitionInput)

  Add transitionInput to back of the Transition ArrayList All observers are notified of this change (Model-View Architecture)

  Parameters:
    `transitionInput` - Transition Object to add

### addArc

    public void addArc(Arc arcInput)

  Add arcInput to back of the Arc ArrayList All observers are notified of this change (Model-View Architecture)

  Parameters:
    `arcInput` - Arc Object to add

### addArcToArcsMap

    private void addArcToArcsMap(Arc arcInput)

  Update the arcsMap hashtable to reflect the new arc

  Parameters:
    `arcInput` - New Arc

### addToken

    public void addToken(Token tokenInput)

  Add tokenInput to the back of the Token ArrayList All observers are notified of this change.

  Parameters:
    `tokenInput` - Token Object to add

### addPetriNetObject

    public void addPetriNetObject(PetriNetObject pnObject)

  Add any PetriNetObject - the object will be added to the appropriate list. If the object passed in isn't a Transition, Place or Arc nothing will happen. All observers are notified of this change.

  Parameters:
    `pnObject` - The PetriNetObject to be added.

### removePetriNetObject

    public void removePetriNetObject(PetriNetObject pnObject)

  Removes the specified object from the appropriate ArrayList of objects. All observers are notified of this change.

  Parameters:
    `pnObject` - The PetriNetObject to be removed.

### returnTransitions

    public java.util.Iterator returnTransitions()

### setPetriNetObjectArrayList

    private boolean setPetriNetObjectArrayList(PetriNetObject pnObject)

  Sets an internal ArrayList according to the class of the object passed in.

  Parameters:
    `pnObject` - The pnObject in question.
  Returns:
    Returns True if the pnObject is of type Place, Transition or Arc

### getPetriNetObjects

    public java.util.Iterator getPetriNetObjects()

  Returns an iterator of all PetriNetObjects - the order of these cannot be guaranteed.

  Returns:
    An iterator of all PetriNetObjects

### setFowardIncidenceMatrix

    public void setFowardIncidenceMatrix(int[][] fowardIncidenceInput)

  Set the Foward Incidence Matrix

  Parameters:
    `fowardIncidenceInput` - Foward Incidence Matrix object

### setBackwardsIncidenceMatrix

    public void setBackwardsIncidenceMatrix(int[][] backwardsIncidenceInput)

  Set the Backward Incidence Matrix

  Parameters:
    `backwardsIncidenceInput` - Backward Incidence Matrix object

### setIncidenceMatrix

    public void setIncidenceMatrix(int[][] incidenceInput)

  Set the Incidence Matrix

  Parameters:
    `incidenceInput` - Backward Incidence Matrix object

### setInitalMarkupMatrix

    public void setInitalMarkupMatrix(int[][] markupInput)

  Set the Initial Markup Matrix

  Parameters:
    `markupInput` - Initial Markup Matrix object

### savePNML

    public void savePNML(java.lang.String filename)
                  throws java.lang.NullPointerException,
                         java.io.IOException,
                         javax.xml.parsers.ParserConfigurationException,
                         org.w3c.dom.DOMException,
                         javax.xml.transform.TransformerConfigurationException,
                         javax.xml.transform.TransformerException

  Save the Petri-Net

  Parameters:
    `filename` - URI location to save file
  Throws:
    `javax.xml.parsers.ParserConfigurationException`
    `org.w3c.dom.DOMException`
    `javax.xml.transform.TransformerConfigurationException`
    `javax.xml.transform.TransformerException`
    `java.lang.NullPointerException`
    `java.io.IOException`

### savePNML

    public void savePNML(java.io.File file)
                  throws java.lang.NullPointerException,
                         java.io.IOException,
                         javax.xml.parsers.ParserConfigurationException,
                         org.w3c.dom.DOMException,
                         javax.xml.transform.TransformerConfigurationException,
                         javax.xml.transform.TransformerException

  Save the Petri-Net

  Throws:
    `javax.xml.parsers.ParserConfigurationException`
    `org.w3c.dom.DOMException`
    `javax.xml.transform.TransformerConfigurationException`
    `javax.xml.transform.TransformerException`
    `java.lang.NullPointerException`
    `java.io.IOException`

### loadPNML

    public void loadPNML(java.lang.String filename)
                  throws java.io.IOException,
                         org.xml.sax.SAXException,
                         javax.xml.transform.TransformerException,
                         javax.xml.parsers.ParserConfigurationException

  Load PNML file

  Parameters:
    `filename` - URI location of PNML
  Throws:
    `java.io.IOException`
    `org.xml.sax.SAXException`
    `javax.xml.transform.TransformerException`
    `javax.xml.parsers.ParserConfigurationException`

### createPlace

    private Place createPlace(org.w3c.dom.Element inputPlaceElement)

  Creates a Place object from a Place DOM Element

  Parameters:
    `inputPlaceElement` - Input Place DOM Element
  Returns:
    Place Object

### createAnnotation

    private AnnotationNote createAnnotation(org.w3c.dom.Element inputLabelElement)

  Creates a Label object from a Label DOM Element

  Parameters:
    `inputLabelElement` - Input Label DOM Element
  Returns:
    Label Object

### createTransition

    private Transition createTransition(org.w3c.dom.Element inputTransitionElement)

  Creates a Transition object from a Transition DOM Element

  Parameters:
    `inputTransitionElement` - Input Transition DOM Element
  Returns:
    Transition Object

### createArc

    private Arc createArc(org.w3c.dom.Element inputArcElement)

  Creates a Arc object from a Arc DOM Element

  Parameters:
    `inputArcElement` - Input Arc DOM Element
  Returns:
    Arc Object

### createPlaceElement

    private org.w3c.dom.Element createPlaceElement(Place inputPlace,
                                                   org.w3c.dom.Document document)

  Creates a Place Element for a PNML Petri-Net DOM

  Parameters:
    `inputPlace` - Input Place
    `document` - Any DOM to enable creation of Elements and Attributes
  Returns:
    Place Element for a PNML Petri-Net DOM

### createAnnotationNoteElement

    private org.w3c.dom.Element createAnnotationNoteElement(AnnotationNote inputLabel,
                                                            org.w3c.dom.Document document)

  Creates a Place Element for a PNML Petri-Net DOM

  Parameters:
    `document` - Any DOM to enable creation of Elements and Attributes
  Returns:
    Place Element for a PNML Petri-Net DOM

### createTransitionElement

    private org.w3c.dom.Element createTransitionElement(Transition inputTransition,
                                                        org.w3c.dom.Document document)

  Creates a Transition Element for a PNML Petri-Net DOM

  Parameters:
    `inputTransition` - Input Transition
    `document` - Any DOM to enable creation of Elements and Attributes
  Returns:
    Transition Element for a PNML Petri-Net DOM

### createArcElement

    private org.w3c.dom.Element createArcElement(Arc inputArc,
                                                 org.w3c.dom.Document document)

  Creates a Arc Element for a PNML Petri-Net DOM

  Parameters:
    `inputArc` - Input Arc
    `document` - Any DOM to enable creation of Elements and Attributes
  Returns:
    Arc Element for a PNML Petri-Net DOM

### createArcPoint

    private org.w3c.dom.Element createArcPoint(java.lang.String x,
                                               java.lang.String y,
                                               java.lang.String type,
                                               org.w3c.dom.Document document,
                                               int id)

### createMatrixes

    private void createMatrixes()

  Creates all Petri-Net Matrixes from current Petri-Net

### createFowardIncidenceMatrix

    private void createFowardIncidenceMatrix()

  Creates Foward Incidence Matrix from current Petri-Net

### createBackwardsIncidenceMatrix

    private void createBackwardsIncidenceMatrix()

  Creates Backwards Incidence Matrix from current Petri-Net

### createIncidenceMatrix

    private void createIncidenceMatrix()

  Creates Incidence Matrix from current Petri-Net

### createInitialMarkupMatrix

    private void createInitialMarkupMatrix()

  Creates Initial Markup Matrix from current Petri-Net

### createCurrentMarkupMatrix

    private void createCurrentMarkupMatrix()

  Creates Initial Markup Matrix from current Petri-Net

### storeInitialMarking

    public void storeInitialMarking()

  Stores Initial Markup Matrix from current Petri-Net Markup

### restoreInitialMarking

    public void restoreInitialMarking()

  Restores Initial Markup Matrix to current Petri-Net Markup

### storeState

    public void storeState()

  Stores Current Markup

### restoreState

    public void restoreState()

  Restores To previous Stored Markup

### fireTransition

    public void fireTransition(Transition transition)

  Fire a specified transition, no affect if transtions not enabled

  Parameters:
    `transition` - Reference of specifiec Transition

### fireTransition

    private void fireTransition(int transitionNo)

  Fire a specified transition, no affect if transtions not enabled

  Parameters:
    `transitionNo` - Position of Transition in internal ArrayList

### fireRandomTransition

    public Transition fireRandomTransition()

  Fire a random transition, takes rate (probability) of Transitions into account

### fireTransitionBackwards

    public void fireTransitionBackwards(Transition transition)

### fireTransitionBackwards

    private void fireTransitionBackwards(int transitionNo)

### fireRandomTransitionBackwards

    public void fireRandomTransitionBackwards()

### setEnabledTransitions

    public void setEnabledTransitions()

  Determines whether all transitions are enabled and sets the correct value of the enabled boolean

### resetEnabledTransitions

    public void resetEnabledTransitions()

### setEnabledTransitionsBackwards

    public void setEnabledTransitionsBackwards()

  Determines whether all transitions are enabled and sets the correct value of the enabled boolean

### emptyPNML

    public void emptyPNML()

  Empty all attributes, turn into empty Petri-Net

### getListPosition

    public int getListPosition(PetriNetObject pnObject)

  Get position of Petri-Net Object in ArrayList of given Petri-Net Object's type

  Parameters:
    `pnObject` - PlaceTransitionObject to get the position of
  Returns:
    Position (-1 if not present) of Petri-Net Object in ArrayList of given Petri-Net Object's type

### getPlaces

    public Place[] getPlaces()

  Get an List of all the Place objects in the Petri-Net

  Returns:
    An List of all the Place objects

### getLabels

    public AnnotationNote[] getLabels()

  Get a List of all the net-level NameLabel objects in the Petri-Net

  Returns:
    A List of all the net-level (as opposed to element-specific) label objects

### getTransitions

    public Transition[] getTransitions()

  Get an List of all the Transition objects in the Petri-Net

  Returns:
    An List of all the Transition objects

### getArcs

    public Arc[] getArcs()

  Get an List of all the Arcs objects in the Petri-Net

  Returns:
    An List of all the Arc objects

### getTransition

    public Transition getTransition(java.lang.String transitionName)

  Return the Transition called transitionName from the Petri-Net

  Parameters:
    `transitionName` - Name of Transition object to return
  Returns:
    The first Transition object found with a name equal to transitionName

### getTransition

    public Transition getTransition(int transitionNo)

  Return the Transition called transitionName from the Petri-Net

  Parameters:
    `transitionNo` - No of Transition object to return
  Returns:
    The Transition object

### getPlace

    public Place getPlace(java.lang.String placeName)

  Return the Place called placeName from the Petri-Net

  Parameters:
    `placeName` - Name of Place object to return
  Returns:
    The first Place object found with a name equal to placeName

### getPlace

    public Place getPlace(int placeNo)

  Return the Place called placeName from the Petri-Net

  Parameters:
    `placeNo` - No of Place object to return
  Returns:
    The Place object

### getArc

    public Arc getArc(java.lang.String arcName)

  Return the Arc called arcName from the Petri-Net

  Parameters:
    `arcName` - Name of Arc object to return
  Returns:
    The first Arc object found with a name equal to arcName

### getArcWithSource

    public Arc getArcWithSource(PetriNetObject arcName)

  Return the Arc called arcName from the Petri-Net

  Parameters:
    `arcName` - Name of Arc object to return
  Returns:
    The first Arc object found with a name equal to arcName

### getArcWithTarget

    public Arc getArcWithTarget(PetriNetObject arcName)

  Return the Arc called arcName from the Petri-Net

  Parameters:
    `arcName` - Name of Arc object to return
  Returns:
    The first Arc object found with a name equal to arcName

### getPlaceTransitionObject

    public PlaceTransitionObject getPlaceTransitionObject(java.lang.String ptoId)

  Return the PlaceTransitionObject called ptoName from the Petri-Net

  Parameters:
    `ptoId` - Id of PlaceTransitionObject object to return
  Returns:
    The first Arc PlaceTransitionObject found with a name equal to ptoName

### getForwardsIncidenceMatrix

    public int[][] getForwardsIncidenceMatrix()

  Return the Foward Incidence Matrix for the Petri-Net

  Returns:
    The Foward Incidence Matrix for the Petri-Net

### getBackwardsIncidenceMatrix

    public int[][] getBackwardsIncidenceMatrix()

  Return the Backward Incidence Matrix for the Petri-Net

  Returns:
    The Backward Incidence Matrix for the Petri-Net

### getIncidenceMatrix

    public int[][] getIncidenceMatrix()

  Return the Incidence Matrix for the Petri-Net

  Returns:
    The Incidence Matrix for the Petri-Net

### getInitialMarkupMatrix

    public int[] getInitialMarkupMatrix()

  Return the Initial Markup Matrix for the Petri-Net

  Returns:
    The Initial Markup Matrix for the Petri-Net

### getCurrentMarkupMatrix

    public int[] getCurrentMarkupMatrix()

  Return the Initial Markup Matrix for the Petri-Net

  Returns:
    The Initial Markup Matrix for the Petri-Net

### getDOM

    public org.w3c.dom.Document getDOM(java.lang.String pnmlFileName)
                                throws javax.xml.parsers.ParserConfigurationException,
                                       java.io.IOException,
                                       org.xml.sax.SAXException

  Return a DOM for the PNML file at URI pnmlFileName

  Parameters:
    `pnmlFileName` - URI of PNML file
  Returns:
    A DOM for the PNML file pnmlFileName
  Throws:
    `javax.xml.parsers.ParserConfigurationException`
    `java.io.IOException`
    `org.xml.sax.SAXException`

### getDOM

    public org.w3c.dom.Document getDOM(java.io.File pnmlFile)
                                throws javax.xml.parsers.ParserConfigurationException,
                                       java.io.IOException,
                                       org.xml.sax.SAXException

  Return a DOM for the PNML File pnmlFile

  Parameters:
    `pnmlFile` - File Object for PNML of Petri-Net
  Returns:
    A DOM for the File Object for PNML of Petri-Net
  Throws:
    `javax.xml.parsers.ParserConfigurationException`
    `java.io.IOException`
    `org.xml.sax.SAXException`

### getDOM

    public org.w3c.dom.Document getDOM()
                                throws javax.xml.parsers.ParserConfigurationException,
                                       java.io.IOException,
                                       org.xml.sax.SAXException

  Return a DOM for the Petri-Net

  Returns:
    A DOM for the Petri-Net
  Throws:
    `javax.xml.parsers.ParserConfigurationException`
    `java.io.IOException`
    `org.xml.sax.SAXException`

### getURI

    public java.lang.String getURI()

  Return a URI for the PNML file for the Petri-Net

  Returns:
    A DOM for the Petri-Net

### print

    public void print()

  prints out a brief representation of the dataLayer object

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD