public class EvaluationGraph
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static class |
EvaluationGraph.IntendedUse
The Enumeration with the separation of the intended use
of the current
EvaluationGraph. |
static class |
EvaluationGraph.IOListType
The Enumeration that specifies which I/O value should be
used, in order to generate the unique key for a node or an edge
|
static class |
EvaluationGraph.StorageListType
The Enumeration that specifies which Storage load values should be
used, in order to generate the unique key for a node or an edge
|
| Constructor and Description |
|---|
EvaluationGraph(OptionModelController optionModelController,
EvaluationGraph.IntendedUse intendedUse)
Instantiates a new evaluation graph.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
addEdge(EvaluationGraphEdge edge,
EvaluationGraphNode sourceNode,
EvaluationGraphNode destinationNode,
edu.uci.ics.jung.graph.util.EdgeType edge_type)
Adds the specified edge between source and destination node.
|
EvaluationGraphEdge |
addEdgeSynchronized(EvaluationGraphEdge edgeToAdd,
EvaluationGraphNode sourceNode,
EvaluationGraphNode destinationNode,
edu.uci.ics.jung.graph.util.EdgeType edge_type)
Adds the specified
EvaluationGraphEdge in a synchronized manner (in order to prevent concurrency issues). |
boolean |
addVertex(EvaluationGraphNode evaluationGraphNode)
Adds the specified vertex to the graph.
|
EvaluationGraphNode |
addVertexSynchronized(EvaluationGraphNode evaluationGraphNode)
Adds the specified
EvaluationGraphNode in a synchronized manner (in order to prevent concurrency issues). |
EvaluationGraphEdge |
createEvaluationGraphEdgeForDeltaCosts(EvaluationGraphNode sourceNode,
EvaluationGraphNode destinNode,
TechnicalSystemStateDeltaEvaluation tssDelta)
Creates a new
EvaluationGraphEdge for the specified
TechnicalSystemStateDeltaEvaluation for the delta cost graph. |
EvaluationGraphEdge |
createEvaluationGraphEdgeForStateVariability(TechnicalSystemState technicalSystemState)
Creates a new
EvaluationGraphEdge for the specified TechnicalSystemState
for the graph of the state variability. |
EvaluationGraphNode |
createEvaluationGraphNode(TechnicalSystemState technicalSystemState)
Creates a new
EvaluationGraphNode for the specified TechnicalSystemState. |
EvaluationGraphEdge |
findEdge(EvaluationGraphNode evalSourceNode,
EvaluationGraphNode evalDestinNode)
Checks and returns the
EvaluationGraphEdge between the two specified EvaluationGraphNodes, if available. |
EvaluationGraphNode |
getEvaluationGraphNode(TechnicalSystemState technicalSystemState)
Gets the
EvaluationGraphNode for the specified TechnicalSystemState. |
EvaluationGraphNodeByTime |
getEvaluationGraphNodesByTime()
Gets the evaluation graph nodes by time.
|
EvaluationGraphPart |
getGraphByEvaluationTimeStamp(long evaluationTimeStamp)
Returns the actual partition graph for the specified evaluation time stamp.
|
EvaluationGraphPart |
getGraphByPartitionTimeStamp(long partitionTimeStamp)
Returns the actual partition graph by the specified partition time stamp.
|
EvaluationGraph.IntendedUse |
getIntendedUse()
Returns the intended use.
|
java.lang.String |
getKeyStringBaseConfiguration(TechnicalSystemState tss)
Returns the key string for the current base configuration of the
TechnicalInterfaceConfiguration and the State. |
java.lang.String |
getKeyStringGlobalTime(TechnicalSystemState tss)
Returns the key string for the global time of the
TechnicalSystemState. |
java.lang.String |
getKeyStringIOList(TechnicalSystemState tss,
EvaluationGraph.IOListType ioListType)
Returns the key string for the specified I/O-List.
|
java.lang.String |
getKeyStringStorageLoads(TechnicalSystemState tss,
EvaluationGraph.StorageListType storageListType)
Returns the key string for the current StorageLoads.
|
java.util.Collection<EvaluationGraphEdge> |
getOutEdges(EvaluationGraphNode graphNode) |
java.util.HashMap<java.lang.String,java.lang.Double> |
getStateIdentifierPrecisionHashIO()
Returns the HashMap that stores the current state identifier
and the corresponding precisions for the I/O values.
|
java.util.HashMap<java.lang.String,java.lang.Double> |
getStateIdentifierPrecisionHashStorageLoad()
/* Returns the Hash that stores the current state identifier
and the corresponding precisions for the storage load.
|
java.util.TreeMap<java.lang.Long,EvaluationGraphPart> |
getSubGraphTreeMap()
Returns tree map with all graphs.
|
java.util.Vector<TechnicalSystemState> |
getTechnicalSystemStatesFilteredByStateID(java.util.Vector<TechnicalSystemState> tssVector,
java.lang.String stateID2Search4)
Returns the technical system states filtered by the state id.
|
java.util.Vector<TechnicalSystemState> |
getTechnicalSystemStatesFromNodes(EvaluationGraphPart partGraph)
Returns all
TechnicalSystemState's from the nodes of the EvaluationGraph. |
java.util.Vector<TechnicalSystemState> |
getTechnicalSystemStatesFromNodes(EvaluationGraphPart partGraph,
boolean sortByStateID)
Returns all
TechnicalSystemState's from the nodes of the EvaluationGraph sorted by the StateID. |
java.util.Vector<java.lang.String> |
getUniqueStateIDs(java.util.Vector<TechnicalSystemState> tssVector)
Returns the unique stateID's of the specified Vector of
TechnicalSystemState's. |
boolean |
removeEdge(EvaluationGraphEdge edge)
Removes the specified
EvaluationGraphEdge. |
boolean |
removeVertex(EvaluationGraphNode evaluationGraphNode)
Removes the specified vertex.
|
public EvaluationGraph(OptionModelController optionModelController, EvaluationGraph.IntendedUse intendedUse)
optionModelController - the option model controllerintendedUse - the intension for the usage of this EvaluationGraphpublic EvaluationGraph.IntendedUse getIntendedUse()
public java.util.TreeMap<java.lang.Long,EvaluationGraphPart> getSubGraphTreeMap()
public EvaluationGraphPart getGraphByEvaluationTimeStamp(long evaluationTimeStamp)
evaluationTimeStamp - the evaluation time stamppublic EvaluationGraphPart getGraphByPartitionTimeStamp(long partitionTimeStamp)
partitionTimeStamp - the partition time stamppublic java.util.HashMap<java.lang.String,java.lang.Double> getStateIdentifierPrecisionHashIO()
public java.util.HashMap<java.lang.String,java.lang.Double> getStateIdentifierPrecisionHashStorageLoad()
public EvaluationGraphNode addVertexSynchronized(EvaluationGraphNode evaluationGraphNode)
EvaluationGraphNode in a synchronized manner (in order to prevent concurrency issues).evaluationGraphNode - the EvaluationGraphNode to addpublic boolean addVertex(EvaluationGraphNode evaluationGraphNode)
evaluationGraphNode - the evaluation graph nodepublic boolean removeVertex(EvaluationGraphNode evaluationGraphNode)
evaluationGraphNode - the evaluation graph nodepublic EvaluationGraphNode createEvaluationGraphNode(TechnicalSystemState technicalSystemState)
EvaluationGraphNode for the specified TechnicalSystemState.technicalSystemState - the TechnicalSystemStateEvaluationGraphNodepublic EvaluationGraphNode getEvaluationGraphNode(TechnicalSystemState technicalSystemState)
EvaluationGraphNode for the specified TechnicalSystemState.technicalSystemState - the TechnicalSystemStatepublic EvaluationGraphEdge addEdgeSynchronized(EvaluationGraphEdge edgeToAdd, EvaluationGraphNode sourceNode, EvaluationGraphNode destinationNode, edu.uci.ics.jung.graph.util.EdgeType edge_type)
EvaluationGraphEdge in a synchronized manner (in order to prevent concurrency issues).edgeToAdd - the edge to add to the graphsourceNode - the source EvaluationGraphNodedestinationNode - the destination EvaluationGraphNodeedge_type - the edge_typepublic boolean addEdge(EvaluationGraphEdge edge, EvaluationGraphNode sourceNode, EvaluationGraphNode destinationNode, edu.uci.ics.jung.graph.util.EdgeType edge_type)
edge - the edgesourceNode - the source nodedestinationNode - the destination nodeedge_type - the edge typepublic boolean removeEdge(EvaluationGraphEdge edge)
EvaluationGraphEdge.edge - the edge to removepublic EvaluationGraphEdge findEdge(EvaluationGraphNode evalSourceNode, EvaluationGraphNode evalDestinNode)
EvaluationGraphEdge between the two specified EvaluationGraphNodes, if available.evalSourceNode - the source nodeevalDestinNode - the destination nodepublic EvaluationGraphEdge createEvaluationGraphEdgeForStateVariability(TechnicalSystemState technicalSystemState)
EvaluationGraphEdge for the specified TechnicalSystemState
for the graph of the state variability.technicalSystemState - the TechnicalSystemStateEvaluationGraphEdgepublic EvaluationGraphEdge createEvaluationGraphEdgeForDeltaCosts(EvaluationGraphNode sourceNode, EvaluationGraphNode destinNode, TechnicalSystemStateDeltaEvaluation tssDelta)
EvaluationGraphEdge for the specified
TechnicalSystemStateDeltaEvaluation for the delta cost graph.sourceNode - the source nodedestinNode - the destination nodetssDelta - the TechnicalSystemStateDeltaEvaluationEvaluationGraphEdgepublic java.util.Collection<EvaluationGraphEdge> getOutEdges(EvaluationGraphNode graphNode)
public EvaluationGraphNodeByTime getEvaluationGraphNodesByTime()
public java.lang.String getKeyStringGlobalTime(TechnicalSystemState tss)
TechnicalSystemState.tss - the TechnicalSystemStatepublic java.lang.String getKeyStringBaseConfiguration(TechnicalSystemState tss)
TechnicalInterfaceConfiguration and the State.tss - the TechnicalSystemStatepublic java.lang.String getKeyStringIOList(TechnicalSystemState tss, EvaluationGraph.IOListType ioListType)
tss - the current TechnicalSystemStateioListType - the EvaluationGraph.IOListTypepublic java.lang.String getKeyStringStorageLoads(TechnicalSystemState tss, EvaluationGraph.StorageListType storageListType)
tss - the TechnicalSystemStatestorageListType - the storage list typepublic java.util.Vector<TechnicalSystemState> getTechnicalSystemStatesFromNodes(EvaluationGraphPart partGraph)
TechnicalSystemState's from the nodes of the EvaluationGraph.partGraph - the EvaluationGraphPartpublic java.util.Vector<TechnicalSystemState> getTechnicalSystemStatesFromNodes(EvaluationGraphPart partGraph, boolean sortByStateID)
TechnicalSystemState's from the nodes of the EvaluationGraph sorted by the StateID.partGraph - the EvaluationGraphPartsortByStateID - set true if the Vector should be sorted by the ID's of Statepublic java.util.Vector<java.lang.String> getUniqueStateIDs(java.util.Vector<TechnicalSystemState> tssVector)
TechnicalSystemState's.tssVector - the vector of TechnicalSystemStatepublic java.util.Vector<TechnicalSystemState> getTechnicalSystemStatesFilteredByStateID(java.util.Vector<TechnicalSystemState> tssVector, java.lang.String stateID2Search4)
tssVector - the vector of TechnicalSystemState'sstateID2Search4 - the stateID to search for