public class DfgImpl extends java.lang.Object implements Dfg
Modifier and Type | Method and Description |
---|---|
void |
addActivity(int index)
Add an activity.
|
int |
addActivity(org.deckfour.xes.classification.XEventClass activity)
Adds an activity to the Dfg.
|
void |
addDirectlyFollowsEdge(int source,
int target,
long cardinality) |
void |
addDirectlyFollowsEdge(org.deckfour.xes.classification.XEventClass source,
org.deckfour.xes.classification.XEventClass target,
long cardinality) |
void |
addEmptyTraces(long cardinality)
Adds empty traces.
|
void |
addEndActivities(Dfg dfg)
Add the end activities in the dfg to the end activities.
|
void |
addEndActivities(MultiIntSet activities) |
void |
addEndActivities(MultiSet<org.deckfour.xes.classification.XEventClass> endActivities)
Add the end activities in the multiset to the end activities.
|
void |
addEndActivity(int activityIndex,
long cardinality) |
void |
addEndActivity(org.deckfour.xes.classification.XEventClass activity,
long cardinality) |
void |
addParallelEdge(int a,
int b,
long cardinality) |
void |
addParallelEdge(org.deckfour.xes.classification.XEventClass a,
org.deckfour.xes.classification.XEventClass b,
long cardinality) |
void |
addStartActivities(Dfg dfg)
Add the start activities in the dfg to the start activities.
|
void |
addStartActivities(MultiSet<org.deckfour.xes.classification.XEventClass> startActivities)
Add the start activities in the multiset to the start activities.
|
void |
addStartActivity(int activityIndex,
long cardinality) |
void |
addStartActivity(org.deckfour.xes.classification.XEventClass activity,
long cardinality) |
Dfg |
clone() |
void |
collapseParallelIntoDirectly()
Adds a directly follows graph edge (in each direction) for each parallel
edge.
|
boolean |
containsConcurrencyEdge(int sourceIndex,
int targetIndex) |
boolean |
containsConcurrencyEdge(org.deckfour.xes.classification.XEventClass source,
org.deckfour.xes.classification.XEventClass target) |
boolean |
containsDirectlyFollowsEdge(int sourceIndex,
int targetIndex) |
boolean |
containsDirectlyFollowsEdge(org.deckfour.xes.classification.XEventClass source,
org.deckfour.xes.classification.XEventClass target) |
static DfgImpl |
createTimeOptimised(int initialSize) |
org.deckfour.xes.classification.XEventClass[] |
getActivities() |
int[] |
getActivitiesIndices() |
int[] |
getActivityIndices() |
MultiIntSet |
getActivityMultiSet() |
org.deckfour.xes.classification.XEventClass |
getActivityOfIndex(int activityIndex) |
long |
getConcurrencyEdgeCardinality(long edgeIndex) |
java.lang.Iterable<java.lang.Long> |
getConcurrencyEdges()
Returns an iterable that iterates over all edges; The edges that are
returned are indices.
|
org.deckfour.xes.classification.XEventClass |
getConcurrencyEdgeSource(long edgeIndex) |
int |
getConcurrencyEdgeSourceIndex(long edgeIndex) |
org.deckfour.xes.classification.XEventClass |
getConcurrencyEdgeTarget(long edgeIndex) |
int |
getConcurrencyEdgeTargetIndex(long edgeIndex) |
Graph<org.deckfour.xes.classification.XEventClass> |
getConcurrencyGraph() |
long |
getDirectlyFollowsEdgeCardinality(long edgeIndex) |
java.lang.Iterable<java.lang.Long> |
getDirectlyFollowsEdges()
Returns an iterable that iterates over all edges; The edges that are
returned are indices.
|
org.deckfour.xes.classification.XEventClass |
getDirectlyFollowsEdgeSource(long edgeIndex) |
int |
getDirectlyFollowsEdgeSourceIndex(long edgeIndex) |
org.deckfour.xes.classification.XEventClass |
getDirectlyFollowsEdgeTarget(long edgeIndex) |
int |
getDirectlyFollowsEdgeTargetIndex(long edgeIndex) |
Graph<org.deckfour.xes.classification.XEventClass> |
getDirectlyFollowsGraph() |
java.lang.Iterable<org.deckfour.xes.classification.XEventClass> |
getEndActivities()
Return an iterable over the start activities.
|
long |
getEndActivityCardinality(int activityIndex) |
long |
getEndActivityCardinality(org.deckfour.xes.classification.XEventClass activity) |
int[] |
getEndActivityIndices() |
int |
getIndexOfActivity(org.deckfour.xes.classification.XEventClass activity) |
long |
getMostOccuringConcurrencyEdgeCardinality() |
long |
getMostOccuringDirectlyFollowsEdgeCardinality() |
long |
getMostOccurringEndActivityCardinality() |
long |
getMostOccurringStartActivityCardinality() |
int |
getNumberOfActivities() |
long |
getNumberOfEmptyTraces() |
long |
getNumberOfEndActivities() |
int |
getNumberOfEndActivitiesAsSet() |
long |
getNumberOfStartActivities() |
int |
getNumberOfStartActivitiesAsSet() |
java.lang.Iterable<org.deckfour.xes.classification.XEventClass> |
getStartActivities()
Return an iterable over the start activities.
|
long |
getStartActivityCardinality(int activityIndex) |
long |
getStartActivityCardinality(org.deckfour.xes.classification.XEventClass activity) |
int[] |
getStartActivityIndices() |
boolean |
hasEndActivities() |
boolean |
hasStartActivities() |
boolean |
isEndActivity(int activityIndex) |
boolean |
isEndActivity(org.deckfour.xes.classification.XEventClass activity) |
boolean |
isStartActivity(int activityIndex) |
boolean |
isStartActivity(org.deckfour.xes.classification.XEventClass activity) |
void |
removeEndActivity(int activityIndex)
Removes the end activity.
|
void |
removeEndActivity(org.deckfour.xes.classification.XEventClass activity)
Removes the end activity.
|
void |
removeStartActivity(int activityIndex)
Removes the start activity.
|
void |
removeStartActivity(org.deckfour.xes.classification.XEventClass activity)
Removes the start activity.
|
void |
setNumberOfEmptyTraces(long numberOfEmptyTraces)
Set the number of empty (epsilon) traces.
|
java.lang.String |
toString() |
public static DfgImpl createTimeOptimised(int initialSize)
public int addActivity(org.deckfour.xes.classification.XEventClass activity)
Dfg
addActivity
in interface Dfg
public Graph<org.deckfour.xes.classification.XEventClass> getDirectlyFollowsGraph()
getDirectlyFollowsGraph
in interface Dfg
getDirectlyFollowsGraph
in interface NormalisedIntDfg
public org.deckfour.xes.classification.XEventClass[] getActivities()
getActivities
in interface Dfg
public int[] getActivityIndices()
getActivityIndices
in interface Dfg
public Graph<org.deckfour.xes.classification.XEventClass> getConcurrencyGraph()
getConcurrencyGraph
in interface Dfg
getConcurrencyGraph
in interface NormalisedIntDfg
public long getNumberOfEmptyTraces()
getNumberOfEmptyTraces
in interface NormalisedIntDfg
public void setNumberOfEmptyTraces(long numberOfEmptyTraces)
NormalisedIntDfg
setNumberOfEmptyTraces
in interface NormalisedIntDfg
public void addEmptyTraces(long cardinality)
NormalisedIntDfg
addEmptyTraces
in interface NormalisedIntDfg
public void addDirectlyFollowsEdge(org.deckfour.xes.classification.XEventClass source, org.deckfour.xes.classification.XEventClass target, long cardinality)
addDirectlyFollowsEdge
in interface Dfg
public void addParallelEdge(org.deckfour.xes.classification.XEventClass a, org.deckfour.xes.classification.XEventClass b, long cardinality)
addParallelEdge
in interface Dfg
public void addStartActivity(org.deckfour.xes.classification.XEventClass activity, long cardinality)
addStartActivity
in interface Dfg
public void addEndActivity(org.deckfour.xes.classification.XEventClass activity, long cardinality)
addEndActivity
in interface Dfg
public java.lang.String toString()
toString
in class java.lang.Object
public void collapseParallelIntoDirectly()
Dfg
collapseParallelIntoDirectly
in interface Dfg
collapseParallelIntoDirectly
in interface NormalisedIntDfg
public Dfg clone()
clone
in interface Dfg
clone
in interface NormalisedIntDfg
clone
in class java.lang.Object
public int getNumberOfActivities()
getNumberOfActivities
in interface Dfg
getNumberOfActivities
in interface NormalisedIntDfg
public int getIndexOfActivity(org.deckfour.xes.classification.XEventClass activity)
getIndexOfActivity
in interface Dfg
public org.deckfour.xes.classification.XEventClass getActivityOfIndex(int activityIndex)
getActivityOfIndex
in interface Dfg
public boolean hasStartActivities()
hasStartActivities
in interface NormalisedIntDfg
public boolean hasEndActivities()
hasEndActivities
in interface NormalisedIntDfg
public int getNumberOfStartActivitiesAsSet()
getNumberOfStartActivitiesAsSet
in interface NormalisedIntDfg
public int getNumberOfEndActivitiesAsSet()
getNumberOfEndActivitiesAsSet
in interface NormalisedIntDfg
public boolean isStartActivity(int activityIndex)
isStartActivity
in interface NormalisedIntDfg
public boolean isStartActivity(org.deckfour.xes.classification.XEventClass activity)
isStartActivity
in interface Dfg
public long getStartActivityCardinality(int activityIndex)
getStartActivityCardinality
in interface NormalisedIntDfg
public long getStartActivityCardinality(org.deckfour.xes.classification.XEventClass activity)
getStartActivityCardinality
in interface Dfg
public long getEndActivityCardinality(int activityIndex)
getEndActivityCardinality
in interface NormalisedIntDfg
public long getEndActivityCardinality(org.deckfour.xes.classification.XEventClass activity)
getEndActivityCardinality
in interface Dfg
public boolean isEndActivity(int activityIndex)
isEndActivity
in interface NormalisedIntDfg
public boolean isEndActivity(org.deckfour.xes.classification.XEventClass activity)
isEndActivity
in interface Dfg
public long getMostOccurringStartActivityCardinality()
getMostOccurringStartActivityCardinality
in interface NormalisedIntDfg
public long getMostOccurringEndActivityCardinality()
getMostOccurringEndActivityCardinality
in interface NormalisedIntDfg
public java.lang.Iterable<java.lang.Long> getDirectlyFollowsEdges()
NormalisedIntDfg
getDirectlyFollowsEdges
in interface NormalisedIntDfg
public boolean containsDirectlyFollowsEdge(int sourceIndex, int targetIndex)
containsDirectlyFollowsEdge
in interface NormalisedIntDfg
public boolean containsDirectlyFollowsEdge(org.deckfour.xes.classification.XEventClass source, org.deckfour.xes.classification.XEventClass target)
containsDirectlyFollowsEdge
in interface Dfg
public int getDirectlyFollowsEdgeSourceIndex(long edgeIndex)
getDirectlyFollowsEdgeSourceIndex
in interface NormalisedIntDfg
public int getDirectlyFollowsEdgeTargetIndex(long edgeIndex)
getDirectlyFollowsEdgeTargetIndex
in interface NormalisedIntDfg
public org.deckfour.xes.classification.XEventClass getDirectlyFollowsEdgeSource(long edgeIndex)
getDirectlyFollowsEdgeSource
in interface Dfg
public org.deckfour.xes.classification.XEventClass getDirectlyFollowsEdgeTarget(long edgeIndex)
getDirectlyFollowsEdgeTarget
in interface Dfg
public long getDirectlyFollowsEdgeCardinality(long edgeIndex)
getDirectlyFollowsEdgeCardinality
in interface NormalisedIntDfg
public long getMostOccuringDirectlyFollowsEdgeCardinality()
getMostOccuringDirectlyFollowsEdgeCardinality
in interface NormalisedIntDfg
public java.lang.Iterable<java.lang.Long> getConcurrencyEdges()
NormalisedIntDfg
getConcurrencyEdges
in interface NormalisedIntDfg
public boolean containsConcurrencyEdge(int sourceIndex, int targetIndex)
containsConcurrencyEdge
in interface NormalisedIntDfg
public boolean containsConcurrencyEdge(org.deckfour.xes.classification.XEventClass source, org.deckfour.xes.classification.XEventClass target)
containsConcurrencyEdge
in interface Dfg
public int getConcurrencyEdgeSourceIndex(long edgeIndex)
getConcurrencyEdgeSourceIndex
in interface NormalisedIntDfg
public int getConcurrencyEdgeTargetIndex(long edgeIndex)
getConcurrencyEdgeTargetIndex
in interface NormalisedIntDfg
public org.deckfour.xes.classification.XEventClass getConcurrencyEdgeSource(long edgeIndex)
getConcurrencyEdgeSource
in interface Dfg
public org.deckfour.xes.classification.XEventClass getConcurrencyEdgeTarget(long edgeIndex)
getConcurrencyEdgeTarget
in interface Dfg
public long getConcurrencyEdgeCardinality(long edgeIndex)
getConcurrencyEdgeCardinality
in interface NormalisedIntDfg
public long getMostOccuringConcurrencyEdgeCardinality()
getMostOccuringConcurrencyEdgeCardinality
in interface NormalisedIntDfg
public void addStartActivities(MultiSet<org.deckfour.xes.classification.XEventClass> startActivities)
Dfg
addStartActivities
in interface Dfg
public void addStartActivities(Dfg dfg)
Dfg
addStartActivities
in interface Dfg
public void removeStartActivity(int activityIndex)
NormalisedIntDfg
removeStartActivity
in interface NormalisedIntDfg
public void removeStartActivity(org.deckfour.xes.classification.XEventClass activity)
Dfg
removeStartActivity
in interface Dfg
public java.lang.Iterable<org.deckfour.xes.classification.XEventClass> getStartActivities()
Dfg
getStartActivities
in interface Dfg
public int[] getStartActivityIndices()
getStartActivityIndices
in interface NormalisedIntDfg
public long getNumberOfStartActivities()
getNumberOfStartActivities
in interface NormalisedIntDfg
public void addEndActivities(MultiSet<org.deckfour.xes.classification.XEventClass> endActivities)
Dfg
addEndActivities
in interface Dfg
public void addEndActivities(Dfg dfg)
Dfg
addEndActivities
in interface Dfg
public void removeEndActivity(int activityIndex)
NormalisedIntDfg
removeEndActivity
in interface NormalisedIntDfg
public void removeEndActivity(org.deckfour.xes.classification.XEventClass activity)
Dfg
removeEndActivity
in interface Dfg
public java.lang.Iterable<org.deckfour.xes.classification.XEventClass> getEndActivities()
Dfg
getEndActivities
in interface Dfg
public int[] getEndActivityIndices()
getEndActivityIndices
in interface NormalisedIntDfg
public long getNumberOfEndActivities()
getNumberOfEndActivities
in interface NormalisedIntDfg
public void addDirectlyFollowsEdge(int source, int target, long cardinality)
addDirectlyFollowsEdge
in interface NormalisedIntDfg
public void addParallelEdge(int a, int b, long cardinality)
addParallelEdge
in interface NormalisedIntDfg
public void addStartActivity(int activityIndex, long cardinality)
addStartActivity
in interface NormalisedIntDfg
public void addEndActivity(int activityIndex, long cardinality)
addEndActivity
in interface NormalisedIntDfg
public void addActivity(int index)
NormalisedIntDfg
addActivity
in interface NormalisedIntDfg
public void addEndActivities(MultiIntSet activities)
addEndActivities
in interface NormalisedIntDfg
public MultiIntSet getActivityMultiSet()
public int[] getActivitiesIndices()