|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectmapss.dif.language.sablecc.analysis.AnalysisAdapter
mapss.dif.language.sablecc.analysis.DepthFirstAdapter
mapss.dif.language.LanguageAnalysis
mapss.dif.psdf.PSDFSpecificationLanguageAnalysis
public class PSDFSpecificationLanguageAnalysis
This analysis extends LanguageAnalysis
to read
PSDF Specifications.
The graph type keyword used in the dif file should be "psdfSpecificaiton" and runtime type of the returned graph will an PSDFSpecificationGraph.
LanguageAnalysis
,
PSDFSpecificationGraph
,
PSDFSpecification
Field Summary |
---|
Fields inherited from class mapss.dif.language.LanguageAnalysis |
---|
_graph, _hierarchies, _hierarchy, _subHierarchy |
Constructor Summary | |
---|---|
PSDFSpecificationLanguageAnalysis()
|
Method Summary | |
---|---|
protected boolean |
_acceptableSubHierarchy(DIFHierarchy hierarchy)
Returns true if a hierarchy can be a sub-hierarchy of the current one. |
protected mocgraph.Edge |
_getEmptyEdge(mocgraph.Node source,
mocgraph.Node sink)
Should return an empty edge that can be used in the graph that is constructed. |
protected DIFGraph |
_getEmptyGraph()
Should return an empty graph of the type that is going to be constructed with this analysis. |
protected mocgraph.Node |
_getEmptyNode()
Should return an empty node that can be used in the graph that is constructed. |
protected java.lang.String |
_getKeyword()
Should return the DIF keyword associated with this analysis type. |
protected void |
_processBuiltinAttribute(java.lang.String id,
java.lang.Object object,
java.lang.Object value,
DIFHierarchy hierarchy)
Process the built-in attribute "paramsMatch". |
void |
inAActorBlock(AActorBlock parseNode)
For each node representing an actor of design tool's library, an actor block is necessary to specify the attributes of that actor. |
void |
inABasedonBlock(ABasedonBlock parseNode)
|
void |
inAGraphBlock(AGraphBlock parseNode)
Parse a graph definition: dataflow model and graph name. |
void |
inARefinementDefinition(ARefinementDefinition parseNode)
For each supernode-to-subgraph mapping, it is necessary to specify a refinement block. |
void |
inATopologyBlock(ATopologyBlock parseNode)
init, subinit, body nodes will be added to the PSDFGraph of PSDFSpecificaiton automatically when defining the PSDFSpecification. |
void |
inAUserDefinedAttributeBlock(AUserDefinedAttributeBlock parseNode)
|
static boolean |
isKeyWord(java.lang.String word)
|
Methods inherited from class mapss.dif.language.sablecc.analysis.AnalysisAdapter |
---|
caseEOF, caseTActor, caseTAttribute, caseTBasedon, caseTBlank, caseTColon, caseTComma, caseTComment, caseTDot, caseTDouble, caseTEdges, caseTEqual, caseTFalse, caseTGraph, caseTIdentifier, caseTInputs, caseTInteger, caseTInterface, caseTLBkt, caseTLPar, caseTLSqr, caseTNodes, caseTOutputs, caseTParameter, caseTPlus, caseTRBkt, caseTRefinement, caseTRPar, caseTRSqr, caseTSemicolon, caseTSQte, caseTString, caseTStringIdentifier, caseTStringTail, caseTTopology, caseTTrue, defaultCase, getIn, getOut, setIn, setOut |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public PSDFSpecificationLanguageAnalysis()
Method Detail |
---|
public static boolean isKeyWord(java.lang.String word)
public void inAGraphBlock(AGraphBlock parseNode)
LanguageAnalysis
Reader
pre-scans all related dif files and input all
hierarchies by LanguageAnalysis.externalHierarchies(java.util.Collection)
.
Therefore, this method do not have to put _hierarchy
into _hierarchies. According to the previous compiled
DIFHierarchies, _hierarchies, we check that the current graph
(hierarchy) use the predefined name or not. The name of DIFGraph
and DIFHierarchy is set to the same as parseNode.getName().getText().
inAGraphBlock
in class LanguageAnalysis
public void inABasedonBlock(ABasedonBlock parseNode)
inABasedonBlock
in class DepthFirstAdapter
public void inATopologyBlock(ATopologyBlock parseNode)
inATopologyBlock
in class DepthFirstAdapter
public void inAUserDefinedAttributeBlock(AUserDefinedAttributeBlock parseNode)
inAUserDefinedAttributeBlock
in class LanguageAnalysis
public void inAActorBlock(AActorBlock parseNode)
LanguageAnalysis
An attribute of an actor can specify the parameter value of that actor. In this case, the attribute id is the parameter id and the attribute value is the parameter value.
An attribute can also specify the connection of the node (actor). In this case, the attribute id is the port id or argument id and the attribute value is the connected object's id.
All actor attributes and their value are stored as node attributes in DIF.
inAActorBlock
in class LanguageAnalysis
public void inARefinementDefinition(ARefinementDefinition parseNode)
LanguageAnalysis
inARefinementDefinition
in class LanguageAnalysis
protected boolean _acceptableSubHierarchy(DIFHierarchy hierarchy)
PSDFGraph
.
_acceptableSubHierarchy
in class LanguageAnalysis
hierarchy
- Sub hierarchy to add.
protected java.lang.String _getKeyword()
LanguageAnalysis
_getKeyword
in class LanguageAnalysis
protected DIFGraph _getEmptyGraph()
LanguageAnalysis
_getEmptyGraph
in class LanguageAnalysis
protected mocgraph.Node _getEmptyNode()
LanguageAnalysis
_getEmptyNode
in class LanguageAnalysis
protected mocgraph.Edge _getEmptyEdge(mocgraph.Node source, mocgraph.Node sink)
LanguageAnalysis
_getEmptyEdge
in class LanguageAnalysis
source
- Source node for the edge.sink
- Sink node for the edge.
protected void _processBuiltinAttribute(java.lang.String id, java.lang.Object object, java.lang.Object value, DIFHierarchy hierarchy) throws DIFLanguageException
paramsMatch { subgraphId.subParamId = subgraphId.subPortId; }
_processBuiltinAttribute
in class LanguageAnalysis
id
- The attribute id.object
- The target object.value
- The source object.hierarchy
- The DIFSpecification.
DIFLanguageException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |