|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectpipe.modules.classification.Classification
Classification class implements petri net classification
| Field Summary | |
(package private) java.awt.event.ActionListener |
classifyButtonClick
Classify button click handler |
private static java.lang.String |
MODULE_NAME
|
private ResultsHTMLPane |
results
|
private PetriNetChooserPanel |
sourceFilePanel
|
| Constructor Summary | |
Classification()
|
|
| Method Summary | |
private static int |
cardinality(int[] X)
|
private int |
countPlaceInputs(DataLayer pnmlData,
int PlaceNo)
Counts inputs to given place |
private int |
countPlaceOutputs(DataLayer pnmlData,
int PlaceNo)
|
private int |
countTransitionInputs(DataLayer pnmlData,
int TransitionNo)
|
private int |
countTransitionOutputs(DataLayer pnmlData,
int TransitionNo)
Counts outputs from given transition |
protected boolean |
extendedFreeChoiceNet(DataLayer pnmlData)
Extended free choice net detection |
protected boolean |
extendedSimpleNet(DataLayer pnmlData)
Extended simple net (ESPL-net) detection |
private static boolean |
findSubset(int[] A,
int[] B)
|
private int[] |
forwardsPlaceSet(DataLayer pnmlData,
int PlaceNo)
|
protected boolean |
freeChoiceNet(DataLayer pnmlData)
Free choice net detection |
java.lang.String |
getName()
|
protected boolean |
intersectionBetweenSets(int[] setOne,
int[] setTwo)
|
private static boolean |
isSubset(int[] A,
int[] B)
|
protected boolean |
markedGraph(DataLayer pnmlData)
Marked graph detection |
private static int[] |
reduce(int[] X)
|
void |
run(DataLayer pnmlData)
|
protected boolean |
simpleNet(DataLayer pnmlData)
Simple net (SPL-net) detection |
protected boolean |
stateMachine(DataLayer pnmlData)
State machine detection |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
private static final java.lang.String MODULE_NAME
private PetriNetChooserPanel sourceFilePanel
private ResultsHTMLPane results
java.awt.event.ActionListener classifyButtonClick
| Constructor Detail |
public Classification()
| Method Detail |
public void run(DataLayer pnmlData)
run in interface Modulepublic java.lang.String getName()
getName in interface Moduleprotected boolean stateMachine(DataLayer pnmlData)
P - T - P
P - T - P true (one input/output each)
P - T - P
\ false (>1 output)
P
P - T - P
/ false (>1 input)
P
protected boolean markedGraph(DataLayer pnmlData)
T - P - T
T - P - T true (one input/output each)
T - P - T
\ false (>1 output)
T
T - P - T
/ false (>1 input)
T
protected boolean freeChoiceNet(DataLayer pnmlData)
P - T
P - T true (no common outputs)
\
T
P - T
/ true (common outputs but both have only one output)
P
P - T
X
P - T false (common outputs, both have >1 output)
P - T
/
P - T false (common outputs but one has >1 output)
protected boolean extendedFreeChoiceNet(DataLayer pnmlData)
P - T
P - T Yes (no common outputs)
\
T
P - T
/
P - T No (common outputs, outputs not identical)
P - T
X
P - T Yes (common outputs identical) *** only addition to normal free choice net
P - T Yes (common outputs identical)
/
P
protected boolean simpleNet(DataLayer pnmlData)
P - T
P - T true (no common outputs)
\
T
P - T
/ true (common outputs, both only have one)
P
P - T
/ true (common outputs, one place has only one)
P - T
P - T
X false (common outputs, neither has only one)
P - T
P - T
\
T false (common outputs, neither has only one)
/
P - T
protected boolean extendedSimpleNet(DataLayer pnmlData)
P - T
P - T Yes (no common outputs)
\
T
P - T
/
P - T Yes (common outputs, first place's outputs is subset of second)
P - T
X
P - T Yes (common outputs, identical)
P - T Yes (common outputs, identical)
/
P
P - T
\
T false (common outputs, neither is subset of other)
/
P - T
T
/
P - T true (common outputs, second's is subset of first's)
X
P - T
private int countPlaceInputs(DataLayer pnmlData,
int PlaceNo)
PlaceNo -
private int countPlaceOutputs(DataLayer pnmlData,
int PlaceNo)
private int countTransitionInputs(DataLayer pnmlData,
int TransitionNo)
private int countTransitionOutputs(DataLayer pnmlData,
int TransitionNo)
private int[] forwardsPlaceSet(DataLayer pnmlData,
int PlaceNo)
protected boolean intersectionBetweenSets(int[] setOne,
int[] setTwo)
private static boolean isSubset(int[] A,
int[] B)
private static int[] reduce(int[] X)
private static int cardinality(int[] X)
private static boolean findSubset(int[] A,
int[] B)
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||