From a18223dad8781158e889261776110780c401525d Mon Sep 17 00:00:00 2001 From: Henrik Rentz-Reichert Date: Sat, 18 Dec 2010 00:39:44 +0100 Subject: initial contribution (cf. http://dev.eclipse.org/ipzilla/show_bug.cgi?id=4670) --- .../org.eclipse.etrice.generator.tests/.gitignore | 1 + .../.settings/org.eclipse.jdt.core.prefs | 8 + .../META-INF/MANIFEST.MF | 15 + .../org.eclipse.etrice.generator.tests/about.html | 28 + .../build.properties | 6 + .../models/connected_ports.room | 80 + .../models/connected_ports.t.trp | 3213 ++++++++++++ .../models/hierarchy.room | 25 + .../models/layers.room | 136 + .../models/layers.t.room | 154 + .../models/layers.t.trp | 4770 ++++++++++++++++++ .../models/ports.room | 23 + .../models/states.room | 106 + .../models/states.t.room | 119 + .../models/states.t.trp | 2685 ++++++++++ .../models/states_inheritance.room | 249 + .../models/states_inheritance.t.room | 222 + .../models/states_inheritance.t.trp | 5243 ++++++++++++++++++++ .../models/states_triggers.room | 174 + .../models/states_triggers.t.room | 145 + .../models/states_triggers.t.trp | 2981 +++++++++++ .../models/structure_inheritance.room | 206 + .../models/structure_inheritance.t.room | 177 + .../models/structure_inheritance.t.trp | 4606 +++++++++++++++++ .../etrice/generator/InstanceTestsActivator.java | 33 + .../etrice/generator/TestConnectedPorts.java | 90 + .../eclipse/etrice/generator/TestHierarchy.java | 57 + .../generator/TestInstanceModelBuilderBase.java | 158 + .../org/eclipse/etrice/generator/TestLayers.java | 73 + .../org/eclipse/etrice/generator/TestPorts.java | 58 + .../org/eclipse/etrice/generator/TestStates.java | 120 + .../etrice/generator/TestStatesAndTriggers.java | 144 + .../etrice/generator/TestStatesInheritance.java | 144 + .../etrice/generator/TestStructureInheritance.java | 174 + .../.gitignore | 1 + .../.settings/org.eclipse.jdt.core.prefs | 12 + .../META-INF/MANIFEST.MF | 21 + .../about.html | 28 + .../build.properties | 4 + .../model/IntegrationTestFSMGenerator.room | 319 ++ .../model/IntegrationTestFSMGenerator.trp | 4670 +++++++++++++++++ .../tests/IntegrationTestFSMGenerator.java | 64 + .../tests/IntegrationTestFSMGenerator.mwe2 | 18 + .../tmp/log/MainComponent_Async.seq | 27 + .../tmp/log/MainComponent_Sync.seq | 1 + .../.gitignore | 1 + .../.settings/org.eclipse.jdt.core.prefs | 12 + .../.settings/org.eclipse.ocl.modelregistry | 2 + .../about.html | 28 + .../runtime/java/debugging/MSCLoggerTest.java | 37 + .../etrice/runtime/java/messaging/AddressTest.java | 28 + .../java/messaging/DummyMessageReceiver.java | 49 + .../java/messaging/MessageDispatcherTest.java | 69 + .../runtime/java/messaging/MessageSeQueueTest.java | 129 + .../runtime/java/messaging/MessageServiceTest.java | 148 + .../etrice/runtime/java/messaging/MessageTest.java | 33 + .../runtime/java/modelbase/ActorClassBaseTest.java | 63 + .../runtime/java/modelbase/EventMessageTest.java | 34 + .../java/modelbase/EventWithDataMessageTest.java | 36 + .../runtime/java/modelbase/PortBaseTest.java | 110 + 60 files changed, 32367 insertions(+) create mode 100644 tests/org.eclipse.etrice.generator.tests/.gitignore create mode 100644 tests/org.eclipse.etrice.generator.tests/.settings/org.eclipse.jdt.core.prefs create mode 100644 tests/org.eclipse.etrice.generator.tests/META-INF/MANIFEST.MF create mode 100644 tests/org.eclipse.etrice.generator.tests/about.html create mode 100644 tests/org.eclipse.etrice.generator.tests/build.properties create mode 100644 tests/org.eclipse.etrice.generator.tests/models/connected_ports.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/connected_ports.t.trp create mode 100644 tests/org.eclipse.etrice.generator.tests/models/hierarchy.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/layers.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/layers.t.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/layers.t.trp create mode 100644 tests/org.eclipse.etrice.generator.tests/models/ports.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/states.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/states.t.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/states.t.trp create mode 100644 tests/org.eclipse.etrice.generator.tests/models/states_inheritance.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/states_inheritance.t.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/states_inheritance.t.trp create mode 100644 tests/org.eclipse.etrice.generator.tests/models/states_triggers.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/states_triggers.t.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/states_triggers.t.trp create mode 100644 tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.t.room create mode 100644 tests/org.eclipse.etrice.generator.tests/models/structure_inheritance.t.trp create mode 100644 tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/InstanceTestsActivator.java create mode 100644 tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestConnectedPorts.java create mode 100644 tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestHierarchy.java create mode 100644 tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestInstanceModelBuilderBase.java create mode 100644 tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestLayers.java create mode 100644 tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestPorts.java create mode 100644 tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStates.java create mode 100644 tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStatesAndTriggers.java create mode 100644 tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStatesInheritance.java create mode 100644 tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/TestStructureInheritance.java create mode 100644 tests/org.eclipse.etrice.integration.tests/.gitignore create mode 100644 tests/org.eclipse.etrice.integration.tests/.settings/org.eclipse.jdt.core.prefs create mode 100644 tests/org.eclipse.etrice.integration.tests/META-INF/MANIFEST.MF create mode 100644 tests/org.eclipse.etrice.integration.tests/about.html create mode 100644 tests/org.eclipse.etrice.integration.tests/build.properties create mode 100644 tests/org.eclipse.etrice.integration.tests/model/IntegrationTestFSMGenerator.room create mode 100644 tests/org.eclipse.etrice.integration.tests/model/IntegrationTestFSMGenerator.trp create mode 100644 tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.java create mode 100644 tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.mwe2 create mode 100644 tests/org.eclipse.etrice.integration.tests/tmp/log/MainComponent_Async.seq create mode 100644 tests/org.eclipse.etrice.integration.tests/tmp/log/MainComponent_Sync.seq create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/.gitignore create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.jdt.core.prefs create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.ocl.modelregistry create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/about.html create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/debugging/MSCLoggerTest.java create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/AddressTest.java create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/DummyMessageReceiver.java create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageDispatcherTest.java create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageSeQueueTest.java create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageServiceTest.java create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageTest.java create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/ActorClassBaseTest.java create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventMessageTest.java create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventWithDataMessageTest.java create mode 100644 tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/PortBaseTest.java (limited to 'tests') 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 @@ + + + + +About + + +

About This Content

+ +

June 5, 2006

+

License

+ +

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at http://www.eclipse.org/legal/epl-v10.html. +For purposes of the EPL, "Program" will mean the Content.

+ +

If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") 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 http://www.eclipse.org.

+ + + \ 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 { + + } + } + Transition tr3: State2 -> State3 { + triggers { + + } + } + Transition tr4: State3 -> State1 { + triggers { + + } + } + Transition tr5: my tp2 -> State3 { + triggers { + + } + } + Transition tr6: State3 -> my tp3 { + triggers { + + } + } + } + } + State State4 {} + TransitionPoint tp0 + ChoicePoint CP1 + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + + } + } + Transition tr2: State2 -> cp CP1 { + triggers { + + } + } + Transition tr3: cp CP1 -> State1 {} + Transition tr4: cp CP1 -> State3 { + cond { + "x==2" + } + } + Transition tr5: my tp0 -> tp1 of State3 { + triggers { + + } + } + Transition tr6: cp CP1 -> State4 { + cond { + "x==3" + } + } + Transition tr7: tp3 of State3 -> State2 {} + Transition tr8: State3 -> State2 { + triggers { + + } + } + } + } + } + +} 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 { + + } + } + Transition tr3: State2 -> State3 { + triggers { + + } + } + Transition tr4: State3 -> State1 { + triggers { + + } + } + Transition tr5: my tp2 -> State3 { + triggers { + + } + } + Transition tr6: State3 -> my tp3 { + triggers { + + } + } + } + } + State State4 {} + TransitionPoint tp0 + ChoicePoint CP1 + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + + } + } + Transition tr2: State2 -> cp CP1 { + triggers { + + } + } + Transition tr3: cp CP1 -> State1 {} + Transition tr4: cp CP1 -> State3 { + cond { + "data==2" + } + } + Transition tr5: my tp0 -> tp1 of State3 { + triggers { + + } + } + Transition tr6: cp CP1 -> State4 { + cond { + "data==3" + } + } + Transition tr7: tp3 of State3 -> State2 {} + Transition tr8: State3 -> State2 { + triggers { + + } + } + } + } + } + +} 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 { + + } + } + Transition tr3: State2 -> State3 { + triggers { + + } + } + Transition tr4: State3 -> State1 { + triggers { + + } + } + Transition tr5: my tp2 -> State3 { + triggers { + + } + } + Transition tr6: State3 -> my tp3 { + triggers { + + } + } + Transition tr7: my tp5 -> my tp5 { + triggers { + + } + } + } + } + State State4 {} + TransitionPoint tp0 + TransitionPoint tp1 + ChoicePoint CP1 + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + + } + } + Transition tr2: State2 -> cp CP1 { + triggers { + + } + } + Transition tr3: cp CP1 -> State1 {} + Transition tr4: cp CP1 -> State3 { + cond { + "data==2" + } + } + Transition tr5: my tp0 -> tp1 of State3 { + triggers { + + } + } + Transition tr6: cp CP1 -> State4 { + cond { + "data==3" + } + } + Transition tr7: tp3 of State3 -> State2 {} + Transition tr8: State3 -> State2 { + triggers { + + } + } + Transition tr9: my tp1 -> State2 { + triggers { + + } + } + } + } + } + + 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 { + + } + } + Transition tr10: State2 -> State4 { + triggers { + + } + } + Transition tr11: State4 -> my tp3 { + triggers { + + } + } + } + } + RefinedState State4 { + subgraph { + State State1 {} + State State2 {} + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + + } + } + } + } + State State5 {} + Transition tr10: State1 -> State5 { + triggers { + + } + } + Transition tr11: cp CP1 -> State5 { + cond { + "data==4" + } + } + Transition tr12: State5 -> tp6 of State3 { + triggers { + + } + } + } + } + } + +} 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 { + + } + } + Transition tr3: State2 -> State3 { + triggers { + + } + } + Transition tr4: State3 -> State1 { + triggers { + + } + } + Transition tr5: my tp2 -> State3 { + triggers { + + } + } + Transition tr6: State3 -> my tp3 { + triggers { + + } + } + Transition tr7: my tp5 -> my tp5 { + triggers { + + } + } + } + } + State State4 {} + TransitionPoint tp0 + TransitionPoint tp1 + ChoicePoint CP1 + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + + } + } + Transition tr2: State2 -> cp CP1 { + triggers { + + } + } + Transition tr3: cp CP1 -> State1 {} + Transition tr4: cp CP1 -> State3 { + cond { + "data==2" + } + } + Transition tr5: my tp0 -> tp1 of State3 { + triggers { + + } + } + Transition tr6: cp CP1 -> State4 { + cond { + "data==3" + } + } + Transition tr7: tp3 of State3 -> State2 {} + Transition tr8: State3 -> State2 { + triggers { + + } + } + Transition tr9: my tp1 -> State2 { + triggers { + + } + } + } + } + } + + 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 { + + } + } + Transition tr10: State2 -> State4 { + triggers { + + } + } + Transition tr11: State4 -> my tp3 { + triggers { + + } + } + } + } + RefinedState State4 { + subgraph { + State State1 {} + State State2 {} + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + + } + } + } + } + State State5 {} + Transition tr10: State1 -> State5 { + triggers { + + } + } + Transition tr11: cp CP1 -> State5 { + cond { + "data==4" + } + } + Transition tr12: State5 -> tp6 of State3 { + triggers { + + } + } + } + } + } + +} 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 { + + } + } + Transition tr3: State2 -> State3 { + triggers { + + } + } + Transition tr4: State3 -> State1 { + triggers { + + } + } + Transition tr5: my tp2 -> State3 { + triggers { + + } + } + Transition tr6: State3 -> my tp3 { + triggers { + + } + } + Transition tr7: my tp5 -> my tp5 { + triggers { + + } + } + } + } + State State4 {} + TransitionPoint tp0 + TransitionPoint tp1 + ChoicePoint CP1 + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + + } + } + Transition tr2: State2 -> cp CP1 { + triggers { + + } + } + Transition tr3: cp CP1 -> State1 {} + Transition tr4: cp CP1 -> State3 { + cond { + "data==2" + } + } + Transition tr5: my tp0 -> tp1 of State3 { + triggers { + + } + } + Transition tr6: cp CP1 -> State4 { + cond { + "data==3" + } + } + Transition tr7: tp3 of State3 -> State2 {} + Transition tr8: State3 -> State2 { + triggers { + + } + } + Transition tr9: my tp1 -> State2 { + triggers { + + } + } + } + } + } + +} 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 { + + } + } + Transition tr3: State2 -> State3 { + triggers { + + } + } + Transition tr4: State3 -> State1 { + triggers { + + } + } + Transition tr5: my tp2 -> State3 { + triggers { + + } + } + Transition tr6: State3 -> my tp3 { + triggers { + + } + } + Transition tr7: my tp5 -> my tp5 { + triggers { + + } + } + } + } + State State4 {} + TransitionPoint tp0 + TransitionPoint tp1 + ChoicePoint CP1 + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + + } + } + Transition tr2: State2 -> cp CP1 { + triggers { + + } + } + Transition tr3: cp CP1 -> State1 {} + Transition tr4: cp CP1 -> State3 { + cond { + "data==2" + } + } + Transition tr5: my tp0 -> tp1 of State3 { + triggers { + + } + } + Transition tr6: cp CP1 -> State4 { + cond { + "data==3" + } + } + Transition tr7: tp3 of State3 -> State2 {} + Transition tr8: State3 -> State2 { + triggers { + + } + } + Transition tr9: my tp1 -> State2 { + triggers { + + } + } + } + } + } + +} 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> instances; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("connected_ports.room"); + instances = collectInstances(root); + } + + @Test + public void testPortNumbers() { + ArrayList ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()); + assertEquals("Number of PortInstances", 19, ports.size()); + } + + @Test + public void testRelayPort() { + ArrayList 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 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 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> 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 getModels(String modelName) { + LinkedList models = new LinkedList(); + 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 models = getModels(modelName); + Root root = builder.createInstanceModel(models); + return root; + } + + protected HashMap> collectInstances(EObject root) { + HashMap> result = new HashMap>(); + + TreeIterator it = root.eAllContents(); + while (it.hasNext()) { + EObject obj = it.next(); + EClass ecl = obj.eClass(); + ArrayList instances = result.get(ecl); + if (instances==null) { + instances = new ArrayList(); + result.put(ecl, instances); + } + instances.add(obj); + } + + return result; + } + + protected InstanceBase getInstance(List 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 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> instances; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("layers.room"); + instances = collectInstances(root); + } + + @Test + public void testInstanceNumbers() { + ArrayList saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance()); + assertEquals("Number of SAPInstances", 6, saps.size()); + + ArrayList spps = instances.get(ETriceGenPackage.eINSTANCE.getSPPInstance()); + assertEquals("Number of SPPInstances", 7, spps.size()); + + ArrayList svcs = instances.get(ETriceGenPackage.eINSTANCE.getServiceImplInstance()); + assertEquals("Number of ServiceImplInstances", 3, svcs.size()); + } + + @Test + public void testLayerConnections() { + ArrayList 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> 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> 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 chains = xpac.getTransitionChains(); + assertEquals("number of chains", 11, chains.size()); + assertEquals("numer of triggers", 3, xpac.getTriggers().size()); + } + + @Test + public void testGraph() { + ArrayList 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 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 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> 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 chains = xpac.getTransitionChains(); + assertEquals("number of chains", 13, chains.size()); + assertEquals("numer of triggers", 7, xpac.getTriggers().size()); + } + + @Test + public void testGraph() { + ArrayList 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 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 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> 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 chains = xpac.getTransitionChains(); + assertEquals("number of chains", 20, chains.size()); + assertEquals("numer of triggers", 8, xpac.getTriggers().size()); + } + + @Test + public void testGraph() { + ArrayList 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 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 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> 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 actors = instances.get(ETriceGenPackage.eINSTANCE.getActorInstance()); + assertEquals("Number of ActorInstances", 8, actors.size()); + + ArrayList ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()); + assertEquals("Number of PortInstances", 30, ports.size()); + + ArrayList saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance()); + assertEquals("Number of SAPInstances", 8, saps.size()); + + ArrayList spps = instances.get(ETriceGenPackage.eINSTANCE.getSPPInstance()); + assertEquals("Number of SPPInstances", 2, spps.size()); + + ArrayList svcs = instances.get(ETriceGenPackage.eINSTANCE.getServiceImplInstance()); + assertEquals("Number of ServiceImplInstances", 2, svcs.size()); + } + + @Test + public void testLayerConnections() { + ArrayList 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 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 @@ + + + + +About + + +

About This Content

+ +

June 5, 2006

+

License

+ +

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at http://www.eclipse.org/legal/epl-v10.html. +For purposes of the EPL, "Program" will mean the Content.

+ +

If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") 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 http://www.eclipse.org.

+ + + \ 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 { + + } + action { + "fct.s2s1_m2_s2s2_action();" + "" + } + } + Transition tr2: State2 -> my tp1 { + triggers { + + } + action { + "fct.s2s2_m3_action();" + "" + } + } + Transition tr3: my tp3 -> my tp3 { + triggers { + + } + action { + "fct.s2_m5_s2_action();" + "" + } + } + Transition tr4: my tp4 -> my tp4 { + triggers { + + } + 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 { + + } + action { + "fct.s1_m1_s2_action();" + "" + } + } + Transition tr2: tp1 of State2 -> State3 { + action { + "fct.s2__s3_action();" + "" + } + } + Transition tr3: State2 -> State4 { + triggers { + + } + action { + "fct.s2_m4_s4_action();" + "" + } + } + Transition tr4: my tp0 -> State1 { + triggers { + + } + action { + "fct.top_reset_s2_action();" + "" + } + } + Transition tr5: State2 -> State2 { + triggers { + + } + action { + "fct.s2_m7_s2_action();" + "" + } + } + Transition tr6: my tp1 -> my tp1 { + triggers { + + } + action { + "fct.top_s8_top_action();" + "" + } + } + Transition tr7: my tp2 -> my tp2 { + triggers { + + } + 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 { + + } + } + Transition tr2: State2 -> State3 { + triggers { + + } + action { + "testee.m1();" + "" + } + } + Transition tr3: State3 -> State4 { + triggers { + + } + } + Transition tr4: State4 -> State5 { + triggers { + + } + } + Transition tr5: State5 -> State6 { + triggers { + + } + } + Transition tr6: State6 -> State7 { + triggers { + + } + } + Transition tr7: State7 -> TestPass { + triggers { + + } + } + } + } + } + + 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 +-bs_ActorCoord +0 +0.234583 +0.658375 +-bs_SizeFactors +0 +3 +0.995 +-bs_CompPortRefList +1 +-PortInstListDummyName +0 +1283097904 +0 +f +3 +-a_HFSM_Tester +f +-bs_BindingContractList +1 +-BindingContract +0 +1283100141 +0 +t +<20100829184224-1 +-bs_RefCounter +0 +<20100829184224-2 +-bs_BindingContract +3 +-BindingContract1 +f +f +0 +1283100141 +0 +-bs_BCEndPoint +1 +>20100829182239-195 +>20100829182239-196 +<20100829182239-359 +-bs_RefCounter +0 +<20100829182239-360 +-bs_PortRef +3 +-testee +f +f +0 +1283097991 +0 +0 +t +1 +-bs_ActorCoord +0 +1 +0.5465 +>20100829182239-38 +>20100829182239-39 +<20100829184224-4 +-bs_RefCounter +0 +N +-bs_BCEndPoint +1 +>20100829182239-190 +>20100829182239-191 +<20100829182239-225 +-bs_RefCounter +0 +<20100829182239-226 +-bs_PortRef +3 +-fct +f +f +0 +1283097979 +0 +0 +f +1 +-bs_ActorCoord +0 +0 +0.540625 +>20100829182239-38 +>20100829182239-39 +<20100829184224-6 +-bs_RefCounter +0 +N +f +-bs_SizeFactors +0 +1.8 +1 +-bs_SnapInfo +0 +1700 +1700 +30 +20 +0 +0 +1283097831 +-bs_PrtvRefList +1 +-Primitive +0 +1283097831 +0 +f +-bs_NoteList +1 +-Note +0 +1283097831 +0 +f +0 +1283097831 +-bs_ActorBehaviour +7 +<20100829182239-206 +-bs_RefCounter +0 +<20100829182239-207 +-bs_StateMachine +4 +-bs_DataMemberList +1 +-var +0 +1283097831 +5 +f +-bs_StateGraph +8 +<20100829182239-210 +-bs_RefCounter +0 +<20100829182239-211 +-bs_InitialPoint +3 +- +f +f +0 +1283097831 +0 +-bs_ContextCoord +0 +0.07 +0.93 +-bs_ChoicepointList +1 +-CP +0 +1283097831 +0 +f +-bs_TrPointList +1 +-TrP +0 +1283097831 +0 +f +-bs_StateList +1 +-State +0 +1283097831 +0 +f +-bs_TrSegmentList +1 +-TrSegmentListDummyName +0 +1283097831 +0 +f +-bs_NoteList +1 +-Note +0 +1283097831 +0 +f +t +65535 +f +f +0 +1283097831 +-bs_SizeFactors +0 +1 +1 +t +0 +1283097831 +- +- +- +1024 +-bs_SnapInfo +0 +1700 +1700 +30 +20 +0 +0 +1283097831 +0 +1283097831 +-bs_ActorMemberFct +1 +f +0 +1283097831 +t +f +f +t +<20100829182239-221 +-bs_RefCounter +0 +<20100829182239-222 +-bs_ActorClass +3 +-a_HFSM +f +f +0 +1283097873 +0 +0 +8 +- +f +-bs_ActorInterface +3 +-bs_PortRefList +1 +-Port +0 +1283097979 +0 +t +>20100829182239-225 +>20100829182239-226 +f +0 +0 +1283097862 +-bs_ActorStructure +7 +-bs_PortRefList +1 +-Port +0 +1283097979 +0 +t +>20100829182239-225 +>20100829182239-226 +f +-bs_SAPRefList +1 +-SAP +0 +1283097862 +0 +f +t +-bs_ActorRefList +1 +-ActorRef +0 +1283097862 +0 +f +-bs_BindingContractList +1 +-BindingContract +0 +1283097862 +0 +f +-bs_SizeFactors +0 +1.8 +1 +-bs_SnapInfo +0 +1700 +1700 +30 +20 +0 +0 +1283097862 +-bs_PrtvRefList +1 +-Primitive +0 +1283097862 +0 +f +-bs_NoteList +1 +-Note +0 +1283097862 +0 +f +0 +1283097862 +-bs_ActorBehaviour +7 +<20100829182239-238 +-bs_RefCounter +0 +<20100829182239-239 +-bs_StateMachine +4 +-bs_DataMemberList +1 +-var +0 +1283097862 +5 +f +-bs_StateGraph +8 +<20100829182239-242 +-bs_RefCounter +0 +<20100829182239-243 +-bs_InitialPoint +3 +- +f +f +0 +1283097862 +0 +-bs_ContextCoord +0 +0.07 +0.93 +-bs_ChoicepointList +1 +-CP +0 +1283097862 +0 +f +-bs_TrPointList +1 +-TrP +0 +1283097862 +0 +t +<20100829182239-247 +-bs_RefCounter +0 +<20100829182239-248 +-bs_TrPoint +3 +-TrP1 +f +f +0 +1283099052 +1 +0 +-1 +-bs_ContextCoord +0 +0.741825 +0.998651 +7 +t +<20100829182919-5 +-bs_RefCounter +0 +<20100829182919-6 +-bs_TrPoint +3 +-TrP2 +f +f +0 +1283099595 +1 +0 +-1 +-bs_ContextCoord +0 +1 +0.73495 +8 +t +<20100915211026-27 +-bs_RefCounter +0 +<20100915211026-28 +-bs_TrPoint +3 +-TrP3 +f +f +0 +1284577768 +1 +3 +-1 +-bs_ContextCoord +0 +1 +0.637185 +9 +f +-bs_StateList +1 +-State +0 +1283097862 +0 +t +<20100829182239-251 +-bs_RefCounter +0 +<20100829182239-252 +-bs_State +3 +-State1 +f +f +0 +1284577916 +5 ++fct.s1_entry(); +- +-fct.s1_exit(); +-1 +-1 +<20100829182239-253 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.47047 +0.777442 +-bs_SizeFactors +0 +1 +1 +f +f +1 +-1 +t +<20100829182239-256 +-bs_RefCounter +0 +<20100829182239-257 +-bs_State +3 +-State2 +f +f +0 +1284578005 +5 +-fct.s2_entry(); +-fct.s2_exit(); +-1 +-1 +<20100829182239-258 +-bs_RefCounter +0 +<20100829182239-259 +-bs_StateMachine +4 +-bs_DataMemberList +1 +-var +0 +1283098020 +5 +f +-bs_StateGraph +8 +<20100829182239-262 +-bs_RefCounter +0 +<20100829182239-263 +-bs_InitialPoint +3 +- +f +f +0 +1283098020 +0 +-bs_ContextCoord +0 +0.07 +0.93 +-bs_ChoicepointList +1 +-CP +0 +1283098020 +0 +f +-bs_TrPointList +1 +-TrP +0 +1283098020 +0 +t +<20100829182239-267 +-bs_RefCounter +0 +<20100829182239-268 +-bs_TrPoint +3 +-TrP1 +f +f +0 +1283098020 +1 +1 +1 +-bs_ContextCoord +0 +0.50602 +1 +10 +t +<20100829182239-270 +-bs_RefCounter +0 +<20100829182239-271 +-bs_TrPoint +3 +-TrP212830980720 +f +f +0 +1283098072 +1 +2 +2 +-bs_ContextCoord +0 +1 +0.48331 +11 +t +<20100829182239-273 +-bs_RefCounter +0 +<20100829182239-274 +-bs_TrPoint +3 +-TrP212830981910 +f +f +0 +1283098191 +1 +2 +3 +-bs_ContextCoord +0 +5.55112e-017 +0.48791 +12 +t +<20100829182611-2 +-bs_RefCounter +0 +<20100829182611-3 +-bs_TrPoint +3 +-TrP2 +f +f +0 +1283099072 +1 +0 +-1 +-bs_ContextCoord +0 +1 +0.260873 +13 +t +<20100829182611-5 +-bs_RefCounter +0 +<20100829182611-6 +-bs_TrPoint +3 +-TrP3 +f +f +0 +1283099088 +1 +3 +-1 +-bs_ContextCoord +0 +1 +0.123651 +14 +t +<20100829182833-9 +-bs_RefCounter +0 +<20100829182833-10 +-bs_TrPoint +3 +-TrP412830992440 +f +f +0 +1283099244 +1 +2 +5 +-bs_ContextCoord +0 +0.214282 +0 +15 +t +<20100829182833-12 +-bs_RefCounter +0 +<20100829182833-13 +-bs_TrPoint +3 +-TrP412830992441 +f +f +0 +1283099244 +1 +1 +5 +-bs_ContextCoord +0 +0.214282 +0 +16 +f +-bs_StateList +1 +-State +0 +1283098020 +0 +t +<20100829182239-277 +-bs_RefCounter +0 +<20100829182239-278 +-bs_State +3 +-State1 +f +f +0 +1284578127 +5 +-fct.s2s1_entry(); +-fct.s2s1_exit(); +-1 +-1 +<20100829182239-279 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.310873 +0.743968 +-bs_SizeFactors +0 +1 +1 +f +f +5 +-1 +t +<20100829182239-282 +-bs_RefCounter +0 +<20100829182239-283 +-bs_State +3 +-State2 +f +f +0 +1284578143 +5 +-fct.s2s2_entry(); +-fct.s2s2_exit(); +-1 +-1 +<20100829182239-284 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.327381 +0.424206 +-bs_SizeFactors +0 +1 +1 +f +f +6 +-1 +f +-bs_TrSegmentList +1 +-TrSegmentListDummyName +0 +1283098020 +0 +t +<20100829182239-288 +-bs_RefCounter +0 +<20100829182239-289 +-bs_TrSegment +3 +- +f +f +0 +1284578105 +5 +3 +>20100829182239-268 +1 +>20100829182239-278 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283098027 +0 +t +<20100829182239-291 +-bs_RefCounter +0 +<20100829182239-292 +-bs_SimpleTriggerSpec +3 +- +f +f +0 +1284578105 +1 +- +- +f ++fct.s2_m1_s2s1_action(); +- +-1 +-bs_ContextCoord +0 +0.404065 +0.871984 +8 +-1 +t +<20100829182239-294 +-bs_RefCounter +0 +<20100829182239-295 +-bs_TrSegment +3 +-m2 +f +f +0 +1284578156 +5 +1 +>20100829182239-278 +1 +>20100829182239-283 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283098052 +0 +t +<20100829182239-297 +-bs_RefCounter +0 +<20100829182239-298 +-bs_SimpleTriggerSpec +3 +-m2 +f +f +0 +1284578156 +1 +-fct +- +f ++fct.s2s1_m2_s2s2_action(); +- +-1 +-bs_ContextCoord +0 +0.319127 +0.584087 +9 +-1 +t +<20100829182239-300 +-bs_RefCounter +0 +<20100829182239-301 +-bs_TrSegment +3 +-m3 +f +f +0 +1284578172 +5 +1 +>20100829182239-283 +3 +>20100829182239-271 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283098077 +0 +t +<20100829182239-303 +-bs_RefCounter +0 +<20100829182239-304 +-bs_SimpleTriggerSpec +3 +-m3 +f +f +0 +1284578172 +1 +-fct +- +f ++fct.s2s2_m3_action(); +- +-1 +-bs_ContextCoord +0 +0.663651 +0.436587 +10 +-1 +t +<20100829182611-8 +-bs_RefCounter +0 +<20100829182611-9 +-bs_TrSegment +3 +-m5 +f +f +0 +1284578182 +5 +3 +>20100829182611-3 +3 +>20100829182611-3 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283099100 +0 +t +<20100829182611-11 +-bs_RefCounter +0 +<20100829182611-12 +-bs_SimpleTriggerSpec +3 +-m5 +f +f +0 +1284578182 +1 +-fct +- +f ++fct.s2_m5_s2_action(); +- +-1 +-bs_ContextCoord +0 +0.660873 +0.27873 +11 +-1 +t +<20100829182611-14 +-bs_RefCounter +0 +<20100829182611-15 +-bs_TrSegment +3 +-m6 +f +f +0 +1284578193 +5 +3 +>20100829182611-6 +3 +>20100829182611-6 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283099146 +0 +t +<20100829182611-17 +-bs_RefCounter +0 +<20100829182611-18 +-bs_SimpleTriggerSpec +3 +-m6 +f +f +0 +1284578193 +1 +-fct +- +f ++fct.s2_m6_s2_action(); +- +-1 +-bs_ContextCoord +0 +0.652619 +0.142857 +12 +-1 +f +-bs_NoteList +1 +-Note +0 +1283098020 +0 +f +t +65535 +f +f +0 +1284744107 +-bs_SizeFactors +0 +1 +1 +t +0 +1283098020 +-bs_ContextCoord +0 +0.471562 +0.572565 +-bs_SizeFactors +0 +1 +1 +f +f +2 +-1 +t +<20100829182239-310 +-bs_RefCounter +0 +<20100829182239-311 +-bs_State +3 +-State3 +f +f +0 +1284578086 +5 +-fct.s3_entry(); +-fct.s3_exit(); +-1 +-1 +<20100829182239-312 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.884535 +0.559813 +-bs_SizeFactors +0 +1 +1 +f +f +3 +-1 +t +<20100829182239-315 +-bs_RefCounter +0 +<20100829182239-316 +-bs_State +3 +-State4 +f +f +0 +1284577988 +5 +-fct.s4_entry(); +-fct.s4_exit(); +-1 +-1 +<20100829182239-317 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.134821 +0.568292 +-bs_SizeFactors +0 +1 +1 +f +f +4 +-1 +f +-bs_TrSegmentList +1 +-TrSegmentListDummyName +0 +1283097862 +0 +t +<20100829182239-321 +-bs_RefCounter +0 +<20100829182239-322 +-bs_TrSegment +3 +- +f +f +0 +1284577891 +5 +0 +>20100829182239-243 +1 +>20100829182239-252 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283098010 +0 +t +<20100829182239-324 +-bs_RefCounter +0 +<20100829182239-325 +-bs_SimpleTriggerSpec +3 +- +f +f +0 +1284577891 +1 +- +- +f ++fct.init_action(); +- +-1 +-bs_ContextCoord +0 +0.173433 +0.894242 +0 +-1 +t +<20100829182239-327 +-bs_RefCounter +0 +<20100829182239-328 +-bs_TrSegment +3 +-m1 +f +f +0 +1284578082 +5 +1 +>20100829182239-252 +1 +>20100829182239-257 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283098019 +0 +t +<20100829182239-330 +-bs_RefCounter +0 +<20100829182239-331 +-bs_SimpleTriggerSpec +3 +-m1 +f +f +0 +1284577942 +1 +-fct +- +f ++fct.s1_m1_s2_action(); +- +-1 +-bs_ContextCoord +0 +0.473051 +0.696214 +1 +-1 +t +<20100829182239-333 +-bs_RefCounter +0 +<20100829182239-334 +-bs_TrSegment +3 +- +f +f +0 +1284578062 +5 +1 +>20100829182239-257 +1 +>20100829182239-311 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283098072 +0 +t +<20100829182239-336 +-bs_RefCounter +0 +<20100829182239-337 +-bs_SimpleTriggerSpec +3 +- +f +f +0 +1284578062 +1 +- +- +f ++fct.s2__s3_action(); +- +-1 +-bs_ContextCoord +0 +0.684228 +0.565466 +2 +-1 +t +<20100829182239-339 +-bs_RefCounter +0 +<20100829182239-340 +-bs_TrSegment +3 +-m4 +f +f +0 +1284578048 +5 +1 +>20100829182239-257 +1 +>20100829182239-316 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283098191 +0 +t +<20100829182239-342 +-bs_RefCounter +0 +<20100829182239-343 +-bs_SimpleTriggerSpec +3 +-m4 +f +f +0 +1284578048 +1 +-fct +- +f ++fct.s2_m4_s4_action(); +- +-1 +-bs_ContextCoord +0 +0.294878 +0.568292 +3 +-1 +t +<20100829182239-345 +-bs_RefCounter +0 +<20100829182239-346 +-bs_TrSegment +3 +-reset +f +f +0 +1284577970 +5 +3 +>20100829182239-248 +1 +>20100829182239-252 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283098239 +0 +t +<20100829182239-348 +-bs_RefCounter +0 +<20100829182239-349 +-bs_SimpleTriggerSpec +3 +-reset +f +f +0 +1284577970 +1 +-fct +- +f ++fct.top_reset_s2_action(); +- +-1 +-bs_ContextCoord +0 +0.578912 +0.904851 +4 +-1 +t +<20100829182833-23 +-bs_RefCounter +0 +<20100829182833-24 +-bs_TrSegment +3 +-m7 +f +f +0 +1284578074 +5 +1 +>20100829182239-257 +1 +>20100829182239-257 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283099244 +0 +t +<20100829182833-26 +-bs_RefCounter +0 +<20100829182833-27 +-bs_SimpleTriggerSpec +3 +-m7 +f +f +0 +1284578074 +1 +-fct +- +f ++fct.s2_m7_s2_action(); +- +-1 +-bs_ContextCoord +0 +0.416274 +0.475812 +5 +-1 +t +<20100829182919-8 +-bs_RefCounter +0 +<20100829182919-9 +-bs_TrSegment +3 +-m8 +f +f +0 +1284577951 +5 +3 +>20100829182919-6 +3 +>20100829182919-6 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283099335 +0 +t +<20100829182919-11 +-bs_RefCounter +0 +<20100829182919-12 +-bs_SimpleTriggerSpec +3 +-m8 +f +f +0 +1284577951 +1 +-fct +- +f ++fct.top_s8_top_action(); +- +-1 +-bs_ContextCoord +0 +0.78185 +0.769966 +6 +-1 +t +<20100915211026-30 +-bs_RefCounter +0 +<20100915211026-31 +-bs_TrSegment +3 +-m9 +f +f +0 +1284577824 +5 +3 +>20100915211026-28 +3 +>20100915211026-28 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1284577772 +0 +t +<20100915211026-33 +-bs_RefCounter +0 +<20100915211026-34 +-bs_SimpleTriggerSpec +3 +-m9 +f +f +0 +1284577824 +1 +-fct +- +f +-fct.top_s9_top_action(); +-1 +-bs_ContextCoord +0 +0.761154 +0.664596 +7 +-1 +f +-bs_NoteList +1 +-Note +0 +1283099798 +0 +t +<20100829183714-18 +-bs_RefCounter +0 +<20100829183714-19 +-bs_Note +3 +-Nt_a_HFSM +f +f +0 +1283100016 +0 ++Testee FSM: ++covers simple situations for hierarchical FSMs without: ++- priorities (inner transitions wins for same trigger) ++- history ++- inner init transitions ++- choicepoints +- +f +-bs_ContextCoord +0 +0.460842 +0.222624 +-bs_SizeFactors +0 +13.815 +4.56333 +f +t +65535 +f +f +0 +1284744107 +-bs_SizeFactors +0 +1.59913 +1.20746 +t +0 +1283097862 +- +- +- +1024 +-bs_SnapInfo +0 +1700 +1700 +30 +20 +0 +0 +1283097862 +0 +1283097862 +-bs_ActorMemberFct +1 +f +0 +1283097862 +t +f +f +t +<20100829182239-355 +-bs_RefCounter +0 +<20100829182239-356 +-bs_ActorClass +3 +-a_HFSM_Tester +f +f +0 +1283097884 +0 +0 +8 +- +f +-bs_ActorInterface +3 +-bs_PortRefList +1 +-Port +0 +1283097991 +0 +t +>20100829182239-359 +>20100829182239-360 +f +0 +0 +1283097876 +-bs_ActorStructure +7 +-bs_PortRefList +1 +-Port +0 +1283097991 +0 +t +>20100829182239-359 +>20100829182239-360 +f +-bs_SAPRefList +1 +-SAP +0 +1283097876 +0 +f +t +-bs_ActorRefList +1 +-ActorRef +0 +1283097876 +0 +f +-bs_BindingContractList +1 +-BindingContract +0 +1283097876 +0 +f +-bs_SizeFactors +0 +1.8 +1 +-bs_SnapInfo +0 +1700 +1700 +30 +20 +0 +0 +1283097876 +-bs_PrtvRefList +1 +-Primitive +0 +1283097876 +0 +f +-bs_NoteList +1 +-Note +0 +1283097876 +0 +f +0 +1283097876 +-bs_ActorBehaviour +7 +<20100829182239-372 +-bs_RefCounter +0 +<20100829182239-373 +-bs_StateMachine +4 +-bs_DataMemberList +1 +-var +0 +1283097876 +5 +f +-bs_StateGraph +8 +<20100829182239-376 +-bs_RefCounter +0 +<20100829182239-377 +-bs_InitialPoint +3 +- +f +f +0 +1283097876 +0 +-bs_ContextCoord +0 +0.07 +0.93 +-bs_ChoicepointList +1 +-CP +0 +1283097876 +0 +f +-bs_TrPointList +1 +-TrP +0 +1283097876 +0 +f +-bs_StateList +1 +-State +0 +1283097876 +0 +t +<20100829225123-287 +-bs_RefCounter +0 +<20100829225123-288 +-bs_State +3 +-State1 +f +f +0 +1284578397 +5 +- +- +-1 +-1 +<20100829225123-289 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.149526 +0.810939 +-bs_SizeFactors +0 +1 +1 +f +f +1 +-1 +t +<20100915212114-2 +-bs_RefCounter +0 +<20100915212114-3 +-bs_State +3 +-State2 +f +f +0 +1284578397 +5 +- +- +-1 +-1 +<20100915212114-4 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.146364 +0.709222 +-bs_SizeFactors +0 +1 +1 +f +f +2 +-1 +t +<20100915212114-7 +-bs_RefCounter +0 +<20100915212114-8 +-bs_State +3 +-State3 +f +f +0 +1284578397 +5 +- +- +-1 +-1 +<20100915212114-9 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.154629 +0.598254 +-bs_SizeFactors +0 +1 +1 +f +f +3 +-1 +t +<20100915212114-12 +-bs_RefCounter +0 +<20100915212114-13 +-bs_State +3 +-State4 +f +f +0 +1284578397 +5 +- +- +-1 +-1 +<20100915212114-14 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.155628 +0.487285 +-bs_SizeFactors +0 +1 +1 +f +f +4 +-1 +t +<20100915212114-17 +-bs_RefCounter +0 +<20100915212114-18 +-bs_State +3 +-State5 +f +f +0 +1284578397 +5 +- +- +-1 +-1 +<20100915212114-19 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.155628 +0.379385 +-bs_SizeFactors +0 +1 +1 +f +f +5 +-1 +t +<20100915212114-22 +-bs_RefCounter +0 +<20100915212114-23 +-bs_State +3 +-State6 +f +f +0 +1284578402 +5 +- +- +-1 +-1 +<20100915212114-24 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.154851 +0.284545 +-bs_SizeFactors +0 +1 +1 +f +f +6 +-1 +t +<20100915212114-27 +-bs_RefCounter +0 +<20100915212114-28 +-bs_State +3 +-State7 +f +f +0 +1284578404 +5 +- +- +-1 +-1 +<20100915212114-29 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.148333 +0.183026 +-bs_SizeFactors +0 +1 +1 +f +f +7 +-1 +t +<20100915212114-32 +-bs_RefCounter +0 +<20100915212114-33 +-bs_State +3 +-TestPass +f +f +0 +1285144822 +5 +-ComponentClassBase.getInstance().terminate(); +- +-1 +-1 +<20100915212114-34 +-bs_RefCounter +0 +N +-bs_ContextCoord +0 +0.15205 +0.0781923 +-bs_SizeFactors +0 +1 +1 +f +f +8 +-1 +f +-bs_TrSegmentList +1 +-TrSegmentListDummyName +0 +1283097876 +0 +t +<20100829225123-293 +-bs_RefCounter +0 +<20100829225123-294 +-bs_TrSegment +3 +-init +f +f +0 +1284578397 +5 +0 +>20100829182239-377 +1 +>20100829225123-288 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1283115072 +0 +f +- +-1 +-bs_ContextCoord +0 +0.0916958 +0.880844 +0 +-1 +t +<20100915212114-38 +-bs_RefCounter +0 +<20100915212114-39 +-bs_TrSegment +3 +-init_action +f +f +0 +1284578397 +5 +1 +>20100829225123-288 +1 +>20100915212114-3 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1284578306 +0 +t +<20100915212114-41 +-bs_RefCounter +0 +<20100915212114-42 +-bs_SimpleTriggerSpec +3 +-init_action +f +f +0 +1284578314 +1 +-testee +- +f +- +-1 +-bs_ContextCoord +0 +0.147362 +0.756469 +1 +-1 +t +<20100915212114-44 +-bs_RefCounter +0 +<20100915212114-45 +-bs_TrSegment +3 +-s1_entry +f +f +0 +1284578397 +5 +1 +>20100915212114-3 +1 +>20100915212114-8 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1284578317 +0 +t +<20100915212114-47 +-bs_RefCounter +0 +<20100915212114-48 +-bs_SimpleTriggerSpec +3 +-s1_entry +f +f +0 +1284578334 +1 +-testee +- +f ++testee.m1(); +- +-1 +-bs_ContextCoord +0 +0.150496 +0.653762 +2 +-1 +t +<20100915212114-50 +-bs_RefCounter +0 +<20100915212114-51 +-bs_TrSegment +3 +-s1_exit +f +f +0 +1284578397 +5 +1 +>20100915212114-8 +1 +>20100915212114-13 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1284578336 +0 +t +<20100915212114-53 +-bs_RefCounter +0 +<20100915212114-54 +-bs_SimpleTriggerSpec +3 +-s1_exit +f +f +0 +1284578345 +1 +-testee +- +f +- +-1 +-bs_ContextCoord +0 +0.155128 +0.542794 +3 +-1 +t +<20100915212114-56 +-bs_RefCounter +0 +<20100915212114-57 +-bs_TrSegment +3 +-s1_m1_s2_action +f +f +0 +1284578423 +5 +1 +>20100915212114-13 +1 +>20100915212114-18 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1284578348 +0 +t +<20100915212114-59 +-bs_RefCounter +0 +<20100915212114-60 +-bs_SimpleTriggerSpec +3 +-s1_m1_s2_action +f +f +0 +1284578423 +1 +-testee +- +f +- +-1 +-bs_ContextCoord +0 +0.155628 +0.43331 +4 +-1 +t +<20100915212114-62 +-bs_RefCounter +0 +<20100915212114-63 +-bs_TrSegment +3 +-s2_entry +f +f +0 +1284578443 +5 +1 +>20100915212114-18 +1 +>20100915212114-23 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1284578434 +0 +t +<20100915212114-65 +-bs_RefCounter +0 +<20100915212114-66 +-bs_SimpleTriggerSpec +3 +-s2_entry +f +f +0 +1284578443 +1 +-testee +- +f +- +-1 +-bs_ContextCoord +0 +0.154851 +0.330307 +5 +-1 +t +<20100915212114-68 +-bs_RefCounter +0 +<20100915212114-69 +-bs_TrSegment +3 +-s2_m1_s2s1_action +f +f +0 +1284578457 +5 +1 +>20100915212114-23 +1 +>20100915212114-28 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1284578448 +0 +t +<20100915212114-71 +-bs_RefCounter +0 +<20100915212114-72 +-bs_SimpleTriggerSpec +3 +-s2_m1_s2s1_action +f +f +0 +1284578457 +1 +-testee +- +f +- +-1 +-bs_ContextCoord +0 +0.151592 +0.233785 +6 +-1 +t +<20100915212114-74 +-bs_RefCounter +0 +<20100915212114-75 +-bs_TrSegment +3 +-s2s1_entry +f +f +0 +1284578470 +5 +1 +>20100915212114-28 +1 +>20100915212114-33 +-bs_TrTrigger +1 +-TriggerDummyName +0 +1284578459 +0 +t +<20100915212114-77 +-bs_RefCounter +0 +<20100915212114-78 +-bs_SimpleTriggerSpec +3 +-s2s1_entry +f +f +0 +1284578470 +1 +-testee +- +f +- +-1 +-bs_ContextCoord +0 +0.150191 +0.130609 +7 +-1 +f +-bs_NoteList +1 +-Note +0 +1283097876 +0 +f +t +65535 +f +f +0 +1284578459 +-bs_SizeFactors +0 +2.86143 +1.60421 +t +0 +1283097876 +- +- +- +1024 +-bs_SnapInfo +0 +1700 +1700 +30 +20 +0 +0 +1283097876 +0 +1283097876 +-bs_ActorMemberFct +1 +f +0 +1283097876 +t +f +f +t +<20100916105801-327 +-bs_RefCounter +0 +<20100916105801-328 +-bs_ActorClass +3 +-ComponentMain +f +f +0 +1285144862 +0 +0 +8 +- +f +-bs_ActorInterface +3 +-bs_PortRefList +1 +-Port +0 +1284627427 +0 +f +0 +0 +1284627427 +-bs_ActorStructure +7 +-bs_PortRefList +1 +-Port +0 +1284627427 +0 +f +-bs_SAPRefList +1 +-SAP +0 +1285144862 +0 +f +t +-bs_ActorRefList +1 +-ActorRef +0 +1284746549 +0 +t +<20100916105801-335 +-bs_RefCounter +0 +<20100916105801-336 +-bs_ActorRef +3 +-HFSM_Tests +f +f +0 +1284746557 +1 +-bs_ActorCoord +0 +0.412917 +0.6945 +-bs_SizeFactors +0 +2.99625 +0.995625 +-bs_CompPortRefList +1 +-PortInstListDummyName +0 +1284627460 +0 +f +3 +-a_HFSM_Tests +f +-bs_BindingContractList +1 +-BindingContract +0 +1284627427 +0 +f +-bs_SizeFactors +0 +1.8 +1 +-bs_SnapInfo +0 +1700 +1700 +30 +20 +0 +0 +1284627427 +-bs_PrtvRefList +1 +-Primitive +0 +1284627427 +0 +f +-bs_NoteList +1 +-Note +0 +1284627427 +0 +f +0 +1284627427 +-bs_ActorBehaviour +7 +<20100916105801-351 +-bs_RefCounter +0 +<20100916105801-352 +-bs_StateMachine +4 +-bs_DataMemberList +1 +-var +0 +1284627427 +5 +f +-bs_StateGraph +8 +<20100916105801-355 +-bs_RefCounter +0 +<20100916105801-356 +-bs_InitialPoint +3 +- +f +f +0 +1284627427 +0 +-bs_ContextCoord +0 +0.07 +0.93 +-bs_ChoicepointList +1 +-CP +0 +1284627427 +0 +f +-bs_TrPointList +1 +-TrP +0 +1284627427 +0 +f +-bs_StateList +1 +-State +0 +1284627427 +0 +f +-bs_TrSegmentList +1 +-TrSegmentListDummyName +0 +1284627427 +0 +f +-bs_NoteList +1 +-Note +0 +1284627427 +0 +f +t +65535 +f +f +0 +1284627427 +-bs_SizeFactors +0 +1 +1 +t +0 +1284627427 +- +- +- +1024 +-bs_SnapInfo +0 +1700 +1700 +30 +20 +0 +0 +1284627427 +0 +1284627427 +-bs_ActorMemberFct +1 +f +0 +1284627427 +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 +1284746699 +0 +t +<20100917200516-354 +-bs_RefCounter +0 +<20100826185605-116 +-bs_Configuration +3 +-StdConfig +f +f +0 +1282841742 +6 +>20100916105801-327 +>20100916105801-328 +-bs_TargetList +1 +-Target +0 +1282841742 +0 +t +<20100826185605-119 +-bs_RefCounter +0 +<20100826185605-120 +-bs_Target +3 +-PC +f +f +0 +1282841742 +5 +-pc_id +0 +0 +2 +2 +-bs_FileList +1 +-FileListDummyName +0 +1282841742 +0 +f +f +-bs_ContextCoord +0 +0.5 +0.5 +-bs_SizeFactors +0 +1 +1 +f +-bs_NoteList +1 +-Note +0 +1282841742 +0 +f +-bs_PrtvDescriptorList +1 +-PrtvInstance +0 +1282841742 +0 +f +-bs_ActorInstanceList +1 +-ActorInstance +0 +1282841742 +0 +t +<20100917200516-362 +-bs_RefCounter +0 +<20100917200516-363 +-bs_ActorInstance +3 +-ComponentMain +f +f +0 +1284746699 +5 +8 +<20100917200516-364 +-bs_RefCounter +0 +N +0 +f +<20100921190524-249 +-bs_DataMemberList +1 +-var +0 +1285088685 +5 +f +t +t +0 +0 +0 +0 +-bs_ProbeList +1 +-ProbeListDummyName +0 +1284746699 +0 +f +-bs_PortInstanceList +1 +-PortInstListDummyName +0 +1284746699 +0 +f +-bs_GUIItemList +1 +-GUIItemListDummyName +0 +1285144862 +0 +f +t +1024 +t +<20100917200516-368 +-bs_RefCounter +0 +<20100917200516-369 +-bs_ActorInstance +3 +-ComponentMain/HFSM_Tests +f +f +0 +1284746699 +5 +8 +<20100917200516-370 +-bs_RefCounter +0 +N +0 +f +<20100921190524-253 +-bs_DataMemberList +1 +-var +0 +1285088685 +5 +f +t +t +0 +0 +0 +0 +-bs_ProbeList +1 +-ProbeListDummyName +0 +1284746699 +0 +f +-bs_PortInstanceList +1 +-PortInstListDummyName +0 +1284746699 +0 +f +-bs_GUIItemList +1 +-GUIItemListDummyName +0 +1284746699 +0 +f +t +1024 +t +<20100917200516-374 +-bs_RefCounter +0 +<20100917200516-375 +-bs_ActorInstance +3 +-ComponentMain/HFSM_Tests/HFSM +f +f +0 +1284746699 +5 +8 +<20100917200516-376 +-bs_RefCounter +0 +N +0 +f +<20100921190524-257 +-bs_DataMemberList +1 +-var +0 +1285088685 +5 +f +t +t +0 +0 +0 +0 +-bs_ProbeList +1 +-ProbeListDummyName +0 +1284746699 +0 +f +-bs_PortInstanceList +1 +-PortInstListDummyName +0 +1284746699 +0 +f +-bs_GUIItemList +1 +-GUIItemListDummyName +0 +1284746699 +0 +f +t +1024 +t +<20100917200516-380 +-bs_RefCounter +0 +<20100917200516-381 +-bs_ActorInstance +3 +-ComponentMain/HFSM_Tests/Tester +f +f +0 +1284746699 +5 +8 +<20100917200516-382 +-bs_RefCounter +0 +N +0 +f +<20100921190524-261 +-bs_DataMemberList +1 +-var +0 +1285088685 +5 +f +t +t +0 +0 +0 +0 +-bs_ProbeList +1 +-ProbeListDummyName +0 +1284746699 +0 +f +-bs_PortInstanceList +1 +-PortInstListDummyName +0 +1284746699 +0 +f +-bs_GUIItemList +1 +-GUIItemListDummyName +0 +1284746699 +0 +f +t +1024 +f +>20100826185605-119 +>20100826185605-120 +0 +-bs_PropertySet +0 +f +-bs_ViewMementoList +1 +-ViewMemento +0 +1292421958 +0 +f +f +>20100917200516-354 +>20100826185605-116 +1284746699 +-bs_DataObjHist +0 +0 diff --git a/tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.java b/tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.java new file mode 100644 index 000000000..22b378d3e --- /dev/null +++ b/tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.java @@ -0,0 +1,64 @@ +/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.integration.tests; + + +import static org.junit.Assert.assertEquals; + +import org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher; +import org.eclipse.etrice.integration.tests.ComponentMain; +import org.eclipse.etrice.integration.tests.a_HFSM_Tester; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; +import org.eclipse.core.resources.IProject; +import org.eclipse.core.resources.IWorkspace; +import org.eclipse.core.resources.IncrementalProjectBuilder; +import org.eclipse.core.resources.ResourcesPlugin; + + +public class IntegrationTestFSMGenerator { + + @Before + public void setUp() throws Exception { + // we have to launch a JUnit Plugin test since for the build we need an Eclipse environment + // in this context the Mwe2Launcher suffers from https://bugs.eclipse.org/bugs/show_bug.cgi?id=318721 + /* + Mwe2Launcher.main(new String[]{"/org.eclipse.etrice.integration.tests/src/de/protos/etrice/integration/test/IntegrationTestFSMGenerator.mwe2"}); + final IWorkspace workspace = ResourcesPlugin.getWorkspace(); + final IProject project = workspace.getRoot().getProject("/org.eclipse.etrice.integration.tests"); + project.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, null); + */ + } + + @Test(timeout=1000) + public void testHFSM(){ + ComponentMain main_component = new ComponentMain(null,"MainComponent"); + main_component.init(); // lifecycle init + main_component.start(); // lifecycle start + + main_component.waitTerminate(); + + assertEquals(a_HFSM_Tester.STATE_TestPass ,main_component.getInstance("/MainComponent/HFSM_Tests/Tester").getState()); + + // end the lifecycle + main_component.stop(); // lifecycle stop + main_component.destroy(); // lifecycle destroy + } + + @After + public void tearDown() throws Exception { + } + + +} diff --git a/tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.mwe2 b/tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.mwe2 new file mode 100644 index 000000000..d20cbe20a --- /dev/null +++ b/tests/org.eclipse.etrice.integration.tests/src/org/eclipse/etrice/integration/tests/IntegrationTestFSMGenerator.mwe2 @@ -0,0 +1,18 @@ +module integration_test_fsm + +import workflow.RoomGenerator +import org.eclipse.emf.mwe.utils.* + +var destDir = "src-gen" + +Workflow { + + component = DirectoryCleaner { + directory = destDir + } + + component = @RoomGenerator { + sourceDir = "model" + targetDir = destDir + } +} \ No newline at end of file diff --git a/tests/org.eclipse.etrice.integration.tests/tmp/log/MainComponent_Async.seq b/tests/org.eclipse.etrice.integration.tests/tmp/log/MainComponent_Async.seq new file mode 100644 index 000000000..58a2c1029 --- /dev/null +++ b/tests/org.eclipse.etrice.integration.tests/tmp/log/MainComponent_Async.seq @@ -0,0 +1,27 @@ +#generated MSC for Trace2UML + /MainComponent/HFSM_Tests/HFSM >-- /MainComponent/HFSM_Tests/Tester init_action + /MainComponent/HFSM_Tests/HFSM >-- /MainComponent/HFSM_Tests/Tester s1_entry + /MainComponent/HFSM_Tests/HFSM >>> State1 + /MainComponent/HFSM_Tests/Tester >>> State1 + /MainComponent/HFSM_Tests/HFSM --> /MainComponent/HFSM_Tests/Tester init_action + /MainComponent/HFSM_Tests/Tester >>> State2 + /MainComponent/HFSM_Tests/HFSM --> /MainComponent/HFSM_Tests/Tester s1_entry + /MainComponent/HFSM_Tests/Tester >-- /MainComponent/HFSM_Tests/HFSM m1 + /MainComponent/HFSM_Tests/Tester >>> State3 + /MainComponent/HFSM_Tests/Tester --> /MainComponent/HFSM_Tests/HFSM m1 + /MainComponent/HFSM_Tests/HFSM >-- /MainComponent/HFSM_Tests/Tester s1_exit + /MainComponent/HFSM_Tests/HFSM >-- /MainComponent/HFSM_Tests/Tester s1_m1_s2_action + /MainComponent/HFSM_Tests/HFSM >-- /MainComponent/HFSM_Tests/Tester s2_entry + /MainComponent/HFSM_Tests/HFSM >-- /MainComponent/HFSM_Tests/Tester s2_m1_s2s1_action + /MainComponent/HFSM_Tests/HFSM >-- /MainComponent/HFSM_Tests/Tester s2s1_entry + /MainComponent/HFSM_Tests/HFSM >>> State2_State1 + /MainComponent/HFSM_Tests/HFSM --> /MainComponent/HFSM_Tests/Tester s1_exit + /MainComponent/HFSM_Tests/Tester >>> State4 + /MainComponent/HFSM_Tests/HFSM --> /MainComponent/HFSM_Tests/Tester s1_m1_s2_action + /MainComponent/HFSM_Tests/Tester >>> State5 + /MainComponent/HFSM_Tests/HFSM --> /MainComponent/HFSM_Tests/Tester s2_entry + /MainComponent/HFSM_Tests/Tester >>> State6 + /MainComponent/HFSM_Tests/HFSM --> /MainComponent/HFSM_Tests/Tester s2_m1_s2s1_action + /MainComponent/HFSM_Tests/Tester >>> State7 + /MainComponent/HFSM_Tests/HFSM --> /MainComponent/HFSM_Tests/Tester s2s1_entry + /MainComponent/HFSM_Tests/Tester >>> TestPass diff --git a/tests/org.eclipse.etrice.integration.tests/tmp/log/MainComponent_Sync.seq b/tests/org.eclipse.etrice.integration.tests/tmp/log/MainComponent_Sync.seq new file mode 100644 index 000000000..50058ecdd --- /dev/null +++ b/tests/org.eclipse.etrice.integration.tests/tmp/log/MainComponent_Sync.seq @@ -0,0 +1 @@ +#generated MSC for Trace2UML diff --git a/tests/org.eclipse.etrice.runtime.java.tests/.gitignore b/tests/org.eclipse.etrice.runtime.java.tests/.gitignore new file mode 100644 index 000000000..ba077a403 --- /dev/null +++ b/tests/org.eclipse.etrice.runtime.java.tests/.gitignore @@ -0,0 +1 @@ +bin diff --git a/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 000000000..912f280ba --- /dev/null +++ b/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,12 @@ +#Fri Dec 03 09:11:14 CET 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.runtime.java.tests/.settings/org.eclipse.ocl.modelregistry b/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.ocl.modelregistry new file mode 100644 index 000000000..f350ed35e --- /dev/null +++ b/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.ocl.modelregistry @@ -0,0 +1,2 @@ + + diff --git a/tests/org.eclipse.etrice.runtime.java.tests/about.html b/tests/org.eclipse.etrice.runtime.java.tests/about.html new file mode 100644 index 000000000..f47dbddbb --- /dev/null +++ b/tests/org.eclipse.etrice.runtime.java.tests/about.html @@ -0,0 +1,28 @@ + + + + +About + + +

About This Content

+ +

June 5, 2006

+

License

+ +

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at http://www.eclipse.org/legal/epl-v10.html. +For purposes of the EPL, "Program" will mean the Content.

+ +

If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") 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 http://www.eclipse.org.

+ + + \ No newline at end of file diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/debugging/MSCLoggerTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/debugging/MSCLoggerTest.java new file mode 100644 index 000000000..8e6524ce8 --- /dev/null +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/debugging/MSCLoggerTest.java @@ -0,0 +1,37 @@ +/******************************************************************************* + * 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 + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.debugging; + +import org.eclipse.etrice.runtime.java.debugging.MSCLogger; + +import junit.framework.TestCase; + +public class MSCLoggerTest extends TestCase { + + public void testMSCLogger() { + MSCLogger logger = new MSCLogger(); + logger.setMSC("MSC1", ".\\"); + logger.open(); + logger.addMessageAsyncOut("Inst1", "Inst2", "msg1"); + logger.addMessageAsyncIn("Inst1", "Inst2", "msg1"); + logger.addMessageSyncCall("Inst1", "Inst2", "msg1"); + logger.addMessageSyncReturn("Inst1", "Inst2", "msg1"); + logger.addActorState("Actor1", "State1"); + logger.close(); + + assertEquals("\tInst1 >-- Inst2 msg1", logger.getCommandList().get(0)); + assertEquals("\tInst1 --> Inst2 msg1", logger.getCommandList().get(1)); + assertEquals("\tInst1 ==> Inst2 msg1", logger.getCommandList().get(2)); + assertEquals("\tInst1 <== Inst2 msg1", logger.getCommandList().get(3)); + assertEquals("\tActor1 >>> State1", logger.getCommandList().get(4)); + + //TODO: how should we check generated files? + + } +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/AddressTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/AddressTest.java new file mode 100644 index 000000000..7375e2a64 --- /dev/null +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/AddressTest.java @@ -0,0 +1,28 @@ +/******************************************************************************* + * 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 + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; + +import junit.framework.TestCase; + +public class AddressTest extends TestCase { + + public void testAddress() { + Address addr = new Address(1,2,3); + assertEquals(1, addr.nodeID); + assertEquals(2, addr.threadID); + assertEquals(3, addr.objectID); + } + public void testToString() { + Address addr = new Address(1,2,3); + assertEquals("Address(nodeID=1,threadID=2,objectID=3)", addr.toString()); + } + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/DummyMessageReceiver.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/DummyMessageReceiver.java new file mode 100644 index 000000000..fdf28bf90 --- /dev/null +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/DummyMessageReceiver.java @@ -0,0 +1,49 @@ +/******************************************************************************* + * 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 + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.messaging.IMessageReceiver; +import org.eclipse.etrice.runtime.java.messaging.Message; + +// this class is purely for testing purposes +// it remembers the last receive message +public class DummyMessageReceiver implements IMessageReceiver { + + DummyMessageReceiver (Address address){ + this.address = address; + } + + public void receive(Message msg) { + last_received_message = msg; + } + + public Address getAddress() { + // TODO Auto-generated method stub + return this.address; + } + + public Message getLastReceivedMessage(){ + return last_received_message; + } + + private Message last_received_message = null; + private Address address = null; + + public String getInstancePath() { + // TODO Auto-generated method stub + return null; + } + + public String getInstancePathName() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageDispatcherTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageDispatcherTest.java new file mode 100644 index 000000000..dbe7f4c8c --- /dev/null +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageDispatcherTest.java @@ -0,0 +1,69 @@ +/******************************************************************************* + * 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 + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.messaging.Message; +import org.eclipse.etrice.runtime.java.messaging.MessageDispatcher; + +import junit.framework.TestCase; + +public class MessageDispatcherTest extends TestCase { + + public void testAddMessageReceiver() { + Address dispatcher_address = new Address(0,0,0); + + // Create Receivers to check if the messages are delivered + DummyMessageReceiver receiver1 = new DummyMessageReceiver(new Address(0,0,1)); + DummyMessageReceiver receiver2 = new DummyMessageReceiver(new Address(0,1,1)); + DummyMessageReceiver receiver3 = new DummyMessageReceiver(new Address(1,1,1)); + DummyMessageReceiver receiver4 = new DummyMessageReceiver(new Address(0,0,2)); + DummyMessageReceiver receiver5 = new DummyMessageReceiver(new Address(0,1,2)); + DummyMessageReceiver receiver6 = new DummyMessageReceiver(new Address(1,1,2)); + + + // Add all Receivers to the Dispatcher + MessageDispatcher dispatcher = new MessageDispatcher(null, dispatcher_address, "Dispatcher1"); + dispatcher.addMessageReceiver(receiver1); + dispatcher.addMessageReceiver(receiver2); + dispatcher.addMessageReceiver(receiver3); + dispatcher.addMessageReceiver(receiver4); + dispatcher.addMessageReceiver(receiver5); + dispatcher.addMessageReceiver(receiver6); + + + Message msg1 = new Message(new Address(0,0,1)); + Message msg2 = new Message(new Address(0,1,1)); + Message msg3 = new Message(new Address(1,1,1)); + Message msg4 = new Message(new Address(0,0,2)); + Message msg5 = new Message(new Address(0,1,2)); + Message msg6 = new Message(new Address(1,1,2)); + + dispatcher.receive(msg1); + assertEquals(msg1, receiver1.getLastReceivedMessage()); + dispatcher.receive(msg2); + assertEquals(msg2, receiver2.getLastReceivedMessage()); + dispatcher.receive(msg3); + assertEquals(msg3, receiver3.getLastReceivedMessage()); + dispatcher.receive(msg4); + assertEquals(msg4, receiver4.getLastReceivedMessage()); + dispatcher.receive(msg5); + assertEquals(msg5, receiver5.getLastReceivedMessage()); + dispatcher.receive(msg6); + assertEquals(msg6, receiver6.getLastReceivedMessage()); + + } + + public void testInstanceId() { + Address dispatcher_address = new Address(0,0,0); + MessageDispatcher dispatcher = new MessageDispatcher(null, dispatcher_address, "Dispatcher1"); + assertEquals("/Dispatcher1", dispatcher.getInstancePath()); + } + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageSeQueueTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageSeQueueTest.java new file mode 100644 index 000000000..440c46c2f --- /dev/null +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageSeQueueTest.java @@ -0,0 +1,129 @@ +/******************************************************************************* + * 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 + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.messaging.Message; +import org.eclipse.etrice.runtime.java.messaging.MessageSeQueue; + +import junit.framework.TestCase; + +public class MessageSeQueueTest extends TestCase { + + public void testPushPop() { + MessageSeQueue queue = new MessageSeQueue(null, "QueueName"); + Message msg1 = new Message(new Address(0, 0, 0)); + Message msg2 = new Message(new Address(0, 0, 0)); + Message msg3 = new Message(new Address(0, 0, 0)); + + Message msg_received = null; + + // check fresh queue + assertEquals(null, queue.getFirst()); + assertEquals(null, queue.getLast()); + + // push first message + queue.push(msg1); + assertEquals(null, msg1.getNext()); + + assertEquals(msg1, queue.getFirst()); + assertEquals(msg1, queue.getLast()); + + // push second message + queue.push(msg2); + assertEquals(msg2, msg1.getNext()); + assertEquals(null, msg2.getNext()); + + assertEquals(msg1, queue.getFirst()); + assertEquals(msg2, queue.getLast()); + + // push third message + queue.push(msg3); + assertEquals(msg2, msg1.getNext()); + assertEquals(msg3, msg2.getNext()); + assertEquals(null, msg3.getNext()); + + assertEquals(msg1, queue.getFirst()); + assertEquals(msg3, queue.getLast()); + + // pop msg1 + msg_received = queue.pop(); + assertEquals(msg1, msg_received); + assertEquals(null, msg1.getNext()); + assertEquals(msg3, msg2.getNext()); + assertEquals(null, msg3.getNext()); + + assertEquals(msg2, queue.getFirst()); + assertEquals(msg3, queue.getLast()); + + + // pop msg2 + msg_received = queue.pop(); + assertEquals(msg2, msg_received); + assertEquals(null, msg2.getNext()); + assertEquals(null, msg3.getNext()); + + assertEquals(msg3, queue.getFirst()); + assertEquals(msg3, queue.getLast()); + + // pop msg3 + msg_received = queue.pop(); + assertEquals(msg3, msg_received); + assertEquals(null, msg3.getNext()); + + assertEquals(null, queue.getFirst()); + assertEquals(null, queue.getLast()); + + msg_received = queue.pop(); + assertEquals(null, msg_received); + + } + + + public void testSizeAndHighwatermark() { + MessageSeQueue queue = new MessageSeQueue(null, "QueueName"); + Message msg1 = new Message(new Address(0, 0, 0)); + Message msg2 = new Message(new Address(0, 0, 0)); + Message msg3 = new Message(new Address(0, 0, 0)); + + Message msg_received = null; + + assertEquals(0, queue.getSize()); + assertEquals(0, queue.getHightWaterMark()); + + queue.push(msg1); + assertEquals(1, queue.getSize()); + assertEquals(1, queue.getHightWaterMark()); + + queue.push(msg2); + assertEquals(2, queue.getSize()); + assertEquals(2, queue.getHightWaterMark()); + + queue.push(msg3); + assertEquals(3, queue.getSize()); + assertEquals(3, queue.getHightWaterMark()); + + msg_received = queue.pop(); + assertEquals(msg1, msg_received); + assertEquals(2, queue.getSize()); + assertEquals(3, queue.getHightWaterMark()); + + msg_received = queue.pop(); + assertEquals(msg2, msg_received); + assertEquals(1, queue.getSize()); + assertEquals(3, queue.getHightWaterMark()); + + msg_received = queue.pop(); + assertEquals(msg3, msg_received); + assertEquals(0, queue.getSize()); + assertEquals(3, queue.getHightWaterMark()); + + } + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageServiceTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageServiceTest.java new file mode 100644 index 000000000..2c03d7051 --- /dev/null +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageServiceTest.java @@ -0,0 +1,148 @@ +/******************************************************************************* + * 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 + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.messaging.Message; +import org.eclipse.etrice.runtime.java.messaging.MessageService; + +import junit.framework.TestCase; + +public class MessageServiceTest extends TestCase { + + + public void testRun() { + + // testing basic functionality of MessageService and Dispatcher + Address addr = new Address(0,0,0); + MessageService msg_service = new MessageService(null, addr, "MessageService1"); + + DummyMessageReceiver receiver1 = new DummyMessageReceiver(new Address(0,0,1)); + DummyMessageReceiver receiver2 = new DummyMessageReceiver(new Address(0,1,1)); + DummyMessageReceiver receiver3 = new DummyMessageReceiver(new Address(1,1,1)); + DummyMessageReceiver receiver4 = new DummyMessageReceiver(new Address(0,0,2)); + DummyMessageReceiver receiver5 = new DummyMessageReceiver(new Address(0,1,2)); + DummyMessageReceiver receiver6 = new DummyMessageReceiver(new Address(1,1,2)); + + + msg_service.getMessageDispatcher().addMessageReceiver(receiver1); + msg_service.getMessageDispatcher().addMessageReceiver(receiver2); + msg_service.getMessageDispatcher().addMessageReceiver(receiver3); + msg_service.getMessageDispatcher().addMessageReceiver(receiver4); + msg_service.getMessageDispatcher().addMessageReceiver(receiver5); + msg_service.getMessageDispatcher().addMessageReceiver(receiver6); + + Message msg1 = new Message(new Address(0,0,1)); + Message msg2 = new Message(new Address(0,1,1)); + Message msg3 = new Message(new Address(1,1,1)); + Message msg4 = new Message(new Address(0,0,2)); + Message msg5 = new Message(new Address(0,1,2)); + Message msg6 = new Message(new Address(1,1,2)); + + msg_service.start(); + + msg_service.receive(msg1); + msg_service.receive(msg2); + msg_service.receive(msg3); + msg_service.receive(msg4); + msg_service.receive(msg5); + msg_service.receive(msg6); + + + try { + // give the other thread in MessageService a bit time to compute the queue + Thread.sleep(100); + } catch (InterruptedException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + assertEquals(msg1, receiver1.getLastReceivedMessage()); + assertEquals(msg2, receiver2.getLastReceivedMessage()); + assertEquals(msg3, receiver3.getLastReceivedMessage()); + assertEquals(msg4, receiver4.getLastReceivedMessage()); + assertEquals(msg5, receiver5.getLastReceivedMessage()); + assertEquals(msg6, receiver6.getLastReceivedMessage()); + + + } + + public void testMassiveMessaging(){ + // testing massive use of messaging between two threads + // current thread sends, MessageService has its own thread to dispatch the received messages + // implicit test of race conditions -> test breaks if you take out the synchronized keywords from the MessageService + + Address addr = new Address(0,0,0); + MessageService msg_service = new MessageService(null, addr, "MessageService1"); + + int max=3000; + int max_iter=10; + + // create and register message receivers + DummyMessageReceiver receiver[]=new DummyMessageReceiver[max]; + for (int i=0; i