}
// create nodes for the connectionpoints
// for(Pseudostate oPseudoState : in_oState.getConnectionPoints()) {
for(Pseudostate oPseudoState : colPseudoStates) {
TCGIntermediateNode oNode = GeneratedFactory.eINSTANCE.createTCGIntermediateNode();
oNode.setOriginalNode(oPseudoState);
oNode.setUseAllTransitionsInParallel(true);
in_oNode.getContainedConnectionPoints().add(oNode);
oNode.setContainer(in_oNode);
m_colVertex2Node.put(oPseudoState, oNode);
oNode.setName(oPseudoState.getName());
if(oPseudoState.getKind().equals(PseudostateKind.ENTRY_POINT_LITERAL)) {
oNode.setNodeType(TCGNodeType.ENTRY);
}
else if(oPseudoState.getKind().equals(PseudostateKind.EXIT_POINT_LITERAL)) {
oNode.setNodeType(TCGNodeType.EXIT);
}
}
// create connectionpointreferences that reference the connectionpoints
// the following part should be unused - no connectionpointreferences are used for composite states
for(ConnectionPointReference oCPR : in_oState.getConnections())
{
TCGIntermediateNode oNode = GeneratedFactory.eINSTANCE.createTCGIntermediateNode();
in_oNode.getContainedConnectionPoints().add(oNode);
oNode.setContainer(in_oNode);
m_colVertex2Node.put(oCPR, oNode);
for(Pseudostate oPseudoState : oCPR.getEntries())
{
connectConnectionPointAndReference(oPseudoState, oNode);
}
for(Pseudostate oPseudoState : oCPR.getExits())
{
connectConnectionPointAndReference(oPseudoState, oNode);
}
}
}
// second case: submachine state - contains just the connectionpointreferences
if(in_oState.getSubmachine() != null)
{
for(ConnectionPointReference oCPR : in_oState.getConnections())
{
TCGIntermediateNode oNode = GeneratedFactory.eINSTANCE.createTCGIntermediateNode();
in_oNode.getContainedConnectionPointReferences().add(oNode);
oNode.setContainer(in_oNode);
m_colVertex2Node.put(oCPR, oNode);
for(Pseudostate oPseudoState : oCPR.getEntries())
{
connectConnectionPointAndReference(oPseudoState, oNode);
}