Skip to main content
aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorHenrik Rentz-Reichert2010-12-17 18:39:44 -0500
committerHenrik Rentz-Reichert2010-12-17 18:39:44 -0500
commita18223dad8781158e889261776110780c401525d (patch)
tree8550318ab83de220e8e5be978d3d0501e5651fa0 /tests
downloadorg.eclipse.etrice-a18223dad8781158e889261776110780c401525d.tar.gz
org.eclipse.etrice-a18223dad8781158e889261776110780c401525d.tar.xz
org.eclipse.etrice-a18223dad8781158e889261776110780c401525d.zip
initial contribution (cf. http://dev.eclipse.org/ipzilla/show_bug.cgi?id=4670)
Diffstat (limited to 'tests')
-rw-r--r--tests/org.eclipse.etrice.generator.tests/.gitignore1
-rw-r--r--tests/org.eclipse.etrice.generator.tests/.settings/org.eclipse.jdt.core.prefs8
-rw-r--r--tests/org.eclipse.etrice.generator.tests/META-INF/MANIFEST.MF15
-rw-r--r--tests/org.eclipse.etrice.generator.tests/about.html28
-rw-r--r--tests/org.eclipse.etrice.generator.tests/build.properties6
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/connected_ports.room80
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/connected_ports.t.trp3213
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/hierarchy.room25
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/layers.room136
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/layers.t.room154
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/layers.t.trp4770
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/ports.room23
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/states.room106
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/states.t.room119
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/states.t.trp2685
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/states_inheritance.room249
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/states_inheritance.t.room222
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/states_inheritance.t.trp5243
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/states_triggers.room174
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/states_triggers.t.room145
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/states_triggers.t.trp2981
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.room206
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.t.room177
-rw-r--r--tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.t.trp4606
-rw-r--r--tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/InstanceTestsActivator.java33
-rw-r--r--tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestConnectedPorts.java90
-rw-r--r--tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestHierarchy.java57
-rw-r--r--tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestInstanceModelBuilderBase.java158
-rw-r--r--tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestLayers.java73
-rw-r--r--tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestPorts.java58
-rw-r--r--tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStates.java120
-rw-r--r--tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStatesAndTriggers.java144
-rw-r--r--tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStatesInheritance.java144
-rw-r--r--tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStructureInheritance.java174
-rw-r--r--tests/org.eclipse.etrice.integration.tests/.gitignore1
-rw-r--r--tests/org.eclipse.etrice.integration.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--tests/org.eclipse.etrice.integration.tests/META-INF/MANIFEST.MF21
-rw-r--r--tests/org.eclipse.etrice.integration.tests/about.html28
-rw-r--r--tests/org.eclipse.etrice.integration.tests/build.properties4
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/IntegrationTestFSMGenerator.room319
-rw-r--r--tests/org.eclipse.etrice.integration.tests/model/IntegrationTestFSMGenerator.trp4670
-rw-r--r--tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.java64
-rw-r--r--tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.mwe218
-rw-r--r--tests/org.eclipse.etrice.integration.tests/tmp/log/MainComponent_Async.seq27
-rw-r--r--tests/org.eclipse.etrice.integration.tests/tmp/log/MainComponent_Sync.seq1
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/.gitignore1
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.ocl.modelregistry2
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/about.html28
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/debugging/MSCLoggerTest.java37
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/AddressTest.java28
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/DummyMessageReceiver.java49
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageDispatcherTest.java69
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageSeQueueTest.java129
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageServiceTest.java148
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageTest.java33
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/ActorClassBaseTest.java63
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventMessageTest.java34
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventWithDataMessageTest.java36
-rw-r--r--tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/PortBaseTest.java110
60 files changed, 32367 insertions, 0 deletions
diff --git a/tests/org.eclipse.etrice.generator.tests/.gitignore b/tests/org.eclipse.etrice.generator.tests/.gitignore
new file mode 100644
index 000000000..ba077a403
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/.gitignore
@@ -0,0 +1 @@
+bin
diff --git a/tests/org.eclipse.etrice.generator.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.generator.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..1aa097a85
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+#Mon Oct 04 11:14:17 CEST 2010
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.6
diff --git a/tests/org.eclipse.etrice.generator.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.generator.tests/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..55ee4f0cf
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: eTrice Generator Model Tests
+Bundle-SymbolicName: org.eclipse.etrice.generator.tests
+Bundle-Version: 0.1.0
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-Vendor: eTrice (Incubation)
+Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.1.0",
+ org.eclipse.etrice.generator;bundle-version="0.1.0",
+ org.junit;bundle-version="4.8.1",
+ org.eclipse.osgi;bundle-version="3.6.0",
+ org.eclipse.xtext;bundle-version="1.0.0",
+ org.eclipse.core.runtime;bundle-version="3.6.0"
+Bundle-Activator: org.eclipse.etrice.generator.InstanceTestsActivator
+Bundle-ActivationPolicy: lazy
diff --git a/tests/org.eclipse.etrice.generator.tests/about.html b/tests/org.eclipse.etrice.generator.tests/about.html
new file mode 100644
index 000000000..f47dbddbb
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>June 5, 2006</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/tests/org.eclipse.etrice.generator.tests/build.properties b/tests/org.eclipse.etrice.generator.tests/build.properties
new file mode 100644
index 000000000..4f415d5ce
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/build.properties
@@ -0,0 +1,6 @@
+source.. = src/,\
+ models/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ models/
diff --git a/tests/org.eclipse.etrice.generator.tests/models/connected_ports.room b/tests/org.eclipse.etrice.generator.tests/models/connected_ports.room
new file mode 100644
index 000000000..39a835514
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/connected_ports.room
@@ -0,0 +1,80 @@
+RoomModel connected_ports {
+ ProtocolClass PTest {
+ incoming {
+ Message in1 ()
+ }
+ outgoing {
+ Message out1 ()
+ }
+ }
+
+ SubSystemClass CMain {
+ ActorRef test_a1 : ATestA
+ ActorRef test_a2 : ATestA
+ ActorRef test_a3 : ATestA
+ ActorRef test_b : ATestB
+
+ Binding test_b.plain and test_a1.relay
+ Binding test_a1.ext_end and test_b.repl
+ Binding test_b.repl and test_a2.ext_end
+ Binding test_b.repl and test_a3.ext_end
+ Binding test_b.repl_relay and test_a2.relay
+ Binding test_b.repl_relay and test_a3.relay
+ }
+
+ ActorClass ATestA {
+ Interface {
+ Port relay : PTest
+ Port ext_end : PTest
+ }
+ Structure {
+ external Port ext_end
+ conjugated Port int_end : PTest
+ ActorRef sub : ASub
+ Binding sub.p1 and relay
+ Binding sub.p2 and int_end
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass ATestB {
+ Interface {
+ conjugated Port plain : PTest
+ conjugated Port repl [3] : PTest
+ conjugated Port repl_relay [3] : PTest
+ }
+ Structure {
+ external Port plain
+ external Port repl
+ ActorRef sub1 : ASubB
+ Binding repl_relay and sub1.p
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass ASub {
+ Interface {
+ Port p1 : PTest
+ Port p2 : PTest
+ }
+ Structure {
+ external Port p1
+ external Port p2
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass ASubB {
+ Interface {
+ conjugated Port p [3] : PTest
+ }
+ Structure {
+ external Port p
+ }
+ Behavior {
+ }
+ }
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/connected_ports.t.trp b/tests/org.eclipse.etrice.generator.tests/models/connected_ports.t.trp
new file mode 100644
index 000000000..0989c093b
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/connected_ports.t.trp
@@ -0,0 +1,3213 @@
+114
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_DataClassList
+-bs_DataClassList
+1
+-DataClass
+0
+1286346063
+0
+t
+<20101006083201-2
+-bs_RefCounter
+0
+<20101006083201-3
+-bs_DataClass
+3
+-boolean
+f
+f
+0
+1286346063
+0
+1
+5
+13
+t
+<20101006083201-4
+-bs_RefCounter
+0
+<20101006083201-5
+-bs_DataClass
+3
+-char
+f
+f
+0
+1286346063
+0
+1
+5
+7
+t
+<20101006083201-6
+-bs_RefCounter
+0
+<20101006083201-7
+-bs_DataClass
+3
+-uchar
+f
+f
+0
+1286346063
+0
+1
+5
+14
+t
+<20101006083201-8
+-bs_RefCounter
+0
+<20101006083201-9
+-bs_DataClass
+3
+-int8
+f
+f
+0
+1286346063
+0
+1
+5
+15
+t
+<20101006083201-10
+-bs_RefCounter
+0
+<20101006083201-11
+-bs_DataClass
+3
+-uint8
+f
+f
+0
+1286346063
+0
+1
+5
+18
+t
+<20101006083201-12
+-bs_RefCounter
+0
+<20101006083201-13
+-bs_DataClass
+3
+-int16
+f
+f
+0
+1286346063
+0
+1
+5
+16
+t
+<20101006083201-14
+-bs_RefCounter
+0
+<20101006083201-15
+-bs_DataClass
+3
+-uint16
+f
+f
+0
+1286346063
+0
+1
+5
+19
+t
+<20101006083201-16
+-bs_RefCounter
+0
+<20101006083201-17
+-bs_DataClass
+3
+-int32
+f
+f
+0
+1286346063
+0
+1
+5
+17
+t
+<20101006083201-18
+-bs_RefCounter
+0
+<20101006083201-19
+-bs_DataClass
+3
+-uint32
+f
+f
+0
+1286346063
+0
+1
+5
+20
+t
+<20101006083201-20
+-bs_RefCounter
+0
+<20101006083201-21
+-bs_DataClass
+3
+-float32
+f
+f
+0
+1286346063
+0
+1
+5
+21
+t
+<20101006083201-22
+-bs_RefCounter
+0
+<20101006083201-23
+-bs_DataClass
+3
+-float64
+f
+f
+0
+1286346063
+0
+1
+5
+22
+t
+<20101006083201-24
+-bs_RefCounter
+0
+<20101006083201-25
+-bs_DataClass
+3
+-char*
+f
+f
+0
+1286346063
+0
+1
+5
+12
+-
+t
+<20101006083201-26
+-bs_RefCounter
+0
+<20101006083201-27
+-bs_DataClass
+3
+-void*
+f
+f
+0
+1286346063
+0
+1
+5
+12
+-
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ProtocolClassList
+-bs_ProtocolClassList
+1
+-ProtocolClass
+0
+1286346078
+0
+t
+<20101006083201-29
+-bs_RefCounter
+0
+<20101006083201-30
+-bs_ProtocolClass
+3
+-p_Timer
+t
+f
+0
+1286346063
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286346063
+0
+t
+<20101006083201-32
+-bs_RefCounter
+0
+<20101006083201-33
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286346063
+0
+>20101006083201-16
+>20101006083201-17
+t
+<20101006083201-34
+-bs_RefCounter
+0
+<20101006083201-35
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286346063
+0
+<20101006083201-36
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286346063
+0
+t
+<20101006083201-38
+-bs_RefCounter
+0
+<20101006083201-39
+-bs_MsgType
+3
+-timerTick
+f
+f
+0
+1286346063
+0
+<20101006083201-40
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286346063
+-ProtocolRuleSet
+0
+0
+1286346063
+t
+<20101006083201-43
+-ProtocolRule
+0
+0
+1286346063
+-Message
+0
+0
+1286346063
+0
+-Start
+t
+<20101006083201-45
+-MessageImplication
+0
+0
+1286346063
+-ProtocolRule
+0
+0
+1286346063
+-Message
+0
+0
+1286346063
+0
+-Kill
+f
+t
+<20101006083201-48
+-MessageImplication
+0
+0
+1286346063
+-ProtocolRule
+0
+0
+1286346063
+-Message
+0
+0
+1286346063
+1
+-timerTick
+f
+f
+f
+t
+<20101006083201-51
+-bs_RefCounter
+0
+<20101006083201-52
+-bs_ProtocolClass
+3
+-p_Timeout
+t
+f
+0
+1286346063
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286346063
+0
+t
+<20101006083201-54
+-bs_RefCounter
+0
+<20101006083201-55
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286346063
+0
+>20101006083201-16
+>20101006083201-17
+t
+<20101006083201-56
+-bs_RefCounter
+0
+<20101006083201-57
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286346063
+0
+<20101006083201-58
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286346063
+0
+t
+<20101006083201-60
+-bs_RefCounter
+0
+<20101006083201-61
+-bs_MsgType
+3
+-timeoutTick
+f
+f
+0
+1286346063
+0
+<20101006083201-62
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286346063
+-ProtocolRuleSet
+0
+0
+1286346063
+t
+<20101006083201-65
+-ProtocolRule
+0
+0
+1286346063
+-Message
+0
+0
+1286346063
+0
+-Start
+t
+<20101006083201-67
+-MessageImplication
+0
+0
+1286346063
+-ProtocolRule
+0
+0
+1286346063
+-Message
+0
+0
+1286346063
+0
+-Kill
+f
+t
+<20101006083201-70
+-MessageImplication
+0
+0
+1286346063
+-ProtocolRule
+0
+0
+1286346063
+-Message
+0
+0
+1286346063
+1
+-timeoutTick
+f
+f
+f
+t
+<20101006083201-73
+-bs_RefCounter
+0
+<20101006083201-74
+-bs_ProtocolClass
+3
+-p_DigitalInput
+t
+f
+0
+1286346063
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286346063
+0
+t
+<20101006083201-76
+-bs_RefCounter
+0
+<20101006083201-77
+-bs_MsgType
+3
+-getStatus
+f
+f
+0
+1286346063
+0
+<20101006083201-78
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286346063
+0
+t
+<20101006083201-80
+-bs_RefCounter
+0
+<20101006083201-81
+-bs_MsgType
+3
+-inputChanged
+f
+f
+0
+1286346063
+0
+>20101006083201-12
+>20101006083201-13
+f
+-ProtocolSemantics
+1
+0
+1286346063
+-ProtocolRuleSet
+0
+0
+1286346063
+t
+<20101006083201-84
+-ProtocolRule
+0
+0
+1286346063
+-Message
+0
+0
+1286346063
+0
+-getStatus
+t
+<20101006083201-86
+-MessageImplication
+0
+0
+1286346063
+-ProtocolRule
+0
+0
+1286346063
+-Message
+0
+0
+1286346063
+1
+-inputChanged
+f
+f
+f
+t
+<20101006083201-89
+-bs_RefCounter
+0
+<20101006083201-90
+-bs_ProtocolClass
+3
+-p_DigitalOutput
+t
+f
+0
+1286346063
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286346063
+0
+t
+<20101006083201-92
+-bs_RefCounter
+0
+<20101006083201-93
+-bs_MsgType
+3
+-Set
+f
+f
+0
+1286346063
+0
+>20101006083201-2
+>20101006083201-3
+t
+<20101006083201-94
+-bs_RefCounter
+0
+<20101006083201-95
+-bs_MsgType
+3
+-SetOn
+f
+f
+0
+1286346063
+0
+<20101006083201-96
+-bs_RefCounter
+0
+N
+t
+<20101006083201-97
+-bs_RefCounter
+0
+<20101006083201-98
+-bs_MsgType
+3
+-SetOff
+f
+f
+0
+1286346063
+0
+<20101006083201-99
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286346063
+0
+f
+-ProtocolSemantics
+1
+0
+1286346063
+-ProtocolRuleSet
+0
+0
+1286346063
+f
+t
+<20101006083201-103
+-bs_RefCounter
+0
+<20101006083201-104
+-bs_ProtocolClass
+3
+-PTest
+f
+f
+0
+1286346078
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286346078
+0
+t
+<20101006083201-106
+-bs_RefCounter
+0
+<20101006083201-107
+-bs_MsgType
+3
+-in
+f
+f
+0
+1286346074
+0
+<20101006083201-108
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286346078
+0
+t
+<20101006083201-110
+-bs_RefCounter
+0
+<20101006083201-111
+-bs_MsgType
+3
+-out
+f
+f
+0
+1286346077
+0
+<20101006083201-112
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286346067
+-ProtocolRuleSet
+0
+0
+1286346067
+f
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_SAPClassList
+-bs_SAPClassList
+1
+-SAP
+0
+1286346063
+0
+t
+<20101006083201-116
+-bs_RefCounter
+0
+<20101006083201-117
+-bs_SAPClass
+3
+-Timer
+f
+f
+0
+1286346063
+0
+1
+0
+1
+>20101006083201-29
+>20101006083201-30
+t
+<20101006083201-118
+-bs_RefCounter
+0
+<20101006083201-119
+-bs_SAPClass
+3
+-Timeout
+f
+f
+0
+1286346063
+0
+1
+0
+2
+>20101006083201-51
+>20101006083201-52
+t
+<20101006083201-120
+-bs_RefCounter
+0
+<20101006083201-121
+-bs_SAPClass
+3
+-DigitalInput
+f
+f
+0
+1286346063
+0
+1
+0
+4
+>20101006083201-73
+>20101006083201-74
+t
+<20101006083201-122
+-bs_RefCounter
+0
+<20101006083201-123
+-bs_SAPClass
+3
+-DigitalOutput
+f
+f
+0
+1286346063
+0
+1
+0
+5
+>20101006083201-89
+>20101006083201-90
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_PrtvClassList
+-bs_PrtvClassList
+1
+-PrimitiveClass
+0
+1286346063
+0
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ActorClassList
+-bs_ActorClassList
+1
+-ActorClass
+0
+1286346483
+0
+t
+<20101006083201-126
+-bs_RefCounter
+0
+<20101006083201-127
+-bs_ActorClass
+3
+-ComponentMain
+f
+f
+0
+1286346087
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286346080
+0
+f
+0
+0
+1286346080
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286346080
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286346080
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286346386
+0
+t
+<20101006083201-134
+-bs_RefCounter
+0
+<20101006083201-135
+-bs_ActorRef
+3
+-test_a1
+f
+f
+0
+1286346353
+1
+-bs_ActorCoord
+0
+0.216736
+0.795625
+-bs_SizeFactors
+0
+2.9975
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286346343
+0
+f
+3
+-ATestA
+t
+<20101006083201-139
+-bs_RefCounter
+0
+<20101006083201-140
+-bs_ActorRef
+3
+-test_a2
+f
+f
+0
+1286346366
+1
+-bs_ActorCoord
+0
+0.228264
+0.51275
+-bs_SizeFactors
+0
+2.9975
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286346364
+0
+f
+3
+-ATestA
+t
+<20101006083201-144
+-bs_RefCounter
+0
+<20101006083201-145
+-bs_ActorRef
+3
+-test_a3
+f
+f
+0
+1286346376
+1
+-bs_ActorCoord
+0
+0.233264
+0.23125
+-bs_SizeFactors
+0
+3.01063
+0.99875
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286346375
+0
+f
+3
+-ATestA
+t
+<20101006083201-149
+-bs_RefCounter
+0
+<20101006083201-150
+-bs_ActorRef
+3
+-test_b
+f
+f
+0
+1286346429
+1
+-bs_ActorCoord
+0
+0.782569
+0.5115
+-bs_SizeFactors
+0
+3.01
+3.85312
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286346386
+0
+f
+3
+-ATestB
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286346668
+0
+t
+<20101006083201-155
+-bs_RefCounter
+0
+<20101006083201-156
+-bs_BindingContract
+3
+-BindingContract1
+f
+f
+0
+1286346391
+0
+-bs_BCEndPoint
+1
+>20101006083201-149
+>20101006083201-150
+<20101006083201-158
+-bs_RefCounter
+0
+<20101006083201-159
+-bs_PortRef
+3
+-plain
+f
+f
+0
+1286346516
+0
+0
+t
+1
+-bs_ActorCoord
+0
+0.000416667
+0.872375
+>20101006083201-103
+>20101006083201-104
+<20101006083201-161
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101006083201-134
+>20101006083201-135
+<20101006083201-163
+-bs_RefCounter
+0
+<20101006083201-164
+-bs_PortRef
+3
+-relay
+f
+f
+0
+1286346207
+0
+0
+f
+1
+-bs_ActorCoord
+0
+1
+0.85775
+>20101006083201-103
+>20101006083201-104
+<20101006083201-166
+-bs_RefCounter
+0
+N
+t
+<20101006083201-167
+-bs_RefCounter
+0
+<20101006083201-168
+-bs_BindingContract
+3
+-BindingContract2
+f
+f
+0
+1286346400
+0
+-bs_BCEndPoint
+1
+>20101006083201-134
+>20101006083201-135
+<20101006083201-170
+-bs_RefCounter
+0
+<20101006083201-171
+-bs_PortRef
+3
+-ext_end
+f
+f
+0
+1286346219
+0
+0
+f
+1
+-bs_ActorCoord
+0
+1
+0.284375
+>20101006083201-103
+>20101006083201-104
+<20101006083201-173
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101006083201-149
+>20101006083201-150
+<20101006083201-175
+-bs_RefCounter
+0
+<20101006083201-176
+-bs_PortRef
+3
+-repl
+f
+f
+0
+1286346513
+0
+0
+t
+3
+-bs_ActorCoord
+0
+0.000416667
+0.16175
+>20101006083201-103
+>20101006083201-104
+<20101006083201-178
+-bs_RefCounter
+0
+N
+t
+<20101006083201-179
+-bs_RefCounter
+0
+<20101006083201-180
+-bs_BindingContract
+3
+-BindingContract3
+f
+f
+0
+1286346406
+0
+-bs_BCEndPoint
+1
+>20101006083201-149
+>20101006083201-150
+>20101006083201-175
+>20101006083201-176
+<20101006083201-182
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101006083201-139
+>20101006083201-140
+>20101006083201-170
+>20101006083201-171
+<20101006083201-184
+-bs_RefCounter
+0
+N
+t
+<20101006083201-185
+-bs_RefCounter
+0
+<20101006083201-186
+-bs_BindingContract
+3
+-BindingContract4
+f
+f
+0
+1286346409
+0
+-bs_BCEndPoint
+1
+>20101006083201-149
+>20101006083201-150
+>20101006083201-175
+>20101006083201-176
+<20101006083201-188
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101006083201-144
+>20101006083201-145
+>20101006083201-170
+>20101006083201-171
+<20101006083201-190
+-bs_RefCounter
+0
+N
+t
+<20101006083201-191
+-bs_RefCounter
+0
+<20101006083201-192
+-bs_BindingContract
+3
+-BindingContract5
+f
+f
+0
+1286346666
+0
+-bs_BCEndPoint
+1
+>20101006083201-149
+>20101006083201-150
+<20101006083201-194
+-bs_RefCounter
+0
+<20101006083201-195
+-bs_PortRef
+3
+-repl_relay
+f
+f
+0
+1286346543
+0
+0
+t
+3
+-bs_ActorCoord
+0
+0
+0.53325
+>20101006083201-103
+>20101006083201-104
+<20101006083201-197
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101006083201-139
+>20101006083201-140
+>20101006083201-163
+>20101006083201-164
+<20101006083201-199
+-bs_RefCounter
+0
+N
+t
+<20101006083201-200
+-bs_RefCounter
+0
+<20101006083201-201
+-bs_BindingContract
+3
+-BindingContract6
+f
+f
+0
+1286346668
+0
+-bs_BCEndPoint
+1
+>20101006083201-149
+>20101006083201-150
+>20101006083201-194
+>20101006083201-195
+<20101006083201-203
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101006083201-144
+>20101006083201-145
+>20101006083201-163
+>20101006083201-164
+<20101006083201-205
+-bs_RefCounter
+0
+N
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286346080
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286346080
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286346080
+0
+f
+0
+1286346080
+-bs_ActorBehaviour
+7
+<20101006083201-211
+-bs_RefCounter
+0
+<20101006083201-212
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286346080
+5
+f
+-bs_StateGraph
+8
+<20101006083201-215
+-bs_RefCounter
+0
+<20101006083201-216
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286346080
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286346080
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286346080
+0
+f
+-bs_StateList
+1
+-State
+0
+1286346080
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286346080
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286346080
+0
+f
+t
+65535
+f
+f
+0
+1286346080
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286346080
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286346080
+0
+1286346080
+-bs_ActorMemberFct
+1
+f
+0
+1286346080
+t
+f
+f
+t
+<20101006083201-226
+-bs_RefCounter
+0
+<20101006083201-227
+-bs_ActorClass
+3
+-ATestA
+f
+f
+0
+1286346094
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286346219
+0
+t
+>20101006083201-163
+>20101006083201-164
+t
+>20101006083201-170
+>20101006083201-171
+f
+0
+0
+1286346090
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286346272
+0
+t
+>20101006083201-170
+>20101006083201-171
+t
+<20101006083201-232
+-bs_RefCounter
+0
+<20101006083201-233
+-bs_PortRef
+3
+-int_end
+f
+f
+0
+1286346272
+0
+0
+t
+1
+-bs_ActorCoord
+0
+0.694653
+0.44275
+>20101006083201-103
+>20101006083201-104
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286346090
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286346247
+0
+t
+<20101006083201-237
+-bs_RefCounter
+0
+<20101006083201-238
+-bs_ActorRef
+3
+-sub
+f
+f
+0
+1286346253
+1
+-bs_ActorCoord
+0
+0.328472
+0.541375
+-bs_SizeFactors
+0
+3.01
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286346233
+0
+f
+3
+-ASub
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286346275
+0
+t
+<20101006083201-243
+-bs_RefCounter
+0
+<20101006083201-244
+-bs_BindingContract
+3
+-BindingContract1
+f
+f
+0
+1286346258
+0
+-bs_BCEndPoint
+1
+>20101006083201-237
+>20101006083201-238
+<20101006083201-246
+-bs_RefCounter
+0
+<20101006083201-247
+-bs_PortRef
+3
+-p1
+f
+f
+0
+1286346185
+0
+0
+f
+1
+-bs_ActorCoord
+0
+1.00021
+0.7255
+>20101006083201-103
+>20101006083201-104
+<20101006083201-249
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+<20101006083201-251
+-bs_RefCounter
+0
+N
+>20101006083201-163
+>20101006083201-164
+<20101006083201-252
+-bs_RefCounter
+0
+N
+t
+<20101006083201-253
+-bs_RefCounter
+0
+<20101006083201-254
+-bs_BindingContract
+3
+-BindingContract2
+f
+f
+0
+1286346275
+0
+-bs_BCEndPoint
+1
+>20101006083201-237
+>20101006083201-238
+<20101006083201-256
+-bs_RefCounter
+0
+<20101006083201-257
+-bs_PortRef
+3
+-p2
+f
+f
+0
+1286346184
+0
+0
+f
+1
+-bs_ActorCoord
+0
+1.00021
+0.22225
+>20101006083201-103
+>20101006083201-104
+<20101006083201-259
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+<20101006083201-261
+-bs_RefCounter
+0
+N
+>20101006083201-232
+>20101006083201-233
+<20101006083201-262
+-bs_RefCounter
+0
+N
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286346090
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286346090
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286346090
+0
+f
+0
+1286346090
+-bs_ActorBehaviour
+7
+<20101006083201-268
+-bs_RefCounter
+0
+<20101006083201-269
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286346090
+5
+f
+-bs_StateGraph
+8
+<20101006083201-272
+-bs_RefCounter
+0
+<20101006083201-273
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286346090
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286346090
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286346090
+0
+f
+-bs_StateList
+1
+-State
+0
+1286346090
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286346090
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286346090
+0
+f
+t
+65535
+f
+f
+0
+1286346090
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286346090
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286346090
+0
+1286346090
+-bs_ActorMemberFct
+1
+f
+0
+1286346090
+t
+f
+f
+t
+<20101006083201-283
+-bs_RefCounter
+0
+<20101006083201-284
+-bs_ActorClass
+3
+-ATestB
+f
+f
+0
+1286346104
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286346535
+0
+t
+>20101006083201-158
+>20101006083201-159
+t
+>20101006083201-175
+>20101006083201-176
+t
+>20101006083201-194
+>20101006083201-195
+f
+0
+0
+1286346097
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286346638
+0
+t
+>20101006083201-158
+>20101006083201-159
+t
+>20101006083201-175
+>20101006083201-176
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286346097
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286346551
+0
+t
+<20101006083201-291
+-bs_RefCounter
+0
+<20101006083201-292
+-bs_ActorRef
+3
+-sub1
+f
+f
+0
+1286346636
+1
+-bs_ActorCoord
+0
+0.680208
+0.5765
+-bs_SizeFactors
+0
+3.00188
+1
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286346551
+0
+f
+3
+-ASubB
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286346638
+0
+t
+<20101006083201-297
+-bs_RefCounter
+0
+<20101006083201-298
+-bs_BindingContract
+3
+-BindingContract1
+f
+f
+0
+1286346638
+0
+-bs_BCEndPoint
+1
+<20101006083201-300
+-bs_RefCounter
+0
+N
+>20101006083201-194
+>20101006083201-195
+<20101006083201-301
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101006083201-291
+>20101006083201-292
+<20101006083201-303
+-bs_RefCounter
+0
+<20101006083201-304
+-bs_PortRef
+3
+-p
+f
+f
+0
+1286346633
+0
+0
+t
+3
+-bs_ActorCoord
+0
+0
+0.59
+>20101006083201-103
+>20101006083201-104
+<20101006083201-306
+-bs_RefCounter
+0
+N
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286346097
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286346097
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286346097
+0
+f
+0
+1286346097
+-bs_ActorBehaviour
+7
+<20101006083201-312
+-bs_RefCounter
+0
+<20101006083201-313
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286346097
+5
+f
+-bs_StateGraph
+8
+<20101006083201-316
+-bs_RefCounter
+0
+<20101006083201-317
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286346097
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286346097
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286346097
+0
+f
+-bs_StateList
+1
+-State
+0
+1286346097
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286346097
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286346097
+0
+f
+t
+65535
+f
+f
+0
+1286346097
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286346097
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286346097
+0
+1286346097
+-bs_ActorMemberFct
+1
+f
+0
+1286346097
+t
+f
+f
+t
+<20101006083201-327
+-bs_RefCounter
+0
+<20101006083201-328
+-bs_ActorClass
+3
+-ASub
+f
+f
+0
+1286346116
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286346181
+0
+t
+>20101006083201-246
+>20101006083201-247
+t
+>20101006083201-256
+>20101006083201-257
+f
+0
+0
+1286346112
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286346181
+0
+t
+>20101006083201-246
+>20101006083201-247
+t
+>20101006083201-256
+>20101006083201-257
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286346112
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286346112
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286346112
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286346112
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286346112
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286346112
+0
+f
+0
+1286346112
+-bs_ActorBehaviour
+7
+<20101006083201-341
+-bs_RefCounter
+0
+<20101006083201-342
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286346112
+5
+f
+-bs_StateGraph
+8
+<20101006083201-345
+-bs_RefCounter
+0
+<20101006083201-346
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286346112
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286346112
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286346112
+0
+f
+-bs_StateList
+1
+-State
+0
+1286346112
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286346112
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286346112
+0
+f
+t
+65535
+f
+f
+0
+1286346112
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286346112
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286346112
+0
+1286346112
+-bs_ActorMemberFct
+1
+f
+0
+1286346112
+t
+f
+f
+t
+<20101006083201-356
+-bs_RefCounter
+0
+<20101006083201-357
+-bs_ActorClass
+3
+-ASubB
+f
+f
+0
+1286346489
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286346506
+0
+t
+>20101006083201-303
+>20101006083201-304
+f
+0
+0
+1286346483
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286346506
+0
+t
+>20101006083201-303
+>20101006083201-304
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286346483
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286346483
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286346483
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286346483
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286346483
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286346483
+0
+f
+0
+1286346483
+-bs_ActorBehaviour
+7
+<20101006083201-370
+-bs_RefCounter
+0
+<20101006083201-371
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286346483
+5
+f
+-bs_StateGraph
+8
+<20101006083201-374
+-bs_RefCounter
+0
+<20101006083201-375
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286346483
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286346483
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286346483
+0
+f
+-bs_StateList
+1
+-State
+0
+1286346483
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286346483
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286346483
+0
+f
+t
+65535
+f
+f
+0
+1286346483
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286346483
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286346483
+0
+1286346483
+-bs_ActorMemberFct
+1
+f
+0
+1286346483
+t
+f
+f
+f
+-------------------------------
+
+
+ROOM_CONFIGURATION_DATA
+
+106
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ConfigurationList
+-bs_ConfigurationList
+1
+-Configuration
+0
+1286346063
+0
+t
+<20101006083201-386
+-bs_RefCounter
+0
+<20101006083201-387
+-bs_Configuration
+3
+-StdConfig
+f
+f
+0
+1286346063
+6
+>20101006083201-126
+>20101006083201-127
+-bs_TargetList
+1
+-Target
+0
+1286346063
+0
+t
+<20101006083201-390
+-bs_RefCounter
+0
+<20101006083201-391
+-bs_Target
+3
+-PC
+f
+f
+0
+1286346063
+5
+-pc_id
+0
+0
+2
+2
+-bs_FileList
+1
+-FileListDummyName
+0
+1286346063
+0
+f
+f
+-bs_ContextCoord
+0
+0.5
+0.5
+-bs_SizeFactors
+0
+1
+1
+f
+-bs_NoteList
+1
+-Note
+0
+1286346063
+0
+f
+-bs_PrtvDescriptorList
+1
+-PrtvInstance
+0
+1286346063
+0
+f
+-bs_ActorInstanceList
+1
+-ActorInstance
+0
+1286346063
+0
+t
+<20101006123548-207
+-bs_RefCounter
+0
+<20101006123548-208
+-bs_ActorInstance
+3
+-ComponentMain
+f
+f
+0
+1286361341
+5
+8
+<20101006123548-209
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174829-207
+-bs_DataMemberList
+1
+-var
+0
+1292431706
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361341
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361341
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361341
+0
+f
+t
+1024
+t
+<20101006123548-213
+-bs_RefCounter
+0
+<20101006123548-214
+-bs_ActorInstance
+3
+-ComponentMain/test_a1
+f
+f
+0
+1286361341
+5
+8
+<20101006123548-215
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174829-211
+-bs_DataMemberList
+1
+-var
+0
+1292431706
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361341
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361341
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361341
+0
+f
+t
+1024
+t
+<20101006123548-219
+-bs_RefCounter
+0
+<20101006123548-220
+-bs_ActorInstance
+3
+-ComponentMain/test_a1/sub
+f
+f
+0
+1286361341
+5
+8
+<20101006123548-221
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174829-215
+-bs_DataMemberList
+1
+-var
+0
+1292431706
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361341
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361341
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361341
+0
+f
+t
+1024
+t
+<20101006123548-225
+-bs_RefCounter
+0
+<20101006123548-226
+-bs_ActorInstance
+3
+-ComponentMain/test_a2
+f
+f
+0
+1286361341
+5
+8
+<20101006123548-227
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174829-219
+-bs_DataMemberList
+1
+-var
+0
+1292431706
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361341
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361341
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361341
+0
+f
+t
+1024
+t
+<20101006123548-231
+-bs_RefCounter
+0
+<20101006123548-232
+-bs_ActorInstance
+3
+-ComponentMain/test_a2/sub
+f
+f
+0
+1286361341
+5
+8
+<20101006123548-233
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174829-223
+-bs_DataMemberList
+1
+-var
+0
+1292431706
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361341
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361341
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361341
+0
+f
+t
+1024
+t
+<20101006123548-237
+-bs_RefCounter
+0
+<20101006123548-238
+-bs_ActorInstance
+3
+-ComponentMain/test_a3
+f
+f
+0
+1286361341
+5
+8
+<20101006123548-239
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174829-227
+-bs_DataMemberList
+1
+-var
+0
+1292431706
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361341
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361341
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361341
+0
+f
+t
+1024
+t
+<20101006123548-243
+-bs_RefCounter
+0
+<20101006123548-244
+-bs_ActorInstance
+3
+-ComponentMain/test_a3/sub
+f
+f
+0
+1286361341
+5
+8
+<20101006123548-245
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174829-231
+-bs_DataMemberList
+1
+-var
+0
+1292431706
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361341
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361341
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361341
+0
+f
+t
+1024
+t
+<20101006123548-249
+-bs_RefCounter
+0
+<20101006123548-250
+-bs_ActorInstance
+3
+-ComponentMain/test_b
+f
+f
+0
+1286361341
+5
+8
+<20101006123548-251
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174829-235
+-bs_DataMemberList
+1
+-var
+0
+1292431706
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361341
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361341
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361341
+0
+f
+t
+1024
+t
+<20101006123548-255
+-bs_RefCounter
+0
+<20101006123548-256
+-bs_ActorInstance
+3
+-ComponentMain/test_b/sub1
+f
+f
+0
+1286361341
+5
+8
+<20101006123548-257
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174829-239
+-bs_DataMemberList
+1
+-var
+0
+1292431706
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361341
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361341
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361341
+0
+f
+t
+1024
+f
+>20101006083201-390
+>20101006083201-391
+0
+-bs_PropertySet
+0
+f
+-bs_ViewMementoList
+1
+-ViewMemento
+0
+1292431709
+0
+t
+<20101215174829-245
+-bs_RefCounter
+0
+<20101215174829-246
+-bs_ViewMemento
+3
+-
+f
+f
+0
+1292431709
+1
+0
+1
+25
+25
+906
+543
+>20101006083201-126
+>20101006083201-127
+-ComponentMain
+f
+f
+>20101006083201-386
+>20101006083201-387
+-842150451
+-bs_DataObjHist
+0
+0
diff --git a/tests/org.eclipse.etrice.generator.tests/models/hierarchy.room b/tests/org.eclipse.etrice.generator.tests/models/hierarchy.room
new file mode 100644
index 000000000..0d4bb03c2
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/hierarchy.room
@@ -0,0 +1,25 @@
+RoomModel hierarchy {
+
+ SubSystemClass CMain {
+ ActorRef l1a : ALevel1
+ ActorRef l1b : ALevel1
+ }
+
+ ActorClass ALevel1 {
+ Structure {
+ ActorRef l2a : ALevel2
+ ActorRef l2b : ALevel2
+ }
+ }
+
+ ActorClass ALevel2 {
+ Structure {
+ ActorRef l3a : ALevel3
+ ActorRef l3b : ALevel3
+ ActorRef l3c : ALevel3
+ }
+ }
+
+ ActorClass ALevel3 {
+ }
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/layers.room b/tests/org.eclipse.etrice.generator.tests/models/layers.room
new file mode 100644
index 000000000..900edc528
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/layers.room
@@ -0,0 +1,136 @@
+RoomModel layers {
+
+ ProtocolClass PServiceA {
+ incoming {
+ Message in1 ()
+ }
+ outgoing {
+ Message out1 ()
+ }
+ }
+
+ ProtocolClass PServiceB {
+ incoming {
+ Message in2 ()
+ }
+ outgoing {
+ Message out2 ()
+ }
+ }
+
+ ProtocolClass PServiceC {
+ incoming {
+ Message in3 ()
+ }
+ outgoing {
+ Message out3 ()
+ }
+ }
+
+ SubSystemClass CMain {
+ ActorRef app : AApplication
+ ActorRef services : AServices
+
+ LayerConnection ref app satisfied_by services.serviceA
+ LayerConnection ref app satisfied_by services.serviceB
+ }
+
+ ActorClass AApplication {
+ Structure {
+ ActorRef subsysA : ASubSysA
+ ActorRef subsysB : ASubSysB
+ }
+ }
+
+ ActorClass ASubSysA {
+ Structure {
+ ActorRef userX : AServiceUser1
+ ActorRef userY : AServiceUser2
+ ActorRef userZ : AServiceUser2
+ }
+ }
+
+ ActorClass ASubSysB {
+ Interface {
+ SPP service : PServiceC
+ }
+ Structure {
+ ActorRef userX : AServiceUser1
+ ActorRef userY : AServiceUser1
+ ActorRef userZ : AServiceUser3
+ ActorRef svcC : AServiceC
+
+ LayerConnection relay_sap service satisfied_by svcC.service
+ }
+ }
+
+ ActorClass AServiceUser1 {
+ Structure {
+ SAP sap : PServiceA
+ }
+ }
+
+ ActorClass AServiceUser2 {
+ Structure {
+ SAP sap : PServiceB
+ }
+ }
+
+ ActorClass AServiceUser3 {
+ Structure {
+ SAP sap : PServiceC
+ }
+ }
+
+ ActorClass AServices {
+ Interface {
+ SPP serviceA : PServiceA
+ SPP serviceB : PServiceB
+ }
+ Structure {
+ ActorRef svcA : AServiceA
+ ActorRef svcB : AServiceB
+
+ LayerConnection relay_sap serviceA satisfied_by svcA.service
+ LayerConnection relay_sap serviceB satisfied_by svcB.service
+ }
+ }
+
+ ActorClass AServiceA {
+ Interface {
+ SPP service : PServiceA
+ }
+ Structure {
+ ServiceImplementation of service
+ }
+ }
+
+ ActorClass AServiceB {
+ Interface {
+ SPP service : PServiceB
+ }
+ Structure {
+ ActorRef impl : AServiceBImpl
+ LayerConnection relay_sap service satisfied_by impl.service
+ }
+ }
+
+ ActorClass AServiceBImpl {
+ Interface {
+ SPP service : PServiceB
+ }
+ Structure {
+ ServiceImplementation of service
+ }
+ }
+
+ ActorClass AServiceC {
+ Interface {
+ SPP service : PServiceC
+ }
+ Structure {
+ ServiceImplementation of service
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/layers.t.room b/tests/org.eclipse.etrice.generator.tests/models/layers.t.room
new file mode 100644
index 000000000..c258ce38e
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/layers.t.room
@@ -0,0 +1,154 @@
+RoomModel layers.t {
+
+ import room.basic.service.timing.*
+
+ ProtocolClass PServiceA {
+ incoming {
+ Message in1 ()
+ }
+ outgoing {
+ Message out1 ()
+ }
+ }
+
+ ProtocolClass PServiceB {
+ incoming {
+ Message in2 ()
+ }
+ outgoing {
+ Message out2 ()
+ }
+ }
+
+ ProtocolClass PServiceC {
+ incoming {
+ Message in3 ()
+ }
+ outgoing {
+ Message out3 ()
+ }
+ }
+
+ ActorClass ComponentMain {
+ Interface {
+ }
+ Structure {
+ ActorRef app : AApplication
+ ActorRef services : AServices
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AApplication {
+ Interface {
+ }
+ Structure {
+ ActorRef subsysA : ASubSysA
+ ActorRef subsysB : ASubSysB
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass ASubSysA {
+ Interface {
+ }
+ Structure {
+ ActorRef userX : AServiceUser1
+ ActorRef userY : AServiceUser2
+ ActorRef userZ : AServiceUser2
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass ASubSysB {
+ Interface {
+ }
+ Structure {
+ ActorRef userX : AServiceUser1
+ ActorRef userY : AServiceUser1
+ ActorRef userZ : AServiceUser3
+ ActorRef svcC : AServiceC
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AServices {
+ Interface {
+ }
+ Structure {
+ ActorRef svcA : AServiceA
+ ActorRef svcB : AServiceB
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AServiceUser1 {
+ Interface {
+ }
+ Structure {
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AServiceUser2 {
+ Interface {
+ }
+ Structure {
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AServiceA {
+ Interface {
+ }
+ Structure {
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AServiceB {
+ Interface {
+ }
+ Structure {
+ ActorRef impl : AServiceBImpl
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AServiceBImpl {
+ Interface {
+ }
+ Structure {
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AServiceUser3 {
+ Interface {
+ }
+ Structure {
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AServiceC {
+ Interface {
+ }
+ Structure {
+ }
+ Behavior {
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/layers.t.trp b/tests/org.eclipse.etrice.generator.tests/models/layers.t.trp
new file mode 100644
index 000000000..a9b4a1d9e
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/layers.t.trp
@@ -0,0 +1,4770 @@
+114
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_DataClassList
+-bs_DataClassList
+1
+-DataClass
+0
+1286361430
+0
+t
+<20101006124110-2
+-bs_RefCounter
+0
+<20101006124110-3
+-bs_DataClass
+3
+-boolean
+f
+f
+0
+1286361430
+0
+1
+5
+13
+t
+<20101006124110-4
+-bs_RefCounter
+0
+<20101006124110-5
+-bs_DataClass
+3
+-char
+f
+f
+0
+1286361430
+0
+1
+5
+7
+t
+<20101006124110-6
+-bs_RefCounter
+0
+<20101006124110-7
+-bs_DataClass
+3
+-uchar
+f
+f
+0
+1286361430
+0
+1
+5
+14
+t
+<20101006124110-8
+-bs_RefCounter
+0
+<20101006124110-9
+-bs_DataClass
+3
+-int8
+f
+f
+0
+1286361430
+0
+1
+5
+15
+t
+<20101006124110-10
+-bs_RefCounter
+0
+<20101006124110-11
+-bs_DataClass
+3
+-uint8
+f
+f
+0
+1286361430
+0
+1
+5
+18
+t
+<20101006124110-12
+-bs_RefCounter
+0
+<20101006124110-13
+-bs_DataClass
+3
+-int16
+f
+f
+0
+1286361430
+0
+1
+5
+16
+t
+<20101006124110-14
+-bs_RefCounter
+0
+<20101006124110-15
+-bs_DataClass
+3
+-uint16
+f
+f
+0
+1286361430
+0
+1
+5
+19
+t
+<20101006124110-16
+-bs_RefCounter
+0
+<20101006124110-17
+-bs_DataClass
+3
+-int32
+f
+f
+0
+1286361430
+0
+1
+5
+17
+t
+<20101006124110-18
+-bs_RefCounter
+0
+<20101006124110-19
+-bs_DataClass
+3
+-uint32
+f
+f
+0
+1286361430
+0
+1
+5
+20
+t
+<20101006124110-20
+-bs_RefCounter
+0
+<20101006124110-21
+-bs_DataClass
+3
+-float32
+f
+f
+0
+1286361430
+0
+1
+5
+21
+t
+<20101006124110-22
+-bs_RefCounter
+0
+<20101006124110-23
+-bs_DataClass
+3
+-float64
+f
+f
+0
+1286361430
+0
+1
+5
+22
+t
+<20101006124110-24
+-bs_RefCounter
+0
+<20101006124110-25
+-bs_DataClass
+3
+-char*
+f
+f
+0
+1286361430
+0
+1
+5
+12
+-
+t
+<20101006124110-26
+-bs_RefCounter
+0
+<20101006124110-27
+-bs_DataClass
+3
+-void*
+f
+f
+0
+1286361430
+0
+1
+5
+12
+-
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ProtocolClassList
+-bs_ProtocolClassList
+1
+-ProtocolClass
+0
+1286362023
+0
+t
+<20101006124110-29
+-bs_RefCounter
+0
+<20101006124110-30
+-bs_ProtocolClass
+3
+-p_Timer
+t
+f
+0
+1286361430
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361430
+0
+t
+<20101006124110-32
+-bs_RefCounter
+0
+<20101006124110-33
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286361430
+0
+>20101006124110-16
+>20101006124110-17
+t
+<20101006124110-34
+-bs_RefCounter
+0
+<20101006124110-35
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286361430
+0
+<20101006124110-36
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361430
+0
+t
+<20101006124110-38
+-bs_RefCounter
+0
+<20101006124110-39
+-bs_MsgType
+3
+-timerTick
+f
+f
+0
+1286361430
+0
+<20101006124110-40
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286361430
+-ProtocolRuleSet
+0
+0
+1286361430
+t
+<20101006124110-43
+-ProtocolRule
+0
+0
+1286361430
+-Message
+0
+0
+1286361430
+0
+-Start
+t
+<20101006124110-45
+-MessageImplication
+0
+0
+1286361430
+-ProtocolRule
+0
+0
+1286361430
+-Message
+0
+0
+1286361430
+0
+-Kill
+f
+t
+<20101006124110-48
+-MessageImplication
+0
+0
+1286361430
+-ProtocolRule
+0
+0
+1286361430
+-Message
+0
+0
+1286361430
+1
+-timerTick
+f
+f
+f
+t
+<20101006124110-51
+-bs_RefCounter
+0
+<20101006124110-52
+-bs_ProtocolClass
+3
+-p_Timeout
+t
+f
+0
+1286361430
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361430
+0
+t
+<20101006124110-54
+-bs_RefCounter
+0
+<20101006124110-55
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286361430
+0
+>20101006124110-16
+>20101006124110-17
+t
+<20101006124110-56
+-bs_RefCounter
+0
+<20101006124110-57
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286361430
+0
+<20101006124110-58
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361430
+0
+t
+<20101006124110-60
+-bs_RefCounter
+0
+<20101006124110-61
+-bs_MsgType
+3
+-timeoutTick
+f
+f
+0
+1286361430
+0
+<20101006124110-62
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286361430
+-ProtocolRuleSet
+0
+0
+1286361430
+t
+<20101006124110-65
+-ProtocolRule
+0
+0
+1286361430
+-Message
+0
+0
+1286361430
+0
+-Start
+t
+<20101006124110-67
+-MessageImplication
+0
+0
+1286361430
+-ProtocolRule
+0
+0
+1286361430
+-Message
+0
+0
+1286361430
+0
+-Kill
+f
+t
+<20101006124110-70
+-MessageImplication
+0
+0
+1286361430
+-ProtocolRule
+0
+0
+1286361430
+-Message
+0
+0
+1286361430
+1
+-timeoutTick
+f
+f
+f
+t
+<20101006124110-73
+-bs_RefCounter
+0
+<20101006124110-74
+-bs_ProtocolClass
+3
+-p_DigitalInput
+t
+f
+0
+1286361430
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361430
+0
+t
+<20101006124110-76
+-bs_RefCounter
+0
+<20101006124110-77
+-bs_MsgType
+3
+-getStatus
+f
+f
+0
+1286361430
+0
+<20101006124110-78
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361430
+0
+t
+<20101006124110-80
+-bs_RefCounter
+0
+<20101006124110-81
+-bs_MsgType
+3
+-inputChanged
+f
+f
+0
+1286361430
+0
+>20101006124110-12
+>20101006124110-13
+f
+-ProtocolSemantics
+1
+0
+1286361430
+-ProtocolRuleSet
+0
+0
+1286361430
+t
+<20101006124110-84
+-ProtocolRule
+0
+0
+1286361430
+-Message
+0
+0
+1286361430
+0
+-getStatus
+t
+<20101006124110-86
+-MessageImplication
+0
+0
+1286361430
+-ProtocolRule
+0
+0
+1286361430
+-Message
+0
+0
+1286361430
+1
+-inputChanged
+f
+f
+f
+t
+<20101006124110-89
+-bs_RefCounter
+0
+<20101006124110-90
+-bs_ProtocolClass
+3
+-p_DigitalOutput
+t
+f
+0
+1286361430
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361430
+0
+t
+<20101006124110-92
+-bs_RefCounter
+0
+<20101006124110-93
+-bs_MsgType
+3
+-Set
+f
+f
+0
+1286361430
+0
+>20101006124110-2
+>20101006124110-3
+t
+<20101006124110-94
+-bs_RefCounter
+0
+<20101006124110-95
+-bs_MsgType
+3
+-SetOn
+f
+f
+0
+1286361430
+0
+<20101006124110-96
+-bs_RefCounter
+0
+N
+t
+<20101006124110-97
+-bs_RefCounter
+0
+<20101006124110-98
+-bs_MsgType
+3
+-SetOff
+f
+f
+0
+1286361430
+0
+<20101006124110-99
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361430
+0
+f
+-ProtocolSemantics
+1
+0
+1286361430
+-ProtocolRuleSet
+0
+0
+1286361430
+f
+t
+<20101006124110-103
+-bs_RefCounter
+0
+<20101006124110-104
+-bs_ProtocolClass
+3
+-PServiceA
+f
+f
+0
+1286361448
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361448
+0
+t
+<20101006124110-106
+-bs_RefCounter
+0
+<20101006124110-107
+-bs_MsgType
+3
+-in1
+f
+f
+0
+1286361442
+0
+<20101006124110-108
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361448
+0
+t
+<20101006124110-110
+-bs_RefCounter
+0
+<20101006124110-111
+-bs_MsgType
+3
+-out1
+f
+f
+0
+1286361447
+0
+<20101006124110-112
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286361433
+-ProtocolRuleSet
+0
+0
+1286361433
+f
+t
+<20101006124110-115
+-bs_RefCounter
+0
+<20101006124110-116
+-bs_ProtocolClass
+3
+-PServiceB
+f
+f
+0
+1286361537
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361537
+0
+t
+<20101006124110-118
+-bs_RefCounter
+0
+<20101006124110-119
+-bs_MsgType
+3
+-in2
+f
+f
+0
+1286361534
+0
+<20101006124110-120
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286361537
+0
+t
+<20101006124110-122
+-bs_RefCounter
+0
+<20101006124110-123
+-bs_MsgType
+3
+-out2
+f
+f
+0
+1286361537
+0
+<20101006124110-124
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286361526
+-ProtocolRuleSet
+0
+0
+1286361526
+f
+t
+<20101006124909-1
+-bs_RefCounter
+0
+<20101006124909-2
+-bs_ProtocolClass
+3
+-PServiceC
+f
+f
+0
+1286362023
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286362023
+0
+t
+<20101006124909-4
+-bs_RefCounter
+0
+<20101006124909-5
+-bs_MsgType
+3
+-in3
+f
+f
+0
+1286362019
+0
+<20101006124909-6
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286362023
+0
+t
+<20101006124909-8
+-bs_RefCounter
+0
+<20101006124909-9
+-bs_MsgType
+3
+-out3
+f
+f
+0
+1286362021
+0
+<20101006124909-10
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286362009
+-ProtocolRuleSet
+0
+0
+1286362009
+f
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_SAPClassList
+-bs_SAPClassList
+1
+-SAP
+0
+1286361430
+0
+t
+<20101006124110-128
+-bs_RefCounter
+0
+<20101006124110-129
+-bs_SAPClass
+3
+-Timer
+f
+f
+0
+1286361430
+0
+1
+0
+1
+>20101006124110-29
+>20101006124110-30
+t
+<20101006124110-130
+-bs_RefCounter
+0
+<20101006124110-131
+-bs_SAPClass
+3
+-Timeout
+f
+f
+0
+1286361430
+0
+1
+0
+2
+>20101006124110-51
+>20101006124110-52
+t
+<20101006124110-132
+-bs_RefCounter
+0
+<20101006124110-133
+-bs_SAPClass
+3
+-DigitalInput
+f
+f
+0
+1286361430
+0
+1
+0
+4
+>20101006124110-73
+>20101006124110-74
+t
+<20101006124110-134
+-bs_RefCounter
+0
+<20101006124110-135
+-bs_SAPClass
+3
+-DigitalOutput
+f
+f
+0
+1286361430
+0
+1
+0
+5
+>20101006124110-89
+>20101006124110-90
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_PrtvClassList
+-bs_PrtvClassList
+1
+-PrimitiveClass
+0
+1286361430
+0
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ActorClassList
+-bs_ActorClassList
+1
+-ActorClass
+0
+1286362102
+0
+t
+<20101006124110-138
+-bs_RefCounter
+0
+<20101006124110-139
+-bs_ActorClass
+3
+-ComponentMain
+f
+f
+0
+1286361454
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361449
+0
+f
+0
+0
+1286361449
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361449
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361449
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286361640
+0
+t
+<20101006124110-146
+-bs_RefCounter
+0
+<20101006124110-147
+-bs_ActorRef
+3
+-app
+f
+f
+0
+1286361611
+1
+-bs_ActorCoord
+0
+0.5
+0.8085
+-bs_SizeFactors
+0
+3.01
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361608
+0
+f
+3
+-AApplication
+t
+<20101006124110-151
+-bs_RefCounter
+0
+<20101006124110-152
+-bs_ActorRef
+3
+-services
+f
+f
+0
+1286361642
+1
+-bs_ActorCoord
+0
+0.484167
+0.328625
+-bs_SizeFactors
+0
+3.01
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361640
+0
+f
+3
+-AServices
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361449
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361449
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361449
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361449
+0
+f
+0
+1286361449
+-bs_ActorBehaviour
+7
+<20101006124110-162
+-bs_RefCounter
+0
+<20101006124110-163
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361449
+5
+f
+-bs_StateGraph
+8
+<20101006124110-166
+-bs_RefCounter
+0
+<20101006124110-167
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361449
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361449
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361449
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361449
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361449
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361449
+0
+f
+t
+65535
+f
+f
+0
+1286361449
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361449
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361449
+0
+1286361449
+-bs_ActorMemberFct
+1
+f
+0
+1286361449
+t
+f
+f
+t
+<20101006124110-177
+-bs_RefCounter
+0
+<20101006124110-178
+-bs_ActorClass
+3
+-AApplication
+f
+f
+0
+1286361472
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361460
+0
+f
+0
+0
+1286361460
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361460
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361460
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286361588
+0
+t
+<20101006124110-185
+-bs_RefCounter
+0
+<20101006124110-186
+-bs_ActorRef
+3
+-subsysA
+f
+f
+0
+1286361591
+1
+-bs_ActorCoord
+0
+0.327708
+0.56725
+-bs_SizeFactors
+0
+2.99688
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361566
+0
+f
+3
+-ASubSysA
+t
+<20101006124110-190
+-bs_RefCounter
+0
+<20101006124110-191
+-bs_ActorRef
+3
+-subsysB
+f
+f
+0
+1286361590
+1
+-bs_ActorCoord
+0
+0.739306
+0.5595
+-bs_SizeFactors
+0
+3.01
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361588
+0
+f
+3
+-ASubSysB
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361460
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361460
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361460
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361460
+0
+f
+0
+1286361460
+-bs_ActorBehaviour
+7
+<20101006124110-201
+-bs_RefCounter
+0
+<20101006124110-202
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361460
+5
+f
+-bs_StateGraph
+8
+<20101006124110-205
+-bs_RefCounter
+0
+<20101006124110-206
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361460
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361460
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361460
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361460
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361460
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361460
+0
+f
+t
+65535
+f
+f
+0
+1286361460
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361460
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361460
+0
+1286361460
+-bs_ActorMemberFct
+1
+f
+0
+1286361460
+t
+f
+f
+t
+<20101006124110-216
+-bs_RefCounter
+0
+<20101006124110-217
+-bs_ActorClass
+3
+-ASubSysA
+f
+f
+0
+1286361494
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361486
+0
+f
+0
+0
+1286361486
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361486
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361486
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286361818
+0
+t
+<20101006124909-13
+-bs_RefCounter
+0
+<20101006124909-14
+-bs_ActorRef
+3
+-userX
+f
+f
+0
+1286361733
+1
+-bs_ActorCoord
+0
+0.288125
+0.657625
+-bs_SizeFactors
+0
+3.00188
+0.999375
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361731
+0
+f
+3
+-AServiceUser1
+t
+<20101006124909-18
+-bs_RefCounter
+0
+<20101006124909-19
+-bs_ActorRef
+3
+-userY
+f
+f
+0
+1286361746
+1
+-bs_ActorCoord
+0
+0.674236
+0.641375
+-bs_SizeFactors
+0
+3
+1
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361746
+0
+f
+3
+-AServiceUser2
+t
+<20101006124909-23
+-bs_RefCounter
+0
+<20101006124909-24
+-bs_ActorRef
+3
+-userZ
+f
+f
+0
+1286361818
+1
+-bs_ActorCoord
+0
+0.501458
+0.36575
+-bs_SizeFactors
+0
+3
+1
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361818
+0
+f
+3
+-AServiceUser2
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361486
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361486
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361486
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361486
+0
+f
+0
+1286361486
+-bs_ActorBehaviour
+7
+<20101006124110-230
+-bs_RefCounter
+0
+<20101006124110-231
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361486
+5
+f
+-bs_StateGraph
+8
+<20101006124110-234
+-bs_RefCounter
+0
+<20101006124110-235
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361486
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361486
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361486
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361486
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361486
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361486
+0
+f
+t
+65535
+f
+f
+0
+1286361486
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361486
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361486
+0
+1286361486
+-bs_ActorMemberFct
+1
+f
+0
+1286361486
+t
+f
+f
+t
+<20101006124110-245
+-bs_RefCounter
+0
+<20101006124110-246
+-bs_ActorClass
+3
+-ASubSysB
+f
+f
+0
+1286361574
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361497
+0
+f
+0
+0
+1286361497
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361497
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361574
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286362140
+0
+t
+<20101006124909-28
+-bs_RefCounter
+0
+<20101006124909-29
+-bs_ActorRef
+3
+-userX
+f
+f
+0
+1286362071
+1
+-bs_ActorCoord
+0
+0.310417
+0.791625
+-bs_SizeFactors
+0
+2.9975
+0.99875
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361779
+0
+f
+3
+-AServiceUser1
+t
+<20101006124909-33
+-bs_RefCounter
+0
+<20101006124909-34
+-bs_ActorRef
+3
+-userY
+f
+f
+0
+1286362146
+1
+-bs_ActorCoord
+0
+0.311875
+0.537375
+-bs_SizeFactors
+0
+2.9975
+0.99875
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361793
+0
+f
+3
+-AServiceUser1
+t
+<20101006124909-38
+-bs_RefCounter
+0
+<20101006124909-39
+-bs_ActorRef
+3
+-userZ
+f
+f
+0
+1286362144
+1
+-bs_ActorCoord
+0
+0.3025
+0.253375
+-bs_SizeFactors
+0
+3.01
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286362091
+0
+f
+3
+-AServiceUser3
+t
+<20101006124909-43
+-bs_RefCounter
+0
+<20101006124909-44
+-bs_ActorRef
+3
+-svcC
+f
+f
+0
+1286362142
+1
+-bs_ActorCoord
+0
+0.737847
+0.37525
+-bs_SizeFactors
+0
+3.01063
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286362140
+0
+f
+3
+-AServiceC
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361497
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361497
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361497
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361497
+0
+f
+0
+1286361497
+-bs_ActorBehaviour
+7
+<20101006124110-259
+-bs_RefCounter
+0
+<20101006124110-260
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361497
+5
+f
+-bs_StateGraph
+8
+<20101006124110-263
+-bs_RefCounter
+0
+<20101006124110-264
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361497
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361497
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361497
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361497
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361497
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361497
+0
+f
+t
+65535
+f
+f
+0
+1286361497
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361497
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361497
+0
+1286361497
+-bs_ActorMemberFct
+1
+f
+0
+1286361497
+t
+f
+f
+t
+<20101006124110-274
+-bs_RefCounter
+0
+<20101006124110-275
+-bs_ActorClass
+3
+-AServices
+f
+f
+0
+1286361620
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361615
+0
+f
+0
+0
+1286361615
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361615
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361615
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286361926
+0
+t
+<20101006124909-48
+-bs_RefCounter
+0
+<20101006124909-49
+-bs_ActorRef
+3
+-svcA
+f
+f
+0
+1286361941
+1
+-bs_ActorCoord
+0
+0.246042
+0.600875
+-bs_SizeFactors
+0
+3.00188
+0.999375
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361913
+0
+f
+3
+-AServiceA
+t
+<20101006124909-53
+-bs_RefCounter
+0
+<20101006124909-54
+-bs_ActorRef
+3
+-svcB
+f
+f
+0
+1286361940
+1
+-bs_ActorCoord
+0
+0.662222
+0.587375
+-bs_SizeFactors
+0
+3.00188
+0.999375
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361926
+0
+f
+3
+-AServiceB
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361615
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361615
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361615
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361615
+0
+f
+0
+1286361615
+-bs_ActorBehaviour
+7
+<20101006124110-288
+-bs_RefCounter
+0
+<20101006124110-289
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361615
+5
+f
+-bs_StateGraph
+8
+<20101006124110-292
+-bs_RefCounter
+0
+<20101006124110-293
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361615
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361615
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361615
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361615
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361615
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361615
+0
+f
+t
+65535
+f
+f
+0
+1286361615
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361615
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361615
+0
+1286361615
+-bs_ActorMemberFct
+1
+f
+0
+1286361615
+t
+f
+f
+t
+<20101006124909-58
+-bs_RefCounter
+0
+<20101006124909-59
+-bs_ActorClass
+3
+-AServiceUser1
+f
+f
+0
+1286361692
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361685
+0
+f
+0
+0
+1286361685
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361685
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361685
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286361685
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361685
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361685
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361685
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361685
+0
+f
+0
+1286361685
+-bs_ActorBehaviour
+7
+<20101006124909-72
+-bs_RefCounter
+0
+<20101006124909-73
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361685
+5
+f
+-bs_StateGraph
+8
+<20101006124909-76
+-bs_RefCounter
+0
+<20101006124909-77
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361685
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361685
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361685
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361685
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361685
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361685
+0
+f
+t
+65535
+f
+f
+0
+1286361685
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361685
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361685
+0
+1286361685
+-bs_ActorMemberFct
+1
+f
+0
+1286361685
+t
+f
+f
+t
+<20101006124909-87
+-bs_RefCounter
+0
+<20101006124909-88
+-bs_ActorClass
+3
+-AServiceUser2
+f
+f
+0
+1286361705
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361698
+0
+f
+0
+0
+1286361698
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361698
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361698
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286361698
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361698
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361698
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361698
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361698
+0
+f
+0
+1286361698
+-bs_ActorBehaviour
+7
+<20101006124909-101
+-bs_RefCounter
+0
+<20101006124909-102
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361698
+5
+f
+-bs_StateGraph
+8
+<20101006124909-105
+-bs_RefCounter
+0
+<20101006124909-106
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361698
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361698
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361698
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361698
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361698
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361698
+0
+f
+t
+65535
+f
+f
+0
+1286361698
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361698
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361698
+0
+1286361698
+-bs_ActorMemberFct
+1
+f
+0
+1286361698
+t
+f
+f
+t
+<20101006124909-116
+-bs_RefCounter
+0
+<20101006124909-117
+-bs_ActorClass
+3
+-AServiceA
+f
+f
+0
+1286361860
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361844
+0
+f
+0
+0
+1286361844
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361844
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361844
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286361844
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361844
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361844
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361844
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361844
+0
+f
+0
+1286361844
+-bs_ActorBehaviour
+7
+<20101006124909-130
+-bs_RefCounter
+0
+<20101006124909-131
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361844
+5
+f
+-bs_StateGraph
+8
+<20101006124909-134
+-bs_RefCounter
+0
+<20101006124909-135
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361844
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361844
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361844
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361844
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361844
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361844
+0
+f
+t
+65535
+f
+f
+0
+1286361844
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361844
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361844
+0
+1286361844
+-bs_ActorMemberFct
+1
+f
+0
+1286361844
+t
+f
+f
+t
+<20101006124909-145
+-bs_RefCounter
+0
+<20101006124909-146
+-bs_ActorClass
+3
+-AServiceB
+f
+f
+0
+1286361869
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361863
+0
+f
+0
+0
+1286361863
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361863
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361863
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286361936
+0
+t
+<20101006124909-153
+-bs_RefCounter
+0
+<20101006124909-154
+-bs_ActorRef
+3
+-impl
+f
+f
+0
+1286361937
+1
+-bs_ActorCoord
+0
+0.487917
+0.514375
+-bs_SizeFactors
+0
+3.00188
+1
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286361936
+0
+f
+3
+-AServiceBImpl
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361863
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361863
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361863
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361863
+0
+f
+0
+1286361863
+-bs_ActorBehaviour
+7
+<20101006124909-164
+-bs_RefCounter
+0
+<20101006124909-165
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361863
+5
+f
+-bs_StateGraph
+8
+<20101006124909-168
+-bs_RefCounter
+0
+<20101006124909-169
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361863
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361863
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361863
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361863
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361863
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361863
+0
+f
+t
+65535
+f
+f
+0
+1286361863
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361863
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361863
+0
+1286361863
+-bs_ActorMemberFct
+1
+f
+0
+1286361863
+t
+f
+f
+t
+<20101006124909-179
+-bs_RefCounter
+0
+<20101006124909-180
+-bs_ActorClass
+3
+-AServiceBImpl
+f
+f
+0
+1286361879
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361871
+0
+f
+0
+0
+1286361871
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361871
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361871
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286361871
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361871
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361871
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361871
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361871
+0
+f
+0
+1286361871
+-bs_ActorBehaviour
+7
+<20101006124909-193
+-bs_RefCounter
+0
+<20101006124909-194
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361871
+5
+f
+-bs_StateGraph
+8
+<20101006124909-197
+-bs_RefCounter
+0
+<20101006124909-198
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361871
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361871
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361871
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361871
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361871
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361871
+0
+f
+t
+65535
+f
+f
+0
+1286361871
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361871
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361871
+0
+1286361871
+-bs_ActorMemberFct
+1
+f
+0
+1286361871
+t
+f
+f
+t
+<20101006124909-208
+-bs_RefCounter
+0
+<20101006124909-209
+-bs_ActorClass
+3
+-AServiceUser3
+f
+f
+0
+1286362006
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286361992
+0
+f
+0
+0
+1286361992
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286361992
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286361992
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286361992
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286361992
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361992
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286361992
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361992
+0
+f
+0
+1286361992
+-bs_ActorBehaviour
+7
+<20101006124909-222
+-bs_RefCounter
+0
+<20101006124909-223
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286361992
+5
+f
+-bs_StateGraph
+8
+<20101006124909-226
+-bs_RefCounter
+0
+<20101006124909-227
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286361992
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286361992
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286361992
+0
+f
+-bs_StateList
+1
+-State
+0
+1286361992
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286361992
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286361992
+0
+f
+t
+65535
+f
+f
+0
+1286361992
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286361992
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286361992
+0
+1286361992
+-bs_ActorMemberFct
+1
+f
+0
+1286361992
+t
+f
+f
+t
+<20101006124909-237
+-bs_RefCounter
+0
+<20101006124909-238
+-bs_ActorClass
+3
+-AServiceC
+f
+f
+0
+1286362107
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286362102
+0
+f
+0
+0
+1286362102
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286362102
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286362102
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286362102
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286362102
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286362102
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286362102
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286362102
+0
+f
+0
+1286362102
+-bs_ActorBehaviour
+7
+<20101006124909-251
+-bs_RefCounter
+0
+<20101006124909-252
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286362102
+5
+f
+-bs_StateGraph
+8
+<20101006124909-255
+-bs_RefCounter
+0
+<20101006124909-256
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286362102
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286362102
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286362102
+0
+f
+-bs_StateList
+1
+-State
+0
+1286362102
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286362102
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286362102
+0
+f
+t
+65535
+f
+f
+0
+1286362102
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286362102
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286362102
+0
+1286362102
+-bs_ActorMemberFct
+1
+f
+0
+1286362102
+t
+f
+f
+f
+-------------------------------
+
+
+ROOM_CONFIGURATION_DATA
+
+106
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ConfigurationList
+-bs_ConfigurationList
+1
+-Configuration
+0
+1286361430
+0
+t
+<20101006124110-304
+-bs_RefCounter
+0
+<20101006124110-305
+-bs_Configuration
+3
+-StdConfig
+f
+f
+0
+1286361430
+6
+>20101006124110-138
+>20101006124110-139
+-bs_TargetList
+1
+-Target
+0
+1286361430
+0
+t
+<20101006124110-307
+-bs_RefCounter
+0
+<20101006124110-308
+-bs_Target
+3
+-PC
+f
+f
+0
+1286361430
+5
+-pc_id
+0
+0
+2
+2
+-bs_FileList
+1
+-FileListDummyName
+0
+1286361430
+0
+f
+f
+-bs_ContextCoord
+0
+0.5
+0.5
+-bs_SizeFactors
+0
+1
+1
+f
+-bs_NoteList
+1
+-Note
+0
+1286361430
+0
+f
+-bs_PrtvDescriptorList
+1
+-PrtvInstance
+0
+1286361430
+0
+f
+-bs_ActorInstanceList
+1
+-ActorInstance
+0
+1286361430
+0
+t
+<20101006124110-315
+-bs_RefCounter
+0
+<20101006124110-316
+-bs_ActorInstance
+3
+-ComponentMain
+f
+f
+0
+1286361596
+5
+8
+<20101006124110-317
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-373
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361596
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361596
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361596
+0
+f
+t
+1024
+t
+<20101006124110-321
+-bs_RefCounter
+0
+<20101006124110-322
+-bs_ActorInstance
+3
+-ComponentMain/app
+f
+f
+0
+1286361608
+5
+8
+<20101006124110-323
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-377
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361608
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361608
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361608
+0
+f
+t
+1024
+t
+<20101006124110-327
+-bs_RefCounter
+0
+<20101006124110-328
+-bs_ActorInstance
+3
+-ComponentMain/app/subsysA
+f
+f
+0
+1286361608
+5
+8
+<20101006124110-329
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-381
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361608
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361608
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361608
+0
+f
+t
+1024
+t
+<20101006124110-333
+-bs_RefCounter
+0
+<20101006124110-334
+-bs_ActorInstance
+3
+-ComponentMain/app/subsysB
+f
+f
+0
+1286361608
+5
+8
+<20101006124110-335
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-385
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361608
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361608
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361608
+0
+f
+t
+1024
+t
+<20101006124110-339
+-bs_RefCounter
+0
+<20101006124110-340
+-bs_ActorInstance
+3
+-ComponentMain/services
+f
+f
+0
+1286361640
+5
+8
+<20101006124110-341
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-389
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361640
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361640
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361640
+0
+f
+t
+1024
+t
+<20101006124909-266
+-bs_RefCounter
+0
+<20101006124909-267
+-bs_ActorInstance
+3
+-ComponentMain/app/subsysA/userX
+f
+f
+0
+1286361731
+5
+8
+<20101006124909-268
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-393
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361731
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361731
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361731
+0
+f
+t
+1024
+t
+<20101006124909-272
+-bs_RefCounter
+0
+<20101006124909-273
+-bs_ActorInstance
+3
+-ComponentMain/app/subsysA/userY
+f
+f
+0
+1286361746
+5
+8
+<20101006124909-274
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-397
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361746
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361746
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361746
+0
+f
+t
+1024
+t
+<20101006124909-278
+-bs_RefCounter
+0
+<20101006124909-279
+-bs_ActorInstance
+3
+-ComponentMain/app/subsysB/userX
+f
+f
+0
+1286361779
+5
+8
+<20101006124909-280
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-401
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361779
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361779
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361779
+0
+f
+t
+1024
+t
+<20101006124909-284
+-bs_RefCounter
+0
+<20101006124909-285
+-bs_ActorInstance
+3
+-ComponentMain/app/subsysB/userY
+f
+f
+0
+1286361793
+5
+8
+<20101006124909-286
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-405
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361793
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361793
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361793
+0
+f
+t
+1024
+t
+<20101006124909-290
+-bs_RefCounter
+0
+<20101006124909-291
+-bs_ActorInstance
+3
+-ComponentMain/app/subsysA/userZ
+f
+f
+0
+1286361818
+5
+8
+<20101006124909-292
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-409
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361818
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361818
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361818
+0
+f
+t
+1024
+t
+<20101006124909-296
+-bs_RefCounter
+0
+<20101006124909-297
+-bs_ActorInstance
+3
+-ComponentMain/services/svcA
+f
+f
+0
+1286361913
+5
+8
+<20101006124909-298
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-413
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361913
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361913
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361913
+0
+f
+t
+1024
+t
+<20101006124909-302
+-bs_RefCounter
+0
+<20101006124909-303
+-bs_ActorInstance
+3
+-ComponentMain/services/svcB
+f
+f
+0
+1286361926
+5
+8
+<20101006124909-304
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-417
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361926
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361926
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361926
+0
+f
+t
+1024
+t
+<20101006124909-308
+-bs_RefCounter
+0
+<20101006124909-309
+-bs_ActorInstance
+3
+-ComponentMain/services/svcB/impl
+f
+f
+0
+1286361936
+5
+8
+<20101006124909-310
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-421
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286361936
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286361936
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286361936
+0
+f
+t
+1024
+t
+<20101006124909-314
+-bs_RefCounter
+0
+<20101006124909-315
+-bs_ActorInstance
+3
+-ComponentMain/app/subsysB/userZ
+f
+f
+0
+1286362091
+5
+8
+<20101006124909-316
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-425
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286362091
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286362091
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286362091
+0
+f
+t
+1024
+t
+<20101006124909-320
+-bs_RefCounter
+0
+<20101006124909-321
+-bs_ActorInstance
+3
+-ComponentMain/app/subsysB/svcC
+f
+f
+0
+1286362140
+5
+8
+<20101006124909-322
+-bs_RefCounter
+0
+N
+0
+f
+<20101215174838-429
+-bs_DataMemberList
+1
+-var
+0
+1292431717
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286362140
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286362140
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286362140
+0
+f
+t
+1024
+f
+>20101006124110-307
+>20101006124110-308
+0
+-bs_PropertySet
+0
+f
+-bs_ViewMementoList
+1
+-ViewMemento
+0
+1292431718
+0
+t
+<20101215174838-435
+-bs_RefCounter
+0
+<20101215174838-436
+-bs_ViewMemento
+3
+-
+f
+f
+0
+1292431718
+1
+1
+1
+225
+225
+1106
+743
+>20101006124110-245
+>20101006124110-246
+f
+f
+>20101006124110-304
+>20101006124110-305
+-842150451
+-bs_DataObjHist
+0
+0
diff --git a/tests/org.eclipse.etrice.generator.tests/models/ports.room b/tests/org.eclipse.etrice.generator.tests/models/ports.room
new file mode 100644
index 000000000..14bc1c8e8
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/ports.room
@@ -0,0 +1,23 @@
+RoomModel base {
+ ProtocolClass PTest {
+ incoming {
+ }
+ outgoing {
+ }
+ }
+
+ SubSystemClass CMain {
+ ActorRef test: ATest
+ }
+
+ ActorClass ATest {
+ Interface {
+ Port relay: PTest
+ Port externalEnd: PTest
+ }
+ Structure {
+ Port internalEnd: PTest
+ external Port externalEnd
+ }
+ }
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/states.room b/tests/org.eclipse.etrice.generator.tests/models/states.room
new file mode 100644
index 000000000..a48dec060
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/states.room
@@ -0,0 +1,106 @@
+RoomModel states {
+
+ ProtocolClass PTest1 {
+ incoming {
+ Message a ()
+ Message b (x : int32)
+ Message c ()
+ }
+ outgoing {
+ Message x ()
+ }
+ }
+
+ SubSystemClass CMain {
+ ActorRef test : ATest
+ }
+
+ ActorClass ATest {
+ Interface {
+ Port fct : PTest1
+ }
+ Structure {
+ external Port fct
+ }
+ Behavior {
+ StateMachine {
+ State State1 {}
+ State State2 {}
+ State State3 {
+ subgraph {
+ State State1 {}
+ State State2 {}
+ State State3 {}
+ EntryPoint tp1
+ TransitionPoint tp2
+ ExitPoint tp3
+ Transition tr0: initial -> State1 {}
+ Transition tr1: my tp1 -> State3 {}
+ Transition tr2: State1 -> State2 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: State2 -> State3 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr4: State3 -> State1 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr5: my tp2 -> State3 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr6: State3 -> my tp3 {
+ triggers {
+ <c:fct>
+ }
+ }
+ }
+ }
+ State State4 {}
+ TransitionPoint tp0
+ ChoicePoint CP1
+ Transition tr0: initial -> State1 {}
+ Transition tr1: State1 -> State2 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr2: State2 -> cp CP1 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: cp CP1 -> State1 {}
+ Transition tr4: cp CP1 -> State3 {
+ cond {
+ "x==2"
+ }
+ }
+ Transition tr5: my tp0 -> tp1 of State3 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr6: cp CP1 -> State4 {
+ cond {
+ "x==3"
+ }
+ }
+ Transition tr7: tp3 of State3 -> State2 {}
+ Transition tr8: State3 -> State2 {
+ triggers {
+ <c:fct>
+ }
+ }
+ }
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/states.t.room b/tests/org.eclipse.etrice.generator.tests/models/states.t.room
new file mode 100644
index 000000000..4251c6a5b
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/states.t.room
@@ -0,0 +1,119 @@
+RoomModel state {
+
+ import room.basic.service.timing.*
+
+ ProtocolClass PTest1 {
+ incoming {
+ Message a ()
+ Message b (x : int32)
+ Message c ()
+ }
+ outgoing {
+ Message x ()
+ }
+ }
+
+ ComponentClass CMain {
+ ActorRef application : AApplication_CMain
+ ActorRef timingService : ATimingService
+
+ LayerConnection sub_actor application satisfied_by timingService.timerSPP
+ LayerConnection sub_actor application satisfied_by timingService.timeoutSPP
+ }
+
+ // automatically inserted AApplication_CMain
+ ActorClass AApplication_CMain {
+ Structure {
+ ActorRef test : ATest
+ }
+ }
+
+ ActorClass ATest {
+ Interface {
+ Port fct : PTest1
+ }
+ Structure {
+ external Port fct
+ }
+ Behavior {
+ StateMachine {
+ State State1 {}
+ State State2 {}
+ State State3 {
+ subgraph {
+ State State1 {}
+ State State2 {}
+ State State3 {}
+ EntryPoint tp1
+ TransitionPoint tp2
+ ExitPoint tp3
+ Transition tr0: initial -> State1 {}
+ Transition tr1: my tp1 -> State3 {}
+ Transition tr2: State1 -> State2 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: State2 -> State3 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr4: State3 -> State1 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr5: my tp2 -> State3 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr6: State3 -> my tp3 {
+ triggers {
+ <c:fct>
+ }
+ }
+ }
+ }
+ State State4 {}
+ TransitionPoint tp0
+ ChoicePoint CP1
+ Transition tr0: initial -> State1 {}
+ Transition tr1: State1 -> State2 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr2: State2 -> cp CP1 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: cp CP1 -> State1 {}
+ Transition tr4: cp CP1 -> State3 {
+ cond {
+ "data==2"
+ }
+ }
+ Transition tr5: my tp0 -> tp1 of State3 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr6: cp CP1 -> State4 {
+ cond {
+ "data==3"
+ }
+ }
+ Transition tr7: tp3 of State3 -> State2 {}
+ Transition tr8: State3 -> State2 {
+ triggers {
+ <c:fct>
+ }
+ }
+ }
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/states.t.trp b/tests/org.eclipse.etrice.generator.tests/models/states.t.trp
new file mode 100644
index 000000000..049dcf50b
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/states.t.trp
@@ -0,0 +1,2685 @@
+114
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_DataClassList
+-bs_DataClassList
+1
+-DataClass
+0
+1286376755
+0
+t
+<20101006165926-2
+-bs_RefCounter
+0
+<20101006165926-3
+-bs_DataClass
+3
+-boolean
+f
+f
+0
+1286376755
+0
+1
+5
+13
+t
+<20101006165926-4
+-bs_RefCounter
+0
+<20101006165926-5
+-bs_DataClass
+3
+-char
+f
+f
+0
+1286376755
+0
+1
+5
+7
+t
+<20101006165926-6
+-bs_RefCounter
+0
+<20101006165926-7
+-bs_DataClass
+3
+-uchar
+f
+f
+0
+1286376755
+0
+1
+5
+14
+t
+<20101006165926-8
+-bs_RefCounter
+0
+<20101006165926-9
+-bs_DataClass
+3
+-int8
+f
+f
+0
+1286376755
+0
+1
+5
+15
+t
+<20101006165926-10
+-bs_RefCounter
+0
+<20101006165926-11
+-bs_DataClass
+3
+-uint8
+f
+f
+0
+1286376755
+0
+1
+5
+18
+t
+<20101006165926-12
+-bs_RefCounter
+0
+<20101006165926-13
+-bs_DataClass
+3
+-int16
+f
+f
+0
+1286376755
+0
+1
+5
+16
+t
+<20101006165926-14
+-bs_RefCounter
+0
+<20101006165926-15
+-bs_DataClass
+3
+-uint16
+f
+f
+0
+1286376755
+0
+1
+5
+19
+t
+<20101006165926-16
+-bs_RefCounter
+0
+<20101006165926-17
+-bs_DataClass
+3
+-int32
+f
+f
+0
+1286376755
+0
+1
+5
+17
+t
+<20101006165926-18
+-bs_RefCounter
+0
+<20101006165926-19
+-bs_DataClass
+3
+-uint32
+f
+f
+0
+1286376755
+0
+1
+5
+20
+t
+<20101006165926-20
+-bs_RefCounter
+0
+<20101006165926-21
+-bs_DataClass
+3
+-float32
+f
+f
+0
+1286376755
+0
+1
+5
+21
+t
+<20101006165926-22
+-bs_RefCounter
+0
+<20101006165926-23
+-bs_DataClass
+3
+-float64
+f
+f
+0
+1286376755
+0
+1
+5
+22
+t
+<20101006165926-24
+-bs_RefCounter
+0
+<20101006165926-25
+-bs_DataClass
+3
+-char*
+f
+f
+0
+1286376755
+0
+1
+5
+12
+-
+t
+<20101006165926-26
+-bs_RefCounter
+0
+<20101006165926-27
+-bs_DataClass
+3
+-void*
+f
+f
+0
+1286376755
+0
+1
+5
+12
+-
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ProtocolClassList
+-bs_ProtocolClassList
+1
+-ProtocolClass
+0
+1286376836
+0
+t
+<20101006165926-29
+-bs_RefCounter
+0
+<20101006165926-30
+-bs_ProtocolClass
+3
+-p_Timer
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-32
+-bs_RefCounter
+0
+<20101006165926-33
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286376755
+0
+>20101006165926-16
+>20101006165926-17
+t
+<20101006165926-34
+-bs_RefCounter
+0
+<20101006165926-35
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286376755
+0
+<20101006165926-36
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-38
+-bs_RefCounter
+0
+<20101006165926-39
+-bs_MsgType
+3
+-timerTick
+f
+f
+0
+1286376755
+0
+<20101006165926-40
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+t
+<20101006165926-43
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Start
+t
+<20101006165926-45
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Kill
+f
+t
+<20101006165926-48
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+1
+-timerTick
+f
+f
+f
+t
+<20101006165926-51
+-bs_RefCounter
+0
+<20101006165926-52
+-bs_ProtocolClass
+3
+-p_Timeout
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-54
+-bs_RefCounter
+0
+<20101006165926-55
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286376755
+0
+>20101006165926-16
+>20101006165926-17
+t
+<20101006165926-56
+-bs_RefCounter
+0
+<20101006165926-57
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286376755
+0
+<20101006165926-58
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-60
+-bs_RefCounter
+0
+<20101006165926-61
+-bs_MsgType
+3
+-timeoutTick
+f
+f
+0
+1286376755
+0
+<20101006165926-62
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+t
+<20101006165926-65
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Start
+t
+<20101006165926-67
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Kill
+f
+t
+<20101006165926-70
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+1
+-timeoutTick
+f
+f
+f
+t
+<20101006165926-73
+-bs_RefCounter
+0
+<20101006165926-74
+-bs_ProtocolClass
+3
+-p_DigitalInput
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-76
+-bs_RefCounter
+0
+<20101006165926-77
+-bs_MsgType
+3
+-getStatus
+f
+f
+0
+1286376755
+0
+<20101006165926-78
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-80
+-bs_RefCounter
+0
+<20101006165926-81
+-bs_MsgType
+3
+-inputChanged
+f
+f
+0
+1286376755
+0
+>20101006165926-12
+>20101006165926-13
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+t
+<20101006165926-84
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-getStatus
+t
+<20101006165926-86
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+1
+-inputChanged
+f
+f
+f
+t
+<20101006165926-89
+-bs_RefCounter
+0
+<20101006165926-90
+-bs_ProtocolClass
+3
+-p_DigitalOutput
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-92
+-bs_RefCounter
+0
+<20101006165926-93
+-bs_MsgType
+3
+-Set
+f
+f
+0
+1286376755
+0
+>20101006165926-2
+>20101006165926-3
+t
+<20101006165926-94
+-bs_RefCounter
+0
+<20101006165926-95
+-bs_MsgType
+3
+-SetOn
+f
+f
+0
+1286376755
+0
+<20101006165926-96
+-bs_RefCounter
+0
+N
+t
+<20101006165926-97
+-bs_RefCounter
+0
+<20101006165926-98
+-bs_MsgType
+3
+-SetOff
+f
+f
+0
+1286376755
+0
+<20101006165926-99
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+f
+t
+<20101006165926-103
+-bs_RefCounter
+0
+<20101006165926-104
+-bs_ProtocolClass
+3
+-PTest1
+f
+f
+0
+1286376836
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376856
+0
+t
+<20101006165926-106
+-bs_RefCounter
+0
+<20101006165926-107
+-bs_MsgType
+3
+-a
+f
+f
+0
+1286376832
+0
+<20101006165926-108
+-bs_RefCounter
+0
+N
+t
+<20101006165926-109
+-bs_RefCounter
+0
+<20101006165926-110
+-bs_MsgType
+3
+-b
+f
+f
+0
+1286376853
+0
+>20101006165926-16
+>20101006165926-17
+t
+<20101006165926-111
+-bs_RefCounter
+0
+<20101006165926-112
+-bs_MsgType
+3
+-c
+f
+f
+0
+1286376855
+0
+<20101006165926-113
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376836
+0
+t
+<20101006165926-115
+-bs_RefCounter
+0
+<20101006165926-116
+-bs_MsgType
+3
+-x
+f
+f
+0
+1286376835
+0
+<20101006165926-117
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286376824
+-ProtocolRuleSet
+0
+0
+1286376824
+f
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_SAPClassList
+-bs_SAPClassList
+1
+-SAP
+0
+1286376755
+0
+t
+<20101006165926-121
+-bs_RefCounter
+0
+<20101006165926-122
+-bs_SAPClass
+3
+-Timer
+f
+f
+0
+1286376755
+0
+1
+0
+1
+>20101006165926-29
+>20101006165926-30
+t
+<20101006165926-123
+-bs_RefCounter
+0
+<20101006165926-124
+-bs_SAPClass
+3
+-Timeout
+f
+f
+0
+1286376755
+0
+1
+0
+2
+>20101006165926-51
+>20101006165926-52
+t
+<20101006165926-125
+-bs_RefCounter
+0
+<20101006165926-126
+-bs_SAPClass
+3
+-DigitalInput
+f
+f
+0
+1286376755
+0
+1
+0
+4
+>20101006165926-73
+>20101006165926-74
+t
+<20101006165926-127
+-bs_RefCounter
+0
+<20101006165926-128
+-bs_SAPClass
+3
+-DigitalOutput
+f
+f
+0
+1286376755
+0
+1
+0
+5
+>20101006165926-89
+>20101006165926-90
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_PrtvClassList
+-bs_PrtvClassList
+1
+-PrimitiveClass
+0
+1286376755
+0
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ActorClassList
+-bs_ActorClassList
+1
+-ActorClass
+0
+1286376770
+0
+t
+<20101006165926-131
+-bs_RefCounter
+0
+<20101006165926-132
+-bs_ActorClass
+3
+-ComponentMain
+f
+f
+0
+1286376767
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286376763
+0
+f
+0
+0
+1286376763
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286376763
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286376763
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286376802
+0
+t
+<20101006165926-139
+-bs_RefCounter
+0
+<20101006165926-140
+-bs_ActorRef
+3
+-test
+f
+f
+0
+1286376803
+1
+-bs_ActorCoord
+0
+0.458194
+0.507625
+-bs_SizeFactors
+0
+3.01
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286376802
+0
+f
+3
+-ATest
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286376763
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376763
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286376763
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286376763
+0
+f
+0
+1286376763
+-bs_ActorBehaviour
+7
+<20101006165926-150
+-bs_RefCounter
+0
+<20101006165926-151
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286376763
+5
+f
+-bs_StateGraph
+8
+<20101006165926-154
+-bs_RefCounter
+0
+<20101006165926-155
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286376763
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286376763
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286376763
+0
+f
+-bs_StateList
+1
+-State
+0
+1286376763
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286376763
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286376763
+0
+f
+t
+65535
+f
+f
+0
+1286376763
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286376763
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376763
+0
+1286376763
+-bs_ActorMemberFct
+1
+f
+0
+1286376763
+t
+f
+f
+t
+<20101006165926-165
+-bs_RefCounter
+0
+<20101006165926-166
+-bs_ActorClass
+3
+-ATest
+f
+f
+0
+1286376775
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286376845
+0
+t
+<20101006165926-169
+-bs_RefCounter
+0
+<20101006165926-170
+-bs_PortRef
+3
+-fct
+f
+f
+0
+1286376845
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.393333
+1
+>20101006165926-103
+>20101006165926-104
+f
+0
+0
+1286376770
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286376845
+0
+t
+>20101006165926-169
+>20101006165926-170
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286376770
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286376770
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286376770
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376770
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286376770
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286376770
+0
+f
+0
+1286376770
+-bs_ActorBehaviour
+7
+<20101006165926-182
+-bs_RefCounter
+0
+<20101006165926-183
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286376770
+5
+f
+-bs_StateGraph
+8
+<20101006165926-186
+-bs_RefCounter
+0
+<20101006165926-187
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286376770
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286376770
+0
+t
+<20101006165926-190
+-bs_RefCounter
+0
+<20101006165926-191
+-bs_Choicepoint
+3
+-CP1
+f
+f
+0
+1286377205
+2
+-bs_CPBranchList
+1
+-CPBranchListDummyName
+0
+1286376897
+0
+t
+<20101006165926-193
+-bs_RefCounter
+0
+<20101006165926-194
+-bs_CPBranch
+3
+-[data==2]
+f
+f
+0
+1286376916
+1
+t
+<20101006170015-1
+-bs_RefCounter
+0
+<20101006170015-2
+-bs_CPBranch
+3
+-[data==3]
+f
+f
+0
+1286377199
+1
+f
+<20101006165926-195
+-bs_RefCounter
+0
+<20101006165926-196
+-bs_CPBranch
+3
+-
+f
+f
+0
+1286376909
+1
+-bs_ContextCoord
+0
+0.576825
+0.610317
+8
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286376770
+0
+t
+<20101006165926-199
+-bs_RefCounter
+0
+<20101006165926-200
+-bs_TrPoint
+3
+-TrP1
+f
+f
+0
+1286376892
+1
+0
+-1
+-bs_ContextCoord
+0
+1
+0.698889
+9
+f
+-bs_StateList
+1
+-State
+0
+1286376770
+0
+t
+<20101006165926-203
+-bs_RefCounter
+0
+<20101006165926-204
+-bs_State
+3
+-State1
+f
+f
+0
+1286376871
+5
+-
+-
+-1
+-1
+<20101006165926-205
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.407381
+0.802619
+-bs_SizeFactors
+0
+1
+1
+f
+f
+1
+-1
+t
+<20101006165926-208
+-bs_RefCounter
+0
+<20101006165926-209
+-bs_State
+3
+-State2
+f
+f
+0
+1286376875
+5
+-
+-
+-1
+-1
+<20101006165926-210
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.432698
+0.405397
+-bs_SizeFactors
+0
+1
+1
+f
+f
+2
+-1
+t
+<20101006165926-213
+-bs_RefCounter
+0
+<20101006165926-214
+-bs_State
+3
+-State3
+f
+f
+0
+1286376881
+5
+-
+-
+-1
+-1
+<20101006165926-215
+-bs_RefCounter
+0
+<20101006165926-216
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286376981
+5
+f
+-bs_StateGraph
+8
+<20101006165926-219
+-bs_RefCounter
+0
+<20101006165926-220
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286376981
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286376981
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286376981
+0
+t
+<20101006165926-224
+-bs_RefCounter
+0
+<20101006165926-225
+-bs_TrPoint
+3
+-TrP1
+f
+f
+0
+1286376981
+1
+1
+4
+-bs_ContextCoord
+0
+0.0389161
+1
+10
+t
+<20101006165926-227
+-bs_RefCounter
+0
+<20101006165926-228
+-bs_TrPoint
+3
+-TrP2
+f
+f
+0
+1286376981
+1
+1
+5
+-bs_ContextCoord
+0
+0.929832
+1
+11
+t
+<20101006170448-1
+-bs_RefCounter
+0
+<20101006170448-2
+-bs_TrPoint
+3
+-TrP3
+f
+f
+0
+1286377368
+1
+0
+-1
+-bs_ContextCoord
+0
+1
+0.281508
+12
+t
+<20101006170448-4
+-bs_RefCounter
+0
+<20101006170448-5
+-bs_TrPoint
+3
+-TrP412863773960
+f
+f
+0
+1286377396
+1
+2
+7
+-bs_ContextCoord
+0
+0.230692
+0
+13
+t
+<20101006170448-7
+-bs_RefCounter
+0
+<20101006170448-8
+-bs_TrPoint
+3
+-TrP412863774570
+f
+f
+0
+1286377457
+1
+2
+8
+-bs_ContextCoord
+0
+0
+0.48431
+14
+f
+-bs_StateList
+1
+-State
+0
+1286376981
+0
+t
+<20101006165926-231
+-bs_RefCounter
+0
+<20101006165926-232
+-bs_State
+3
+-State1
+f
+f
+0
+1286376987
+5
+-
+-
+-1
+-1
+<20101006165926-233
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.457937
+0.751984
+-bs_SizeFactors
+0
+1
+1
+f
+f
+5
+-1
+t
+<20101006165926-236
+-bs_RefCounter
+0
+<20101006165926-237
+-bs_State
+3
+-State2
+f
+f
+0
+1286376992
+5
+-
+-
+-1
+-1
+<20101006165926-238
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.222698
+0.407937
+-bs_SizeFactors
+0
+1
+1
+f
+f
+6
+-1
+t
+<20101006165926-241
+-bs_RefCounter
+0
+<20101006165926-242
+-bs_State
+3
+-State3
+f
+f
+0
+1286376994
+5
+-
+-
+-1
+-1
+<20101006165926-243
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.73373
+0.387698
+-bs_SizeFactors
+0
+1
+1
+f
+f
+7
+-1
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286376981
+0
+t
+<20101006165926-247
+-bs_RefCounter
+0
+<20101006165926-248
+-bs_TrSegment
+3
+-init
+f
+f
+0
+1286376999
+5
+0
+>20101006165926-220
+1
+>20101006165926-232
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376999
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.263968
+0.840992
+9
+-1
+t
+<20101006165926-251
+-bs_RefCounter
+0
+<20101006165926-252
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377002
+5
+3
+>20101006165926-228
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377002
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.831781
+0.693849
+10
+-1
+t
+<20101006165926-255
+-bs_RefCounter
+0
+<20101006165926-256
+-bs_TrSegment
+3
+-b
+f
+f
+0
+1286377019
+5
+1
+>20101006165926-232
+1
+>20101006165926-237
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377003
+0
+t
+<20101006165926-258
+-bs_RefCounter
+0
+<20101006165926-259
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286377019
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.340317
+0.57996
+11
+-1
+t
+<20101006165926-261
+-bs_RefCounter
+0
+<20101006165926-262
+-bs_TrSegment
+3
+-c
+f
+f
+0
+1286377027
+5
+1
+>20101006165926-237
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377004
+0
+t
+<20101006165926-264
+-bs_RefCounter
+0
+<20101006165926-265
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377027
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.478214
+0.397817
+12
+-1
+t
+<20101006165926-267
+-bs_RefCounter
+0
+<20101006165926-268
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286377035
+5
+1
+>20101006165926-242
+1
+>20101006165926-232
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377006
+0
+t
+<20101006165926-270
+-bs_RefCounter
+0
+<20101006165926-271
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286377035
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.595833
+0.569841
+13
+-1
+t
+<20101006170448-10
+-bs_RefCounter
+0
+<20101006170448-11
+-bs_TrSegment
+3
+-b
+f
+f
+0
+1286377388
+5
+3
+>20101006170448-2
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377372
+0
+t
+<20101006170448-13
+-bs_RefCounter
+0
+<20101006170448-14
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286377388
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.866865
+0.334603
+14
+-1
+t
+<20101006170448-16
+-bs_RefCounter
+0
+<20101006170448-17
+-bs_TrSegment
+3
+-c
+f
+f
+0
+1286377447
+5
+1
+>20101006165926-242
+3
+>20101006170448-5
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377422
+0
+t
+<20101006170448-19
+-bs_RefCounter
+0
+<20101006170448-20
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377447
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.482211
+0.193849
+15
+-1
+f
+-bs_NoteList
+1
+-Note
+0
+1286376981
+0
+f
+t
+65535
+f
+f
+0
+1286377422
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286376981
+-bs_ContextCoord
+0
+0.756429
+0.415556
+-bs_SizeFactors
+0
+1
+1
+f
+f
+3
+-1
+t
+<20101006170015-3
+-bs_RefCounter
+0
+<20101006170015-4
+-bs_State
+3
+-State4
+f
+f
+0
+1286377183
+5
+-
+-
+-1
+-1
+<20101006170015-5
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.751429
+0.830397
+-bs_SizeFactors
+0
+1
+1
+f
+f
+4
+-1
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286376770
+0
+t
+<20101006165926-278
+-bs_RefCounter
+0
+<20101006165926-279
+-bs_TrSegment
+3
+-init
+f
+f
+0
+1286376902
+5
+0
+>20101006165926-187
+1
+>20101006165926-204
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376902
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.23869
+0.86631
+0
+-1
+t
+<20101006165926-282
+-bs_RefCounter
+0
+<20101006165926-283
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286376941
+5
+1
+>20101006165926-204
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376904
+0
+t
+<20101006165926-285
+-bs_RefCounter
+0
+<20101006165926-286
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286376941
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.42004
+0.604008
+1
+-1
+t
+<20101006165926-288
+-bs_RefCounter
+0
+<20101006165926-289
+-bs_TrSegment
+3
+-b
+f
+f
+0
+1286376947
+5
+1
+>20101006165926-209
+2
+>20101006165926-191
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376906
+0
+t
+<20101006165926-291
+-bs_RefCounter
+0
+<20101006165926-292
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286376947
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.504762
+0.507857
+2
+-1
+t
+<20101006165926-294
+-bs_RefCounter
+0
+<20101006165926-295
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286376909
+5
+2
+>20101006165926-196
+1
+>20101006165926-204
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376909
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.492103
+0.706468
+3
+-1
+t
+<20101006165926-298
+-bs_RefCounter
+0
+<20101006165926-299
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377205
+5
+2
+>20101006165926-194
+1
+>20101006165926-214
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376916
+0
+t
+<20101006170015-8
+-bs_RefCounter
+0
+<20101006170015-9
+-bs_SimpleTriggerSpec
+3
+-
+f
+f
+0
+1286377205
+1
+-
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.666627
+0.512937
+4
+-1
+t
+<20101006165926-302
+-bs_RefCounter
+0
+<20101006165926-303
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286377483
+5
+3
+>20101006165926-200
+1
+>20101006165926-214
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376931
+0
+t
+<20101006170448-22
+-bs_RefCounter
+0
+<20101006170448-23
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286377483
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.878214
+0.557222
+5
+-1
+t
+<20101006170015-10
+-bs_RefCounter
+0
+<20101006170015-11
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377199
+5
+2
+>20101006170015-2
+1
+>20101006170015-4
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377199
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.664127
+0.720357
+6
+-1
+t
+<20101006170448-24
+-bs_RefCounter
+0
+<20101006170448-25
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377403
+5
+1
+>20101006165926-214
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377396
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.650159
+0.218254
+7
+-1
+t
+<20101006170448-28
+-bs_RefCounter
+0
+<20101006170448-29
+-bs_TrSegment
+3
+-c
+f
+f
+0
+1286377468
+5
+1
+>20101006165926-214
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377457
+0
+t
+<20101006170448-31
+-bs_RefCounter
+0
+<20101006170448-32
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377468
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.594563
+0.410476
+8
+-1
+f
+-bs_NoteList
+1
+-Note
+0
+1286376770
+0
+f
+t
+65535
+f
+f
+0
+1286377457
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286376770
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376770
+0
+1286376770
+-bs_ActorMemberFct
+1
+f
+0
+1286376770
+t
+f
+f
+f
+-------------------------------
+
+
+ROOM_CONFIGURATION_DATA
+
+106
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ConfigurationList
+-bs_ConfigurationList
+1
+-Configuration
+0
+1286376755
+0
+t
+<20101006165926-311
+-bs_RefCounter
+0
+<20101006165926-312
+-bs_Configuration
+3
+-StdConfig
+f
+f
+0
+1286376755
+6
+<20101006165926-313
+-bs_RefCounter
+0
+N
+-bs_TargetList
+1
+-Target
+0
+1286376755
+0
+t
+<20101006165926-315
+-bs_RefCounter
+0
+<20101006165926-316
+-bs_Target
+3
+-PC
+f
+f
+0
+1286376755
+5
+-pc_id
+0
+0
+2
+2
+-bs_FileList
+1
+-FileListDummyName
+0
+1286376755
+0
+f
+f
+-bs_ContextCoord
+0
+0.5
+0.5
+-bs_SizeFactors
+0
+1
+1
+f
+-bs_NoteList
+1
+-Note
+0
+1286376755
+0
+f
+-bs_PrtvDescriptorList
+1
+-PrtvInstance
+0
+1286376755
+0
+f
+-bs_ActorInstanceList
+1
+-ActorInstance
+0
+1286376755
+0
+f
+>20101006165926-315
+>20101006165926-316
+0
+-bs_PropertySet
+0
+f
+-bs_ViewMementoList
+1
+-ViewMemento
+0
+1292431746
+0
+t
+<20101215174906-162
+-bs_RefCounter
+0
+<20101215174906-163
+-bs_ViewMemento
+3
+-
+f
+f
+0
+1292431746
+1
+1
+1
+25
+25
+906
+543
+>20101006165926-165
+>20101006165926-166
+t
+<20101215174906-164
+-bs_RefCounter
+0
+<20101215174906-165
+-bs_ViewMemento
+3
+-
+f
+f
+0
+1292431746
+1
+2
+1
+607
+146
+1085
+646
+>20101006165926-165
+>20101006165926-166
+>20101006165926-182
+>20101006165926-183
+-TOP
+f
+f
+>20101006165926-311
+>20101006165926-312
+-842150451
+-bs_DataObjHist
+0
+0
diff --git a/tests/org.eclipse.etrice.generator.tests/models/states_inheritance.room b/tests/org.eclipse.etrice.generator.tests/models/states_inheritance.room
new file mode 100644
index 000000000..7bc097885
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/states_inheritance.room
@@ -0,0 +1,249 @@
+RoomModel states_inheritance.t {
+
+ ProtocolClass PTimer {
+ incoming {
+ Message start (time_ms : int32)
+ Message kill ()
+ }
+ outgoing {
+ Message timerTick ()
+ }
+ }
+
+ ProtocolClass PTimeout {
+ incoming {
+ Message start (time_ms : int32)
+ Message kill ()
+ }
+ outgoing {
+ Message timeoutTick ()
+ }
+ }
+
+ ActorClass ATimingService {
+ Interface {
+ SPP timerSPP: PTimer
+ SPP timeoutSPP: PTimeout
+ }
+ Structure {
+ ServiceImplementation of timerSPP
+ ServiceImplementation of timeoutSPP
+ }
+ }
+
+ ProtocolClass PTest1 {
+ incoming {
+ Message a ()
+ Message b (x : int32)
+ Message c ()
+ }
+ outgoing {
+ Message x ()
+ }
+ }
+
+ ProtocolClass PTest2 {
+ incoming {
+ Message x ()
+ Message y ()
+ Message z ()
+ }
+ outgoing {
+ Message a ()
+ }
+ }
+
+ ProtocolClass PTest3 {
+ incoming {
+ Message a ()
+ }
+ outgoing {
+ Message b ()
+ }
+ }
+
+ SubSystemClass CMain {
+ ActorRef application : AApplication_CMain
+ ActorRef timingService : ATimingService
+
+ LayerConnection ref application satisfied_by timingService.timerSPP
+ LayerConnection ref application satisfied_by timingService.timeoutSPP
+ }
+
+ // automatically inserted AApplication_CMain
+ ActorClass AApplication_CMain {
+ Structure {
+ ActorRef test : ADerived
+ }
+ }
+
+ ActorClass ATest {
+ Interface {
+ Port fct : PTest1
+ }
+ Structure {
+ external Port fct
+ Port sub : PTest2
+ SAP timer: PTimer
+ SAP timeout: PTimeout
+ }
+ Behavior {
+ StateMachine {
+ State State1 {}
+ State State2 {}
+ State State3 {
+ subgraph {
+ State State1 {}
+ State State2 {}
+ State State3 {}
+ EntryPoint tp1
+ TransitionPoint tp2
+ ExitPoint tp3
+ handler TransitionPoint tp5
+ Transition tr0: initial -> State1 {}
+ Transition tr1: my tp1 -> State3 {}
+ Transition tr2: State1 -> State2 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: State2 -> State3 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr4: State3 -> State1 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr5: my tp2 -> State3 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr6: State3 -> my tp3 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr7: my tp5 -> my tp5 {
+ triggers {
+ <timeoutTick:timeout>
+ }
+ }
+ }
+ }
+ State State4 {}
+ TransitionPoint tp0
+ TransitionPoint tp1
+ ChoicePoint CP1
+ Transition tr0: initial -> State1 {}
+ Transition tr1: State1 -> State2 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr2: State2 -> cp CP1 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: cp CP1 -> State1 {}
+ Transition tr4: cp CP1 -> State3 {
+ cond {
+ "data==2"
+ }
+ }
+ Transition tr5: my tp0 -> tp1 of State3 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr6: cp CP1 -> State4 {
+ cond {
+ "data==3"
+ }
+ }
+ Transition tr7: tp3 of State3 -> State2 {}
+ Transition tr8: State3 -> State2 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr9: my tp1 -> State2 {
+ triggers {
+ <timerTick:timer>
+ }
+ }
+ }
+ }
+ }
+
+ ActorClass ADerived extends ATest {
+ Interface {
+ Port port : PTest3
+ }
+ Structure {
+ external Port port
+ SAP timer: PTimer
+ SAP timeout: PTimeout
+ }
+ Behavior {
+ StateMachine {
+ RefinedState State3 {
+ subgraph {
+ State State4 {}
+ EntryPoint tp6
+ TransitionPoint tp7
+ Transition tr8: my tp6 -> State2 {}
+ Transition tr9: my tp7 -> my tp7 {
+ triggers {
+ <z:sub>
+ }
+ }
+ Transition tr10: State2 -> State4 {
+ triggers {
+ <y:sub>
+ }
+ }
+ Transition tr11: State4 -> my tp3 {
+ triggers {
+ <z:sub>
+ }
+ }
+ }
+ }
+ RefinedState State4 {
+ subgraph {
+ State State1 {}
+ State State2 {}
+ Transition tr0: initial -> State1 {}
+ Transition tr1: State1 -> State2 {
+ triggers {
+ <a:port>
+ }
+ }
+ }
+ }
+ State State5 {}
+ Transition tr10: State1 -> State5 {
+ triggers {
+ <a:port>
+ }
+ }
+ Transition tr11: cp CP1 -> State5 {
+ cond {
+ "data==4"
+ }
+ }
+ Transition tr12: State5 -> tp6 of State3 {
+ triggers {
+ <a:port>
+ }
+ }
+ }
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/states_inheritance.t.room b/tests/org.eclipse.etrice.generator.tests/models/states_inheritance.t.room
new file mode 100644
index 000000000..adb74c9ae
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/states_inheritance.t.room
@@ -0,0 +1,222 @@
+RoomModel states_inheritance.t {
+
+ import room.basic.service.timing.*
+
+ ProtocolClass PTest1 {
+ incoming {
+ Message a ()
+ Message b (x : int32)
+ Message c ()
+ }
+ outgoing {
+ Message x ()
+ }
+ }
+
+ ProtocolClass PTest2 {
+ incoming {
+ Message x ()
+ Message y ()
+ Message z ()
+ }
+ outgoing {
+ Message a ()
+ }
+ }
+
+ ProtocolClass PTest3 {
+ incoming {
+ Message a ()
+ }
+ outgoing {
+ Message b ()
+ }
+ }
+
+ LogicalSystem SystemMain {
+ SubSystemRef subsystem : SubSystemMain
+ }
+
+ SubSystemClass SubSystemMain {
+ ActorRef application : App_SubSystemMain
+ ActorRef services : ATimingService
+
+ LayerConnection sub_actor application satisfied_by services.timer
+ LayerConnection sub_actor application satisfied_by services.timeout
+ }
+
+ // automatically inserted App_SubSystemMain
+ ActorClass App_SubSystemMain {
+ Structure {
+ ActorRef derived : ADerived
+ }
+ }
+
+ ActorClass ATest {
+ Interface {
+ Port fct : PTest1
+ }
+ Structure {
+ external Port fct
+ Port sub : PTest2
+ SAP timer: PTimer
+ SAP timeout: PTimeout
+ }
+ Behavior {
+ StateMachine {
+ State State1 {}
+ State State2 {}
+ State State3 {
+ subgraph {
+ State State1 {}
+ State State2 {}
+ State State3 {}
+ EntryPoint tp1
+ TransitionPoint tp2
+ ExitPoint tp3
+ handler TransitionPoint tp5
+ Transition tr0: initial -> State1 {}
+ Transition tr1: my tp1 -> State3 {}
+ Transition tr2: State1 -> State2 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: State2 -> State3 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr4: State3 -> State1 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr5: my tp2 -> State3 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr6: State3 -> my tp3 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr7: my tp5 -> my tp5 {
+ triggers {
+ <timeoutTick:timeout>
+ }
+ }
+ }
+ }
+ State State4 {}
+ TransitionPoint tp0
+ TransitionPoint tp1
+ ChoicePoint CP1
+ Transition tr0: initial -> State1 {}
+ Transition tr1: State1 -> State2 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr2: State2 -> cp CP1 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: cp CP1 -> State1 {}
+ Transition tr4: cp CP1 -> State3 {
+ cond {
+ "data==2"
+ }
+ }
+ Transition tr5: my tp0 -> tp1 of State3 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr6: cp CP1 -> State4 {
+ cond {
+ "data==3"
+ }
+ }
+ Transition tr7: tp3 of State3 -> State2 {}
+ Transition tr8: State3 -> State2 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr9: my tp1 -> State2 {
+ triggers {
+ <timerTick:timer>
+ }
+ }
+ }
+ }
+ }
+
+ ActorClass ADerived extends ATest {
+ Interface {
+ Port port : PTest3
+ }
+ Structure {
+ external Port port
+ }
+ Behavior {
+ StateMachine {
+ RefinedState State3 {
+ subgraph {
+ State State4 {}
+ EntryPoint tp6
+ TransitionPoint tp7
+ Transition tr8: my tp6 -> State2 {}
+ Transition tr9: my tp7 -> my tp7 {
+ triggers {
+ <z:sub>
+ }
+ }
+ Transition tr10: State2 -> State4 {
+ triggers {
+ <y:sub>
+ }
+ }
+ Transition tr11: State4 -> my tp3 {
+ triggers {
+ <z:sub>
+ }
+ }
+ }
+ }
+ RefinedState State4 {
+ subgraph {
+ State State1 {}
+ State State2 {}
+ Transition tr0: initial -> State1 {}
+ Transition tr1: State1 -> State2 {
+ triggers {
+ <a:port>
+ }
+ }
+ }
+ }
+ State State5 {}
+ Transition tr10: State1 -> State5 {
+ triggers {
+ <a:port>
+ }
+ }
+ Transition tr11: cp CP1 -> State5 {
+ cond {
+ "data==4"
+ }
+ }
+ Transition tr12: State5 -> tp6 of State3 {
+ triggers {
+ <a:port>
+ }
+ }
+ }
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/states_inheritance.t.trp b/tests/org.eclipse.etrice.generator.tests/models/states_inheritance.t.trp
new file mode 100644
index 000000000..2344d9d9b
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/states_inheritance.t.trp
@@ -0,0 +1,5243 @@
+114
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_DataClassList
+-bs_DataClassList
+1
+-DataClass
+0
+1286376755
+0
+t
+<20101006165926-2
+-bs_RefCounter
+0
+<20101006165926-3
+-bs_DataClass
+3
+-boolean
+f
+f
+0
+1286376755
+0
+1
+5
+13
+t
+<20101006165926-4
+-bs_RefCounter
+0
+<20101006165926-5
+-bs_DataClass
+3
+-char
+f
+f
+0
+1286376755
+0
+1
+5
+7
+t
+<20101006165926-6
+-bs_RefCounter
+0
+<20101006165926-7
+-bs_DataClass
+3
+-uchar
+f
+f
+0
+1286376755
+0
+1
+5
+14
+t
+<20101006165926-8
+-bs_RefCounter
+0
+<20101006165926-9
+-bs_DataClass
+3
+-int8
+f
+f
+0
+1286376755
+0
+1
+5
+15
+t
+<20101006165926-10
+-bs_RefCounter
+0
+<20101006165926-11
+-bs_DataClass
+3
+-uint8
+f
+f
+0
+1286376755
+0
+1
+5
+18
+t
+<20101006165926-12
+-bs_RefCounter
+0
+<20101006165926-13
+-bs_DataClass
+3
+-int16
+f
+f
+0
+1286376755
+0
+1
+5
+16
+t
+<20101006165926-14
+-bs_RefCounter
+0
+<20101006165926-15
+-bs_DataClass
+3
+-uint16
+f
+f
+0
+1286376755
+0
+1
+5
+19
+t
+<20101006165926-16
+-bs_RefCounter
+0
+<20101006165926-17
+-bs_DataClass
+3
+-int32
+f
+f
+0
+1286376755
+0
+1
+5
+17
+t
+<20101006165926-18
+-bs_RefCounter
+0
+<20101006165926-19
+-bs_DataClass
+3
+-uint32
+f
+f
+0
+1286376755
+0
+1
+5
+20
+t
+<20101006165926-20
+-bs_RefCounter
+0
+<20101006165926-21
+-bs_DataClass
+3
+-float32
+f
+f
+0
+1286376755
+0
+1
+5
+21
+t
+<20101006165926-22
+-bs_RefCounter
+0
+<20101006165926-23
+-bs_DataClass
+3
+-float64
+f
+f
+0
+1286376755
+0
+1
+5
+22
+t
+<20101006165926-24
+-bs_RefCounter
+0
+<20101006165926-25
+-bs_DataClass
+3
+-char*
+f
+f
+0
+1286376755
+0
+1
+5
+12
+-
+t
+<20101006165926-26
+-bs_RefCounter
+0
+<20101006165926-27
+-bs_DataClass
+3
+-void*
+f
+f
+0
+1286376755
+0
+1
+5
+12
+-
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ProtocolClassList
+-bs_ProtocolClassList
+1
+-ProtocolClass
+0
+1286459525
+0
+t
+<20101006165926-29
+-bs_RefCounter
+0
+<20101006165926-30
+-bs_ProtocolClass
+3
+-p_Timer
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-32
+-bs_RefCounter
+0
+<20101006165926-33
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286376755
+0
+>20101006165926-16
+>20101006165926-17
+t
+<20101006165926-34
+-bs_RefCounter
+0
+<20101006165926-35
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286376755
+0
+<20101006165926-36
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-38
+-bs_RefCounter
+0
+<20101006165926-39
+-bs_MsgType
+3
+-timerTick
+f
+f
+0
+1286376755
+0
+<20101006165926-40
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+t
+<20101006165926-43
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Start
+t
+<20101006165926-45
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Kill
+f
+t
+<20101006165926-48
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+1
+-timerTick
+f
+f
+f
+t
+<20101006165926-51
+-bs_RefCounter
+0
+<20101006165926-52
+-bs_ProtocolClass
+3
+-p_Timeout
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-54
+-bs_RefCounter
+0
+<20101006165926-55
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286376755
+0
+>20101006165926-16
+>20101006165926-17
+t
+<20101006165926-56
+-bs_RefCounter
+0
+<20101006165926-57
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286376755
+0
+<20101006165926-58
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-60
+-bs_RefCounter
+0
+<20101006165926-61
+-bs_MsgType
+3
+-timeoutTick
+f
+f
+0
+1286376755
+0
+<20101006165926-62
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+t
+<20101006165926-65
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Start
+t
+<20101006165926-67
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Kill
+f
+t
+<20101006165926-70
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+1
+-timeoutTick
+f
+f
+f
+t
+<20101006165926-73
+-bs_RefCounter
+0
+<20101006165926-74
+-bs_ProtocolClass
+3
+-p_DigitalInput
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-76
+-bs_RefCounter
+0
+<20101006165926-77
+-bs_MsgType
+3
+-getStatus
+f
+f
+0
+1286376755
+0
+<20101006165926-78
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-80
+-bs_RefCounter
+0
+<20101006165926-81
+-bs_MsgType
+3
+-inputChanged
+f
+f
+0
+1286376755
+0
+>20101006165926-12
+>20101006165926-13
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+t
+<20101006165926-84
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-getStatus
+t
+<20101006165926-86
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+1
+-inputChanged
+f
+f
+f
+t
+<20101006165926-89
+-bs_RefCounter
+0
+<20101006165926-90
+-bs_ProtocolClass
+3
+-p_DigitalOutput
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-92
+-bs_RefCounter
+0
+<20101006165926-93
+-bs_MsgType
+3
+-Set
+f
+f
+0
+1286376755
+0
+>20101006165926-2
+>20101006165926-3
+t
+<20101006165926-94
+-bs_RefCounter
+0
+<20101006165926-95
+-bs_MsgType
+3
+-SetOn
+f
+f
+0
+1286376755
+0
+<20101006165926-96
+-bs_RefCounter
+0
+N
+t
+<20101006165926-97
+-bs_RefCounter
+0
+<20101006165926-98
+-bs_MsgType
+3
+-SetOff
+f
+f
+0
+1286376755
+0
+<20101006165926-99
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+f
+t
+<20101006165926-103
+-bs_RefCounter
+0
+<20101006165926-104
+-bs_ProtocolClass
+3
+-PTest1
+f
+f
+0
+1286376836
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376856
+0
+t
+<20101006165926-106
+-bs_RefCounter
+0
+<20101006165926-107
+-bs_MsgType
+3
+-a
+f
+f
+0
+1286376832
+0
+<20101006165926-108
+-bs_RefCounter
+0
+N
+t
+<20101006165926-109
+-bs_RefCounter
+0
+<20101006165926-110
+-bs_MsgType
+3
+-b
+f
+f
+0
+1286376853
+0
+>20101006165926-16
+>20101006165926-17
+t
+<20101006165926-111
+-bs_RefCounter
+0
+<20101006165926-112
+-bs_MsgType
+3
+-c
+f
+f
+0
+1286376855
+0
+<20101006165926-113
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376836
+0
+t
+<20101006165926-115
+-bs_RefCounter
+0
+<20101006165926-116
+-bs_MsgType
+3
+-x
+f
+f
+0
+1286376835
+0
+<20101006165926-117
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286376824
+-ProtocolRuleSet
+0
+0
+1286376824
+f
+t
+<20101006181214-36
+-bs_RefCounter
+0
+<20101006181214-37
+-bs_ProtocolClass
+3
+-PTest2
+f
+f
+0
+1286381323
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286381323
+0
+t
+<20101006181214-39
+-bs_RefCounter
+0
+<20101006181214-40
+-bs_MsgType
+3
+-x
+f
+f
+0
+1286381314
+0
+<20101006181214-41
+-bs_RefCounter
+0
+N
+t
+<20101006181214-42
+-bs_RefCounter
+0
+<20101006181214-43
+-bs_MsgType
+3
+-y
+f
+f
+0
+1286381316
+0
+<20101006181214-44
+-bs_RefCounter
+0
+N
+t
+<20101006181214-45
+-bs_RefCounter
+0
+<20101006181214-46
+-bs_MsgType
+3
+-z
+f
+f
+0
+1286381317
+0
+<20101006181214-47
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286381323
+0
+t
+<20101006181214-49
+-bs_RefCounter
+0
+<20101006181214-50
+-bs_MsgType
+3
+-a
+f
+f
+0
+1286381321
+0
+<20101006181214-51
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286381308
+-ProtocolRuleSet
+0
+0
+1286381308
+f
+t
+<20101007155720-1
+-bs_RefCounter
+0
+<20101007155720-2
+-bs_ProtocolClass
+3
+-PTest3
+f
+f
+0
+1286459525
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286459525
+0
+t
+<20101007155720-4
+-bs_RefCounter
+0
+<20101007155720-5
+-bs_MsgType
+3
+-a
+f
+f
+0
+1286459520
+0
+<20101007155720-6
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286459525
+0
+t
+<20101007155720-8
+-bs_RefCounter
+0
+<20101007155720-9
+-bs_MsgType
+3
+-b
+f
+f
+0
+1286459523
+0
+<20101007155720-10
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286459512
+-ProtocolRuleSet
+0
+0
+1286459512
+f
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_SAPClassList
+-bs_SAPClassList
+1
+-SAP
+0
+1286376755
+0
+t
+<20101006165926-121
+-bs_RefCounter
+0
+<20101006165926-122
+-bs_SAPClass
+3
+-Timer
+f
+f
+0
+1286376755
+0
+1
+0
+1
+>20101006165926-29
+>20101006165926-30
+t
+<20101006165926-123
+-bs_RefCounter
+0
+<20101006165926-124
+-bs_SAPClass
+3
+-Timeout
+f
+f
+0
+1286376755
+0
+1
+0
+2
+>20101006165926-51
+>20101006165926-52
+t
+<20101006165926-125
+-bs_RefCounter
+0
+<20101006165926-126
+-bs_SAPClass
+3
+-DigitalInput
+f
+f
+0
+1286376755
+0
+1
+0
+4
+>20101006165926-73
+>20101006165926-74
+t
+<20101006165926-127
+-bs_RefCounter
+0
+<20101006165926-128
+-bs_SAPClass
+3
+-DigitalOutput
+f
+f
+0
+1286376755
+0
+1
+0
+5
+>20101006165926-89
+>20101006165926-90
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_PrtvClassList
+-bs_PrtvClassList
+1
+-PrimitiveClass
+0
+1286376755
+0
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ActorClassList
+-bs_ActorClassList
+1
+-ActorClass
+0
+1286459528
+0
+t
+<20101006165926-131
+-bs_RefCounter
+0
+<20101006165926-132
+-bs_ActorClass
+3
+-SubSystemMain
+f
+f
+0
+1288949083
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286376763
+0
+f
+0
+0
+1286376763
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286376763
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1288949083
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286462127
+0
+t
+<20101007163532-1
+-bs_RefCounter
+0
+<20101007163532-2
+-bs_ActorRef
+3
+-derived
+f
+f
+0
+1286462127
+1
+-bs_ActorCoord
+0
+0.372639
+0.636875
+-bs_SizeFactors
+0
+3
+1
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286462127
+0
+f
+3
+-ADerived
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286376763
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376763
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286376763
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286376763
+0
+f
+0
+1286376763
+-bs_ActorBehaviour
+7
+<20101006165926-150
+-bs_RefCounter
+0
+<20101006165926-151
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286376763
+5
+f
+-bs_StateGraph
+8
+<20101006165926-154
+-bs_RefCounter
+0
+<20101006165926-155
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286376763
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286376763
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286376763
+0
+f
+-bs_StateList
+1
+-State
+0
+1286376763
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286376763
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286376763
+0
+f
+t
+65535
+f
+f
+0
+1286376763
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286376763
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376763
+0
+1286376763
+-bs_ActorMemberFct
+1
+f
+0
+1286376763
+t
+f
+f
+t
+<20101006165926-165
+-bs_RefCounter
+0
+<20101006165926-166
+-bs_ActorClass
+3
+-ATest
+f
+f
+0
+1286381382
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286381439
+0
+t
+<20101006165926-169
+-bs_RefCounter
+0
+<20101006165926-170
+-bs_PortRef
+3
+-fct
+f
+f
+0
+1286376845
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.393333
+1
+>20101006165926-103
+>20101006165926-104
+f
+0
+0
+1286376770
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286381340
+0
+t
+>20101006165926-169
+>20101006165926-170
+t
+<20101006181214-88
+-bs_RefCounter
+0
+<20101006181214-89
+-bs_PortRef
+3
+-sub
+f
+f
+0
+1286381454
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.372778
+0.477625
+>20101006181214-36
+>20101006181214-37
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286381382
+0
+t
+<20101006181214-92
+-bs_RefCounter
+0
+<20101006181214-93
+-bs_SAPRef
+3
+-timer
+f
+f
+0
+1286381382
+0
+0
+>20101006165926-121
+>20101006165926-122
+1
+t
+<20101006181214-94
+-bs_RefCounter
+0
+<20101006181214-95
+-bs_SAPRef
+3
+-timeout
+f
+f
+0
+1286381382
+0
+0
+>20101006165926-123
+>20101006165926-124
+1
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286376770
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286376770
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376770
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286376770
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286376770
+0
+f
+0
+1286376770
+-bs_ActorBehaviour
+7
+<20101006165926-182
+-bs_RefCounter
+0
+<20101006165926-183
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286376770
+5
+f
+-bs_StateGraph
+8
+<20101006165926-186
+-bs_RefCounter
+0
+<20101006165926-187
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286376770
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286376770
+0
+t
+<20101006165926-190
+-bs_RefCounter
+0
+<20101006165926-191
+-bs_Choicepoint
+3
+-CP1
+f
+f
+0
+1286377205
+2
+-bs_CPBranchList
+1
+-CPBranchListDummyName
+0
+1286376897
+0
+t
+<20101006165926-193
+-bs_RefCounter
+0
+<20101006165926-194
+-bs_CPBranch
+3
+-[data==2]
+f
+f
+0
+1286376916
+1
+t
+<20101006170015-1
+-bs_RefCounter
+0
+<20101006170015-2
+-bs_CPBranch
+3
+-[data==3]
+f
+f
+0
+1286377199
+1
+f
+<20101006165926-195
+-bs_RefCounter
+0
+<20101006165926-196
+-bs_CPBranch
+3
+-
+f
+f
+0
+1286376909
+1
+-bs_ContextCoord
+0
+0.576825
+0.610317
+8
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286376770
+0
+t
+<20101006165926-199
+-bs_RefCounter
+0
+<20101006165926-200
+-bs_TrPoint
+3
+-TrP1
+f
+f
+0
+1286376892
+1
+0
+-1
+-bs_ContextCoord
+0
+1
+0.698889
+9
+t
+<20101006181214-111
+-bs_RefCounter
+0
+<20101006181214-112
+-bs_TrPoint
+3
+-TrP2
+f
+f
+0
+1286381401
+1
+0
+-1
+-bs_ContextCoord
+0
+0.175159
+0
+10
+f
+-bs_StateList
+1
+-State
+0
+1286376770
+0
+t
+<20101006165926-203
+-bs_RefCounter
+0
+<20101006165926-204
+-bs_State
+3
+-State1
+f
+f
+0
+1286376871
+5
+-
+-
+-1
+-1
+<20101006165926-205
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.407381
+0.802619
+-bs_SizeFactors
+0
+1
+1
+f
+f
+1
+-1
+t
+<20101006165926-208
+-bs_RefCounter
+0
+<20101006165926-209
+-bs_State
+3
+-State2
+f
+f
+0
+1286376875
+5
+-
+-
+-1
+-1
+<20101006165926-210
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.432698
+0.405397
+-bs_SizeFactors
+0
+1
+1
+f
+f
+2
+-1
+t
+<20101006165926-213
+-bs_RefCounter
+0
+<20101006165926-214
+-bs_State
+3
+-State3
+f
+f
+0
+1286376881
+5
+-
+-
+-1
+-1
+<20101006165926-215
+-bs_RefCounter
+0
+<20101006165926-216
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286376981
+5
+f
+-bs_StateGraph
+8
+<20101006165926-219
+-bs_RefCounter
+0
+<20101006165926-220
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286376981
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286376981
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286376981
+0
+t
+<20101006165926-224
+-bs_RefCounter
+0
+<20101006165926-225
+-bs_TrPoint
+3
+-TrP1
+f
+f
+0
+1286376981
+1
+1
+4
+-bs_ContextCoord
+0
+0.0389161
+1
+11
+t
+<20101006165926-227
+-bs_RefCounter
+0
+<20101006165926-228
+-bs_TrPoint
+3
+-TrP2
+f
+f
+0
+1286376981
+1
+1
+5
+-bs_ContextCoord
+0
+0.929832
+1
+12
+t
+<20101006170448-1
+-bs_RefCounter
+0
+<20101006170448-2
+-bs_TrPoint
+3
+-TrP3
+f
+f
+0
+1286377368
+1
+0
+-1
+-bs_ContextCoord
+0
+1
+0.281508
+13
+t
+<20101006170448-4
+-bs_RefCounter
+0
+<20101006170448-5
+-bs_TrPoint
+3
+-TrP412863773960
+f
+f
+0
+1286377396
+1
+2
+7
+-bs_ContextCoord
+0
+0.230692
+0
+14
+t
+<20101006170448-7
+-bs_RefCounter
+0
+<20101006170448-8
+-bs_TrPoint
+3
+-TrP412863774570
+f
+f
+0
+1286377457
+1
+2
+8
+-bs_ContextCoord
+0
+0
+0.48431
+15
+t
+<20101006181214-129
+-bs_RefCounter
+0
+<20101006181214-130
+-bs_TrPoint
+3
+-TrP4
+f
+f
+0
+1286381511
+1
+3
+-1
+-bs_ContextCoord
+0
+0.543968
+1
+16
+f
+-bs_StateList
+1
+-State
+0
+1286376981
+0
+t
+<20101006165926-231
+-bs_RefCounter
+0
+<20101006165926-232
+-bs_State
+3
+-State1
+f
+f
+0
+1286376987
+5
+-
+-
+-1
+-1
+<20101006165926-233
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.457937
+0.751984
+-bs_SizeFactors
+0
+1
+1
+f
+f
+5
+-1
+t
+<20101006165926-236
+-bs_RefCounter
+0
+<20101006165926-237
+-bs_State
+3
+-State2
+f
+f
+0
+1286376992
+5
+-
+-
+-1
+-1
+<20101006165926-238
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.222698
+0.407937
+-bs_SizeFactors
+0
+1
+1
+f
+f
+6
+-1
+t
+<20101006165926-241
+-bs_RefCounter
+0
+<20101006165926-242
+-bs_State
+3
+-State3
+f
+f
+0
+1286376994
+5
+-
+-
+-1
+-1
+<20101006165926-243
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.73373
+0.387698
+-bs_SizeFactors
+0
+1
+1
+f
+f
+7
+-1
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286376981
+0
+t
+<20101006165926-247
+-bs_RefCounter
+0
+<20101006165926-248
+-bs_TrSegment
+3
+-init
+f
+f
+0
+1286376999
+5
+0
+>20101006165926-220
+1
+>20101006165926-232
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376999
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.263968
+0.840992
+10
+-1
+t
+<20101006165926-251
+-bs_RefCounter
+0
+<20101006165926-252
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377002
+5
+3
+>20101006165926-228
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377002
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.831781
+0.693849
+11
+-1
+t
+<20101006165926-255
+-bs_RefCounter
+0
+<20101006165926-256
+-bs_TrSegment
+3
+-b
+f
+f
+0
+1286377019
+5
+1
+>20101006165926-232
+1
+>20101006165926-237
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377003
+0
+t
+<20101006165926-258
+-bs_RefCounter
+0
+<20101006165926-259
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286377019
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.340317
+0.57996
+12
+-1
+t
+<20101006165926-261
+-bs_RefCounter
+0
+<20101006165926-262
+-bs_TrSegment
+3
+-c
+f
+f
+0
+1286377027
+5
+1
+>20101006165926-237
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377004
+0
+t
+<20101006165926-264
+-bs_RefCounter
+0
+<20101006165926-265
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377027
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.478214
+0.397817
+13
+-1
+t
+<20101006165926-267
+-bs_RefCounter
+0
+<20101006165926-268
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286377035
+5
+1
+>20101006165926-242
+1
+>20101006165926-232
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377006
+0
+t
+<20101006165926-270
+-bs_RefCounter
+0
+<20101006165926-271
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286377035
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.595833
+0.569841
+14
+-1
+t
+<20101006170448-10
+-bs_RefCounter
+0
+<20101006170448-11
+-bs_TrSegment
+3
+-b
+f
+f
+0
+1286377388
+5
+3
+>20101006170448-2
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377372
+0
+t
+<20101006170448-13
+-bs_RefCounter
+0
+<20101006170448-14
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286377388
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.866865
+0.334603
+15
+-1
+t
+<20101006170448-16
+-bs_RefCounter
+0
+<20101006170448-17
+-bs_TrSegment
+3
+-c
+f
+f
+0
+1286377447
+5
+1
+>20101006165926-242
+3
+>20101006170448-5
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377422
+0
+t
+<20101006170448-19
+-bs_RefCounter
+0
+<20101006170448-20
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377447
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.482211
+0.193849
+16
+-1
+t
+<20101006181214-154
+-bs_RefCounter
+0
+<20101006181214-155
+-bs_TrSegment
+3
+-timeoutTick
+f
+f
+0
+1286381509
+5
+3
+>20101006181214-130
+3
+>20101006181214-130
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286381498
+0
+t
+<20101006181214-157
+-bs_RefCounter
+0
+<20101006181214-158
+-bs_SimpleTriggerSpec
+3
+-timeoutTick
+f
+f
+0
+1286381509
+1
+-timeout
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.612302
+0.845556
+17
+-1
+f
+-bs_NoteList
+1
+-Note
+0
+1286376981
+0
+f
+t
+65535
+f
+f
+0
+1286381498
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286376981
+-bs_ContextCoord
+0
+0.756429
+0.415556
+-bs_SizeFactors
+0
+1
+1
+f
+f
+3
+-1
+t
+<20101006170015-3
+-bs_RefCounter
+0
+<20101006170015-4
+-bs_State
+3
+-State4
+f
+f
+0
+1286377183
+5
+-
+-
+-1
+-1
+<20101007163532-6
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.751429
+0.830397
+-bs_SizeFactors
+0
+1
+1
+f
+f
+4
+-1
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286376770
+0
+t
+<20101006165926-278
+-bs_RefCounter
+0
+<20101006165926-279
+-bs_TrSegment
+3
+-init
+f
+f
+0
+1286376902
+5
+0
+>20101006165926-187
+1
+>20101006165926-204
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376902
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.23869
+0.86631
+0
+-1
+t
+<20101006165926-282
+-bs_RefCounter
+0
+<20101006165926-283
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286376941
+5
+1
+>20101006165926-204
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376904
+0
+t
+<20101006165926-285
+-bs_RefCounter
+0
+<20101006165926-286
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286376941
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.42004
+0.604008
+1
+-1
+t
+<20101006165926-288
+-bs_RefCounter
+0
+<20101006165926-289
+-bs_TrSegment
+3
+-b
+f
+f
+0
+1286376947
+5
+1
+>20101006165926-209
+2
+>20101006165926-191
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376906
+0
+t
+<20101006165926-291
+-bs_RefCounter
+0
+<20101006165926-292
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286376947
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.504762
+0.507857
+2
+-1
+t
+<20101006165926-294
+-bs_RefCounter
+0
+<20101006165926-295
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286376909
+5
+2
+>20101006165926-196
+1
+>20101006165926-204
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376909
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.492103
+0.706468
+3
+-1
+t
+<20101006165926-298
+-bs_RefCounter
+0
+<20101006165926-299
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377205
+5
+2
+>20101006165926-194
+1
+>20101006165926-214
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376916
+0
+t
+<20101006170015-8
+-bs_RefCounter
+0
+<20101006170015-9
+-bs_SimpleTriggerSpec
+3
+-
+f
+f
+0
+1286377205
+1
+-
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.666627
+0.512937
+4
+-1
+t
+<20101006165926-302
+-bs_RefCounter
+0
+<20101006165926-303
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286377483
+5
+3
+>20101006165926-200
+1
+>20101006165926-214
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376931
+0
+t
+<20101006170448-22
+-bs_RefCounter
+0
+<20101006170448-23
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286377483
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.878214
+0.557222
+5
+-1
+t
+<20101006170015-10
+-bs_RefCounter
+0
+<20101006170015-11
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377199
+5
+2
+>20101006170015-2
+1
+>20101006170015-4
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377199
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.664127
+0.720357
+6
+-1
+t
+<20101006170448-24
+-bs_RefCounter
+0
+<20101006170448-25
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377403
+5
+1
+>20101006165926-214
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377396
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.650159
+0.218254
+7
+-1
+t
+<20101006170448-28
+-bs_RefCounter
+0
+<20101006170448-29
+-bs_TrSegment
+3
+-c
+f
+f
+0
+1286377468
+5
+1
+>20101006165926-214
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377457
+0
+t
+<20101006170448-31
+-bs_RefCounter
+0
+<20101006170448-32
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377468
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.594563
+0.410476
+8
+-1
+t
+<20101006181214-185
+-bs_RefCounter
+0
+<20101006181214-186
+-bs_TrSegment
+3
+-timerTick
+f
+f
+0
+1286381416
+5
+3
+>20101006181214-112
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286381405
+0
+t
+<20101006181214-188
+-bs_RefCounter
+0
+<20101006181214-189
+-bs_SimpleTriggerSpec
+3
+-timerTick
+f
+f
+0
+1286381416
+1
+-timer
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.303928
+0.202699
+9
+-1
+f
+-bs_NoteList
+1
+-Note
+0
+1286376770
+0
+f
+t
+65535
+f
+f
+0
+1286381405
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286376770
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376770
+0
+1286376770
+-bs_ActorMemberFct
+1
+f
+0
+1286376770
+t
+f
+f
+t
+<20101007155720-14
+-bs_RefCounter
+0
+<20101007155720-15
+-bs_ActorClass
+3
+-ADerived
+f
+f
+0
+1286459536
+0
+0
+8
+-ATest
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286459562
+0
+t
+>20101006165926-169
+>20101006165926-170
+t
+<20101007155720-18
+-bs_RefCounter
+0
+<20101007155720-19
+-bs_PortRef
+3
+-port
+f
+f
+0
+1286459562
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.644236
+1
+>20101007155720-1
+>20101007155720-2
+f
+0
+0
+1286459528
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286459562
+0
+t
+>20101006165926-169
+>20101006165926-170
+t
+>20101006181214-88
+>20101006181214-89
+t
+>20101007155720-18
+>20101007155720-19
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286459528
+0
+t
+>20101006181214-92
+>20101006181214-93
+t
+>20101006181214-94
+>20101006181214-95
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286459528
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286459528
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286459528
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286459528
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286459528
+0
+f
+0
+1286459528
+-bs_ActorBehaviour
+7
+<20101007155720-31
+-bs_RefCounter
+0
+<20101007155720-32
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286459528
+5
+f
+-bs_StateGraph
+8
+<20101007155720-35
+-bs_RefCounter
+0
+<20101007155720-36
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286459528
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286459528
+0
+t
+<20101007155720-39
+-bs_RefCounter
+0
+<20101006165926-191
+-bs_Choicepoint
+3
+-CP1
+f
+t
+0
+1286459696
+2
+-bs_CPBranchList
+1
+-CPBranchListDummyName
+0
+1286376897
+0
+t
+<20101006165926-193
+-bs_RefCounter
+0
+<20101006165926-194
+-bs_CPBranch
+3
+-[data==2]
+f
+f
+0
+1286376916
+1
+t
+<20101006170015-1
+-bs_RefCounter
+0
+<20101006170015-2
+-bs_CPBranch
+3
+-[data==3]
+f
+f
+0
+1286377199
+1
+t
+<20101007155720-40
+-bs_RefCounter
+0
+<20101007155720-41
+-bs_CPBranch
+3
+-[data==4]
+f
+f
+0
+1286459696
+1
+f
+<20101006165926-195
+-bs_RefCounter
+0
+<20101006165926-196
+-bs_CPBranch
+3
+-
+f
+f
+0
+1286376909
+1
+-bs_ContextCoord
+0
+0.576825
+0.610317
+12
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286459528
+0
+t
+<20101007155720-43
+-bs_RefCounter
+0
+<20101006165926-200
+-bs_TrPoint
+3
+-TrP1
+f
+t
+0
+1286376892
+1
+0
+-1
+-bs_ContextCoord
+0
+1
+0.698889
+13
+t
+<20101007155720-44
+-bs_RefCounter
+0
+<20101006181214-112
+-bs_TrPoint
+3
+-TrP2
+f
+t
+0
+1286381401
+1
+0
+-1
+-bs_ContextCoord
+0
+0.175159
+0
+14
+f
+-bs_StateList
+1
+-State
+0
+1286459528
+0
+t
+<20101007155720-46
+-bs_RefCounter
+0
+<20101006165926-204
+-bs_State
+3
+-State1
+f
+t
+0
+1286376871
+5
+-
+-
+-1
+-1
+>20101006165926-205
+N
+-bs_ContextCoord
+0
+0.407381
+0.802619
+-bs_SizeFactors
+0
+1
+1
+f
+f
+1
+1
+t
+<20101007155720-47
+-bs_RefCounter
+0
+<20101006165926-209
+-bs_State
+3
+-State2
+f
+t
+0
+1286376875
+5
+-
+-
+-1
+-1
+>20101006165926-210
+N
+-bs_ContextCoord
+0
+0.432698
+0.405397
+-bs_SizeFactors
+0
+1
+1
+f
+f
+2
+2
+t
+<20101007155720-48
+-bs_RefCounter
+0
+<20101006165926-214
+-bs_State
+3
+-State3
+f
+t
+0
+1286376881
+5
+-
+-
+-1
+-1
+<20101006165926-215
+-bs_RefCounter
+0
+<20101006165926-216
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286376981
+5
+f
+-bs_StateGraph
+8
+<20101006165926-219
+-bs_RefCounter
+0
+<20101006165926-220
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286376981
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286376981
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286376981
+0
+t
+<20101006165926-224
+-bs_RefCounter
+0
+<20101006165926-225
+-bs_TrPoint
+3
+-TrP1
+f
+t
+0
+1286376981
+1
+1
+4
+-bs_ContextCoord
+0
+0.0389161
+1
+15
+t
+<20101006165926-227
+-bs_RefCounter
+0
+<20101006165926-228
+-bs_TrPoint
+3
+-TrP2
+f
+t
+0
+1286376981
+1
+1
+5
+-bs_ContextCoord
+0
+0.929832
+1
+16
+t
+<20101006170448-1
+-bs_RefCounter
+0
+<20101006170448-2
+-bs_TrPoint
+3
+-TrP3
+f
+t
+0
+1286377368
+1
+0
+-1
+-bs_ContextCoord
+0
+1
+0.281508
+17
+t
+<20101006170448-4
+-bs_RefCounter
+0
+<20101006170448-5
+-bs_TrPoint
+3
+-TrP412863773960
+f
+t
+0
+1286377396
+1
+2
+7
+-bs_ContextCoord
+0
+0.230692
+0
+18
+t
+<20101006170448-7
+-bs_RefCounter
+0
+<20101006170448-8
+-bs_TrPoint
+3
+-TrP412863774570
+f
+t
+0
+1286377457
+1
+2
+8
+-bs_ContextCoord
+0
+0
+0.48431
+19
+t
+<20101006181214-129
+-bs_RefCounter
+0
+<20101006181214-130
+-bs_TrPoint
+3
+-TrP4
+f
+t
+0
+1286381511
+1
+3
+-1
+-bs_ContextCoord
+0
+0.543968
+1
+20
+t
+<20101007155720-49
+-bs_RefCounter
+0
+<20101007155720-50
+-bs_TrPoint
+3
+-TrP512864597290
+f
+f
+0
+1286459729
+1
+1
+12
+-bs_ContextCoord
+0
+0
+0.705057
+21
+t
+<20101007155720-52
+-bs_RefCounter
+0
+<20101007155720-53
+-bs_TrPoint
+3
+-TrP5
+f
+f
+0
+1286459758
+1
+0
+-1
+-bs_ContextCoord
+0
+0.796905
+0
+22
+f
+-bs_StateList
+1
+-State
+0
+1286376981
+0
+t
+<20101006165926-231
+-bs_RefCounter
+0
+<20101006165926-232
+-bs_State
+3
+-State1
+f
+t
+0
+1286376987
+5
+-
+-
+-1
+-1
+>20101006165926-233
+N
+-bs_ContextCoord
+0
+0.457937
+0.751984
+-bs_SizeFactors
+0
+1
+1
+f
+f
+6
+5
+t
+<20101006165926-236
+-bs_RefCounter
+0
+<20101006165926-237
+-bs_State
+3
+-State2
+f
+t
+0
+1286376992
+5
+-
+-
+-1
+-1
+>20101006165926-238
+N
+-bs_ContextCoord
+0
+0.222698
+0.407937
+-bs_SizeFactors
+0
+1
+1
+f
+f
+7
+6
+t
+<20101006165926-241
+-bs_RefCounter
+0
+<20101006165926-242
+-bs_State
+3
+-State3
+f
+t
+0
+1286376994
+5
+-
+-
+-1
+-1
+>20101006165926-243
+N
+-bs_ContextCoord
+0
+0.73373
+0.387698
+-bs_SizeFactors
+0
+1
+1
+f
+f
+8
+7
+t
+<20101007155720-55
+-bs_RefCounter
+0
+<20101007155720-56
+-bs_State
+3
+-State4
+f
+f
+0
+1286459792
+5
+-
+-
+-1
+-1
+<20101007155720-57
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.224365
+0.279921
+-bs_SizeFactors
+0
+1
+1
+f
+f
+9
+-1
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286376981
+0
+t
+<20101006165926-247
+-bs_RefCounter
+0
+<20101006165926-248
+-bs_TrSegment
+3
+-init
+f
+t
+0
+1286376999
+5
+0
+>20101006165926-220
+1
+>20101006165926-232
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376999
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.263968
+0.840992
+13
+10
+t
+<20101006165926-251
+-bs_RefCounter
+0
+<20101006165926-252
+-bs_TrSegment
+3
+-
+f
+t
+0
+1286377002
+5
+3
+>20101006165926-228
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377002
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.831781
+0.693849
+14
+11
+t
+<20101006165926-255
+-bs_RefCounter
+0
+<20101006165926-256
+-bs_TrSegment
+3
+-b
+f
+t
+0
+1286377019
+5
+1
+>20101006165926-232
+1
+>20101006165926-237
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377003
+0
+t
+<20101006165926-258
+-bs_RefCounter
+0
+<20101006165926-259
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286377019
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.340317
+0.57996
+15
+12
+t
+<20101006165926-261
+-bs_RefCounter
+0
+<20101006165926-262
+-bs_TrSegment
+3
+-c
+f
+t
+0
+1286377027
+5
+1
+>20101006165926-237
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377004
+0
+t
+<20101006165926-264
+-bs_RefCounter
+0
+<20101006165926-265
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377027
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.478214
+0.397817
+16
+13
+t
+<20101006165926-267
+-bs_RefCounter
+0
+<20101006165926-268
+-bs_TrSegment
+3
+-a
+f
+t
+0
+1286377035
+5
+1
+>20101006165926-242
+1
+>20101006165926-232
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377006
+0
+t
+<20101006165926-270
+-bs_RefCounter
+0
+<20101006165926-271
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286377035
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.595833
+0.569841
+17
+14
+t
+<20101006170448-10
+-bs_RefCounter
+0
+<20101006170448-11
+-bs_TrSegment
+3
+-b
+f
+t
+0
+1286377388
+5
+3
+>20101006170448-2
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377372
+0
+t
+<20101006170448-13
+-bs_RefCounter
+0
+<20101006170448-14
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286377388
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.866865
+0.334603
+18
+15
+t
+<20101006170448-16
+-bs_RefCounter
+0
+<20101006170448-17
+-bs_TrSegment
+3
+-c
+f
+t
+0
+1286377447
+5
+1
+>20101006165926-242
+3
+>20101006170448-5
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377422
+0
+t
+<20101006170448-19
+-bs_RefCounter
+0
+<20101006170448-20
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377447
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.482211
+0.193849
+19
+16
+t
+<20101006181214-154
+-bs_RefCounter
+0
+<20101006181214-155
+-bs_TrSegment
+3
+-timeoutTick
+f
+t
+0
+1286381509
+5
+3
+>20101006181214-130
+3
+>20101006181214-130
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286381498
+0
+t
+<20101006181214-157
+-bs_RefCounter
+0
+<20101006181214-158
+-bs_SimpleTriggerSpec
+3
+-timeoutTick
+f
+f
+0
+1286381509
+1
+-timeout
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.612302
+0.845556
+20
+17
+t
+<20101007155720-60
+-bs_RefCounter
+0
+<20101007155720-61
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286459745
+5
+3
+>20101007155720-50
+1
+>20101006165926-237
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286459745
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.111349
+0.556497
+21
+-1
+t
+<20101007155720-64
+-bs_RefCounter
+0
+<20101007155720-65
+-bs_TrSegment
+3
+-z
+f
+f
+0
+1286459775
+5
+3
+>20101007155720-53
+3
+>20101007155720-53
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286459765
+0
+t
+<20101007155720-67
+-bs_RefCounter
+0
+<20101007155720-68
+-bs_SimpleTriggerSpec
+3
+-z
+f
+f
+0
+1286459775
+1
+-sub
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.748889
+0.225476
+22
+-1
+t
+<20101007155720-70
+-bs_RefCounter
+0
+<20101007155720-71
+-bs_TrSegment
+3
+-y
+f
+f
+0
+1286459813
+5
+1
+>20101006165926-237
+1
+>20101007155720-56
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286459798
+0
+t
+<20101007155720-73
+-bs_RefCounter
+0
+<20101007155720-74
+-bs_SimpleTriggerSpec
+3
+-y
+f
+f
+0
+1286459813
+1
+-sub
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.223532
+0.343929
+23
+-1
+t
+<20101007155720-76
+-bs_RefCounter
+0
+<20101007155720-77
+-bs_TrSegment
+3
+-z
+f
+f
+0
+1286459832
+5
+1
+>20101007155720-56
+3
+>20101006170448-5
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286459824
+0
+t
+<20101007155720-79
+-bs_RefCounter
+0
+<20101007155720-80
+-bs_SimpleTriggerSpec
+3
+-z
+f
+f
+0
+1286459832
+1
+-sub
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.227529
+0.13996
+24
+-1
+f
+-bs_NoteList
+1
+-Note
+0
+1286376981
+0
+f
+t
+65535
+f
+f
+0
+1286459824
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286376981
+-bs_ContextCoord
+0
+0.756429
+0.415556
+-bs_SizeFactors
+0
+1
+1
+f
+f
+3
+3
+t
+<20101007155720-82
+-bs_RefCounter
+0
+<20101006170015-4
+-bs_State
+3
+-State4
+f
+t
+0
+1286377183
+5
+-
+-
+-1
+-1
+<20101006170015-5
+-bs_RefCounter
+0
+<20101007155720-83
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286459630
+5
+f
+-bs_StateGraph
+8
+<20101007155720-86
+-bs_RefCounter
+0
+<20101007155720-87
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286459630
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286459630
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286459630
+0
+t
+<20101007155720-91
+-bs_RefCounter
+0
+<20101007155720-92
+-bs_TrPoint
+3
+-TrP1
+f
+t
+0
+1286459630
+1
+1
+6
+-bs_ContextCoord
+0
+0.103317
+0
+23
+f
+-bs_StateList
+1
+-State
+0
+1286459630
+0
+t
+<20101007155720-95
+-bs_RefCounter
+0
+<20101007155720-96
+-bs_State
+3
+-State1
+f
+f
+0
+1286459634
+5
+-
+-
+-1
+-1
+<20101007155720-97
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.545794
+0.780476
+-bs_SizeFactors
+0
+1
+1
+f
+f
+10
+-1
+t
+<20101007155720-100
+-bs_RefCounter
+0
+<20101007155720-101
+-bs_State
+3
+-State2
+f
+f
+0
+1286459636
+5
+-
+-
+-1
+-1
+<20101007155720-102
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.525
+0.455794
+-bs_SizeFactors
+0
+1
+1
+f
+f
+11
+-1
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286459630
+0
+t
+<20101007155720-106
+-bs_RefCounter
+0
+<20101007155720-107
+-bs_TrSegment
+3
+-init
+f
+f
+0
+1286459640
+5
+0
+>20101007155720-87
+1
+>20101007155720-96
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286459640
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.307897
+0.855238
+25
+-1
+t
+<20101007155720-110
+-bs_RefCounter
+0
+<20101007155720-111
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286459660
+5
+1
+>20101007155720-96
+1
+>20101007155720-101
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286459642
+0
+t
+<20101007155720-113
+-bs_RefCounter
+0
+<20101007155720-114
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286459660
+1
+-port
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.535397
+0.618135
+26
+-1
+f
+-bs_NoteList
+1
+-Note
+0
+1286459630
+0
+f
+t
+65535
+f
+f
+0
+1286459642
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286459630
+-bs_ContextCoord
+0
+0.751429
+0.830397
+-bs_SizeFactors
+0
+1
+1
+f
+f
+4
+4
+t
+<20101007155720-118
+-bs_RefCounter
+0
+<20101007155720-119
+-bs_State
+3
+-State5
+f
+f
+0
+1286459584
+5
+-
+-
+-1
+-1
+<20101007155720-120
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.133492
+0.671032
+-bs_SizeFactors
+0
+1
+1
+f
+f
+5
+-1
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286459528
+0
+t
+<20101007155720-124
+-bs_RefCounter
+0
+<20101006165926-279
+-bs_TrSegment
+3
+-init
+f
+t
+0
+1286376902
+5
+0
+>20101007155720-36
+1
+>20101006165926-204
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376902
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.23869
+0.86631
+0
+0
+t
+<20101007155720-125
+-bs_RefCounter
+0
+<20101006165926-283
+-bs_TrSegment
+3
+-a
+f
+t
+0
+1286376941
+5
+1
+>20101006165926-204
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376904
+0
+t
+<20101006165926-285
+-bs_RefCounter
+0
+<20101006165926-286
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286376941
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.42004
+0.604008
+1
+1
+t
+<20101007155720-126
+-bs_RefCounter
+0
+<20101006165926-289
+-bs_TrSegment
+3
+-b
+f
+t
+0
+1286376947
+5
+1
+>20101006165926-209
+2
+>20101006165926-191
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376906
+0
+t
+<20101006165926-291
+-bs_RefCounter
+0
+<20101006165926-292
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286376947
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.504762
+0.507857
+2
+2
+t
+<20101007155720-127
+-bs_RefCounter
+0
+<20101006165926-295
+-bs_TrSegment
+3
+-
+f
+t
+0
+1286376909
+5
+2
+>20101006165926-196
+1
+>20101006165926-204
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376909
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.492103
+0.706468
+3
+3
+t
+<20101006165926-298
+-bs_RefCounter
+0
+<20101006165926-299
+-bs_TrSegment
+3
+-
+f
+t
+0
+1286377205
+5
+2
+>20101006165926-194
+1
+>20101006165926-214
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376916
+0
+t
+<20101006170015-8
+-bs_RefCounter
+0
+<20101006170015-9
+-bs_SimpleTriggerSpec
+3
+-
+f
+f
+0
+1286377205
+1
+-
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.666627
+0.512937
+4
+4
+t
+<20101006165926-302
+-bs_RefCounter
+0
+<20101006165926-303
+-bs_TrSegment
+3
+-a
+f
+t
+0
+1286377483
+5
+3
+>20101006165926-200
+1
+>20101006165926-214
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376931
+0
+t
+<20101006170448-22
+-bs_RefCounter
+0
+<20101006170448-23
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286377483
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.878214
+0.557222
+5
+5
+t
+<20101007155720-128
+-bs_RefCounter
+0
+<20101006170015-11
+-bs_TrSegment
+3
+-
+f
+t
+0
+1286377199
+5
+2
+>20101006170015-2
+1
+>20101006170015-4
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377199
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.664127
+0.720357
+6
+6
+t
+<20101006170448-24
+-bs_RefCounter
+0
+<20101006170448-25
+-bs_TrSegment
+3
+-
+f
+t
+0
+1286377403
+5
+1
+>20101006165926-214
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377396
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.650159
+0.218254
+7
+7
+t
+<20101006170448-28
+-bs_RefCounter
+0
+<20101006170448-29
+-bs_TrSegment
+3
+-c
+f
+t
+0
+1286377468
+5
+1
+>20101006165926-214
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377457
+0
+t
+<20101006170448-31
+-bs_RefCounter
+0
+<20101006170448-32
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377468
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.594563
+0.410476
+8
+8
+t
+<20101007155720-129
+-bs_RefCounter
+0
+<20101006181214-186
+-bs_TrSegment
+3
+-timerTick
+f
+t
+0
+1286381416
+5
+3
+>20101006181214-112
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286381405
+0
+t
+<20101006181214-188
+-bs_RefCounter
+0
+<20101006181214-189
+-bs_SimpleTriggerSpec
+3
+-timerTick
+f
+f
+0
+1286381416
+1
+-timer
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.303928
+0.202699
+9
+9
+t
+<20101007155720-130
+-bs_RefCounter
+0
+<20101007155720-131
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286459608
+5
+1
+>20101006165926-204
+1
+>20101007155720-119
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286459591
+0
+t
+<20101007155720-133
+-bs_RefCounter
+0
+<20101007155720-134
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286459608
+1
+-port
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.270437
+0.736825
+10
+-1
+t
+<20101007155720-136
+-bs_RefCounter
+0
+<20101007155720-137
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286459696
+5
+2
+>20101007155720-41
+1
+>20101007155720-119
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286459696
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.355159
+0.640674
+11
+-1
+t
+<20101007155720-140
+-bs_RefCounter
+0
+<20101007155720-141
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286459736
+5
+1
+>20101007155720-119
+1
+>20101006165926-214
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286459729
+0
+t
+<20101007155720-143
+-bs_RefCounter
+0
+<20101007155720-144
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286459736
+1
+-port
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.444961
+0.543294
+12
+-1
+f
+-bs_NoteList
+1
+-Note
+0
+1286459528
+0
+f
+t
+65535
+f
+f
+0
+1286459729
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286459528
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286459528
+0
+1286459528
+-bs_ActorMemberFct
+1
+f
+0
+1286459528
+t
+f
+f
+f
+-------------------------------
+
+
+ROOM_CONFIGURATION_DATA
+
+106
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ConfigurationList
+-bs_ConfigurationList
+1
+-Configuration
+0
+1286376755
+0
+t
+<20101006165926-311
+-bs_RefCounter
+0
+<20101006165926-312
+-bs_Configuration
+3
+-StdConfig
+f
+f
+0
+1286376755
+6
+<20101006165926-313
+-bs_RefCounter
+0
+N
+-bs_TargetList
+1
+-Target
+0
+1286376755
+0
+t
+<20101006165926-315
+-bs_RefCounter
+0
+<20101006165926-316
+-bs_Target
+3
+-PC
+f
+f
+0
+1286376755
+5
+-pc_id
+0
+0
+2
+2
+-bs_FileList
+1
+-FileListDummyName
+0
+1286376755
+0
+f
+f
+-bs_ContextCoord
+0
+0.5
+0.5
+-bs_SizeFactors
+0
+1
+1
+f
+-bs_NoteList
+1
+-Note
+0
+1286376755
+0
+f
+-bs_PrtvDescriptorList
+1
+-PrtvInstance
+0
+1286376755
+0
+f
+-bs_ActorInstanceList
+1
+-ActorInstance
+0
+1286376755
+0
+f
+>20101006165926-315
+>20101006165926-316
+0
+-bs_PropertySet
+0
+f
+-bs_ViewMementoList
+1
+-ViewMemento
+0
+1292431731
+0
+t
+<20101215174851-308
+-bs_RefCounter
+0
+<20101215174851-309
+-bs_ViewMemento
+3
+-
+f
+f
+0
+1292431731
+1
+2
+1
+269
+79
+747
+579
+>20101006165926-165
+>20101006165926-166
+>20101006165926-182
+>20101006165926-183
+-TOP/State3
+t
+<20101215174851-310
+-bs_RefCounter
+0
+<20101215174851-311
+-bs_ViewMemento
+3
+-
+f
+f
+0
+1292431731
+1
+2
+1
+75
+75
+553
+575
+>20101007155720-14
+>20101007155720-15
+>20101007155720-31
+>20101007155720-32
+-TOP
+t
+<20101215174851-312
+-bs_RefCounter
+0
+<20101215174851-313
+-bs_ViewMemento
+3
+-
+f
+f
+0
+1292431731
+1
+1
+3
+100
+100
+1454
+604
+>20101006165926-131
+>20101006165926-132
+f
+f
+>20101006165926-311
+>20101006165926-312
+-842150451
+-bs_DataObjHist
+0
+0
diff --git a/tests/org.eclipse.etrice.generator.tests/models/states_triggers.room b/tests/org.eclipse.etrice.generator.tests/models/states_triggers.room
new file mode 100644
index 000000000..f56796278
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/states_triggers.room
@@ -0,0 +1,174 @@
+RoomModel states_trigers {
+
+ ProtocolClass PTimer {
+ incoming {
+ Message start (time_ms : int32)
+ Message kill ()
+ }
+ outgoing {
+ Message timerTick ()
+ }
+ }
+
+ ProtocolClass PTimeout {
+ incoming {
+ Message start (time_ms : int32)
+ Message kill ()
+ }
+ outgoing {
+ Message timeoutTick ()
+ }
+ }
+
+ ActorClass ATimingService {
+ Interface {
+ SPP timerSPP: PTimer
+ SPP timeoutSPP: PTimeout
+ }
+ Structure {
+ ServiceImplementation of timerSPP
+ ServiceImplementation of timeoutSPP
+ }
+ }
+
+ ProtocolClass PTest1 {
+ incoming {
+ Message a ()
+ Message b (x : int32)
+ Message c ()
+ }
+ outgoing {
+ Message x ()
+ }
+ }
+
+ ProtocolClass PTest2 {
+ incoming {
+ Message x ()
+ Message y ()
+ Message z ()
+ }
+ outgoing {
+ Message a ()
+ }
+ }
+
+ SubSystemClass CMain {
+ ActorRef application : AApplication_CMain
+ ActorRef timingService : ATimingService
+
+ LayerConnection ref application satisfied_by timingService.timerSPP
+ LayerConnection ref application satisfied_by timingService.timeoutSPP
+ }
+
+ // automatically inserted AApplication_CMain
+ ActorClass AApplication_CMain {
+ Structure {
+ ActorRef test : ATest
+ }
+ }
+
+ ActorClass ATest {
+ Interface {
+ Port fct : PTest1
+ }
+ Structure {
+ external Port fct
+ Port sub : PTest2
+ SAP timer: PTimer
+ SAP timeout: PTimeout
+ }
+ Behavior {
+ StateMachine {
+ State State1 {}
+ State State2 {}
+ State State3 {
+ subgraph {
+ State State1 {}
+ State State2 {}
+ State State3 {}
+ EntryPoint tp1
+ TransitionPoint tp2
+ ExitPoint tp3
+ handler TransitionPoint tp5
+ Transition tr0: initial -> State1 {}
+ Transition tr1: my tp1 -> State3 {}
+ Transition tr2: State1 -> State2 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: State2 -> State3 {
+ triggers {
+ <x:sub>
+ }
+ }
+ Transition tr4: State3 -> State1 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr5: my tp2 -> State3 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr6: State3 -> my tp3 {
+ triggers {
+ <y:sub>
+ }
+ }
+ Transition tr7: my tp5 -> my tp5 {
+ triggers {
+ <timeoutTick:timeout>
+ }
+ }
+ }
+ }
+ State State4 {}
+ TransitionPoint tp0
+ TransitionPoint tp1
+ ChoicePoint CP1
+ Transition tr0: initial -> State1 {}
+ Transition tr1: State1 -> State2 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr2: State2 -> cp CP1 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: cp CP1 -> State1 {}
+ Transition tr4: cp CP1 -> State3 {
+ cond {
+ "data==2"
+ }
+ }
+ Transition tr5: my tp0 -> tp1 of State3 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr6: cp CP1 -> State4 {
+ cond {
+ "data==3"
+ }
+ }
+ Transition tr7: tp3 of State3 -> State2 {}
+ Transition tr8: State3 -> State2 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr9: my tp1 -> State2 {
+ triggers {
+ <timerTick:timer>
+ }
+ }
+ }
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/states_triggers.t.room b/tests/org.eclipse.etrice.generator.tests/models/states_triggers.t.room
new file mode 100644
index 000000000..e795b576b
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/states_triggers.t.room
@@ -0,0 +1,145 @@
+RoomModel statees_trig {
+
+ import room.basic.service.timing.*
+
+ ProtocolClass PTest1 {
+ incoming {
+ Message a ()
+ Message b (x : int32)
+ Message c ()
+ }
+ outgoing {
+ Message x ()
+ }
+ }
+
+ ProtocolClass PTest2 {
+ incoming {
+ Message x ()
+ Message y ()
+ Message z ()
+ }
+ outgoing {
+ Message a ()
+ }
+ }
+
+ ComponentClass CMain {
+ ActorRef application : AApplication_CMain
+ ActorRef timingService : ATimingService
+
+ LayerConnection sub_actor application satisfied_by timingService.timerSPP
+ LayerConnection sub_actor application satisfied_by timingService.timeoutSPP
+ }
+
+ // automatically inserted AApplication_CMain
+ ActorClass AApplication_CMain {
+ Structure {
+ ActorRef test : ATest
+ }
+ }
+
+ ActorClass ATest {
+ Interface {
+ Port fct : PTest1
+ }
+ Structure {
+ external Port fct
+ Port sub : PTest2
+ SAP timer: PTimer
+ SAP timeout: PTimeout
+ }
+ Behavior {
+ StateMachine {
+ State State1 {}
+ State State2 {}
+ State State3 {
+ subgraph {
+ State State1 {}
+ State State2 {}
+ State State3 {}
+ EntryPoint tp1
+ TransitionPoint tp2
+ ExitPoint tp3
+ handler TransitionPoint tp5
+ Transition tr0: initial -> State1 {}
+ Transition tr1: my tp1 -> State3 {}
+ Transition tr2: State1 -> State2 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: State2 -> State3 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr4: State3 -> State1 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr5: my tp2 -> State3 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr6: State3 -> my tp3 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr7: my tp5 -> my tp5 {
+ triggers {
+ <timeoutTick:timeout>
+ }
+ }
+ }
+ }
+ State State4 {}
+ TransitionPoint tp0
+ TransitionPoint tp1
+ ChoicePoint CP1
+ Transition tr0: initial -> State1 {}
+ Transition tr1: State1 -> State2 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr2: State2 -> cp CP1 {
+ triggers {
+ <b:fct>
+ }
+ }
+ Transition tr3: cp CP1 -> State1 {}
+ Transition tr4: cp CP1 -> State3 {
+ cond {
+ "data==2"
+ }
+ }
+ Transition tr5: my tp0 -> tp1 of State3 {
+ triggers {
+ <a:fct>
+ }
+ }
+ Transition tr6: cp CP1 -> State4 {
+ cond {
+ "data==3"
+ }
+ }
+ Transition tr7: tp3 of State3 -> State2 {}
+ Transition tr8: State3 -> State2 {
+ triggers {
+ <c:fct>
+ }
+ }
+ Transition tr9: my tp1 -> State2 {
+ triggers {
+ <timerTick:timer>
+ }
+ }
+ }
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/states_triggers.t.trp b/tests/org.eclipse.etrice.generator.tests/models/states_triggers.t.trp
new file mode 100644
index 000000000..ce91d0218
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/states_triggers.t.trp
@@ -0,0 +1,2981 @@
+114
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_DataClassList
+-bs_DataClassList
+1
+-DataClass
+0
+1286376755
+0
+t
+<20101006165926-2
+-bs_RefCounter
+0
+<20101006165926-3
+-bs_DataClass
+3
+-boolean
+f
+f
+0
+1286376755
+0
+1
+5
+13
+t
+<20101006165926-4
+-bs_RefCounter
+0
+<20101006165926-5
+-bs_DataClass
+3
+-char
+f
+f
+0
+1286376755
+0
+1
+5
+7
+t
+<20101006165926-6
+-bs_RefCounter
+0
+<20101006165926-7
+-bs_DataClass
+3
+-uchar
+f
+f
+0
+1286376755
+0
+1
+5
+14
+t
+<20101006165926-8
+-bs_RefCounter
+0
+<20101006165926-9
+-bs_DataClass
+3
+-int8
+f
+f
+0
+1286376755
+0
+1
+5
+15
+t
+<20101006165926-10
+-bs_RefCounter
+0
+<20101006165926-11
+-bs_DataClass
+3
+-uint8
+f
+f
+0
+1286376755
+0
+1
+5
+18
+t
+<20101006165926-12
+-bs_RefCounter
+0
+<20101006165926-13
+-bs_DataClass
+3
+-int16
+f
+f
+0
+1286376755
+0
+1
+5
+16
+t
+<20101006165926-14
+-bs_RefCounter
+0
+<20101006165926-15
+-bs_DataClass
+3
+-uint16
+f
+f
+0
+1286376755
+0
+1
+5
+19
+t
+<20101006165926-16
+-bs_RefCounter
+0
+<20101006165926-17
+-bs_DataClass
+3
+-int32
+f
+f
+0
+1286376755
+0
+1
+5
+17
+t
+<20101006165926-18
+-bs_RefCounter
+0
+<20101006165926-19
+-bs_DataClass
+3
+-uint32
+f
+f
+0
+1286376755
+0
+1
+5
+20
+t
+<20101006165926-20
+-bs_RefCounter
+0
+<20101006165926-21
+-bs_DataClass
+3
+-float32
+f
+f
+0
+1286376755
+0
+1
+5
+21
+t
+<20101006165926-22
+-bs_RefCounter
+0
+<20101006165926-23
+-bs_DataClass
+3
+-float64
+f
+f
+0
+1286376755
+0
+1
+5
+22
+t
+<20101006165926-24
+-bs_RefCounter
+0
+<20101006165926-25
+-bs_DataClass
+3
+-char*
+f
+f
+0
+1286376755
+0
+1
+5
+12
+-
+t
+<20101006165926-26
+-bs_RefCounter
+0
+<20101006165926-27
+-bs_DataClass
+3
+-void*
+f
+f
+0
+1286376755
+0
+1
+5
+12
+-
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ProtocolClassList
+-bs_ProtocolClassList
+1
+-ProtocolClass
+0
+1286381323
+0
+t
+<20101006165926-29
+-bs_RefCounter
+0
+<20101006165926-30
+-bs_ProtocolClass
+3
+-p_Timer
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-32
+-bs_RefCounter
+0
+<20101006165926-33
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286376755
+0
+>20101006165926-16
+>20101006165926-17
+t
+<20101006165926-34
+-bs_RefCounter
+0
+<20101006165926-35
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286376755
+0
+<20101006165926-36
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-38
+-bs_RefCounter
+0
+<20101006165926-39
+-bs_MsgType
+3
+-timerTick
+f
+f
+0
+1286376755
+0
+<20101006165926-40
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+t
+<20101006165926-43
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Start
+t
+<20101006165926-45
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Kill
+f
+t
+<20101006165926-48
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+1
+-timerTick
+f
+f
+f
+t
+<20101006165926-51
+-bs_RefCounter
+0
+<20101006165926-52
+-bs_ProtocolClass
+3
+-p_Timeout
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-54
+-bs_RefCounter
+0
+<20101006165926-55
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286376755
+0
+>20101006165926-16
+>20101006165926-17
+t
+<20101006165926-56
+-bs_RefCounter
+0
+<20101006165926-57
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286376755
+0
+<20101006165926-58
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-60
+-bs_RefCounter
+0
+<20101006165926-61
+-bs_MsgType
+3
+-timeoutTick
+f
+f
+0
+1286376755
+0
+<20101006165926-62
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+t
+<20101006165926-65
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Start
+t
+<20101006165926-67
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-Kill
+f
+t
+<20101006165926-70
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+1
+-timeoutTick
+f
+f
+f
+t
+<20101006165926-73
+-bs_RefCounter
+0
+<20101006165926-74
+-bs_ProtocolClass
+3
+-p_DigitalInput
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-76
+-bs_RefCounter
+0
+<20101006165926-77
+-bs_MsgType
+3
+-getStatus
+f
+f
+0
+1286376755
+0
+<20101006165926-78
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-80
+-bs_RefCounter
+0
+<20101006165926-81
+-bs_MsgType
+3
+-inputChanged
+f
+f
+0
+1286376755
+0
+>20101006165926-12
+>20101006165926-13
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+t
+<20101006165926-84
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+0
+-getStatus
+t
+<20101006165926-86
+-MessageImplication
+0
+0
+1286376755
+-ProtocolRule
+0
+0
+1286376755
+-Message
+0
+0
+1286376755
+1
+-inputChanged
+f
+f
+f
+t
+<20101006165926-89
+-bs_RefCounter
+0
+<20101006165926-90
+-bs_ProtocolClass
+3
+-p_DigitalOutput
+t
+f
+0
+1286376755
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+t
+<20101006165926-92
+-bs_RefCounter
+0
+<20101006165926-93
+-bs_MsgType
+3
+-Set
+f
+f
+0
+1286376755
+0
+>20101006165926-2
+>20101006165926-3
+t
+<20101006165926-94
+-bs_RefCounter
+0
+<20101006165926-95
+-bs_MsgType
+3
+-SetOn
+f
+f
+0
+1286376755
+0
+<20101006165926-96
+-bs_RefCounter
+0
+N
+t
+<20101006165926-97
+-bs_RefCounter
+0
+<20101006165926-98
+-bs_MsgType
+3
+-SetOff
+f
+f
+0
+1286376755
+0
+<20101006165926-99
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376755
+0
+f
+-ProtocolSemantics
+1
+0
+1286376755
+-ProtocolRuleSet
+0
+0
+1286376755
+f
+t
+<20101006165926-103
+-bs_RefCounter
+0
+<20101006165926-104
+-bs_ProtocolClass
+3
+-PTest1
+f
+f
+0
+1286376836
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376856
+0
+t
+<20101006165926-106
+-bs_RefCounter
+0
+<20101006165926-107
+-bs_MsgType
+3
+-a
+f
+f
+0
+1286376832
+0
+<20101006165926-108
+-bs_RefCounter
+0
+N
+t
+<20101006165926-109
+-bs_RefCounter
+0
+<20101006165926-110
+-bs_MsgType
+3
+-b
+f
+f
+0
+1286376853
+0
+>20101006165926-16
+>20101006165926-17
+t
+<20101006165926-111
+-bs_RefCounter
+0
+<20101006165926-112
+-bs_MsgType
+3
+-c
+f
+f
+0
+1286376855
+0
+<20101006165926-113
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286376836
+0
+t
+<20101006165926-115
+-bs_RefCounter
+0
+<20101006165926-116
+-bs_MsgType
+3
+-x
+f
+f
+0
+1286376835
+0
+<20101006165926-117
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286376824
+-ProtocolRuleSet
+0
+0
+1286376824
+f
+t
+<20101006181214-36
+-bs_RefCounter
+0
+<20101006181214-37
+-bs_ProtocolClass
+3
+-PTest2
+f
+f
+0
+1286381323
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286381323
+0
+t
+<20101006181214-39
+-bs_RefCounter
+0
+<20101006181214-40
+-bs_MsgType
+3
+-x
+f
+f
+0
+1286381314
+0
+<20101006181214-41
+-bs_RefCounter
+0
+N
+t
+<20101006181214-42
+-bs_RefCounter
+0
+<20101006181214-43
+-bs_MsgType
+3
+-y
+f
+f
+0
+1286381316
+0
+<20101006181214-44
+-bs_RefCounter
+0
+N
+t
+<20101006181214-45
+-bs_RefCounter
+0
+<20101006181214-46
+-bs_MsgType
+3
+-z
+f
+f
+0
+1286381317
+0
+<20101006181214-47
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286381323
+0
+t
+<20101006181214-49
+-bs_RefCounter
+0
+<20101006181214-50
+-bs_MsgType
+3
+-a
+f
+f
+0
+1286381321
+0
+<20101006181214-51
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286381308
+-ProtocolRuleSet
+0
+0
+1286381308
+f
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_SAPClassList
+-bs_SAPClassList
+1
+-SAP
+0
+1286376755
+0
+t
+<20101006165926-121
+-bs_RefCounter
+0
+<20101006165926-122
+-bs_SAPClass
+3
+-Timer
+f
+f
+0
+1286376755
+0
+1
+0
+1
+>20101006165926-29
+>20101006165926-30
+t
+<20101006165926-123
+-bs_RefCounter
+0
+<20101006165926-124
+-bs_SAPClass
+3
+-Timeout
+f
+f
+0
+1286376755
+0
+1
+0
+2
+>20101006165926-51
+>20101006165926-52
+t
+<20101006165926-125
+-bs_RefCounter
+0
+<20101006165926-126
+-bs_SAPClass
+3
+-DigitalInput
+f
+f
+0
+1286376755
+0
+1
+0
+4
+>20101006165926-73
+>20101006165926-74
+t
+<20101006165926-127
+-bs_RefCounter
+0
+<20101006165926-128
+-bs_SAPClass
+3
+-DigitalOutput
+f
+f
+0
+1286376755
+0
+1
+0
+5
+>20101006165926-89
+>20101006165926-90
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_PrtvClassList
+-bs_PrtvClassList
+1
+-PrimitiveClass
+0
+1286376755
+0
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ActorClassList
+-bs_ActorClassList
+1
+-ActorClass
+0
+1286376770
+0
+t
+<20101006165926-131
+-bs_RefCounter
+0
+<20101006165926-132
+-bs_ActorClass
+3
+-ComponentMain
+f
+f
+0
+1286376767
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286376763
+0
+f
+0
+0
+1286376763
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286376763
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286376763
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286376802
+0
+t
+<20101006165926-139
+-bs_RefCounter
+0
+<20101006165926-140
+-bs_ActorRef
+3
+-test
+f
+f
+0
+1286376803
+1
+-bs_ActorCoord
+0
+0.458194
+0.507625
+-bs_SizeFactors
+0
+3.01
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286376802
+0
+f
+3
+-ATest
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286376763
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376763
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286376763
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286376763
+0
+f
+0
+1286376763
+-bs_ActorBehaviour
+7
+<20101006165926-150
+-bs_RefCounter
+0
+<20101006165926-151
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286376763
+5
+f
+-bs_StateGraph
+8
+<20101006165926-154
+-bs_RefCounter
+0
+<20101006165926-155
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286376763
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286376763
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286376763
+0
+f
+-bs_StateList
+1
+-State
+0
+1286376763
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286376763
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286376763
+0
+f
+t
+65535
+f
+f
+0
+1286376763
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286376763
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376763
+0
+1286376763
+-bs_ActorMemberFct
+1
+f
+0
+1286376763
+t
+f
+f
+t
+<20101006165926-165
+-bs_RefCounter
+0
+<20101006165926-166
+-bs_ActorClass
+3
+-ATest
+f
+f
+0
+1286381382
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286381439
+0
+t
+<20101006165926-169
+-bs_RefCounter
+0
+<20101006165926-170
+-bs_PortRef
+3
+-fct
+f
+f
+0
+1286376845
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.393333
+1
+>20101006165926-103
+>20101006165926-104
+f
+0
+0
+1286376770
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286381340
+0
+t
+>20101006165926-169
+>20101006165926-170
+t
+<20101006181214-88
+-bs_RefCounter
+0
+<20101006181214-89
+-bs_PortRef
+3
+-sub
+f
+f
+0
+1286381454
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.372778
+0.477625
+>20101006181214-36
+>20101006181214-37
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286381382
+0
+t
+<20101006181214-92
+-bs_RefCounter
+0
+<20101006181214-93
+-bs_SAPRef
+3
+-timer
+f
+f
+0
+1286381382
+0
+0
+>20101006165926-121
+>20101006165926-122
+1
+t
+<20101006181214-94
+-bs_RefCounter
+0
+<20101006181214-95
+-bs_SAPRef
+3
+-timeout
+f
+f
+0
+1286381382
+0
+0
+>20101006165926-123
+>20101006165926-124
+1
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286376770
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286376770
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376770
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286376770
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286376770
+0
+f
+0
+1286376770
+-bs_ActorBehaviour
+7
+<20101006165926-182
+-bs_RefCounter
+0
+<20101006165926-183
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286376770
+5
+f
+-bs_StateGraph
+8
+<20101006165926-186
+-bs_RefCounter
+0
+<20101006165926-187
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286376770
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286376770
+0
+t
+<20101006165926-190
+-bs_RefCounter
+0
+<20101006165926-191
+-bs_Choicepoint
+3
+-CP1
+f
+f
+0
+1286377205
+2
+-bs_CPBranchList
+1
+-CPBranchListDummyName
+0
+1286376897
+0
+t
+<20101006165926-193
+-bs_RefCounter
+0
+<20101006165926-194
+-bs_CPBranch
+3
+-[data==2]
+f
+f
+0
+1286376916
+1
+t
+<20101006170015-1
+-bs_RefCounter
+0
+<20101006170015-2
+-bs_CPBranch
+3
+-[data==3]
+f
+f
+0
+1286377199
+1
+f
+<20101006165926-195
+-bs_RefCounter
+0
+<20101006165926-196
+-bs_CPBranch
+3
+-
+f
+f
+0
+1286376909
+1
+-bs_ContextCoord
+0
+0.576825
+0.610317
+8
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286376770
+0
+t
+<20101006165926-199
+-bs_RefCounter
+0
+<20101006165926-200
+-bs_TrPoint
+3
+-TrP1
+f
+f
+0
+1286376892
+1
+0
+-1
+-bs_ContextCoord
+0
+1
+0.698889
+9
+t
+<20101006181214-111
+-bs_RefCounter
+0
+<20101006181214-112
+-bs_TrPoint
+3
+-TrP2
+f
+f
+0
+1286381401
+1
+0
+-1
+-bs_ContextCoord
+0
+0.175159
+0
+10
+f
+-bs_StateList
+1
+-State
+0
+1286376770
+0
+t
+<20101006165926-203
+-bs_RefCounter
+0
+<20101006165926-204
+-bs_State
+3
+-State1
+f
+f
+0
+1286376871
+5
+-
+-
+-1
+-1
+<20101006165926-205
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.407381
+0.802619
+-bs_SizeFactors
+0
+1
+1
+f
+f
+1
+-1
+t
+<20101006165926-208
+-bs_RefCounter
+0
+<20101006165926-209
+-bs_State
+3
+-State2
+f
+f
+0
+1286376875
+5
+-
+-
+-1
+-1
+<20101006165926-210
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.432698
+0.405397
+-bs_SizeFactors
+0
+1
+1
+f
+f
+2
+-1
+t
+<20101006165926-213
+-bs_RefCounter
+0
+<20101006165926-214
+-bs_State
+3
+-State3
+f
+f
+0
+1286376881
+5
+-
+-
+-1
+-1
+<20101006165926-215
+-bs_RefCounter
+0
+<20101006165926-216
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286376981
+5
+f
+-bs_StateGraph
+8
+<20101006165926-219
+-bs_RefCounter
+0
+<20101006165926-220
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286376981
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286376981
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286376981
+0
+t
+<20101006165926-224
+-bs_RefCounter
+0
+<20101006165926-225
+-bs_TrPoint
+3
+-TrP1
+f
+f
+0
+1286376981
+1
+1
+4
+-bs_ContextCoord
+0
+0.0389161
+1
+11
+t
+<20101006165926-227
+-bs_RefCounter
+0
+<20101006165926-228
+-bs_TrPoint
+3
+-TrP2
+f
+f
+0
+1286376981
+1
+1
+5
+-bs_ContextCoord
+0
+0.929832
+1
+12
+t
+<20101006170448-1
+-bs_RefCounter
+0
+<20101006170448-2
+-bs_TrPoint
+3
+-TrP3
+f
+f
+0
+1286377368
+1
+0
+-1
+-bs_ContextCoord
+0
+1
+0.281508
+13
+t
+<20101006170448-4
+-bs_RefCounter
+0
+<20101006170448-5
+-bs_TrPoint
+3
+-TrP412863773960
+f
+f
+0
+1286377396
+1
+2
+7
+-bs_ContextCoord
+0
+0.230692
+0
+14
+t
+<20101006170448-7
+-bs_RefCounter
+0
+<20101006170448-8
+-bs_TrPoint
+3
+-TrP412863774570
+f
+f
+0
+1286377457
+1
+2
+8
+-bs_ContextCoord
+0
+0
+0.48431
+15
+t
+<20101006181214-129
+-bs_RefCounter
+0
+<20101006181214-130
+-bs_TrPoint
+3
+-TrP4
+f
+f
+0
+1286381511
+1
+3
+-1
+-bs_ContextCoord
+0
+0.543968
+1
+16
+f
+-bs_StateList
+1
+-State
+0
+1286376981
+0
+t
+<20101006165926-231
+-bs_RefCounter
+0
+<20101006165926-232
+-bs_State
+3
+-State1
+f
+f
+0
+1286376987
+5
+-
+-
+-1
+-1
+<20101006165926-233
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.457937
+0.751984
+-bs_SizeFactors
+0
+1
+1
+f
+f
+5
+-1
+t
+<20101006165926-236
+-bs_RefCounter
+0
+<20101006165926-237
+-bs_State
+3
+-State2
+f
+f
+0
+1286376992
+5
+-
+-
+-1
+-1
+<20101006165926-238
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.222698
+0.407937
+-bs_SizeFactors
+0
+1
+1
+f
+f
+6
+-1
+t
+<20101006165926-241
+-bs_RefCounter
+0
+<20101006165926-242
+-bs_State
+3
+-State3
+f
+f
+0
+1286376994
+5
+-
+-
+-1
+-1
+<20101006165926-243
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.73373
+0.387698
+-bs_SizeFactors
+0
+1
+1
+f
+f
+7
+-1
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286376981
+0
+t
+<20101006165926-247
+-bs_RefCounter
+0
+<20101006165926-248
+-bs_TrSegment
+3
+-init
+f
+f
+0
+1286376999
+5
+0
+>20101006165926-220
+1
+>20101006165926-232
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376999
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.263968
+0.840992
+10
+-1
+t
+<20101006165926-251
+-bs_RefCounter
+0
+<20101006165926-252
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377002
+5
+3
+>20101006165926-228
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377002
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.831781
+0.693849
+11
+-1
+t
+<20101006165926-255
+-bs_RefCounter
+0
+<20101006165926-256
+-bs_TrSegment
+3
+-b
+f
+f
+0
+1286377019
+5
+1
+>20101006165926-232
+1
+>20101006165926-237
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377003
+0
+t
+<20101006165926-258
+-bs_RefCounter
+0
+<20101006165926-259
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286377019
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.340317
+0.57996
+12
+-1
+t
+<20101006165926-261
+-bs_RefCounter
+0
+<20101006165926-262
+-bs_TrSegment
+3
+-c
+f
+f
+0
+1286377027
+5
+1
+>20101006165926-237
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377004
+0
+t
+<20101006165926-264
+-bs_RefCounter
+0
+<20101006165926-265
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377027
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.478214
+0.397817
+13
+-1
+t
+<20101006165926-267
+-bs_RefCounter
+0
+<20101006165926-268
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286377035
+5
+1
+>20101006165926-242
+1
+>20101006165926-232
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377006
+0
+t
+<20101006165926-270
+-bs_RefCounter
+0
+<20101006165926-271
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286377035
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.595833
+0.569841
+14
+-1
+t
+<20101006170448-10
+-bs_RefCounter
+0
+<20101006170448-11
+-bs_TrSegment
+3
+-b
+f
+f
+0
+1286377388
+5
+3
+>20101006170448-2
+1
+>20101006165926-242
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377372
+0
+t
+<20101006170448-13
+-bs_RefCounter
+0
+<20101006170448-14
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286377388
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.866865
+0.334603
+15
+-1
+t
+<20101006170448-16
+-bs_RefCounter
+0
+<20101006170448-17
+-bs_TrSegment
+3
+-c
+f
+f
+0
+1286377447
+5
+1
+>20101006165926-242
+3
+>20101006170448-5
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377422
+0
+t
+<20101006170448-19
+-bs_RefCounter
+0
+<20101006170448-20
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377447
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.482211
+0.193849
+16
+-1
+t
+<20101006181214-154
+-bs_RefCounter
+0
+<20101006181214-155
+-bs_TrSegment
+3
+-timeoutTick
+f
+f
+0
+1286381509
+5
+3
+>20101006181214-130
+3
+>20101006181214-130
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286381498
+0
+t
+<20101006181214-157
+-bs_RefCounter
+0
+<20101006181214-158
+-bs_SimpleTriggerSpec
+3
+-timeoutTick
+f
+f
+0
+1286381509
+1
+-timeout
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.612302
+0.845556
+17
+-1
+f
+-bs_NoteList
+1
+-Note
+0
+1286376981
+0
+f
+t
+65535
+f
+f
+0
+1286381498
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286376981
+-bs_ContextCoord
+0
+0.756429
+0.415556
+-bs_SizeFactors
+0
+1
+1
+f
+f
+3
+-1
+t
+<20101006170015-3
+-bs_RefCounter
+0
+<20101006170015-4
+-bs_State
+3
+-State4
+f
+f
+0
+1286377183
+5
+-
+-
+-1
+-1
+<20101006170015-5
+-bs_RefCounter
+0
+N
+-bs_ContextCoord
+0
+0.751429
+0.830397
+-bs_SizeFactors
+0
+1
+1
+f
+f
+4
+-1
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286376770
+0
+t
+<20101006165926-278
+-bs_RefCounter
+0
+<20101006165926-279
+-bs_TrSegment
+3
+-init
+f
+f
+0
+1286376902
+5
+0
+>20101006165926-187
+1
+>20101006165926-204
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376902
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.23869
+0.86631
+0
+-1
+t
+<20101006165926-282
+-bs_RefCounter
+0
+<20101006165926-283
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286376941
+5
+1
+>20101006165926-204
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376904
+0
+t
+<20101006165926-285
+-bs_RefCounter
+0
+<20101006165926-286
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286376941
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.42004
+0.604008
+1
+-1
+t
+<20101006165926-288
+-bs_RefCounter
+0
+<20101006165926-289
+-bs_TrSegment
+3
+-b
+f
+f
+0
+1286376947
+5
+1
+>20101006165926-209
+2
+>20101006165926-191
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376906
+0
+t
+<20101006165926-291
+-bs_RefCounter
+0
+<20101006165926-292
+-bs_SimpleTriggerSpec
+3
+-b
+f
+f
+0
+1286376947
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.504762
+0.507857
+2
+-1
+t
+<20101006165926-294
+-bs_RefCounter
+0
+<20101006165926-295
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286376909
+5
+2
+>20101006165926-196
+1
+>20101006165926-204
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376909
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.492103
+0.706468
+3
+-1
+t
+<20101006165926-298
+-bs_RefCounter
+0
+<20101006165926-299
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377205
+5
+2
+>20101006165926-194
+1
+>20101006165926-214
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376916
+0
+t
+<20101006170015-8
+-bs_RefCounter
+0
+<20101006170015-9
+-bs_SimpleTriggerSpec
+3
+-
+f
+f
+0
+1286377205
+1
+-
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.666627
+0.512937
+4
+-1
+t
+<20101006165926-302
+-bs_RefCounter
+0
+<20101006165926-303
+-bs_TrSegment
+3
+-a
+f
+f
+0
+1286377483
+5
+3
+>20101006165926-200
+1
+>20101006165926-214
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286376931
+0
+t
+<20101006170448-22
+-bs_RefCounter
+0
+<20101006170448-23
+-bs_SimpleTriggerSpec
+3
+-a
+f
+f
+0
+1286377483
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.878214
+0.557222
+5
+-1
+t
+<20101006170015-10
+-bs_RefCounter
+0
+<20101006170015-11
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377199
+5
+2
+>20101006170015-2
+1
+>20101006170015-4
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377199
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.664127
+0.720357
+6
+-1
+t
+<20101006170448-24
+-bs_RefCounter
+0
+<20101006170448-25
+-bs_TrSegment
+3
+-
+f
+f
+0
+1286377403
+5
+1
+>20101006165926-214
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377396
+0
+f
+-
+-1
+-bs_ContextCoord
+0
+0.650159
+0.218254
+7
+-1
+t
+<20101006170448-28
+-bs_RefCounter
+0
+<20101006170448-29
+-bs_TrSegment
+3
+-c
+f
+f
+0
+1286377468
+5
+1
+>20101006165926-214
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286377457
+0
+t
+<20101006170448-31
+-bs_RefCounter
+0
+<20101006170448-32
+-bs_SimpleTriggerSpec
+3
+-c
+f
+f
+0
+1286377468
+1
+-fct
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.594563
+0.410476
+8
+-1
+t
+<20101006181214-185
+-bs_RefCounter
+0
+<20101006181214-186
+-bs_TrSegment
+3
+-timerTick
+f
+f
+0
+1286381416
+5
+3
+>20101006181214-112
+1
+>20101006165926-209
+-bs_TrTrigger
+1
+-TriggerDummyName
+0
+1286381405
+0
+t
+<20101006181214-188
+-bs_RefCounter
+0
+<20101006181214-189
+-bs_SimpleTriggerSpec
+3
+-timerTick
+f
+f
+0
+1286381416
+1
+-timer
+-
+f
+-
+-1
+-bs_ContextCoord
+0
+0.303928
+0.202699
+9
+-1
+f
+-bs_NoteList
+1
+-Note
+0
+1286376770
+0
+f
+t
+65535
+f
+f
+0
+1286381405
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286376770
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286376770
+0
+1286376770
+-bs_ActorMemberFct
+1
+f
+0
+1286376770
+t
+f
+f
+f
+-------------------------------
+
+
+ROOM_CONFIGURATION_DATA
+
+106
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ConfigurationList
+-bs_ConfigurationList
+1
+-Configuration
+0
+1286376755
+0
+t
+<20101006165926-311
+-bs_RefCounter
+0
+<20101006165926-312
+-bs_Configuration
+3
+-StdConfig
+f
+f
+0
+1286376755
+6
+<20101006165926-313
+-bs_RefCounter
+0
+N
+-bs_TargetList
+1
+-Target
+0
+1286376755
+0
+t
+<20101006165926-315
+-bs_RefCounter
+0
+<20101006165926-316
+-bs_Target
+3
+-PC
+f
+f
+0
+1286376755
+5
+-pc_id
+0
+0
+2
+2
+-bs_FileList
+1
+-FileListDummyName
+0
+1286376755
+0
+f
+f
+-bs_ContextCoord
+0
+0.5
+0.5
+-bs_SizeFactors
+0
+1
+1
+f
+-bs_NoteList
+1
+-Note
+0
+1286376755
+0
+f
+-bs_PrtvDescriptorList
+1
+-PrtvInstance
+0
+1286376755
+0
+f
+-bs_ActorInstanceList
+1
+-ActorInstance
+0
+1286376755
+0
+f
+>20101006165926-315
+>20101006165926-316
+0
+-bs_PropertySet
+0
+f
+-bs_ViewMementoList
+1
+-ViewMemento
+0
+1292431739
+0
+t
+<20101215174859-173
+-bs_RefCounter
+0
+<20101215174859-174
+-bs_ViewMemento
+3
+-
+f
+f
+0
+1292431739
+1
+2
+1
+679
+53
+1157
+553
+>20101006165926-165
+>20101006165926-166
+>20101006165926-182
+>20101006165926-183
+-TOP/State3
+t
+<20101215174859-175
+-bs_RefCounter
+0
+<20101215174859-176
+-bs_ViewMemento
+3
+-
+f
+f
+0
+1292431739
+1
+1
+1
+25
+25
+905
+543
+>20101006165926-165
+>20101006165926-166
+f
+f
+>20101006165926-311
+>20101006165926-312
+-842150451
+-bs_DataObjHist
+0
+0
diff --git a/tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.room b/tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.room
new file mode 100644
index 000000000..72c4e33f0
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.room
@@ -0,0 +1,206 @@
+RoomModel structure_inherit {
+
+ ProtocolClass PTimer {
+ incoming {
+ Message start (time_ms : int32)
+ Message kill ()
+ }
+ outgoing {
+ Message timerTick ()
+ }
+ }
+
+ ProtocolClass PTimeout {
+ incoming {
+ Message start (time_ms : int32)
+ Message kill ()
+ }
+ outgoing {
+ Message timeoutTick ()
+ }
+ }
+
+ ActorClass ATimingService {
+ Interface {
+ SPP timerSPP: PTimer
+ SPP timeoutSPP: PTimeout
+ }
+ Structure {
+ ServiceImplementation of timerSPP
+ ServiceImplementation of timeoutSPP
+ }
+ }
+
+ ProtocolClass PBase {
+ incoming {
+ Message a ()
+ Message b ()
+ }
+ outgoing {
+ Message x ()
+ Message y ()
+ }
+ }
+
+ ProtocolClass PFunctionA {
+ incoming {
+ Message d ()
+ Message e ()
+ }
+ outgoing {
+ Message r ()
+ Message s ()
+ }
+ }
+
+ ProtocolClass PControl {
+ incoming {
+ Message c ()
+ }
+ outgoing {
+ Message d ()
+ }
+ }
+
+ ProtocolClass PFunctionB {
+ incoming {
+ Message h ()
+ }
+ outgoing {
+ Message i ()
+ }
+ }
+
+ SubSystemClass CMain {
+ ActorRef application : AApplication_CMain
+ ActorRef timingService : ATimingService
+
+ LayerConnection ref application satisfied_by timingService.timerSPP
+ LayerConnection ref application satisfied_by timingService.timeoutSPP
+ }
+
+ // automatically inserted AApplication_CMain
+ ActorClass AApplication_CMain {
+ Structure {
+ ActorRef controller : AController
+ ActorRef fcta : AFunctionA
+ ActorRef fctb : AFunctionB
+ ActorRef client : AClient
+ Binding controller.base and fcta.base
+ Binding controller.ctrl and fcta.ctrl
+ Binding controller.base and fctb.base
+ Binding controller.ctrl and fctb.ctrl
+ Binding controller.base and client.base
+ Binding controller.ctrl and client.ctrl
+ Binding fcta.fct1 and client.pa1
+ Binding fctb.fct and client.pb
+ Binding client.pa2 and fcta.fct2
+ }
+ }
+
+ ActorClass ACommonBase {
+ Interface {
+ Port base : PBase
+ }
+ Structure {
+ external Port base
+ conjugated Port subbase [10] : PBase
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AControl extends ACommonBase {
+ Interface {
+ Port ctrl : PControl
+ }
+ Structure {
+ external Port ctrl
+ conjugated Port subctrl [10] : PControl
+ SAP ctrltimeout: PTimeout
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass ABaseController {
+ Interface {
+ conjugated Port base [10] : PBase
+ }
+ Structure {
+ external Port base
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AController extends ABaseController {
+ Interface {
+ conjugated Port ctrl [10] : PControl
+ }
+ Structure {
+ external Port ctrl
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass ASubA extends AControl {
+ Interface {
+ Port fct : PFunctionA
+ }
+ Structure {
+ external Port fct
+ SAP timeout: PTimeout
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AFunctionA extends AControl {
+ Interface {
+ Port fct1 : PFunctionA
+ Port fct2 : PFunctionA
+ }
+ Structure {
+ SAP timeout: PTimeout
+ ActorRef sub1 : ASubA
+ ActorRef sub2 : ASubA
+ Binding subbase and sub1.base
+ Binding subctrl and sub1.ctrl
+ Binding subbase and sub2.base
+ Binding subctrl and sub2.ctrl
+ Binding fct1 and sub2.fct
+ Binding fct2 and sub1.fct
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AFunctionB extends AControl {
+ Interface {
+ Port fct : PFunctionB
+ }
+ Structure {
+ external Port fct
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AClient extends AControl {
+ Interface {
+ conjugated Port pa1 : PFunctionA
+ conjugated Port pb : PFunctionB
+ conjugated Port pa2 : PFunctionA
+ }
+ Structure {
+ external Port pa1
+ external Port pb
+ external Port pa2
+ }
+ Behavior {
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.t.room b/tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.t.room
new file mode 100644
index 000000000..2d14345a9
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.t.room
@@ -0,0 +1,177 @@
+RoomModel structure_inheritance.t {
+
+ import room.basic.service.timing.*
+
+ ProtocolClass PBase {
+ incoming {
+ Message a ()
+ Message b ()
+ }
+ outgoing {
+ Message x ()
+ Message y ()
+ }
+ }
+
+ ProtocolClass PFunctionA {
+ incoming {
+ Message d ()
+ Message e ()
+ }
+ outgoing {
+ Message r ()
+ Message s ()
+ }
+ }
+
+ ProtocolClass PControl {
+ incoming {
+ Message c ()
+ }
+ outgoing {
+ Message d ()
+ }
+ }
+
+ ProtocolClass PFunctionB {
+ incoming {
+ Message h ()
+ }
+ outgoing {
+ Message i ()
+ }
+ }
+
+ ComponentClass CMain {
+ ActorRef application : AApplication_CMain
+ ActorRef timingService : ATimingService
+
+ LayerConnection sub_actor application satisfied_by timingService.timerSPP
+ LayerConnection sub_actor application satisfied_by timingService.timeoutSPP
+ }
+
+ // automatically inserted AApplication_CMain
+ ActorClass AApplication_CMain {
+ Structure {
+ ActorRef controller : AController
+ ActorRef fcta : AFunctionA
+ ActorRef fctb : AFunctionB
+ ActorRef client : AClient
+ Binding controller.base and fcta.base
+ Binding controller.ctrl and fcta.ctrl
+ Binding controller.base and fctb.base
+ Binding controller.ctrl and fctb.ctrl
+ Binding controller.base and client.base
+ Binding controller.ctrl and client.ctrl
+ Binding fcta.fct1 and client.pa1
+ Binding fctb.fct and client.pb
+ Binding client.pa2 and fcta.fct2
+ }
+ }
+
+ ActorClass ACommonBase {
+ Interface {
+ Port base : PBase
+ }
+ Structure {
+ external Port base
+ conjugated Port subbase [10] : PBase
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AControl extends ACommonBase {
+ Interface {
+ Port ctrl : PControl
+ }
+ Structure {
+ external Port ctrl
+ conjugated Port subctrl [10] : PControl
+ SAP ctrltimout: PTimeout
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass ABaseController {
+ Interface {
+ conjugated Port base [10] : PBase
+ }
+ Structure {
+ external Port base
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AController extends ABaseController {
+ Interface {
+ conjugated Port ctrl [10] : PControl
+ }
+ Structure {
+ external Port ctrl
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass ASubA extends AControl {
+ Interface {
+ Port fct : PFunctionA
+ }
+ Structure {
+ external Port fct
+ SAP timeout: PTimeout
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AFunctionA extends AControl {
+ Interface {
+ Port fct1 : PFunctionA
+ Port fct2 : PFunctionA
+ }
+ Structure {
+ SAP timeout: PTimeout
+ ActorRef sub1 : ASubA
+ ActorRef sub2 : ASubA
+ Binding subbase and sub1.base
+ Binding subctrl and sub1.ctrl
+ Binding subbase and sub2.base
+ Binding subctrl and sub2.ctrl
+ Binding fct1 and sub2.fct
+ Binding fct2 and sub1.fct
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AFunctionB extends AControl {
+ Interface {
+ Port fct : PFunctionB
+ }
+ Structure {
+ external Port fct
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass AClient extends AControl {
+ Interface {
+ conjugated Port pa1 : PFunctionA
+ conjugated Port pb : PFunctionB
+ conjugated Port pa2 : PFunctionA
+ }
+ Structure {
+ external Port pa1
+ external Port pb
+ external Port pa2
+ }
+ Behavior {
+ }
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.t.trp b/tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.t.trp
new file mode 100644
index 000000000..a7ace6b14
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.t.trp
@@ -0,0 +1,4606 @@
+114
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_DataClassList
+-bs_DataClassList
+1
+-DataClass
+0
+1286433752
+0
+t
+<20101007085502-2
+-bs_RefCounter
+0
+<20101007085502-3
+-bs_DataClass
+3
+-boolean
+f
+f
+0
+1286433748
+0
+1
+5
+13
+t
+<20101007085502-4
+-bs_RefCounter
+0
+<20101007085502-5
+-bs_DataClass
+3
+-char
+f
+f
+0
+1286433748
+0
+1
+5
+7
+t
+<20101007085502-6
+-bs_RefCounter
+0
+<20101007085502-7
+-bs_DataClass
+3
+-uchar
+f
+f
+0
+1286433748
+0
+1
+5
+14
+t
+<20101007085502-8
+-bs_RefCounter
+0
+<20101007085502-9
+-bs_DataClass
+3
+-int8
+f
+f
+0
+1286433748
+0
+1
+5
+15
+t
+<20101007085502-10
+-bs_RefCounter
+0
+<20101007085502-11
+-bs_DataClass
+3
+-uint8
+f
+f
+0
+1286433748
+0
+1
+5
+18
+t
+<20101007085502-12
+-bs_RefCounter
+0
+<20101007085502-13
+-bs_DataClass
+3
+-int16
+f
+f
+0
+1286433748
+0
+1
+5
+16
+t
+<20101007085502-14
+-bs_RefCounter
+0
+<20101007085502-15
+-bs_DataClass
+3
+-uint16
+f
+f
+0
+1286433748
+0
+1
+5
+19
+t
+<20101007085502-16
+-bs_RefCounter
+0
+<20101007085502-17
+-bs_DataClass
+3
+-int32
+f
+f
+0
+1286433748
+0
+1
+5
+17
+t
+<20101007085502-18
+-bs_RefCounter
+0
+<20101007085502-19
+-bs_DataClass
+3
+-uint32
+f
+f
+0
+1286433748
+0
+1
+5
+20
+t
+<20101007085502-20
+-bs_RefCounter
+0
+<20101007085502-21
+-bs_DataClass
+3
+-float32
+f
+f
+0
+1286433748
+0
+1
+5
+21
+t
+<20101007085502-22
+-bs_RefCounter
+0
+<20101007085502-23
+-bs_DataClass
+3
+-float64
+f
+f
+0
+1286433748
+0
+1
+5
+22
+t
+<20101007085502-24
+-bs_RefCounter
+0
+<20101007085502-25
+-bs_DataClass
+3
+-char*
+f
+f
+0
+1286433748
+0
+1
+5
+12
+-
+t
+<20101007085502-26
+-bs_RefCounter
+0
+<20101007085502-27
+-bs_DataClass
+3
+-void*
+f
+f
+0
+1286433748
+0
+1
+5
+12
+-
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ProtocolClassList
+-bs_ProtocolClassList
+1
+-ProtocolClass
+0
+1286434265
+0
+t
+<20101007085502-29
+-bs_RefCounter
+0
+<20101007085502-30
+-bs_ProtocolClass
+3
+-p_Timer
+t
+f
+0
+1286433748
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433748
+0
+t
+<20101007085502-32
+-bs_RefCounter
+0
+<20101007085502-33
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286433748
+0
+>20101007085502-16
+>20101007085502-17
+t
+<20101007085502-34
+-bs_RefCounter
+0
+<20101007085502-35
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286433748
+0
+<20101007085502-36
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433748
+0
+t
+<20101007085502-38
+-bs_RefCounter
+0
+<20101007085502-39
+-bs_MsgType
+3
+-timerTick
+f
+f
+0
+1286433748
+0
+<20101007085502-40
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286433748
+-ProtocolRuleSet
+0
+0
+1286433748
+t
+<20101007085502-43
+-ProtocolRule
+0
+0
+1286433748
+-Message
+0
+0
+1286433748
+0
+-Start
+t
+<20101007085502-45
+-MessageImplication
+0
+0
+1286433748
+-ProtocolRule
+0
+0
+1286433748
+-Message
+0
+0
+1286433748
+0
+-Kill
+f
+t
+<20101007085502-48
+-MessageImplication
+0
+0
+1286433748
+-ProtocolRule
+0
+0
+1286433748
+-Message
+0
+0
+1286433748
+1
+-timerTick
+f
+f
+f
+t
+<20101007085502-51
+-bs_RefCounter
+0
+<20101007085502-52
+-bs_ProtocolClass
+3
+-p_Timeout
+t
+f
+0
+1286433748
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433748
+0
+t
+<20101007085502-54
+-bs_RefCounter
+0
+<20101007085502-55
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1286433748
+0
+>20101007085502-16
+>20101007085502-17
+t
+<20101007085502-56
+-bs_RefCounter
+0
+<20101007085502-57
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1286433748
+0
+<20101007085502-58
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433748
+0
+t
+<20101007085502-60
+-bs_RefCounter
+0
+<20101007085502-61
+-bs_MsgType
+3
+-timeoutTick
+f
+f
+0
+1286433748
+0
+<20101007085502-62
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286433748
+-ProtocolRuleSet
+0
+0
+1286433748
+t
+<20101007085502-65
+-ProtocolRule
+0
+0
+1286433748
+-Message
+0
+0
+1286433748
+0
+-Start
+t
+<20101007085502-67
+-MessageImplication
+0
+0
+1286433748
+-ProtocolRule
+0
+0
+1286433748
+-Message
+0
+0
+1286433748
+0
+-Kill
+f
+t
+<20101007085502-70
+-MessageImplication
+0
+0
+1286433748
+-ProtocolRule
+0
+0
+1286433748
+-Message
+0
+0
+1286433748
+1
+-timeoutTick
+f
+f
+f
+t
+<20101007085502-73
+-bs_RefCounter
+0
+<20101007085502-74
+-bs_ProtocolClass
+3
+-p_DigitalInput
+t
+f
+0
+1286433748
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433748
+0
+t
+<20101007085502-76
+-bs_RefCounter
+0
+<20101007085502-77
+-bs_MsgType
+3
+-getStatus
+f
+f
+0
+1286433748
+0
+<20101007085502-78
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433748
+0
+t
+<20101007085502-80
+-bs_RefCounter
+0
+<20101007085502-81
+-bs_MsgType
+3
+-inputChanged
+f
+f
+0
+1286433748
+0
+>20101007085502-12
+>20101007085502-13
+f
+-ProtocolSemantics
+1
+0
+1286433748
+-ProtocolRuleSet
+0
+0
+1286433748
+t
+<20101007085502-84
+-ProtocolRule
+0
+0
+1286433748
+-Message
+0
+0
+1286433748
+0
+-getStatus
+t
+<20101007085502-86
+-MessageImplication
+0
+0
+1286433748
+-ProtocolRule
+0
+0
+1286433748
+-Message
+0
+0
+1286433748
+1
+-inputChanged
+f
+f
+f
+t
+<20101007085502-89
+-bs_RefCounter
+0
+<20101007085502-90
+-bs_ProtocolClass
+3
+-p_DigitalOutput
+t
+f
+0
+1286433748
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433748
+0
+t
+<20101007085502-92
+-bs_RefCounter
+0
+<20101007085502-93
+-bs_MsgType
+3
+-Set
+f
+f
+0
+1286433748
+0
+>20101007085502-2
+>20101007085502-3
+t
+<20101007085502-94
+-bs_RefCounter
+0
+<20101007085502-95
+-bs_MsgType
+3
+-SetOn
+f
+f
+0
+1286433748
+0
+<20101007085502-96
+-bs_RefCounter
+0
+N
+t
+<20101007085502-97
+-bs_RefCounter
+0
+<20101007085502-98
+-bs_MsgType
+3
+-SetOff
+f
+f
+0
+1286433748
+0
+<20101007085502-99
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433748
+0
+f
+-ProtocolSemantics
+1
+0
+1286433748
+-ProtocolRuleSet
+0
+0
+1286433748
+f
+t
+<20101007085502-103
+-bs_RefCounter
+0
+<20101007085502-104
+-bs_ProtocolClass
+3
+-PBase
+f
+f
+0
+1286433772
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433772
+0
+t
+<20101007085502-106
+-bs_RefCounter
+0
+<20101007085502-107
+-bs_MsgType
+3
+-a
+f
+f
+0
+1286433764
+0
+<20101007085502-108
+-bs_RefCounter
+0
+N
+t
+<20101007085502-109
+-bs_RefCounter
+0
+<20101007085502-110
+-bs_MsgType
+3
+-b
+f
+f
+0
+1286433765
+0
+<20101007085502-111
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433772
+0
+t
+<20101007085502-113
+-bs_RefCounter
+0
+<20101007085502-114
+-bs_MsgType
+3
+-x
+f
+f
+0
+1286433768
+0
+<20101007085502-115
+-bs_RefCounter
+0
+N
+t
+<20101007085502-116
+-bs_RefCounter
+0
+<20101007085502-117
+-bs_MsgType
+3
+-y
+f
+f
+0
+1286433770
+0
+<20101007085502-118
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286433759
+-ProtocolRuleSet
+0
+0
+1286433759
+f
+t
+<20101007085502-121
+-bs_RefCounter
+0
+<20101007085502-122
+-bs_ProtocolClass
+3
+-PFunctionA
+f
+f
+0
+1286433824
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433824
+0
+t
+<20101007085502-124
+-bs_RefCounter
+0
+<20101007085502-125
+-bs_MsgType
+3
+-d
+f
+f
+0
+1286433817
+0
+<20101007085502-126
+-bs_RefCounter
+0
+N
+t
+<20101007085502-127
+-bs_RefCounter
+0
+<20101007085502-128
+-bs_MsgType
+3
+-e
+f
+f
+0
+1286433819
+0
+<20101007085502-129
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433824
+0
+t
+<20101007085502-131
+-bs_RefCounter
+0
+<20101007085502-132
+-bs_MsgType
+3
+-r
+f
+f
+0
+1286433822
+0
+<20101007085502-133
+-bs_RefCounter
+0
+N
+t
+<20101007085502-134
+-bs_RefCounter
+0
+<20101007085502-135
+-bs_MsgType
+3
+-s
+f
+f
+0
+1286433823
+0
+<20101007085502-136
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286433809
+-ProtocolRuleSet
+0
+0
+1286433809
+f
+t
+<20101007085502-139
+-bs_RefCounter
+0
+<20101007085502-140
+-bs_ProtocolClass
+3
+-PControl
+f
+f
+0
+1286433846
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433846
+0
+t
+<20101007085502-142
+-bs_RefCounter
+0
+<20101007085502-143
+-bs_MsgType
+3
+-c
+f
+f
+0
+1286433840
+0
+<20101007085502-144
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286433846
+0
+t
+<20101007085502-146
+-bs_RefCounter
+0
+<20101007085502-147
+-bs_MsgType
+3
+-d
+f
+f
+0
+1286433844
+0
+<20101007085502-148
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286433833
+-ProtocolRuleSet
+0
+0
+1286433833
+f
+t
+<20101007085502-151
+-bs_RefCounter
+0
+<20101007085502-152
+-bs_ProtocolClass
+3
+-PFunctionB
+f
+f
+0
+1286434265
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286434265
+0
+t
+<20101007085502-154
+-bs_RefCounter
+0
+<20101007085502-155
+-bs_MsgType
+3
+-h
+f
+f
+0
+1286434261
+0
+<20101007085502-156
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1286434265
+0
+t
+<20101007085502-158
+-bs_RefCounter
+0
+<20101007085502-159
+-bs_MsgType
+3
+-i
+f
+f
+0
+1286434264
+0
+<20101007085502-160
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1286434250
+-ProtocolRuleSet
+0
+0
+1286434250
+f
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_SAPClassList
+-bs_SAPClassList
+1
+-SAP
+0
+1286433748
+0
+t
+<20101007085502-164
+-bs_RefCounter
+0
+<20101007085502-165
+-bs_SAPClass
+3
+-Timer
+f
+f
+0
+1286433748
+0
+1
+0
+1
+>20101007085502-29
+>20101007085502-30
+t
+<20101007085502-166
+-bs_RefCounter
+0
+<20101007085502-167
+-bs_SAPClass
+3
+-Timeout
+f
+f
+0
+1286433748
+0
+1
+0
+2
+>20101007085502-51
+>20101007085502-52
+t
+<20101007085502-168
+-bs_RefCounter
+0
+<20101007085502-169
+-bs_SAPClass
+3
+-DigitalInput
+f
+f
+0
+1286433748
+0
+1
+0
+4
+>20101007085502-73
+>20101007085502-74
+t
+<20101007085502-170
+-bs_RefCounter
+0
+<20101007085502-171
+-bs_SAPClass
+3
+-DigitalOutput
+f
+f
+0
+1286433748
+0
+1
+0
+5
+>20101007085502-89
+>20101007085502-90
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_PrtvClassList
+-bs_PrtvClassList
+1
+-PrimitiveClass
+0
+1286433748
+0
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ActorClassList
+-bs_ActorClassList
+1
+-ActorClass
+0
+1286434548
+0
+t
+<20101007085502-174
+-bs_RefCounter
+0
+<20101007085502-175
+-bs_ActorClass
+3
+-ComponentMain
+f
+f
+0
+1286433778
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286433774
+0
+f
+0
+0
+1286433774
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286433774
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286433774
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286434568
+0
+t
+<20101007085502-182
+-bs_RefCounter
+0
+<20101007085502-183
+-bs_ActorRef
+3
+-controller
+f
+f
+0
+1286434477
+1
+-bs_ActorCoord
+0
+0.412083
+0.85125
+-bs_SizeFactors
+0
+3.01
+0.99875
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286434236
+0
+f
+3
+-AController
+t
+<20101007085502-187
+-bs_RefCounter
+0
+<20101007085502-188
+-bs_ActorRef
+3
+-fcta
+f
+f
+0
+1286434479
+1
+-bs_ActorCoord
+0
+0.239028
+0.492
+-bs_SizeFactors
+0
+3.01063
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286434320
+0
+f
+3
+-AFunctionA
+t
+<20101007085843-1
+-bs_RefCounter
+0
+<20101007085843-2
+-bs_ActorRef
+3
+-fctb
+f
+f
+0
+1286434539
+1
+-bs_ActorCoord
+0
+0.736458
+0.479125
+-bs_SizeFactors
+0
+3.01
+1.01188
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286434537
+0
+f
+3
+-AFunctionB
+t
+<20101007085843-6
+-bs_RefCounter
+0
+<20101007085843-7
+-bs_ActorRef
+3
+-client
+f
+f
+0
+1286434570
+1
+-bs_ActorCoord
+0
+0.510069
+0.172875
+-bs_SizeFactors
+0
+3.01063
+1.01125
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286434568
+0
+f
+3
+-AClient
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286434712
+0
+t
+<20101007085502-193
+-bs_RefCounter
+0
+<20101007085502-194
+-bs_BindingContract
+3
+-BindingContract1
+f
+f
+0
+1286434424
+0
+-bs_BCEndPoint
+1
+>20101007085502-182
+>20101007085502-183
+<20101007085502-196
+-bs_RefCounter
+0
+<20101007085502-197
+-bs_PortRef
+3
+-base
+f
+f
+0
+1286434454
+0
+0
+t
+10
+-bs_ActorCoord
+0
+0.16125
+0
+>20101007085502-103
+>20101007085502-104
+<20101007085502-199
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085502-187
+>20101007085502-188
+<20101007085502-201
+-bs_RefCounter
+0
+<20101007085502-202
+-bs_PortRef
+3
+-base
+f
+f
+0
+1286433868
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.158333
+1.0005
+>20101007085502-103
+>20101007085502-104
+<20101007085502-204
+-bs_RefCounter
+0
+N
+t
+<20101007085502-205
+-bs_RefCounter
+0
+<20101007085502-206
+-bs_BindingContract
+3
+-BindingContract2
+f
+f
+0
+1286434427
+0
+-bs_BCEndPoint
+1
+>20101007085502-182
+>20101007085502-183
+<20101007085502-208
+-bs_RefCounter
+0
+<20101007085502-209
+-bs_PortRef
+3
+-ctrl
+f
+f
+0
+1286434439
+0
+0
+t
+10
+-bs_ActorCoord
+0
+0.365903
+0
+>20101007085502-139
+>20101007085502-140
+<20101007085502-211
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085502-187
+>20101007085502-188
+<20101007085502-213
+-bs_RefCounter
+0
+<20101007085502-214
+-bs_PortRef
+3
+-ctrl
+f
+f
+0
+1286433903
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.44375
+1
+>20101007085502-139
+>20101007085502-140
+<20101007085502-216
+-bs_RefCounter
+0
+N
+t
+<20101007085843-11
+-bs_RefCounter
+0
+<20101007085843-12
+-bs_BindingContract
+3
+-BindingContract3
+f
+f
+0
+1286434541
+0
+-bs_BCEndPoint
+1
+>20101007085502-182
+>20101007085502-183
+>20101007085502-196
+>20101007085502-197
+<20101007085843-14
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085843-1
+>20101007085843-2
+>20101007085502-201
+>20101007085502-202
+<20101007085843-16
+-bs_RefCounter
+0
+N
+t
+<20101007085843-17
+-bs_RefCounter
+0
+<20101007085843-18
+-bs_BindingContract
+3
+-BindingContract4
+f
+f
+0
+1286434544
+0
+-bs_BCEndPoint
+1
+>20101007085502-182
+>20101007085502-183
+>20101007085502-208
+>20101007085502-209
+<20101007085843-20
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085843-1
+>20101007085843-2
+>20101007085502-213
+>20101007085502-214
+<20101007085843-22
+-bs_RefCounter
+0
+N
+t
+<20101007085843-23
+-bs_RefCounter
+0
+<20101007085843-24
+-bs_BindingContract
+3
+-BindingContract5
+f
+f
+0
+1286434573
+0
+-bs_BCEndPoint
+1
+>20101007085502-182
+>20101007085502-183
+>20101007085502-196
+>20101007085502-197
+<20101007085843-26
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085843-6
+>20101007085843-7
+>20101007085502-201
+>20101007085502-202
+<20101007085843-28
+-bs_RefCounter
+0
+N
+t
+<20101007085843-29
+-bs_RefCounter
+0
+<20101007085843-30
+-bs_BindingContract
+3
+-BindingContract6
+f
+f
+0
+1286434579
+0
+-bs_BCEndPoint
+1
+>20101007085502-182
+>20101007085502-183
+>20101007085502-208
+>20101007085502-209
+<20101007085843-32
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085843-6
+>20101007085843-7
+>20101007085502-213
+>20101007085502-214
+<20101007085843-34
+-bs_RefCounter
+0
+N
+t
+<20101007085843-35
+-bs_RefCounter
+0
+<20101007085843-36
+-bs_BindingContract
+3
+-BindingContract7
+f
+f
+0
+1286434620
+0
+-bs_BCEndPoint
+1
+>20101007085502-187
+>20101007085502-188
+<20101007085502-392
+-bs_RefCounter
+0
+<20101007085502-393
+-bs_PortRef
+3
+-fct1
+f
+f
+0
+1286434673
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.715556
+-0.000375
+>20101007085502-121
+>20101007085502-122
+<20101007085843-39
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085843-6
+>20101007085843-7
+<20101007085843-41
+-bs_RefCounter
+0
+<20101007085843-42
+-bs_PortRef
+3
+-pa1
+f
+f
+0
+1286434696
+0
+0
+t
+1
+-bs_ActorCoord
+0
+0.000416667
+0.718375
+>20101007085502-121
+>20101007085502-122
+<20101007085843-44
+-bs_RefCounter
+0
+N
+t
+<20101007085843-45
+-bs_RefCounter
+0
+<20101007085843-46
+-bs_BindingContract
+3
+-BindingContract8
+f
+f
+0
+1286434622
+0
+-bs_BCEndPoint
+1
+>20101007085843-1
+>20101007085843-2
+<20101007085843-48
+-bs_RefCounter
+0
+<20101007085843-49
+-bs_PortRef
+3
+-fct
+f
+f
+0
+1286434615
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.405347
+0
+>20101007085502-151
+>20101007085502-152
+<20101007085843-51
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085843-6
+>20101007085843-7
+<20101007085843-53
+-bs_RefCounter
+0
+<20101007085843-54
+-bs_PortRef
+3
+-pb
+f
+f
+0
+1286434606
+0
+0
+t
+1
+-bs_ActorCoord
+0
+1
+0.511625
+>20101007085502-151
+>20101007085502-152
+<20101007085843-56
+-bs_RefCounter
+0
+N
+t
+<20101007085843-57
+-bs_RefCounter
+0
+<20101007085843-58
+-bs_BindingContract
+3
+-BindingContract9
+f
+f
+0
+1286434712
+0
+-bs_BCEndPoint
+1
+>20101007085843-6
+>20101007085843-7
+<20101007085843-60
+-bs_RefCounter
+0
+<20101007085843-61
+-bs_PortRef
+3
+-pa2
+f
+f
+0
+1286434707
+0
+0
+t
+1
+-bs_ActorCoord
+0
+0
+0.2685
+>20101007085502-121
+>20101007085502-122
+<20101007085843-63
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085502-187
+>20101007085502-188
+<20101007085843-65
+-bs_RefCounter
+0
+<20101007085843-66
+-bs_PortRef
+3
+-fct2
+f
+f
+0
+1286434683
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.307639
+0
+>20101007085502-121
+>20101007085502-122
+<20101007085843-68
+-bs_RefCounter
+0
+N
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286433774
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286433774
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286433774
+0
+f
+0
+1286433774
+-bs_ActorBehaviour
+7
+<20101007085502-222
+-bs_RefCounter
+0
+<20101007085502-223
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286433774
+5
+f
+-bs_StateGraph
+8
+<20101007085502-226
+-bs_RefCounter
+0
+<20101007085502-227
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286433774
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286433774
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286433774
+0
+f
+-bs_StateList
+1
+-State
+0
+1286433774
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286433774
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286433774
+0
+f
+t
+65535
+f
+f
+0
+1286433774
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286433774
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286433774
+0
+1286433774
+-bs_ActorMemberFct
+1
+f
+0
+1286433774
+t
+f
+f
+t
+<20101007085502-237
+-bs_RefCounter
+0
+<20101007085502-238
+-bs_ActorClass
+3
+-ACommonBase
+f
+f
+0
+1286433800
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286433858
+0
+t
+>20101007085502-201
+>20101007085502-202
+f
+0
+0
+1286433780
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286433979
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+<20101007085502-243
+-bs_RefCounter
+0
+<20101007085502-244
+-bs_PortRef
+3
+-subbase
+f
+f
+0
+1286434036
+0
+0
+t
+10
+-bs_ActorCoord
+0
+0.155139
+0.79675
+>20101007085502-103
+>20101007085502-104
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286433780
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286433780
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286433780
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286433780
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286433780
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286433780
+0
+f
+0
+1286433780
+-bs_ActorBehaviour
+7
+<20101007085502-254
+-bs_RefCounter
+0
+<20101007085502-255
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286433780
+5
+f
+-bs_StateGraph
+8
+<20101007085502-258
+-bs_RefCounter
+0
+<20101007085502-259
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286433780
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286433780
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286433780
+0
+f
+-bs_StateList
+1
+-State
+0
+1286433780
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286433780
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286433780
+0
+f
+t
+65535
+f
+f
+0
+1286433780
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286433780
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286433780
+0
+1286433780
+-bs_ActorMemberFct
+1
+f
+0
+1286433780
+t
+f
+f
+t
+<20101007085502-269
+-bs_RefCounter
+0
+<20101007085502-270
+-bs_ActorClass
+3
+-AControl
+f
+f
+0
+1286435435
+0
+0
+8
+-ACommonBase
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286433903
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+>20101007085502-213
+>20101007085502-214
+f
+0
+0
+1286433871
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286434021
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+>20101007085502-213
+>20101007085502-214
+t
+>20101007085502-243
+>20101007085502-244
+t
+<20101007085502-275
+-bs_RefCounter
+0
+<20101007085502-276
+-bs_PortRef
+3
+-subctrl
+f
+f
+0
+1286434026
+0
+0
+t
+10
+-bs_ActorCoord
+0
+0.44375
+0.831875
+>20101007085502-139
+>20101007085502-140
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286435435
+0
+t
+<20101007091211-144
+-bs_RefCounter
+0
+<20101007091211-145
+-bs_SAPRef
+3
+-ctrltimout
+f
+f
+0
+1286435435
+0
+0
+>20101007085502-166
+>20101007085502-167
+1
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286433871
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286433871
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286433871
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286433871
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286433871
+0
+f
+0
+1286433871
+-bs_ActorBehaviour
+7
+<20101007085502-286
+-bs_RefCounter
+0
+<20101007085502-287
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286433871
+5
+f
+-bs_StateGraph
+8
+<20101007085502-290
+-bs_RefCounter
+0
+<20101007085502-291
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286433871
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286433871
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286433871
+0
+f
+-bs_StateList
+1
+-State
+0
+1286433871
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286433871
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286433871
+0
+f
+t
+65535
+f
+f
+0
+1286433871
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286433871
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286433871
+0
+1286433871
+-bs_ActorMemberFct
+1
+f
+0
+1286433871
+t
+f
+f
+t
+<20101007085502-301
+-bs_RefCounter
+0
+<20101007085502-302
+-bs_ActorClass
+3
+-ABaseController
+f
+f
+0
+1286434097
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286434170
+0
+t
+>20101007085502-196
+>20101007085502-197
+f
+0
+0
+1286434064
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286434170
+0
+t
+>20101007085502-196
+>20101007085502-197
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286434064
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286434064
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286434064
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434064
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286434064
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434064
+0
+f
+0
+1286434064
+-bs_ActorBehaviour
+7
+<20101007085502-315
+-bs_RefCounter
+0
+<20101007085502-316
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286434064
+5
+f
+-bs_StateGraph
+8
+<20101007085502-319
+-bs_RefCounter
+0
+<20101007085502-320
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286434064
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286434064
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286434064
+0
+f
+-bs_StateList
+1
+-State
+0
+1286434064
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286434064
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434064
+0
+f
+t
+65535
+f
+f
+0
+1286434064
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286434064
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434064
+0
+1286434064
+-bs_ActorMemberFct
+1
+f
+0
+1286434064
+t
+f
+f
+t
+<20101007085502-330
+-bs_RefCounter
+0
+<20101007085502-331
+-bs_ActorClass
+3
+-AController
+f
+f
+0
+1286434140
+0
+0
+8
+-ABaseController
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286434201
+0
+t
+>20101007085502-196
+>20101007085502-197
+t
+>20101007085502-208
+>20101007085502-209
+f
+0
+0
+1286434128
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286434201
+0
+t
+>20101007085502-196
+>20101007085502-197
+t
+>20101007085502-208
+>20101007085502-209
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286434128
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286434128
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286434128
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434128
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286434128
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434128
+0
+f
+0
+1286434128
+-bs_ActorBehaviour
+7
+<20101007085502-344
+-bs_RefCounter
+0
+<20101007085502-345
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286434128
+5
+f
+-bs_StateGraph
+8
+<20101007085502-348
+-bs_RefCounter
+0
+<20101007085502-349
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286434128
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286434128
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286434128
+0
+f
+-bs_StateList
+1
+-State
+0
+1286434128
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286434128
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434128
+0
+f
+t
+65535
+f
+f
+0
+1286434128
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286434128
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434128
+0
+1286434128
+-bs_ActorMemberFct
+1
+f
+0
+1286434128
+t
+f
+f
+t
+<20101007085502-359
+-bs_RefCounter
+0
+<20101007085502-360
+-bs_ActorClass
+3
+-ASubA
+f
+f
+0
+1286435487
+0
+0
+8
+-AControl
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286434643
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+>20101007085502-213
+>20101007085502-214
+t
+<20101007085843-69
+-bs_RefCounter
+0
+<20101007085843-70
+-bs_PortRef
+3
+-fct
+f
+f
+0
+1286434643
+0
+0
+f
+1
+-bs_ActorCoord
+0
+0.465417
+0
+>20101007085502-121
+>20101007085502-122
+f
+0
+0
+1286434277
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286434643
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+>20101007085502-213
+>20101007085502-214
+t
+>20101007085502-243
+>20101007085502-244
+t
+>20101007085502-275
+>20101007085502-276
+t
+>20101007085843-69
+>20101007085843-70
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286435487
+0
+t
+>20101007091211-144
+>20101007091211-145
+t
+<20101007091211-216
+-bs_RefCounter
+0
+<20101007091211-217
+-bs_SAPRef
+3
+-timeout
+f
+f
+0
+1286435487
+0
+0
+>20101007085502-166
+>20101007085502-167
+1
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286434277
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286434277
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434277
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286434277
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434277
+0
+f
+0
+1286434277
+-bs_ActorBehaviour
+7
+<20101007085502-373
+-bs_RefCounter
+0
+<20101007085502-374
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286434277
+5
+f
+-bs_StateGraph
+8
+<20101007085502-377
+-bs_RefCounter
+0
+<20101007085502-378
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286434277
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286434277
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286434277
+0
+f
+-bs_StateList
+1
+-State
+0
+1286434277
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286434277
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434277
+0
+f
+t
+65535
+f
+f
+0
+1286434277
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286434277
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434277
+0
+1286434277
+-bs_ActorMemberFct
+1
+f
+0
+1286434277
+t
+f
+f
+t
+<20101007085502-388
+-bs_RefCounter
+0
+<20101007085502-389
+-bs_ActorClass
+3
+-AFunctionA
+f
+f
+0
+1286435504
+0
+0
+8
+-AControl
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286434683
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+>20101007085502-213
+>20101007085502-214
+t
+>20101007085502-392
+>20101007085502-393
+t
+>20101007085843-65
+>20101007085843-66
+f
+0
+0
+1286434302
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286434685
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+>20101007085502-213
+>20101007085502-214
+t
+>20101007085502-243
+>20101007085502-244
+t
+>20101007085502-275
+>20101007085502-276
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286435501
+0
+t
+>20101007091211-144
+>20101007091211-145
+t
+<20101007091211-241
+-bs_RefCounter
+0
+<20101007091211-242
+-bs_SAPRef
+3
+-timeout
+f
+f
+0
+1286435460
+0
+0
+>20101007085502-166
+>20101007085502-167
+1
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286434397
+0
+t
+<20101007085502-399
+-bs_RefCounter
+0
+<20101007085502-400
+-bs_ActorRef
+3
+-sub1
+f
+f
+0
+1286434384
+1
+-bs_ActorCoord
+0
+0.303125
+0.282
+-bs_SizeFactors
+0
+3.00188
+1
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286434382
+0
+f
+3
+-ASubA
+t
+<20101007085502-404
+-bs_RefCounter
+0
+<20101007085502-405
+-bs_ActorRef
+3
+-sub2
+f
+f
+0
+1286434399
+1
+-bs_ActorCoord
+0
+0.740347
+0.25225
+-bs_SizeFactors
+0
+3.00188
+1
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1286434397
+0
+f
+3
+-ASubA
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286434685
+0
+t
+<20101007085502-410
+-bs_RefCounter
+0
+<20101007085502-411
+-bs_BindingContract
+3
+-BindingContract1
+f
+f
+0
+1286434386
+0
+-bs_BCEndPoint
+1
+<20101007085502-413
+-bs_RefCounter
+0
+N
+>20101007085502-243
+>20101007085502-244
+<20101007085502-414
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085502-399
+>20101007085502-400
+>20101007085502-201
+>20101007085502-202
+<20101007085502-416
+-bs_RefCounter
+0
+N
+t
+<20101007085502-417
+-bs_RefCounter
+0
+<20101007085502-418
+-bs_BindingContract
+3
+-BindingContract2
+f
+f
+0
+1286434389
+0
+-bs_BCEndPoint
+1
+<20101007085502-420
+-bs_RefCounter
+0
+N
+>20101007085502-275
+>20101007085502-276
+<20101007085502-421
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085502-399
+>20101007085502-400
+>20101007085502-213
+>20101007085502-214
+<20101007085502-423
+-bs_RefCounter
+0
+N
+t
+<20101007085502-424
+-bs_RefCounter
+0
+<20101007085502-425
+-bs_BindingContract
+3
+-BindingContract3
+f
+f
+0
+1286434402
+0
+-bs_BCEndPoint
+1
+<20101007085502-427
+-bs_RefCounter
+0
+N
+>20101007085502-243
+>20101007085502-244
+<20101007085502-428
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085502-404
+>20101007085502-405
+>20101007085502-201
+>20101007085502-202
+<20101007085502-430
+-bs_RefCounter
+0
+N
+t
+<20101007085502-431
+-bs_RefCounter
+0
+<20101007085502-432
+-bs_BindingContract
+3
+-BindingContract4
+f
+f
+0
+1286434404
+0
+-bs_BCEndPoint
+1
+<20101007085502-434
+-bs_RefCounter
+0
+N
+>20101007085502-275
+>20101007085502-276
+<20101007085502-435
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085502-404
+>20101007085502-405
+>20101007085502-213
+>20101007085502-214
+<20101007085502-437
+-bs_RefCounter
+0
+N
+t
+<20101007085843-72
+-bs_RefCounter
+0
+<20101007085843-73
+-bs_BindingContract
+3
+-BindingContract5
+f
+f
+0
+1286434653
+0
+-bs_BCEndPoint
+1
+<20101007085843-75
+-bs_RefCounter
+0
+N
+>20101007085502-392
+>20101007085502-393
+<20101007085843-76
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085502-404
+>20101007085502-405
+>20101007085843-69
+>20101007085843-70
+<20101007085843-78
+-bs_RefCounter
+0
+N
+t
+<20101007085843-79
+-bs_RefCounter
+0
+<20101007085843-80
+-bs_BindingContract
+3
+-BindingContract6
+f
+f
+0
+1286434685
+0
+-bs_BCEndPoint
+1
+<20101007085843-82
+-bs_RefCounter
+0
+N
+>20101007085843-65
+>20101007085843-66
+<20101007085843-83
+-bs_RefCounter
+0
+N
+-bs_BCEndPoint
+1
+>20101007085502-399
+>20101007085502-400
+>20101007085843-69
+>20101007085843-70
+<20101007085843-85
+-bs_RefCounter
+0
+N
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434302
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286434302
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434302
+0
+f
+0
+1286434302
+-bs_ActorBehaviour
+7
+<20101007085502-443
+-bs_RefCounter
+0
+<20101007085502-444
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286434302
+5
+f
+-bs_StateGraph
+8
+<20101007085502-447
+-bs_RefCounter
+0
+<20101007085502-448
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286434302
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286434302
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286434302
+0
+f
+-bs_StateList
+1
+-State
+0
+1286434302
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286434302
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434302
+0
+f
+t
+65535
+f
+f
+0
+1286434302
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286434302
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434302
+0
+1286434302
+-bs_ActorMemberFct
+1
+f
+0
+1286434302
+t
+f
+f
+t
+<20101007085843-86
+-bs_RefCounter
+0
+<20101007085843-87
+-bs_ActorClass
+3
+-AFunctionB
+f
+f
+0
+1286449811
+0
+0
+8
+-AControl
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286434615
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+>20101007085502-213
+>20101007085502-214
+t
+>20101007085843-48
+>20101007085843-49
+f
+0
+0
+1286434509
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286434615
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+>20101007085502-213
+>20101007085502-214
+t
+>20101007085502-243
+>20101007085502-244
+t
+>20101007085502-275
+>20101007085502-276
+t
+>20101007085843-48
+>20101007085843-49
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286449811
+0
+t
+>20101007091211-144
+>20101007091211-145
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286434509
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286434509
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434509
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286434509
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434509
+0
+f
+0
+1286434509
+-bs_ActorBehaviour
+7
+<20101007085843-100
+-bs_RefCounter
+0
+<20101007085843-101
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286434509
+5
+f
+-bs_StateGraph
+8
+<20101007085843-104
+-bs_RefCounter
+0
+<20101007085843-105
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286434509
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286434509
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286434509
+0
+f
+-bs_StateList
+1
+-State
+0
+1286434509
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286434509
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434509
+0
+f
+t
+65535
+f
+f
+0
+1286434509
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286434509
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434509
+0
+1286434509
+-bs_ActorMemberFct
+1
+f
+0
+1286434509
+t
+f
+f
+t
+<20101007085843-115
+-bs_RefCounter
+0
+<20101007085843-116
+-bs_ActorClass
+3
+-AClient
+f
+f
+0
+1286434559
+0
+0
+8
+-AControl
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1286434707
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+>20101007085502-213
+>20101007085502-214
+t
+>20101007085843-41
+>20101007085843-42
+t
+>20101007085843-53
+>20101007085843-54
+t
+>20101007085843-60
+>20101007085843-61
+f
+0
+0
+1286434548
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1286434707
+0
+t
+>20101007085502-201
+>20101007085502-202
+t
+>20101007085502-213
+>20101007085502-214
+t
+>20101007085502-243
+>20101007085502-244
+t
+>20101007085502-275
+>20101007085502-276
+t
+>20101007085843-41
+>20101007085843-42
+t
+>20101007085843-53
+>20101007085843-54
+t
+>20101007085843-60
+>20101007085843-61
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1286434548
+0
+t
+>20101007091211-144
+>20101007091211-145
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1286434548
+0
+f
+-bs_BindingContractList
+1
+-BindingContract
+0
+1286434548
+0
+f
+-bs_SizeFactors
+0
+1.8
+1
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434548
+-bs_PrtvRefList
+1
+-Primitive
+0
+1286434548
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434548
+0
+f
+0
+1286434548
+-bs_ActorBehaviour
+7
+<20101007085843-129
+-bs_RefCounter
+0
+<20101007085843-130
+-bs_StateMachine
+4
+-bs_DataMemberList
+1
+-var
+0
+1286434548
+5
+f
+-bs_StateGraph
+8
+<20101007085843-133
+-bs_RefCounter
+0
+<20101007085843-134
+-bs_InitialPoint
+3
+-
+f
+f
+0
+1286434548
+0
+-bs_ContextCoord
+0
+0.07
+0.93
+-bs_ChoicepointList
+1
+-CP
+0
+1286434548
+0
+f
+-bs_TrPointList
+1
+-TrP
+0
+1286434548
+0
+f
+-bs_StateList
+1
+-State
+0
+1286434548
+0
+f
+-bs_TrSegmentList
+1
+-TrSegmentListDummyName
+0
+1286434548
+0
+f
+-bs_NoteList
+1
+-Note
+0
+1286434548
+0
+f
+t
+65535
+f
+f
+0
+1286434548
+-bs_SizeFactors
+0
+1
+1
+t
+0
+1286434548
+-
+-
+-
+1024
+-bs_SnapInfo
+0
+1700
+1700
+30
+20
+0
+0
+1286434548
+0
+1286434548
+-bs_ActorMemberFct
+1
+f
+0
+1286434548
+t
+f
+f
+f
+-------------------------------
+
+
+ROOM_CONFIGURATION_DATA
+
+106
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ConfigurationList
+-bs_ConfigurationList
+1
+-Configuration
+0
+1286433748
+0
+t
+<20101007085502-459
+-bs_RefCounter
+0
+<20101007085502-460
+-bs_Configuration
+3
+-StdConfig
+f
+f
+0
+1286433748
+6
+>20101007085502-174
+>20101007085502-175
+-bs_TargetList
+1
+-Target
+0
+1286433748
+0
+t
+<20101007085502-463
+-bs_RefCounter
+0
+<20101007085502-464
+-bs_Target
+3
+-PC
+f
+f
+0
+1286433748
+5
+-pc_id
+0
+0
+2
+2
+-bs_FileList
+1
+-FileListDummyName
+0
+1286433748
+0
+f
+f
+-bs_ContextCoord
+0
+0.5
+0.5
+-bs_SizeFactors
+0
+1
+1
+f
+-bs_NoteList
+1
+-Note
+0
+1286433748
+0
+f
+-bs_PrtvDescriptorList
+1
+-PrtvInstance
+0
+1286433748
+0
+f
+-bs_ActorInstanceList
+1
+-ActorInstance
+0
+1286433748
+0
+t
+<20101007090643-1
+-bs_RefCounter
+0
+<20101007090643-2
+-bs_ActorInstance
+3
+-ComponentMain
+f
+f
+0
+1286435175
+5
+8
+<20101007090643-3
+-bs_RefCounter
+0
+N
+0
+f
+<20101007091211-333
+-bs_DataMemberList
+1
+-var
+0
+1286435378
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286435175
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286435175
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286435175
+0
+f
+t
+1024
+t
+<20101007090643-7
+-bs_RefCounter
+0
+<20101007090643-8
+-bs_ActorInstance
+3
+-ComponentMain/controller
+f
+f
+0
+1286435175
+5
+8
+<20101007090643-9
+-bs_RefCounter
+0
+N
+0
+f
+<20101007091211-337
+-bs_DataMemberList
+1
+-var
+0
+1286435378
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286435175
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286435175
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286435175
+0
+f
+t
+1024
+t
+<20101007090643-13
+-bs_RefCounter
+0
+<20101007090643-14
+-bs_ActorInstance
+3
+-ComponentMain/fcta
+f
+f
+0
+1286435175
+5
+8
+<20101007090643-15
+-bs_RefCounter
+0
+N
+0
+f
+<20101007091211-341
+-bs_DataMemberList
+1
+-var
+0
+1286435378
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286435175
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286435175
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286435504
+0
+f
+t
+1024
+t
+<20101007090643-19
+-bs_RefCounter
+0
+<20101007090643-20
+-bs_ActorInstance
+3
+-ComponentMain/fcta/sub1
+f
+f
+0
+1286435175
+5
+8
+<20101007090643-21
+-bs_RefCounter
+0
+N
+0
+f
+<20101007091211-345
+-bs_DataMemberList
+1
+-var
+0
+1286435378
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286435175
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286435175
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286435487
+0
+f
+t
+1024
+t
+<20101007090643-25
+-bs_RefCounter
+0
+<20101007090643-26
+-bs_ActorInstance
+3
+-ComponentMain/fcta/sub2
+f
+f
+0
+1286435175
+5
+8
+<20101007090643-27
+-bs_RefCounter
+0
+N
+0
+f
+<20101007091211-349
+-bs_DataMemberList
+1
+-var
+0
+1286435378
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286435175
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286435175
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286435487
+0
+f
+t
+1024
+t
+<20101007090643-31
+-bs_RefCounter
+0
+<20101007090643-32
+-bs_ActorInstance
+3
+-ComponentMain/fctb
+f
+f
+0
+1286435175
+5
+8
+<20101007090643-33
+-bs_RefCounter
+0
+N
+0
+f
+<20101007091211-353
+-bs_DataMemberList
+1
+-var
+0
+1286435378
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286435175
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286435175
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286449811
+0
+f
+t
+1024
+t
+<20101007090643-37
+-bs_RefCounter
+0
+<20101007090643-38
+-bs_ActorInstance
+3
+-ComponentMain/client
+f
+f
+0
+1286435175
+5
+8
+<20101007090643-39
+-bs_RefCounter
+0
+N
+0
+f
+<20101007091211-357
+-bs_DataMemberList
+1
+-var
+0
+1286435378
+5
+f
+t
+t
+0
+0
+0
+0
+-bs_ProbeList
+1
+-ProbeListDummyName
+0
+1286435175
+0
+f
+-bs_PortInstanceList
+1
+-PortInstListDummyName
+0
+1286435175
+0
+f
+-bs_GUIItemList
+1
+-GUIItemListDummyName
+0
+1286435175
+0
+f
+t
+1024
+f
+>20101007085502-463
+>20101007085502-464
+0
+-bs_PropertySet
+0
+f
+-bs_ViewMementoList
+1
+-ViewMemento
+0
+1292431751
+0
+t
+<20101215174911-350
+-bs_RefCounter
+0
+<20101215174911-351
+-bs_ViewMemento
+3
+-
+f
+f
+0
+1292431751
+1
+0
+1
+25
+25
+872
+524
+>20101007085502-174
+>20101007085502-175
+-ComponentMain/fcta
+f
+f
+>20101007085502-459
+>20101007085502-460
+-842150451
+-bs_DataObjHist
+0
+0
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/InstanceTestsActivator.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/InstanceTestsActivator.java
new file mode 100644
index 000000000..be7fd55f3
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/InstanceTestsActivator.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * 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.generator;
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+
+public class InstanceTestsActivator extends Plugin implements BundleActivator {
+
+ private static InstanceTestsActivator instance = null;
+
+ public static InstanceTestsActivator getInstance() {
+ return instance;
+ }
+
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+
+ instance = this;
+ }
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestConnectedPorts.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestConnectedPorts.java
new file mode 100644
index 000000000..2823073f9
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestConnectedPorts.java
@@ -0,0 +1,90 @@
+/*******************************************************************************
+ * 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.generator;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.generator.etricegen.ETriceGenPackage;
+import org.eclipse.etrice.generator.etricegen.PortInstance;
+import org.eclipse.etrice.generator.etricegen.PortKind;
+import org.eclipse.etrice.generator.etricegen.Root;
+import org.junit.Before;
+import org.junit.Test;
+
+
+public class TestConnectedPorts extends TestInstanceModelBuilderBase {
+
+ private Root root;
+ private HashMap<EClass, ArrayList<EObject>> instances;
+
+ @Before
+ public void setUp() {
+ prepare();
+
+ root = buildInstanceModel("connected_ports.room");
+ instances = collectInstances(root);
+ }
+
+ @Test
+ public void testPortNumbers() {
+ ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
+ assertEquals("Number of PortInstances", 19, ports.size());
+ }
+
+ @Test
+ public void testRelayPort() {
+ ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
+
+ PortInstance p = (PortInstance) getInstance(ports, "/CMain/test_a1/relay");
+ assertNotNull("port expected", p);
+ assertEquals("relay port expected", PortKind.RELAY, p.getKind());
+ assertFalse("no conjuagted port expected", p.getPort().isConjugated());
+ }
+
+ @Test
+ public void testInternalEndPort() {
+ ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
+
+ PortInstance p = (PortInstance) getInstance(ports, "/CMain/test_a2/int_end");
+ assertNotNull("port expected", p);
+ assertEquals("internal port expected", PortKind.INTERNAL, p.getKind());
+ assertTrue("conjuagted port expected", p.getPort().isConjugated());
+ assertEquals("port connected once", 1, p.getPeers().size());
+ PortInstance peer = (PortInstance) getInstance(p.getPeers(), "/CMain/test_a2/sub/p2");
+ assertNotNull("peer expected", peer);
+ PortInstance start = (PortInstance) getInstance(peer.getPeers(), "/CMain/test_a2/int_end");
+ assertNotNull("peer expected", start);
+ assertEquals("peer of peer is start", p, start);
+ }
+
+ @Test
+ public void testExternalEndPortConnectedToRelayPort() {
+ ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
+
+ PortInstance p = (PortInstance) getInstance(ports, "/CMain/test_a2/sub/p1");
+ assertNotNull("port expected", p);
+ assertEquals("external port expected", PortKind.EXTERNAL, p.getKind());
+ assertEquals("port connected once", 1, p.getPeers().size());
+ PortInstance peer = (PortInstance) getInstance(p.getPeers(), "/CMain/test_b/sub1/p");
+ assertEquals("port connected twice", 2, peer.getPeers().size());
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestHierarchy.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestHierarchy.java
new file mode 100644
index 000000000..2038f5396
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestHierarchy.java
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * 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.generator;
+
+import static org.junit.Assert.*;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.generator.etricegen.ActorInstance;
+import org.eclipse.etrice.generator.etricegen.ETriceGenPackage;
+import org.eclipse.etrice.generator.etricegen.Root;
+import org.junit.Before;
+import org.junit.Test;
+
+
+public class TestHierarchy extends TestInstanceModelBuilderBase {
+
+ private Root root;
+
+ @Before
+ public void setUp() {
+ prepare();
+
+ root = buildInstanceModel("hierarchy.room");
+ }
+
+ @Test
+ public void testInstances() {
+
+ HashMap<EClass,ArrayList<EObject>> instances = collectInstances(root);
+
+ assertEquals("Number of ComponentInstances", 1, instances.get(ETriceGenPackage.eINSTANCE.getSubSystemInstance()).size());
+ assertEquals("Number of ActorInstances", 18, instances.get(ETriceGenPackage.eINSTANCE.getActorInstance()).size());
+
+ ActorInstance ai = root.getSubSystems().get(0).getInstances().get(0);
+ assertEquals("Instance Path", "/CMain/l1a", ai.getPath());
+
+ ai = ai.getInstances().get(1);
+ assertEquals("Instance Path", "/CMain/l1a/l2b", ai.getPath());
+
+ ai = ai.getInstances().get(2);
+ assertEquals("Instance Path", "/CMain/l1a/l2b/l3c", ai.getPath());
+ }
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestInstanceModelBuilderBase.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestInstanceModelBuilderBase.java
new file mode 100644
index 000000000..673694c88
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestInstanceModelBuilderBase.java
@@ -0,0 +1,158 @@
+/*******************************************************************************
+ * 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.generator;
+
+import static org.junit.Assert.fail;
+
+import java.io.IOException;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.etrice.core.naming.RoomNameProvider;
+import org.eclipse.xtext.resource.XtextResource;
+import org.eclipse.xtext.resource.XtextResourceSet;
+
+import org.eclipse.etrice.core.room.RoomModel;
+import org.eclipse.etrice.core.room.StateGraphItem;
+import org.eclipse.etrice.generator.builder.ILogger;
+import org.eclipse.etrice.generator.builder.InstanceModelBuilder;
+import org.eclipse.etrice.generator.etricegen.IDiagnostician;
+import org.eclipse.etrice.generator.etricegen.InstanceBase;
+import org.eclipse.etrice.generator.etricegen.Root;
+
+public class TestInstanceModelBuilderBase {
+
+ class Logger implements ILogger {
+
+ @Override
+ public void logInfo(String text) {
+ }
+
+ @Override
+ public void logError(String text, EObject obj) {
+ }
+
+ }
+
+ class Diagnostician implements IDiagnostician {
+
+ @Override
+ public void warning(String msg, EObject source) {
+ }
+
+ @Override
+ public void warning(String msg, EObject source, int feature) {
+ }
+
+ @Override
+ public void error(String msg, EObject source) {
+ fail(msg+RoomNameProvider.getLocation(source));
+ }
+
+ @Override
+ public void error(String msg, EObject source, int feature) {
+ fail(msg+RoomNameProvider.getLocation(source));
+ }
+
+ @Override
+ public boolean isFailed() {
+ return false;
+ }
+
+ }
+
+ private String basePath;
+
+ protected void prepare() {
+ try {
+ URL modelsDir = InstanceTestsActivator.getInstance().getBundle().getEntry("models");
+ URL fileURL = FileLocator.toFileURL(modelsDir);
+ basePath = fileURL.getFile();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+ protected LinkedList<RoomModel> getModels(String modelName) {
+ LinkedList<RoomModel> models = new LinkedList<RoomModel>();
+ XtextResourceSet rs = new XtextResourceSet();
+ rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE);
+ String path = basePath + modelName;
+ URI uri = URI.createFileURI(path);
+ Resource resource = rs.getResource(uri, true);
+ Object root = resource.getContents().get(0);
+ if (root instanceof RoomModel)
+ models.add((RoomModel) root);
+ else
+ fail("File contains no RoomModel as root object");
+
+ return models;
+ }
+
+ protected Root buildInstanceModel(String modelName) {
+ InstanceModelBuilder builder = new InstanceModelBuilder(new Logger(), new Diagnostician());
+ LinkedList<RoomModel> models = getModels(modelName);
+ Root root = builder.createInstanceModel(models);
+ return root;
+ }
+
+ protected HashMap<EClass, ArrayList<EObject>> collectInstances(EObject root) {
+ HashMap<EClass, ArrayList<EObject>> result = new HashMap<EClass, ArrayList<EObject>>();
+
+ TreeIterator<EObject> it = root.eAllContents();
+ while (it.hasNext()) {
+ EObject obj = it.next();
+ EClass ecl = obj.eClass();
+ ArrayList<EObject> instances = result.get(ecl);
+ if (instances==null) {
+ instances = new ArrayList<EObject>();
+ result.put(ecl, instances);
+ }
+ instances.add(obj);
+ }
+
+ return result;
+ }
+
+ protected InstanceBase getInstance(List<? extends EObject> objects, String path) {
+ for (EObject obj : objects) {
+ if (obj instanceof InstanceBase) {
+ InstanceBase inst = (InstanceBase) obj;
+ if (inst.getPath().equals(path))
+ return inst;
+ }
+ }
+ return null;
+ }
+
+ protected StateGraphItem getStateGraphItem(List<? extends EObject> objects, String path) {
+ for (EObject obj : objects) {
+ if (obj instanceof StateGraphItem) {
+ StateGraphItem item = (StateGraphItem) obj;
+ if (RoomNameProvider.getFullPath(item).equals(path))
+ return item;
+ }
+ }
+ return null;
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestLayers.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestLayers.java
new file mode 100644
index 000000000..b8bb08a37
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestLayers.java
@@ -0,0 +1,73 @@
+/*******************************************************************************
+ * 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.generator;
+
+import static org.junit.Assert.*;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.generator.etricegen.ETriceGenPackage;
+import org.eclipse.etrice.generator.etricegen.InterfaceItemInstance;
+import org.eclipse.etrice.generator.etricegen.Root;
+import org.eclipse.etrice.generator.etricegen.SAPInstance;
+import org.eclipse.etrice.generator.etricegen.ServiceImplInstance;
+import org.junit.Before;
+import org.junit.Test;
+
+
+public class TestLayers extends TestInstanceModelBuilderBase {
+
+ private Root root;
+ private HashMap<EClass, ArrayList<EObject>> instances;
+
+ @Before
+ public void setUp() {
+ prepare();
+
+ root = buildInstanceModel("layers.room");
+ instances = collectInstances(root);
+ }
+
+ @Test
+ public void testInstanceNumbers() {
+ ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance());
+ assertEquals("Number of SAPInstances", 6, saps.size());
+
+ ArrayList<EObject> spps = instances.get(ETriceGenPackage.eINSTANCE.getSPPInstance());
+ assertEquals("Number of SPPInstances", 7, spps.size());
+
+ ArrayList<EObject> svcs = instances.get(ETriceGenPackage.eINSTANCE.getServiceImplInstance());
+ assertEquals("Number of ServiceImplInstances", 3, svcs.size());
+ }
+
+ @Test
+ public void testLayerConnections() {
+ ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance());
+
+ for (EObject obj : saps) {
+ assertEquals("SAP has one peer", 1, ((SAPInstance)obj).getPeers().size());
+ }
+
+ SAPInstance sap = (SAPInstance) getInstance(saps, "/CMain/app/subsysA/userX/sap");
+ assertNotNull("sap expected", sap);
+ InterfaceItemInstance peer = ((SAPInstance)sap).getPeers().get(0);
+ assertTrue("peer is a service", (peer instanceof ServiceImplInstance));
+ ServiceImplInstance svc = (ServiceImplInstance) peer;
+ assertEquals("number of serviceA peers", 3, svc.getPeers().size());
+ assertEquals("sap and service have same protocol", sap.getSap().getProtocol(), svc.getSvcImpl().getSpp().getProtocol());
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestPorts.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestPorts.java
new file mode 100644
index 000000000..ac093315f
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestPorts.java
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ * 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.generator;
+
+import static org.junit.Assert.assertEquals;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.generator.etricegen.ETriceGenPackage;
+import org.eclipse.etrice.generator.etricegen.PortInstance;
+import org.eclipse.etrice.generator.etricegen.Root;
+import org.junit.Before;
+import org.junit.Test;
+
+
+public class TestPorts extends TestInstanceModelBuilderBase {
+
+ private Root root;
+
+ @Before
+ public void setUp() {
+ prepare();
+
+ root = buildInstanceModel("ports.room");
+ }
+
+ @Test
+ public void testPortNumbers() {
+ HashMap<EClass, ArrayList<EObject>> instances = collectInstances(root);
+ assertEquals("Number of PortInstances", 3, instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()).size());
+ }
+
+ @Test
+ public void testPortInstancePaths() {
+ PortInstance pi = root.getSubSystems().get(0).getInstances().get(0).getPorts().get(0);
+ assertEquals("Port Name", "/CMain/test/externalEnd", pi.getPath());
+
+ pi = root.getSubSystems().get(0).getInstances().get(0).getPorts().get(1);
+ assertEquals("Port Name", "/CMain/test/internalEnd", pi.getPath());
+
+ pi = root.getSubSystems().get(0).getInstances().get(0).getPorts().get(2);
+ assertEquals("Port Name", "/CMain/test/relay", pi.getPath());
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStates.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStates.java
new file mode 100644
index 000000000..1500f48ba
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStates.java
@@ -0,0 +1,120 @@
+/*******************************************************************************
+ * 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.generator;
+
+import static org.junit.Assert.*;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.core.naming.RoomNameProvider;
+import org.junit.Before;
+import org.junit.Test;
+
+import org.eclipse.etrice.core.room.ChoicePoint;
+import org.eclipse.etrice.core.room.ContinuationTransition;
+import org.eclipse.etrice.core.room.RoomPackage;
+import org.eclipse.etrice.core.room.State;
+import org.eclipse.etrice.core.room.Transition;
+import org.eclipse.etrice.generator.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.generator.etricegen.Root;
+import org.eclipse.etrice.generator.etricegen.TransitionChain;
+
+public class TestStates extends TestInstanceModelBuilderBase {
+
+ private Root root;
+ private HashMap<EClass, ArrayList<EObject>> instances;
+
+ @Before
+ public void setUp() {
+ prepare();
+
+ root = buildInstanceModel("states.room");
+ instances = collectInstances(root.getXpActorClasses().get(0));
+ }
+
+ @Test
+ public void testNumbers() {
+ assertEquals("number of states", 7, instances.get(RoomPackage.eINSTANCE.getBaseState()).size());
+ assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size());
+ assertEquals("number of transition points", 2, instances.get(RoomPackage.eINSTANCE.getTransitionPoint()).size());
+ assertEquals("number of entry points", 1, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size());
+ assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size());
+ assertEquals("number of initial transitions", 2, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size());
+ assertEquals("number of triggered transitions", 9, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size());
+ assertEquals("number of continuation transitions", 3, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size());
+ assertEquals("number of branch transitions", 2, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size());
+ }
+
+ @Test
+ public void testXPACGeneral() {
+ ExpandedActorClass xpac = root.getXpActorClasses().get(0);
+ assertEquals("actor class", xpac.getActorClass().getName(), "ATest");
+ EList<TransitionChain> chains = xpac.getTransitionChains();
+ assertEquals("number of chains", 11, chains.size());
+ assertEquals("numer of triggers", 3, xpac.getTriggers().size());
+ }
+
+ @Test
+ public void testGraph() {
+ ArrayList<EObject> states = instances.get(RoomPackage.eINSTANCE.getBaseState());
+// for (EObject obj : states) {
+// LogicalSystem.out.println("state "+RoomNameProvider.getFullPath((StateGraphItem) obj));
+// }
+
+ ExpandedActorClass xpac = root.getXpActorClasses().get(0);
+
+ State s = (State) getStateGraphItem(states, "State3_State3");
+ assertNotNull("state exists", s);
+ assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size());
+ assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(s).size());
+
+ assertEquals("active triggers", 3, xpac.getActiveTriggers(s).size());
+
+ s = (State) getStateGraphItem(states, "State2");
+ assertNotNull("state exists", s);
+ assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size());
+ assertEquals("number of outgoing transitions", 1, xpac.getOutgoingTransitions(s).size());
+
+ assertEquals("active triggers", 2, xpac.getActiveTriggers(s).size());
+
+ ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint());
+
+ ChoicePoint cp = (ChoicePoint) cps.get(0);
+ assertEquals("choicepoint name", "CP1", RoomNameProvider.getFullPath(cp));
+ assertEquals("number of incoming transitions", 1, xpac.getIncomingTransitions(cp).size());
+ assertEquals("number of outgoing transitions", 3, xpac.getOutgoingTransitions(cp).size());
+
+ ContinuationTransition dflt = xpac.getDefaultBranch(xpac.getOutgoingTransitions(cp));
+ assertNotNull("default branch", dflt);
+ }
+
+ @Test
+ public void testChains() {
+ ArrayList<EObject> cts = instances.get(RoomPackage.eINSTANCE.getContinuationTransition());
+// for (EObject obj : cts) {
+// LogicalSystem.out.println("ct "+RoomNameProvider.getFullPath((StateGraphItem) obj));
+// }
+
+ Transition t = (Transition) getStateGraphItem(cts, "State3_TRANS_tp1_TO_State3");
+ assertNotNull("transition", t);
+
+ ExpandedActorClass xpac = root.getXpActorClasses().get(0);
+ TransitionChain chain = xpac.getChain(t);
+ assertNotNull("chain", chain);
+ assertEquals("chain name", "TRANS_tp0_TO_State3_tp1_BY_afct", RoomNameProvider.getFullPath(chain.getTransition()));
+ }
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStatesAndTriggers.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStatesAndTriggers.java
new file mode 100644
index 000000000..8d3787a1b
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStatesAndTriggers.java
@@ -0,0 +1,144 @@
+/*******************************************************************************
+ * 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.generator;
+
+import static org.junit.Assert.*;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.core.naming.RoomNameProvider;
+import org.junit.Before;
+import org.junit.Test;
+
+import org.eclipse.etrice.core.room.ChoicePoint;
+import org.eclipse.etrice.core.room.ContinuationTransition;
+import org.eclipse.etrice.core.room.Port;
+import org.eclipse.etrice.core.room.RoomPackage;
+import org.eclipse.etrice.core.room.SAPRef;
+import org.eclipse.etrice.core.room.State;
+import org.eclipse.etrice.core.room.Transition;
+import org.eclipse.etrice.generator.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.generator.etricegen.Root;
+import org.eclipse.etrice.generator.etricegen.TransitionChain;
+
+public class TestStatesAndTriggers extends TestInstanceModelBuilderBase {
+
+ private Root root;
+ private ExpandedActorClass xpac;
+ private HashMap<EClass, ArrayList<EObject>> instances;
+
+ @Before
+ public void setUp() {
+ prepare();
+
+ root = buildInstanceModel("states_triggers.room");
+ xpac = getTestee();
+ instances = collectInstances(xpac);
+ }
+
+ private ExpandedActorClass getTestee() {
+ for (ExpandedActorClass xpac : root.getXpActorClasses()) {
+ if (xpac.getActorClass().getName().equals("ATest"))
+ return xpac;
+ }
+ return null;
+ }
+
+ @Test
+ public void testNumbers() {
+ assertEquals("number of states", 7, instances.get(RoomPackage.eINSTANCE.getBaseState()).size());
+ assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size());
+ assertEquals("number of transition points", 4, instances.get(RoomPackage.eINSTANCE.getTransitionPoint()).size());
+ assertEquals("number of entry points", 1, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size());
+ assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size());
+ assertEquals("number of initial transitions", 2, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size());
+ assertEquals("number of triggered transitions", 11, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size());
+ assertEquals("number of continuation transitions", 3, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size());
+ assertEquals("number of branch transitions", 2, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size());
+ }
+
+ @Test
+ public void testXPACGeneral() {
+ EList<TransitionChain> chains = xpac.getTransitionChains();
+ assertEquals("number of chains", 13, chains.size());
+ assertEquals("numer of triggers", 7, xpac.getTriggers().size());
+ }
+
+ @Test
+ public void testGraph() {
+ ArrayList<EObject> states = instances.get(RoomPackage.eINSTANCE.getBaseState());
+// for (EObject obj : states) {
+// LogicalSystem.out.println("state "+RoomNameProvider.getFullPath((StateGraphItem) obj));
+// }
+
+ State s = (State) getStateGraphItem(states, "State3_State3");
+ assertNotNull("state exists", s);
+ assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size());
+ assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(s).size());
+
+ assertEquals("active triggers", 6, xpac.getActiveTriggers(s).size());
+
+ s = (State) getStateGraphItem(states, "State2");
+ assertNotNull("state exists", s);
+ assertEquals("number of incoming transitions", 4, xpac.getIncomingTransitions(s).size());
+ assertEquals("number of outgoing transitions", 1, xpac.getOutgoingTransitions(s).size());
+
+ assertEquals("active triggers", 3, xpac.getActiveTriggers(s).size());
+
+ ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint());
+
+ ChoicePoint cp = (ChoicePoint) cps.get(0);
+ assertEquals("choicepoint name", "CP1", RoomNameProvider.getFullPath(cp));
+ assertEquals("number of incoming transitions", 1, xpac.getIncomingTransitions(cp).size());
+ assertEquals("number of outgoing transitions", 3, xpac.getOutgoingTransitions(cp).size());
+
+ ContinuationTransition dflt = xpac.getDefaultBranch(xpac.getOutgoingTransitions(cp));
+ assertNotNull("default branch", dflt);
+ }
+
+ @Test
+ public void testChains() {
+ ArrayList<EObject> cts = instances.get(RoomPackage.eINSTANCE.getContinuationTransition());
+// for (EObject obj : cts) {
+// LogicalSystem.out.println("ct "+RoomNameProvider.getFullPath((StateGraphItem) obj));
+// }
+
+ Transition t = (Transition) getStateGraphItem(cts, "State3_TRANS_tp1_TO_State3");
+ assertNotNull("transition", t);
+
+ TransitionChain chain = xpac.getChain(t);
+ assertNotNull("chain", chain);
+ assertEquals("chain name", "TRANS_tp0_TO_State3_tp1_BY_afct", RoomNameProvider.getFullPath(chain.getTransition()));
+ }
+
+ @Test
+ public void testIfItems() {
+ Port fct = xpac.getActorClass().getIfPorts().get(0);
+ Port sub = xpac.getActorClass().getIntPorts().get(0);
+ SAPRef timer = xpac.getActorClass().getStrSAPs().get(0);
+ SAPRef timeout = xpac.getActorClass().getStrSAPs().get(1);
+
+ assertEquals("port name", "fct", fct.getName());
+ assertEquals("port name", "sub", sub.getName());
+ assertEquals("sap name", "timer", timer.getName());
+ assertEquals("sap name", "timeout", timeout.getName());
+
+ assertEquals("port local id", 0, xpac.getInterfaceItemLocalId(fct));
+ assertEquals("port local id", 1, xpac.getInterfaceItemLocalId(sub));
+ assertEquals("sap local id", 2, xpac.getInterfaceItemLocalId(timer));
+ assertEquals("sap local id", 3, xpac.getInterfaceItemLocalId(timeout));
+ }
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStatesInheritance.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStatesInheritance.java
new file mode 100644
index 000000000..1dd5f931c
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStatesInheritance.java
@@ -0,0 +1,144 @@
+/*******************************************************************************
+ * 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.generator;
+
+import static org.junit.Assert.*;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.etrice.core.naming.RoomNameProvider;
+import org.junit.Before;
+import org.junit.Test;
+
+import org.eclipse.etrice.core.room.ChoicePoint;
+import org.eclipse.etrice.core.room.ContinuationTransition;
+import org.eclipse.etrice.core.room.RoomPackage;
+import org.eclipse.etrice.core.room.State;
+import org.eclipse.etrice.core.room.Transition;
+import org.eclipse.etrice.generator.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.generator.etricegen.Root;
+import org.eclipse.etrice.generator.etricegen.TransitionChain;
+
+public class TestStatesInheritance extends TestInstanceModelBuilderBase {
+
+ private Root root;
+ private HashMap<EClass, ArrayList<EObject>> instances;
+ private ExpandedActorClass xpac;
+
+ @Before
+ public void setUp() {
+ prepare();
+
+ root = buildInstanceModel("states_inheritance.room");
+ xpac = getTestee();
+ instances = collectInstances(xpac);
+ }
+
+ private ExpandedActorClass getTestee() {
+ for (ExpandedActorClass xpac : root.getXpActorClasses()) {
+ if (xpac.getActorClass().getName().equals("ADerived"))
+ return xpac;
+ }
+ return null;
+ }
+
+// private void assertEquals(String msg, int exp, int is) {
+// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is);
+// }
+//
+// private void assertEquals(String msg, String exp, String is) {
+// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is);
+// }
+//
+// private void assertEquals(String msg, EObject exp, EObject is) {
+// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is);
+// }
+
+ @Test
+ public void testNumbers() {
+ assertEquals("number of states", 11, instances.get(RoomPackage.eINSTANCE.getBaseState()).size());
+ assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size());
+ assertEquals("number of transition points", 5, instances.get(RoomPackage.eINSTANCE.getTransitionPoint()).size());
+ assertEquals("number of entry points", 2, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size());
+ assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size());
+ assertEquals("number of initial transitions", 3, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size());
+ assertEquals("number of triggered transitions", 17, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size());
+ assertEquals("number of continuation transitions", 4, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size());
+ assertEquals("number of branch transitions", 3, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size());
+ }
+
+ @Test
+ public void testXPACGeneral() {
+ EList<TransitionChain> chains = xpac.getTransitionChains();
+ assertEquals("number of chains", 20, chains.size());
+ assertEquals("numer of triggers", 8, xpac.getTriggers().size());
+ }
+
+ @Test
+ public void testGraph() {
+ ArrayList<EObject> states = instances.get(RoomPackage.eINSTANCE.getBaseState());
+// for (EObject obj : states) {
+// LogicalSystem.out.println("state "+RoomNameProvider.getFullPath((StateGraphItem) obj));
+// }
+
+ State s = (State) getStateGraphItem(states, "State3_State3");
+ assertNotNull("state exists", s);
+ assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size());
+ assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(s).size());
+
+ assertEquals("active triggers", 6, xpac.getActiveTriggers(s).size());
+
+ s = (State) getStateGraphItem(states, "State2");
+ assertNotNull("state exists", s);
+ assertEquals("number of incoming transitions", 4, xpac.getIncomingTransitions(s).size());
+ assertEquals("number of outgoing transitions", 1, xpac.getOutgoingTransitions(s).size());
+
+ assertEquals("active triggers", 3, xpac.getActiveTriggers(s).size());
+
+ ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint());
+
+ ChoicePoint cp = (ChoicePoint) cps.get(0);
+ assertEquals("choicepoint name", "CP1", RoomNameProvider.getFullPath(cp));
+ assertEquals("number of incoming transitions", 1, xpac.getIncomingTransitions(cp).size());
+ assertEquals("number of outgoing transitions", 4, xpac.getOutgoingTransitions(cp).size());
+
+ ContinuationTransition dflt = xpac.getDefaultBranch(xpac.getOutgoingTransitions(cp));
+ assertNotNull("default branch", dflt);
+ }
+
+ @Test
+ public void testChains() {
+ ArrayList<EObject> cts = instances.get(RoomPackage.eINSTANCE.getContinuationTransition());
+// for (EObject obj : cts) {
+// LogicalSystem.out.println("ct "+RoomNameProvider.getFullPath((StateGraphItem) obj));
+// }
+
+ Transition t = (Transition) getStateGraphItem(cts, "State3_TRANS_tp1_TO_State3");
+ assertNotNull("transition", t);
+
+ TransitionChain chain = xpac.getChain(t);
+ assertNotNull("chain", chain);
+ assertEquals("chain name", "TRANS_tp0_TO_State3_tp1_BY_afct", RoomNameProvider.getFullPath(chain.getTransition()));
+
+ t = (Transition) getStateGraphItem(cts, "State3_TRANS_tp6_TO_State2");
+ assertNotNull("transition", t);
+
+ chain = xpac.getChain(t);
+ assertNotNull("chain", chain);
+ assertEquals("chain name", "TRANS_State5_TO_State3_tp6_BY_aport", RoomNameProvider.getFullPath(chain.getTransition()));
+ }
+}
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStructureInheritance.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStructureInheritance.java
new file mode 100644
index 000000000..2f1f22d1c
--- /dev/null
+++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStructureInheritance.java
@@ -0,0 +1,174 @@
+/*******************************************************************************
+ * 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.generator;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.fail;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.junit.Before;
+import org.junit.Test;
+
+import org.eclipse.etrice.core.room.ActorClass;
+import org.eclipse.etrice.core.room.Port;
+import org.eclipse.etrice.core.room.SAPRef;
+import org.eclipse.etrice.generator.etricegen.ETriceGenPackage;
+import org.eclipse.etrice.generator.etricegen.ExpandedActorClass;
+import org.eclipse.etrice.generator.etricegen.InterfaceItemInstance;
+import org.eclipse.etrice.generator.etricegen.PortInstance;
+import org.eclipse.etrice.generator.etricegen.PortKind;
+import org.eclipse.etrice.generator.etricegen.Root;
+import org.eclipse.etrice.generator.etricegen.SAPInstance;
+import org.eclipse.etrice.generator.etricegen.ServiceImplInstance;
+
+public class TestStructureInheritance extends TestInstanceModelBuilderBase {
+
+ private Root root;
+ private ExpandedActorClass xpac;
+ private HashMap<EClass, ArrayList<EObject>> instances;
+
+ @Before
+ public void setUp() {
+ prepare();
+
+ root = buildInstanceModel("structure_inheritance.room");
+ xpac = getTestee();
+ instances = collectInstances(root);
+ }
+
+ private ExpandedActorClass getTestee() {
+ for (ExpandedActorClass xpac : root.getXpActorClasses()) {
+ if (xpac.getActorClass().getName().equals("AFunctionA"))
+ return xpac;
+ }
+ return null;
+ }
+
+// private void assertEquals(String msg, int exp, int is) {
+// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is);
+// }
+//
+// private void assertEquals(String msg, EObject exp, EObject is) {
+// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is);
+// }
+
+ @Test
+ public void testInstanceNumbers() {
+ ArrayList<EObject> actors = instances.get(ETriceGenPackage.eINSTANCE.getActorInstance());
+ assertEquals("Number of ActorInstances", 8, actors.size());
+
+ ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
+ assertEquals("Number of PortInstances", 30, ports.size());
+
+ ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance());
+ assertEquals("Number of SAPInstances", 8, saps.size());
+
+ ArrayList<EObject> spps = instances.get(ETriceGenPackage.eINSTANCE.getSPPInstance());
+ assertEquals("Number of SPPInstances", 2, spps.size());
+
+ ArrayList<EObject> svcs = instances.get(ETriceGenPackage.eINSTANCE.getServiceImplInstance());
+ assertEquals("Number of ServiceImplInstances", 2, svcs.size());
+ }
+
+ @Test
+ public void testLayerConnections() {
+ ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance());
+
+ for (EObject obj : saps) {
+ assertEquals("SAP has one peer", 1, ((SAPInstance)obj).getPeers().size());
+ }
+
+ SAPInstance sap = (SAPInstance) getInstance(saps, "/CMain/application/fcta/sub2/timeout");
+ assertNotNull("sap expected", sap);
+ InterfaceItemInstance peer = ((SAPInstance)sap).getPeers().get(0);
+ assertTrue("peer is a service", (peer instanceof ServiceImplInstance));
+ ServiceImplInstance svc = (ServiceImplInstance) peer;
+ assertEquals("number of serviceA peers", 8, svc.getPeers().size());
+ assertEquals("sap and service have same protocol", sap.getSap().getProtocol(), svc.getSvcImpl().getSpp().getProtocol());
+ }
+
+ private Port getPort(ActorClass ac, String name) {
+ for (Port p : ac.getIfPorts()) {
+ if (p.getName().equals(name))
+ return p;
+ }
+ for (Port p : ac.getIntPorts()) {
+ if (p.getName().equals(name))
+ return p;
+ }
+
+ if (ac.getBase()!=null)
+ return getPort(ac.getBase(), name);
+
+ fail("port "+name+" not found");
+ return null;
+ }
+
+ private SAPRef getSAP(ActorClass ac, String name) {
+ for (SAPRef sap : ac.getStrSAPs()) {
+ if (sap.getName().equals(name))
+ return sap;
+ }
+
+ if (ac.getBase()!=null)
+ return getSAP(ac.getBase(), name);
+
+ fail("sap "+name+" not found");
+ return null;
+ }
+
+ @Test
+ public void testIfItems() {
+ Port base = getPort(xpac.getActorClass(), "base");
+ Port subbase = getPort(xpac.getActorClass(), "subbase");
+ Port ctrl = getPort(xpac.getActorClass(), "ctrl");
+ Port subctrl = getPort(xpac.getActorClass(), "subctrl");
+ Port fct1 = getPort(xpac.getActorClass(), "fct1");
+ Port fct2 = getPort(xpac.getActorClass(), "fct2");
+ SAPRef ctrltimeout = getSAP(xpac.getActorClass(), "ctrltimeout");
+ SAPRef timeout = getSAP(xpac.getActorClass(), "timeout");
+
+ int lid = 0;
+ assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(base));
+ assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(subbase));
+ assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(ctrl));
+ assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(subctrl));
+ assertEquals("sap local id", lid++, xpac.getInterfaceItemLocalId(ctrltimeout));
+ assertEquals("sap local id", lid++, xpac.getInterfaceItemLocalId(timeout));
+ assertEquals("relay port local id", -1, xpac.getInterfaceItemLocalId(fct1));
+ assertEquals("relay port local id", -1, xpac.getInterfaceItemLocalId(fct2));
+ }
+
+ @Test
+ public void testPortConnection() {
+ ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
+
+ PortInstance p = (PortInstance) getInstance(ports, "/CMain/application/fcta/sub2/fct");
+ assertNotNull("port expected", p);
+ assertEquals("external port expected", PortKind.EXTERNAL.getValue(), p.getKind().getValue());
+ assertFalse("no conjuagted port expected", p.getPort().isConjugated());
+ assertEquals("port connected once", 1, p.getPeers().size());
+ PortInstance peer = (PortInstance) getInstance(p.getPeers(), "/CMain/application/client/pa1");
+ assertNotNull("peer expected", peer);
+ peer = (PortInstance) getInstance(peer.getPeers(), "/CMain/application/fcta/sub2/fct");
+ assertNotNull("peer expected", peer);
+ assertEquals("peer of peer is start", p, peer);
+ }
+}
diff --git a/tests/org.eclipse.etrice.integration.tests/.gitignore b/tests/org.eclipse.etrice.integration.tests/.gitignore
new file mode 100644
index 000000000..ba077a403
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/.gitignore
@@ -0,0 +1 @@
+bin
diff --git a/tests/org.eclipse.etrice.integration.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.integration.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..e21c83faa
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,12 @@
+#Fri Sep 17 19:48:42 CEST 2010
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.6
diff --git a/tests/org.eclipse.etrice.integration.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.integration.tests/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..1e51648d3
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,21 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: eTrice Integration Tests
+Bundle-SymbolicName: org.eclipse.etrice.integration.tests
+Bundle-Version: 0.1.0
+Export-Package: org.eclipse.etrice.integration.tests
+Require-Bundle: org.eclipse.etrice.generator;bundle-version="0.1.0",
+ org.eclipse.etrice.generator.java;bundle-version="0.1.0",
+ org.eclipse.emf.mwe2.launch;bundle-version="1.0.1";resolution:=optional,
+ org.eclipse.emf.mwe.utils;bundle-version="1.0.0";visibility:=reexport,
+ org.apache.log4j;bundle-version="1.2.15",
+ org.apache.commons.logging;bundle-version="1.0.4",
+ org.eclipse.jface.text;bundle-version="3.6.0",
+ org.eclipse.jdt.core;bundle-version="3.6.0",
+ org.eclipse.xtend.util.stdlib;bundle-version="1.0.0",
+ org.eclipse.core.runtime;bundle-version="3.6.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.junit4;bundle-version="4.8.1",
+ org.eclipse.xtext.generator;bundle-version="1.0.0"
+Bundle-Vendor: eTrice (Incubation)
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
diff --git a/tests/org.eclipse.etrice.integration.tests/about.html b/tests/org.eclipse.etrice.integration.tests/about.html
new file mode 100644
index 000000000..f47dbddbb
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>June 5, 2006</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/tests/org.eclipse.etrice.integration.tests/build.properties b/tests/org.eclipse.etrice.integration.tests/build.properties
new file mode 100644
index 000000000..2d6ac57da
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/build.properties
@@ -0,0 +1,4 @@
+source.. = src/,\
+ src-gen/
+bin.includes = META-INF/,\
+ .
diff --git a/tests/org.eclipse.etrice.integration.tests/model/IntegrationTestFSMGenerator.room b/tests/org.eclipse.etrice.integration.tests/model/IntegrationTestFSMGenerator.room
new file mode 100644
index 000000000..6b2abdde5
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/model/IntegrationTestFSMGenerator.room
@@ -0,0 +1,319 @@
+RoomModel org.eclipse.etrice.integration.tests {
+
+ DataClass d_Packet {
+ Attribute data : int32
+ }
+
+ 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 ()
+ }
+ }
+
+ ActorClass a_HFSM_Tests {
+ Interface {
+ }
+ Structure {
+ ActorRef HFSM : a_HFSM
+ ActorRef Tester : a_HFSM_Tester
+ Binding Tester.testee and HFSM.fct
+ }
+ Behavior {
+ }
+ }
+
+ ActorClass a_HFSM {
+ Interface {
+ Port fct : p_HFSM
+ }
+ Structure {
+ external Port fct
+ }
+ Behavior {
+ StateMachine {
+ State State1 {
+ entry {
+ "fct.s1_entry();"
+ ""
+ }
+ exit {
+ "fct.s1_exit();"
+ }
+ }
+ State State2 {
+ entry {
+ "fct.s2_entry();"
+ }
+ exit {
+ "fct.s2_exit();"
+ }
+ subgraph {
+ State State1 {
+ entry {
+ "fct.s2s1_entry();"
+ }
+ exit {
+ "fct.s2s1_exit();"
+ }
+ }
+ State State2 {
+ entry {
+ "fct.s2s2_entry();"
+ }
+ exit {
+ "fct.s2s2_exit();"
+ }
+ }
+ EntryPoint tp0
+ ExitPoint tp1
+ TransitionPoint tp3
+ handler TransitionPoint tp4
+ 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();"
+ ""
+ }
+ }
+ }
+ }
+ State State3 {
+ entry {
+ "fct.s3_entry();"
+ }
+ exit {
+ "fct.s3_exit();"
+ }
+ }
+ State State4 {
+ entry {
+ "fct.s4_entry();"
+ }
+ exit {
+ "fct.s4_exit();"
+ }
+ }
+ TransitionPoint tp0
+ TransitionPoint tp1
+ handler TransitionPoint tp2
+ 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();"
+ }
+ }
+ }
+ }
+ }
+
+ ActorClass a_HFSM_Tester {
+ Interface {
+ conjugated Port testee : p_HFSM
+ }
+ Structure {
+ external Port testee
+ }
+ Behavior {
+ StateMachine {
+ State State1 {}
+ State State2 {}
+ State State3 {}
+ State State4 {}
+ State State5 {}
+ State State6 {}
+ State State7 {}
+ State TestPass {
+ entry {
+ "SubSystemClassBase.getInstance().terminate();"
+ }
+ }
+ 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>
+ }
+ }
+ }
+ }
+ }
+
+ SubSystemClass ComponentMain {
+ ActorRef HFSM_Tests : a_HFSM_Tests
+ }
+
+}
diff --git a/tests/org.eclipse.etrice.integration.tests/model/IntegrationTestFSMGenerator.trp b/tests/org.eclipse.etrice.integration.tests/model/IntegrationTestFSMGenerator.trp
new file mode 100644
index 000000000..3c2864617
--- /dev/null
+++ b/tests/org.eclipse.etrice.integration.tests/model/IntegrationTestFSMGenerator.trp
@@ -0,0 +1,4670 @@
+114
+
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_DataClassList
+-bs_DataClassList
+1
+-DataClass
+0
+1282842070
+0
+t
+<20100826185605-2
+-bs_RefCounter
+0
+<20100826185605-3
+-bs_DataClass
+3
+-boolean
+f
+f
+0
+1282841742
+0
+1
+5
+13
+t
+<20100826185605-4
+-bs_RefCounter
+0
+<20100826185605-5
+-bs_DataClass
+3
+-char
+f
+f
+0
+1282841742
+0
+1
+5
+7
+t
+<20100826185605-6
+-bs_RefCounter
+0
+<20100826185605-7
+-bs_DataClass
+3
+-uchar
+f
+f
+0
+1282841742
+0
+1
+5
+14
+t
+<20100826185605-8
+-bs_RefCounter
+0
+<20100826185605-9
+-bs_DataClass
+3
+-int8
+f
+f
+0
+1282841742
+0
+1
+5
+15
+t
+<20100826185605-10
+-bs_RefCounter
+0
+<20100826185605-11
+-bs_DataClass
+3
+-uint8
+f
+f
+0
+1282841742
+0
+1
+5
+18
+t
+<20100826185605-12
+-bs_RefCounter
+0
+<20100826185605-13
+-bs_DataClass
+3
+-int16
+f
+f
+0
+1282841742
+0
+1
+5
+16
+t
+<20100826185605-14
+-bs_RefCounter
+0
+<20100826185605-15
+-bs_DataClass
+3
+-uint16
+f
+f
+0
+1282841742
+0
+1
+5
+19
+t
+<20100826185605-16
+-bs_RefCounter
+0
+<20100826185605-17
+-bs_DataClass
+3
+-int32
+f
+f
+0
+1282841742
+0
+1
+5
+17
+t
+<20100826185605-18
+-bs_RefCounter
+0
+<20100826185605-19
+-bs_DataClass
+3
+-uint32
+f
+f
+0
+1282841742
+0
+1
+5
+20
+t
+<20100826185605-20
+-bs_RefCounter
+0
+<20100826185605-21
+-bs_DataClass
+3
+-float32
+f
+f
+0
+1282841742
+0
+1
+5
+21
+t
+<20100826185605-22
+-bs_RefCounter
+0
+<20100826185605-23
+-bs_DataClass
+3
+-float64
+f
+f
+0
+1282841742
+0
+1
+5
+22
+t
+<20100826185605-24
+-bs_RefCounter
+0
+<20100826185605-25
+-bs_DataClass
+3
+-char*
+f
+f
+0
+1282841742
+0
+1
+5
+12
+-
+t
+<20100826185605-26
+-bs_RefCounter
+0
+<20100826185605-27
+-bs_DataClass
+3
+-void*
+f
+f
+0
+1282841742
+0
+1
+5
+12
+-
+t
+<20100826190408-1
+-bs_RefCounter
+0
+<20100826190408-2
+-bs_DataClass
+3
+-d_Packet
+f
+f
+0
+1282842070
+0
+0
+5
+0
+-bs_DataMemberList
+1
+-var
+0
+1282842089
+5
+t
+<20100826190408-4
+-bs_RefCounter
+0
+<20100826190408-5
+-bs_DataMember
+3
+-data
+f
+f
+0
+1282842078
+0
+-int32
+1
+-
+<20100826190408-6
+-bs_DataClassObjList
+1
+-var1Obj
+0
+1282842078
+4
+t
+t
+1
+-data
+-int32
+1282842089
+t
+-0
+1282842089
+17
+t
+f
+f
+f
+-bs_ActorMemberFct
+1
+f
+0
+1282842070
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ProtocolClassList
+-bs_ProtocolClassList
+1
+-ProtocolClass
+0
+1283097947
+0
+t
+<20100826185605-29
+-bs_RefCounter
+0
+<20100826185605-30
+-bs_ProtocolClass
+3
+-p_Timer
+t
+f
+0
+1282841742
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1282841742
+0
+t
+<20100826185605-32
+-bs_RefCounter
+0
+<20100826185605-33
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1282841742
+0
+>20100826185605-16
+>20100826185605-17
+t
+<20100826185605-34
+-bs_RefCounter
+0
+<20100826185605-35
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1282841742
+0
+<20100826185605-36
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1282841742
+0
+t
+<20100826185605-38
+-bs_RefCounter
+0
+<20100826185605-39
+-bs_MsgType
+3
+-timerTick
+f
+f
+0
+1282841742
+0
+<20100826185605-40
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1282841742
+-ProtocolRuleSet
+0
+0
+1282841742
+t
+<20100826185605-43
+-ProtocolRule
+0
+0
+1282841742
+-Message
+0
+0
+1282841742
+0
+-Start
+t
+<20100826185605-45
+-MessageImplication
+0
+0
+1282841742
+-ProtocolRule
+0
+0
+1282841742
+-Message
+0
+0
+1282841742
+0
+-Kill
+f
+t
+<20100826185605-48
+-MessageImplication
+0
+0
+1282841742
+-ProtocolRule
+0
+0
+1282841742
+-Message
+0
+0
+1282841742
+1
+-timerTick
+f
+f
+f
+t
+<20100826185605-51
+-bs_RefCounter
+0
+<20100826185605-52
+-bs_ProtocolClass
+3
+-p_Timeout
+t
+f
+0
+1282841742
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1282841742
+0
+t
+<20100826185605-54
+-bs_RefCounter
+0
+<20100826185605-55
+-bs_MsgType
+3
+-Start
+f
+f
+0
+1282841742
+0
+>20100826185605-16
+>20100826185605-17
+t
+<20100826185605-56
+-bs_RefCounter
+0
+<20100826185605-57
+-bs_MsgType
+3
+-Kill
+f
+f
+0
+1282841742
+0
+<20100826185605-58
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1282841742
+0
+t
+<20100826185605-60
+-bs_RefCounter
+0
+<20100826185605-61
+-bs_MsgType
+3
+-timeoutTick
+f
+f
+0
+1282841742
+0
+<20100826185605-62
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1282841742
+-ProtocolRuleSet
+0
+0
+1282841742
+t
+<20100826185605-65
+-ProtocolRule
+0
+0
+1282841742
+-Message
+0
+0
+1282841742
+0
+-Start
+t
+<20100826185605-67
+-MessageImplication
+0
+0
+1282841742
+-ProtocolRule
+0
+0
+1282841742
+-Message
+0
+0
+1282841742
+0
+-Kill
+f
+t
+<20100826185605-70
+-MessageImplication
+0
+0
+1282841742
+-ProtocolRule
+0
+0
+1282841742
+-Message
+0
+0
+1282841742
+1
+-timeoutTick
+f
+f
+f
+t
+<20100826185605-73
+-bs_RefCounter
+0
+<20100826185605-74
+-bs_ProtocolClass
+3
+-p_DigitalInput
+t
+f
+0
+1282841742
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1282841742
+0
+t
+<20100826185605-76
+-bs_RefCounter
+0
+<20100826185605-77
+-bs_MsgType
+3
+-getStatus
+f
+f
+0
+1282841742
+0
+<20100826185605-78
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1282841742
+0
+t
+<20100826185605-80
+-bs_RefCounter
+0
+<20100826185605-81
+-bs_MsgType
+3
+-inputChanged
+f
+f
+0
+1282841742
+0
+>20100826185605-12
+>20100826185605-13
+f
+-ProtocolSemantics
+1
+0
+1282841742
+-ProtocolRuleSet
+0
+0
+1282841742
+t
+<20100826185605-84
+-ProtocolRule
+0
+0
+1282841742
+-Message
+0
+0
+1282841742
+0
+-getStatus
+t
+<20100826185605-86
+-MessageImplication
+0
+0
+1282841742
+-ProtocolRule
+0
+0
+1282841742
+-Message
+0
+0
+1282841742
+1
+-inputChanged
+f
+f
+f
+t
+<20100826185605-89
+-bs_RefCounter
+0
+<20100826185605-90
+-bs_ProtocolClass
+3
+-p_DigitalOutput
+t
+f
+0
+1282841742
+0
+1
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1282841742
+0
+t
+<20100826185605-92
+-bs_RefCounter
+0
+<20100826185605-93
+-bs_MsgType
+3
+-Set
+f
+f
+0
+1282841742
+0
+>20100826185605-2
+>20100826185605-3
+t
+<20100826185605-94
+-bs_RefCounter
+0
+<20100826185605-95
+-bs_MsgType
+3
+-SetOn
+f
+f
+0
+1282841742
+0
+<20100826185605-96
+-bs_RefCounter
+0
+N
+t
+<20100826185605-97
+-bs_RefCounter
+0
+<20100826185605-98
+-bs_MsgType
+3
+-SetOff
+f
+f
+0
+1282841742
+0
+<20100826185605-99
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1282841742
+0
+f
+-ProtocolSemantics
+1
+0
+1282841742
+-ProtocolRuleSet
+0
+0
+1282841742
+f
+t
+<20100826190408-8
+-bs_RefCounter
+0
+<20100826190408-9
+-bs_ProtocolClass
+3
+-p_SimpleProtocol
+f
+f
+0
+1282842067
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1282842067
+0
+t
+<20100826190408-11
+-bs_RefCounter
+0
+<20100826190408-12
+-bs_MsgType
+3
+-data
+f
+f
+0
+1282841872
+0
+<20100826190408-13
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1282921398
+0
+t
+<20100826190408-15
+-bs_RefCounter
+0
+<20100826190408-16
+-bs_MsgType
+3
+-ack
+f
+f
+0
+1282841884
+0
+<20100826190408-17
+-bs_RefCounter
+0
+N
+t
+<20100826190408-18
+-bs_RefCounter
+0
+<20100826190408-19
+-bs_MsgType
+3
+-nak
+f
+f
+0
+1282841908
+0
+<20100826190408-20
+-bs_RefCounter
+0
+N
+t
+<20100827170346-36
+-bs_RefCounter
+0
+<20100827170346-37
+-bs_MsgType
+3
+-poll
+f
+f
+0
+1282921396
+0
+<20100827170346-38
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1282841852
+-ProtocolRuleSet
+0
+0
+1282841852
+f
+t
+<20100829182239-38
+-bs_RefCounter
+0
+<20100829182239-39
+-bs_ProtocolClass
+3
+-p_HFSM
+f
+f
+0
+1283097947
+0
+0
+2
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1284577762
+0
+t
+<20100829182239-41
+-bs_RefCounter
+0
+<20100829182239-42
+-bs_MsgType
+3
+-m1
+f
+f
+0
+1283097933
+0
+<20100829182239-43
+-bs_RefCounter
+0
+N
+t
+<20100829182239-44
+-bs_RefCounter
+0
+<20100829182239-45
+-bs_MsgType
+3
+-m2
+f
+f
+0
+1283097935
+0
+<20100829182239-46
+-bs_RefCounter
+0
+N
+t
+<20100829182239-47
+-bs_RefCounter
+0
+<20100829182239-48
+-bs_MsgType
+3
+-m3
+f
+f
+0
+1283097937
+0
+<20100829182239-49
+-bs_RefCounter
+0
+N
+t
+<20100829182239-50
+-bs_RefCounter
+0
+<20100829182239-51
+-bs_MsgType
+3
+-m4
+f
+f
+0
+1283097939
+0
+<20100829182239-52
+-bs_RefCounter
+0
+N
+t
+<20100829182239-53
+-bs_RefCounter
+0
+<20100829182239-54
+-bs_MsgType
+3
+-m5
+f
+f
+0
+1283097940
+0
+<20100829182239-55
+-bs_RefCounter
+0
+N
+t
+<20100829182239-56
+-bs_RefCounter
+0
+<20100829182239-57
+-bs_MsgType
+3
+-m6
+f
+f
+0
+1283097942
+0
+<20100829182239-58
+-bs_RefCounter
+0
+N
+t
+<20100829182239-59
+-bs_RefCounter
+0
+<20100829182239-60
+-bs_MsgType
+3
+-reset
+f
+f
+0
+1283098248
+0
+<20100829182239-61
+-bs_RefCounter
+0
+N
+t
+<20100829182833-2
+-bs_RefCounter
+0
+<20100829182833-3
+-bs_MsgType
+3
+-m7
+f
+f
+0
+1283099182
+0
+<20100829182833-4
+-bs_RefCounter
+0
+N
+t
+<20100829182919-2
+-bs_RefCounter
+0
+<20100829182919-3
+-bs_MsgType
+3
+-m8
+f
+f
+0
+1283099349
+0
+<20100829182919-4
+-bs_RefCounter
+0
+N
+t
+<20100915211026-2
+-bs_RefCounter
+0
+<20100915211026-3
+-bs_MsgType
+3
+-m9
+f
+f
+0
+1284577746
+0
+<20100915211026-4
+-bs_RefCounter
+0
+N
+f
+-bs_MsgTypeList
+1
+-MsgTypeListDummyName
+0
+1284577865
+0
+t
+<20100829182239-63
+-bs_RefCounter
+0
+<20100829182239-64
+-bs_MsgType
+3
+-init_action
+f
+f
+0
+1283098311
+0
+<20100829222431-40
+-bs_RefCounter
+0
+N
+t
+<20100915210134-40
+-bs_RefCounter
+0
+<20100915210134-41
+-bs_MsgType
+3
+-s1_entry
+f
+f
+0
+1284577108
+0
+<20100915210134-42
+-bs_RefCounter
+0
+N
+t
+<20100915210134-43
+-bs_RefCounter
+0
+<20100915210134-44
+-bs_MsgType
+3
+-s1_exit
+f
+f
+0
+1284577118
+0
+<20100915210134-45
+-bs_RefCounter
+0
+N
+t
+<20100915210134-46
+-bs_RefCounter
+0
+<20100915210134-47
+-bs_MsgType
+3
+-s2_entry
+f
+f
+0
+1284577228
+0
+<20100915210134-48
+-bs_RefCounter
+0
+N
+t
+<20100915210134-49
+-bs_RefCounter
+0
+<20100915210134-50
+-bs_MsgType
+3
+-s2_exit
+f
+f
+0
+1284577235
+0
+<20100915210134-51
+-bs_RefCounter
+0
+N
+t
+<20100915210134-52
+-bs_RefCounter
+0
+<20100915210134-53
+-bs_MsgType
+3
+-s3_entry
+f
+f
+0
+1284577246
+0
+<20100915210134-54
+-bs_RefCounter
+0
+N
+t
+<20100915210134-55
+-bs_RefCounter
+0
+<20100915210134-56
+-bs_MsgType
+3
+-s3_exit
+f
+f
+0
+1284577252
+0
+<20100915210134-57
+-bs_RefCounter
+0
+N
+t
+<20100915210134-58
+-bs_RefCounter
+0
+<20100915210134-59
+-bs_MsgType
+3
+-s4_entry
+f
+f
+0
+1284577275
+0
+<20100915210134-60
+-bs_RefCounter
+0
+N
+t
+<20100915210134-61
+-bs_RefCounter
+0
+<20100915210134-62
+-bs_MsgType
+3
+-s4_exit
+f
+f
+0
+1284577278
+0
+<20100915210134-63
+-bs_RefCounter
+0
+N
+t
+<20100915210555-2
+-bs_RefCounter
+0
+<20100915210555-3
+-bs_MsgType
+3
+-s2s1_entry
+f
+f
+0
+1284577309
+0
+<20100915210555-4
+-bs_RefCounter
+0
+N
+t
+<20100915210555-5
+-bs_RefCounter
+0
+<20100915210555-6
+-bs_MsgType
+3
+-s2s1_exit
+f
+f
+0
+1284577319
+0
+<20100915210555-7
+-bs_RefCounter
+0
+N
+t
+<20100915210555-8
+-bs_RefCounter
+0
+<20100915210555-9
+-bs_MsgType
+3
+-s2s2_entry
+f
+f
+0
+1284577325
+0
+<20100915210555-10
+-bs_RefCounter
+0
+N
+t
+<20100915210555-11
+-bs_RefCounter
+0
+<20100915210555-12
+-bs_MsgType
+3
+-s2s2_exit
+f
+f
+0
+1284577332
+0
+<20100915210555-13
+-bs_RefCounter
+0
+N
+t
+<20100915210555-14
+-bs_RefCounter
+0
+<20100915210555-15
+-bs_MsgType
+3
+-s1_m1_s2_action
+f
+f
+0
+1284577362
+0
+<20100915210555-16
+-bs_RefCounter
+0
+N
+t
+<20100915210555-17
+-bs_RefCounter
+0
+<20100915210555-18
+-bs_MsgType
+3
+-s2_m1_s2s1_action
+f
+f
+0
+1284577465
+0
+<20100915210555-19
+-bs_RefCounter
+0
+N
+t
+<20100915210555-20
+-bs_RefCounter
+0
+<20100915210555-21
+-bs_MsgType
+3
+-s2s1_m2_s2s2_action
+f
+f
+0
+1284577506
+0
+<20100915210555-22
+-bs_RefCounter
+0
+N
+t
+<20100915210555-23
+-bs_RefCounter
+0
+<20100915210555-24
+-bs_MsgType
+3
+-s2s2_m3_action
+f
+f
+0
+1284577548
+0
+<20100915210555-25
+-bs_RefCounter
+0
+N
+t
+<20100915211026-6
+-bs_RefCounter
+0
+<20100915211026-7
+-bs_MsgType
+3
+-s2_m4_s4_action
+f
+f
+0
+1284577585
+0
+<20100915211026-8
+-bs_RefCounter
+0
+N
+t
+<20100915211026-9
+-bs_RefCounter
+0
+<20100915211026-10
+-bs_MsgType
+3
+-s2_m5_s2_action
+f
+f
+0
+1284577617
+0
+<20100915211026-11
+-bs_RefCounter
+0
+N
+t
+<20100915211026-12
+-bs_RefCounter
+0
+<20100915211026-13
+-bs_MsgType
+3
+-s2_m6_s2_action
+f
+f
+0
+1284577629
+0
+<20100915211026-14
+-bs_RefCounter
+0
+N
+t
+<20100915211026-15
+-bs_RefCounter
+0
+<20100915211026-16
+-bs_MsgType
+3
+-s2__s3_action
+f
+f
+0
+1284577677
+0
+<20100915211026-17
+-bs_RefCounter
+0
+N
+t
+<20100915211026-18
+-bs_RefCounter
+0
+<20100915211026-19
+-bs_MsgType
+3
+-s2_m7_s2_action
+f
+f
+0
+1284577711
+0
+<20100915211026-20
+-bs_RefCounter
+0
+N
+t
+<20100915211026-21
+-bs_RefCounter
+0
+<20100915211026-22
+-bs_MsgType
+3
+-top_s8_top_action
+f
+f
+0
+1284577738
+0
+<20100915211026-23
+-bs_RefCounter
+0
+N
+t
+<20100915211026-24
+-bs_RefCounter
+0
+<20100915211026-25
+-bs_MsgType
+3
+-top_s9_top_action
+f
+f
+0
+1284577760
+0
+<20100915211026-26
+-bs_RefCounter
+0
+N
+t
+<20100915211107-2
+-bs_RefCounter
+0
+<20100915211107-3
+-bs_MsgType
+3
+-top_reset_s2_action
+f
+f
+0
+1284577854
+0
+<20100915211107-4
+-bs_RefCounter
+0
+N
+f
+-ProtocolSemantics
+1
+0
+1283097914
+-ProtocolRuleSet
+0
+0
+1283097914
+f
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_SAPClassList
+-bs_SAPClassList
+1
+-SAP
+0
+1282841742
+0
+t
+<20100826185605-104
+-bs_RefCounter
+0
+<20100826185605-105
+-bs_SAPClass
+3
+-Timer
+f
+f
+0
+1282841742
+0
+1
+0
+1
+>20100826185605-29
+>20100826185605-30
+t
+<20100826185605-106
+-bs_RefCounter
+0
+<20100826185605-107
+-bs_SAPClass
+3
+-Timeout
+f
+f
+0
+1282841742
+0
+1
+0
+2
+>20100826185605-51
+>20100826185605-52
+t
+<20100826185605-108
+-bs_RefCounter
+0
+<20100826185605-109
+-bs_SAPClass
+3
+-DigitalInput
+f
+f
+0
+1282841742
+0
+1
+0
+4
+>20100826185605-73
+>20100826185605-74
+t
+<20100826185605-110
+-bs_RefCounter
+0
+<20100826185605-111
+-bs_SAPClass
+3
+-DigitalOutput
+f
+f
+0
+1282841742
+0
+1
+0
+5
+>20100826185605-89
+>20100826185605-90
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_PrtvClassList
+-bs_PrtvClassList
+1
+-PrimitiveClass
+0
+1282841742
+0
+f
+-------------------------------
+# 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
+#
+# PersObj-Version: 4 standard
+#
+-bs_ActorClassList
+-bs_ActorClassList
+1
+-ActorClass
+0
+1284627427
+0
+t
+<20100829182239-182
+-bs_RefCounter
+0
+<20100829182239-183
+-bs_ActorClass
+3
+-a_HFSM_Tests
+f
+f
+0
+1284627418
+0
+0
+8
+-
+f
+-bs_ActorInterface
+3
+-bs_PortRefList
+1
+-Port
+0
+1283097831
+0
+f
+0
+0
+1283097831
+-bs_ActorStructure
+7
+-bs_PortRefList
+1
+-Port
+0
+1283097831
+0
+f
+-bs_SAPRefList
+1
+-SAP
+0
+1284627418
+0
+f
+t
+-bs_ActorRefList
+1
+-ActorRef
+0
+1283097904
+0
+t
+<20100829182239-190
+-bs_RefCounter
+0
+<20100829182239-191
+-bs_ActorRef
+3
+-HFSM
+f
+f
+0
+1283097994
+1
+-bs_ActorCoord
+0
+0.748403
+0.659875
+-bs_SizeFactors
+0
+3
+0.994375
+-bs_CompPortRefList
+1
+-PortInstListDummyName
+0
+1283097892
+0
+f
+3
+-a_HFSM
+t
+<20100829182239-195
+-bs_RefCounter
+0
+<20100829182239-196
+-bs_ActorRef
+3
+-Tester
+f
+f
+0
+1283097908
+1 </