public class QuasiStaticScheduling
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
class |
QuasiStaticScheduling.Level |
Modifier and Type | Field and Description |
---|---|
private java.util.HashMap<Actor,java.util.HashSet<Actor>> |
actorMap |
private java.util.HashMap<Channel,java.lang.String> |
edgeQuantities |
private Graph |
graph |
private java.util.HashMap<Actor,QuasiStaticScheduling.Level> |
levelMap |
private Graph |
multiplicityGraph |
private ParamComm |
paramcomm |
private int |
portCount |
private Solutions |
solutions |
Constructor and Description |
---|
QuasiStaticScheduling(Graph graph,
ParamComm paramcomm,
Solutions solutions) |
Modifier and Type | Method and Description |
---|---|
private void |
addTerminateActor() |
private void |
collapseChannelInGraph(Channel slctChannel) |
private java.util.HashSet<java.lang.String> |
collectParamters(java.util.Stack<Actor> path) |
private void |
constructActorWrappers() |
private java.lang.String |
convertStacktoSchedule(java.util.Stack<java.lang.String> stack) |
private void |
createNewLink(Graph graph,
Actor oppositeActor,
Port oppositePort,
Actor newActor,
Channel oldChannel) |
private void |
generateMultiplicityGraph() |
void |
generateSchedule() |
private void |
getActorSchedule(Actor actr) |
private Channel |
getChannel(Actor srcActor,
Actor dstActor) |
private Actor |
getStartActor(Graph graph) |
java.lang.String |
getStringSchedule() |
private java.lang.String |
insertElementAtCurrentLevel(java.lang.String level,
java.lang.String param,
boolean atEnd) |
private void |
mergeActorsWithEqualSolutions() |
private java.util.Stack<Actor> |
searchLongestPath(Actor actr,
Actor terminateActor) |
private java.util.Queue<Actor> |
topologicalSort(Graph graph) |
private Graph graph
private ParamComm paramcomm
private Solutions solutions
private Graph multiplicityGraph
private java.util.HashMap<Channel,java.lang.String> edgeQuantities
private int portCount
private java.util.HashMap<Actor,QuasiStaticScheduling.Level> levelMap
private void generateMultiplicityGraph()
private void mergeActorsWithEqualSolutions()
private void createNewLink(Graph graph, Actor oppositeActor, Port oppositePort, Actor newActor, Channel oldChannel)
private void collapseChannelInGraph(Channel slctChannel)
private void addTerminateActor()
private void constructActorWrappers()
private java.util.HashSet<java.lang.String> collectParamters(java.util.Stack<Actor> path)
private java.util.Stack<Actor> searchLongestPath(Actor actr, Actor terminateActor)
public java.lang.String getStringSchedule()
private void getActorSchedule(Actor actr)
private java.lang.String convertStacktoSchedule(java.util.Stack<java.lang.String> stack)
private java.lang.String insertElementAtCurrentLevel(java.lang.String level, java.lang.String param, boolean atEnd)
public void generateSchedule()