Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Schuetz2012-10-07 14:54:22 -0400
committerThomas Schuetz2012-10-07 16:56:21 -0400
commit8cd2f041dd31f51f46f2689fe1a8c94c36dbcf7b (patch)
tree0e1a6f6f2f730880d762c7d1fa477b1f3d41b172
parenta4ffbead69d3f1da24fc8727b05ed00b9e541046 (diff)
downloadorg.eclipse.etrice-8cd2f041dd31f51f46f2689fe1a8c94c36dbcf7b.tar.gz
org.eclipse.etrice-8cd2f041dd31f51f46f2689fe1a8c94c36dbcf7b.tar.xz
org.eclipse.etrice-8cd2f041dd31f51f46f2689fe1a8c94c36dbcf7b.zip
[integration.test] removed test.room from integration tests - test is redundant
-rw-r--r--tests/org.eclipse.etrice.integration.tests/gen_org.eclipse.etrice.integration.tests.launch2
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTest_Top.behavior24
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTest_Top.structure10
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTester.behavior51
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPUser.behavior479
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.SubSystem_CPTest.structure4
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerTest_Top.structure89
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerUser.behavior2
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerUser.structure36
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.SubSystem_HandlerTest.structure38
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.Tester.structure36
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/org.eclipse.etrice.integration.tests.room317
-rw-r--r--tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/App_SubSystemHFSMTest.java77
-rw-r--r--tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/SubSystemHFSMTest.java148
-rw-r--r--tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/SubSystemHFSMTestRunner.java24
-rw-r--r--tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM.java596
-rw-r--r--tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM_Tester.java378
-rw-r--r--tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM_Tests.java77
-rw-r--r--tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/p_HFSM.java615
-rw-r--r--tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.java55
20 files changed, 491 insertions, 2567 deletions
diff --git a/tests/org.eclipse.etrice.integration.tests/gen_org.eclipse.etrice.integration.tests.launch b/tests/org.eclipse.etrice.integration.tests/gen_org.eclipse.etrice.integration.tests.launch
index 11ac033be..c703f8ae9 100644
--- a/tests/org.eclipse.etrice.integration.tests/gen_org.eclipse.etrice.integration.tests.launch
+++ b/tests/org.eclipse.etrice.integration.tests/gen_org.eclipse.etrice.integration.tests.launch
@@ -7,7 +7,7 @@
<listEntry value="1"/>
</listAttribute>
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.etrice.generator.java.Main"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.ChoicePointTest.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.ConfigTest.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.ConfigTest.config&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.HandlerTest.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.PingPongThreadTest.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.PingPongThreadTestReplPort.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.SendingDataByValueTest.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.tests.room&#13;&#10;${workspace_loc:org.eclipse.etrice.modellib.java}\models\TimingService.room"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.ChoicePointTest.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.ConfigTest.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.ConfigTest.config&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.HandlerTest.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.PingPongThreadTest.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.PingPongThreadTestReplPort.room&#13;&#10;${workspace_loc:org.eclipse.etrice.integration.tests}\model\org.eclipse.etrice.integration.SendingDataByValueTest.room&#13;&#10;${workspace_loc:org.eclipse.etrice.modellib.java}\models\TimingService.room"/>
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.generator.java"/>
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea"/>
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc:org.eclipse.etrice.integration.tests}"/>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTest_Top.behavior b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTest_Top.behavior
deleted file mode 100644
index 0000dbf97..000000000
--- a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTest_Top.behavior
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of CPTest_Top" snapToGrid="true" showGuides="true" pictogramLinks="//@link //@children.0/@link">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
- <link>
- <businessObjects href="../.etrice.integration.ChoicePointTest.room#ActorClass:CPTest_Top"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="840" height="540" x="20" y="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.0" width="800" height="500" x="20" y="20" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#StateGraph:CPTest_Top$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="800" height="40" y="20" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- </children>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTest_Top.structure b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTest_Top.structure
index df29da505..af8ba9cfa 100644
--- a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTest_Top.structure
+++ b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTest_Top.structure
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.structure" name="Structure of CPTest_Top" snapToGrid="true" showGuides="true" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link //@children.0/@children.0/@children.1/@link //@children.0/@children.1/@link //@children.0/@children.1/@children.1/@link //@connections.0/@link">
+<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.structure" name="Structure of CPTest_Top" snapToGrid="true" showGuides="true" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link //@children.0/@children.0/@children.1/@link //@children.0/@children.1/@link //@children.0/@children.1/@children.1/@link //@connections.0/@link" version="0.9.0">
<graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ActorClass:CPTest_Top"/>
@@ -25,7 +25,7 @@
</link>
<anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="cp_tester&#xA;(CPTester)"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="180" height="80" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="cp_tester&#xA;(CPTester)"/>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="port"/>
@@ -38,7 +38,7 @@
</link>
<anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="10" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" value="TestPort1"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="10" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" value="TestPort1"/>
</children>
</children>
</children>
@@ -55,7 +55,7 @@
</link>
<anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="cp_user&#xA;(CPUser)"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="180" height="80" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="cp_user&#xA;(CPUser)"/>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="port"/>
@@ -68,7 +68,7 @@
</link>
<anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="10" y="30" font="//@fonts.0" value="TestPort1"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="10" y="30" font="//@fonts.0" value="TestPort1"/>
</children>
</children>
</children>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTester.behavior b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTester.behavior
index 9aa94c7eb..c90f49cf9 100644
--- a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTester.behavior
+++ b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPTester.behavior
@@ -1,23 +1,24 @@
<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of CPTester" snapToGrid="true" showGuides="true" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@connections.0/@link">
+<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of CPTester" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@connections.0/@link" verticalGridUnit="10" version="0.9.0">
<graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ActorClass:CPTester"/>
</link>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="540" height="350" x="100" y="10">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.0" width="500" height="310" x="20" y="20" cornerHeight="20" cornerWidth="20"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
</graphicsAlgorithm>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#StateGraph:CPTester$sg"/>
</link>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="500" height="40" y="20" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="40" y="40">
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
<graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
</graphicsAlgorithm>
<link>
@@ -25,32 +26,38 @@
</link>
<anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
</children>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="210" height="160" x="210" y="90">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="170" height="120" x="20" y="20" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="145" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="85" y="114">
- <points x="-1" y="-3"/>
- <points x="-1" y="3"/>
- <points x="-8" y="3"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
+ <points x="-3" y="-3"/>
+ <points x="-3" y="3"/>
+ <points x="-11" y="3"/>
</graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="85" y="114">
- <points x="1" y="-3"/>
- <points x="1" y="3"/>
- <points x="8" y="3"/>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
+ <points x="3" y="-3"/>
+ <points x="3" y="3"/>
+ <points x="11" y="3"/>
+ </graphicsAlgorithmChildren>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
+ <points x="-2" y="-3"/>
+ <points x="-2" y="3"/>
+ <points x="2" y="3"/>
+ <points x="2" y="-3"/>
</graphicsAlgorithmChildren>
</graphicsAlgorithmChildren>
</graphicsAlgorithm>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#BaseState:CPTester$state0"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#SimpleState:CPTester$state0"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0"/>
+ <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="170" height="120" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
</children>
</children>
</children>
@@ -61,14 +68,14 @@
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#InitialTransition:CPTester$initial"/>
</link>
<connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
<connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
</connectionDecorators>
</connections>
<colors red="227" green="238" blue="249"/>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPUser.behavior b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPUser.behavior
index 2f3f2c928..390dcfcb5 100644
--- a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPUser.behavior
+++ b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.CPUser.behavior
@@ -1,576 +1,605 @@
<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of CPUser" snapToGrid="true" showGuides="true" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@connections.0/@link //@children.0/@children.3/@link //@connections.1/@link //@children.0/@children.4/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@children.0/@children.5/@link //@children.1/@link //@children.1/@children.1/@link //@children.0/@children.5/@children.1/@link //@children.1/@children.2/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link //@children.0/@children.6/@link //@children.0/@children.7/@link //@children.0/@children.8/@link //@connections.8/@link //@connections.9/@link //@children.1/@children.3/@link //@connections.10/@link //@connections.11/@link //@children.1/@children.4/@link //@connections.12/@link //@connections.13/@link //@connections.14/@link //@children.0/@children.9/@link //@connections.15/@link">
+<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of CPUser" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@children.0/@children.7/@link //@children.0/@children.8/@link //@children.0/@children.9/@link //@children.1/@link //@children.1/@children.1/@link //@children.1/@children.2/@link //@children.0/@children.4/@children.1/@link //@children.1/@children.3/@link //@children.1/@children.4/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link //@connections.8/@link //@connections.9/@link //@connections.10/@link //@connections.11/@link //@connections.12/@link //@connections.13/@link //@connections.14/@link //@connections.15/@link" verticalGridUnit="10" version="0.9.0">
<graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ActorClass:CPUser"/>
</link>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="871" height="421" x="20" y="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.0" width="831" height="381" x="20" y="20" cornerHeight="20" cornerWidth="20"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
</graphicsAlgorithm>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#StateGraph:CPUser$sg"/>
</link>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="831" height="40" y="20" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="40" y="40">
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
<graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
</graphicsAlgorithm>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#StateGraph:CPUser$sg"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
</children>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="200" y="60">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ChoicePoint:CPUser$cp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1 //@connections.2" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="330" y="280">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
+ <properties key="item-kind" value="htp"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="318">
+ <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
</graphicsAlgorithm>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ChoicePoint:CPUser$cp1"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#TransitionPoint:CPUser$tp0"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4 //@connections.6 //@connections.11" incomingConnections="//@connections.3" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.15" incomingConnections="//@connections.15"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
</children>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="135" height="133" x="320" y="90">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="95" height="93" x="20" y="20" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="70" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="47" y="87">
- <points x="-1" y="-3"/>
- <points x="-1" y="3"/>
- <points x="-8" y="3"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="233" y="216">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24">
+ <points x="-3" y="-3"/>
+ <points x="-3" y="3"/>
+ <points x="-11" y="3"/>
</graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="47" y="87">
- <points x="1" y="-3"/>
- <points x="1" y="3"/>
- <points x="8" y="3"/>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24">
+ <points x="3" y="-3"/>
+ <points x="3" y="3"/>
+ <points x="11" y="3"/>
+ </graphicsAlgorithmChildren>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
+ <points x="-2" y="-3"/>
+ <points x="-2" y="3"/>
+ <points x="2" y="3"/>
+ <points x="2" y="-3"/>
</graphicsAlgorithmChildren>
</graphicsAlgorithmChildren>
</graphicsAlgorithm>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#BaseState:CPUser$state0"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#SimpleState:CPUser$state0"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.2 //@connections.4 //@connections.1 //@connections.14"/>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.7" incomingConnections="//@connections.5 //@connections.6 //@connections.8 //@connections.14" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="95" height="93" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
</children>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="186" height="111" x="500" y="260">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="146" height="71" x="20" y="20" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="15" height="8" x="121" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="73" y="65">
- <points x="-1" y="-3"/>
- <points x="-1" y="3"/>
- <points x="-8" y="3"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="321" height="139" x="286" y="381">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="261" height="79" x="30" y="30" cornerHeight="20" cornerWidth="20">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="236" y="3" cornerHeight="5" cornerWidth="5"/>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="130" y="73">
+ <points x="-3" y="-3"/>
+ <points x="-3" y="3"/>
+ <points x="-11" y="3"/>
+ </graphicsAlgorithmChildren>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="130" y="73">
+ <points x="3" y="-3"/>
+ <points x="3" y="3"/>
+ <points x="11" y="3"/>
</graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="73" y="65">
- <points x="1" y="-3"/>
- <points x="1" y="3"/>
- <points x="8" y="3"/>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="130" y="73">
+ <points x="-2" y="-3"/>
+ <points x="-2" y="3"/>
+ <points x="2" y="3"/>
+ <points x="2" y="-3"/>
</graphicsAlgorithmChildren>
</graphicsAlgorithmChildren>
</graphicsAlgorithm>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#BaseState:CPUser$state1"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#SimpleState:CPUser$state1"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.7 //@connections.14" incomingConnections="//@connections.11"/>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.10 //@connections.14" incomingConnections="//@connections.13" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="146" height="71" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="261" height="79" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="trp"/>
<properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" y="23">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="10" height="10" x="15" y="15"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="117">
+ <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
<graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="17" y="23"/>
- <points x="23" y="17"/>
+ <points x="27" y="33"/>
+ <points x="33" y="27"/>
</graphicsAlgorithmChildren>
<graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="17" y="17"/>
- <points x="23" y="23"/>
+ <points x="27" y="27"/>
+ <points x="33" y="33"/>
</graphicsAlgorithmChildren>
</graphicsAlgorithm>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#EntryPoint:CPUser$state1$tp0"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.6" referencedGraphicsAlgorithm="//@children.0/@children.5/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.9" referencedGraphicsAlgorithm="//@children.0/@children.4/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="15" y="25" font="//@fonts.0" verticalAlignment="ALIGNMENT_TOP" value="tp0"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
</children>
</children>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="100" height="70" x="480" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="20" y="20" cornerHeight="20" cornerWidth="20">
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="464" y="63">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
<graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
<graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-1" y="-3"/>
- <points x="-1" y="3"/>
- <points x="-8" y="3"/>
+ <points x="-3" y="-3"/>
+ <points x="-3" y="3"/>
+ <points x="-11" y="3"/>
+ </graphicsAlgorithmChildren>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
+ <points x="3" y="-3"/>
+ <points x="3" y="3"/>
+ <points x="11" y="3"/>
</graphicsAlgorithmChildren>
<graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="1" y="-3"/>
- <points x="1" y="3"/>
- <points x="8" y="3"/>
+ <points x="-2" y="-3"/>
+ <points x="-2" y="3"/>
+ <points x="2" y="3"/>
+ <points x="2" y="-3"/>
</graphicsAlgorithmChildren>
</graphicsAlgorithmChildren>
</graphicsAlgorithm>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#BaseState:CPUser$testOk"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#SimpleState:CPUser$testOk"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.9" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.12" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="testOk"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="testOk"/>
</children>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="104" height="70" x="650" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="64" height="30" x="20" y="20" cornerHeight="20" cornerWidth="20">
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="124" height="90" x="648" y="63">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="64" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
<graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="39" y="3" cornerHeight="5" cornerWidth="5"/>
<graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24">
- <points x="-1" y="-3"/>
- <points x="-1" y="3"/>
- <points x="-8" y="3"/>
+ <points x="-3" y="-3"/>
+ <points x="-3" y="3"/>
+ <points x="-11" y="3"/>
</graphicsAlgorithmChildren>
<graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24">
- <points x="1" y="-3"/>
- <points x="1" y="3"/>
- <points x="8" y="3"/>
+ <points x="3" y="-3"/>
+ <points x="3" y="3"/>
+ <points x="11" y="3"/>
+ </graphicsAlgorithmChildren>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24">
+ <points x="-2" y="-3"/>
+ <points x="-2" y="3"/>
+ <points x="2" y="3"/>
+ <points x="2" y="-3"/>
</graphicsAlgorithmChildren>
</graphicsAlgorithmChildren>
</graphicsAlgorithm>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#BaseState:CPUser$testFalse"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#SimpleState:CPUser$testFalse"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.8" referencedGraphicsAlgorithm="//@children.0/@children.7/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.11" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="64" height="30" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="testFalse"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="64" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="testFalse"/>
</children>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="573" y="173">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="50" height="50" x="187" y="110">
+ <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="25" height="25" x="12" y="12"/>
</graphicsAlgorithm>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ChoicePoint:CPUser$cp2"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ChoicePoint:CPUser$cp0"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.8 //@connections.9" incomingConnections="//@connections.7" referencedGraphicsAlgorithm="//@children.0/@children.8/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5 //@connections.6" incomingConnections="//@connections.4"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="50" height="25" y="12" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
</children>
</children>
<children xsi:type="pi:ContainerShape" visible="true" active="true">
<properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="htp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="831" y="180">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="50" height="50" x="375" y="265">
+ <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="25" height="25" x="12" y="12"/>
</graphicsAlgorithm>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#TransitionPoint:CPUser$tp0"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ChoicePoint:CPUser$cp1"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.15" incomingConnections="//@connections.15"/>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.8 //@connections.9 //@connections.13" incomingConnections="//@connections.7"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="15" y="25" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_TOP" value="tp0"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="50" height="25" y="12" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
+ </children>
+ </children>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="trp"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="50" height="50" x="575" y="265">
+ <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="25" height="25" x="12" y="12"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ChoicePoint:CPUser$cp2"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.11 //@connections.12" incomingConnections="//@connections.10"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="50" height="25" y="12" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
</children>
</children>
</children>
<children xsi:type="pi:ContainerShape" active="true">
<properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="581" height="279" x="20" y="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.0" width="541" height="239" x="20" y="20" cornerHeight="20" cornerWidth="20"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
</graphicsAlgorithm>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#StateGraph:CPUser$state1$sg"/>
</link>
<children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="541" height="40" y="20" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state1"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state1"/>
</children>
<children xsi:type="pi:ContainerShape" active="true">
<properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" y="74">
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
<graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#StateGraph:CPUser$state1$sg"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" referencedGraphicsAlgorithm="//@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
+ </children>
+ </children>
+ <children xsi:type="pi:ContainerShape" active="true">
+ <properties key="obj-type" value="trp"/>
+ <properties key="item-kind" value="entp"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360">
+ <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
<graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="13" y="27"/>
- <points x="27" y="13"/>
+ <points x="33" y="47"/>
+ <points x="47" y="33"/>
</graphicsAlgorithmChildren>
<graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="13" y="13"/>
- <points x="27" y="27"/>
+ <points x="33" y="33"/>
+ <points x="47" y="47"/>
</graphicsAlgorithmChildren>
</graphicsAlgorithm>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#EntryPoint:CPUser$state1$tp0"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5" referencedGraphicsAlgorithm="//@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0"/>
<children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="15" y="25" font="//@fonts.0" verticalAlignment="ALIGNMENT_TOP" value="tp0"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
</children>
</children>
<children xsi:type="pi:ContainerShape" active="true">
<properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="219" height="152" x="300" y="50">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="179" height="112" x="20" y="20" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="154" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="89" y="106">
- <points x="-1" y="-3"/>
- <points x="-1" y="3"/>
- <points x="-8" y="3"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="240" y="290">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
+ <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24">
+ <points x="-3" y="-3"/>
+ <points x="-3" y="3"/>
+ <points x="-11" y="3"/>
+ </graphicsAlgorithmChildren>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24">
+ <points x="3" y="-3"/>
+ <points x="3" y="3"/>
+ <points x="11" y="3"/>
</graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="89" y="106">
- <points x="1" y="-3"/>
- <points x="1" y="3"/>
- <points x="8" y="3"/>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
+ <points x="-2" y="-3"/>
+ <points x="-2" y="3"/>
+ <points x="2" y="3"/>
+ <points x="2" y="-3"/>
</graphicsAlgorithmChildren>
</graphicsAlgorithmChildren>
</graphicsAlgorithm>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#BaseState:CPUser$state1$state0"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#SimpleState:CPUser$state1$state0"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.10 //@connections.12 //@connections.13"/>
+ <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.1 //@connections.2 //@connections.3" referencedGraphicsAlgorithm="//@children.1/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="179" height="112" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
</children>
</children>
<children xsi:type="pi:ContainerShape" active="true">
<properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="110" y="140">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="50" height="50" x="375" y="265">
+ <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="25" height="25" x="12" y="12"/>
</graphicsAlgorithm>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ChoicePoint:CPUser$state1$cp0"/>
</link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.10 //@connections.12" incomingConnections="//@connections.5" referencedGraphicsAlgorithm="//@children.1/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="160" y="41">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#StateGraph:CPUser$state1$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.13" referencedGraphicsAlgorithm="//@children.1/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1 //@connections.2" incomingConnections="//@connections.0"/>
<children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="50" height="25" y="12" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
</children>
</children>
</children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.2/@anchors.0" end="//@children.1/@children.4/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#InitialTransition:CPUser$initial"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ContinuationTransition:CPUser$state1$tr1"/>
</link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <connectionDecorators locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
+ <connectionDecorators active="true" locationRelative="true" location="0.5">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: "/>
</connectionDecorators>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.4/@anchors.0" end="//@children.1/@children.3/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ContinuationTransition:CPUser$tr4"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ContinuationTransition:CPUser$state1$tr2"/>
</link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <connectionDecorators locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="-30" y="8" font="//@fonts.0" value="tr4: [else]"/>
+ <connectionDecorators active="true" locationRelative="true" location="0.5">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: [else]"/>
</connectionDecorators>
- <bendpoints x="275" y="167"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.4/@anchors.0" end="//@children.1/@children.3/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#CPBranchTransition:CPUser$LastCheck"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#CPBranchTransition:CPUser$state1$tr0"/>
</link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <connectionDecorators locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="-48" y="-18" font="//@fonts.0" value="LastCheck: [counter ..."/>
+ <connectionDecorators active="true" locationRelative="true" location="0.5">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: [counter == 4]"/>
</connectionDecorators>
- <bendpoints x="320" y="97"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.3/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.1/@anchors.0" end="//@children.1/@children.3/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#TriggeredTransition:CPUser$tr1"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#InitialTransition:CPUser$state1$initial"/>
</link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <connectionDecorators locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="-161" y="5" font="//@fonts.0" value="tr1: &lt;msg1:TestPort1..."/>
+ <connectionDecorators active="true" locationRelative="true" location="0.5">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
</connectionDecorators>
- <bendpoints x="370" y="263"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.4/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.7/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ContinuationTransition:CPUser$tr2"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#InitialTransition:CPUser$initial"/>
</link>
<connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
<connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="24" y="-19" font="//@fonts.0" value="tr2: [else]"/>
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
</connectionDecorators>
- <bendpoints x="468" y="265"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.1/@anchors.0" end="//@children.1/@children.3/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.7/@anchors.0" end="//@children.0/@children.3/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ContinuationTransition:CPUser$state1$tr1"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ContinuationTransition:CPUser$tr4"/>
</link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <connectionDecorators visible="true" locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="10" font="//@fonts.0" value="tr1: "/>
+ <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4: [else]"/>
</connectionDecorators>
+ <bendpoints x="329" y="221"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.5/@children.1/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.7/@anchors.0" end="//@children.0/@children.3/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#CPBranchTransition:CPUser$tr3"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#CPBranchTransition:CPUser$LastCheck"/>
</link>
<connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
<connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="-35" y="-21" font="//@fonts.0" value="tr3: [counter == 4]"/>
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="LastCheck: [counter ..."/>
</connectionDecorators>
+ <bendpoints x="206" y="245"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.8/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.8/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#TriggeredTransition:CPUser$tr5"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#TriggeredTransition:CPUser$tr1"/>
</link>
<connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
<connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="7" y="4" font="//@fonts.0" value="tr5: &lt;msg1:TestPort1..."/>
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: &lt;msg1:TestPort1..."/>
</connectionDecorators>
+ <bendpoints x="350" y="327"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.8/@anchors.0" end="//@children.0/@children.7/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.8/@anchors.0" end="//@children.0/@children.3/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ContinuationTransition:CPUser$tr0"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ContinuationTransition:CPUser$tr2"/>
</link>
<connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
<connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="4" y="-36" font="//@fonts.0" value="tr0: [else]"/>
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: [else]"/>
</connectionDecorators>
+ <bendpoints x="413" y="267"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.8/@anchors.0" end="//@children.0/@children.6/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.8/@anchors.0" end="//@children.0/@children.4/@children.1/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#CPBranchTransition:CPUser$tr6"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#CPBranchTransition:CPUser$tr3"/>
</link>
<connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
<connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="-106" y="-31" font="//@fonts.0" value="tr6: [crcGen.getCrc(..."/>
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3: [counter == 4]"/>
</connectionDecorators>
</connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.3/@anchors.0" end="//@children.1/@children.2/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.9/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ContinuationTransition:CPUser$state1$tr2"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#TriggeredTransition:CPUser$tr5"/>
</link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <connectionDecorators visible="true" locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="-12" y="-19" font="//@fonts.0" value="tr2: [else]"/>
+ <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr5: &lt;msg1:TestPort1..."/>
</connectionDecorators>
- <bendpoints x="242" y="145"/>
+ <bendpoints x="657" y="421"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.5/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.9/@anchors.0" end="//@children.0/@children.6/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#CPBranchTransition:CPUser$tr11"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#ContinuationTransition:CPUser$tr0"/>
</link>
<connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
<connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="-9" y="-5" font="//@fonts.0" value="tr11: [counter == 3]"/>
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: [else]"/>
</connectionDecorators>
- <bendpoints x="425" y="370"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.3/@anchors.0" end="//@children.1/@children.2/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.9/@anchors.0" end="//@children.0/@children.5/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#CPBranchTransition:CPUser$state1$tr0"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#CPBranchTransition:CPUser$tr6"/>
</link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <connectionDecorators visible="true" locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="-45" y="-6" font="//@fonts.0" value="tr0: [counter == 4]"/>
+ <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr6: [crcGen.getCrc(..."/>
</connectionDecorators>
- <bendpoints x="246" y="206"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.4/@anchors.0" end="//@children.1/@children.2/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.8/@anchors.0" end="//@children.0/@children.4/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
- <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#InitialTransition:CPUser$state1$initial"/>
+ <businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#CPBranchTransition:CPUser$tr11"/>
</link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <connectionDecorators visible="true" locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
+ <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr11: [counter == 3]"/>
</connectionDecorators>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.4/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.3/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#TriggeredTransition:CPUser$tr7"/>
</link>
<connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
<connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="-88" y="8" font="//@fonts.0" value="tr7: &lt;msg1:TestPort1..."/>
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr7: &lt;msg1:TestPort1..."/>
</connectionDecorators>
- <bendpoints x="534" y="200"/>
+ <bendpoints x="275" y="374"/>
</connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.9/@anchors.0" end="//@children.0/@children.9/@anchors.0">
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.2/@anchors.0">
<properties key="obj-type" value="trans"/>
<graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#TriggeredTransition:CPUser$tr8"/>
</link>
<connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
<points x="-15" y="5"/>
<points/>
<points x="-15" y="-5"/>
</graphicsAlgorithm>
</connectionDecorators>
<connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" x="-87" y="-41" font="//@fonts.0" value="tr8: &lt;msg1:TestPort1..."/>
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr8: &lt;msg1:TestPort1..."/>
</connectionDecorators>
- <bendpoints x="839" y="248"/>
- <bendpoints x="816" y="220"/>
- <bendpoints x="836" y="196"/>
+ <bendpoints x="368" y="170"/>
+ <bendpoints x="417" y="170"/>
</connections>
<colors red="227" green="238" blue="249"/>
<colors red="255" green="255" blue="255"/>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.SubSystem_CPTest.structure b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.SubSystem_CPTest.structure
index a9940db22..020defe8e 100644
--- a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.SubSystem_CPTest.structure
+++ b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.ChoicePointTest.SubSystem_CPTest.structure
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.structure" name="Structure of SubSystem_CPTest" snapToGrid="true" showGuides="true" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link">
+<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.structure" name="Structure of SubSystem_CPTest" snapToGrid="true" showGuides="true" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link" version="0.9.0">
<graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
<link>
<businessObjects href="../org.eclipse.etrice.integration.ChoicePointTest.room#SubSystemClass:SubSystem_CPTest"/>
@@ -25,7 +25,7 @@
</link>
<anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
<children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="HandlerTest_Top&#xA;(CPTest_Top)"/>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="180" height="80" x="20" y="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="HandlerTest_Top&#xA;(CPTest_Top)"/>
</children>
</children>
</children>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerTest_Top.structure b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerTest_Top.structure
new file mode 100644
index 000000000..5b3b95c9d
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerTest_Top.structure
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="ASCII"?>
+<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.structure" name="Structure of HandlerTest_Top" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link //@children.0/@children.0/@children.1/@link //@children.0/@children.1/@link //@children.0/@children.1/@children.1/@link //@connections.0/@link" verticalGridUnit="10" version="0.9.0">
+ <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#ActorClass:HandlerTest_Top"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="cls"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#ActorClass:HandlerTest_Top"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="ref"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="240" height="140" x="156" y="170">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="150" y="50"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="145" y="65"/>
+ </graphicsAlgorithmChildren>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#ActorRef:HandlerTest_Top$tester"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="180" height="80" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="tester&#xA;(Tester)"/>
+ </children>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="port"/>
+ <properties key="item-kind" value="C"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="90">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="18" height="18" x="21" y="21"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#Port:Tester$TestPort1"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="15" y="6" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="TestPort1"/>
+ </children>
+ </children>
+ </children>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="ref"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="240" height="140" x="482" y="170">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="150" y="50"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="145" y="65"/>
+ </graphicsAlgorithmChildren>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#ActorRef:HandlerTest_Top$handlerUser"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="180" height="80" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="handlerUser&#xA;(HandlerUser)"/>
+ </children>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="port"/>
+ <properties key="item-kind" value=""/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="90">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="18" height="18" x="21" y="21"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#Port:HandlerUser$TestPort1"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="15" y="6" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="TestPort1"/>
+ </children>
+ </children>
+ </children>
+ </children>
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.0/@children.1/@anchors.0" end="//@children.0/@children.1/@children.1/@anchors.0">
+ <properties key="obj-type" value="bind"/>
+ <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#Binding:HandlerTest_Top$TestPort1!tester-TestPort1!handlerUser"/>
+ </link>
+ </connections>
+ <colors red="227" green="238" blue="249"/>
+ <colors red="255" green="255" blue="255"/>
+ <colors/>
+ <colors red="200" green="200" blue="200"/>
+ <fonts name="Arial" size="8"/>
+</pi:Diagram>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerUser.behavior b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerUser.behavior
index 26382fb62..24112ef38 100644
--- a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerUser.behavior
+++ b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerUser.behavior
@@ -115,7 +115,7 @@
<graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="366" y="366">
<graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
<graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="30" y="24">
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24">
<points x="-3" y="-3"/>
<points x="-3" y="3"/>
<points x="-11" y="3"/>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerUser.structure b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerUser.structure
new file mode 100644
index 000000000..66ed0cff8
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.HandlerUser.structure
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="ASCII"?>
+<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.structure" name="Structure of HandlerUser" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link" verticalGridUnit="10" version="0.9.0">
+ <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#ActorClass:HandlerUser"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="cls"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#ActorClass:HandlerUser"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="port"/>
+ <properties key="item-kind" value=""/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="400">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.2" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="40" height="40" x="20" y="20"/>
+ <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.1" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#Port:HandlerUser$TestPort1"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="TestPort1"/>
+ </children>
+ </children>
+ </children>
+ <colors red="227" green="238" blue="249"/>
+ <colors red="255" green="255" blue="255"/>
+ <colors/>
+ <fonts name="Arial" size="8"/>
+</pi:Diagram>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.SubSystem_HandlerTest.structure b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.SubSystem_HandlerTest.structure
new file mode 100644
index 000000000..dcfdbebfc
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.SubSystem_HandlerTest.structure
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="ASCII"?>
+<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.structure" name="Structure of SubSystem_HandlerTest" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link" verticalGridUnit="10" version="0.9.0">
+ <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#SubSystemClass:SubSystem_HandlerTest"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="cls"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#SubSystemClass:SubSystem_HandlerTest"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="ref"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="240" height="140" x="320" y="170">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="20" height="10" x="150" y="50"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="20" height="10" x="145" y="65"/>
+ </graphicsAlgorithmChildren>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#ActorRef:SubSystem_HandlerTest$HandlerTest_Top"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="180" height="80" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="HandlerTest_Top&#xA;(HandlerTest_Top)"/>
+ </children>
+ </children>
+ </children>
+ <colors red="227" green="238" blue="249"/>
+ <colors red="255" green="255" blue="255"/>
+ <colors/>
+ <colors red="200" green="200" blue="200"/>
+ <fonts name="Arial" size="8"/>
+</pi:Diagram>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.Tester.structure b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.Tester.structure
new file mode 100644
index 000000000..740d5130e
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/model/diagrams/org.eclipse.etrice.integration.HandlerTest.Tester.structure
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="ASCII"?>
+<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.structure" name="Structure of Tester" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link" verticalGridUnit="10" version="0.9.0">
+ <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#ActorClass:Tester"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="cls"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#ActorClass:Tester"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="port"/>
+ <properties key="item-kind" value="C"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="400">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="40" height="40" x="20" y="20"/>
+ <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.2" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../org.eclipse.etrice.integration.HandlerTest.room#Port:Tester$TestPort1"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="TestPort1"/>
+ </children>
+ </children>
+ </children>
+ <colors red="227" green="238" blue="249"/>
+ <colors red="255" green="255" blue="255"/>
+ <colors/>
+ <fonts name="Arial" size="8"/>
+</pi:Diagram>
diff --git a/tests/org.eclipse.etrice.integration.tests/model/org.eclipse.etrice.integration.tests.room b/tests/org.eclipse.etrice.integration.tests/model/org.eclipse.etrice.integration.tests.room
deleted file mode 100644
index 9e206ee4c..000000000
--- a/tests/org.eclipse.etrice.integration.tests/model/org.eclipse.etrice.integration.tests.room
+++ /dev/null
@@ -1,317 +0,0 @@
-RoomModel org.eclipse.etrice.integration.tests {
-
- import room.basic.types.* from "../../../runtime/org.eclipse.etrice.modellib.java/models/Types.room"
-
- LogicalSystem SystemHFSMTest {
- SubSystemRef subsystem : SubSystemHFSMTest
- }
-
- SubSystemClass SubSystemHFSMTest {
- ActorRef application : App_SubSystemHFSMTest
- }
-
- ActorClass a_HFSM_Tests {
- Structure {
- ActorRef HFSM : a_HFSM
- ActorRef Tester : a_HFSM_Tester
- Binding Tester.testee and HFSM.fct
- }
- }
-
- ActorClass a_HFSM {
- Interface {
- Port fct : p_HFSM
- }
- Structure {
- external Port fct
- }
- Behavior {
- StateMachine {
- Transition tr0: initial -> State1 {
- action {
- "fct.init_action();"
- }
- }
- Transition tr1: State1 -> tp0 of State2 {
- triggers {
- <m1:fct>
- }
- action {
- "fct.s1_m1_s2_action();"
- }
- }
- Transition tr2: tp1 of State2 -> State3 {
- action {
- "fct.s2__s3_action();"
- }
- }
- Transition tr3: State2 -> State4 {
- triggers {
- <m4:fct>
- }
- action {
- "fct.s2_m4_s4_action();"
- }
- }
- Transition tr4: my tp0 -> State1 {
- triggers {
- <reset:fct>
- }
- action {
- "fct.top_reset_s2_action();"
- }
- }
- Transition tr5: State2 -> State2 {
- triggers {
- <m7:fct>
- }
- action {
- "fct.s2_m7_s2_action();"
- }
- }
- Transition tr6: my tp1 -> my tp1 {
- triggers {
- <m8:fct>
- }
- action {
- "fct.top_s8_top_action();"
- }
- }
- Transition tr7: my tp2 -> my tp2 {
- triggers {
- <m9:fct>
- }
- action {
- "fct.top_s9_top_action();"
- }
- }
- TransitionPoint tp0
- TransitionPoint tp1
- handler TransitionPoint tp2
- State State1 {
- entry {
- "fct.s1_entry();"
- }
- exit {
- "fct.s1_exit();"
- }
- }
- State State2 {
- entry {
- "fct.s2_entry();"
- }
- exit {
- "fct.s2_exit();"
- }
- subgraph {
- Transition tr0: my tp0 -> State1 {
- action {
- "fct.s2_m1_s2s1_action();"
- }
- }
- Transition tr1: State1 -> State2 {
- triggers {
- <m2:fct>
- }
- action {
- "fct.s2s1_m2_s2s2_action();"
- }
- }
- Transition tr2: State2 -> my tp1 {
- triggers {
- <m3:fct>
- }
- action {
- "fct.s2s2_m3_action();"
- }
- }
- Transition tr3: my tp3 -> my tp3 {
- triggers {
- <m5:fct>
- }
- action {
- "fct.s2_m5_s2_action();"
- }
- }
- Transition tr4: my tp4 -> my tp4 {
- triggers {
- <m6:fct>
- }
- action {
- "fct.s2_m6_s2_action();"
- }
- }
- EntryPoint tp0
- ExitPoint tp1
- TransitionPoint tp3
- handler TransitionPoint tp4
- State State1 {
- entry {
- "fct.s2s1_entry();"
- }
- exit {
- "fct.s2s1_exit();"
- }
- }
- State State2 {
- entry {
- "fct.s2s2_entry();"
- }
- exit {
- "fct.s2s2_exit();"
- }
- }
- }
- }
- State State3 {
- entry {
- "fct.s3_entry();"
- }
- exit {
- "fct.s3_exit();"
- }
- }
- State State4 {
- entry {
- "fct.s4_entry();"
- }
- exit {
- "fct.s4_exit();"
- }
- }
- }
- }
- }
-
- ActorClass a_HFSM_Tester {
- Interface {
- conjugated Port testee : p_HFSM
- }
- Structure {
- usercode1 {
- "import org.eclipse.etrice.runtime.java.messaging.RTServices;"
- }
- external Port testee
- }
- Behavior {
- StateMachine {
- Transition tr0: initial -> State1 {}
- Transition tr1: State1 -> State2 {
- triggers {
- <init_action:testee>
- }
- }
- Transition tr2: State2 -> State3 {
- triggers {
- <s1_entry:testee>
- }
- action {
- "testee.m1();"
- }
- }
- Transition tr3: State3 -> State4 {
- triggers {
- <s1_exit:testee>
- }
- }
- Transition tr4: State4 -> State5 {
- triggers {
- <s1_m1_s2_action:testee>
- }
- }
- Transition tr5: State5 -> State6 {
- triggers {
- <s2_entry:testee>
- }
- }
- Transition tr6: State6 -> State7 {
- triggers {
- <s2_m1_s2s1_action:testee>
- }
- }
- Transition tr7: State7 -> TestPass {
- triggers {
- <s2s1_entry:testee>
- }
- }
- State State1 {}
- State State2 {}
- State State3 {}
- State State4 {}
- State State5 {}
- State State6 {}
- State State7 {}
- State TestPass {
- entry {
- "RTServices.getInstance().getSubSystem().testFinished(0);"
- }
- }
- }
- }
- }
-
-// automatically inserted App_SubSystemHFSMTest
- ActorClass App_SubSystemHFSMTest {
- Structure {
- ActorRef HFSM_Tests : a_HFSM_Tests
- }
- }
-
- ProtocolClass p_SimpleProtocol {
- incoming {
- Message data ()
- }
- outgoing {
- Message ack ()
- Message nak ()
- Message poll ()
- }
- }
-
- ProtocolClass p_HFSM {
- incoming {
- Message m1 ()
- Message m2 ()
- Message m3 ()
- Message m4 ()
- Message m5 ()
- Message m6 ()
- Message reset ()
- Message m7 ()
- Message m8 ()
- Message m9 ()
- }
- outgoing {
- Message init_action ()
- Message s1_entry ()
- Message s1_exit ()
- Message s2_entry ()
- Message s2_exit ()
- Message s3_entry ()
- Message s3_exit ()
- Message s4_entry ()
- Message s4_exit ()
- Message s2s1_entry ()
- Message s2s1_exit ()
- Message s2s2_entry ()
- Message s2s2_exit ()
- Message s1_m1_s2_action ()
- Message s2_m1_s2s1_action ()
- Message s2s1_m2_s2s2_action ()
- Message s2s2_m3_action ()
- Message s2_m4_s4_action ()
- Message s2_m5_s2_action ()
- Message s2_m6_s2_action ()
- Message s2__s3_action ()
- Message s2_m7_s2_action ()
- Message top_s8_top_action ()
- Message top_s9_top_action ()
- Message top_reset_s2_action ()
- }
- }
-
- DataClass d_Packet {
- Attribute data : int32
- }
-
-} \ No newline at end of file
diff --git a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/App_SubSystemHFSMTest.java b/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/App_SubSystemHFSMTest.java
deleted file mode 100644
index 8490af4b1..000000000
--- a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/App_SubSystemHFSMTest.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package org.eclipse.etrice.integration.tests;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.IRTObject;
-import org.eclipse.etrice.runtime.java.messaging.IMessageReceiver;
-import org.eclipse.etrice.runtime.java.modelbase.ActorClassBase;
-import org.eclipse.etrice.runtime.java.modelbase.SubSystemClassBase;
-import org.eclipse.etrice.runtime.java.modelbase.InterfaceItemBase;
-import org.eclipse.etrice.runtime.java.debugging.DebuggingService;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.*;
-
-
-
-
-
-public class App_SubSystemHFSMTest extends ActorClassBase {
-
-
-
- //--------------------- ports
-
- //--------------------- saps
-
- //--------------------- services
-
- //--------------------- interface item IDs
-
-
- /*--------------------- attributes ---------------------*/
- /*--------------------- operations ---------------------*/
-
- //--------------------- construction
- public App_SubSystemHFSMTest(IRTObject parent, String name, Address[][] port_addr, Address[][] peer_addr){
- super(parent, name, port_addr[0][0], peer_addr[0][0]);
- setClassName("App_SubSystemHFSMTest");
-
- // initialize attributes
-
- // own ports
-
- // own saps
-
- // own service implementations
- }
-
-
- //--------------------- attribute setters and getters
-
-
- //--------------------- port getters
-
- //--------------------- lifecycle functions
- public void init(){
- initUser();
- }
-
- public void start(){
- startUser();
- }
-
- public void stop(){
- stopUser();
- }
-
- public void destroy(){
- }
-
- //--------------------- no state machine
- @Override
- public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data) {
- handleSystemEvent(ifitem, evt, data);
- }
-
- @Override
- public void executeInitTransition(){
- }
-};
diff --git a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/SubSystemHFSMTest.java b/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/SubSystemHFSMTest.java
deleted file mode 100644
index 1f8d7ae00..000000000
--- a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/SubSystemHFSMTest.java
+++ /dev/null
@@ -1,148 +0,0 @@
-package org.eclipse.etrice.integration.tests;
-
-import org.eclipse.etrice.runtime.java.messaging.MessageService;
-import org.eclipse.etrice.runtime.java.messaging.RTServices;
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.IRTObject;
-import org.eclipse.etrice.runtime.java.messaging.RTSystemServicesProtocol.*;
-import org.eclipse.etrice.runtime.java.modelbase.ActorClassBase;
-import org.eclipse.etrice.runtime.java.modelbase.SubSystemClassBase;
-import org.eclipse.etrice.runtime.java.modelbase.InterfaceItemBase;
-
-
-
-
-public class SubSystemHFSMTest extends SubSystemClassBase{
-
-
- public SubSystemHFSMTest(String name) {
- super(name);
- }
-
- @Override
- public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data){
- }
-
- @Override
- public void instantiateMessageServices(){
-
- RTServices.getInstance().getMsgSvcCtrl().addMsgSvc(new MessageService(this, new Address(0, 0, 0),"MessageService_Main"));
- }
-
- @Override
- public void instantiateActors(){
-
- // all addresses
- // Addresses for the Subsystem Systemport
- Address addr_item_SystemPort_0 = new Address(0,0,107);
- Address addr_item_SystemPort_1 = new Address(0,0,108);
- Address addr_item_SystemPort_2 = new Address(0,0,109);
- Address addr_item_SystemPort_3 = new Address(0,0,110);
-
- // actor instance /SubSystemHFSMTest/application itself => Systemport Address
- // TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)
- Address addr_item__SubSystemHFSMTest_application = new Address(0,0,101);
- // interface items of /SubSystemHFSMTest/application
- // actor instance /SubSystemHFSMTest/application/HFSM_Tests itself => Systemport Address
- // TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)
- Address addr_item__SubSystemHFSMTest_application_HFSM_Tests = new Address(0,0,102);
- // interface items of /SubSystemHFSMTest/application/HFSM_Tests
- // actor instance /SubSystemHFSMTest/application/HFSM_Tests/HFSM itself => Systemport Address
- // TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)
- Address addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM = new Address(0,0,103);
- // interface items of /SubSystemHFSMTest/application/HFSM_Tests/HFSM
- Address addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM_fct = new Address(0,0,104);
- // actor instance /SubSystemHFSMTest/application/HFSM_Tests/Tester itself => Systemport Address
- // TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)
- Address addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester = new Address(0,0,105);
- // interface items of /SubSystemHFSMTest/application/HFSM_Tests/Tester
- Address addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester_testee = new Address(0,0,106);
-
- // instantiate all actor instances
- instances = new ActorClassBase[4];
- instances[0] = new App_SubSystemHFSMTest(
- this,
- "application",
- // own interface item addresses
- new Address[][] {{addr_item__SubSystemHFSMTest_application}
- },
- // peer interface item addresses
- new Address[][] {{addr_item_SystemPort_0}
- }
- );
- instances[1] = new a_HFSM_Tests(
- instances[0],
- "HFSM_Tests",
- // own interface item addresses
- new Address[][] {{addr_item__SubSystemHFSMTest_application_HFSM_Tests}
- },
- // peer interface item addresses
- new Address[][] {{addr_item_SystemPort_1}
- }
- );
- instances[2] = new a_HFSM(
- instances[1],
- "HFSM",
- // own interface item addresses
- new Address[][] {{addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM},
- {
- addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM_fct
- }
- },
- // peer interface item addresses
- new Address[][] {{addr_item_SystemPort_2},
- {
- addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester_testee
- }
- }
- );
- instances[3] = new a_HFSM_Tester(
- instances[1],
- "Tester",
- // own interface item addresses
- new Address[][] {{addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester},
- {
- addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester_testee
- }
- },
- // peer interface item addresses
- new Address[][] {{addr_item_SystemPort_3},
- {
- addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM_fct
- }
- }
- );
-
- // apply instance attribute configurations
-
- // create the subsystem system port
- RTSystemPort = new RTSystemServicesProtocolConjPortRepl(this, "RTSystemPort",
- 0, //local ID
- // own addresses
- new Address[]{
- addr_item_SystemPort_0,
- addr_item_SystemPort_1,
- addr_item_SystemPort_2,
- addr_item_SystemPort_3
- },
- // peer addresses
- new Address[]{
- addr_item__SubSystemHFSMTest_application,
- addr_item__SubSystemHFSMTest_application_HFSM_Tests,
- addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM,
- addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester
- });
- }
-
-
- @Override
- public void init(){
- super.init();
- }
-
- @Override
- public void stop(){
- super.stop();
- }
-
-};
diff --git a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/SubSystemHFSMTestRunner.java b/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/SubSystemHFSMTestRunner.java
deleted file mode 100644
index 9a816ca6e..000000000
--- a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/SubSystemHFSMTestRunner.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- * @author generated by eTrice
- *
- * this class contains the main function running component SubSystemHFSMTest
- * it instantiates SubSystemHFSMTest and starts and ends the lifecycle
- */
-
-package org.eclipse.etrice.integration.tests;
-
-import org.eclipse.etrice.runtime.java.modelbase.SubSystemRunnerBase;
-
-class SubSystemHFSMTestRunner extends SubSystemRunnerBase {
-
- /**
- * main function
- * creates the main component and starts and stops the lifecycle
- */
- public static void main(String[] args) {
- // instantiate the main component
- SubSystemHFSMTest main_component = new SubSystemHFSMTest("SubSystemHFSMTest");
-
- run(main_component, args);
- }
-};
diff --git a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM.java b/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM.java
deleted file mode 100644
index aada96e33..000000000
--- a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM.java
+++ /dev/null
@@ -1,596 +0,0 @@
-package org.eclipse.etrice.integration.tests;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.IRTObject;
-import org.eclipse.etrice.runtime.java.messaging.IMessageReceiver;
-import org.eclipse.etrice.runtime.java.modelbase.ActorClassBase;
-import org.eclipse.etrice.runtime.java.modelbase.SubSystemClassBase;
-import org.eclipse.etrice.runtime.java.modelbase.InterfaceItemBase;
-import org.eclipse.etrice.runtime.java.debugging.DebuggingService;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.*;
-
-
-import org.eclipse.etrice.integration.tests.p_HFSM.*;
-
-
-
-public class a_HFSM extends ActorClassBase {
-
-
-
- //--------------------- ports
- protected p_HFSMPort fct = null;
-
- //--------------------- saps
-
- //--------------------- services
-
- //--------------------- interface item IDs
- public static final int IFITEM_fct = 1;
-
-
- /*--------------------- attributes ---------------------*/
- /*--------------------- operations ---------------------*/
-
- //--------------------- construction
- public a_HFSM(IRTObject parent, String name, Address[][] port_addr, Address[][] peer_addr){
- super(parent, name, port_addr[0][0], peer_addr[0][0]);
- setClassName("a_HFSM");
-
- // initialize attributes
-
- // own ports
- fct = new p_HFSMPort(this, "fct", IFITEM_fct, 0, port_addr[IFITEM_fct][0], peer_addr[IFITEM_fct][0]);
-
- // own saps
-
- // own service implementations
- }
-
-
- //--------------------- attribute setters and getters
-
-
- //--------------------- port getters
- public p_HFSMPort getFct (){
- return this.fct;
- }
-
- //--------------------- lifecycle functions
- public void init(){
- initUser();
- }
-
- public void start(){
- startUser();
- }
-
- public void stop(){
- stopUser();
- }
-
- public void destroy(){
- }
-
-
- /* state IDs */
- public static final int STATE_State2 = 2;
- public static final int STATE_State1 = 3;
- public static final int STATE_State2_State1 = 4;
- public static final int STATE_State2_State2 = 5;
- public static final int STATE_State3 = 6;
- public static final int STATE_State4 = 7;
-
- /* transition chains */
- public static final int CHAIN_State2_TRANS_tr1_FROM_State1_TO_State2_BY_m2fct = 1;
- public static final int CHAIN_State2_TRANS_tr2_FROM_State2_TO_tp1_BY_m3fct = 2;
- public static final int CHAIN_State2_TRANS_tr3_FROM_tp3_TO_tp3_BY_m5fct_tr3 = 3;
- public static final int CHAIN_State2_TRANS_tr4_FROM_tp4_TO_tp4_BY_m6fct_tr4 = 4;
- public static final int CHAIN_TRANS_INITIAL_TO__State1 = 5;
- public static final int CHAIN_TRANS_tr1_FROM_State1_TO_State2_tp0_BY_m1fct = 6;
- public static final int CHAIN_TRANS_tr3_FROM_State2_TO_State4_BY_m4fct = 7;
- public static final int CHAIN_TRANS_tr4_FROM_tp0_TO_State1_BY_resetfct = 8;
- public static final int CHAIN_TRANS_tr5_FROM_State2_TO_State2_BY_m7fct_tr5 = 9;
- public static final int CHAIN_TRANS_tr6_FROM_tp1_TO_tp1_BY_m8fct_tr6 = 10;
- public static final int CHAIN_TRANS_tr7_FROM_tp2_TO_tp2_BY_m9fct_tr7 = 11;
-
- /* triggers */
- public static final int POLLING = 0;
- public static final int TRIG_fct__m1 = IFITEM_fct + EVT_SHIFT*p_HFSM.IN_m1;
- public static final int TRIG_fct__m2 = IFITEM_fct + EVT_SHIFT*p_HFSM.IN_m2;
- public static final int TRIG_fct__m3 = IFITEM_fct + EVT_SHIFT*p_HFSM.IN_m3;
- public static final int TRIG_fct__m4 = IFITEM_fct + EVT_SHIFT*p_HFSM.IN_m4;
- public static final int TRIG_fct__m5 = IFITEM_fct + EVT_SHIFT*p_HFSM.IN_m5;
- public static final int TRIG_fct__m6 = IFITEM_fct + EVT_SHIFT*p_HFSM.IN_m6;
- public static final int TRIG_fct__m7 = IFITEM_fct + EVT_SHIFT*p_HFSM.IN_m7;
- public static final int TRIG_fct__m8 = IFITEM_fct + EVT_SHIFT*p_HFSM.IN_m8;
- public static final int TRIG_fct__m9 = IFITEM_fct + EVT_SHIFT*p_HFSM.IN_m9;
- public static final int TRIG_fct__reset = IFITEM_fct + EVT_SHIFT*p_HFSM.IN_reset;
-
- // state names
- protected static final String stateStrings[] = {"<no state>","<top>","State2",
- "State1",
- "State2_State1",
- "State2_State2",
- "State3",
- "State4"
- };
-
- // history
- protected int history[] = {NO_STATE,NO_STATE,NO_STATE,NO_STATE,NO_STATE,NO_STATE,NO_STATE,NO_STATE};
-
- private void setState(int new_state) {
- DebuggingService.getInstance().addActorState(this,stateStrings[new_state]);
- if (stateStrings[new_state]!="Idle") {
- System.out.println(getInstancePath() + " -> " + stateStrings[new_state]);
- }
- this.state = new_state;
- }
-
- /* Entry and Exit Codes */
- protected void entry_State1() {
- fct.s1_entry();
- }
- protected void exit_State1() {
- fct.s1_exit();
- }
- protected void entry_State2() {
- fct.s2_entry();
- }
- protected void exit_State2() {
- fct.s2_exit();
- }
- protected void entry_State2_State1() {
- fct.s2s1_entry();
- }
- protected void exit_State2_State1() {
- fct.s2s1_exit();
- }
- protected void entry_State2_State2() {
- fct.s2s2_entry();
- }
- protected void exit_State2_State2() {
- fct.s2s2_exit();
- }
- protected void entry_State3() {
- fct.s3_entry();
- }
- protected void exit_State3() {
- fct.s3_exit();
- }
- protected void entry_State4() {
- fct.s4_entry();
- }
- protected void exit_State4() {
- fct.s4_exit();
- }
-
- /* Action Codes */
- protected void action_TRANS_INITIAL_TO__State1() {
- fct.init_action();
- }
- protected void action_TRANS_tr1_FROM_State1_TO_State2_tp0_BY_m1fct(InterfaceItemBase ifitem) {
- fct.s1_m1_s2_action();
- }
- protected void action_TRANS_tr2_FROM_State2_tp1_TO_State3(InterfaceItemBase ifitem) {
- fct.s2__s3_action();
- }
- protected void action_TRANS_tr3_FROM_State2_TO_State4_BY_m4fct(InterfaceItemBase ifitem) {
- fct.s2_m4_s4_action();
- }
- protected void action_TRANS_tr4_FROM_tp0_TO_State1_BY_resetfct(InterfaceItemBase ifitem) {
- fct.top_reset_s2_action();
- }
- protected void action_TRANS_tr5_FROM_State2_TO_State2_BY_m7fct_tr5(InterfaceItemBase ifitem) {
- fct.s2_m7_s2_action();
- }
- protected void action_TRANS_tr6_FROM_tp1_TO_tp1_BY_m8fct_tr6(InterfaceItemBase ifitem) {
- fct.top_s8_top_action();
- }
- protected void action_TRANS_tr7_FROM_tp2_TO_tp2_BY_m9fct_tr7(InterfaceItemBase ifitem) {
- fct.top_s9_top_action();
- }
- protected void action_State2_TRANS_tr0_FROM_tp0_TO_State1(InterfaceItemBase ifitem) {
- fct.s2_m1_s2s1_action();
- }
- protected void action_State2_TRANS_tr1_FROM_State1_TO_State2_BY_m2fct(InterfaceItemBase ifitem) {
- fct.s2s1_m2_s2s2_action();
- }
- protected void action_State2_TRANS_tr2_FROM_State2_TO_tp1_BY_m3fct(InterfaceItemBase ifitem) {
- fct.s2s2_m3_action();
- }
- protected void action_State2_TRANS_tr3_FROM_tp3_TO_tp3_BY_m5fct_tr3(InterfaceItemBase ifitem) {
- fct.s2_m5_s2_action();
- }
- protected void action_State2_TRANS_tr4_FROM_tp4_TO_tp4_BY_m6fct_tr4(InterfaceItemBase ifitem) {
- fct.s2_m6_s2_action();
- }
-
- /**
- * calls exit codes while exiting from the current state to one of its
- * parent states while remembering the history
- * @param current - the current state
- * @param to - the final parent state
- * @param handler - entry and exit codes are called only if not handler (for handler TransitionPoints)
- */
- private void exitTo(int current, int to, boolean handler) {
- while (current!=to) {
- switch (current) {
- case STATE_State1:
- if (!handler) exit_State1();
- this.history[STATE_TOP] = STATE_State1;
- current = STATE_TOP;
- break;
- case STATE_State2:
- if (!handler) exit_State2();
- this.history[STATE_TOP] = STATE_State2;
- current = STATE_TOP;
- break;
- case STATE_State2_State1:
- if (!handler) exit_State2_State1();
- this.history[STATE_State2] = STATE_State2_State1;
- current = STATE_State2;
- break;
- case STATE_State2_State2:
- if (!handler) exit_State2_State2();
- this.history[STATE_State2] = STATE_State2_State2;
- current = STATE_State2;
- break;
- case STATE_State3:
- if (!handler) exit_State3();
- this.history[STATE_TOP] = STATE_State3;
- current = STATE_TOP;
- break;
- case STATE_State4:
- if (!handler) exit_State4();
- this.history[STATE_TOP] = STATE_State4;
- current = STATE_TOP;
- break;
- }
- }
- }
-
- /**
- * calls action, entry and exit codes along a transition chain. The generic data are cast to typed data
- * matching the trigger of this chain. The ID of the final state is returned
- * @param chain - the chain ID
- * @param generic_data - the generic data pointer
- * @return the ID of the final state
- */
- private int executeTransitionChain(int chain, InterfaceItemBase ifitem, Object generic_data) {
- switch (chain) {
- case CHAIN_TRANS_INITIAL_TO__State1:
- {
- action_TRANS_INITIAL_TO__State1();
- return STATE_State1;
- }
- case CHAIN_TRANS_tr1_FROM_State1_TO_State2_tp0_BY_m1fct:
- {
- action_TRANS_tr1_FROM_State1_TO_State2_tp0_BY_m1fct(ifitem);
- entry_State2();
- action_State2_TRANS_tr0_FROM_tp0_TO_State1(ifitem);
- return STATE_State2_State1;
- }
- case CHAIN_TRANS_tr3_FROM_State2_TO_State4_BY_m4fct:
- {
- action_TRANS_tr3_FROM_State2_TO_State4_BY_m4fct(ifitem);
- return STATE_State4;
- }
- case CHAIN_TRANS_tr4_FROM_tp0_TO_State1_BY_resetfct:
- {
- action_TRANS_tr4_FROM_tp0_TO_State1_BY_resetfct(ifitem);
- return STATE_State1;
- }
- case CHAIN_TRANS_tr5_FROM_State2_TO_State2_BY_m7fct_tr5:
- {
- action_TRANS_tr5_FROM_State2_TO_State2_BY_m7fct_tr5(ifitem);
- return STATE_State2;
- }
- case CHAIN_TRANS_tr6_FROM_tp1_TO_tp1_BY_m8fct_tr6:
- {
- action_TRANS_tr6_FROM_tp1_TO_tp1_BY_m8fct_tr6(ifitem);
- return STATE_TOP;
- }
- case CHAIN_TRANS_tr7_FROM_tp2_TO_tp2_BY_m9fct_tr7:
- {
- action_TRANS_tr7_FROM_tp2_TO_tp2_BY_m9fct_tr7(ifitem);
- return STATE_TOP;
- }
- case CHAIN_State2_TRANS_tr1_FROM_State1_TO_State2_BY_m2fct:
- {
- action_State2_TRANS_tr1_FROM_State1_TO_State2_BY_m2fct(ifitem);
- return STATE_State2_State2;
- }
- case CHAIN_State2_TRANS_tr2_FROM_State2_TO_tp1_BY_m3fct:
- {
- action_State2_TRANS_tr2_FROM_State2_TO_tp1_BY_m3fct(ifitem);
- exit_State2();
- action_TRANS_tr2_FROM_State2_tp1_TO_State3(ifitem);
- return STATE_State3;
- }
- case CHAIN_State2_TRANS_tr3_FROM_tp3_TO_tp3_BY_m5fct_tr3:
- {
- action_State2_TRANS_tr3_FROM_tp3_TO_tp3_BY_m5fct_tr3(ifitem);
- return STATE_State2;
- }
- case CHAIN_State2_TRANS_tr4_FROM_tp4_TO_tp4_BY_m6fct_tr4:
- {
- action_State2_TRANS_tr4_FROM_tp4_TO_tp4_BY_m6fct_tr4(ifitem);
- return STATE_State2;
- }
- }
- return NO_STATE;
- }
-
- /**
- * calls entry codes while entering a state's history. The ID of the final leaf state is returned
- * @param state - the state which is entered
- * @param handler - entry code is executed if not handler
- * @return - the ID of the final leaf state
- */
- private int enterHistory(int state, boolean handler, boolean skip_entry) {
- while (true) {
- switch (state) {
- case STATE_State1:
- if (!(skip_entry || handler)) entry_State1();
- // in leaf state: return state id
- return STATE_State1;
- case STATE_State2:
- if (!(skip_entry || handler)) entry_State2();
- // state has a sub graph
- // without init transition
- state = this.history[STATE_State2];
- break;
- case STATE_State2_State1:
- if (!(skip_entry || handler)) entry_State2_State1();
- // in leaf state: return state id
- return STATE_State2_State1;
- case STATE_State2_State2:
- if (!(skip_entry || handler)) entry_State2_State2();
- // in leaf state: return state id
- return STATE_State2_State2;
- case STATE_State3:
- if (!(skip_entry || handler)) entry_State3();
- // in leaf state: return state id
- return STATE_State3;
- case STATE_State4:
- if (!(skip_entry || handler)) entry_State4();
- // in leaf state: return state id
- return STATE_State4;
- case STATE_TOP:
- state = this.history[STATE_TOP];
- break;
- }
- skip_entry = false;
- }
- //return NO_STATE; // required by CDT but detected as unreachable by JDT because of while (true)
- }
-
- public void executeInitTransition() {
- int chain = CHAIN_TRANS_INITIAL_TO__State1;
- int next = executeTransitionChain(chain, null, null);
- next = enterHistory(next, false, false);
- setState(next);
- }
-
- /* receiveEvent contains the main implementation of the FSM */
- public void receiveEvent(InterfaceItemBase ifitem, int evt, Object generic_data) {
- int trigger = ifitem.getLocalId() + EVT_SHIFT*evt;
- int chain = NOT_CAUGHT;
- int catching_state = NO_STATE;
- boolean is_handler = false;
- boolean skip_entry = false;
-
- if (!handleSystemEvent(ifitem, evt, generic_data)) {
- switch (this.state) {
- case STATE_State1:
- switch(trigger) {
- case TRIG_fct__m1:
- {
- chain = CHAIN_TRANS_tr1_FROM_State1_TO_State2_tp0_BY_m1fct;
- catching_state = STATE_TOP;
- }
- break;
- case TRIG_fct__reset:
- {
- chain = CHAIN_TRANS_tr4_FROM_tp0_TO_State1_BY_resetfct;
- catching_state = STATE_TOP;
- }
- break;
- case TRIG_fct__m8:
- {
- chain = CHAIN_TRANS_tr6_FROM_tp1_TO_tp1_BY_m8fct_tr6;
- catching_state = STATE_TOP;
- skip_entry = true;
- }
- break;
- case TRIG_fct__m9:
- {
- chain = CHAIN_TRANS_tr7_FROM_tp2_TO_tp2_BY_m9fct_tr7;
- catching_state = STATE_TOP;
- is_handler = true;
- skip_entry = true;
- }
- break;
- }
- break;
- case STATE_State2_State1:
- switch(trigger) {
- case TRIG_fct__m2:
- {
- chain = CHAIN_State2_TRANS_tr1_FROM_State1_TO_State2_BY_m2fct;
- catching_state = STATE_State2;
- }
- break;
- case TRIG_fct__m5:
- {
- chain = CHAIN_State2_TRANS_tr3_FROM_tp3_TO_tp3_BY_m5fct_tr3;
- catching_state = STATE_State2;
- skip_entry = true;
- }
- break;
- case TRIG_fct__m6:
- {
- chain = CHAIN_State2_TRANS_tr4_FROM_tp4_TO_tp4_BY_m6fct_tr4;
- catching_state = STATE_State2;
- is_handler = true;
- skip_entry = true;
- }
- break;
- case TRIG_fct__m4:
- {
- chain = CHAIN_TRANS_tr3_FROM_State2_TO_State4_BY_m4fct;
- catching_state = STATE_TOP;
- }
- break;
- case TRIG_fct__m7:
- {
- chain = CHAIN_TRANS_tr5_FROM_State2_TO_State2_BY_m7fct_tr5;
- catching_state = STATE_TOP;
- }
- break;
- case TRIG_fct__reset:
- {
- chain = CHAIN_TRANS_tr4_FROM_tp0_TO_State1_BY_resetfct;
- catching_state = STATE_TOP;
- }
- break;
- case TRIG_fct__m8:
- {
- chain = CHAIN_TRANS_tr6_FROM_tp1_TO_tp1_BY_m8fct_tr6;
- catching_state = STATE_TOP;
- skip_entry = true;
- }
- break;
- case TRIG_fct__m9:
- {
- chain = CHAIN_TRANS_tr7_FROM_tp2_TO_tp2_BY_m9fct_tr7;
- catching_state = STATE_TOP;
- is_handler = true;
- skip_entry = true;
- }
- break;
- }
- break;
- case STATE_State2_State2:
- switch(trigger) {
- case TRIG_fct__m3:
- {
- chain = CHAIN_State2_TRANS_tr2_FROM_State2_TO_tp1_BY_m3fct;
- catching_state = STATE_State2;
- }
- break;
- case TRIG_fct__m5:
- {
- chain = CHAIN_State2_TRANS_tr3_FROM_tp3_TO_tp3_BY_m5fct_tr3;
- catching_state = STATE_State2;
- skip_entry = true;
- }
- break;
- case TRIG_fct__m6:
- {
- chain = CHAIN_State2_TRANS_tr4_FROM_tp4_TO_tp4_BY_m6fct_tr4;
- catching_state = STATE_State2;
- is_handler = true;
- skip_entry = true;
- }
- break;
- case TRIG_fct__m4:
- {
- chain = CHAIN_TRANS_tr3_FROM_State2_TO_State4_BY_m4fct;
- catching_state = STATE_TOP;
- }
- break;
- case TRIG_fct__m7:
- {
- chain = CHAIN_TRANS_tr5_FROM_State2_TO_State2_BY_m7fct_tr5;
- catching_state = STATE_TOP;
- }
- break;
- case TRIG_fct__reset:
- {
- chain = CHAIN_TRANS_tr4_FROM_tp0_TO_State1_BY_resetfct;
- catching_state = STATE_TOP;
- }
- break;
- case TRIG_fct__m8:
- {
- chain = CHAIN_TRANS_tr6_FROM_tp1_TO_tp1_BY_m8fct_tr6;
- catching_state = STATE_TOP;
- skip_entry = true;
- }
- break;
- case TRIG_fct__m9:
- {
- chain = CHAIN_TRANS_tr7_FROM_tp2_TO_tp2_BY_m9fct_tr7;
- catching_state = STATE_TOP;
- is_handler = true;
- skip_entry = true;
- }
- break;
- }
- break;
- case STATE_State3:
- switch(trigger) {
- case TRIG_fct__reset:
- {
- chain = CHAIN_TRANS_tr4_FROM_tp0_TO_State1_BY_resetfct;
- catching_state = STATE_TOP;
- }
- break;
- case TRIG_fct__m8:
- {
- chain = CHAIN_TRANS_tr6_FROM_tp1_TO_tp1_BY_m8fct_tr6;
- catching_state = STATE_TOP;
- skip_entry = true;
- }
- break;
- case TRIG_fct__m9:
- {
- chain = CHAIN_TRANS_tr7_FROM_tp2_TO_tp2_BY_m9fct_tr7;
- catching_state = STATE_TOP;
- is_handler = true;
- skip_entry = true;
- }
- break;
- }
- break;
- case STATE_State4:
- switch(trigger) {
- case TRIG_fct__reset:
- {
- chain = CHAIN_TRANS_tr4_FROM_tp0_TO_State1_BY_resetfct;
- catching_state = STATE_TOP;
- }
- break;
- case TRIG_fct__m8:
- {
- chain = CHAIN_TRANS_tr6_FROM_tp1_TO_tp1_BY_m8fct_tr6;
- catching_state = STATE_TOP;
- skip_entry = true;
- }
- break;
- case TRIG_fct__m9:
- {
- chain = CHAIN_TRANS_tr7_FROM_tp2_TO_tp2_BY_m9fct_tr7;
- catching_state = STATE_TOP;
- is_handler = true;
- skip_entry = true;
- }
- break;
- }
- break;
- }
- }
- if (chain != NOT_CAUGHT) {
- exitTo(this.state, catching_state, is_handler);
- int next = executeTransitionChain(chain, ifitem, generic_data);
- next = enterHistory(next, is_handler, skip_entry);
- setState(next);
- }
- }
-
- //******************************************
- // END of generated code for FSM
- //******************************************
-};
diff --git a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM_Tester.java b/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM_Tester.java
deleted file mode 100644
index 139c96c66..000000000
--- a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM_Tester.java
+++ /dev/null
@@ -1,378 +0,0 @@
-package org.eclipse.etrice.integration.tests;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.IRTObject;
-import org.eclipse.etrice.runtime.java.messaging.IMessageReceiver;
-import org.eclipse.etrice.runtime.java.modelbase.ActorClassBase;
-import org.eclipse.etrice.runtime.java.modelbase.SubSystemClassBase;
-import org.eclipse.etrice.runtime.java.modelbase.InterfaceItemBase;
-import org.eclipse.etrice.runtime.java.debugging.DebuggingService;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.*;
-
-
-import org.eclipse.etrice.integration.tests.p_HFSM.*;
-
-/*--------------------- begin user code ---------------------*/
-import org.eclipse.etrice.runtime.java.messaging.RTServices;
-/*--------------------- end user code ---------------------*/
-
-
-public class a_HFSM_Tester extends ActorClassBase {
-
-
-
- //--------------------- ports
- protected p_HFSMConjPort testee = null;
-
- //--------------------- saps
-
- //--------------------- services
-
- //--------------------- interface item IDs
- public static final int IFITEM_testee = 1;
-
-
- /*--------------------- attributes ---------------------*/
- /*--------------------- operations ---------------------*/
-
- //--------------------- construction
- public a_HFSM_Tester(IRTObject parent, String name, Address[][] port_addr, Address[][] peer_addr){
- super(parent, name, port_addr[0][0], peer_addr[0][0]);
- setClassName("a_HFSM_Tester");
-
- // initialize attributes
-
- // own ports
- testee = new p_HFSMConjPort(this, "testee", IFITEM_testee, 0, port_addr[IFITEM_testee][0], peer_addr[IFITEM_testee][0]);
-
- // own saps
-
- // own service implementations
- }
-
-
- //--------------------- attribute setters and getters
-
-
- //--------------------- port getters
- public p_HFSMConjPort getTestee (){
- return this.testee;
- }
-
- //--------------------- lifecycle functions
- public void init(){
- initUser();
- }
-
- public void start(){
- startUser();
- }
-
- public void stop(){
- stopUser();
- }
-
- public void destroy(){
- }
-
-
- /* state IDs */
- public static final int STATE_State1 = 2;
- public static final int STATE_State2 = 3;
- public static final int STATE_State3 = 4;
- public static final int STATE_State4 = 5;
- public static final int STATE_State5 = 6;
- public static final int STATE_State6 = 7;
- public static final int STATE_State7 = 8;
- public static final int STATE_TestPass = 9;
-
- /* transition chains */
- public static final int CHAIN_TRANS_INITIAL_TO__State1 = 1;
- public static final int CHAIN_TRANS_tr1_FROM_State1_TO_State2_BY_init_actiontestee = 2;
- public static final int CHAIN_TRANS_tr2_FROM_State2_TO_State3_BY_s1_entrytestee = 3;
- public static final int CHAIN_TRANS_tr3_FROM_State3_TO_State4_BY_s1_exittestee = 4;
- public static final int CHAIN_TRANS_tr4_FROM_State4_TO_State5_BY_s1_m1_s2_actiontestee = 5;
- public static final int CHAIN_TRANS_tr5_FROM_State5_TO_State6_BY_s2_entrytestee = 6;
- public static final int CHAIN_TRANS_tr6_FROM_State6_TO_State7_BY_s2_m1_s2s1_actiontestee = 7;
- public static final int CHAIN_TRANS_tr7_FROM_State7_TO_TestPass_BY_s2s1_entrytestee = 8;
-
- /* triggers */
- public static final int POLLING = 0;
- public static final int TRIG_testee__init_action = IFITEM_testee + EVT_SHIFT*p_HFSM.OUT_init_action;
- public static final int TRIG_testee__s1_entry = IFITEM_testee + EVT_SHIFT*p_HFSM.OUT_s1_entry;
- public static final int TRIG_testee__s1_exit = IFITEM_testee + EVT_SHIFT*p_HFSM.OUT_s1_exit;
- public static final int TRIG_testee__s1_m1_s2_action = IFITEM_testee + EVT_SHIFT*p_HFSM.OUT_s1_m1_s2_action;
- public static final int TRIG_testee__s2_entry = IFITEM_testee + EVT_SHIFT*p_HFSM.OUT_s2_entry;
- public static final int TRIG_testee__s2_m1_s2s1_action = IFITEM_testee + EVT_SHIFT*p_HFSM.OUT_s2_m1_s2s1_action;
- public static final int TRIG_testee__s2s1_entry = IFITEM_testee + EVT_SHIFT*p_HFSM.OUT_s2s1_entry;
-
- // state names
- protected static final String stateStrings[] = {"<no state>","<top>","State1",
- "State2",
- "State3",
- "State4",
- "State5",
- "State6",
- "State7",
- "TestPass"
- };
-
- // history
- protected int history[] = {NO_STATE,NO_STATE,NO_STATE,NO_STATE,NO_STATE,NO_STATE,NO_STATE,NO_STATE,NO_STATE,NO_STATE};
-
- private void setState(int new_state) {
- DebuggingService.getInstance().addActorState(this,stateStrings[new_state]);
- if (stateStrings[new_state]!="Idle") {
- System.out.println(getInstancePath() + " -> " + stateStrings[new_state]);
- }
- this.state = new_state;
- }
-
- /* Entry and Exit Codes */
- protected void entry_TestPass() {
- RTServices.getInstance().getSubSystem().testFinished(0);
- }
-
- /* Action Codes */
- protected void action_TRANS_tr2_FROM_State2_TO_State3_BY_s1_entrytestee(InterfaceItemBase ifitem) {
- testee.m1();
- }
-
- /**
- * calls exit codes while exiting from the current state to one of its
- * parent states while remembering the history
- * @param current - the current state
- * @param to - the final parent state
- * @param handler - entry and exit codes are called only if not handler (for handler TransitionPoints)
- */
- private void exitTo(int current, int to, boolean handler) {
- while (current!=to) {
- switch (current) {
- case STATE_State1:
- this.history[STATE_TOP] = STATE_State1;
- current = STATE_TOP;
- break;
- case STATE_State2:
- this.history[STATE_TOP] = STATE_State2;
- current = STATE_TOP;
- break;
- case STATE_State3:
- this.history[STATE_TOP] = STATE_State3;
- current = STATE_TOP;
- break;
- case STATE_State4:
- this.history[STATE_TOP] = STATE_State4;
- current = STATE_TOP;
- break;
- case STATE_State5:
- this.history[STATE_TOP] = STATE_State5;
- current = STATE_TOP;
- break;
- case STATE_State6:
- this.history[STATE_TOP] = STATE_State6;
- current = STATE_TOP;
- break;
- case STATE_State7:
- this.history[STATE_TOP] = STATE_State7;
- current = STATE_TOP;
- break;
- case STATE_TestPass:
- this.history[STATE_TOP] = STATE_TestPass;
- current = STATE_TOP;
- break;
- }
- }
- }
-
- /**
- * calls action, entry and exit codes along a transition chain. The generic data are cast to typed data
- * matching the trigger of this chain. The ID of the final state is returned
- * @param chain - the chain ID
- * @param generic_data - the generic data pointer
- * @return the ID of the final state
- */
- private int executeTransitionChain(int chain, InterfaceItemBase ifitem, Object generic_data) {
- switch (chain) {
- case CHAIN_TRANS_INITIAL_TO__State1:
- {
- return STATE_State1;
- }
- case CHAIN_TRANS_tr1_FROM_State1_TO_State2_BY_init_actiontestee:
- {
- return STATE_State2;
- }
- case CHAIN_TRANS_tr2_FROM_State2_TO_State3_BY_s1_entrytestee:
- {
- action_TRANS_tr2_FROM_State2_TO_State3_BY_s1_entrytestee(ifitem);
- return STATE_State3;
- }
- case CHAIN_TRANS_tr3_FROM_State3_TO_State4_BY_s1_exittestee:
- {
- return STATE_State4;
- }
- case CHAIN_TRANS_tr4_FROM_State4_TO_State5_BY_s1_m1_s2_actiontestee:
- {
- return STATE_State5;
- }
- case CHAIN_TRANS_tr5_FROM_State5_TO_State6_BY_s2_entrytestee:
- {
- return STATE_State6;
- }
- case CHAIN_TRANS_tr6_FROM_State6_TO_State7_BY_s2_m1_s2s1_actiontestee:
- {
- return STATE_State7;
- }
- case CHAIN_TRANS_tr7_FROM_State7_TO_TestPass_BY_s2s1_entrytestee:
- {
- return STATE_TestPass;
- }
- }
- return NO_STATE;
- }
-
- /**
- * calls entry codes while entering a state's history. The ID of the final leaf state is returned
- * @param state - the state which is entered
- * @param handler - entry code is executed if not handler
- * @return - the ID of the final leaf state
- */
- private int enterHistory(int state, boolean handler, boolean skip_entry) {
- while (true) {
- switch (state) {
- case STATE_State1:
- // in leaf state: return state id
- return STATE_State1;
- case STATE_State2:
- // in leaf state: return state id
- return STATE_State2;
- case STATE_State3:
- // in leaf state: return state id
- return STATE_State3;
- case STATE_State4:
- // in leaf state: return state id
- return STATE_State4;
- case STATE_State5:
- // in leaf state: return state id
- return STATE_State5;
- case STATE_State6:
- // in leaf state: return state id
- return STATE_State6;
- case STATE_State7:
- // in leaf state: return state id
- return STATE_State7;
- case STATE_TestPass:
- if (!(skip_entry || handler)) entry_TestPass();
- // in leaf state: return state id
- return STATE_TestPass;
- case STATE_TOP:
- state = this.history[STATE_TOP];
- break;
- }
- skip_entry = false;
- }
- //return NO_STATE; // required by CDT but detected as unreachable by JDT because of while (true)
- }
-
- public void executeInitTransition() {
- int chain = CHAIN_TRANS_INITIAL_TO__State1;
- int next = executeTransitionChain(chain, null, null);
- next = enterHistory(next, false, false);
- setState(next);
- }
-
- /* receiveEvent contains the main implementation of the FSM */
- public void receiveEvent(InterfaceItemBase ifitem, int evt, Object generic_data) {
- int trigger = ifitem.getLocalId() + EVT_SHIFT*evt;
- int chain = NOT_CAUGHT;
- int catching_state = NO_STATE;
- boolean is_handler = false;
- boolean skip_entry = false;
-
- if (!handleSystemEvent(ifitem, evt, generic_data)) {
- switch (this.state) {
- case STATE_State1:
- switch(trigger) {
- case TRIG_testee__init_action:
- {
- chain = CHAIN_TRANS_tr1_FROM_State1_TO_State2_BY_init_actiontestee;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_State2:
- switch(trigger) {
- case TRIG_testee__s1_entry:
- {
- chain = CHAIN_TRANS_tr2_FROM_State2_TO_State3_BY_s1_entrytestee;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_State3:
- switch(trigger) {
- case TRIG_testee__s1_exit:
- {
- chain = CHAIN_TRANS_tr3_FROM_State3_TO_State4_BY_s1_exittestee;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_State4:
- switch(trigger) {
- case TRIG_testee__s1_m1_s2_action:
- {
- chain = CHAIN_TRANS_tr4_FROM_State4_TO_State5_BY_s1_m1_s2_actiontestee;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_State5:
- switch(trigger) {
- case TRIG_testee__s2_entry:
- {
- chain = CHAIN_TRANS_tr5_FROM_State5_TO_State6_BY_s2_entrytestee;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_State6:
- switch(trigger) {
- case TRIG_testee__s2_m1_s2s1_action:
- {
- chain = CHAIN_TRANS_tr6_FROM_State6_TO_State7_BY_s2_m1_s2s1_actiontestee;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_State7:
- switch(trigger) {
- case TRIG_testee__s2s1_entry:
- {
- chain = CHAIN_TRANS_tr7_FROM_State7_TO_TestPass_BY_s2s1_entrytestee;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_TestPass:
- break;
- }
- }
- if (chain != NOT_CAUGHT) {
- exitTo(this.state, catching_state, is_handler);
- int next = executeTransitionChain(chain, ifitem, generic_data);
- next = enterHistory(next, is_handler, skip_entry);
- setState(next);
- }
- }
-
- //******************************************
- // END of generated code for FSM
- //******************************************
-};
diff --git a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM_Tests.java b/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM_Tests.java
deleted file mode 100644
index f02bdbf86..000000000
--- a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/a_HFSM_Tests.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package org.eclipse.etrice.integration.tests;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.IRTObject;
-import org.eclipse.etrice.runtime.java.messaging.IMessageReceiver;
-import org.eclipse.etrice.runtime.java.modelbase.ActorClassBase;
-import org.eclipse.etrice.runtime.java.modelbase.SubSystemClassBase;
-import org.eclipse.etrice.runtime.java.modelbase.InterfaceItemBase;
-import org.eclipse.etrice.runtime.java.debugging.DebuggingService;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.*;
-
-
-
-
-
-public class a_HFSM_Tests extends ActorClassBase {
-
-
-
- //--------------------- ports
-
- //--------------------- saps
-
- //--------------------- services
-
- //--------------------- interface item IDs
-
-
- /*--------------------- attributes ---------------------*/
- /*--------------------- operations ---------------------*/
-
- //--------------------- construction
- public a_HFSM_Tests(IRTObject parent, String name, Address[][] port_addr, Address[][] peer_addr){
- super(parent, name, port_addr[0][0], peer_addr[0][0]);
- setClassName("a_HFSM_Tests");
-
- // initialize attributes
-
- // own ports
-
- // own saps
-
- // own service implementations
- }
-
-
- //--------------------- attribute setters and getters
-
-
- //--------------------- port getters
-
- //--------------------- lifecycle functions
- public void init(){
- initUser();
- }
-
- public void start(){
- startUser();
- }
-
- public void stop(){
- stopUser();
- }
-
- public void destroy(){
- }
-
- //--------------------- no state machine
- @Override
- public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data) {
- handleSystemEvent(ifitem, evt, data);
- }
-
- @Override
- public void executeInitTransition(){
- }
-};
diff --git a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/p_HFSM.java b/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/p_HFSM.java
deleted file mode 100644
index 0b6c3cc15..000000000
--- a/tests/org.eclipse.etrice.integration.tests/src-gen/org/eclipse/etrice/integration/tests/p_HFSM.java
+++ /dev/null
@@ -1,615 +0,0 @@
-package org.eclipse.etrice.integration.tests;
-
-import java.util.ArrayList;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.Message;
-import org.eclipse.etrice.runtime.java.modelbase.*;
-import org.eclipse.etrice.runtime.java.debugging.DebuggingService;
-
-
-
-public class p_HFSM {
- // message IDs
- public static final int MSG_MIN = 0;
- public static final int OUT_init_action = 1;
- public static final int OUT_s1_entry = 2;
- public static final int OUT_s1_exit = 3;
- public static final int OUT_s2_entry = 4;
- public static final int OUT_s2_exit = 5;
- public static final int OUT_s3_entry = 6;
- public static final int OUT_s3_exit = 7;
- public static final int OUT_s4_entry = 8;
- public static final int OUT_s4_exit = 9;
- public static final int OUT_s2s1_entry = 10;
- public static final int OUT_s2s1_exit = 11;
- public static final int OUT_s2s2_entry = 12;
- public static final int OUT_s2s2_exit = 13;
- public static final int OUT_s1_m1_s2_action = 14;
- public static final int OUT_s2_m1_s2s1_action = 15;
- public static final int OUT_s2s1_m2_s2s2_action = 16;
- public static final int OUT_s2s2_m3_action = 17;
- public static final int OUT_s2_m4_s4_action = 18;
- public static final int OUT_s2_m5_s2_action = 19;
- public static final int OUT_s2_m6_s2_action = 20;
- public static final int OUT_s2__s3_action = 21;
- public static final int OUT_s2_m7_s2_action = 22;
- public static final int OUT_top_s8_top_action = 23;
- public static final int OUT_top_s9_top_action = 24;
- public static final int OUT_top_reset_s2_action = 25;
- public static final int IN_m1 = 26;
- public static final int IN_m2 = 27;
- public static final int IN_m3 = 28;
- public static final int IN_m4 = 29;
- public static final int IN_m5 = 30;
- public static final int IN_m6 = 31;
- public static final int IN_reset = 32;
- public static final int IN_m7 = 33;
- public static final int IN_m8 = 34;
- public static final int IN_m9 = 35;
- public static final int MSG_MAX = 36;
-
-
- private static String messageStrings[] = {"MIN", "init_action","s1_entry","s1_exit","s2_entry","s2_exit","s3_entry","s3_exit","s4_entry","s4_exit","s2s1_entry","s2s1_exit","s2s2_entry","s2s2_exit","s1_m1_s2_action","s2_m1_s2s1_action","s2s1_m2_s2s2_action","s2s2_m3_action","s2_m4_s4_action","s2_m5_s2_action","s2_m6_s2_action","s2__s3_action","s2_m7_s2_action","top_s8_top_action","top_s9_top_action","top_reset_s2_action", "m1","m2","m3","m4","m5","m6","reset","m7","m8","m9","MAX"};
-
- public String getMessageString(int msg_id) {
- if (msg_id<MSG_MIN || msg_id>MSG_MAX+1){
- // id out of range
- return "Message ID out of range";
- }
- else{
- return messageStrings[msg_id];
- }
- }
-
-
- // port class
- static public class p_HFSMPort extends PortBase {
- // constructors
- public p_HFSMPort(IEventReceiver actor, String name, int localId, Address addr, Address peerAddress) {
- this(actor, name, localId, 0, addr, peerAddress);
- DebuggingService.getInstance().addPortInstance(this);
- }
- public p_HFSMPort(IEventReceiver actor, String name, int localId, int idx, Address addr, Address peerAddress) {
- super(actor, name, localId, idx, addr, peerAddress);
- DebuggingService.getInstance().addPortInstance(this);
- }
-
- @Override
- public void receive(Message m) {
- if (!(m instanceof EventMessage))
- return;
- EventMessage msg = (EventMessage) m;
- if (msg.getEvtId() <= 0 || msg.getEvtId() >= MSG_MAX)
- System.out.println("unknown");
- else {
- if (messageStrings[msg.getEvtId()] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncIn(getPeerAddress(), getAddress(), messageStrings[msg.getEvtId()]);
- }
- if (msg instanceof EventWithDataMessage)
- getActor().receiveEvent(this, msg.getEvtId(), ((EventWithDataMessage)msg).getData());
- else
- getActor().receiveEvent(this, msg.getEvtId(), null);
- }
- }
-
-
- // sent messages
- public void init_action() {
- if (messageStrings[ OUT_init_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_init_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_init_action));
- }
- public void s1_entry() {
- if (messageStrings[ OUT_s1_entry] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s1_entry]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s1_entry));
- }
- public void s1_exit() {
- if (messageStrings[ OUT_s1_exit] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s1_exit]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s1_exit));
- }
- public void s2_entry() {
- if (messageStrings[ OUT_s2_entry] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2_entry]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2_entry));
- }
- public void s2_exit() {
- if (messageStrings[ OUT_s2_exit] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2_exit]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2_exit));
- }
- public void s3_entry() {
- if (messageStrings[ OUT_s3_entry] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s3_entry]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s3_entry));
- }
- public void s3_exit() {
- if (messageStrings[ OUT_s3_exit] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s3_exit]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s3_exit));
- }
- public void s4_entry() {
- if (messageStrings[ OUT_s4_entry] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s4_entry]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s4_entry));
- }
- public void s4_exit() {
- if (messageStrings[ OUT_s4_exit] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s4_exit]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s4_exit));
- }
- public void s2s1_entry() {
- if (messageStrings[ OUT_s2s1_entry] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2s1_entry]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2s1_entry));
- }
- public void s2s1_exit() {
- if (messageStrings[ OUT_s2s1_exit] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2s1_exit]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2s1_exit));
- }
- public void s2s2_entry() {
- if (messageStrings[ OUT_s2s2_entry] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2s2_entry]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2s2_entry));
- }
- public void s2s2_exit() {
- if (messageStrings[ OUT_s2s2_exit] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2s2_exit]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2s2_exit));
- }
- public void s1_m1_s2_action() {
- if (messageStrings[ OUT_s1_m1_s2_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s1_m1_s2_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s1_m1_s2_action));
- }
- public void s2_m1_s2s1_action() {
- if (messageStrings[ OUT_s2_m1_s2s1_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2_m1_s2s1_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2_m1_s2s1_action));
- }
- public void s2s1_m2_s2s2_action() {
- if (messageStrings[ OUT_s2s1_m2_s2s2_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2s1_m2_s2s2_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2s1_m2_s2s2_action));
- }
- public void s2s2_m3_action() {
- if (messageStrings[ OUT_s2s2_m3_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2s2_m3_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2s2_m3_action));
- }
- public void s2_m4_s4_action() {
- if (messageStrings[ OUT_s2_m4_s4_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2_m4_s4_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2_m4_s4_action));
- }
- public void s2_m5_s2_action() {
- if (messageStrings[ OUT_s2_m5_s2_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2_m5_s2_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2_m5_s2_action));
- }
- public void s2_m6_s2_action() {
- if (messageStrings[ OUT_s2_m6_s2_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2_m6_s2_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2_m6_s2_action));
- }
- public void s2__s3_action() {
- if (messageStrings[ OUT_s2__s3_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2__s3_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2__s3_action));
- }
- public void s2_m7_s2_action() {
- if (messageStrings[ OUT_s2_m7_s2_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_s2_m7_s2_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_s2_m7_s2_action));
- }
- public void top_s8_top_action() {
- if (messageStrings[ OUT_top_s8_top_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_top_s8_top_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_top_s8_top_action));
- }
- public void top_s9_top_action() {
- if (messageStrings[ OUT_top_s9_top_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_top_s9_top_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_top_s9_top_action));
- }
- public void top_reset_s2_action() {
- if (messageStrings[ OUT_top_reset_s2_action] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[OUT_top_reset_s2_action]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), OUT_top_reset_s2_action));
- }
- }
-
- // replicated port class
- static public class p_HFSMReplPort {
- private ArrayList<p_HFSMPort> ports;
- private int replication;
-
- public p_HFSMReplPort(IEventReceiver actor, String name, int localId, Address[] addr,
- Address[] peerAddress) {
- replication = addr==null? 0:addr.length;
- ports = new ArrayList<p_HFSM.p_HFSMPort>(replication);
- for (int i=0; i<replication; ++i) {
- ports.add(new p_HFSMPort(
- actor, name+i, localId, i, addr[i], peerAddress[i]));
- }
- }
-
- public int getReplication() {
- return replication;
- }
-
- public int getIndexOf(InterfaceItemBase ifitem){
- return ifitem.getIdx();
- }
-
- public p_HFSMPort get(int i) {
- return ports.get(i);
- }
-
- // outgoing messages
- public void init_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).init_action();
- }
- }
- public void s1_entry(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s1_entry();
- }
- }
- public void s1_exit(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s1_exit();
- }
- }
- public void s2_entry(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2_entry();
- }
- }
- public void s2_exit(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2_exit();
- }
- }
- public void s3_entry(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s3_entry();
- }
- }
- public void s3_exit(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s3_exit();
- }
- }
- public void s4_entry(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s4_entry();
- }
- }
- public void s4_exit(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s4_exit();
- }
- }
- public void s2s1_entry(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2s1_entry();
- }
- }
- public void s2s1_exit(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2s1_exit();
- }
- }
- public void s2s2_entry(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2s2_entry();
- }
- }
- public void s2s2_exit(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2s2_exit();
- }
- }
- public void s1_m1_s2_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s1_m1_s2_action();
- }
- }
- public void s2_m1_s2s1_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2_m1_s2s1_action();
- }
- }
- public void s2s1_m2_s2s2_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2s1_m2_s2s2_action();
- }
- }
- public void s2s2_m3_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2s2_m3_action();
- }
- }
- public void s2_m4_s4_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2_m4_s4_action();
- }
- }
- public void s2_m5_s2_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2_m5_s2_action();
- }
- }
- public void s2_m6_s2_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2_m6_s2_action();
- }
- }
- public void s2__s3_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2__s3_action();
- }
- }
- public void s2_m7_s2_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).s2_m7_s2_action();
- }
- }
- public void top_s8_top_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).top_s8_top_action();
- }
- }
- public void top_s9_top_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).top_s9_top_action();
- }
- }
- public void top_reset_s2_action(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).top_reset_s2_action();
- }
- }
- }
-
-
- // port class
- static public class p_HFSMConjPort extends PortBase {
- // constructors
- public p_HFSMConjPort(IEventReceiver actor, String name, int localId, Address addr, Address peerAddress) {
- this(actor, name, localId, 0, addr, peerAddress);
- DebuggingService.getInstance().addPortInstance(this);
- }
- public p_HFSMConjPort(IEventReceiver actor, String name, int localId, int idx, Address addr, Address peerAddress) {
- super(actor, name, localId, idx, addr, peerAddress);
- DebuggingService.getInstance().addPortInstance(this);
- }
-
- @Override
- public void receive(Message m) {
- if (!(m instanceof EventMessage))
- return;
- EventMessage msg = (EventMessage) m;
- if (msg.getEvtId() <= 0 || msg.getEvtId() >= MSG_MAX)
- System.out.println("unknown");
- else {
- if (messageStrings[msg.getEvtId()] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncIn(getPeerAddress(), getAddress(), messageStrings[msg.getEvtId()]);
- }
- if (msg instanceof EventWithDataMessage)
- getActor().receiveEvent(this, msg.getEvtId(), ((EventWithDataMessage)msg).getData());
- else
- getActor().receiveEvent(this, msg.getEvtId(), null);
- }
- }
-
-
- // sent messages
- public void m1() {
- if (messageStrings[ IN_m1] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[IN_m1]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), IN_m1));
- }
- public void m2() {
- if (messageStrings[ IN_m2] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[IN_m2]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), IN_m2));
- }
- public void m3() {
- if (messageStrings[ IN_m3] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[IN_m3]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), IN_m3));
- }
- public void m4() {
- if (messageStrings[ IN_m4] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[IN_m4]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), IN_m4));
- }
- public void m5() {
- if (messageStrings[ IN_m5] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[IN_m5]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), IN_m5));
- }
- public void m6() {
- if (messageStrings[ IN_m6] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[IN_m6]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), IN_m6));
- }
- public void reset() {
- if (messageStrings[ IN_reset] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[IN_reset]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), IN_reset));
- }
- public void m7() {
- if (messageStrings[ IN_m7] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[IN_m7]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), IN_m7));
- }
- public void m8() {
- if (messageStrings[ IN_m8] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[IN_m8]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), IN_m8));
- }
- public void m9() {
- if (messageStrings[ IN_m9] != "timerTick"){
- DebuggingService.getInstance().addMessageAsyncOut(getAddress(), getPeerAddress(), messageStrings[IN_m9]);
- }
- if (getPeerAddress()!=null)
- getPeerMsgReceiver().receive(new EventMessage(getPeerAddress(), IN_m9));
- }
- }
-
- // replicated port class
- static public class p_HFSMConjReplPort {
- private ArrayList<p_HFSMConjPort> ports;
- private int replication;
-
- public p_HFSMConjReplPort(IEventReceiver actor, String name, int localId, Address[] addr,
- Address[] peerAddress) {
- replication = addr==null? 0:addr.length;
- ports = new ArrayList<p_HFSM.p_HFSMConjPort>(replication);
- for (int i=0; i<replication; ++i) {
- ports.add(new p_HFSMConjPort(
- actor, name+i, localId, i, addr[i], peerAddress[i]));
- }
- }
-
- public int getReplication() {
- return replication;
- }
-
- public int getIndexOf(InterfaceItemBase ifitem){
- return ifitem.getIdx();
- }
-
- public p_HFSMConjPort get(int i) {
- return ports.get(i);
- }
-
- // incoming messages
- public void m1(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).m1();
- }
- }
- public void m2(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).m2();
- }
- }
- public void m3(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).m3();
- }
- }
- public void m4(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).m4();
- }
- }
- public void m5(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).m5();
- }
- }
- public void m6(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).m6();
- }
- }
- public void reset(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).reset();
- }
- }
- public void m7(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).m7();
- }
- }
- public void m8(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).m8();
- }
- }
- public void m9(){
- for (int i=0; i<replication; ++i) {
- ports.get(i).m9();
- }
- }
- }
-
-}
diff --git a/tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.java b/tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.java
deleted file mode 100644
index 3eba845d0..000000000
--- a/tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.integration.tests;
-
-
-import static org.junit.Assert.assertEquals;
-
-import org.eclipse.etrice.integration.tests.base.IntegrationTestBase;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-
-public class IntegrationTestFSMGenerator extends IntegrationTestBase {
- private SubSystemHFSMTest main_component = null;
-
- @Before
- public void setUp() throws Exception {
- main_component = new SubSystemHFSMTest("MainComponent");
-
- // hand over the semaphore to the subsystem
- main_component.setTestSemaphore(this.testSem);
- }
-
- @Test (timeout=5000)
- public void testHFSM(){
-
- main_component.init(); // lifecycle init
- main_component.start(); // lifecycle start
-
- waitForTestcase();
-
- assertEquals(0,main_component.getTestErrorCode());
-
- }
-
- @After
- public void tearDown() throws Exception {
- // end the lifecycle
- main_component.stop(); // lifecycle stop
- main_component.destroy(); // lifecycle destroy
- }
-
-
-}

Back to the top