at.dms.kjc.cell
Class CellProcessInputSliceNode

java.lang.Object
  extended by at.dms.kjc.backendSupport.ProcessInputSliceNode
      extended by at.dms.kjc.cell.CellProcessInputSliceNode

public class CellProcessInputSliceNode
extends ProcessInputSliceNode


Field Summary
 
Fields inherited from class at.dms.kjc.backendSupport.ProcessInputSliceNode
backEndBits, basicCodeWritten, codeStore, inputNode, joiner_code, location, whichPhase
 
Constructor Summary
CellProcessInputSliceNode(InputSliceNode inputNode, SchedulingPhase whichPhase, CellBackendFactory backEndBits)
           
 
Method Summary
 void additionalInitProcessing()
           
 void additionalPreInitProcessing()
          Does processing before the Init schedule is run.
static CodeStoreHelper getJoinerCode(InputSliceNode joiner, BackEndFactory backEndBits)
           
static void makeJoinerWork(InputSliceNode joiner, BackEndFactory backEndBits, CodeStoreHelper joiner_code)
          Make a work function for a joiner
protected  void setJoinerCode()
           
protected  void setLocationAndCodeStore()
           
 void standardInitProcessing()
           
protected  void standardSteadyProcessing()
           
 
Methods inherited from class at.dms.kjc.backendSupport.ProcessInputSliceNode
additionalPrimePumpProcessing, additionalSteadyProcessing, doit, processInputSliceNode, standardPreInitProcessing, standardPrimePumpProcessing
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CellProcessInputSliceNode

public CellProcessInputSliceNode(InputSliceNode inputNode,
                                 SchedulingPhase whichPhase,
                                 CellBackendFactory backEndBits)
Method Detail

additionalPreInitProcessing

public void additionalPreInitProcessing()
Does processing before the Init schedule is run. In this stage, we collect information about the whole graph, assign filters and channels IDs, and extract splitters and joiners as separate filters as necessary.

Overrides:
additionalPreInitProcessing in class ProcessInputSliceNode

standardInitProcessing

public void standardInitProcessing()
Overrides:
standardInitProcessing in class ProcessInputSliceNode

additionalInitProcessing

public void additionalInitProcessing()
Overrides:
additionalInitProcessing in class ProcessInputSliceNode

standardSteadyProcessing

protected void standardSteadyProcessing()
Overrides:
standardSteadyProcessing in class ProcessInputSliceNode

setJoinerCode

protected void setJoinerCode()
Overrides:
setJoinerCode in class ProcessInputSliceNode

getJoinerCode

public static CodeStoreHelper getJoinerCode(InputSliceNode joiner,
                                            BackEndFactory backEndBits)

makeJoinerWork

public static void makeJoinerWork(InputSliceNode joiner,
                                  BackEndFactory backEndBits,
                                  CodeStoreHelper joiner_code)
Make a work function for a joiner

Parameters:
joiner - the InputSliceNode that we are generating code for.
backEndBits - way to refer to other portions of backend
joiner_code - place to put code

setLocationAndCodeStore

protected void setLocationAndCodeStore()
Overrides:
setLocationAndCodeStore in class ProcessInputSliceNode