at.dms.kjc.raw
Class WorkBasedSimulator

java.lang.Object
  extended by at.dms.kjc.raw.Simulator
      extended by at.dms.kjc.raw.WorkBasedSimulator
All Implemented Interfaces:
FlatVisitor

public class WorkBasedSimulator
extends Simulator
implements FlatVisitor

This class generates a schedule for the switch code by simulating the init schedule and one steady state execution of the schedule


Field Summary
 
Fields inherited from class at.dms.kjc.raw.Simulator
initJoinerCode, initSchedules, steadyJoinerCode, steadySchedules, toplevel
 
Constructor Summary
WorkBasedSimulator()
           
 
Method Summary
 boolean canFire(FlatNode node, HashMap<FlatNode,Integer> executionCounts, SimulationCounter counters)
           
 void simulate(FlatNode top)
           
 void visitNode(FlatNode node)
          The visitor must define this method that will be called once on each FlatNode that is down stream of the accepting node.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WorkBasedSimulator

public WorkBasedSimulator()
Method Detail

simulate

public void simulate(FlatNode top)
Specified by:
simulate in class Simulator

canFire

public boolean canFire(FlatNode node,
                       HashMap<FlatNode,Integer> executionCounts,
                       SimulationCounter counters)
Specified by:
canFire in class Simulator

visitNode

public void visitNode(FlatNode node)
Description copied from interface: FlatVisitor
The visitor must define this method that will be called once on each FlatNode that is down stream of the accepting node.

Specified by:
visitNode in interface FlatVisitor
Parameters:
node - the node that is being currently visited.