public abstract class CfgEngine extends Engine
Runs internal walkers on the control flow graph model.
Note that while executed, walkers will be used in the same order they appeared in constructor.
Constructor and Description |
---|
CfgEngine(java.lang.String engineId,
EntityType inputType,
EntityType outputType,
CfgVisitor... visitors)
Constructs object with the specified identifier, input/output types
and visitors.
|
CfgEngine(java.lang.String engineId,
EntityType inputType,
EntityType outputType,
CfgWalker... walkers)
Constructs object with the specified identifier, input/output types,
walkers.
|
Modifier and Type | Method and Description |
---|---|
CfgVisitor |
getInitVisitor()
Returns initial visitor.
|
abstract Entity |
getOutput()
Returns engine output entity.
|
CfgWalker[] |
getWalkers()
Returns internal walkers.
|
abstract void |
initialize(java.util.Map<EntityType,Entity> inputs)
Initializes engine with the specified inputs.
|
Entity |
start(java.util.Map<EntityType,Entity> inputs)
Processes entities of the input types and produces an entity of the output type.
|
addBackend, addInputType, addParameter, defines, equals, getId, getInputTypes, getLogger, getOutputType, getParameters, hasBackEnds, hashCode, parseCommandLine, runBackEnds, setOutputType, setProgress, start, toString, uses
public CfgEngine(java.lang.String engineId, EntityType inputType, EntityType outputType, CfgVisitor... visitors)
All the defined visitors will be run on the walker with default
CfgWalkerMode
walking mode.
engineId
- engine identifierinputType
- engine input typeoutputType
- engine output typevisitors
- control flow graph visitorsjava.lang.IllegalArgumentException
- when the specified visitors array is null
.public CfgEngine(java.lang.String engineId, EntityType inputType, EntityType outputType, CfgWalker... walkers)
engineId
- engine identifierinputType
- engine input typeoutputType
- engine output typewalkers
- model walkersjava.lang.IllegalArgumentException
- when walkers array is null
.public abstract void initialize(java.util.Map<EntityType,Entity> inputs)
inputs
- Engine inputspublic Entity start(java.util.Map<EntityType,Entity> inputs)
Engine
public abstract Entity getOutput()
public final CfgWalker[] getWalkers()
public final CfgVisitor getInitVisitor()