Bug 487356: Code generation fails on "pass-through" connectors
Updated test models with expected source.
Change-Id: Ib72e03c65a88a3d596cb6a2935c1ad832a5cc381
Signed-off-by: Ernesto Posse <eposse@gmail.com>
diff --git a/models/tests/codepattern/structure/RelayPortFanOut/RelayPortFanOut.uml b/models/tests/codepattern/structure/RelayPortFanOut/RelayPortFanOut.uml
index c3617a9..fc21872 100644
--- a/models/tests/codepattern/structure/RelayPortFanOut/RelayPortFanOut.uml
+++ b/models/tests/codepattern/structure/RelayPortFanOut/RelayPortFanOut.uml
@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:RTCppProperties="http://www.eclipse.org/papyrus/umlrt/cppproperties" xmlns:UMLRealTime="http://www.eclipse.org/papyrus/umlrt" xmlns:UMLRealTimeStateMach="http://www.eclipse.org/papyrus/umlrt/statemachine" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:RTCppProperties="http://www.eclipse.org/papyrus/umlrt/cppproperties" xmlns:UMLRTStateMachines="http://www.eclipse.org/papyrus/umlrt/statemachine" xmlns:UMLRealTime="http://www.eclipse.org/papyrus/umlrt" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
<uml:Model xmi:id="_VxDH8OC4EeWlQawYMs_dEQ" name="RootElement">
<packagedElement xmi:type="uml:Class" xmi:id="_ZbNskOC4EeWlQawYMs_dEQ" name="Top" isActive="true">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_huktEOC8EeWlQawYMs_dEQ" name="a" visibility="protected" type="_niHV0OC4EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_huktEOC8EeWlQawYMs_dEQ" name="a" visibility="protected" type="_niHV0OC4EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_huoXceC8EeWlQawYMs_dEQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_huo-gOC8EeWlQawYMs_dEQ" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_i08fQOC8EeWlQawYMs_dEQ" name="b" visibility="protected" type="_ok62oOC4EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_i08fQOC8EeWlQawYMs_dEQ" name="b" visibility="protected" type="_ok62oOC4EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_i0_ikeC8EeWlQawYMs_dEQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_i0_ikuC8EeWlQawYMs_dEQ" value="1"/>
</ownedAttribute>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_n90dkOC8EeWlQawYMs_dEQ" name="x">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_n91rsOC8EeWlQawYMs_dEQ" partWithPort="_huktEOC8EeWlQawYMs_dEQ" role="_HZORUOC5EeWlQawYMs_dEQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_n91rseC8EeWlQawYMs_dEQ" partWithPort="_i08fQOC8EeWlQawYMs_dEQ" role="_KeVBEOC5EeWlQawYMs_dEQ"/>
+ <ownedConnector xmi:id="_n90dkOC8EeWlQawYMs_dEQ" name="x">
+ <end xmi:id="_n91rsOC8EeWlQawYMs_dEQ" partWithPort="_huktEOC8EeWlQawYMs_dEQ" role="_HZORUOC5EeWlQawYMs_dEQ"/>
+ <end xmi:id="_n91rseC8EeWlQawYMs_dEQ" partWithPort="_i08fQOC8EeWlQawYMs_dEQ" role="_KeVBEOC5EeWlQawYMs_dEQ"/>
</ownedConnector>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_niHV0OC4EeWlQawYMs_dEQ" name="A" classifierBehavior="_4OCEEOC5EeWlQawYMs_dEQ" isActive="true">
@@ -21,25 +21,24 @@
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_XGwrwOC6EeWlQawYMs_dEQ" value="2"/>
</ownedAttribute>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_4OCEEOC5EeWlQawYMs_dEQ" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_4OHjoOC5EeWlQawYMs_dEQ" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_7f9H0OC5EeWlQawYMs_dEQ" name="t0" source="_4OKm8OC5EeWlQawYMs_dEQ" target="_6lAigOC5EeWlQawYMs_dEQ"/>
+ <region xmi:id="_4OHjoOC5EeWlQawYMs_dEQ" name="Region">
+ <transition xmi:id="_7f9H0OC5EeWlQawYMs_dEQ" name="t0" source="_4OKm8OC5EeWlQawYMs_dEQ" target="_6lAigOC5EeWlQawYMs_dEQ"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_4OKm8OC5EeWlQawYMs_dEQ">
<name xsi:nil="true"/>
</subvertex>
<subvertex xmi:type="uml:State" xmi:id="_6lAigOC5EeWlQawYMs_dEQ" name="State1">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_r33jMOC6EeWlQawYMs_dEQ">
<language>C++</language>
- <body>cout << "[A.State1] sending msg1 on p[0]" << endl;
-p.msg1().sendAt(0);
-cout << "[A.State1] sending msg2 on p[1]" << endl;
-p.msg2().sendAt(1);
-cout << "[A.State1] messages sent" << endl;
-cout << "[A.State1] multicasting msg1 to p" << endl;
-p.msg1().send();
-cout << "[A.State1] multicasting msg2 to p" << endl;
-p.msg2().send();
-cout << "[A.State1] messages sent" << endl;
-
+ <body> cout << "[A.State1] sending msg1 on p[0]" << endl;
+ p.msg1().sendAt(0);
+ cout << "[A.State1] sending msg2 on p[1]" << endl;
+ p.msg2().sendAt(1);
+ cout << "[A.State1] messages sent" << endl;
+ cout << "[A.State1] multicasting msg1 to p" << endl;
+ p.msg1().send();
+ cout << "[A.State1] multicasting msg2 to p" << endl;
+ p.msg2().send();
+ cout << "[A.State1] messages sent" << endl;
</body>
</entry>
</subvertex>
@@ -51,43 +50,43 @@
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_h5aygOC5EeWlQawYMs_dEQ" value="2"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ji1AUOC5EeWlQawYMs_dEQ" value="2"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_bBhtoOC5EeWlQawYMs_dEQ" name="c" visibility="protected" type="_qAZWIOC4EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_bBhtoOC5EeWlQawYMs_dEQ" name="c" visibility="protected" type="_qAZWIOC4EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_bBl_EeC5EeWlQawYMs_dEQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_bBmmIOC5EeWlQawYMs_dEQ" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_cgwrwOC5EeWlQawYMs_dEQ" name="d" visibility="protected" type="_rCIf8OC4EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_cgwrwOC5EeWlQawYMs_dEQ" name="d" visibility="protected" type="_rCIf8OC4EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cgzvEeC5EeWlQawYMs_dEQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_cg0WIOC5EeWlQawYMs_dEQ" value="1"/>
</ownedAttribute>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_rdmegOC5EeWlQawYMs_dEQ" name="y">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_rdqI4OC5EeWlQawYMs_dEQ" role="_KeVBEOC5EeWlQawYMs_dEQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_rdqI4eC5EeWlQawYMs_dEQ" partWithPort="_bBhtoOC5EeWlQawYMs_dEQ" role="_SUg6MOC5EeWlQawYMs_dEQ"/>
+ <ownedConnector xmi:id="_rdmegOC5EeWlQawYMs_dEQ" name="y">
+ <end xmi:id="_rdqI4OC5EeWlQawYMs_dEQ" role="_KeVBEOC5EeWlQawYMs_dEQ"/>
+ <end xmi:id="_rdqI4eC5EeWlQawYMs_dEQ" partWithPort="_bBhtoOC5EeWlQawYMs_dEQ" role="_SUg6MOC5EeWlQawYMs_dEQ"/>
</ownedConnector>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_zW-OgOC5EeWlQawYMs_dEQ" name="z">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_zXADsOC5EeWlQawYMs_dEQ" role="_KeVBEOC5EeWlQawYMs_dEQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_zXADseC5EeWlQawYMs_dEQ" partWithPort="_cgwrwOC5EeWlQawYMs_dEQ" role="_WjzlIOC5EeWlQawYMs_dEQ"/>
+ <ownedConnector xmi:id="_zW-OgOC5EeWlQawYMs_dEQ" name="z">
+ <end xmi:id="_zXADsOC5EeWlQawYMs_dEQ" role="_KeVBEOC5EeWlQawYMs_dEQ"/>
+ <end xmi:id="_zXADseC5EeWlQawYMs_dEQ" partWithPort="_cgwrwOC5EeWlQawYMs_dEQ" role="_WjzlIOC5EeWlQawYMs_dEQ"/>
</ownedConnector>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_qAZWIOC4EeWlQawYMs_dEQ" name="C" classifierBehavior="_v364QOC6EeWlQawYMs_dEQ" isActive="true">
<ownedAttribute xmi:type="uml:Port" xmi:id="_SUg6MOC5EeWlQawYMs_dEQ" name="r" visibility="public" type="_t7mncOC4EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite" isBehavior="true" isConjugated="true"/>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_v364QOC6EeWlQawYMs_dEQ" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_v397kOC6EeWlQawYMs_dEQ" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_y97m8OC6EeWlQawYMs_dEQ" name="t0" source="_v3_JsOC6EeWlQawYMs_dEQ" target="_yTfi0OC6EeWlQawYMs_dEQ"/>
- <transition xmi:type="uml:Transition" xmi:id="_9OVfwOC6EeWlQawYMs_dEQ" name="t1" source="_yTfi0OC6EeWlQawYMs_dEQ" target="_yTfi0OC6EeWlQawYMs_dEQ">
+ <region xmi:id="_v397kOC6EeWlQawYMs_dEQ" name="Region">
+ <transition xmi:id="_y97m8OC6EeWlQawYMs_dEQ" name="t0" source="_v3_JsOC6EeWlQawYMs_dEQ" target="_yTfi0OC6EeWlQawYMs_dEQ"/>
+ <transition xmi:id="_9OVfwOC6EeWlQawYMs_dEQ" name="t1" source="_yTfi0OC6EeWlQawYMs_dEQ" target="_yTfi0OC6EeWlQawYMs_dEQ">
<effect xmi:type="uml:OpaqueBehavior" xmi:id="_ahG2QOC7EeWlQawYMs_dEQ">
<language>C++</language>
- <body>cout << "[C.t1] received msg1" << endl;
+ <body> cout << "[C.t1] received msg1" << endl;
</body>
</effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_FtZWwOC7EeWlQawYMs_dEQ" event="_xYI_wOC4EeWlQawYMs_dEQ" port="_SUg6MOC5EeWlQawYMs_dEQ"/>
+ <trigger xmi:id="_FtZWwOC7EeWlQawYMs_dEQ" event="_xYI_wOC4EeWlQawYMs_dEQ" port="_SUg6MOC5EeWlQawYMs_dEQ"/>
</transition>
- <transition xmi:type="uml:Transition" xmi:id="_N2LbwOC7EeWlQawYMs_dEQ" name="t2" source="_yTfi0OC6EeWlQawYMs_dEQ" target="_yTfi0OC6EeWlQawYMs_dEQ">
+ <transition xmi:id="_N2LbwOC7EeWlQawYMs_dEQ" name="t2" source="_yTfi0OC6EeWlQawYMs_dEQ" target="_yTfi0OC6EeWlQawYMs_dEQ">
<effect xmi:type="uml:OpaqueBehavior" xmi:id="_d2zmwOC7EeWlQawYMs_dEQ">
<language>C++</language>
- <body>cout << "[C.t2] received msg2" << endl;
+ <body> cout << "[C.t2] received msg2" << endl;
</body>
</effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_UWtJgOC7EeWlQawYMs_dEQ" event="_yD4EYOC4EeWlQawYMs_dEQ" port="_SUg6MOC5EeWlQawYMs_dEQ"/>
+ <trigger xmi:id="_UWtJgOC7EeWlQawYMs_dEQ" event="_yD4EYOC4EeWlQawYMs_dEQ" port="_SUg6MOC5EeWlQawYMs_dEQ"/>
</transition>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_v3_JsOC6EeWlQawYMs_dEQ">
<name xsi:nil="true"/>
@@ -99,23 +98,23 @@
<packagedElement xmi:type="uml:Class" xmi:id="_rCIf8OC4EeWlQawYMs_dEQ" name="D" classifierBehavior="_kft0cOC7EeWlQawYMs_dEQ" isActive="true">
<ownedAttribute xmi:type="uml:Port" xmi:id="_WjzlIOC5EeWlQawYMs_dEQ" name="s" visibility="public" type="_t7mncOC4EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite" isBehavior="true" isConjugated="true"/>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_kft0cOC7EeWlQawYMs_dEQ" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_kfvpoOC7EeWlQawYMs_dEQ" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_nJG4kOC7EeWlQawYMs_dEQ" name="t0" source="_kfxe0OC7EeWlQawYMs_dEQ" target="_mWXNAOC7EeWlQawYMs_dEQ"/>
- <transition xmi:type="uml:Transition" xmi:id="_olYpUOC7EeWlQawYMs_dEQ" name="t1" source="_mWXNAOC7EeWlQawYMs_dEQ" target="_mWXNAOC7EeWlQawYMs_dEQ">
+ <region xmi:id="_kfvpoOC7EeWlQawYMs_dEQ" name="Region">
+ <transition xmi:id="_nJG4kOC7EeWlQawYMs_dEQ" name="t0" source="_kfxe0OC7EeWlQawYMs_dEQ" target="_mWXNAOC7EeWlQawYMs_dEQ"/>
+ <transition xmi:id="_olYpUOC7EeWlQawYMs_dEQ" name="t1" source="_mWXNAOC7EeWlQawYMs_dEQ" target="_mWXNAOC7EeWlQawYMs_dEQ">
<effect xmi:type="uml:OpaqueBehavior" xmi:id="_73GKkOC7EeWlQawYMs_dEQ">
<language>C++</language>
- <body>cout << "[D.t1] received msg1" << endl;
+ <body> cout << "[D.t1] received msg1" << endl;
</body>
</effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_00KTUOC7EeWlQawYMs_dEQ" event="_xYI_wOC4EeWlQawYMs_dEQ" port="_WjzlIOC5EeWlQawYMs_dEQ"/>
+ <trigger xmi:id="_00KTUOC7EeWlQawYMs_dEQ" event="_xYI_wOC4EeWlQawYMs_dEQ" port="_WjzlIOC5EeWlQawYMs_dEQ"/>
</transition>
- <transition xmi:type="uml:Transition" xmi:id="_sWh_sOC7EeWlQawYMs_dEQ" name="t2" source="_mWXNAOC7EeWlQawYMs_dEQ" target="_mWXNAOC7EeWlQawYMs_dEQ">
+ <transition xmi:id="_sWh_sOC7EeWlQawYMs_dEQ" name="t2" source="_mWXNAOC7EeWlQawYMs_dEQ" target="_mWXNAOC7EeWlQawYMs_dEQ">
<effect xmi:type="uml:OpaqueBehavior" xmi:id="__q5MUOC7EeWlQawYMs_dEQ">
<language>C++</language>
- <body>cout << "[D.t2] received msg2" << endl;
+ <body> cout << "[D.t2] received msg2" << endl;
</body>
</effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_3yqr0OC7EeWlQawYMs_dEQ" event="_yD4EYOC4EeWlQawYMs_dEQ" port="_WjzlIOC5EeWlQawYMs_dEQ"/>
+ <trigger xmi:id="_3yqr0OC7EeWlQawYMs_dEQ" event="_yD4EYOC4EeWlQawYMs_dEQ" port="_WjzlIOC5EeWlQawYMs_dEQ"/>
</transition>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_kfxe0OC7EeWlQawYMs_dEQ">
<name xsi:nil="true"/>
@@ -126,17 +125,17 @@
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_t7suEOC4EeWlQawYMs_dEQ" name="Protocol1">
<packagedElement xmi:type="uml:Collaboration" xmi:id="_t7mncOC4EeWlQawYMs_dEQ" name="Protocol1">
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_t7yNoOC4EeWlQawYMs_dEQ" client="_t7mncOC4EeWlQawYMs_dEQ" supplier="_t7vxYOC4EeWlQawYMs_dEQ" contract="_t7vxYOC4EeWlQawYMs_dEQ">
+ <interfaceRealization xmi:id="_t7yNoOC4EeWlQawYMs_dEQ" client="_t7mncOC4EeWlQawYMs_dEQ" supplier="_t7vxYOC4EeWlQawYMs_dEQ" contract="_t7vxYOC4EeWlQawYMs_dEQ">
<name xsi:nil="true"/>
</interfaceRealization>
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_t76wgOC4EeWlQawYMs_dEQ" client="_t7mncOC4EeWlQawYMs_dEQ" supplier="_t73tMOC4EeWlQawYMs_dEQ" contract="_t73tMOC4EeWlQawYMs_dEQ">
+ <interfaceRealization xmi:id="_t76wgOC4EeWlQawYMs_dEQ" client="_t7mncOC4EeWlQawYMs_dEQ" supplier="_t73tMOC4EeWlQawYMs_dEQ" contract="_t73tMOC4EeWlQawYMs_dEQ">
<name xsi:nil="true"/>
</interfaceRealization>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_t7vxYOC4EeWlQawYMs_dEQ" name="Protocol1"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_t70C0OC4EeWlQawYMs_dEQ" name="Protocol1~">
- <ownedOperation xmi:type="uml:Operation" xmi:id="_xYIYsOC4EeWlQawYMs_dEQ" name="msg1"/>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_yD3dUOC4EeWlQawYMs_dEQ" name="msg2"/>
+ <ownedOperation xmi:id="_xYIYsOC4EeWlQawYMs_dEQ" name="msg1"/>
+ <ownedOperation xmi:id="_yD3dUOC4EeWlQawYMs_dEQ" name="msg2"/>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_t72fEOC4EeWlQawYMs_dEQ" client="_t7mncOC4EeWlQawYMs_dEQ" supplier="_t70C0OC4EeWlQawYMs_dEQ">
<name xsi:nil="true"/>
@@ -153,29 +152,29 @@
<name xsi:nil="true"/>
</packagedElement>
</packagedElement>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_V3aOoOC4EeWlQawYMs_dEQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_V3cq4OC4EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_V3aOoOC4EeWlQawYMs_dEQ">
+ <eAnnotations xmi:id="_V3cq4OC4EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_1h74oEeVEeO0lv5O1DTHOQ"/>
+ <appliedProfile href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_1h74oEeVEeO0lv5O1DTHOQ"/>
</profileApplication>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_YTTCQOC4EeWlQawYMs_dEQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_YTTpUOC4EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_YTTCQOC4EeWlQawYMs_dEQ">
+ <eAnnotations xmi:id="_YTTpUOC4EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt/cppproperties#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_vl5LALs8EeSTjNEQkASznQ"/>
+ <appliedProfile href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_vl5LALs8EeSTjNEQkASznQ"/>
</profileApplication>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_3GZjEOC4EeWlQawYMs_dEQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3GaKIOC4EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_3GZjEOC4EeWlQawYMs_dEQ">
+ <eAnnotations xmi:id="_3GaKIOC4EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt/statemachine#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KLcn0FDtEeOA4ecmvfqvaw"/>
+ <appliedProfile href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KLcn0FDtEeOA4ecmvfqvaw"/>
</profileApplication>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_LjfncOC7EeWlQawYMs_dEQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LjgOgOC7EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_LjfncOC7EeWlQawYMs_dEQ">
+ <eAnnotations xmi:id="_LjgOgOC7EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#_Kv8EIKFXEeS_KNX0nfvIVQ"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#ActionLanguage"/>
+ <appliedProfile href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#ActionLanguage"/>
</profileApplication>
</uml:Model>
<UMLRealTime:Capsule xmi:id="_ZfGHAOC4EeWlQawYMs_dEQ" base_Class="_ZbNskOC4EeWlQawYMs_dEQ"/>
@@ -200,18 +199,18 @@
<UMLRealTime:CapsulePart xmi:id="_cgzvEOC5EeWlQawYMs_dEQ" base_Property="_cgwrwOC5EeWlQawYMs_dEQ"/>
<UMLRealTime:RTConnector xmi:id="_rdqI4uC5EeWlQawYMs_dEQ" base_Connector="_rdmegOC5EeWlQawYMs_dEQ"/>
<UMLRealTime:RTConnector xmi:id="_zXADsuC5EeWlQawYMs_dEQ" base_Connector="_zW-OgOC5EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_4OORUOC5EeWlQawYMs_dEQ" base_Pseudostate="_4OKm8OC5EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_4OQGgOC5EeWlQawYMs_dEQ" base_Region="_4OHjoOC5EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_4ORUoOC5EeWlQawYMs_dEQ" base_StateMachine="_4OCEEOC5EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTState xmi:id="_6lCXsOC5EeWlQawYMs_dEQ" base_State="_6lAigOC5EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_v4AX0OC6EeWlQawYMs_dEQ" base_Pseudostate="_v3_JsOC6EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_v4A-4OC6EeWlQawYMs_dEQ" base_Region="_v397kOC6EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_v4Bl8OC6EeWlQawYMs_dEQ" base_StateMachine="_v364QOC6EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTState xmi:id="_yTh_EOC6EeWlQawYMs_dEQ" base_State="_yTfi0OC6EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_kfys8OC7EeWlQawYMs_dEQ" base_Pseudostate="_kfxe0OC7EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_kfzUAOC7EeWlQawYMs_dEQ" base_Region="_kfvpoOC7EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_kfz7EOC7EeWlQawYMs_dEQ" base_StateMachine="_kft0cOC7EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTState xmi:id="_mWZCMOC7EeWlQawYMs_dEQ" base_State="_mWXNAOC7EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_4OORUOC5EeWlQawYMs_dEQ" base_Pseudostate="_4OKm8OC5EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_4OQGgOC5EeWlQawYMs_dEQ" base_Region="_4OHjoOC5EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_4ORUoOC5EeWlQawYMs_dEQ" base_StateMachine="_4OCEEOC5EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTState xmi:id="_6lCXsOC5EeWlQawYMs_dEQ" base_State="_6lAigOC5EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_v4AX0OC6EeWlQawYMs_dEQ" base_Pseudostate="_v3_JsOC6EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_v4A-4OC6EeWlQawYMs_dEQ" base_Region="_v397kOC6EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_v4Bl8OC6EeWlQawYMs_dEQ" base_StateMachine="_v364QOC6EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTState xmi:id="_yTh_EOC6EeWlQawYMs_dEQ" base_State="_yTfi0OC6EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_kfys8OC7EeWlQawYMs_dEQ" base_Pseudostate="_kfxe0OC7EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_kfzUAOC7EeWlQawYMs_dEQ" base_Region="_kfvpoOC7EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_kfz7EOC7EeWlQawYMs_dEQ" base_StateMachine="_kft0cOC7EeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTState xmi:id="_mWZCMOC7EeWlQawYMs_dEQ" base_State="_mWXNAOC7EeWlQawYMs_dEQ"/>
<UMLRealTime:CapsulePart xmi:id="_huoXcOC8EeWlQawYMs_dEQ" base_Property="_huktEOC8EeWlQawYMs_dEQ"/>
<UMLRealTime:CapsulePart xmi:id="_i0_ikOC8EeWlQawYMs_dEQ" base_Property="_i08fQOC8EeWlQawYMs_dEQ"/>
<UMLRealTime:RTConnector xmi:id="_n92SwOC8EeWlQawYMs_dEQ" base_Connector="_n90dkOC8EeWlQawYMs_dEQ"/>
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/RelayPortMixedPassThrough.notation b/models/tests/codepattern/structure/RelayPortMixedPassThrough/RelayPortMixedPassThrough.notation
index d541440..2c90ede 100644
--- a/models/tests/codepattern/structure/RelayPortMixedPassThrough/RelayPortMixedPassThrough.notation
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/RelayPortMixedPassThrough.notation
@@ -1,26 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
<notation:Diagram xmi:id="_gdwI8OC9EeWlQawYMs_dEQ" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_gdwwAOC9EeWlQawYMs_dEQ" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_gdwwAuC9EeWlQawYMs_dEQ" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_gdwwA-C9EeWlQawYMs_dEQ" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_gdwwAOC9EeWlQawYMs_dEQ" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gdwwAuC9EeWlQawYMs_dEQ" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_gdwwA-C9EeWlQawYMs_dEQ" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_gdwwBOC9EeWlQawYMs_dEQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_gdwwBeC9EeWlQawYMs_dEQ" type="7073">
- <children xmi:type="notation:Shape" xmi:id="_5XAsEOC-EeWlQawYMs_dEQ" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_5XAsEuC-EeWlQawYMs_dEQ" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_5XAsE-C-EeWlQawYMs_dEQ" type="6054">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gdwwBeC9EeWlQawYMs_dEQ" type="Class_StructureCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_5XAsEOC-EeWlQawYMs_dEQ" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_5XAsEuC-EeWlQawYMs_dEQ" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_5XAsE-C-EeWlQawYMs_dEQ" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_5XAsFOC-EeWlQawYMs_dEQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_5XBTIOC-EeWlQawYMs_dEQ" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_5XBTIOC-EeWlQawYMs_dEQ" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_5XBTIeC-EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_5XBTIuC-EeWlQawYMs_dEQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_5XGLoOC-EeWlQawYMs_dEQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_5XGysOC-EeWlQawYMs_dEQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_5XGLoOC-EeWlQawYMs_dEQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_5XGysOC-EeWlQawYMs_dEQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_5XGyseC-EeWlQawYMs_dEQ" x="-93" y="23"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_5XGysuC-EeWlQawYMs_dEQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_5XGysuC-EeWlQawYMs_dEQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_5XGys-C-EeWlQawYMs_dEQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_AVYB0OC-EeWlQawYMs_dEQ"/>
@@ -50,30 +50,30 @@
<element xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_5W7MgOC-EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_5XAsEeC-EeWlQawYMs_dEQ" x="114" y="123" width="161" height="90"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_6TdtQOC-EeWlQawYMs_dEQ" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_6TeUUOC-EeWlQawYMs_dEQ" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_6TeUUeC-EeWlQawYMs_dEQ" type="6054">
+ <children xmi:type="notation:Shape" xmi:id="_6TdtQOC-EeWlQawYMs_dEQ" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_6TeUUOC-EeWlQawYMs_dEQ" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6TeUUeC-EeWlQawYMs_dEQ" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_6TeUUuC-EeWlQawYMs_dEQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_6TeUU-C-EeWlQawYMs_dEQ" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_6TeUU-C-EeWlQawYMs_dEQ" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_6TeUVOC-EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_6TeUVeC-EeWlQawYMs_dEQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_6TilwOC-EeWlQawYMs_dEQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_6TilwuC-EeWlQawYMs_dEQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_6TilwOC-EeWlQawYMs_dEQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_6TilwuC-EeWlQawYMs_dEQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_6TjM0OC-EeWlQawYMs_dEQ" x="15" y="-17"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_6TjM0eC-EeWlQawYMs_dEQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_6TjM0eC-EeWlQawYMs_dEQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_6TjM0uC-EeWlQawYMs_dEQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_TiRUgOC-EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_6TilweC-EeWlQawYMs_dEQ" y="43" width="20" height="20"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_6TjM0-C-EeWlQawYMs_dEQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_6TjM1eC-EeWlQawYMs_dEQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_6TjM0-C-EeWlQawYMs_dEQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_6TjM1eC-EeWlQawYMs_dEQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_6Tjz4OC-EeWlQawYMs_dEQ" x="-98" y="26"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_6Tjz4eC-EeWlQawYMs_dEQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_6Tjz4eC-EeWlQawYMs_dEQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_6Tjz4uC-EeWlQawYMs_dEQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_cpqW0OC-EeWlQawYMs_dEQ"/>
@@ -103,20 +103,20 @@
<element xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_6TZb0OC-EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_6TdtQeC-EeWlQawYMs_dEQ" x="389" y="123" width="170" height="90"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_7JCqYOC-EeWlQawYMs_dEQ" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_7JDRcOC-EeWlQawYMs_dEQ" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_7JDRceC-EeWlQawYMs_dEQ" type="6054">
+ <children xmi:type="notation:Shape" xmi:id="_7JCqYOC-EeWlQawYMs_dEQ" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_7JDRcOC-EeWlQawYMs_dEQ" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_7JDRceC-EeWlQawYMs_dEQ" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_7JDRcuC-EeWlQawYMs_dEQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_7JDRc-C-EeWlQawYMs_dEQ" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_7JDRc-C-EeWlQawYMs_dEQ" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_7JDRdOC-EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_7JDRdeC-EeWlQawYMs_dEQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_7JIxAOC-EeWlQawYMs_dEQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_7JIxAuC-EeWlQawYMs_dEQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_7JIxAOC-EeWlQawYMs_dEQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_7JIxAuC-EeWlQawYMs_dEQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_7JIxA-C-EeWlQawYMs_dEQ" x="18" y="-15"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_7JIxBOC-EeWlQawYMs_dEQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_7JIxBOC-EeWlQawYMs_dEQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_7JIxBeC-EeWlQawYMs_dEQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_E1DSIOC-EeWlQawYMs_dEQ"/>
@@ -146,30 +146,110 @@
<element xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_7I-Y8OC-EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_7JCqYeC-EeWlQawYMs_dEQ" x="673" y="123" width="173" height="90"/>
</children>
+ <children xmi:type="notation:Shape" xmi:id="_ZdoqAN9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZdoqAd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZdoqA99GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_5W7MgOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZdoqAt9GEeaWn9KVzGhArQ" x="314" y="123"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZduJkN9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZduJkd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZduJk99GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_AVYB0OC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZduJkt9GEeaWn9KVzGhArQ" x="361" y="45"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Zd1eUN9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Zd1eUd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zd1eU99GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortMixedPassThrough.uml#_IRlN8OC_EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zd1eUt9GEeaWn9KVzGhArQ" x="100" y="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Zd6W0N9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Zd6W0d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zd6W099GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_6TZb0OC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zd6W0t9GEeaWn9KVzGhArQ" x="589" y="123"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZeAdcN9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZeAdcd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZeAdc99GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_TiRUgOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZeAdct9GEeaWn9KVzGhArQ" x="200" y="43"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZeHyOt9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZeHyO99GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZeHyPd9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_cpqW0OC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZeHyPN9GEeaWn9KVzGhArQ" x="370" y="45"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZeN40N9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZeN40d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZeOf4N9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortMixedPassThrough.uml#_JCMykOC_EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZeN40t9GEeaWn9KVzGhArQ" x="100" y="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZeSxUN9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZeSxUd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZeSxU99GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_7I-Y8OC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZeSxUt9GEeaWn9KVzGhArQ" x="873" y="123"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZeYQ4N9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZeYQ4d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZeYQ499GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_E1DSIOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZeYQ4t9GEeaWn9KVzGhArQ" x="200" y="43"/>
+ </children>
<styles xmi:type="notation:TitleStyle" xmi:id="_gdwwBuC9EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_gdwwB-C9EeWlQawYMs_dEQ"/>
</children>
<element xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_gdecIOC9EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_gdwwAeC9EeWlQawYMs_dEQ" x="40" y="40" width="971" height="332"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_gdwI8eC9EeWlQawYMs_dEQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <children xmi:type="notation:Shape" xmi:id="_Zdh8UN9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Zdh8Ud9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZdijYN9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_gdecIOC9EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zdh8Ut9GEeaWn9KVzGhArQ" x="240" y="40"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_gdwI8eC9EeWlQawYMs_dEQ" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_gdwI8uC9EeWlQawYMs_dEQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_gdwI8-C9EeWlQawYMs_dEQ">
<owner xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_gdecIOC9EeWlQawYMs_dEQ"/>
<configuration xmi:type="configuration:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrusrt.umlrt.tooling.diagram.common/configuration/UMLRT.configuration#_Z79eQHcZEeSnWeKqQOfW2A"/>
</styles>
<element xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_gdecIOC9EeWlQawYMs_dEQ"/>
- <edges xmi:type="notation:Connector" xmi:id="_IR1soOC_EeWlQawYMs_dEQ" type="4013" source="_5XGLoOC-EeWlQawYMs_dEQ" target="_6TilwOC-EeWlQawYMs_dEQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_IR1so-C_EeWlQawYMs_dEQ" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_IR1soOC_EeWlQawYMs_dEQ" type="Connector_Edge" source="_5XGLoOC-EeWlQawYMs_dEQ" target="_6TilwOC-EeWlQawYMs_dEQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IR1so-C_EeWlQawYMs_dEQ" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_IR1spOC_EeWlQawYMs_dEQ" y="-8"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_IR1speC_EeWlQawYMs_dEQ" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IR1speC_EeWlQawYMs_dEQ" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_IR1spuC_EeWlQawYMs_dEQ" y="7"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_IR1sp-C_EeWlQawYMs_dEQ" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IR1sp-C_EeWlQawYMs_dEQ" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_IR1sqOC_EeWlQawYMs_dEQ" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_IR1sqeC_EeWlQawYMs_dEQ" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IR1sqeC_EeWlQawYMs_dEQ" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_IR1squC_EeWlQawYMs_dEQ" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_IR1soeC_EeWlQawYMs_dEQ"/>
@@ -178,17 +258,17 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ISkscOC_EeWlQawYMs_dEQ" id="(1.0,0.35)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ISksceC_EeWlQawYMs_dEQ" id="(0.0,0.65)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_JCcDIOC_EeWlQawYMs_dEQ" type="4013" source="_6TjM0-C-EeWlQawYMs_dEQ" target="_7JIxAOC-EeWlQawYMs_dEQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_JCcDI-C_EeWlQawYMs_dEQ" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_JCcDIOC_EeWlQawYMs_dEQ" type="Connector_Edge" source="_6TjM0-C-EeWlQawYMs_dEQ" target="_7JIxAOC-EeWlQawYMs_dEQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_JCcDI-C_EeWlQawYMs_dEQ" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_JCcDJOC_EeWlQawYMs_dEQ" y="60"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_JCcDJeC_EeWlQawYMs_dEQ" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_JCcDJeC_EeWlQawYMs_dEQ" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_JCcDJuC_EeWlQawYMs_dEQ" x="-2" y="8"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_JCcDJ-C_EeWlQawYMs_dEQ" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_JCcDJ-C_EeWlQawYMs_dEQ" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_JCcqMOC_EeWlQawYMs_dEQ" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_JCcqMeC_EeWlQawYMs_dEQ" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_JCcqMeC_EeWlQawYMs_dEQ" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_JCcqMuC_EeWlQawYMs_dEQ" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_JCcDIeC_EeWlQawYMs_dEQ"/>
@@ -197,6 +277,106 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JDRwoOC_EeWlQawYMs_dEQ" id="(1.0,0.4)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JDRwoeC_EeWlQawYMs_dEQ" id="(0.0,0.5)"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZdjKcN9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_gdwwAOC9EeWlQawYMs_dEQ" target="_Zdh8UN9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZdjKcd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zdjxgd9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_gdecIOC9EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZdjKct9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZdjKc99GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZdjxgN9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZdoqBN9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_5XAsEOC-EeWlQawYMs_dEQ" target="_ZdoqAN9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZdoqBd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZdoqCd9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_5W7MgOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZdoqBt9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZdoqB99GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZdoqCN9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZduJlN9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_5XGLoOC-EeWlQawYMs_dEQ" target="_ZduJkN9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZduJld9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZduJmd9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_AVYB0OC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZduJlt9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZduJl99GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZduJmN9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Zd1eVN9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_IR1soOC_EeWlQawYMs_dEQ" target="_Zd1eUN9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Zd1eVd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zd1eWd9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortMixedPassThrough.uml#_IRlN8OC_EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Zd1eVt9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zd1eV99GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zd1eWN9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Zd6W1N9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_6TdtQOC-EeWlQawYMs_dEQ" target="_Zd6W0N9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Zd6W1d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zd6W2d9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_6TZb0OC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Zd6W1t9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zd6W199GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zd6W2N9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZeAddN9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_6TilwOC-EeWlQawYMs_dEQ" target="_ZeAdcN9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZeAddd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZeAded9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_TiRUgOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZeAddt9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZeAdd99GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZeAdeN9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZeHyPt9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_6TjM0-C-EeWlQawYMs_dEQ" target="_ZeHyOt9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZeHyP99GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZeIZQt9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_cpqW0OC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZeHyQN9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZeIZQN9GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZeIZQd9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZeOf4d9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_JCcDIOC_EeWlQawYMs_dEQ" target="_ZeN40N9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZeOf4t9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZeOf5t9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortMixedPassThrough.uml#_JCMykOC_EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZeOf499GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZeOf5N9GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZeOf5d9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZeSxVN9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_7JCqYOC-EeWlQawYMs_dEQ" target="_ZeSxUN9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZeSxVd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZeTYYt9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_7I-Y8OC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZeSxVt9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZeTYYN9GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZeTYYd9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZeYQ5N9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_7JIxAOC-EeWlQawYMs_dEQ" target="_ZeYQ4N9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZeYQ5d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZeYQ6d9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_E1DSIOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZeYQ5t9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZeYQ599GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZeYQ6N9GEeaWn9KVzGhArQ"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_iyFjEOC9EeWlQawYMs_dEQ" type="CompositeStructure" measurementUnit="Pixel">
<children xmi:type="notation:Shape" xmi:id="_iyGKIOC9EeWlQawYMs_dEQ" type="2073">
@@ -269,12 +449,12 @@
</edges>
</notation:Diagram>
<notation:Diagram xmi:id="_pbKv4OC9EeWlQawYMs_dEQ" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_pbKv5OC9EeWlQawYMs_dEQ" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_pbKv5uC9EeWlQawYMs_dEQ" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_pbKv5-C9EeWlQawYMs_dEQ" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_pbKv5OC9EeWlQawYMs_dEQ" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pbKv5uC9EeWlQawYMs_dEQ" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_pbKv5-C9EeWlQawYMs_dEQ" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_pbKv6OC9EeWlQawYMs_dEQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_pbKv6eC9EeWlQawYMs_dEQ" type="7073">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_pbKv6eC9EeWlQawYMs_dEQ" type="Class_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_pbKv6uC9EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_pbKv6-C9EeWlQawYMs_dEQ"/>
</children>
@@ -299,11 +479,11 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_-Aueo-C9EeWlQawYMs_dEQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_FtCDAOC-EeWlQawYMs_dEQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_FtCDAuC-EeWlQawYMs_dEQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_FtCDAOC-EeWlQawYMs_dEQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_FtCDAuC-EeWlQawYMs_dEQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FtCDA-C-EeWlQawYMs_dEQ" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_FtCDBOC-EeWlQawYMs_dEQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_FtCDBOC-EeWlQawYMs_dEQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FtCDBeC-EeWlQawYMs_dEQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_E1DSIOC-EeWlQawYMs_dEQ"/>
@@ -312,35 +492,71 @@
<element xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_pa64QOC9EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_pbKv5eC9EeWlQawYMs_dEQ" x="40" y="40" width="500" height="250"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_pbKv4eC9EeWlQawYMs_dEQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <children xmi:type="notation:Shape" xmi:id="_epr4It9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_epr4I99GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_epr4Jd9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_pa64QOC9EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_epr4JN9GEeaWn9KVzGhArQ" x="240" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_epxXtt9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_epxXt99GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_epxXud9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_E1DSIOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_epxXuN9GEeaWn9KVzGhArQ" x="190" y="126"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_pbKv4eC9EeWlQawYMs_dEQ" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_pbKv4uC9EeWlQawYMs_dEQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_pbKv4-C9EeWlQawYMs_dEQ">
<owner xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_pa64QOC9EeWlQawYMs_dEQ"/>
<configuration xmi:type="configuration:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrusrt.umlrt.tooling.diagram.common/configuration/UMLRT.configuration#_Z79eQHcZEeSnWeKqQOfW2A"/>
</styles>
<element xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_pa64QOC9EeWlQawYMs_dEQ"/>
+ <edges xmi:type="notation:Connector" xmi:id="_epr4Jt9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_pbKv5OC9EeWlQawYMs_dEQ" target="_epr4It9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_epr4J99GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_epr4K99GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_pa64QOC9EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_epr4KN9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_epr4Kd9GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_epr4Kt9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_epxXut9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_FtCDAOC-EeWlQawYMs_dEQ" target="_epxXtt9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_epxXu99GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_epxXv99GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_E1DSIOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_epxXvN9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_epxXvd9GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_epxXvt9GEeaWn9KVzGhArQ"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_zZD8YOC9EeWlQawYMs_dEQ" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_zZEjcOC9EeWlQawYMs_dEQ" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_zZEjcuC9EeWlQawYMs_dEQ" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_zZEjc-C9EeWlQawYMs_dEQ" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_zZEjcOC9EeWlQawYMs_dEQ" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zZEjcuC9EeWlQawYMs_dEQ" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_zZEjc-C9EeWlQawYMs_dEQ" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zZEjdOC9EeWlQawYMs_dEQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_zZEjdeC9EeWlQawYMs_dEQ" type="7073">
- <children xmi:type="notation:Shape" xmi:id="_kbn3QOC-EeWlQawYMs_dEQ" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_kboeUOC-EeWlQawYMs_dEQ" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_kboeUeC-EeWlQawYMs_dEQ" type="6054">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_zZEjdeC9EeWlQawYMs_dEQ" type="Class_StructureCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_kbn3QOC-EeWlQawYMs_dEQ" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kboeUOC-EeWlQawYMs_dEQ" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_kboeUeC-EeWlQawYMs_dEQ" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_kboeUuC-EeWlQawYMs_dEQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_kboeU-C-EeWlQawYMs_dEQ" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kboeU-C-EeWlQawYMs_dEQ" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_kboeVOC-EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_kboeVeC-EeWlQawYMs_dEQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_kbvzEOC-EeWlQawYMs_dEQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_kbvzEuC-EeWlQawYMs_dEQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_kbvzEOC-EeWlQawYMs_dEQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kbvzEuC-EeWlQawYMs_dEQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_kbvzE-C-EeWlQawYMs_dEQ" x="20" y="21"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_kbvzFOC-EeWlQawYMs_dEQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kbvzFOC-EeWlQawYMs_dEQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_kbvzFeC-EeWlQawYMs_dEQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_E1DSIOC-EeWlQawYMs_dEQ"/>
@@ -370,6 +586,22 @@
<element xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_itTUQOC-EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_kbn3QeC-EeWlQawYMs_dEQ" x="167" y="127" width="184" height="74"/>
</children>
+ <children xmi:type="notation:Shape" xmi:id="_ZvhEMN9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZvhEMd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZvhrQN9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_itTUQOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZvhEMt9GEeaWn9KVzGhArQ" x="367" y="127"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Zvnx4N9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Zvnx4d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zvnx499GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_E1DSIOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zvnx4t9GEeaWn9KVzGhArQ" x="200" y="37"/>
+ </children>
<styles xmi:type="notation:TitleStyle" xmi:id="_zZEjduC9EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_zZEjd-C9EeWlQawYMs_dEQ"/>
</children>
@@ -394,21 +626,21 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_-T-x3OC9EeWlQawYMs_dEQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_URys8OC-EeWlQawYMs_dEQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_URys8uC-EeWlQawYMs_dEQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_URys8OC-EeWlQawYMs_dEQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_URys8uC-EeWlQawYMs_dEQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_URys8-C-EeWlQawYMs_dEQ" x="12" y="-17"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_URys9OC-EeWlQawYMs_dEQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_URys9OC-EeWlQawYMs_dEQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_URys9eC-EeWlQawYMs_dEQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_TiRUgOC-EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_URys8eC-EeWlQawYMs_dEQ" y="131" width="20" height="20"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_db-kkOC-EeWlQawYMs_dEQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_db-kkuC-EeWlQawYMs_dEQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_db-kkOC-EeWlQawYMs_dEQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_db-kkuC-EeWlQawYMs_dEQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_db-kk-C-EeWlQawYMs_dEQ" x="-106" y="-15"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_db-klOC-EeWlQawYMs_dEQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_db-klOC-EeWlQawYMs_dEQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_db-kleC-EeWlQawYMs_dEQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_cpqW0OC-EeWlQawYMs_dEQ"/>
@@ -417,24 +649,64 @@
<element xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_zYyPkOC9EeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_zZEjceC9EeWlQawYMs_dEQ" x="40" y="40" width="500" height="250"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_zZD8YeC9EeWlQawYMs_dEQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <children xmi:type="notation:Shape" xmi:id="_ZvbkoN9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZvcLsN9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZvcLst9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_zYyPkOC9EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZvcLsd9GEeaWn9KVzGhArQ" x="240" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Zvw70N9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Zvw70d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zvw7099GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_TiRUgOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zvw70t9GEeaWn9KVzGhArQ" x="200" y="131"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Zv4QkN9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Zv4Qkd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zv4Qk99GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortMixedPassThrough.uml#_s9smAOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zv4Qkt9GEeaWn9KVzGhArQ" x="200" y="31"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Zv-XMN9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Zv-XMd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zv-XM99GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortMixedPassThrough.uml#_xnBhkOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zv-XMt9GEeaWn9KVzGhArQ" x="200" y="31"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZwFE4N9GEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZwFE4d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZwFE499GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_cpqW0OC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZwFE4t9GEeaWn9KVzGhArQ" x="700" y="130"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_zZD8YeC9EeWlQawYMs_dEQ" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_zZD8YuC9EeWlQawYMs_dEQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_zZD8Y-C9EeWlQawYMs_dEQ">
<owner xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_zYyPkOC9EeWlQawYMs_dEQ"/>
<configuration xmi:type="configuration:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrusrt.umlrt.tooling.diagram.common/configuration/UMLRT.configuration#_Z79eQHcZEeSnWeKqQOfW2A"/>
</styles>
<element xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_zYyPkOC9EeWlQawYMs_dEQ"/>
- <edges xmi:type="notation:Connector" xmi:id="_s_IJYOC-EeWlQawYMs_dEQ" type="4013" source="_URys8OC-EeWlQawYMs_dEQ" target="_db-kkOC-EeWlQawYMs_dEQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_s_IJY-C-EeWlQawYMs_dEQ" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_s_IJYOC-EeWlQawYMs_dEQ" type="Connector_Edge" source="_URys8OC-EeWlQawYMs_dEQ" target="_db-kkOC-EeWlQawYMs_dEQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_s_IJY-C-EeWlQawYMs_dEQ" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_s_IJZOC-EeWlQawYMs_dEQ" x="-2" y="-7"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_s_IwcOC-EeWlQawYMs_dEQ" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_s_IwcOC-EeWlQawYMs_dEQ" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_s_IwceC-EeWlQawYMs_dEQ" x="-2" y="7"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_s_IwcuC-EeWlQawYMs_dEQ" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_s_IwcuC-EeWlQawYMs_dEQ" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_s_Iwc-C-EeWlQawYMs_dEQ" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_s_IwdOC-EeWlQawYMs_dEQ" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_s_IwdOC-EeWlQawYMs_dEQ" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_s_IwdeC-EeWlQawYMs_dEQ" x="7" y="-7"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_s_IJYeC-EeWlQawYMs_dEQ"/>
@@ -443,17 +715,17 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_s_umUOC-EeWlQawYMs_dEQ" id="(1.0,0.45)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vQyC8OC-EeWlQawYMs_dEQ" id="(0.0,0.5)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_xnMgsOC-EeWlQawYMs_dEQ" type="4013" source="_URys8OC-EeWlQawYMs_dEQ" target="_kbvzEOC-EeWlQawYMs_dEQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_xnNHwOC-EeWlQawYMs_dEQ" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_xnMgsOC-EeWlQawYMs_dEQ" type="Connector_Edge" source="_URys8OC-EeWlQawYMs_dEQ" target="_kbvzEOC-EeWlQawYMs_dEQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_xnNHwOC-EeWlQawYMs_dEQ" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_xnNHweC-EeWlQawYMs_dEQ" x="27" y="-27"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_xnNHwuC-EeWlQawYMs_dEQ" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_xnNHwuC-EeWlQawYMs_dEQ" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_xnNHw-C-EeWlQawYMs_dEQ" x="37" y="-13"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_xnNHxOC-EeWlQawYMs_dEQ" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_xnNHxOC-EeWlQawYMs_dEQ" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_xnNHxeC-EeWlQawYMs_dEQ" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_xnNHxuC-EeWlQawYMs_dEQ" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_xnNHxuC-EeWlQawYMs_dEQ" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_xnNHx-C-EeWlQawYMs_dEQ" x="14" y="11"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_xnMgseC-EeWlQawYMs_dEQ"/>
@@ -462,6 +734,76 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xn4dMOC-EeWlQawYMs_dEQ" id="(1.0,0.55)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xn4dMeC-EeWlQawYMs_dEQ" id="(0.0,0.3)"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZvcLs99GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_zZEjcOC9EeWlQawYMs_dEQ" target="_ZvbkoN9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZvcLtN9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZvcLuN9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortMixedPassThrough.uml#_zYyPkOC9EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZvcLtd9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZvcLtt9GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZvcLt99GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZvhrQd9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_kbn3QOC-EeWlQawYMs_dEQ" target="_ZvhEMN9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZvhrQt9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZvhrRt9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortMixedPassThrough.uml#_itTUQOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZvhrQ99GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZvhrRN9GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZvhrRd9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Zvnx5N9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_kbvzEOC-EeWlQawYMs_dEQ" target="_Zvnx4N9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Zvnx5d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zvnx6d9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_E1DSIOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Zvnx5t9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zvnx599GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zvnx6N9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Zvw71N9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_URys8OC-EeWlQawYMs_dEQ" target="_Zvw70N9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Zvw71d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zvw72d9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_TiRUgOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Zvw71t9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zvw7199GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zvw72N9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Zv4QlN9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_s_IJYOC-EeWlQawYMs_dEQ" target="_Zv4QkN9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Zv4Qld9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zv4Qmd9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortMixedPassThrough.uml#_s9smAOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Zv4Qlt9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zv4Ql99GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zv4QmN9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Zv--QN9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_xnMgsOC-EeWlQawYMs_dEQ" target="_Zv-XMN9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Zv--Qd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zv--Rd9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortMixedPassThrough.uml#_xnBhkOC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Zv--Qt9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zv--Q99GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zv--RN9GEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZwFE5N9GEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_db-kkOC-EeWlQawYMs_dEQ" target="_ZwFE4N9GEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZwFE5d9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZwFE6d9GEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortMixedPassThrough.uml#_cpqW0OC-EeWlQawYMs_dEQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZwFE5t9GEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZwFE599GEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZwFE6N9GEeaWn9KVzGhArQ"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_ZMtncODBEeWlQawYMs_dEQ" type="PapyrusUMLStateMachineDiagram" measurementUnit="Pixel">
<children xmi:type="notation:Shape" xmi:id="_ZMtnceDBEeWlQawYMs_dEQ" type="2000">
@@ -627,21 +969,21 @@
</edges>
</notation:Diagram>
<notation:Diagram xmi:id="_w2bqwODBEeWlQawYMs_dEQ" type="PapyrusUMLStateMachineDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_w2bqweDBEeWlQawYMs_dEQ" type="2000">
- <children xmi:type="notation:DecorationNode" xmi:id="_w2bqwuDBEeWlQawYMs_dEQ" type="2001">
+ <children xmi:type="notation:Shape" xmi:id="_w2bqweDBEeWlQawYMs_dEQ" type="StateMachine_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_w2bqwuDBEeWlQawYMs_dEQ" type="StateMachine_NameLabel">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_w2bqw-DBEeWlQawYMs_dEQ" width="700" height="16"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_w2bqxODBEeWlQawYMs_dEQ" type="2002">
- <children xmi:type="notation:Shape" xmi:id="_w2bqxeDBEeWlQawYMs_dEQ" type="3000">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_fm68cN9GEeaWn9KVzGhArQ" type="StateMachine_RegionCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_w2bqxeDBEeWlQawYMs_dEQ" type="Region_Shape">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_w2bqxuDBEeWlQawYMs_dEQ" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_w2bqx-DBEeWlQawYMs_dEQ" key="RegionZoneKey" value=""/>
</eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_w2bqyODBEeWlQawYMs_dEQ" type="3002">
- <children xmi:type="notation:Shape" xmi:id="_yH7H0ODBEeWlQawYMs_dEQ" type="8000">
- <children xmi:type="notation:DecorationNode" xmi:id="_yH7H0uDBEeWlQawYMs_dEQ" type="8001">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_fm7jgN9GEeaWn9KVzGhArQ" type="Region_SubvertexCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_yH7H0ODBEeWlQawYMs_dEQ" type="Pseudostate_InitialShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yH7H0uDBEeWlQawYMs_dEQ" type="Pseudostate_InitialFloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_yH7H0-DBEeWlQawYMs_dEQ" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_yH7H1ODBEeWlQawYMs_dEQ" type="8002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yH7H1ODBEeWlQawYMs_dEQ" type="Pseudostate_InitialStereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_yH7H1eDBEeWlQawYMs_dEQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="RelayPortMixedPassThrough.uml#_w1104ODBEeWlQawYMs_dEQ"/>
@@ -655,14 +997,26 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_yIB1heDBEeWlQawYMs_dEQ" x="200"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_yzJ2IODBEeWlQawYMs_dEQ" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_yzKdMODBEeWlQawYMs_dEQ" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_yzKdMeDBEeWlQawYMs_dEQ" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_yzJ2IODBEeWlQawYMs_dEQ" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yzKdMODBEeWlQawYMs_dEQ" type="State_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yzKdMeDBEeWlQawYMs_dEQ" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_yzKdMuDBEeWlQawYMs_dEQ" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_yzKdM-DBEeWlQawYMs_dEQ" type="6002">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_fm7jgd9GEeaWn9KVzGhArQ" type="State_RegionCompartment">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_yzKdNODBEeWlQawYMs_dEQ"/>
</children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_foLgsN9GEeaWn9KVzGhArQ" type="StereotypeLabel">
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_foLgsd9GEeaWn9KVzGhArQ" name="stereotype" stringValue="UMLRTStateMachines::RTState"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_foLgst9GEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_foMHwN9GEeaWn9KVzGhArQ" type="StereotypeBrace">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_foMHwd9GEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_foMHwt9GEeaWn9KVzGhArQ" name="stereotype" stringValue="UMLRTStateMachines::RTState"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_foMHw99GEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:Compartment" xmi:id="_foPyIN9GEeaWn9KVzGhArQ" type="InternalTransitions"/>
<element xmi:type="uml:State" href="RelayPortMixedPassThrough.uml#_yzDIcODBEeWlQawYMs_dEQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_yzJ2IeDBEeWlQawYMs_dEQ" x="133" y="92"/>
</children>
@@ -700,7 +1054,7 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_xkHQJeDBEeWlQawYMs_dEQ" x="230" y="30"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_w2bqzeDBEeWlQawYMs_dEQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_w2bqzeDBEeWlQawYMs_dEQ" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_w2bqzuDBEeWlQawYMs_dEQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_w2bqz-DBEeWlQawYMs_dEQ">
<owner xmi:type="uml:StateMachine" href="RelayPortMixedPassThrough.uml#_w1xjcODBEeWlQawYMs_dEQ"/>
@@ -747,14 +1101,14 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yzUOPuDBEeWlQawYMs_dEQ"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yzUOP-DBEeWlQawYMs_dEQ"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_zqiKEODBEeWlQawYMs_dEQ" type="7000" source="_yH7H0ODBEeWlQawYMs_dEQ" target="_yzJ2IODBEeWlQawYMs_dEQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_zqiKE-DBEeWlQawYMs_dEQ" type="7001">
+ <edges xmi:type="notation:Connector" xmi:id="_zqiKEODBEeWlQawYMs_dEQ" type="Transition_Edge" source="_yH7H0ODBEeWlQawYMs_dEQ" target="_yzJ2IODBEeWlQawYMs_dEQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zqiKE-DBEeWlQawYMs_dEQ" type="Transition_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zqiKFODBEeWlQawYMs_dEQ" x="3" y="-10"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_zqiKFeDBEeWlQawYMs_dEQ" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zqiKFeDBEeWlQawYMs_dEQ" type="Transition_GuardLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zqiKFuDBEeWlQawYMs_dEQ" y="11"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_zqiKF-DBEeWlQawYMs_dEQ" type="7003">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zqiKF-DBEeWlQawYMs_dEQ" type="Transition_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zqiKGODBEeWlQawYMs_dEQ" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_zqiKEeDBEeWlQawYMs_dEQ"/>
@@ -763,14 +1117,14 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zq9A0ODBEeWlQawYMs_dEQ" id="(1.0,0.7)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zq9A0eDBEeWlQawYMs_dEQ" id="(0.0,0.175)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_1rZOkODBEeWlQawYMs_dEQ" type="7000" source="_yzJ2IODBEeWlQawYMs_dEQ" target="_yzJ2IODBEeWlQawYMs_dEQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_1rZOk-DBEeWlQawYMs_dEQ" type="7001">
+ <edges xmi:type="notation:Connector" xmi:id="_1rZOkODBEeWlQawYMs_dEQ" type="Transition_Edge" source="_yzJ2IODBEeWlQawYMs_dEQ" target="_yzJ2IODBEeWlQawYMs_dEQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1rZOk-DBEeWlQawYMs_dEQ" type="Transition_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_1rZOlODBEeWlQawYMs_dEQ" x="8" y="25"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_1rZ1oODBEeWlQawYMs_dEQ" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1rZ1oODBEeWlQawYMs_dEQ" type="Transition_GuardLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_1rZ1oeDBEeWlQawYMs_dEQ" x="14" y="-5"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_1rZ1ouDBEeWlQawYMs_dEQ" type="7003">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1rZ1ouDBEeWlQawYMs_dEQ" type="Transition_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_1rZ1o-DBEeWlQawYMs_dEQ" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_1rZOkeDBEeWlQawYMs_dEQ"/>
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/RelayPortMixedPassThrough.uml b/models/tests/codepattern/structure/RelayPortMixedPassThrough/RelayPortMixedPassThrough.uml
index 5773068..90784a4 100644
--- a/models/tests/codepattern/structure/RelayPortMixedPassThrough/RelayPortMixedPassThrough.uml
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/RelayPortMixedPassThrough.uml
@@ -1,19 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:RTCppProperties="http://www.eclipse.org/papyrus/umlrt/cppproperties" xmlns:UMLRealTime="http://www.eclipse.org/papyrus/umlrt" xmlns:UMLRealTimeStateMach="http://www.eclipse.org/papyrus/umlrt/statemachine" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:RTCppProperties="http://www.eclipse.org/papyrus/umlrt/cppproperties" xmlns:UMLRTStateMachines="http://www.eclipse.org/papyrus/umlrt/statemachine" xmlns:UMLRealTime="http://www.eclipse.org/papyrus/umlrt" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
<uml:Model xmi:id="_aLIUUOC9EeWlQawYMs_dEQ" name="RootElement">
<packagedElement xmi:type="uml:Package" xmi:id="_bukdAOC9EeWlQawYMs_dEQ" name="Protocol1">
<packagedElement xmi:type="uml:Collaboration" xmi:id="_bsk48OC9EeWlQawYMs_dEQ" name="Protocol1">
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_buoucOC9EeWlQawYMs_dEQ" client="_bsk48OC9EeWlQawYMs_dEQ" supplier="_bumSMOC9EeWlQawYMs_dEQ" contract="_bumSMOC9EeWlQawYMs_dEQ">
+ <interfaceRealization xmi:id="_buoucOC9EeWlQawYMs_dEQ" client="_bsk48OC9EeWlQawYMs_dEQ" supplier="_bumSMOC9EeWlQawYMs_dEQ" contract="_bumSMOC9EeWlQawYMs_dEQ">
<name xsi:nil="true"/>
</interfaceRealization>
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_butm8OC9EeWlQawYMs_dEQ" client="_bsk48OC9EeWlQawYMs_dEQ" supplier="_burxwOC9EeWlQawYMs_dEQ" contract="_burxwOC9EeWlQawYMs_dEQ">
+ <interfaceRealization xmi:id="_butm8OC9EeWlQawYMs_dEQ" client="_bsk48OC9EeWlQawYMs_dEQ" supplier="_burxwOC9EeWlQawYMs_dEQ" contract="_burxwOC9EeWlQawYMs_dEQ">
<name xsi:nil="true"/>
</interfaceRealization>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_bumSMOC9EeWlQawYMs_dEQ" name="Protocol1"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_bupVgOC9EeWlQawYMs_dEQ" name="Protocol1~">
- <ownedOperation xmi:type="uml:Operation" xmi:id="_eFBXAOC9EeWlQawYMs_dEQ" name="msg1"/>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_e3No8OC9EeWlQawYMs_dEQ" name="msg2"/>
+ <ownedOperation xmi:id="_eFBXAOC9EeWlQawYMs_dEQ" name="msg1"/>
+ <ownedOperation xmi:id="_e3No8OC9EeWlQawYMs_dEQ" name="msg2"/>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_burKsOC9EeWlQawYMs_dEQ" client="_bsk48OC9EeWlQawYMs_dEQ" supplier="_bupVgOC9EeWlQawYMs_dEQ">
<name xsi:nil="true"/>
@@ -31,25 +31,25 @@
</packagedElement>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_gdecIOC9EeWlQawYMs_dEQ" name="Top" isActive="true">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_5W7MgOC-EeWlQawYMs_dEQ" name="sender" visibility="protected" type="_ix0dUOC9EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_5W7MgOC-EeWlQawYMs_dEQ" name="sender" visibility="protected" type="_ix0dUOC9EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_5W9oweC-EeWlQawYMs_dEQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_5W9owuC-EeWlQawYMs_dEQ" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_6TZb0OC-EeWlQawYMs_dEQ" name="medium" visibility="protected" type="_zYyPkOC9EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_6TZb0OC-EeWlQawYMs_dEQ" name="medium" visibility="protected" type="_zYyPkOC9EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_6TbRAeC-EeWlQawYMs_dEQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_6Tb4EOC-EeWlQawYMs_dEQ" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_7I-Y8OC-EeWlQawYMs_dEQ" name="receiver" visibility="protected" type="_pa64QOC9EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_7I-Y8OC-EeWlQawYMs_dEQ" name="receiver" visibility="protected" type="_pa64QOC9EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_7JA1MeC-EeWlQawYMs_dEQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_7JA1MuC-EeWlQawYMs_dEQ" value="1"/>
</ownedAttribute>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_IRlN8OC_EeWlQawYMs_dEQ" name="RTConnector1">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_IRmcEOC_EeWlQawYMs_dEQ" partWithPort="_5W7MgOC-EeWlQawYMs_dEQ" role="_AVYB0OC-EeWlQawYMs_dEQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_IRmcEeC_EeWlQawYMs_dEQ" partWithPort="_6TZb0OC-EeWlQawYMs_dEQ" role="_TiRUgOC-EeWlQawYMs_dEQ"/>
+ <ownedConnector xmi:id="_IRlN8OC_EeWlQawYMs_dEQ" name="RTConnector1">
+ <end xmi:id="_IRmcEOC_EeWlQawYMs_dEQ" partWithPort="_5W7MgOC-EeWlQawYMs_dEQ" role="_AVYB0OC-EeWlQawYMs_dEQ"/>
+ <end xmi:id="_IRmcEeC_EeWlQawYMs_dEQ" partWithPort="_6TZb0OC-EeWlQawYMs_dEQ" role="_TiRUgOC-EeWlQawYMs_dEQ"/>
</ownedConnector>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_JCMykOC_EeWlQawYMs_dEQ" name="RTConnector2">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_JCNZoOC_EeWlQawYMs_dEQ" partWithPort="_6TZb0OC-EeWlQawYMs_dEQ" role="_cpqW0OC-EeWlQawYMs_dEQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_JCNZoeC_EeWlQawYMs_dEQ" partWithPort="_7I-Y8OC-EeWlQawYMs_dEQ" role="_E1DSIOC-EeWlQawYMs_dEQ"/>
+ <ownedConnector xmi:id="_JCMykOC_EeWlQawYMs_dEQ" name="RTConnector2">
+ <end xmi:id="_JCNZoOC_EeWlQawYMs_dEQ" partWithPort="_6TZb0OC-EeWlQawYMs_dEQ" role="_cpqW0OC-EeWlQawYMs_dEQ"/>
+ <end xmi:id="_JCNZoeC_EeWlQawYMs_dEQ" partWithPort="_7I-Y8OC-EeWlQawYMs_dEQ" role="_E1DSIOC-EeWlQawYMs_dEQ"/>
</ownedConnector>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_ix0dUOC9EeWlQawYMs_dEQ" name="Sender" classifierBehavior="_ZMOfQODBEeWlQawYMs_dEQ" isActive="true">
@@ -58,17 +58,17 @@
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Rtlq0OC-EeWlQawYMs_dEQ" value="2"/>
</ownedAttribute>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_ZMOfQODBEeWlQawYMs_dEQ" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_ZMRikODBEeWlQawYMs_dEQ" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_dcYs4ODBEeWlQawYMs_dEQ" name="t0" source="_ZMSwsODBEeWlQawYMs_dEQ" target="_bgwGoODBEeWlQawYMs_dEQ"/>
+ <region xmi:id="_ZMRikODBEeWlQawYMs_dEQ" name="Region">
+ <transition xmi:id="_dcYs4ODBEeWlQawYMs_dEQ" name="t0" source="_ZMSwsODBEeWlQawYMs_dEQ" target="_bgwGoODBEeWlQawYMs_dEQ"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_ZMSwsODBEeWlQawYMs_dEQ">
<name xsi:nil="true"/>
</subvertex>
<subvertex xmi:type="uml:State" xmi:id="_bgwGoODBEeWlQawYMs_dEQ" name="State1">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_lPeOsODBEeWlQawYMs_dEQ">
<language>C++</language>
- <body>cout << "[" << getName() << ":Sender.State1] multicasting msg1" << endl;
-out.msg1().send();
-cout << "[" << getName() << ":Sender.State1] msg1 sent" << endl;
+ <body> cout << "[" << getName() << ":Sender.State1] multicasting msg1" << endl;
+ out.msg1().send();
+ cout << "[" << getName() << ":Sender.State1] msg1 sent" << endl;
</body>
</entry>
</subvertex>
@@ -77,16 +77,23 @@
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_pa64QOC9EeWlQawYMs_dEQ" name="Receiver" classifierBehavior="_w1xjcODBEeWlQawYMs_dEQ" isActive="true">
<ownedAttribute xmi:type="uml:Port" xmi:id="_E1DSIOC-EeWlQawYMs_dEQ" name="inp" visibility="public" type="_bsk48OC9EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite" isBehavior="true" isConjugated="true"/>
+ <ownedAttribute xmi:id="_rJHNQN9GEeaWn9KVzGhArQ" name="messagesReceived" visibility="public" isStatic="true">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_wDbLIN9GEeaWn9KVzGhArQ"/>
+ </ownedAttribute>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_w1xjcODBEeWlQawYMs_dEQ" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_w10mwODBEeWlQawYMs_dEQ" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_zqYZEODBEeWlQawYMs_dEQ" name="t0" source="_w1104ODBEeWlQawYMs_dEQ" target="_yzDIcODBEeWlQawYMs_dEQ"/>
- <transition xmi:type="uml:Transition" xmi:id="_1rO2gODBEeWlQawYMs_dEQ" name="t1" source="_yzDIcODBEeWlQawYMs_dEQ" target="_yzDIcODBEeWlQawYMs_dEQ">
+ <region xmi:id="_w10mwODBEeWlQawYMs_dEQ" name="Region">
+ <transition xmi:id="_zqYZEODBEeWlQawYMs_dEQ" name="t0" source="_w1104ODBEeWlQawYMs_dEQ" target="_yzDIcODBEeWlQawYMs_dEQ"/>
+ <transition xmi:id="_1rO2gODBEeWlQawYMs_dEQ" name="t1" source="_yzDIcODBEeWlQawYMs_dEQ" target="_yzDIcODBEeWlQawYMs_dEQ">
<effect xmi:type="uml:OpaqueBehavior" xmi:id="_D9rocODCEeWlQawYMs_dEQ">
<language>C++</language>
- <body>cout << "[" << getName() << ":Receiver.State1] received msg1" << endl;
+ <body> cout << "[" << getName() << ":Receiver.State1] received msg1" << endl;
+ messagesReceived++;
+ cout << "messages = " << messagesReceived << endl;
+ if (messagesReceived == 2) exit(0);
</body>
</effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_6xvdUODBEeWlQawYMs_dEQ" event="_eFB-EOC9EeWlQawYMs_dEQ" port="_E1DSIOC-EeWlQawYMs_dEQ"/>
+ <trigger xmi:id="_6xvdUODBEeWlQawYMs_dEQ" event="_eFB-EOC9EeWlQawYMs_dEQ" port="_E1DSIOC-EeWlQawYMs_dEQ"/>
</transition>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_w1104ODBEeWlQawYMs_dEQ">
<name xsi:nil="true"/>
@@ -101,36 +108,36 @@
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Zv24IOC-EeWlQawYMs_dEQ" value="2"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Port" xmi:id="_cpqW0OC-EeWlQawYMs_dEQ" name="m_out" visibility="public" type="_bsk48OC9EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_itTUQOC-EeWlQawYMs_dEQ" name="eavesdropper" visibility="protected" type="_pa64QOC9EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_itTUQOC-EeWlQawYMs_dEQ" name="eavesdropper" visibility="protected" type="_pa64QOC9EeWlQawYMs_dEQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_itVwgeC-EeWlQawYMs_dEQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_itVwguC-EeWlQawYMs_dEQ" value="1"/>
</ownedAttribute>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_s9smAOC-EeWlQawYMs_dEQ" name="RTConnector1">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_s9ubMOC-EeWlQawYMs_dEQ" role="_TiRUgOC-EeWlQawYMs_dEQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_s9ubMeC-EeWlQawYMs_dEQ" role="_cpqW0OC-EeWlQawYMs_dEQ"/>
+ <ownedConnector xmi:id="_s9smAOC-EeWlQawYMs_dEQ" name="RTConnector1">
+ <end xmi:id="_s9ubMOC-EeWlQawYMs_dEQ" role="_TiRUgOC-EeWlQawYMs_dEQ"/>
+ <end xmi:id="_s9ubMeC-EeWlQawYMs_dEQ" role="_cpqW0OC-EeWlQawYMs_dEQ"/>
</ownedConnector>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_xnBhkOC-EeWlQawYMs_dEQ" name="RTConnector2">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_xnCIoOC-EeWlQawYMs_dEQ" role="_TiRUgOC-EeWlQawYMs_dEQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_xnCvsOC-EeWlQawYMs_dEQ" partWithPort="_itTUQOC-EeWlQawYMs_dEQ" role="_E1DSIOC-EeWlQawYMs_dEQ"/>
+ <ownedConnector xmi:id="_xnBhkOC-EeWlQawYMs_dEQ" name="RTConnector2">
+ <end xmi:id="_xnCIoOC-EeWlQawYMs_dEQ" role="_TiRUgOC-EeWlQawYMs_dEQ"/>
+ <end xmi:id="_xnCvsOC-EeWlQawYMs_dEQ" partWithPort="_itTUQOC-EeWlQawYMs_dEQ" role="_E1DSIOC-EeWlQawYMs_dEQ"/>
</ownedConnector>
</packagedElement>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_aOvB8OC9EeWlQawYMs_dEQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_aOvpAOC9EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_aOvB8OC9EeWlQawYMs_dEQ">
+ <eAnnotations xmi:id="_aOvpAOC9EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_1h74oEeVEeO0lv5O1DTHOQ"/>
+ <appliedProfile href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_1h74oEeVEeO0lv5O1DTHOQ"/>
</profileApplication>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_aPtSUOC9EeWlQawYMs_dEQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_aPtSUeC9EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_aPtSUOC9EeWlQawYMs_dEQ">
+ <eAnnotations xmi:id="_aPtSUeC9EeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt/statemachine#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KLcn0FDtEeOA4ecmvfqvaw"/>
+ <appliedProfile href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KLcn0FDtEeOA4ecmvfqvaw"/>
</profileApplication>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_nv2gwODBEeWlQawYMs_dEQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_nv3H0ODBEeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_nv2gwODBEeWlQawYMs_dEQ">
+ <eAnnotations xmi:id="_nv3H0ODBEeWlQawYMs_dEQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt/cppproperties#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_vl5LALs8EeSTjNEQkASznQ"/>
+ <appliedProfile href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_vl5LALs8EeSTjNEQkASznQ"/>
</profileApplication>
</uml:Model>
<UMLRealTime:ProtocolContainer xmi:id="_bulEEOC9EeWlQawYMs_dEQ" base_Package="_bukdAOC9EeWlQawYMs_dEQ"/>
@@ -154,14 +161,14 @@
<UMLRealTime:CapsulePart xmi:id="_7JA1MOC-EeWlQawYMs_dEQ" base_Property="_7I-Y8OC-EeWlQawYMs_dEQ"/>
<UMLRealTime:RTConnector xmi:id="_IRnDIOC_EeWlQawYMs_dEQ" base_Connector="_IRlN8OC_EeWlQawYMs_dEQ"/>
<UMLRealTime:RTConnector xmi:id="_JCOAsOC_EeWlQawYMs_dEQ" base_Connector="_JCMykOC_EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_ZMTXwODBEeWlQawYMs_dEQ" base_Pseudostate="_ZMSwsODBEeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_ZMT-0ODBEeWlQawYMs_dEQ" base_Region="_ZMRikODBEeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_ZMT-0eDBEeWlQawYMs_dEQ" base_StateMachine="_ZMOfQODBEeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTState xmi:id="_bgwtsODBEeWlQawYMs_dEQ" base_State="_bgwGoODBEeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_ZMTXwODBEeWlQawYMs_dEQ" base_Pseudostate="_ZMSwsODBEeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_ZMT-0ODBEeWlQawYMs_dEQ" base_Region="_ZMRikODBEeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_ZMT-0eDBEeWlQawYMs_dEQ" base_StateMachine="_ZMOfQODBEeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTState xmi:id="_bgwtsODBEeWlQawYMs_dEQ" base_State="_bgwGoODBEeWlQawYMs_dEQ"/>
<RTCppProperties:CapsuleProperties xmi:id="_oxm4sODBEeWlQawYMs_dEQ" implementationPreface="#include <iostream>
using namespace std;
" base_Class="_ix0dUOC9EeWlQawYMs_dEQ"/>
<RTCppProperties:CapsuleProperties xmi:id="_trDT4ODBEeWlQawYMs_dEQ" implementationPreface="#include <iostream>
using namespace std;
" base_Class="_pa64QOC9EeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_w13DAODBEeWlQawYMs_dEQ" base_Pseudostate="_w1104ODBEeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_w13qEODBEeWlQawYMs_dEQ" base_Region="_w10mwODBEeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_w14RIODBEeWlQawYMs_dEQ" base_StateMachine="_w1xjcODBEeWlQawYMs_dEQ"/>
- <UMLRealTimeStateMach:RTState xmi:id="_yzE9oODBEeWlQawYMs_dEQ" base_State="_yzDIcODBEeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_w13DAODBEeWlQawYMs_dEQ" base_Pseudostate="_w1104ODBEeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_w13qEODBEeWlQawYMs_dEQ" base_Region="_w10mwODBEeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_w14RIODBEeWlQawYMs_dEQ" base_StateMachine="_w1xjcODBEeWlQawYMs_dEQ"/>
+ <UMLRTStateMachines:RTState xmi:id="_yzE9oODBEeWlQawYMs_dEQ" base_State="_yzDIcODBEeWlQawYMs_dEQ"/>
</xmi:XMI>
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/CMakeLists.txt b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/CMakeLists.txt
new file mode 100644
index 0000000..0ab1cf2
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/CMakeLists.txt
@@ -0,0 +1,36 @@
+# Generated 2017-01-20 14:36:41
+
+cmake_minimum_required(VERSION 2.8.7)
+set(TARGET TopMain)
+project(${TARGET})
+
+# require location of supporting RTS
+if (NOT UMLRTS_ROOT)
+ if (DEFINED ENV{UMLRTS_ROOT})
+ set(UMLRTS_ROOT $ENV{UMLRTS_ROOT})
+ else ()
+ set(UMLRTS_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/umlrt.rts)
+ endif ()
+endif ()
+
+# setup primary envars - provides tooling config
+include(${UMLRTS_ROOT}/build/buildenv.cmake)
+
+# model sources
+set(SRCS TopMain.cc Protocol1.cc Sender.cc Receiver.cc Medium.cc Top.cc TopControllers.cc )
+
+# specify target
+add_executable(${TARGET} ${SRCS})
+
+# setup lib dependency support after defining TARGET
+include(${UMLRTS_ROOT}/build/rtslib.cmake)
+
+# compiler parameters
+set_target_properties(${TARGET} PROPERTIES COMPILE_OPTIONS "${COPTS}")
+set_target_properties(${TARGET} PROPERTIES COMPILE_DEFINITIONS "${CDEFS}")
+include_directories(${INCS})
+
+# linker parameters
+set_target_properties(${TARGET} PROPERTIES CMAKE_EXE_LINKER_FLAGS "${LOPTS}")
+target_link_libraries(${TARGET} ${LIBS})
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Makefile b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Makefile
new file mode 100644
index 0000000..0bcbd22
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Makefile
@@ -0,0 +1,11 @@
+##################################################
+# Default makefile
+# Redirect make to target makefile
+##################################################
+
+all:
+ make -f MakefileTop.mk all
+clean:
+ make -f MakefileTop.mk clean
+.PHONY:
+ make -f MakefileTop.mk all clean
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/MakefileTop.mk b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/MakefileTop.mk
new file mode 100644
index 0000000..e8673b3
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/MakefileTop.mk
@@ -0,0 +1,49 @@
+# set default value for TARGETOS if is it not defined
+ifeq ($(TARGETOS), )
+$(warning warning: TARGETOS not defined. Choosing linux)
+TARGETOS=linux
+endif
+
+# set default value for BUILDTOOLS if is it not defined
+ifeq ($(BUILDTOOLS), )
+$(warning warning: BUILDTOOLS not defined. Choosing x86-gcc-4.6.3)
+BUILDTOOLS=x86-gcc-4.6.3
+endif
+
+# Location of RTS root.
+UMLRTS_ROOT ?= ./umlrt.rts
+
+CONFIG=$(TARGETOS).$(BUILDTOOLS)
+
+# Destination directory for the RTS services library.
+LIBDEST=$(UMLRTS_ROOT)/lib/$(CONFIG)
+
+include $(UMLRTS_ROOT)/build/host/host.mk
+include $(UMLRTS_ROOT)/build/buildtools/$(BUILDTOOLS)/buildtools.mk
+
+LD_PATHS=$(LIBDEST)
+CC_INCLUDES+=$(UMLRTS_ROOT)/include
+
+CC_DEFINES:=$(foreach d, $(CC_DEFINES), $(CC_DEF)$d)
+CC_INCLUDES:=$(foreach i, $(CC_INCLUDES), $(CC_INC)$i)
+LD_LIBS:=$(foreach i, $(LD_LIBS), $(LD_LIB)$i)
+LD_PATHS:=$(foreach i, $(LD_PATHS), $(LD_LIBPATH)$i)
+
+SRCS = TopMain.cc Protocol1.cc Sender.cc Receiver.cc Medium.cc Top.cc TopControllers.cc
+OBJS = $(subst $(CC_EXT),$(OBJ_EXT),$(SRCS))
+
+MAIN = TopMain$(EXE_EXT)
+
+all: $(MAIN)
+
+$(MAIN): $(OBJS) $(UMLRTS_ROOT)/lib/$(CONFIG)/$(LIB_PRFX)rts$(LIB_EXT)
+ $(LD) $(LD_FLAGS) $(OBJS) $(LD_PATHS) $(LD_LIBS) $(LD_OUT)$@
+
+%$(OBJ_EXT) : %$(CC_EXT)
+ $(CC) $< $(CC_FLAGS) $(CC_DEFINES) $(CC_INCLUDES) $(CC_OUT)$@
+
+clean :
+ @echo $(RM) main$(EXE_EXT) *$(OBJ_EXT) *$(DEP_EXT) $(DBG_FILES)
+ @$(RM) main$(EXE_EXT) *$(OBJ_EXT) *$(DEP_EXT) $(DBG_FILES)
+
+.PHONY: all clean
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Medium.cc b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Medium.cc
new file mode 100644
index 0000000..49b7d79
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Medium.cc
@@ -0,0 +1,158 @@
+
+#include "Medium.hh"
+
+#include "Receiver.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcapsulepart.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsulerole.hh"
+#include "umlrtcommsport.hh"
+#include "umlrtcommsportrole.hh"
+#include "umlrtframeservice.hh"
+class UMLRTRtsInterface;
+
+Capsule_Medium::Capsule_Medium( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, m_inp( borderPorts[borderport_m_inp] )
+, m_out( borderPorts[borderport_m_out] )
+, eavesdropper( &slot->parts[part_eavesdropper] )
+{
+}
+
+
+
+
+
+
+
+void Capsule_Medium::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_m_inp:
+ switch( index )
+ {
+ case 0:
+ UMLRTFrameService::connectFarEnds( borderPorts[borderport_m_inp], index, borderPorts[borderport_m_out], 0 );
+ UMLRTFrameService::sendBoundUnboundFarEnd( borderPorts[borderport_m_inp], index, true );
+ UMLRTFrameService::sendBoundUnboundFarEnd( borderPorts[borderport_m_out], 0, true );
+ break;
+ case 1:
+ UMLRTFrameService::connectRelayPort( borderPorts[borderport_m_inp], index, &slot->parts[part_eavesdropper].slots[0]->ports[Capsule_Receiver::borderport_inp], 0 );
+ UMLRTFrameService::bindSubcapsulePort( true, slot->parts[part_eavesdropper].slots[0]->capsule, portId, index );
+ break;
+ }
+ break;
+ case borderport_m_out:
+ switch( index )
+ {
+ }
+ break;
+ }
+}
+
+void Capsule_Medium::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_m_inp:
+ switch( index )
+ {
+ case 0:
+ UMLRTFrameService::sendBoundUnboundForPortIndex( borderPorts[borderport_m_inp], index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_m_inp], index );
+ break;
+ case 1:
+ UMLRTFrameService::unbindSubcapsulePort( true, slot->parts[part_eavesdropper].slots[0]->capsule, portId, index );
+ break;
+ }
+ break;
+ case borderport_m_out:
+ switch( index )
+ {
+ case 0:
+ UMLRTFrameService::sendBoundUnboundForPortIndex( borderPorts[borderport_m_out], index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_m_out], index );
+ break;
+ }
+ break;
+ }
+}
+
+void Capsule_Medium::initialize( const UMLRTMessage & msg )
+{
+}
+
+void Capsule_Medium::inject( const UMLRTMessage & msg )
+{
+}
+
+
+static const UMLRTCapsuleRole roles[] =
+{
+ {
+ "eavesdropper",
+ &Receiver,
+ 1,
+ 1,
+ false,
+ false
+ }
+};
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Medium::port_m_inp,
+ "Protocol1",
+ "m_inp",
+ "",
+ 2,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ true
+ },
+ {
+ Capsule_Medium::port_m_out,
+ "Protocol1",
+ "m_out",
+ "",
+ 1,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Medium( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ UMLRTFrameService::connectFarEnds( borderPorts[Capsule_Medium::borderport_m_inp], 0, borderPorts[Capsule_Medium::borderport_m_out], 0 );
+ UMLRTFrameService::connectRelayPort( borderPorts[Capsule_Medium::borderport_m_inp], 1, &slot->parts[Capsule_Medium::part_eavesdropper].slots[0]->ports[Capsule_Receiver::borderport_inp], 0 );
+ Receiver.instantiate( NULL, slot->parts[Capsule_Medium::part_eavesdropper].slots[0], UMLRTFrameService::createBorderPorts( slot->parts[Capsule_Medium::part_eavesdropper].slots[0], Receiver.numPortRolesBorder ) );
+ slot->capsule = new Capsule_Medium( &Medium, slot, borderPorts, NULL, false );
+}
+
+const UMLRTCapsuleClass Medium =
+{
+ "Medium",
+ NULL,
+ instantiate_Medium,
+ 1,
+ roles,
+ 2,
+ portroles_border,
+ 0,
+ NULL
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Medium.hh b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Medium.hh
new file mode 100644
index 0000000..5d90381
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Medium.hh
@@ -0,0 +1,48 @@
+
+#ifndef MEDIUM_HH
+#define MEDIUM_HH
+
+#include "Protocol1.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCapsulePart;
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+class Capsule_Medium : public UMLRTCapsule
+{
+public:
+ Capsule_Medium( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+protected:
+ Protocol1::Conj m_inp;
+public:
+ enum BorderPortId
+ {
+ borderport_m_inp,
+ borderport_m_out
+ };
+protected:
+ Protocol1::Base m_out;
+public:
+ enum PartId
+ {
+ part_eavesdropper
+ };
+protected:
+ const UMLRTCapsulePart * const eavesdropper;
+public:
+ enum PortId
+ {
+ port_m_inp,
+ port_m_out
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+ virtual void initialize( const UMLRTMessage & msg );
+ virtual void inject( const UMLRTMessage & msg );
+};
+extern const UMLRTCapsuleClass Medium;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Protocol1.cc b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Protocol1.cc
new file mode 100644
index 0000000..28d4ad6
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Protocol1.cc
@@ -0,0 +1,82 @@
+
+#include "Protocol1.hh"
+
+#include "umlrtobjectclass.hh"
+#include "umlrtoutsignal.hh"
+struct UMLRTCommsPort;
+
+static UMLRTObject_field fields_msg1[] =
+{
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0
+ }
+ #endif
+};
+
+static UMLRTObject payload_msg1 =
+{
+ 0,
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ 1
+ #else
+ 0
+ #endif
+ ,
+ fields_msg1
+};
+
+static UMLRTObject_field fields_msg2[] =
+{
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0
+ }
+ #endif
+};
+
+static UMLRTObject payload_msg2 =
+{
+ 0,
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ 1
+ #else
+ 0
+ #endif
+ ,
+ fields_msg2
+};
+
+Protocol1::Base::Base( const UMLRTCommsPort * & srcPort )
+: UMLRTProtocol( srcPort )
+{
+}
+
+UMLRTOutSignal Protocol1::Base::msg1() const
+{
+ UMLRTOutSignal signal;
+ signal.initialize( "msg1", signal_msg1, srcPort, &payload_msg1 );
+ return signal;
+}
+
+UMLRTOutSignal Protocol1::Base::msg2() const
+{
+ UMLRTOutSignal signal;
+ signal.initialize( "msg2", signal_msg2, srcPort, &payload_msg2 );
+ return signal;
+}
+
+Protocol1::Conj::Conj( const UMLRTCommsPort * & srcPort )
+: UMLRTProtocol( srcPort )
+{
+}
+
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Protocol1.hh b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Protocol1.hh
new file mode 100644
index 0000000..8055b58
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Protocol1.hh
@@ -0,0 +1,32 @@
+
+#ifndef PROTOCOL1_HH
+#define PROTOCOL1_HH
+
+#include "umlrtoutsignal.hh"
+#include "umlrtprotocol.hh"
+#include "umlrtsignal.hh"
+struct UMLRTCommsPort;
+
+namespace Protocol1
+{
+ class Base : public UMLRTProtocol
+ {
+ public:
+ Base( const UMLRTCommsPort * & srcPort );
+ UMLRTOutSignal msg1() const;
+ UMLRTOutSignal msg2() const;
+ };
+ class Conj : public UMLRTProtocol
+ {
+ public:
+ Conj( const UMLRTCommsPort * & srcPort );
+ };
+ enum SignalId
+ {
+ signal_msg1 = UMLRTSignal::FIRST_PROTOCOL_SIGNAL_ID,
+ signal_msg2
+ };
+};
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Receiver.cc b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Receiver.cc
new file mode 100644
index 0000000..0aecff2
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Receiver.cc
@@ -0,0 +1,177 @@
+
+#include "Receiver.hh"
+
+#include "Protocol1.hh"
+#include "umlrtcommsportrole.hh"
+#include "umlrtmessage.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsuleclass.hh"
+#include "umlrtframeservice.hh"
+class UMLRTRtsInterface;
+struct UMLRTCommsPort;
+
+#include <iostream>
+using namespace std;
+
+int Capsule_Receiver::messagesReceived = 0;
+Capsule_Receiver::Capsule_Receiver( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, inp( borderPorts[borderport_inp] )
+, currentState( SPECIAL_INTERNAL_STATE_UNVISITED )
+{
+ stateNames[State1] = "State1";
+ stateNames[SPECIAL_INTERNAL_STATE_UNVISITED] = "<uninitialized>";
+}
+
+
+
+
+
+void Capsule_Receiver::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_inp:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_inp, index, true );
+ break;
+ }
+}
+
+void Capsule_Receiver::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_inp:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_inp, index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_inp], index );
+ break;
+ }
+}
+
+
+void Capsule_Receiver::inject( const UMLRTMessage & message )
+{
+ msg = &message;
+ switch( currentState )
+ {
+ case State1:
+ currentState = state_____State1( &message );
+ break;
+ default:
+ break;
+ }
+}
+
+void Capsule_Receiver::initialize( const UMLRTMessage & message )
+{
+ msg = &message;
+ actionchain_____t0( &message );
+ currentState = State1;
+}
+
+const char * Capsule_Receiver::getCurrentStateString() const
+{
+ return stateNames[currentState];
+}
+
+
+
+
+void Capsule_Receiver::entryaction_____State1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ #undef rtdata
+}
+
+void Capsule_Receiver::exitaction_____State1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ #undef rtdata
+}
+
+void Capsule_Receiver::transitionaction_____t1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortMixedPassThrough/RelayPortMixedPassThrough.uml RootElement::Receiver transition State1,State1,msg1:inp */
+ cout << "[" << getName() << ":Receiver.State1] received msg1" << endl;
+ messagesReceived++;
+ cout << "messages = " << messagesReceived << endl;
+ if (messagesReceived == 2) exit(0);
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Receiver::actionchain_____t0( const UMLRTMessage * msg )
+{
+ entryaction_____State1( msg );
+}
+
+void Capsule_Receiver::actionchain_____t1( const UMLRTMessage * msg )
+{
+ exitaction_____State1( msg );
+ transitionaction_____t1( msg );
+ entryaction_____State1( msg );
+}
+
+Capsule_Receiver::State Capsule_Receiver::state_____State1( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ case port_inp:
+ switch( msg->getSignalId() )
+ {
+ case Protocol1::signal_msg1:
+ actionchain_____t1( msg );
+ return State1;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Receiver::port_inp,
+ "Protocol1",
+ "inp",
+ "",
+ 1,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Receiver( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ slot->capsule = new Capsule_Receiver( &Receiver, slot, borderPorts, NULL, false );
+}
+
+const UMLRTCapsuleClass Receiver =
+{
+ "Receiver",
+ NULL,
+ instantiate_Receiver,
+ 0,
+ NULL,
+ 1,
+ portroles_border,
+ 0,
+ NULL
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Receiver.hh b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Receiver.hh
new file mode 100644
index 0000000..9957cb0
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Receiver.hh
@@ -0,0 +1,54 @@
+
+#ifndef RECEIVER_HH
+#define RECEIVER_HH
+
+#include "Protocol1.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+class Capsule_Receiver : public UMLRTCapsule
+{
+public:
+ Capsule_Receiver( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+protected:
+ Protocol1::Conj inp;
+public:
+ enum BorderPortId
+ {
+ borderport_inp
+ };
+ enum PartId
+ {
+ };
+ enum PortId
+ {
+ port_inp
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+ static int messagesReceived;
+ virtual void inject( const UMLRTMessage & message );
+ virtual void initialize( const UMLRTMessage & message );
+ const char * getCurrentStateString() const;
+private:
+ enum State
+ {
+ State1,
+ SPECIAL_INTERNAL_STATE_UNVISITED
+ };
+ const char * stateNames[2];
+ State currentState;
+ void entryaction_____State1( const UMLRTMessage * msg );
+ void exitaction_____State1( const UMLRTMessage * msg );
+ void transitionaction_____t1( const UMLRTMessage * msg );
+ void actionchain_____t0( const UMLRTMessage * msg );
+ void actionchain_____t1( const UMLRTMessage * msg );
+ State state_____State1( const UMLRTMessage * msg );
+};
+extern const UMLRTCapsuleClass Receiver;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Sender.cc b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Sender.cc
new file mode 100644
index 0000000..202abe0
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Sender.cc
@@ -0,0 +1,143 @@
+
+#include "Sender.hh"
+
+#include "umlrtcommsportrole.hh"
+#include "umlrtmessage.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsuleclass.hh"
+#include "umlrtframeservice.hh"
+class UMLRTRtsInterface;
+struct UMLRTCommsPort;
+
+#include <iostream>
+using namespace std;
+
+Capsule_Sender::Capsule_Sender( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, out( borderPorts[borderport_out] )
+, currentState( SPECIAL_INTERNAL_STATE_UNVISITED )
+{
+ stateNames[State1] = "State1";
+ stateNames[SPECIAL_INTERNAL_STATE_UNVISITED] = "<uninitialized>";
+}
+
+
+
+
+
+void Capsule_Sender::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_out:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_out, index, true );
+ break;
+ }
+}
+
+void Capsule_Sender::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_out:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_out, index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_out], index );
+ break;
+ }
+}
+
+void Capsule_Sender::inject( const UMLRTMessage & message )
+{
+ msg = &message;
+ switch( currentState )
+ {
+ case State1:
+ currentState = state_____State1( &message );
+ break;
+ default:
+ break;
+ }
+}
+
+void Capsule_Sender::initialize( const UMLRTMessage & message )
+{
+ msg = &message;
+ actionchain_____t0( &message );
+ currentState = State1;
+}
+
+const char * Capsule_Sender::getCurrentStateString() const
+{
+ return stateNames[currentState];
+}
+
+
+
+
+void Capsule_Sender::entryaction_____State1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortMixedPassThrough/RelayPortMixedPassThrough.uml RootElement::Sender::State1 entry */
+ cout << "[" << getName() << ":Sender.State1] multicasting msg1" << endl;
+ out.msg1().send();
+ cout << "[" << getName() << ":Sender.State1] msg1 sent" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Sender::actionchain_____t0( const UMLRTMessage * msg )
+{
+ entryaction_____State1( msg );
+}
+
+Capsule_Sender::State Capsule_Sender::state_____State1( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Sender::port_out,
+ "Protocol1",
+ "out",
+ "",
+ 2,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Sender( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ slot->capsule = new Capsule_Sender( &Sender, slot, borderPorts, NULL, false );
+}
+
+const UMLRTCapsuleClass Sender =
+{
+ "Sender",
+ NULL,
+ instantiate_Sender,
+ 0,
+ NULL,
+ 1,
+ portroles_border,
+ 0,
+ NULL
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Sender.hh b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Sender.hh
new file mode 100644
index 0000000..3e397a1
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Sender.hh
@@ -0,0 +1,50 @@
+
+#ifndef SENDER_HH
+#define SENDER_HH
+
+#include "Protocol1.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+class Capsule_Sender : public UMLRTCapsule
+{
+public:
+ Capsule_Sender( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+protected:
+ Protocol1::Base out;
+public:
+ enum BorderPortId
+ {
+ borderport_out
+ };
+ enum PartId
+ {
+ };
+ enum PortId
+ {
+ port_out
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+ virtual void inject( const UMLRTMessage & message );
+ virtual void initialize( const UMLRTMessage & message );
+ const char * getCurrentStateString() const;
+private:
+ enum State
+ {
+ State1,
+ SPECIAL_INTERNAL_STATE_UNVISITED
+ };
+ const char * stateNames[2];
+ State currentState;
+ void entryaction_____State1( const UMLRTMessage * msg );
+ void actionchain_____t0( const UMLRTMessage * msg );
+ State state_____State1( const UMLRTMessage * msg );
+};
+extern const UMLRTCapsuleClass Sender;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Top-connections.log b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Top-connections.log
new file mode 100644
index 0000000..382e9f1
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Top-connections.log
@@ -0,0 +1,9 @@
+Top.RTConnector1
+ Top.sender#out.far[0] <-> Top.medium#m_inp.far[0]
+ Top.sender#out.far[1] <-> Top.medium#m_inp.far[1]
+Top.RTConnector2
+ Top.medium#m_out.far[0] <-> Top.receiver#inp.far[0]
+Top.medium.RTConnector1
+ Top.sender#out.far[0] <-> Top.receiver#inp.far[0]
+Top.medium.RTConnector2
+ Top.sender#out.far[1] <-> Top.medium.eavesdropper#inp.far[0]
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Top.cc b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Top.cc
new file mode 100644
index 0000000..e3ab007
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Top.cc
@@ -0,0 +1,96 @@
+
+#include "Top.hh"
+
+#include "Medium.hh"
+#include "Receiver.hh"
+#include "Sender.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcapsulepart.hh"
+#include "umlrtcommsport.hh"
+#include "umlrtframeservice.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsulerole.hh"
+class UMLRTRtsInterface;
+
+Capsule_Top::Capsule_Top( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, medium( &slot->parts[part_medium] )
+, receiver( &slot->parts[part_receiver] )
+, sender( &slot->parts[part_sender] )
+{
+}
+
+
+
+
+
+void Capsule_Top::bindPort( bool isBorder, int portId, int index )
+{
+}
+
+void Capsule_Top::unbindPort( bool isBorder, int portId, int index )
+{
+}
+
+void Capsule_Top::initialize( const UMLRTMessage & msg )
+{
+}
+
+void Capsule_Top::inject( const UMLRTMessage & msg )
+{
+}
+
+
+static const UMLRTCapsuleRole roles[] =
+{
+ {
+ "medium",
+ &Medium,
+ 1,
+ 1,
+ false,
+ false
+ },
+ {
+ "receiver",
+ &Receiver,
+ 1,
+ 1,
+ false,
+ false
+ },
+ {
+ "sender",
+ &Sender,
+ 1,
+ 1,
+ false,
+ false
+ }
+};
+
+static void instantiate_Top( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ UMLRTFrameService::connectPorts( &slot->parts[Capsule_Top::part_medium].slots[0]->ports[Capsule_Medium::borderport_m_inp], 0, &slot->parts[Capsule_Top::part_sender].slots[0]->ports[Capsule_Sender::borderport_out], 0 );
+ UMLRTFrameService::connectPorts( &slot->parts[Capsule_Top::part_medium].slots[0]->ports[Capsule_Medium::borderport_m_inp], 1, &slot->parts[Capsule_Top::part_sender].slots[0]->ports[Capsule_Sender::borderport_out], 1 );
+ UMLRTFrameService::connectPorts( &slot->parts[Capsule_Top::part_medium].slots[0]->ports[Capsule_Medium::borderport_m_out], 0, &slot->parts[Capsule_Top::part_receiver].slots[0]->ports[Capsule_Receiver::borderport_inp], 0 );
+ Medium.instantiate( NULL, slot->parts[Capsule_Top::part_medium].slots[0], UMLRTFrameService::createBorderPorts( slot->parts[Capsule_Top::part_medium].slots[0], Medium.numPortRolesBorder ) );
+ Receiver.instantiate( NULL, slot->parts[Capsule_Top::part_receiver].slots[0], UMLRTFrameService::createBorderPorts( slot->parts[Capsule_Top::part_receiver].slots[0], Receiver.numPortRolesBorder ) );
+ Sender.instantiate( NULL, slot->parts[Capsule_Top::part_sender].slots[0], UMLRTFrameService::createBorderPorts( slot->parts[Capsule_Top::part_sender].slots[0], Sender.numPortRolesBorder ) );
+ slot->capsule = new Capsule_Top( &Top, slot, borderPorts, NULL, false );
+}
+
+const UMLRTCapsuleClass Top =
+{
+ "Top",
+ NULL,
+ instantiate_Top,
+ 3,
+ roles,
+ 0,
+ NULL,
+ 0,
+ NULL
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Top.hh b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Top.hh
new file mode 100644
index 0000000..944d661
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/Top.hh
@@ -0,0 +1,35 @@
+
+#ifndef TOP_HH
+#define TOP_HH
+
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCapsulePart;
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+class Capsule_Top : public UMLRTCapsule
+{
+public:
+ Capsule_Top( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+ enum PartId
+ {
+ part_medium,
+ part_receiver,
+ part_sender
+ };
+protected:
+ const UMLRTCapsulePart * const medium;
+ const UMLRTCapsulePart * const receiver;
+ const UMLRTCapsulePart * const sender;
+public:
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+ virtual void initialize( const UMLRTMessage & msg );
+ virtual void inject( const UMLRTMessage & msg );
+};
+extern const UMLRTCapsuleClass Top;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/TopControllers.cc b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/TopControllers.cc
new file mode 100644
index 0000000..573f450
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/TopControllers.cc
@@ -0,0 +1,344 @@
+
+#include "TopControllers.hh"
+
+#include "Medium.hh"
+#include "Receiver.hh"
+#include "Sender.hh"
+#include "Top.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcapsulepart.hh"
+#include "umlrtcommsport.hh"
+#include "umlrtcommsportfarend.hh"
+#include "umlrtcontroller.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+
+
+static UMLRTController DefaultController_( "DefaultController" );
+
+UMLRTController * DefaultController = &DefaultController_;
+
+static Capsule_Top top( &Top, &Top_slots[InstId_Top], NULL, NULL, true );
+
+static UMLRTSlot * slots_Top[] =
+{
+ &Top_slots[InstId_Top_medium],
+ &Top_slots[InstId_Top_receiver],
+ &Top_slots[InstId_Top_sender]
+};
+
+static UMLRTCapsulePart parts_Top[] =
+{
+ {
+ &Top,
+ Capsule_Top::part_medium,
+ 1,
+ &slots_Top[0]
+ },
+ {
+ &Top,
+ Capsule_Top::part_receiver,
+ 1,
+ &slots_Top[1]
+ },
+ {
+ &Top,
+ Capsule_Top::part_sender,
+ 1,
+ &slots_Top[2]
+ }
+};
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_medium[] =
+{
+ {
+ 0,
+ NULL
+ },
+ {
+ 0,
+ NULL
+ },
+ {
+ 0,
+ NULL
+ }
+};
+
+UMLRTCommsPort borderports_Top_medium[] =
+{
+ {
+ &Medium,
+ Capsule_Medium::borderport_m_inp,
+ &Top_slots[InstId_Top_medium],
+ 2,
+ borderfarEndList_Top_medium,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ true,
+ false,
+ false,
+ false,
+ true
+ },
+ {
+ &Medium,
+ Capsule_Medium::borderport_m_out,
+ &Top_slots[InstId_Top_medium],
+ 1,
+ &borderfarEndList_Top_medium[2],
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ true,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_medium_ptrs[] =
+{
+ &borderports_Top_medium[0],
+ &borderports_Top_medium[1]
+};
+
+static Capsule_Medium top_medium( &Medium, &Top_slots[InstId_Top_medium], borderports_Top_medium_ptrs, NULL, true );
+
+static UMLRTSlot * slots_Top_medium[] =
+{
+ &Top_slots[InstId_Top_medium_eavesdropper]
+};
+
+static UMLRTCapsulePart parts_Top_medium[] =
+{
+ {
+ &Medium,
+ Capsule_Medium::part_eavesdropper,
+ 1,
+ &slots_Top_medium[0]
+ }
+};
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_medium_eavesdropper[] =
+{
+ {
+ 1,
+ &borderports_Top_sender[Capsule_Sender::borderport_out]
+ }
+};
+
+UMLRTCommsPort borderports_Top_medium_eavesdropper[] =
+{
+ {
+ &Receiver,
+ Capsule_Receiver::borderport_inp,
+ &Top_slots[InstId_Top_medium_eavesdropper],
+ 1,
+ borderfarEndList_Top_medium_eavesdropper,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_medium_eavesdropper_ptrs[] =
+{
+ &borderports_Top_medium_eavesdropper[0]
+};
+
+static Capsule_Receiver top_medium_eavesdropper( &Receiver, &Top_slots[InstId_Top_medium_eavesdropper], borderports_Top_medium_eavesdropper_ptrs, NULL, true );
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_receiver[] =
+{
+ {
+ 0,
+ &borderports_Top_sender[Capsule_Sender::borderport_out]
+ }
+};
+
+UMLRTCommsPort borderports_Top_receiver[] =
+{
+ {
+ &Receiver,
+ Capsule_Receiver::borderport_inp,
+ &Top_slots[InstId_Top_receiver],
+ 1,
+ borderfarEndList_Top_receiver,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_receiver_ptrs[] =
+{
+ &borderports_Top_receiver[0]
+};
+
+static Capsule_Receiver top_receiver( &Receiver, &Top_slots[InstId_Top_receiver], borderports_Top_receiver_ptrs, NULL, true );
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_sender[] =
+{
+ {
+ 0,
+ &borderports_Top_receiver[Capsule_Receiver::borderport_inp]
+ },
+ {
+ 0,
+ &borderports_Top_medium_eavesdropper[Capsule_Receiver::borderport_inp]
+ }
+};
+
+UMLRTCommsPort borderports_Top_sender[] =
+{
+ {
+ &Sender,
+ Capsule_Sender::borderport_out,
+ &Top_slots[InstId_Top_sender],
+ 2,
+ borderfarEndList_Top_sender,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_sender_ptrs[] =
+{
+ &borderports_Top_sender[0]
+};
+
+static Capsule_Sender top_sender( &Sender, &Top_slots[InstId_Top_sender], borderports_Top_sender_ptrs, NULL, true );
+
+UMLRTSlot Top_slots[] =
+{
+ {
+ "Top",
+ 0,
+ &Top,
+ NULL,
+ 0,
+ &top,
+ &DefaultController_,
+ 3,
+ parts_Top,
+ 0,
+ NULL,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.medium",
+ 0,
+ &Medium,
+ &Top,
+ Capsule_Top::part_medium,
+ &top_medium,
+ &DefaultController_,
+ 1,
+ parts_Top_medium,
+ 2,
+ borderports_Top_medium,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.medium.eavesdropper",
+ 0,
+ &Receiver,
+ &Medium,
+ Capsule_Medium::part_eavesdropper,
+ &top_medium_eavesdropper,
+ &DefaultController_,
+ 0,
+ NULL,
+ 1,
+ borderports_Top_medium_eavesdropper,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.receiver",
+ 0,
+ &Receiver,
+ &Top,
+ Capsule_Top::part_receiver,
+ &top_receiver,
+ &DefaultController_,
+ 0,
+ NULL,
+ 1,
+ borderports_Top_receiver,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.sender",
+ 0,
+ &Sender,
+ &Top,
+ Capsule_Top::part_sender,
+ &top_sender,
+ &DefaultController_,
+ 0,
+ NULL,
+ 1,
+ borderports_Top_sender,
+ NULL,
+ true,
+ false
+ }
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/TopControllers.hh b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/TopControllers.hh
new file mode 100644
index 0000000..6244a2a
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/TopControllers.hh
@@ -0,0 +1,25 @@
+
+#ifndef TOPCONTROLLERS_HH
+#define TOPCONTROLLERS_HH
+
+class UMLRTController;
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+enum CapsuleInstanceId
+{
+ InstId_Top,
+ InstId_Top_medium,
+ InstId_Top_medium_eavesdropper,
+ InstId_Top_receiver,
+ InstId_Top_sender
+};
+extern UMLRTController * DefaultController;
+extern UMLRTCommsPort borderports_Top_medium[];
+extern UMLRTCommsPort borderports_Top_medium_eavesdropper[];
+extern UMLRTCommsPort borderports_Top_receiver[];
+extern UMLRTCommsPort borderports_Top_sender[];
+extern UMLRTSlot Top_slots[];
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/TopMain.cc b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/TopMain.cc
new file mode 100644
index 0000000..0684f69
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortMixedPassThrough/expected_src/TopMain.cc
@@ -0,0 +1,38 @@
+#include "umlrtmain.hh"
+
+#include "umlrtcontroller.hh"
+#include "TopControllers.hh"
+#include "umlrtcapsuletocontrollermap.hh"
+#include "umlrtmessagepool.hh"
+#include "umlrtsignalelementpool.hh"
+#include "umlrttimerpool.hh"
+#include "umlrtuserconfig.hh"
+#include <stdio.h>
+
+static UMLRTSignalElement signalElementBuffer[USER_CONFIG_SIGNAL_ELEMENT_POOL_SIZE];
+static UMLRTSignalElementPool signalElementPool( signalElementBuffer, USER_CONFIG_SIGNAL_ELEMENT_POOL_SIZE );
+
+static UMLRTMessage messageBuffer[USER_CONFIG_MESSAGE_POOL_SIZE];
+static UMLRTMessagePool messagePool( messageBuffer, USER_CONFIG_MESSAGE_POOL_SIZE );
+
+static UMLRTTimer timers[USER_CONFIG_TIMER_POOL_SIZE];
+static UMLRTTimerPool timerPool( timers, USER_CONFIG_TIMER_POOL_SIZE );
+
+int main( int argc, char * argv[] )
+{
+ UMLRTController::initializePools( &signalElementPool, &messagePool, &timerPool );
+ UMLRTMain::setArgs( argc, argv );
+ UMLRTCapsuleToControllerMap::setDefaultSlotList( Top_slots, 5 );
+
+ if( ! UMLRTMain::targetStartup() )
+ return EXIT_FAILURE;
+
+ DefaultController->spawn();
+
+ if( ! UMLRTMain::mainLoop() )
+ return UMLRTMain::targetShutdown( false );
+
+ DefaultController->join();
+
+ return UMLRTMain::targetShutdown( true );
+}
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.notation b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.notation
index afe4923..a80720f 100644
--- a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.notation
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.notation
@@ -1,39 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
<notation:Diagram xmi:id="_X0r-oOx0EeWC6NxYAfYK4w" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_X06oIOx0EeWC6NxYAfYK4w" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_X0-SgOx0EeWC6NxYAfYK4w" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_X0-Sgex0EeWC6NxYAfYK4w" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_X06oIOx0EeWC6NxYAfYK4w" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_X0-SgOx0EeWC6NxYAfYK4w" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_X0-Sgex0EeWC6NxYAfYK4w" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_X0-Sgux0EeWC6NxYAfYK4w" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_X0-Sg-x0EeWC6NxYAfYK4w" type="7073">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_X0-Sg-x0EeWC6NxYAfYK4w" type="Class_StructureCompartment">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5e0sEOx2EeWC6NxYAfYK4w" source="PapyrusCSSForceValue">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5e0sEex2EeWC6NxYAfYK4w" key="mutable" value="true"/>
</eAnnotations>
- <children xmi:type="notation:Shape" xmi:id="_h0bIwOx1EeWC6NxYAfYK4w" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_h0bIwux1EeWC6NxYAfYK4w" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_h0bv0Ox1EeWC6NxYAfYK4w" type="6054">
+ <children xmi:type="notation:Shape" xmi:id="_h0bIwOx1EeWC6NxYAfYK4w" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_h0bIwux1EeWC6NxYAfYK4w" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_h0bv0Ox1EeWC6NxYAfYK4w" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_h0bv0ex1EeWC6NxYAfYK4w" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_h0bv0ux1EeWC6NxYAfYK4w" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_h0bv0ux1EeWC6NxYAfYK4w" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_h0bv0-x1EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_h0bv1Ox1EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_h0h2cOx1EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_h0idgOx1EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_h0h2cOx1EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_h0idgOx1EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_h0idgex1EeWC6NxYAfYK4w" x="29" y="-8"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_h0idgux1EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_h0idgux1EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_h0idg-x1EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_xAQPMOx0EeWC6NxYAfYK4w"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h0h2cex1EeWC6NxYAfYK4w" x="20" width="20" height="20"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h0h2cex1EeWC6NxYAfYK4w" x="26" y="-10" width="20" height="20"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_h0jEkOx1EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_h0jEkux1EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_h0jEkOx1EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_h0jEkux1EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_h0jEk-x1EeWC6NxYAfYK4w" x="-92" y="28"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_h0jElOx1EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_h0jElOx1EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_h0jElex1EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_2QxGkOx0EeWC6NxYAfYK4w"/>
@@ -63,20 +63,20 @@
<element xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_h0QwsOx1EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_h0bIwex1EeWC6NxYAfYK4w" x="102" y="174" width="153" height="94"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_nbCzAOx1EeWC6NxYAfYK4w" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_nbDaEOx1EeWC6NxYAfYK4w" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_nbDaEex1EeWC6NxYAfYK4w" type="6054">
+ <children xmi:type="notation:Shape" xmi:id="_nbCzAOx1EeWC6NxYAfYK4w" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nbDaEOx1EeWC6NxYAfYK4w" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_nbDaEex1EeWC6NxYAfYK4w" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_nbDaEux1EeWC6NxYAfYK4w" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_nbDaE-x1EeWC6NxYAfYK4w" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nbDaE-x1EeWC6NxYAfYK4w" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_nbDaFOx1EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_nbDaFex1EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_nbI5oOx1EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_nbI5oux1EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_nbI5oOx1EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nbI5oux1EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_nbI5o-x1EeWC6NxYAfYK4w" x="23" y="29"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_nbI5pOx1EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nbI5pOx1EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_nbI5pex1EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_7KnxcOx0EeWC6NxYAfYK4w"/>
@@ -106,30 +106,30 @@
<element xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_na-hkOx1EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_nbCzAex1EeWC6NxYAfYK4w" x="621" y="174" width="165" height="94"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_pENwQOx1EeWC6NxYAfYK4w" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_pEOXUOx1EeWC6NxYAfYK4w" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_pEOXUex1EeWC6NxYAfYK4w" type="6054">
+ <children xmi:type="notation:Shape" xmi:id="_pENwQOx1EeWC6NxYAfYK4w" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pEOXUOx1EeWC6NxYAfYK4w" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_pEOXUex1EeWC6NxYAfYK4w" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_pEOXUux1EeWC6NxYAfYK4w" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_pEOXU-x1EeWC6NxYAfYK4w" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_pEOXU-x1EeWC6NxYAfYK4w" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_pEOXVOx1EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_pEOXVex1EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_pEUd8Ox1EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_pEUd8ux1EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_pEUd8Ox1EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pEUd8ux1EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_pEVFAOx1EeWC6NxYAfYK4w" x="25" y="21"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_pEVFAex1EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pEVFAex1EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_pEVFAux1EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#__LipMOx0EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_pEUd8ex1EeWC6NxYAfYK4w" y="49" width="20" height="20"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_pEVsEOx1EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_pEVsEux1EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_pEVsEOx1EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pEVsEux1EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_pEVsE-x1EeWC6NxYAfYK4w" x="-104" y="-15"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_pEWTIOx1EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pEWTIOx1EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_pEWTIex1EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_G9Er0Ox1EeWC6NxYAfYK4w"/>
@@ -159,17 +159,85 @@
<element xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_pEJe0Ox1EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_pENwQex1EeWC6NxYAfYK4w" x="357" y="174" width="162" height="94"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_5cdUkOx2EeWC6NxYAfYK4w" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_5cd7oOx2EeWC6NxYAfYK4w" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_5cd7oex2EeWC6NxYAfYK4w" type="6054">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_5cd7oux2EeWC6NxYAfYK4w" y="5"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_5cd7o-x2EeWC6NxYAfYK4w" type="7077">
- <styles xmi:type="notation:TitleStyle" xmi:id="_5cd7pOx2EeWC6NxYAfYK4w"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5cd7pex2EeWC6NxYAfYK4w"/>
- </children>
- <element xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_5cGIMOx2EeWC6NxYAfYK4w"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5cdUkex2EeWC6NxYAfYK4w" x="683" y="8"/>
+ <children xmi:type="notation:Shape" xmi:id="_rcnJUN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rcnJUd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rcnwYN9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_h0QwsOx1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rcnJUt9MEeazo4k7FdcQuw" x="302" y="174"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_rdAK4N9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rdAK4d9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rdAK499MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_xAQPMOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rdAK4t9MEeazo4k7FdcQuw" x="220"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_rdUT8N9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rdUT8d9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rdUT899MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_2QxGkOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rdUT8t9MEeazo4k7FdcQuw" x="353" y="48"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_rdi9cN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rdi9cd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rdi9c99MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortOptionalMixedPassThrough.uml#_2JNQkOx1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rdi9ct9MEeazo4k7FdcQuw" x="100" y="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_rdq5QN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rdq5Qd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rdrgUN9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_na-hkOx1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rdq5Qt9MEeazo4k7FdcQuw" x="821" y="174"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_rd14YN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rd14Yd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rd14Y99MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_7KnxcOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rd14Yt9MEeazo4k7FdcQuw" x="200" y="47"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_reCFoN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_reCFod9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_reCFo99MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_pEJe0Ox1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_reCFot9MEeazo4k7FdcQuw" x="557" y="174"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_reNr0N9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_reNr0d9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_reNr099MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#__LipMOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_reNr0t9MEeazo4k7FdcQuw" x="200" y="49"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_reeKgN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_reeKgd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_reeKg99MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_G9Er0Ox1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_reeKgt9MEeazo4k7FdcQuw" x="362" y="48"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_reqXwN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_reqXwd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_req-0N9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortOptionalMixedPassThrough.uml#_3bTxoOx1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_reqXwt9MEeazo4k7FdcQuw" x="100" y="100"/>
</children>
<styles xmi:type="notation:TitleStyle" xmi:id="_X0-ShOx0EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_X0-Shex0EeWC6NxYAfYK4w"/>
@@ -212,21 +280,21 @@
<element xmi:type="uml:Stereotype" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_LEi4sLtiEeSTjNEQkASznQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_tQ_II-x0EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_RYYNEOx1EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_RYY0IOx1EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_RYYNEOx1EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_RYY0IOx1EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_RYY0Iex1EeWC6NxYAfYK4w" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_RYY0Iux1EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_RYY0Iux1EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_RYY0I-x1EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_PaI-wOx1EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_RYYNEex1EeWC6NxYAfYK4w" x="128" y="97" width="20" height="20"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_bH-e4Ox1EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_bH-e4ux1EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_bH-e4Ox1EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bH-e4ux1EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_bH-e4-x1EeWC6NxYAfYK4w" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_bH-e5Ox1EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bH-e5Ox1EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_bH-e5ex1EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_Ze8EgOx1EeWC6NxYAfYK4w"/>
@@ -259,25 +327,37 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_GanQQux7EeWPb9iOQHsbpA" x="190" y="34"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_X0r-oex0EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <children xmi:type="notation:Shape" xmi:id="_rX3MMN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rX3MMd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rX3zQN9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_Xz24MOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rX3MMt9MEeazo4k7FdcQuw" x="240" y="40"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_X0r-oex0EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_X0r-oux0EeWC6NxYAfYK4w"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_X0r-o-x0EeWC6NxYAfYK4w">
<owner xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_Xz24MOx0EeWC6NxYAfYK4w"/>
<configuration xmi:type="configuration:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrusrt.umlrt.tooling.diagram.common/configuration/UMLRT.configuration#_Z79eQHcZEeSnWeKqQOfW2A"/>
</styles>
<element xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_Xz24MOx0EeWC6NxYAfYK4w"/>
- <edges xmi:type="notation:Connector" xmi:id="_0JgCoOx1EeWC6NxYAfYK4w" type="4013" source="_RYYNEOx1EeWC6NxYAfYK4w" target="_h0h2cOx1EeWC6NxYAfYK4w">
- <children xmi:type="notation:DecorationNode" xmi:id="_0JgCo-x1EeWC6NxYAfYK4w" type="6025">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_0JgCpOx1EeWC6NxYAfYK4w" x="-2" y="41"/>
+ <edges xmi:type="notation:Connector" xmi:id="_0JgCoOx1EeWC6NxYAfYK4w" type="Connector_Edge" source="_RYYNEOx1EeWC6NxYAfYK4w" target="_h0h2cOx1EeWC6NxYAfYK4w">
+ <children xmi:type="notation:DecorationNode" xmi:id="_0JgCo-x1EeWC6NxYAfYK4w" type="Connector_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_svQc8N9MEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_0JgCpOx1EeWC6NxYAfYK4w" x="2" y="38"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_0JgCpex1EeWC6NxYAfYK4w" type="6050">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_0JgCpux1EeWC6NxYAfYK4w" y="-41"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_0JgCpex1EeWC6NxYAfYK4w" type="Connector_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sv3g8N9MEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_0JgCpux1EeWC6NxYAfYK4w" x="-1" y="-41"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_0JgCp-x1EeWC6NxYAfYK4w" type="6051">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_0JgCqOx1EeWC6NxYAfYK4w" y="20"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_0JgCp-x1EeWC6NxYAfYK4w" type="Connector_SourceMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_swek8N9MEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_0JgCqOx1EeWC6NxYAfYK4w" x="-10" y="18"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_0JgpsOx1EeWC6NxYAfYK4w" type="6052">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_0Jgpsex1EeWC6NxYAfYK4w" y="20"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_0JgpsOx1EeWC6NxYAfYK4w" type="Connector_TargetMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sxHeIN9MEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_0Jgpsex1EeWC6NxYAfYK4w" x="11" y="17"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_0JgCoex1EeWC6NxYAfYK4w"/>
<element xmi:type="uml:Connector" href="RelayPortOptionalMixedPassThrough.uml#_0JD9wOx1EeWC6NxYAfYK4w"/>
@@ -285,17 +365,17 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0KdE4Ox1EeWC6NxYAfYK4w" id="(0.6,1.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0KdE4ex1EeWC6NxYAfYK4w" id="(0.45,0.0)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_2JgLgOx1EeWC6NxYAfYK4w" type="4013" source="_h0jEkOx1EeWC6NxYAfYK4w" target="_pEUd8Ox1EeWC6NxYAfYK4w">
- <children xmi:type="notation:DecorationNode" xmi:id="_2JgLg-x1EeWC6NxYAfYK4w" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_2JgLgOx1EeWC6NxYAfYK4w" type="Connector_Edge" source="_h0jEkOx1EeWC6NxYAfYK4w" target="_pEUd8Ox1EeWC6NxYAfYK4w">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2JgLg-x1EeWC6NxYAfYK4w" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_2JgLhOx1EeWC6NxYAfYK4w" y="10"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_2JgLhex1EeWC6NxYAfYK4w" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2JgLhex1EeWC6NxYAfYK4w" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_2JgLhux1EeWC6NxYAfYK4w" y="-8"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_2JgLh-x1EeWC6NxYAfYK4w" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2JgLh-x1EeWC6NxYAfYK4w" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_2JgLiOx1EeWC6NxYAfYK4w" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_2JgLiex1EeWC6NxYAfYK4w" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2JgLiex1EeWC6NxYAfYK4w" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_2JgLiux1EeWC6NxYAfYK4w" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_2JgLgex1EeWC6NxYAfYK4w"/>
@@ -304,17 +384,17 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2KV5AOx1EeWC6NxYAfYK4w" id="(1.0,0.45)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2KV5Aex1EeWC6NxYAfYK4w" id="(0.0,0.45)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_3bnToOx1EeWC6NxYAfYK4w" type="4013" source="_pEVsEOx1EeWC6NxYAfYK4w" target="_nbI5oOx1EeWC6NxYAfYK4w">
- <children xmi:type="notation:DecorationNode" xmi:id="_3bnTo-x1EeWC6NxYAfYK4w" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_3bnToOx1EeWC6NxYAfYK4w" type="Connector_Edge" source="_pEVsEOx1EeWC6NxYAfYK4w" target="_nbI5oOx1EeWC6NxYAfYK4w">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3bnTo-x1EeWC6NxYAfYK4w" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_3bnTpOx1EeWC6NxYAfYK4w" x="1" y="9"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_3bnTpex1EeWC6NxYAfYK4w" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3bnTpex1EeWC6NxYAfYK4w" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_3bn6sOx1EeWC6NxYAfYK4w" y="-9"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_3bn6sex1EeWC6NxYAfYK4w" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3bn6sex1EeWC6NxYAfYK4w" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_3bn6sux1EeWC6NxYAfYK4w" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_3bn6s-x1EeWC6NxYAfYK4w" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3bn6s-x1EeWC6NxYAfYK4w" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_3bn6tOx1EeWC6NxYAfYK4w" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_3bnToex1EeWC6NxYAfYK4w"/>
@@ -353,6 +433,116 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Gan3UOx7EeWPb9iOQHsbpA"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Gan3Uex7EeWPb9iOQHsbpA"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_rX4aUN9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_X06oIOx0EeWC6NxYAfYK4w" target="_rX3MMN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_rX4aUd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rX5BYN9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_Xz24MOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rX4aUt9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rX4aU99MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rX4aVN9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_rcnwYd9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_h0bIwOx1EeWC6NxYAfYK4w" target="_rcnJUN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_rcnwYt9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rcoXcN9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_h0QwsOx1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rcnwY99MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rcnwZN9MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rcnwZd9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_rdAK5N9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_h0h2cOx1EeWC6NxYAfYK4w" target="_rdAK4N9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_rdAK5d9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rdAx8N9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_xAQPMOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rdAK5t9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rdAK599MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rdAK6N9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_rdUT9N9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_h0jEkOx1EeWC6NxYAfYK4w" target="_rdUT8N9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_rdUT9d9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rdU7AN9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_2QxGkOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rdUT9t9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rdUT999MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rdUT-N9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_rdi9dN9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_2JgLgOx1EeWC6NxYAfYK4w" target="_rdi9cN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_rdi9dd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rdjkgt9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortOptionalMixedPassThrough.uml#_2JNQkOx1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rdi9dt9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rdjkgN9MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rdjkgd9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_rdrgUd9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_nbCzAOx1EeWC6NxYAfYK4w" target="_rdq5QN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_rdrgUt9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rdrgVt9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_na-hkOx1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rdrgU99MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rdrgVN9MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rdrgVd9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_rd14ZN9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_nbI5oOx1EeWC6NxYAfYK4w" target="_rd14YN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_rd14Zd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rd2fct9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_7KnxcOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rd14Zt9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rd2fcN9MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rd2fcd9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_reCFpN9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_pENwQOx1EeWC6NxYAfYK4w" target="_reCFoN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_reCFpd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_reCsst9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_pEJe0Ox1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_reCFpt9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_reCssN9MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_reCssd9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_reNr1N9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_pEUd8Ox1EeWC6NxYAfYK4w" target="_reNr0N9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_reNr1d9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_reOS4N9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#__LipMOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_reNr1t9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_reNr199MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_reNr2N9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_reeKhN9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_pEVsEOx1EeWC6NxYAfYK4w" target="_reeKgN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_reeKhd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_reexkN9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_G9Er0Ox1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_reeKht9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_reeKh99MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_reeKiN9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_req-0d9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_3bnToOx1EeWC6NxYAfYK4w" target="_reqXwN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_req-0t9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_req-1t9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortOptionalMixedPassThrough.uml#_3bTxoOx1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_req-099MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_req-1N9MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_req-1d9MEeazo4k7FdcQuw"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_ZYFEAOx0EeWC6NxYAfYK4w" type="CompositeStructure" measurementUnit="Pixel">
<children xmi:type="notation:Shape" xmi:id="_ZYFrEOx0EeWC6NxYAfYK4w" type="2073">
@@ -470,12 +660,12 @@
</edges>
</notation:Diagram>
<notation:Diagram xmi:id="_bUfGUOx0EeWC6NxYAfYK4w" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_bUftYOx0EeWC6NxYAfYK4w" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_bUftYux0EeWC6NxYAfYK4w" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_bUgUcOx0EeWC6NxYAfYK4w" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_bUftYOx0EeWC6NxYAfYK4w" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bUftYux0EeWC6NxYAfYK4w" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bUgUcOx0EeWC6NxYAfYK4w" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_bUgUcex0EeWC6NxYAfYK4w" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_bUgUcux0EeWC6NxYAfYK4w" type="7073">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bUgUcux0EeWC6NxYAfYK4w" type="Class_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_bUgUc-x0EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_bUgUdOx0EeWC6NxYAfYK4w"/>
</children>
@@ -517,11 +707,11 @@
<element xmi:type="uml:Stereotype" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_LEi4sLtiEeSTjNEQkASznQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_vGwW8-x0EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_8OZioOx0EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_8OZioux0EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_8OZioOx0EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8OZioux0EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_8OZio-x0EeWC6NxYAfYK4w" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_8OZipOx0EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8OZipOx0EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_8OZipex0EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_7KnxcOx0EeWC6NxYAfYK4w"/>
@@ -538,7 +728,15 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_GhZNsux7EeWPb9iOQHsbpA" x="190" y="127"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_bUfGUex0EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <children xmi:type="notation:Shape" xmi:id="_6MNKQN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_6MNKQd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_6MNKQ99MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_bULkUOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6MNKQt9MEeazo4k7FdcQuw" x="240" y="40"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_bUfGUex0EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_bUfGUux0EeWC6NxYAfYK4w"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_bUfGU-x0EeWC6NxYAfYK4w">
<owner xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_bULkUOx0EeWC6NxYAfYK4w"/>
@@ -555,28 +753,38 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GhZNt-x7EeWPb9iOQHsbpA"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GhZNuOx7EeWPb9iOQHsbpA"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_6MNKRN9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_bUftYOx0EeWC6NxYAfYK4w" target="_6MNKQN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_6MNKRd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_6MNKSd9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_bULkUOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6MNKRt9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6MNKR99MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6MNKSN9MEeazo4k7FdcQuw"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_dWDVcOx0EeWC6NxYAfYK4w" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_dWD8gOx0EeWC6NxYAfYK4w" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_dWD8gux0EeWC6NxYAfYK4w" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_dWD8g-x0EeWC6NxYAfYK4w" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_dWD8gOx0EeWC6NxYAfYK4w" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dWD8gux0EeWC6NxYAfYK4w" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_dWD8g-x0EeWC6NxYAfYK4w" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_dWD8hOx0EeWC6NxYAfYK4w" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_dWD8hex0EeWC6NxYAfYK4w" type="7073">
- <children xmi:type="notation:Shape" xmi:id="_-zm04Ox1EeWC6NxYAfYK4w" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_-znb8Ox1EeWC6NxYAfYK4w" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_-znb8ex1EeWC6NxYAfYK4w" type="6054">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_dWD8hex0EeWC6NxYAfYK4w" type="Class_StructureCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_-zm04Ox1EeWC6NxYAfYK4w" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-znb8Ox1EeWC6NxYAfYK4w" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_-znb8ex1EeWC6NxYAfYK4w" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_-znb8ux1EeWC6NxYAfYK4w" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_-znb8-x1EeWC6NxYAfYK4w" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_-znb8-x1EeWC6NxYAfYK4w" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_-znb9Ox1EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_-znb9ex1EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_-zsUcOx1EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_-zs7gOx1EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_-zsUcOx1EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-zs7gOx1EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_-zs7gex1EeWC6NxYAfYK4w" x="22" y="23"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_-zs7gux1EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-zs7gux1EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_-zs7g-x1EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_7KnxcOx0EeWC6NxYAfYK4w"/>
@@ -606,6 +814,22 @@
<element xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_9i2XoOx1EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_-zm04ex1EeWC6NxYAfYK4w" x="159" y="141" width="174" height="73"/>
</children>
+ <children xmi:type="notation:Shape" xmi:id="_DLxtUN9NEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_DLxtUd9NEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_DLxtU99NEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_9i2XoOx1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DLxtUt9NEeazo4k7FdcQuw" x="359" y="141"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_DL3z9N9NEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_DL3z9d9NEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_DL4bAN9NEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_7KnxcOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DL3z9t9NEeazo4k7FdcQuw" x="200" y="37"/>
+ </children>
<styles xmi:type="notation:TitleStyle" xmi:id="_dWD8hux0EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_dWD8h-x0EeWC6NxYAfYK4w"/>
</children>
@@ -647,21 +871,21 @@
<element xmi:type="uml:Stereotype" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_LEi4sLtiEeSTjNEQkASznQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_vb-ZA-x0EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_ABZTIOx1EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_ABZTIux1EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_ABZTIOx1EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ABZTIux1EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_ABZTI-x1EeWC6NxYAfYK4w" x="21" y="-13"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_ABZTJOx1EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ABZTJOx1EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_ABZTJex1EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#__LipMOx0EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ABZTIex1EeWC6NxYAfYK4w" y="131" width="20" height="20"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_HxjcwOx1EeWC6NxYAfYK4w" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_Hxjcwux1EeWC6NxYAfYK4w" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_HxjcwOx1EeWC6NxYAfYK4w" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Hxjcwux1EeWC6NxYAfYK4w" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Hxjcw-x1EeWC6NxYAfYK4w" x="-103" y="-10"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_HxkD0Ox1EeWC6NxYAfYK4w" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_HxkD0Ox1EeWC6NxYAfYK4w" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_HxkD0ex1EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_G9Er0Ox1EeWC6NxYAfYK4w"/>
@@ -702,24 +926,32 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_GkeW4ux7EeWPb9iOQHsbpA" x="690" y="130"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_dWDVcex0EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <children xmi:type="notation:Shape" xmi:id="_DLq_oN9NEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_DLq_od9NEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_DLq_o99NEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_dVzd0Ox0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DLq_ot9NEeazo4k7FdcQuw" x="240" y="40"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_dWDVcex0EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_dWDVcux0EeWC6NxYAfYK4w"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_dWDVc-x0EeWC6NxYAfYK4w">
<owner xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_dVzd0Ox0EeWC6NxYAfYK4w"/>
<configuration xmi:type="configuration:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrusrt.umlrt.tooling.diagram.common/configuration/UMLRT.configuration#_Z79eQHcZEeSnWeKqQOfW2A"/>
</styles>
<element xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_dVzd0Ox0EeWC6NxYAfYK4w"/>
- <edges xmi:type="notation:Connector" xmi:id="_GrG8oOx2EeWC6NxYAfYK4w" type="4013" source="_ABZTIOx1EeWC6NxYAfYK4w" target="_HxjcwOx1EeWC6NxYAfYK4w">
- <children xmi:type="notation:DecorationNode" xmi:id="_GrHjsOx2EeWC6NxYAfYK4w" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_GrG8oOx2EeWC6NxYAfYK4w" type="Connector_Edge" source="_ABZTIOx1EeWC6NxYAfYK4w" target="_HxjcwOx1EeWC6NxYAfYK4w">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GrHjsOx2EeWC6NxYAfYK4w" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GrHjsex2EeWC6NxYAfYK4w" x="-3" y="10"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_GrHjsux2EeWC6NxYAfYK4w" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GrHjsux2EeWC6NxYAfYK4w" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GrHjs-x2EeWC6NxYAfYK4w" x="-3" y="-9"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_GrHjtOx2EeWC6NxYAfYK4w" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GrHjtOx2EeWC6NxYAfYK4w" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GrHjtex2EeWC6NxYAfYK4w" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_GrHjtux2EeWC6NxYAfYK4w" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GrHjtux2EeWC6NxYAfYK4w" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GrHjt-x2EeWC6NxYAfYK4w" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_GrG8oex2EeWC6NxYAfYK4w"/>
@@ -728,17 +960,17 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GrsLcOx2EeWC6NxYAfYK4w" id="(1.0,0.8)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HLiwMOx2EeWC6NxYAfYK4w" id="(0.0,0.5)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_LKLI8Ox2EeWC6NxYAfYK4w" type="4013" source="_ABZTIOx1EeWC6NxYAfYK4w" target="_-zsUcOx1EeWC6NxYAfYK4w">
- <children xmi:type="notation:DecorationNode" xmi:id="_LKLwAOx2EeWC6NxYAfYK4w" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_LKLI8Ox2EeWC6NxYAfYK4w" type="Connector_Edge" source="_ABZTIOx1EeWC6NxYAfYK4w" target="_-zsUcOx1EeWC6NxYAfYK4w">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LKLwAOx2EeWC6NxYAfYK4w" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_LKLwAex2EeWC6NxYAfYK4w" x="30" y="10"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_LKLwAux2EeWC6NxYAfYK4w" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LKLwAux2EeWC6NxYAfYK4w" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_LKLwA-x2EeWC6NxYAfYK4w" x="31" y="-10"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_LKLwBOx2EeWC6NxYAfYK4w" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LKLwBOx2EeWC6NxYAfYK4w" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_LKLwBex2EeWC6NxYAfYK4w" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_LKLwBux2EeWC6NxYAfYK4w" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LKLwBux2EeWC6NxYAfYK4w" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_LKLwB-x2EeWC6NxYAfYK4w" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_LKLI8ex2EeWC6NxYAfYK4w"/>
@@ -787,23 +1019,53 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GkeW5-x7EeWPb9iOQHsbpA"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GkeW6Ox7EeWPb9iOQHsbpA"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_DLq_pN9NEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_dWD8gOx0EeWC6NxYAfYK4w" target="_DLq_oN9NEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_DLq_pd9NEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_DLq_qd9NEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalMixedPassThrough.uml#_dVzd0Ox0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DLq_pt9NEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DLq_p99NEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DLq_qN9NEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_DLxtVN9NEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_-zm04Ox1EeWC6NxYAfYK4w" target="_DLxtUN9NEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_DLxtVd9NEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_DLxtWd9NEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalMixedPassThrough.uml#_9i2XoOx1EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DLxtVt9NEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DLxtV99NEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DLxtWN9NEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_DL4bAd9NEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_-zsUcOx1EeWC6NxYAfYK4w" target="_DL3z9N9NEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_DL4bAt9NEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_DL4bBt9NEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalMixedPassThrough.uml#_7KnxcOx0EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DL4bA99NEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DL4bBN9NEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DL4bBd9NEeazo4k7FdcQuw"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_SFeuMOx2EeWC6NxYAfYK4w" type="PapyrusUMLStateMachineDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_SFeuMex2EeWC6NxYAfYK4w" type="2000">
- <children xmi:type="notation:DecorationNode" xmi:id="_SFeuMux2EeWC6NxYAfYK4w" type="2001">
+ <children xmi:type="notation:Shape" xmi:id="_SFeuMex2EeWC6NxYAfYK4w" type="StateMachine_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_SFeuMux2EeWC6NxYAfYK4w" type="StateMachine_NameLabel">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_SFeuM-x2EeWC6NxYAfYK4w" width="700" height="16"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_SFeuNOx2EeWC6NxYAfYK4w" type="2002">
- <children xmi:type="notation:Shape" xmi:id="_SFeuNex2EeWC6NxYAfYK4w" type="3000">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_vL_lIN9MEeazo4k7FdcQuw" type="StateMachine_RegionCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_SFeuNex2EeWC6NxYAfYK4w" type="Region_Shape">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_SFeuNux2EeWC6NxYAfYK4w" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_SFeuN-x2EeWC6NxYAfYK4w" key="RegionZoneKey" value=""/>
</eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_SFeuOOx2EeWC6NxYAfYK4w" type="3002">
- <children xmi:type="notation:Shape" xmi:id="_TneFYOx2EeWC6NxYAfYK4w" type="8000">
- <children xmi:type="notation:DecorationNode" xmi:id="_TneFYux2EeWC6NxYAfYK4w" type="8001">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_vMAzQN9MEeazo4k7FdcQuw" type="Region_SubvertexCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_TneFYOx2EeWC6NxYAfYK4w" type="Pseudostate_InitialShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_TneFYux2EeWC6NxYAfYK4w" type="Pseudostate_InitialFloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_TneFY-x2EeWC6NxYAfYK4w" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_TneFZOx2EeWC6NxYAfYK4w" type="8002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_TneFZOx2EeWC6NxYAfYK4w" type="Pseudostate_InitialStereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_TneFZex2EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="RelayPortOptionalMixedPassThrough.uml#_SEkvQOx2EeWC6NxYAfYK4w"/>
@@ -817,13 +1079,15 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Tni95ex2EeWC6NxYAfYK4w" x="200"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_UODkQOx2EeWC6NxYAfYK4w" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_UODkQux2EeWC6NxYAfYK4w" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_UODkQ-x2EeWC6NxYAfYK4w" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_UODkQOx2EeWC6NxYAfYK4w" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_UODkQux2EeWC6NxYAfYK4w" type="State_NameLabel">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wC7NIN9MEeazo4k7FdcQuw" width="137"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_UODkQ-x2EeWC6NxYAfYK4w" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_UODkROx2EeWC6NxYAfYK4w" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_UODkRex2EeWC6NxYAfYK4w" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UODkRux2EeWC6NxYAfYK4w"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_vMBaUN9MEeazo4k7FdcQuw" type="State_RegionCompartment">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UODkRux2EeWC6NxYAfYK4w" y="-1" width="137"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_UOJq4Ox2EeWC6NxYAfYK4w" type="StereotypeLabel">
<styles xmi:type="notation:StringValueStyle" xmi:id="_UOJq4ex2EeWC6NxYAfYK4w" name="stereotype" stringValue="UMLRealTimeStateMach::RTState"/>
@@ -846,12 +1110,23 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOK5C-x2EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_ihSZUOx2EeWC6NxYAfYK4w" type="690">
+ <children xmi:type="notation:Shape" xmi:id="_ihSZUOx2EeWC6NxYAfYK4w" type="Behavior_EntryBehaviorLabel">
<element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalMixedPassThrough.uml#_ig4wsOx2EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_ihSZUex2EeWC6NxYAfYK4w"/>
</children>
+ <children xmi:type="notation:Compartment" xmi:id="_vWUl0N9MEeazo4k7FdcQuw" type="InternalTransitions">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wC7NId9MEeazo4k7FdcQuw"/>
+ </children>
<element xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_UN8PgOx2EeWC6NxYAfYK4w"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UODkQex2EeWC6NxYAfYK4w" x="134" y="106"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UODkQex2EeWC6NxYAfYK4w" x="134" y="106" width="137" height="65"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_vWY3QN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_vWY3Qd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_vWY3Q99MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_UN8PgOx2EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vWY3Qt9MEeazo4k7FdcQuw" x="334" y="106"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_SFeuOex2EeWC6NxYAfYK4w"/>
</children>
@@ -879,7 +1154,7 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TBqpp-x2EeWC6NxYAfYK4w" x="230" y="30"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_SFeuPex2EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_SFeuPex2EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_SFeuPux2EeWC6NxYAfYK4w"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_SFeuP-x2EeWC6NxYAfYK4w">
<owner xmi:type="uml:StateMachine" href="RelayPortOptionalMixedPassThrough.uml#_SEdagOx2EeWC6NxYAfYK4w"/>
@@ -916,14 +1191,14 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Tni96ux2EeWC6NxYAfYK4w"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Tni96-x2EeWC6NxYAfYK4w"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_VUSzkOx2EeWC6NxYAfYK4w" type="7000" source="_TneFYOx2EeWC6NxYAfYK4w" target="_UODkQOx2EeWC6NxYAfYK4w">
- <children xmi:type="notation:DecorationNode" xmi:id="_VUSzk-x2EeWC6NxYAfYK4w" type="7001">
+ <edges xmi:type="notation:Connector" xmi:id="_VUSzkOx2EeWC6NxYAfYK4w" type="Transition_Edge" source="_TneFYOx2EeWC6NxYAfYK4w" target="_UODkQOx2EeWC6NxYAfYK4w">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VUSzk-x2EeWC6NxYAfYK4w" type="Transition_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_VUSzlOx2EeWC6NxYAfYK4w" y="-13"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_VUSzlex2EeWC6NxYAfYK4w" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VUSzlex2EeWC6NxYAfYK4w" type="Transition_GuardLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_VUSzlux2EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_VUSzl-x2EeWC6NxYAfYK4w" type="7003">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VUSzl-x2EeWC6NxYAfYK4w" type="Transition_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_VUSzmOx2EeWC6NxYAfYK4w" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_VUSzkex2EeWC6NxYAfYK4w"/>
@@ -932,23 +1207,33 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VUlHcOx2EeWC6NxYAfYK4w" id="(1.0,0.7)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VUlugOx2EeWC6NxYAfYK4w" id="(0.0,0.0)"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_vWZeUN9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_UODkQOx2EeWC6NxYAfYK4w" target="_vWY3QN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_vWZeUd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_vWZeVd9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_UN8PgOx2EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_vWZeUt9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vWZeU99MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vWZeVN9MEeazo4k7FdcQuw"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_PAXh8Ox3EeWC6NxYAfYK4w" type="PapyrusUMLStateMachineDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_PAXh8ex3EeWC6NxYAfYK4w" type="2000">
- <children xmi:type="notation:DecorationNode" xmi:id="_PAXh8ux3EeWC6NxYAfYK4w" type="2001">
+ <children xmi:type="notation:Shape" xmi:id="_PAXh8ex3EeWC6NxYAfYK4w" type="StateMachine_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_PAXh8ux3EeWC6NxYAfYK4w" type="StateMachine_NameLabel">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_PAXh8-x3EeWC6NxYAfYK4w" width="700" height="16"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_PAXh9Ox3EeWC6NxYAfYK4w" type="2002">
- <children xmi:type="notation:Shape" xmi:id="_PAXh9ex3EeWC6NxYAfYK4w" type="3000">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_17qiIN9MEeazo4k7FdcQuw" type="StateMachine_RegionCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_PAXh9ex3EeWC6NxYAfYK4w" type="Region_Shape">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PAXh9ux3EeWC6NxYAfYK4w" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PAXh9-x3EeWC6NxYAfYK4w" key="RegionZoneKey" value=""/>
</eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_PAXh-Ox3EeWC6NxYAfYK4w" type="3002">
- <children xmi:type="notation:Shape" xmi:id="_QI-IwOx3EeWC6NxYAfYK4w" type="8000">
- <children xmi:type="notation:DecorationNode" xmi:id="_QI-v0Ox3EeWC6NxYAfYK4w" type="8001">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_17rJMN9MEeazo4k7FdcQuw" type="Region_SubvertexCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_QI-IwOx3EeWC6NxYAfYK4w" type="Pseudostate_InitialShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QI-v0Ox3EeWC6NxYAfYK4w" type="Pseudostate_InitialFloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_QI-v0ex3EeWC6NxYAfYK4w" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_QI-v0ux3EeWC6NxYAfYK4w" type="8002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QI-v0ux3EeWC6NxYAfYK4w" type="Pseudostate_InitialStereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_QI-v0-x3EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="RelayPortOptionalMixedPassThrough.uml#_O_7dEOx3EeWC6NxYAfYK4w"/>
@@ -962,12 +1247,12 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_QJDoUux3EeWC6NxYAfYK4w" x="200"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_QomEAOx3EeWC6NxYAfYK4w" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_QomEAux3EeWC6NxYAfYK4w" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_QomEA-x3EeWC6NxYAfYK4w" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_QomEAOx3EeWC6NxYAfYK4w" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QomEAux3EeWC6NxYAfYK4w" type="State_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_QomEA-x3EeWC6NxYAfYK4w" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_QomEBOx3EeWC6NxYAfYK4w" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_QomrEOx3EeWC6NxYAfYK4w" type="6002">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_17rwQN9MEeazo4k7FdcQuw" type="State_RegionCompartment">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_QomrEex3EeWC6NxYAfYK4w"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_QovN8Ox3EeWC6NxYAfYK4w" type="StereotypeLabel">
@@ -991,19 +1276,20 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_QowcF-x3EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_dxmhoOx3EeWC6NxYAfYK4w" type="690">
+ <children xmi:type="notation:Shape" xmi:id="_dxmhoOx3EeWC6NxYAfYK4w" type="Behavior_EntryBehaviorLabel">
<element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalMixedPassThrough.uml#_dxiQMOx3EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_dxmhoex3EeWC6NxYAfYK4w"/>
</children>
+ <children xmi:type="notation:Compartment" xmi:id="_19gVMN9MEeazo4k7FdcQuw" type="InternalTransitions"/>
<element xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_QocTAOx3EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_QomEAex3EeWC6NxYAfYK4w" x="168" y="122"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_SFFQIOx3EeWC6NxYAfYK4w" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_SFFQIux3EeWC6NxYAfYK4w" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_SFFQI-x3EeWC6NxYAfYK4w" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_SFFQIOx3EeWC6NxYAfYK4w" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_SFFQIux3EeWC6NxYAfYK4w" type="State_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_SFFQI-x3EeWC6NxYAfYK4w" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_SFFQJOx3EeWC6NxYAfYK4w" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_SFFQJex3EeWC6NxYAfYK4w" type="6002">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_17rwQd9MEeazo4k7FdcQuw" type="State_RegionCompartment">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_SFFQJux3EeWC6NxYAfYK4w"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_SFMk4Ox3EeWC6NxYAfYK4w" type="StereotypeLabel">
@@ -1027,13 +1313,30 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_SFNzDex3EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_tHUHYOx3EeWC6NxYAfYK4w" type="690">
+ <children xmi:type="notation:Shape" xmi:id="_tHUHYOx3EeWC6NxYAfYK4w" type="Behavior_EntryBehaviorLabel">
<element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalMixedPassThrough.uml#_tHOAwOx3EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_tHUHYex3EeWC6NxYAfYK4w"/>
</children>
+ <children xmi:type="notation:Compartment" xmi:id="_19o4EN9MEeazo4k7FdcQuw" type="InternalTransitions"/>
<element xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_SE8GMOx3EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_SFFQIex3EeWC6NxYAfYK4w" x="450" y="125"/>
</children>
+ <children xmi:type="notation:Shape" xmi:id="_19iKYN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_19iKYd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_19iKY99MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_QocTAOx3EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_19iKYt9MEeazo4k7FdcQuw" x="368" y="122"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_19qGMN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_19qGMd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_19qGM99MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_SE8GMOx3EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_19qGMt9MEeazo4k7FdcQuw" x="650" y="125"/>
+ </children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_PAXh-ex3EeWC6NxYAfYK4w"/>
</children>
<element xmi:type="uml:Region" href="RelayPortOptionalMixedPassThrough.uml#_O_5A0Ox3EeWC6NxYAfYK4w"/>
@@ -1060,7 +1363,7 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_PfTgsux3EeWC6NxYAfYK4w" x="230" y="30"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_PAXh_ex3EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_PAXh_ex3EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_PAXh_ux3EeWC6NxYAfYK4w"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_PAXh_-x3EeWC6NxYAfYK4w">
<owner xmi:type="uml:StateMachine" href="RelayPortOptionalMixedPassThrough.uml#_O_2kkOx3EeWC6NxYAfYK4w"/>
@@ -1097,14 +1400,14 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QJDoV-x3EeWC6NxYAfYK4w"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QJDoWOx3EeWC6NxYAfYK4w"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_UDdoYOx3EeWC6NxYAfYK4w" type="7000" source="_QI-IwOx3EeWC6NxYAfYK4w" target="_QomEAOx3EeWC6NxYAfYK4w">
- <children xmi:type="notation:DecorationNode" xmi:id="_UDePcOx3EeWC6NxYAfYK4w" type="7001">
+ <edges xmi:type="notation:Connector" xmi:id="_UDdoYOx3EeWC6NxYAfYK4w" type="Transition_Edge" source="_QI-IwOx3EeWC6NxYAfYK4w" target="_QomEAOx3EeWC6NxYAfYK4w">
+ <children xmi:type="notation:DecorationNode" xmi:id="_UDePcOx3EeWC6NxYAfYK4w" type="Transition_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_UDePcex3EeWC6NxYAfYK4w" x="3" y="-12"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_UDePcux3EeWC6NxYAfYK4w" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_UDePcux3EeWC6NxYAfYK4w" type="Transition_GuardLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_UDePc-x3EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_UDePdOx3EeWC6NxYAfYK4w" type="7003">
+ <children xmi:type="notation:DecorationNode" xmi:id="_UDePdOx3EeWC6NxYAfYK4w" type="Transition_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_UDePdex3EeWC6NxYAfYK4w" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_UDdoYex3EeWC6NxYAfYK4w"/>
@@ -1113,14 +1416,14 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UDyYgOx3EeWC6NxYAfYK4w" id="(1.0,0.95)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UDyYgex3EeWC6NxYAfYK4w" id="(0.0,0.225)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_VKI8kOx3EeWC6NxYAfYK4w" type="7000" source="_QomEAOx3EeWC6NxYAfYK4w" target="_SFFQIOx3EeWC6NxYAfYK4w">
- <children xmi:type="notation:DecorationNode" xmi:id="_VKJjoOx3EeWC6NxYAfYK4w" type="7001">
+ <edges xmi:type="notation:Connector" xmi:id="_VKI8kOx3EeWC6NxYAfYK4w" type="Transition_Edge" source="_QomEAOx3EeWC6NxYAfYK4w" target="_SFFQIOx3EeWC6NxYAfYK4w">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VKJjoOx3EeWC6NxYAfYK4w" type="Transition_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_VKJjoex3EeWC6NxYAfYK4w" x="-4" y="-10"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_VKJjoux3EeWC6NxYAfYK4w" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VKJjoux3EeWC6NxYAfYK4w" type="Transition_GuardLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_VKJjo-x3EeWC6NxYAfYK4w" x="-1" y="17"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_VKJjpOx3EeWC6NxYAfYK4w" type="7003">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VKJjpOx3EeWC6NxYAfYK4w" type="Transition_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_VKJjpex3EeWC6NxYAfYK4w" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_VKI8kex3EeWC6NxYAfYK4w"/>
@@ -1129,23 +1432,43 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VK0SAOx3EeWC6NxYAfYK4w" id="(1.0,0.475)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VK0SAex3EeWC6NxYAfYK4w" id="(0.0,0.425)"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_19iKZN9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_QomEAOx3EeWC6NxYAfYK4w" target="_19iKYN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_19iKZd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_19iKad9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_QocTAOx3EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_19iKZt9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_19iKZ99MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_19iKaN9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_19qGNN9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_SFFQIOx3EeWC6NxYAfYK4w" target="_19qGMN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_19qGNd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_19qtQt9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_SE8GMOx3EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_19qGNt9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_19qtQN9MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_19qtQd9MEeazo4k7FdcQuw"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_yIxPEOx3EeWC6NxYAfYK4w" type="PapyrusUMLStateMachineDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_yIxPEex3EeWC6NxYAfYK4w" type="2000">
- <children xmi:type="notation:DecorationNode" xmi:id="_yIxPEux3EeWC6NxYAfYK4w" type="2001">
+ <children xmi:type="notation:Shape" xmi:id="_yIxPEex3EeWC6NxYAfYK4w" type="StateMachine_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yIxPEux3EeWC6NxYAfYK4w" type="StateMachine_NameLabel">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_yIxPE-x3EeWC6NxYAfYK4w" width="700" height="16"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_yIxPFOx3EeWC6NxYAfYK4w" type="2002">
- <children xmi:type="notation:Shape" xmi:id="_yIxPFex3EeWC6NxYAfYK4w" type="3000">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_7PaTsN9MEeazo4k7FdcQuw" type="StateMachine_RegionCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_yIxPFex3EeWC6NxYAfYK4w" type="Region_Shape">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_yIxPFux3EeWC6NxYAfYK4w" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_yIxPF-x3EeWC6NxYAfYK4w" key="RegionZoneKey" value=""/>
</eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_yIxPGOx3EeWC6NxYAfYK4w" type="3002">
- <children xmi:type="notation:Shape" xmi:id="_zeJtoOx3EeWC6NxYAfYK4w" type="8000">
- <children xmi:type="notation:DecorationNode" xmi:id="_zeJtoux3EeWC6NxYAfYK4w" type="8001">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_7Pa6wN9MEeazo4k7FdcQuw" type="Region_SubvertexCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_zeJtoOx3EeWC6NxYAfYK4w" type="Pseudostate_InitialShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zeJtoux3EeWC6NxYAfYK4w" type="Pseudostate_InitialFloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zeJto-x3EeWC6NxYAfYK4w" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_zeJtpOx3EeWC6NxYAfYK4w" type="8002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zeJtpOx3EeWC6NxYAfYK4w" type="Pseudostate_InitialStereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_zeJtpex3EeWC6NxYAfYK4w" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="RelayPortOptionalMixedPassThrough.uml#_yGdh8Ox3EeWC6NxYAfYK4w"/>
@@ -1159,12 +1482,12 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_zeN_Gex3EeWC6NxYAfYK4w" x="200"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_z20sUOx3EeWC6NxYAfYK4w" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_z20sUux3EeWC6NxYAfYK4w" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_z20sU-x3EeWC6NxYAfYK4w" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_z20sUOx3EeWC6NxYAfYK4w" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_z20sUux3EeWC6NxYAfYK4w" type="State_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_z20sU-x3EeWC6NxYAfYK4w" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_z20sVOx3EeWC6NxYAfYK4w" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_z20sVex3EeWC6NxYAfYK4w" type="6002">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_7Pbh0N9MEeazo4k7FdcQuw" type="State_RegionCompartment">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_z20sVux3EeWC6NxYAfYK4w"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_z27aAOx3EeWC6NxYAfYK4w" type="StereotypeLabel">
@@ -1188,19 +1511,20 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_z28BJex3EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_7KV9QOx3EeWC6NxYAfYK4w" type="690">
+ <children xmi:type="notation:Shape" xmi:id="_7KV9QOx3EeWC6NxYAfYK4w" type="Behavior_EntryBehaviorLabel">
<element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalMixedPassThrough.uml#_7KRr0Ox3EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_7KV9Qex3EeWC6NxYAfYK4w"/>
</children>
+ <children xmi:type="notation:Compartment" xmi:id="_7RAPIN9MEeazo4k7FdcQuw" type="InternalTransitions"/>
<element xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_z2tXkOx3EeWC6NxYAfYK4w"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z20sUex3EeWC6NxYAfYK4w" x="172" y="112"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z20sUex3EeWC6NxYAfYK4w" x="148" y="115"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_0Uv-cOx3EeWC6NxYAfYK4w" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_0Uv-cux3EeWC6NxYAfYK4w" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_0Uv-c-x3EeWC6NxYAfYK4w" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_0Uv-cOx3EeWC6NxYAfYK4w" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_0Uv-cux3EeWC6NxYAfYK4w" type="State_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_0Uv-c-x3EeWC6NxYAfYK4w" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_0Uv-dOx3EeWC6NxYAfYK4w" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_0Uv-dex3EeWC6NxYAfYK4w" type="6002">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_7Pbh0d9MEeazo4k7FdcQuw" type="State_RegionCompartment">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_0Uv-dux3EeWC6NxYAfYK4w"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_0U3TMOx3EeWC6NxYAfYK4w" type="StereotypeLabel">
@@ -1224,12 +1548,74 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_0U36Vex3EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_AB-akOx4EeWC6NxYAfYK4w" type="690">
+ <children xmi:type="notation:Shape" xmi:id="_AB-akOx4EeWC6NxYAfYK4w" type="Behavior_EntryBehaviorLabel">
<element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalMixedPassThrough.uml#_AB6JIOx4EeWC6NxYAfYK4w"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_AB-akex4EeWC6NxYAfYK4w"/>
</children>
+ <children xmi:type="notation:Compartment" xmi:id="_7RIK8N9MEeazo4k7FdcQuw" type="InternalTransitions"/>
<element xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_0UnbkOx3EeWC6NxYAfYK4w"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0Uv-cex3EeWC6NxYAfYK4w" x="447" y="112"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0Uv-cex3EeWC6NxYAfYK4w" x="330" y="115"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_7RBdQN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_7RBdQd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_7RCEUN9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_z2tXkOx3EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7RBdQt9MEeazo4k7FdcQuw" x="372" y="112"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_7RKAIN9MEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_7RKAId9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_7RKAI99MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_0UnbkOx3EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7RKAIt9MEeazo4k7FdcQuw" x="647" y="112"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_P0F4sN9NEeazo4k7FdcQuw" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_P0HG0N9NEeazo4k7FdcQuw" type="State_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_P0HG0d9NEeazo4k7FdcQuw" type="State_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_P0HG0t9NEeazo4k7FdcQuw" x="40"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_P0Ht4N9NEeazo4k7FdcQuw" type="State_RegionCompartment">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P0Ht4d9NEeazo4k7FdcQuw"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_P0StAN9NEeazo4k7FdcQuw" type="StereotypeLabel">
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_P0StAd9NEeazo4k7FdcQuw" name="stereotype" stringValue="UMLRTStateMachines::RTState"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P0StAt9NEeazo4k7FdcQuw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_P0TUEN9NEeazo4k7FdcQuw" type="StereotypeBrace">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_P0TUEd9NEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_P0TUEt9NEeazo4k7FdcQuw" name="stereotype" stringValue="UMLRTStateMachines::RTState"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P0TUE99NEeazo4k7FdcQuw"/>
+ </children>
+ <children xmi:type="notation:Compartment" xmi:id="_P0UiMN9NEeazo4k7FdcQuw" type="InternalTransitions"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_P0VJQN9NEeazo4k7FdcQuw" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_P0VJQd9NEeazo4k7FdcQuw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P0VJQt9NEeazo4k7FdcQuw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_P0WXZN9NEeazo4k7FdcQuw" type="StereotypeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_P0WXZd9NEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_P0WXZt9NEeazo4k7FdcQuw" name="stereotype" stringValue="UMLRTStateMachines::RTState"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P0WXZ99NEeazo4k7FdcQuw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_g7YJwN9NEeazo4k7FdcQuw" type="Behavior_EntryBehaviorLabel">
+ <element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalMixedPassThrough.uml#_g6yT4N9NEeazo4k7FdcQuw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_g7YJwd9NEeazo4k7FdcQuw" x="-10" y="-10"/>
+ </children>
+ <element xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_PzsQEN9NEeazo4k7FdcQuw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P0F4sd9NEeazo4k7FdcQuw" x="512" y="115"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_P0VJQ99NEeazo4k7FdcQuw" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_P0VJRN9NEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_P0VJRt9NEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_PzsQEN9NEeazo4k7FdcQuw"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P0VJRd9NEeazo4k7FdcQuw" x="200"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_yIxPGex3EeWC6NxYAfYK4w"/>
</children>
@@ -1257,7 +1643,7 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ywbsAux3EeWC6NxYAfYK4w" x="230" y="30"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_yIxPHex3EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_yIxPHex3EeWC6NxYAfYK4w" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_yIxPHux3EeWC6NxYAfYK4w"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_yIxPH-x3EeWC6NxYAfYK4w">
<owner xmi:type="uml:StateMachine" href="RelayPortOptionalMixedPassThrough.uml#_yGZQgOx3EeWC6NxYAfYK4w"/>
@@ -1294,15 +1680,18 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zeN_Hux3EeWC6NxYAfYK4w"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zeN_H-x3EeWC6NxYAfYK4w"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_04ztwOx3EeWC6NxYAfYK4w" type="7000" source="_zeJtoOx3EeWC6NxYAfYK4w" target="_z20sUOx3EeWC6NxYAfYK4w">
- <children xmi:type="notation:DecorationNode" xmi:id="_04ztw-x3EeWC6NxYAfYK4w" type="7001">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_04ztxOx3EeWC6NxYAfYK4w" x="1" y="-18"/>
+ <edges xmi:type="notation:Connector" xmi:id="_04ztwOx3EeWC6NxYAfYK4w" type="Transition_Edge" source="_zeJtoOx3EeWC6NxYAfYK4w" target="_z20sUOx3EeWC6NxYAfYK4w">
+ <children xmi:type="notation:DecorationNode" xmi:id="_04ztw-x3EeWC6NxYAfYK4w" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_WyAGAN9NEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_04ztxOx3EeWC6NxYAfYK4w" x="1" y="-15"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_04ztxex3EeWC6NxYAfYK4w" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_04ztxex3EeWC6NxYAfYK4w" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_WyAtEN9NEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_04ztxux3EeWC6NxYAfYK4w"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_04ztx-x3EeWC6NxYAfYK4w" type="7003">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_04ztyOx3EeWC6NxYAfYK4w" y="60"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_04ztx-x3EeWC6NxYAfYK4w" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_WyBUIN9NEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_04ztyOx3EeWC6NxYAfYK4w" y="59"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_04ztwex3EeWC6NxYAfYK4w"/>
<element xmi:type="uml:Transition" href="RelayPortOptionalMixedPassThrough.uml#_04qj0Ox3EeWC6NxYAfYK4w"/>
@@ -1310,21 +1699,73 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_05GosOx3EeWC6NxYAfYK4w" id="(0.95,1.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_05Gosex3EeWC6NxYAfYK4w" id="(0.0,0.15)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_2BB6EOx3EeWC6NxYAfYK4w" type="7000" source="_z20sUOx3EeWC6NxYAfYK4w" target="_0Uv-cOx3EeWC6NxYAfYK4w">
- <children xmi:type="notation:DecorationNode" xmi:id="_2BB6E-x3EeWC6NxYAfYK4w" type="7001">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_2BB6FOx3EeWC6NxYAfYK4w" x="2" y="-13"/>
+ <edges xmi:type="notation:Connector" xmi:id="_2BB6EOx3EeWC6NxYAfYK4w" type="Transition_Edge" source="_z20sUOx3EeWC6NxYAfYK4w" target="_0Uv-cOx3EeWC6NxYAfYK4w">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2BB6E-x3EeWC6NxYAfYK4w" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Os9RgN9NEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2BB6FOx3EeWC6NxYAfYK4w" x="2" y="-11"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_2BB6Fex3EeWC6NxYAfYK4w" type="7002">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_2BB6Fux3EeWC6NxYAfYK4w" y="12"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_2BB6Fex3EeWC6NxYAfYK4w" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_OtSBoN9NEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2BB6Fux3EeWC6NxYAfYK4w" y="11"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_2BB6F-x3EeWC6NxYAfYK4w" type="7003">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_2BB6GOx3EeWC6NxYAfYK4w" y="60"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_2BB6F-x3EeWC6NxYAfYK4w" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Otk8kN9NEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2BB6GOx3EeWC6NxYAfYK4w" x="1" y="59"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_2BB6Eex3EeWC6NxYAfYK4w"/>
<element xmi:type="uml:Transition" href="RelayPortOptionalMixedPassThrough.uml#_2A5XMOx3EeWC6NxYAfYK4w"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2BB6Eux3EeWC6NxYAfYK4w" points="[20, 2, -158, 3]$[181, 19, 3, 20]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2Ba7oOx3EeWC6NxYAfYK4w" id="(1.0,0.5)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2Ba7oex3EeWC6NxYAfYK4w" id="(0.0,0.55)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2Ba7oex3EeWC6NxYAfYK4w" id="(0.0,0.5)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_7RCEUd9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_z20sUOx3EeWC6NxYAfYK4w" target="_7RBdQN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_7RCEUt9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_7RCEVt9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_z2tXkOx3EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_7RCEU99MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7RCEVN9MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7RCEVd9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_7RKAJN9MEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_0Uv-cOx3EeWC6NxYAfYK4w" target="_7RKAIN9MEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_7RKAJd9MEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_7RKAKd9MEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_0UnbkOx3EeWC6NxYAfYK4w"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_7RKAJt9MEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7RKAJ99MEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7RKAKN9MEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_P0VwUN9NEeazo4k7FdcQuw" type="StereotypeCommentLink" source="_P0F4sN9NEeazo4k7FdcQuw" target="_P0VJQ99NEeazo4k7FdcQuw">
+ <styles xmi:type="notation:FontStyle" xmi:id="_P0VwUd9NEeazo4k7FdcQuw"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_P0VwVd9NEeazo4k7FdcQuw" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalMixedPassThrough.uml#_PzsQEN9NEeazo4k7FdcQuw"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_P0VwUt9NEeazo4k7FdcQuw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_P0VwU99NEeazo4k7FdcQuw"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_P0VwVN9NEeazo4k7FdcQuw"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_SIrKcN9NEeazo4k7FdcQuw" type="Transition_Edge" source="_0Uv-cOx3EeWC6NxYAfYK4w" target="_P0F4sN9NEeazo4k7FdcQuw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_SIrxgN9NEeazo4k7FdcQuw" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_WyB7MN9NEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SIrxgd9NEeazo4k7FdcQuw" x="-2" y="-9"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_SIrxgt9NEeazo4k7FdcQuw" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_WyB7Md9NEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SIsYkN9NEeazo4k7FdcQuw" x="1" y="12"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_SIsYkd9NEeazo4k7FdcQuw" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_WyCiQN9NEeazo4k7FdcQuw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SIsYkt9NEeazo4k7FdcQuw" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_SIrKcd9NEeazo4k7FdcQuw"/>
+ <element xmi:type="uml:Transition" href="RelayPortOptionalMixedPassThrough.uml#_SEzXEN9NEeazo4k7FdcQuw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SIrKct9NEeazo4k7FdcQuw" points="[447, 166, -643984, -643984]$[577, 173, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SJdNkN9NEeazo4k7FdcQuw" id="(1.0,0.475)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SJdNkd9NEeazo4k7FdcQuw" id="(0.0,0.475)"/>
</edges>
</notation:Diagram>
</xmi:XMI>
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml
index d25b5de..8e574d6 100644
--- a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml
@@ -1,19 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:RTCppProperties="http://www.eclipse.org/papyrus/umlrt/cppproperties" xmlns:UMLRealTime="http://www.eclipse.org/papyrus/umlrt" xmlns:UMLRealTimeStateMach="http://www.eclipse.org/papyrus/umlrt/statemachine" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:RTCppProperties="http://www.eclipse.org/papyrus/umlrt/cppproperties" xmlns:UMLRTStateMachines="http://www.eclipse.org/papyrus/umlrt/statemachine" xmlns:UMLRealTime="http://www.eclipse.org/papyrus/umlrt" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
<uml:Model xmi:id="_2nOUMOxzEeWC6NxYAfYK4w" name="RootElement">
- <packagedElement xmi:type="uml:Artifact" xmi:id="_AuCzMOx0EeWC6NxYAfYK4w" name="UtilityMacros" fileName="utility_macros"/>
+ <packagedElement xmi:type="uml:Artifact" xmi:id="_AuCzMOx0EeWC6NxYAfYK4w" name="UtilityMacros" fileName="UtilityMacros"/>
<packagedElement xmi:type="uml:Package" xmi:id="_Qd_d4Ox0EeWC6NxYAfYK4w" name="Protocol1">
<packagedElement xmi:type="uml:Collaboration" xmi:id="_Qdix8Ox0EeWC6NxYAfYK4w" name="Protocol1">
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_QeGLkOx0EeWC6NxYAfYK4w" client="_Qdix8Ox0EeWC6NxYAfYK4w" supplier="_QeDIQOx0EeWC6NxYAfYK4w" contract="_QeDIQOx0EeWC6NxYAfYK4w">
+ <interfaceRealization xmi:id="_QeGLkOx0EeWC6NxYAfYK4w" client="_Qdix8Ox0EeWC6NxYAfYK4w" supplier="_QeDIQOx0EeWC6NxYAfYK4w" contract="_QeDIQOx0EeWC6NxYAfYK4w">
<name xsi:nil="true"/>
</interfaceRealization>
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_QeOHYOx0EeWC6NxYAfYK4w" client="_Qdix8Ox0EeWC6NxYAfYK4w" supplier="_QeLrIOx0EeWC6NxYAfYK4w" contract="_QeLrIOx0EeWC6NxYAfYK4w">
+ <interfaceRealization xmi:id="_QeOHYOx0EeWC6NxYAfYK4w" client="_Qdix8Ox0EeWC6NxYAfYK4w" supplier="_QeLrIOx0EeWC6NxYAfYK4w" contract="_QeLrIOx0EeWC6NxYAfYK4w">
<name xsi:nil="true"/>
</interfaceRealization>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_QeDIQOx0EeWC6NxYAfYK4w" name="Protocol1"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_QeIn0Ox0EeWC6NxYAfYK4w" name="Protocol1~">
- <ownedOperation xmi:type="uml:Operation" xmi:id="_SANekOx0EeWC6NxYAfYK4w" name="msg1"/>
+ <ownedOperation xmi:id="_SANekOx0EeWC6NxYAfYK4w" name="msg1"/>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_QeKdAOx0EeWC6NxYAfYK4w" client="_Qdix8Ox0EeWC6NxYAfYK4w" supplier="_QeIn0Ox0EeWC6NxYAfYK4w">
<name xsi:nil="true"/>
@@ -29,16 +29,16 @@
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_TOz_sOx0EeWC6NxYAfYK4w" name="Start">
<packagedElement xmi:type="uml:Collaboration" xmi:id="_TOxjcOx0EeWC6NxYAfYK4w" name="Start">
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_TO4RIOx0EeWC6NxYAfYK4w" client="_TOxjcOx0EeWC6NxYAfYK4w" supplier="_TO104Ox0EeWC6NxYAfYK4w" contract="_TO104Ox0EeWC6NxYAfYK4w">
+ <interfaceRealization xmi:id="_TO4RIOx0EeWC6NxYAfYK4w" client="_TOxjcOx0EeWC6NxYAfYK4w" supplier="_TO104Ox0EeWC6NxYAfYK4w" contract="_TO104Ox0EeWC6NxYAfYK4w">
<name xsi:nil="true"/>
</interfaceRealization>
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_TO-XwOx0EeWC6NxYAfYK4w" client="_TOxjcOx0EeWC6NxYAfYK4w" supplier="_TO77gOx0EeWC6NxYAfYK4w" contract="_TO77gOx0EeWC6NxYAfYK4w">
+ <interfaceRealization xmi:id="_TO-XwOx0EeWC6NxYAfYK4w" client="_TOxjcOx0EeWC6NxYAfYK4w" supplier="_TO77gOx0EeWC6NxYAfYK4w" contract="_TO77gOx0EeWC6NxYAfYK4w">
<name xsi:nil="true"/>
</interfaceRealization>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_TO104Ox0EeWC6NxYAfYK4w" name="Start"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_TO44MOx0EeWC6NxYAfYK4w" name="Start~">
- <ownedOperation xmi:type="uml:Operation" xmi:id="_WXbWcOx0EeWC6NxYAfYK4w" name="begin"/>
+ <ownedOperation xmi:id="_WXbWcOx0EeWC6NxYAfYK4w" name="begin"/>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_TO6tYOx0EeWC6NxYAfYK4w" client="_TOxjcOx0EeWC6NxYAfYK4w" supplier="_TO44MOx0EeWC6NxYAfYK4w">
<name xsi:nil="true"/>
@@ -57,53 +57,53 @@
<ownedAttribute xmi:type="uml:Port" xmi:id="_Ze8EgOx1EeWC6NxYAfYK4w" name="frame" visibility="public" isOrdered="true" aggregation="composite" isBehavior="true" isService="false">
<type xmi:type="uml:Collaboration" href="pathmap://UMLRTRTSLIB/UMLRT-RTS.uml#_TWVjwGtVEeSCmtGQ-V4nzg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_h0QwsOx1EeWC6NxYAfYK4w" name="sender" visibility="protected" type="_ZXz-QOx0EeWC6NxYAfYK4w" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_h0QwsOx1EeWC6NxYAfYK4w" name="sender" visibility="protected" type="_ZXz-QOx0EeWC6NxYAfYK4w" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_h0VCIOx1EeWC6NxYAfYK4w" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_h0VCIex1EeWC6NxYAfYK4w" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_na-hkOx1EeWC6NxYAfYK4w" name="receiver" visibility="protected" type="_bULkUOx0EeWC6NxYAfYK4w" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_na-hkOx1EeWC6NxYAfYK4w" name="receiver" visibility="protected" type="_bULkUOx0EeWC6NxYAfYK4w" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_nbA90Ox1EeWC6NxYAfYK4w" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_nbA90ex1EeWC6NxYAfYK4w" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_pEJe0Ox1EeWC6NxYAfYK4w" name="medium" visibility="protected" type="_dVzd0Ox0EeWC6NxYAfYK4w" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_pEJe0Ox1EeWC6NxYAfYK4w" name="medium" visibility="protected" type="_dVzd0Ox0EeWC6NxYAfYK4w" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_pEL7Eex1EeWC6NxYAfYK4w"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_pEL7Eux1EeWC6NxYAfYK4w" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_5cGIMOx2EeWC6NxYAfYK4w" name="mediumId" visibility="protected">
+ <ownedAttribute xmi:id="_5cGIMOx2EeWC6NxYAfYK4w" name="mediumId" visibility="protected">
<type xmi:type="uml:Class" href="pathmap://UMLRTRTSLIB/UMLRT-RTS.uml#_GfwZUICSEeSeANT-DfY5oA"/>
</ownedAttribute>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_0JD9wOx1EeWC6NxYAfYK4w" name="RTConnector1">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_0JI2QOx1EeWC6NxYAfYK4w" role="_PaI-wOx1EeWC6NxYAfYK4w"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_0JI2Qex1EeWC6NxYAfYK4w" partWithPort="_h0QwsOx1EeWC6NxYAfYK4w" role="_xAQPMOx0EeWC6NxYAfYK4w"/>
+ <ownedConnector xmi:id="_0JD9wOx1EeWC6NxYAfYK4w" name="RTConnector1">
+ <end xmi:id="_0JI2QOx1EeWC6NxYAfYK4w" role="_PaI-wOx1EeWC6NxYAfYK4w"/>
+ <end xmi:id="_0JI2Qex1EeWC6NxYAfYK4w" partWithPort="_h0QwsOx1EeWC6NxYAfYK4w" role="_xAQPMOx0EeWC6NxYAfYK4w"/>
</ownedConnector>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_2JNQkOx1EeWC6NxYAfYK4w" name="RTConnector2">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_2JPFwOx1EeWC6NxYAfYK4w" partWithPort="_h0QwsOx1EeWC6NxYAfYK4w" role="_2QxGkOx0EeWC6NxYAfYK4w"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_2JPFwex1EeWC6NxYAfYK4w" partWithPort="_pEJe0Ox1EeWC6NxYAfYK4w" role="__LipMOx0EeWC6NxYAfYK4w"/>
+ <ownedConnector xmi:id="_2JNQkOx1EeWC6NxYAfYK4w" name="RTConnector2">
+ <end xmi:id="_2JPFwOx1EeWC6NxYAfYK4w" partWithPort="_h0QwsOx1EeWC6NxYAfYK4w" role="_2QxGkOx0EeWC6NxYAfYK4w"/>
+ <end xmi:id="_2JPFwex1EeWC6NxYAfYK4w" partWithPort="_pEJe0Ox1EeWC6NxYAfYK4w" role="__LipMOx0EeWC6NxYAfYK4w"/>
</ownedConnector>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_3bTxoOx1EeWC6NxYAfYK4w" name="RTConnector3">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_3bVm0Ox1EeWC6NxYAfYK4w" partWithPort="_pEJe0Ox1EeWC6NxYAfYK4w" role="_G9Er0Ox1EeWC6NxYAfYK4w"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_3bVm0ex1EeWC6NxYAfYK4w" partWithPort="_na-hkOx1EeWC6NxYAfYK4w" role="_7KnxcOx0EeWC6NxYAfYK4w"/>
+ <ownedConnector xmi:id="_3bTxoOx1EeWC6NxYAfYK4w" name="RTConnector3">
+ <end xmi:id="_3bVm0Ox1EeWC6NxYAfYK4w" partWithPort="_pEJe0Ox1EeWC6NxYAfYK4w" role="_G9Er0Ox1EeWC6NxYAfYK4w"/>
+ <end xmi:id="_3bVm0ex1EeWC6NxYAfYK4w" partWithPort="_na-hkOx1EeWC6NxYAfYK4w" role="_7KnxcOx0EeWC6NxYAfYK4w"/>
</ownedConnector>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_SEdagOx2EeWC6NxYAfYK4w" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_SEiTAOx2EeWC6NxYAfYK4w" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_VPxf8Ox2EeWC6NxYAfYK4w" name="t0" source="_SEkvQOx2EeWC6NxYAfYK4w" target="_UN8PgOx2EeWC6NxYAfYK4w"/>
+ <region xmi:id="_SEiTAOx2EeWC6NxYAfYK4w" name="Region">
+ <transition xmi:id="_VPxf8Ox2EeWC6NxYAfYK4w" name="t0" source="_SEkvQOx2EeWC6NxYAfYK4w" target="_UN8PgOx2EeWC6NxYAfYK4w"/>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_SEkvQOx2EeWC6NxYAfYK4w">
<name xsi:nil="true"/>
</subvertex>
<subvertex xmi:type="uml:State" xmi:id="_UN8PgOx2EeWC6NxYAfYK4w" name="State1">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_ig4wsOx2EeWC6NxYAfYK4w">
<language>C++</language>
- <body>cout << FCAPINST_STATE << " starting" << endl;
-cout << FCAPINST_STATE << " incarnating medium" << endl;
-mediumId = frame.incarnate(medium, Medium);
-if (!mediumId.isValid()) {
- cout << FCAPINST_STATE << " failed to incarnate medium" << endl;
- cout << "Error: " << context()->strerror() << endl;
- return;
-}
-cout << FCAPINST_STATE << " starting sender" << endl;
-start.begin().send();
-cout << FCAPINST_STATE << " begin message sent" << endl;
+ <body> cout << "[Top](State1) starting" << endl;
+ cout << "[Top](State1) incarnating medium" << endl;
+ mediumId = frame.incarnate(medium, Medium);
+ if (!mediumId.isValid()) {
+ cout << "[Top](State1) failed to incarnate medium" << endl;
+ cout << "Error: " << context()->strerror() << endl;
+ exit(0);
+ }
+ cout << "[Top](State1) starting sender" << endl;
+ start.begin().send();
+ cout << "[Top](State1) begin message sent" << endl;
</body>
</entry>
</subvertex>
@@ -117,15 +117,15 @@
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_QKt_wOx4EeWC6NxYAfYK4w" value="2"/>
</ownedAttribute>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_O_2kkOx3EeWC6NxYAfYK4w" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_O_5A0Ox3EeWC6NxYAfYK4w" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_UDUecOx3EeWC6NxYAfYK4w" name="t0" source="_O_7dEOx3EeWC6NxYAfYK4w" target="_QocTAOx3EeWC6NxYAfYK4w"/>
- <transition xmi:type="uml:Transition" xmi:id="_VJ7hMOx3EeWC6NxYAfYK4w" name="t1" source="_QocTAOx3EeWC6NxYAfYK4w" target="_SE8GMOx3EeWC6NxYAfYK4w">
+ <region xmi:id="_O_5A0Ox3EeWC6NxYAfYK4w" name="Region">
+ <transition xmi:id="_UDUecOx3EeWC6NxYAfYK4w" name="t0" source="_O_7dEOx3EeWC6NxYAfYK4w" target="_QocTAOx3EeWC6NxYAfYK4w"/>
+ <transition xmi:id="_VJ7hMOx3EeWC6NxYAfYK4w" name="t1" source="_QocTAOx3EeWC6NxYAfYK4w" target="_SE8GMOx3EeWC6NxYAfYK4w">
<effect xmi:type="uml:OpaqueBehavior" xmi:id="_iTOSsOx3EeWC6NxYAfYK4w">
<language>C++</language>
- <body>cout << FCAPINST_STATE << " sender received begin message" << endl;
+ <body> cout << "[Sender](t1) sender received begin message" << endl;
</body>
</effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_mAEX4Ox3EeWC6NxYAfYK4w" event="_WXb9gOx0EeWC6NxYAfYK4w" port="_xAQPMOx0EeWC6NxYAfYK4w"/>
+ <trigger xmi:id="_mAEX4Ox3EeWC6NxYAfYK4w" event="_WXb9gOx0EeWC6NxYAfYK4w" port="_xAQPMOx0EeWC6NxYAfYK4w"/>
</transition>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_O_7dEOx3EeWC6NxYAfYK4w">
<name xsi:nil="true"/>
@@ -133,16 +133,16 @@
<subvertex xmi:type="uml:State" xmi:id="_QocTAOx3EeWC6NxYAfYK4w" name="State1">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_dxiQMOx3EeWC6NxYAfYK4w">
<language>C++</language>
- <body>cout << FCAPINST_STATE << " sender waiting to start" << endl;
+ <body> cout << "[Sender](State1) sender waiting to start" << endl;
</body>
</entry>
</subvertex>
<subvertex xmi:type="uml:State" xmi:id="_SE8GMOx3EeWC6NxYAfYK4w" name="State2">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_tHOAwOx3EeWC6NxYAfYK4w">
<language>C++</language>
- <body>cout << FCAPINST_STATE << " sender sending message" << endl;
-out.msg1().send();
-cout << FCAPINST_STATE << " sender sent message" << endl;
+ <body> cout << "[Sender](State2) sender sending message" << endl;
+ out.msg1().send();
+ cout << "[Sender](State2) sender sent message" << endl;
</body>
</entry>
</subvertex>
@@ -151,11 +151,18 @@
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_bULkUOx0EeWC6NxYAfYK4w" name="Receiver" classifierBehavior="_yGZQgOx3EeWC6NxYAfYK4w" isActive="true">
<ownedAttribute xmi:type="uml:Port" xmi:id="_7KnxcOx0EeWC6NxYAfYK4w" name="inp" visibility="public" type="_Qdix8Ox0EeWC6NxYAfYK4w" isOrdered="true" aggregation="composite" isBehavior="true" isConjugated="true"/>
+ <ownedAttribute xmi:id="_GAwWYN9NEeazo4k7FdcQuw" name="messagesReceived" visibility="public" isStatic="true">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_JRo4UN9NEeazo4k7FdcQuw"/>
+ </ownedAttribute>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_yGZQgOx3EeWC6NxYAfYK4w" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_yGbswOx3EeWC6NxYAfYK4w" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_04qj0Ox3EeWC6NxYAfYK4w" name="t0" source="_yGdh8Ox3EeWC6NxYAfYK4w" target="_z2tXkOx3EeWC6NxYAfYK4w"/>
- <transition xmi:type="uml:Transition" xmi:id="_2A5XMOx3EeWC6NxYAfYK4w" name="t1" source="_z2tXkOx3EeWC6NxYAfYK4w" target="_0UnbkOx3EeWC6NxYAfYK4w">
- <trigger xmi:type="uml:Trigger" xmi:id="_CdEkAOx4EeWC6NxYAfYK4w" event="_SAkq8Ox0EeWC6NxYAfYK4w" port="_7KnxcOx0EeWC6NxYAfYK4w"/>
+ <region xmi:id="_yGbswOx3EeWC6NxYAfYK4w" name="Region">
+ <transition xmi:id="_04qj0Ox3EeWC6NxYAfYK4w" name="t0" source="_yGdh8Ox3EeWC6NxYAfYK4w" target="_z2tXkOx3EeWC6NxYAfYK4w"/>
+ <transition xmi:id="_2A5XMOx3EeWC6NxYAfYK4w" name="t1" source="_z2tXkOx3EeWC6NxYAfYK4w" target="_0UnbkOx3EeWC6NxYAfYK4w">
+ <trigger xmi:id="_CdEkAOx4EeWC6NxYAfYK4w" event="_SAkq8Ox0EeWC6NxYAfYK4w" port="_7KnxcOx0EeWC6NxYAfYK4w"/>
+ </transition>
+ <transition xmi:id="_SEzXEN9NEeazo4k7FdcQuw" name="t2" source="_0UnbkOx3EeWC6NxYAfYK4w" target="_PzsQEN9NEeazo4k7FdcQuw">
+ <trigger xmi:id="_UZpukN9NEeazo4k7FdcQuw" event="_SAkq8Ox0EeWC6NxYAfYK4w" port="_7KnxcOx0EeWC6NxYAfYK4w"/>
</transition>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_yGdh8Ox3EeWC6NxYAfYK4w">
<name xsi:nil="true"/>
@@ -163,14 +170,22 @@
<subvertex xmi:type="uml:State" xmi:id="_z2tXkOx3EeWC6NxYAfYK4w" name="State1">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_7KRr0Ox3EeWC6NxYAfYK4w">
<language>C++</language>
- <body>cout << FCAPINST_STATE << " receiver waiting for message" << endl;
+ <body> cout << "[Receiver](State1) receiver waiting for message" << endl;
</body>
</entry>
</subvertex>
<subvertex xmi:type="uml:State" xmi:id="_0UnbkOx3EeWC6NxYAfYK4w" name="State2">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_AB6JIOx4EeWC6NxYAfYK4w">
<language>C++</language>
- <body>cout << FCAPINST_STATE << " receiver received message" << endl;
+ <body> cout << "[Receiver](State2) receiver received first message" << endl;
+</body>
+ </entry>
+ </subvertex>
+ <subvertex xmi:type="uml:State" xmi:id="_PzsQEN9NEeazo4k7FdcQuw" name="State3">
+ <entry xmi:type="uml:OpaqueBehavior" xmi:id="_g6yT4N9NEeazo4k7FdcQuw">
+ <language>C++</language>
+ <body> cout << "[Receiver](State3) receiver received second message" << endl;
+ exit(0);
</body>
</entry>
</subvertex>
@@ -183,39 +198,39 @@
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Hj3esOx4EeWC6NxYAfYK4w" value="2"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Port" xmi:id="_G9Er0Ox1EeWC6NxYAfYK4w" name="m_out" visibility="public" type="_Qdix8Ox0EeWC6NxYAfYK4w" isOrdered="true" aggregation="composite"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_9i2XoOx1EeWC6NxYAfYK4w" name="eavesdropper" visibility="protected" type="_bULkUOx0EeWC6NxYAfYK4w" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_9i2XoOx1EeWC6NxYAfYK4w" name="eavesdropper" visibility="protected" type="_bULkUOx0EeWC6NxYAfYK4w" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9i4z4Ox1EeWC6NxYAfYK4w" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9i4z4ex1EeWC6NxYAfYK4w" value="1"/>
</ownedAttribute>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_Gq6vYOx2EeWC6NxYAfYK4w" name="RTConnector1">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_Gq8kkOx2EeWC6NxYAfYK4w" role="__LipMOx0EeWC6NxYAfYK4w"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_Gq9LoOx2EeWC6NxYAfYK4w" role="_G9Er0Ox1EeWC6NxYAfYK4w"/>
+ <ownedConnector xmi:id="_Gq6vYOx2EeWC6NxYAfYK4w" name="RTConnector1">
+ <end xmi:id="_Gq8kkOx2EeWC6NxYAfYK4w" role="__LipMOx0EeWC6NxYAfYK4w"/>
+ <end xmi:id="_Gq9LoOx2EeWC6NxYAfYK4w" role="_G9Er0Ox1EeWC6NxYAfYK4w"/>
</ownedConnector>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_LJ9tkOx2EeWC6NxYAfYK4w" name="RTConnector2">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_LKAJ0Ox2EeWC6NxYAfYK4w" role="__LipMOx0EeWC6NxYAfYK4w"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_LKAJ0ex2EeWC6NxYAfYK4w" partWithPort="_9i2XoOx1EeWC6NxYAfYK4w" role="_7KnxcOx0EeWC6NxYAfYK4w"/>
+ <ownedConnector xmi:id="_LJ9tkOx2EeWC6NxYAfYK4w" name="RTConnector2">
+ <end xmi:id="_LKAJ0Ox2EeWC6NxYAfYK4w" role="__LipMOx0EeWC6NxYAfYK4w"/>
+ <end xmi:id="_LKAJ0ex2EeWC6NxYAfYK4w" partWithPort="_9i2XoOx1EeWC6NxYAfYK4w" role="_7KnxcOx0EeWC6NxYAfYK4w"/>
</ownedConnector>
</packagedElement>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_2t1SgOxzEeWC6NxYAfYK4w">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2t15kOxzEeWC6NxYAfYK4w" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_2t1SgOxzEeWC6NxYAfYK4w">
+ <eAnnotations xmi:id="_2t15kOxzEeWC6NxYAfYK4w" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_1h74oEeVEeO0lv5O1DTHOQ"/>
+ <appliedProfile href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_1h74oEeVEeO0lv5O1DTHOQ"/>
</profileApplication>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_2whaIOxzEeWC6NxYAfYK4w">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2wiBMOxzEeWC6NxYAfYK4w" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_2whaIOxzEeWC6NxYAfYK4w">
+ <eAnnotations xmi:id="_2wiBMOxzEeWC6NxYAfYK4w" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt/statemachine#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KLcn0FDtEeOA4ecmvfqvaw"/>
+ <appliedProfile href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KLcn0FDtEeOA4ecmvfqvaw"/>
</profileApplication>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_Jek0sOx0EeWC6NxYAfYK4w">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_JelbwOx0EeWC6NxYAfYK4w" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_Jek0sOx0EeWC6NxYAfYK4w">
+ <eAnnotations xmi:id="_JelbwOx0EeWC6NxYAfYK4w" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt/cppproperties#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_vl5LALs8EeSTjNEQkASznQ"/>
+ <appliedProfile href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_vl5LALs8EeSTjNEQkASznQ"/>
</profileApplication>
</uml:Model>
- <RTCppProperties:ArtifactProperties xmi:id="_KaoNQOx0EeWC6NxYAfYK4w" base_Artifact="_AuCzMOx0EeWC6NxYAfYK4w" includeFile="#define CAPINST "[" << name() << ":" << getTypeName() << "]"
#define FCAPINST "[" << name() << ":" << getTypeName() << "::" << getName() << "[" << getIndex() << "]]"
#define CAPINST_STATE CAPINST << "(" << getCurrentStateString() << ")"
#define FCAPINST_STATE FCAPINST << "(" << getCurrentStateString() << ")"
"/>
+ <RTCppProperties:ArtifactProperties xmi:id="_KaoNQOx0EeWC6NxYAfYK4w" base_Artifact="_AuCzMOx0EeWC6NxYAfYK4w" includeFile="#define CAPINST "[" << name() << ":" << getTypeName() << "]"
#define FCAPINST "[" << name() << ":" << getTypeName() << "::" << getName() << "[" << getIndex() << "]]"
#define CAPINST_STATE CAPINST << "(" << getCurrentStateString() << ")"
#define FCAPINST_STATE FCAPINST << "(" << getCurrentStateString() << ")"
" sourceFile="// Nothing
"/>
<UMLRealTime:ProtocolContainer xmi:id="_QeB6IOx0EeWC6NxYAfYK4w" base_Package="_Qd_d4Ox0EeWC6NxYAfYK4w"/>
<UMLRealTime:RTMessageSet xmi:id="_QeE9cOx0EeWC6NxYAfYK4w" base_Interface="_QeDIQOx0EeWC6NxYAfYK4w"/>
<UMLRealTime:RTMessageSet xmi:id="_QeJ18Ox0EeWC6NxYAfYK4w" base_Interface="_QeIn0Ox0EeWC6NxYAfYK4w" rtMsgKind="out"/>
@@ -230,10 +245,10 @@
<UMLRealTime:Capsule xmi:id="_ZYGSIOx0EeWC6NxYAfYK4w" base_Class="_ZXz-QOx0EeWC6NxYAfYK4w"/>
<UMLRealTime:Capsule xmi:id="_bUg7gOx0EeWC6NxYAfYK4w" base_Class="_bULkUOx0EeWC6NxYAfYK4w"/>
<UMLRealTime:Capsule xmi:id="_dWEjkOx0EeWC6NxYAfYK4w" base_Class="_dVzd0Ox0EeWC6NxYAfYK4w"/>
- <RTCppProperties:CapsuleProperties xmi:id="_h5KUQOx0EeWC6NxYAfYK4w" implementationPreface="#include <iostream>
#include "umlrtcontroller.hh"
#include "utility_macros.hh"
using namespace std;
" base_Class="_Xz24MOx0EeWC6NxYAfYK4w"/>
- <RTCppProperties:CapsuleProperties xmi:id="_nw6KwOx0EeWC6NxYAfYK4w" implementationPreface="#include <iostream>
#include "utility_macros.hh"
using namespace std;
" base_Class="_ZXz-QOx0EeWC6NxYAfYK4w"/>
- <RTCppProperties:CapsuleProperties xmi:id="_pnDNAOx0EeWC6NxYAfYK4w" implementationPreface="#include <iostream>
#include "utility_macros.hh"
using namespace std;
" base_Class="_bULkUOx0EeWC6NxYAfYK4w"/>
- <RTCppProperties:CapsuleProperties xmi:id="_rPETsOx0EeWC6NxYAfYK4w" implementationPreface="#include <iostream>
#include "utility_macros.hh"
using namespace std;
" base_Class="_dVzd0Ox0EeWC6NxYAfYK4w"/>
+ <RTCppProperties:CapsuleProperties xmi:id="_h5KUQOx0EeWC6NxYAfYK4w" implementationPreface="#include <iostream>
#include "UtilityMacros.hh"
using namespace std;
" base_Class="_Xz24MOx0EeWC6NxYAfYK4w"/>
+ <RTCppProperties:CapsuleProperties xmi:id="_nw6KwOx0EeWC6NxYAfYK4w" implementationPreface="#include <iostream>
#include "UtilityMacros.hh"
using namespace std;
" base_Class="_ZXz-QOx0EeWC6NxYAfYK4w"/>
+ <RTCppProperties:CapsuleProperties xmi:id="_pnDNAOx0EeWC6NxYAfYK4w" implementationPreface="#include <iostream>
#include "UtilityMacros.hh"
using namespace std;
" base_Class="_bULkUOx0EeWC6NxYAfYK4w"/>
+ <RTCppProperties:CapsuleProperties xmi:id="_rPETsOx0EeWC6NxYAfYK4w" implementationPreface="#include <iostream>
#include "UtilityMacros.hh"
using namespace std;
" base_Class="_dVzd0Ox0EeWC6NxYAfYK4w"/>
<UMLRealTime:RTPort xmi:id="_xAWV0Ox0EeWC6NxYAfYK4w" base_Port="_xAQPMOx0EeWC6NxYAfYK4w"/>
<UMLRealTime:RTPort xmi:id="_2Qy7wOx0EeWC6NxYAfYK4w" base_Port="_2QxGkOx0EeWC6NxYAfYK4w"/>
<UMLRealTime:RTPort xmi:id="_7Kq0wOx0EeWC6NxYAfYK4w" base_Port="_7KnxcOx0EeWC6NxYAfYK4w"/>
@@ -250,18 +265,19 @@
<UMLRealTime:CapsulePart xmi:id="_9i4M0Ox1EeWC6NxYAfYK4w" base_Property="_9i2XoOx1EeWC6NxYAfYK4w"/>
<UMLRealTime:RTConnector xmi:id="_Gq9Loex2EeWC6NxYAfYK4w" base_Connector="_Gq6vYOx2EeWC6NxYAfYK4w"/>
<UMLRealTime:RTConnector xmi:id="_LKAw4Ox2EeWC6NxYAfYK4w" base_Connector="_LJ9tkOx2EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_SEnykOx2EeWC6NxYAfYK4w" base_Pseudostate="_SEkvQOx2EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_SE-X4Ox2EeWC6NxYAfYK4w" base_Region="_SEiTAOx2EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_SE--8Ox2EeWC6NxYAfYK4w" base_StateMachine="_SEdagOx2EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTState xmi:id="_UN-EsOx2EeWC6NxYAfYK4w" base_State="_UN8PgOx2EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_O_8rMOx3EeWC6NxYAfYK4w" base_Pseudostate="_O_7dEOx3EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_O_9SQOx3EeWC6NxYAfYK4w" base_Region="_O_5A0Ox3EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_O_95UOx3EeWC6NxYAfYK4w" base_StateMachine="_O_2kkOx3EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTState xmi:id="_QoevQOx3EeWC6NxYAfYK4w" base_State="_QocTAOx3EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTState xmi:id="_SE97YOx3EeWC6NxYAfYK4w" base_State="_SE8GMOx3EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_yGfXIOx3EeWC6NxYAfYK4w" base_Pseudostate="_yGdh8Ox3EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_yGf-MOx3EeWC6NxYAfYK4w" base_Region="_yGbswOx3EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_yGglQOx3EeWC6NxYAfYK4w" base_StateMachine="_yGZQgOx3EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTState xmi:id="_z2vMwOx3EeWC6NxYAfYK4w" base_State="_z2tXkOx3EeWC6NxYAfYK4w"/>
- <UMLRealTimeStateMach:RTState xmi:id="_0UpQwOx3EeWC6NxYAfYK4w" base_State="_0UnbkOx3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_SEnykOx2EeWC6NxYAfYK4w" base_Pseudostate="_SEkvQOx2EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_SE-X4Ox2EeWC6NxYAfYK4w" base_Region="_SEiTAOx2EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_SE--8Ox2EeWC6NxYAfYK4w" base_StateMachine="_SEdagOx2EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTState xmi:id="_UN-EsOx2EeWC6NxYAfYK4w" base_State="_UN8PgOx2EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_O_8rMOx3EeWC6NxYAfYK4w" base_Pseudostate="_O_7dEOx3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_O_9SQOx3EeWC6NxYAfYK4w" base_Region="_O_5A0Ox3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_O_95UOx3EeWC6NxYAfYK4w" base_StateMachine="_O_2kkOx3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTState xmi:id="_QoevQOx3EeWC6NxYAfYK4w" base_State="_QocTAOx3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTState xmi:id="_SE97YOx3EeWC6NxYAfYK4w" base_State="_SE8GMOx3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_yGfXIOx3EeWC6NxYAfYK4w" base_Pseudostate="_yGdh8Ox3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_yGf-MOx3EeWC6NxYAfYK4w" base_Region="_yGbswOx3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_yGglQOx3EeWC6NxYAfYK4w" base_StateMachine="_yGZQgOx3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTState xmi:id="_z2vMwOx3EeWC6NxYAfYK4w" base_State="_z2tXkOx3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTState xmi:id="_0UpQwOx3EeWC6NxYAfYK4w" base_State="_0UnbkOx3EeWC6NxYAfYK4w"/>
+ <UMLRTStateMachines:RTState xmi:id="_Pzy9wN9NEeazo4k7FdcQuw" base_State="_PzsQEN9NEeazo4k7FdcQuw"/>
</xmi:XMI>
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/CMakeLists.txt b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/CMakeLists.txt
new file mode 100644
index 0000000..913dfe0
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/CMakeLists.txt
@@ -0,0 +1,36 @@
+# Generated 2017-01-20 15:28:07
+
+cmake_minimum_required(VERSION 2.8.7)
+set(TARGET TopMain)
+project(${TARGET})
+
+# require location of supporting RTS
+if (NOT UMLRTS_ROOT)
+ if (DEFINED ENV{UMLRTS_ROOT})
+ set(UMLRTS_ROOT $ENV{UMLRTS_ROOT})
+ else ()
+ set(UMLRTS_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/umlrt.rts)
+ endif ()
+endif ()
+
+# setup primary envars - provides tooling config
+include(${UMLRTS_ROOT}/build/buildenv.cmake)
+
+# model sources
+set(SRCS TopMain.cc UtilityMacros.cc Protocol1.cc Sender.cc Receiver.cc Medium.cc Start.cc Top.cc TopControllers.cc )
+
+# specify target
+add_executable(${TARGET} ${SRCS})
+
+# setup lib dependency support after defining TARGET
+include(${UMLRTS_ROOT}/build/rtslib.cmake)
+
+# compiler parameters
+set_target_properties(${TARGET} PROPERTIES COMPILE_OPTIONS "${COPTS}")
+set_target_properties(${TARGET} PROPERTIES COMPILE_DEFINITIONS "${CDEFS}")
+include_directories(${INCS})
+
+# linker parameters
+set_target_properties(${TARGET} PROPERTIES CMAKE_EXE_LINKER_FLAGS "${LOPTS}")
+target_link_libraries(${TARGET} ${LIBS})
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Makefile b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Makefile
new file mode 100644
index 0000000..0bcbd22
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Makefile
@@ -0,0 +1,11 @@
+##################################################
+# Default makefile
+# Redirect make to target makefile
+##################################################
+
+all:
+ make -f MakefileTop.mk all
+clean:
+ make -f MakefileTop.mk clean
+.PHONY:
+ make -f MakefileTop.mk all clean
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/MakefileTop.mk b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/MakefileTop.mk
new file mode 100644
index 0000000..fe8a9f5
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/MakefileTop.mk
@@ -0,0 +1,49 @@
+# set default value for TARGETOS if is it not defined
+ifeq ($(TARGETOS), )
+$(warning warning: TARGETOS not defined. Choosing linux)
+TARGETOS=linux
+endif
+
+# set default value for BUILDTOOLS if is it not defined
+ifeq ($(BUILDTOOLS), )
+$(warning warning: BUILDTOOLS not defined. Choosing x86-gcc-4.6.3)
+BUILDTOOLS=x86-gcc-4.6.3
+endif
+
+# Location of RTS root.
+UMLRTS_ROOT ?= ./umlrt.rts
+
+CONFIG=$(TARGETOS).$(BUILDTOOLS)
+
+# Destination directory for the RTS services library.
+LIBDEST=$(UMLRTS_ROOT)/lib/$(CONFIG)
+
+include $(UMLRTS_ROOT)/build/host/host.mk
+include $(UMLRTS_ROOT)/build/buildtools/$(BUILDTOOLS)/buildtools.mk
+
+LD_PATHS=$(LIBDEST)
+CC_INCLUDES+=$(UMLRTS_ROOT)/include
+
+CC_DEFINES:=$(foreach d, $(CC_DEFINES), $(CC_DEF)$d)
+CC_INCLUDES:=$(foreach i, $(CC_INCLUDES), $(CC_INC)$i)
+LD_LIBS:=$(foreach i, $(LD_LIBS), $(LD_LIB)$i)
+LD_PATHS:=$(foreach i, $(LD_PATHS), $(LD_LIBPATH)$i)
+
+SRCS = TopMain.cc UtilityMacros.cc Protocol1.cc Sender.cc Receiver.cc Medium.cc Start.cc Top.cc TopControllers.cc
+OBJS = $(subst $(CC_EXT),$(OBJ_EXT),$(SRCS))
+
+MAIN = TopMain$(EXE_EXT)
+
+all: $(MAIN)
+
+$(MAIN): $(OBJS) $(UMLRTS_ROOT)/lib/$(CONFIG)/$(LIB_PRFX)rts$(LIB_EXT)
+ $(LD) $(LD_FLAGS) $(OBJS) $(LD_PATHS) $(LD_LIBS) $(LD_OUT)$@
+
+%$(OBJ_EXT) : %$(CC_EXT)
+ $(CC) $< $(CC_FLAGS) $(CC_DEFINES) $(CC_INCLUDES) $(CC_OUT)$@
+
+clean :
+ @echo $(RM) main$(EXE_EXT) *$(OBJ_EXT) *$(DEP_EXT) $(DBG_FILES)
+ @$(RM) main$(EXE_EXT) *$(OBJ_EXT) *$(DEP_EXT) $(DBG_FILES)
+
+.PHONY: all clean
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Medium.cc b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Medium.cc
new file mode 100644
index 0000000..7cc1172
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Medium.cc
@@ -0,0 +1,162 @@
+
+#include "Medium.hh"
+
+#include "Receiver.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcapsulepart.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsulerole.hh"
+#include "umlrtcommsport.hh"
+#include "umlrtcommsportrole.hh"
+#include "umlrtframeservice.hh"
+class UMLRTRtsInterface;
+
+#include <iostream>
+#include "UtilityMacros.hh"
+using namespace std;
+
+Capsule_Medium::Capsule_Medium( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, m_inp( borderPorts[borderport_m_inp] )
+, m_out( borderPorts[borderport_m_out] )
+, eavesdropper( &slot->parts[part_eavesdropper] )
+{
+}
+
+
+
+
+
+
+
+void Capsule_Medium::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_m_inp:
+ switch( index )
+ {
+ case 0:
+ UMLRTFrameService::connectFarEnds( borderPorts[borderport_m_inp], index, borderPorts[borderport_m_out], 0 );
+ UMLRTFrameService::sendBoundUnboundFarEnd( borderPorts[borderport_m_inp], index, true );
+ UMLRTFrameService::sendBoundUnboundFarEnd( borderPorts[borderport_m_out], 0, true );
+ break;
+ case 1:
+ UMLRTFrameService::connectRelayPort( borderPorts[borderport_m_inp], index, &slot->parts[part_eavesdropper].slots[0]->ports[Capsule_Receiver::borderport_inp], 0 );
+ UMLRTFrameService::bindSubcapsulePort( true, slot->parts[part_eavesdropper].slots[0]->capsule, portId, index );
+ break;
+ }
+ break;
+ case borderport_m_out:
+ switch( index )
+ {
+ }
+ break;
+ }
+}
+
+void Capsule_Medium::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_m_inp:
+ switch( index )
+ {
+ case 0:
+ UMLRTFrameService::sendBoundUnboundForPortIndex( borderPorts[borderport_m_inp], index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_m_inp], index );
+ break;
+ case 1:
+ UMLRTFrameService::unbindSubcapsulePort( true, slot->parts[part_eavesdropper].slots[0]->capsule, portId, index );
+ break;
+ }
+ break;
+ case borderport_m_out:
+ switch( index )
+ {
+ case 0:
+ UMLRTFrameService::sendBoundUnboundForPortIndex( borderPorts[borderport_m_out], index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_m_out], index );
+ break;
+ }
+ break;
+ }
+}
+
+void Capsule_Medium::initialize( const UMLRTMessage & msg )
+{
+}
+
+void Capsule_Medium::inject( const UMLRTMessage & msg )
+{
+}
+
+
+static const UMLRTCapsuleRole roles[] =
+{
+ {
+ "eavesdropper",
+ &Receiver,
+ 1,
+ 1,
+ false,
+ false
+ }
+};
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Medium::port_m_inp,
+ "Protocol1",
+ "m_inp",
+ "",
+ 2,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ true
+ },
+ {
+ Capsule_Medium::port_m_out,
+ "Protocol1",
+ "m_out",
+ "",
+ 1,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Medium( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ UMLRTFrameService::connectFarEnds( borderPorts[Capsule_Medium::borderport_m_inp], 0, borderPorts[Capsule_Medium::borderport_m_out], 0 );
+ UMLRTFrameService::connectRelayPort( borderPorts[Capsule_Medium::borderport_m_inp], 1, &slot->parts[Capsule_Medium::part_eavesdropper].slots[0]->ports[Capsule_Receiver::borderport_inp], 0 );
+ Receiver.instantiate( NULL, slot->parts[Capsule_Medium::part_eavesdropper].slots[0], UMLRTFrameService::createBorderPorts( slot->parts[Capsule_Medium::part_eavesdropper].slots[0], Receiver.numPortRolesBorder ) );
+ slot->capsule = new Capsule_Medium( &Medium, slot, borderPorts, NULL, false );
+}
+
+const UMLRTCapsuleClass Medium =
+{
+ "Medium",
+ NULL,
+ instantiate_Medium,
+ 1,
+ roles,
+ 2,
+ portroles_border,
+ 0,
+ NULL
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Medium.hh b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Medium.hh
new file mode 100644
index 0000000..5d90381
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Medium.hh
@@ -0,0 +1,48 @@
+
+#ifndef MEDIUM_HH
+#define MEDIUM_HH
+
+#include "Protocol1.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCapsulePart;
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+class Capsule_Medium : public UMLRTCapsule
+{
+public:
+ Capsule_Medium( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+protected:
+ Protocol1::Conj m_inp;
+public:
+ enum BorderPortId
+ {
+ borderport_m_inp,
+ borderport_m_out
+ };
+protected:
+ Protocol1::Base m_out;
+public:
+ enum PartId
+ {
+ part_eavesdropper
+ };
+protected:
+ const UMLRTCapsulePart * const eavesdropper;
+public:
+ enum PortId
+ {
+ port_m_inp,
+ port_m_out
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+ virtual void initialize( const UMLRTMessage & msg );
+ virtual void inject( const UMLRTMessage & msg );
+};
+extern const UMLRTCapsuleClass Medium;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Protocol1.cc b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Protocol1.cc
new file mode 100644
index 0000000..4ddb137
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Protocol1.cc
@@ -0,0 +1,50 @@
+
+#include "Protocol1.hh"
+
+#include "umlrtobjectclass.hh"
+#include "umlrtoutsignal.hh"
+struct UMLRTCommsPort;
+
+static UMLRTObject_field fields_msg1[] =
+{
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0
+ }
+ #endif
+};
+
+static UMLRTObject payload_msg1 =
+{
+ 0,
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ 1
+ #else
+ 0
+ #endif
+ ,
+ fields_msg1
+};
+
+Protocol1::Base::Base( const UMLRTCommsPort * & srcPort )
+: UMLRTProtocol( srcPort )
+{
+}
+
+UMLRTOutSignal Protocol1::Base::msg1() const
+{
+ UMLRTOutSignal signal;
+ signal.initialize( "msg1", signal_msg1, srcPort, &payload_msg1 );
+ return signal;
+}
+
+Protocol1::Conj::Conj( const UMLRTCommsPort * & srcPort )
+: UMLRTProtocol( srcPort )
+{
+}
+
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Protocol1.hh b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Protocol1.hh
new file mode 100644
index 0000000..3f65d75
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Protocol1.hh
@@ -0,0 +1,30 @@
+
+#ifndef PROTOCOL1_HH
+#define PROTOCOL1_HH
+
+#include "umlrtoutsignal.hh"
+#include "umlrtprotocol.hh"
+#include "umlrtsignal.hh"
+struct UMLRTCommsPort;
+
+namespace Protocol1
+{
+ class Base : public UMLRTProtocol
+ {
+ public:
+ Base( const UMLRTCommsPort * & srcPort );
+ UMLRTOutSignal msg1() const;
+ };
+ class Conj : public UMLRTProtocol
+ {
+ public:
+ Conj( const UMLRTCommsPort * & srcPort );
+ };
+ enum SignalId
+ {
+ signal_msg1 = UMLRTSignal::FIRST_PROTOCOL_SIGNAL_ID
+ };
+};
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Receiver.cc b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Receiver.cc
new file mode 100644
index 0000000..7728c61
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Receiver.cc
@@ -0,0 +1,240 @@
+
+#include "Receiver.hh"
+
+#include "Protocol1.hh"
+#include "umlrtcommsportrole.hh"
+#include "umlrtmessage.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsuleclass.hh"
+#include "umlrtframeservice.hh"
+class UMLRTRtsInterface;
+struct UMLRTCommsPort;
+
+#include <iostream>
+#include "UtilityMacros.hh"
+using namespace std;
+
+int Capsule_Receiver::messagesReceived = 0;
+Capsule_Receiver::Capsule_Receiver( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, inp( borderPorts[borderport_inp] )
+, currentState( SPECIAL_INTERNAL_STATE_UNVISITED )
+{
+ stateNames[State1] = "State1";
+ stateNames[State2] = "State2";
+ stateNames[State3] = "State3";
+ stateNames[SPECIAL_INTERNAL_STATE_UNVISITED] = "<uninitialized>";
+}
+
+
+
+
+
+void Capsule_Receiver::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_inp:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_inp, index, true );
+ break;
+ }
+}
+
+void Capsule_Receiver::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_inp:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_inp, index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_inp], index );
+ break;
+ }
+}
+
+
+void Capsule_Receiver::inject( const UMLRTMessage & message )
+{
+ msg = &message;
+ switch( currentState )
+ {
+ case State1:
+ currentState = state_____State1( &message );
+ break;
+ case State2:
+ currentState = state_____State2( &message );
+ break;
+ case State3:
+ currentState = state_____State3( &message );
+ break;
+ default:
+ break;
+ }
+}
+
+void Capsule_Receiver::initialize( const UMLRTMessage & message )
+{
+ msg = &message;
+ actionchain_____t0( &message );
+ currentState = State1;
+}
+
+const char * Capsule_Receiver::getCurrentStateString() const
+{
+ return stateNames[currentState];
+}
+
+
+
+
+void Capsule_Receiver::entryaction_____State1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml RootElement::Receiver::State1 entry */
+ cout << "[Receiver](State1) receiver waiting for message" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Receiver::entryaction_____State2( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml RootElement::Receiver::State2 entry */
+ cout << "[Receiver](State2) receiver received first message" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Receiver::entryaction_____State3( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml RootElement::Receiver::State3 entry */
+ cout << "[Receiver](State3) receiver received second message" << endl;
+ exit(0);
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Receiver::exitaction_____State1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ #undef rtdata
+}
+
+void Capsule_Receiver::exitaction_____State2( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ #undef rtdata
+}
+
+void Capsule_Receiver::actionchain_____t0( const UMLRTMessage * msg )
+{
+ entryaction_____State1( msg );
+}
+
+void Capsule_Receiver::actionchain_____t1( const UMLRTMessage * msg )
+{
+ exitaction_____State1( msg );
+ entryaction_____State2( msg );
+}
+
+void Capsule_Receiver::actionchain_____t2( const UMLRTMessage * msg )
+{
+ exitaction_____State2( msg );
+ entryaction_____State3( msg );
+}
+
+Capsule_Receiver::State Capsule_Receiver::state_____State1( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ case port_inp:
+ switch( msg->getSignalId() )
+ {
+ case Protocol1::signal_msg1:
+ actionchain_____t1( msg );
+ return State2;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+Capsule_Receiver::State Capsule_Receiver::state_____State2( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ case port_inp:
+ switch( msg->getSignalId() )
+ {
+ case Protocol1::signal_msg1:
+ actionchain_____t2( msg );
+ return State3;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+Capsule_Receiver::State Capsule_Receiver::state_____State3( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Receiver::port_inp,
+ "Protocol1",
+ "inp",
+ "",
+ 1,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Receiver( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ slot->capsule = new Capsule_Receiver( &Receiver, slot, borderPorts, NULL, false );
+}
+
+const UMLRTCapsuleClass Receiver =
+{
+ "Receiver",
+ NULL,
+ instantiate_Receiver,
+ 0,
+ NULL,
+ 1,
+ portroles_border,
+ 0,
+ NULL
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Receiver.hh b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Receiver.hh
new file mode 100644
index 0000000..8426507
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Receiver.hh
@@ -0,0 +1,61 @@
+
+#ifndef RECEIVER_HH
+#define RECEIVER_HH
+
+#include "Protocol1.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+class Capsule_Receiver : public UMLRTCapsule
+{
+public:
+ Capsule_Receiver( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+protected:
+ Protocol1::Conj inp;
+public:
+ enum BorderPortId
+ {
+ borderport_inp
+ };
+ enum PartId
+ {
+ };
+ enum PortId
+ {
+ port_inp
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+ static int messagesReceived;
+ virtual void inject( const UMLRTMessage & message );
+ virtual void initialize( const UMLRTMessage & message );
+ const char * getCurrentStateString() const;
+private:
+ enum State
+ {
+ State1,
+ State2,
+ State3,
+ SPECIAL_INTERNAL_STATE_UNVISITED
+ };
+ const char * stateNames[4];
+ State currentState;
+ void entryaction_____State1( const UMLRTMessage * msg );
+ void entryaction_____State2( const UMLRTMessage * msg );
+ void entryaction_____State3( const UMLRTMessage * msg );
+ void exitaction_____State1( const UMLRTMessage * msg );
+ void exitaction_____State2( const UMLRTMessage * msg );
+ void actionchain_____t0( const UMLRTMessage * msg );
+ void actionchain_____t1( const UMLRTMessage * msg );
+ void actionchain_____t2( const UMLRTMessage * msg );
+ State state_____State1( const UMLRTMessage * msg );
+ State state_____State2( const UMLRTMessage * msg );
+ State state_____State3( const UMLRTMessage * msg );
+};
+extern const UMLRTCapsuleClass Receiver;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Sender.cc b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Sender.cc
new file mode 100644
index 0000000..af8bc5f
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Sender.cc
@@ -0,0 +1,225 @@
+
+#include "Sender.hh"
+
+#include "Start.hh"
+#include "umlrtcommsportrole.hh"
+#include "umlrtmessage.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsuleclass.hh"
+#include "umlrtframeservice.hh"
+class UMLRTRtsInterface;
+struct UMLRTCommsPort;
+
+#include <iostream>
+#include "UtilityMacros.hh"
+using namespace std;
+
+Capsule_Sender::Capsule_Sender( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, out( borderPorts[borderport_out] )
+, start( borderPorts[borderport_start] )
+, currentState( SPECIAL_INTERNAL_STATE_UNVISITED )
+{
+ stateNames[State1] = "State1";
+ stateNames[State2] = "State2";
+ stateNames[SPECIAL_INTERNAL_STATE_UNVISITED] = "<uninitialized>";
+}
+
+
+
+
+
+
+void Capsule_Sender::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_out:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_out, index, true );
+ break;
+ case borderport_start:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_start, index, true );
+ break;
+ }
+}
+
+void Capsule_Sender::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_out:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_out, index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_out], index );
+ break;
+ case borderport_start:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_start, index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_start], index );
+ break;
+ }
+}
+
+void Capsule_Sender::inject( const UMLRTMessage & message )
+{
+ msg = &message;
+ switch( currentState )
+ {
+ case State1:
+ currentState = state_____State1( &message );
+ break;
+ case State2:
+ currentState = state_____State2( &message );
+ break;
+ default:
+ break;
+ }
+}
+
+void Capsule_Sender::initialize( const UMLRTMessage & message )
+{
+ msg = &message;
+ actionchain_____t0( &message );
+ currentState = State1;
+}
+
+const char * Capsule_Sender::getCurrentStateString() const
+{
+ return stateNames[currentState];
+}
+
+
+
+
+void Capsule_Sender::entryaction_____State1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml RootElement::Sender::State1 entry */
+ cout << "[Sender](State1) sender waiting to start" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Sender::entryaction_____State2( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml RootElement::Sender::State2 entry */
+ cout << "[Sender](State2) sender sending message" << endl;
+ out.msg1().send();
+ cout << "[Sender](State2) sender sent message" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Sender::exitaction_____State1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ #undef rtdata
+}
+
+void Capsule_Sender::transitionaction_____t1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml RootElement::Sender transition State1,State2,begin:start */
+ cout << "[Sender](t1) sender received begin message" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Sender::actionchain_____t0( const UMLRTMessage * msg )
+{
+ entryaction_____State1( msg );
+}
+
+void Capsule_Sender::actionchain_____t1( const UMLRTMessage * msg )
+{
+ exitaction_____State1( msg );
+ transitionaction_____t1( msg );
+ entryaction_____State2( msg );
+}
+
+Capsule_Sender::State Capsule_Sender::state_____State1( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ case port_start:
+ switch( msg->getSignalId() )
+ {
+ case Start::signal_begin:
+ actionchain_____t1( msg );
+ return State2;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+Capsule_Sender::State Capsule_Sender::state_____State2( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Sender::port_out,
+ "Protocol1",
+ "out",
+ "",
+ 2,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ },
+ {
+ Capsule_Sender::port_start,
+ "Start",
+ "start",
+ "",
+ 1,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Sender( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ slot->capsule = new Capsule_Sender( &Sender, slot, borderPorts, NULL, false );
+}
+
+const UMLRTCapsuleClass Sender =
+{
+ "Sender",
+ NULL,
+ instantiate_Sender,
+ 0,
+ NULL,
+ 2,
+ portroles_border,
+ 0,
+ NULL
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Sender.hh b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Sender.hh
new file mode 100644
index 0000000..edf2db4
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Sender.hh
@@ -0,0 +1,62 @@
+
+#ifndef SENDER_HH
+#define SENDER_HH
+
+#include "Protocol1.hh"
+#include "Start.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+class Capsule_Sender : public UMLRTCapsule
+{
+public:
+ Capsule_Sender( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+protected:
+ Protocol1::Base out;
+public:
+ enum BorderPortId
+ {
+ borderport_out,
+ borderport_start
+ };
+protected:
+ Start::Conj start;
+public:
+ enum PartId
+ {
+ };
+ enum PortId
+ {
+ port_out,
+ port_start
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+ virtual void inject( const UMLRTMessage & message );
+ virtual void initialize( const UMLRTMessage & message );
+ const char * getCurrentStateString() const;
+private:
+ enum State
+ {
+ State1,
+ State2,
+ SPECIAL_INTERNAL_STATE_UNVISITED
+ };
+ const char * stateNames[3];
+ State currentState;
+ void entryaction_____State1( const UMLRTMessage * msg );
+ void entryaction_____State2( const UMLRTMessage * msg );
+ void exitaction_____State1( const UMLRTMessage * msg );
+ void transitionaction_____t1( const UMLRTMessage * msg );
+ void actionchain_____t0( const UMLRTMessage * msg );
+ void actionchain_____t1( const UMLRTMessage * msg );
+ State state_____State1( const UMLRTMessage * msg );
+ State state_____State2( const UMLRTMessage * msg );
+};
+extern const UMLRTCapsuleClass Sender;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Start.cc b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Start.cc
new file mode 100644
index 0000000..63b3114
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Start.cc
@@ -0,0 +1,50 @@
+
+#include "Start.hh"
+
+#include "umlrtobjectclass.hh"
+#include "umlrtoutsignal.hh"
+struct UMLRTCommsPort;
+
+static UMLRTObject_field fields_begin[] =
+{
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0
+ }
+ #endif
+};
+
+static UMLRTObject payload_begin =
+{
+ 0,
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ 1
+ #else
+ 0
+ #endif
+ ,
+ fields_begin
+};
+
+Start::Conj::Conj( const UMLRTCommsPort * & srcPort )
+: UMLRTProtocol( srcPort )
+{
+}
+
+Start::Base::Base( const UMLRTCommsPort * & srcPort )
+: UMLRTProtocol( srcPort )
+{
+}
+
+UMLRTOutSignal Start::Base::begin() const
+{
+ UMLRTOutSignal signal;
+ signal.initialize( "begin", signal_begin, srcPort, &payload_begin );
+ return signal;
+}
+
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Start.hh b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Start.hh
new file mode 100644
index 0000000..ef03e4c
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Start.hh
@@ -0,0 +1,30 @@
+
+#ifndef START_HH
+#define START_HH
+
+#include "umlrtoutsignal.hh"
+#include "umlrtprotocol.hh"
+#include "umlrtsignal.hh"
+struct UMLRTCommsPort;
+
+namespace Start
+{
+ class Conj : public UMLRTProtocol
+ {
+ public:
+ Conj( const UMLRTCommsPort * & srcPort );
+ };
+ enum SignalId
+ {
+ signal_begin = UMLRTSignal::FIRST_PROTOCOL_SIGNAL_ID
+ };
+ class Base : public UMLRTProtocol
+ {
+ public:
+ Base( const UMLRTCommsPort * & srcPort );
+ UMLRTOutSignal begin() const;
+ };
+};
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Top-connections.log b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Top-connections.log
new file mode 100644
index 0000000..0086e91
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Top-connections.log
@@ -0,0 +1,11 @@
+Top.RTConnector1
+ Top#start.far[0] <-> Top.sender#start.far[0]
+Top.RTConnector2
+ Top.sender#out.far[0] <-> Top.medium#m_inp.far[0]
+ Top.sender#out.far[1] <-> Top.medium#m_inp.far[1]
+Top.RTConnector3
+ Top.medium#m_out.far[0] <-> Top.receiver#inp.far[0]
+Top.medium.RTConnector1
+ Top.sender#out.far[0] <-> Top.receiver#inp.far[0]
+Top.medium.RTConnector2
+ Top.sender#out.far[1] <-> Top.medium.eavesdropper#inp.far[0]
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Top.cc b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Top.cc
new file mode 100644
index 0000000..f0d7b61
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Top.cc
@@ -0,0 +1,220 @@
+
+#include "Top.hh"
+
+#include "Medium.hh"
+#include "Receiver.hh"
+#include "Sender.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcapsulepart.hh"
+#include "umlrtcommsportrole.hh"
+#include "umlrtmessage.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsulerole.hh"
+#include "umlrtcommsport.hh"
+#include "umlrtframeservice.hh"
+class UMLRTRtsInterface;
+
+#include <iostream>
+#include "UtilityMacros.hh"
+using namespace std;
+
+Capsule_Top::Capsule_Top( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, frame( borderPorts[borderport_frame] )
+, start( internalPorts[internalport_start] )
+, medium( &slot->parts[part_medium] )
+, receiver( &slot->parts[part_receiver] )
+, sender( &slot->parts[part_sender] )
+, currentState( SPECIAL_INTERNAL_STATE_UNVISITED )
+{
+ stateNames[State1] = "State1";
+ stateNames[SPECIAL_INTERNAL_STATE_UNVISITED] = "<uninitialized>";
+}
+
+
+
+
+
+
+
+
+
+
+void Capsule_Top::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ }
+ else
+ UMLRTFrameService::sendBoundUnbound( internalPorts, internalport_start, index, true );
+}
+
+void Capsule_Top::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ }
+ else
+ {
+ UMLRTFrameService::sendBoundUnbound( internalPorts, internalport_start, index, false );
+ UMLRTFrameService::disconnectPort( internalPorts[internalport_start], index );
+ }
+}
+
+
+void Capsule_Top::inject( const UMLRTMessage & message )
+{
+ msg = &message;
+ switch( currentState )
+ {
+ case State1:
+ currentState = state_____State1( &message );
+ break;
+ default:
+ break;
+ }
+}
+
+void Capsule_Top::initialize( const UMLRTMessage & message )
+{
+ msg = &message;
+ actionchain_____t0( &message );
+ currentState = State1;
+}
+
+const char * Capsule_Top::getCurrentStateString() const
+{
+ return stateNames[currentState];
+}
+
+
+
+
+void Capsule_Top::entryaction_____State1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalMixedPassThrough/RelayPortOptionalMixedPassThrough.uml RootElement::Top::State1 entry */
+ cout << "[Top](State1) starting" << endl;
+ cout << "[Top](State1) incarnating medium" << endl;
+ mediumId = frame.incarnate(medium, Medium);
+ if (!mediumId.isValid()) {
+ cout << "[Top](State1) failed to incarnate medium" << endl;
+ cout << "Error: " << context()->strerror() << endl;
+ exit(0);
+ }
+ cout << "[Top](State1) starting sender" << endl;
+ start.begin().send();
+ cout << "[Top](State1) begin message sent" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Top::actionchain_____t0( const UMLRTMessage * msg )
+{
+ entryaction_____State1( msg );
+}
+
+Capsule_Top::State Capsule_Top::state_____State1( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+
+static const UMLRTCapsuleRole roles[] =
+{
+ {
+ "medium",
+ &Medium,
+ 0,
+ 1,
+ true,
+ false
+ },
+ {
+ "receiver",
+ &Receiver,
+ 1,
+ 1,
+ false,
+ false
+ },
+ {
+ "sender",
+ &Sender,
+ 1,
+ 1,
+ false,
+ false
+ }
+};
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Top::port_frame,
+ "Frame",
+ "frame",
+ "",
+ 0,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ }
+};
+
+static const UMLRTCommsPortRole portroles_internal[] =
+{
+ {
+ Capsule_Top::port_start,
+ "Start",
+ "start",
+ "",
+ 1,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Top( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ const UMLRTCommsPort * * internalPorts = UMLRTFrameService::createInternalPorts( slot, &Top );
+ UMLRTFrameService::connectPorts( internalPorts[Capsule_Top::internalport_start], 0, &slot->parts[Capsule_Top::part_sender].slots[0]->ports[Capsule_Sender::borderport_start], 0 );
+ UMLRTFrameService::connectPorts( &slot->parts[Capsule_Top::part_medium].slots[0]->ports[Capsule_Medium::borderport_m_inp], 0, &slot->parts[Capsule_Top::part_sender].slots[0]->ports[Capsule_Sender::borderport_out], 0 );
+ UMLRTFrameService::connectPorts( &slot->parts[Capsule_Top::part_medium].slots[0]->ports[Capsule_Medium::borderport_m_inp], 1, &slot->parts[Capsule_Top::part_sender].slots[0]->ports[Capsule_Sender::borderport_out], 1 );
+ UMLRTFrameService::connectPorts( &slot->parts[Capsule_Top::part_medium].slots[0]->ports[Capsule_Medium::borderport_m_out], 0, &slot->parts[Capsule_Top::part_receiver].slots[0]->ports[Capsule_Receiver::borderport_inp], 0 );
+ Receiver.instantiate( NULL, slot->parts[Capsule_Top::part_receiver].slots[0], UMLRTFrameService::createBorderPorts( slot->parts[Capsule_Top::part_receiver].slots[0], Receiver.numPortRolesBorder ) );
+ Sender.instantiate( NULL, slot->parts[Capsule_Top::part_sender].slots[0], UMLRTFrameService::createBorderPorts( slot->parts[Capsule_Top::part_sender].slots[0], Sender.numPortRolesBorder ) );
+ slot->capsule = new Capsule_Top( &Top, slot, borderPorts, internalPorts, false );
+}
+
+const UMLRTCapsuleClass Top =
+{
+ "Top",
+ NULL,
+ instantiate_Top,
+ 3,
+ roles,
+ 1,
+ portroles_border,
+ 1,
+ portroles_internal
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Top.hh b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Top.hh
new file mode 100644
index 0000000..89b1b30
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/Top.hh
@@ -0,0 +1,72 @@
+
+#ifndef TOP_HH
+#define TOP_HH
+
+#include "Start.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcapsuleid.hh"
+#include "umlrtframeprotocol.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCapsulePart;
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+class Capsule_Top : public UMLRTCapsule
+{
+public:
+ Capsule_Top( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+protected:
+ UMLRTFrameProtocol_baserole frame;
+public:
+ enum BorderPortId
+ {
+ borderport_frame
+ };
+protected:
+ Start::Base start;
+public:
+ enum InternalPortId
+ {
+ internalport_start
+ };
+ enum PartId
+ {
+ part_medium,
+ part_receiver,
+ part_sender
+ };
+protected:
+ const UMLRTCapsulePart * const medium;
+ const UMLRTCapsulePart * const receiver;
+ const UMLRTCapsulePart * const sender;
+public:
+ enum PortId
+ {
+ port_frame,
+ port_start
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+protected:
+ UMLRTCapsuleId mediumId;
+public:
+ virtual void inject( const UMLRTMessage & message );
+ virtual void initialize( const UMLRTMessage & message );
+ const char * getCurrentStateString() const;
+private:
+ enum State
+ {
+ State1,
+ SPECIAL_INTERNAL_STATE_UNVISITED
+ };
+ const char * stateNames[2];
+ State currentState;
+ void entryaction_____State1( const UMLRTMessage * msg );
+ void actionchain_____t0( const UMLRTMessage * msg );
+ State state_____State1( const UMLRTMessage * msg );
+};
+extern const UMLRTCapsuleClass Top;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/TopControllers.cc b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/TopControllers.cc
new file mode 100644
index 0000000..7e2deea
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/TopControllers.cc
@@ -0,0 +1,438 @@
+
+#include "TopControllers.hh"
+
+#include "Medium.hh"
+#include "Receiver.hh"
+#include "Sender.hh"
+#include "Top.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcapsulepart.hh"
+#include "umlrtcommsport.hh"
+#include "umlrtcommsportfarend.hh"
+#include "umlrtcontroller.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+
+
+static UMLRTController DefaultController_( "DefaultController" );
+
+UMLRTController * DefaultController = &DefaultController_;
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top[] =
+{
+ {
+ 0,
+ NULL
+ }
+};
+
+UMLRTCommsPort borderports_Top[] =
+{
+ {
+ &Top,
+ Capsule_Top::borderport_frame,
+ &Top_slots[InstId_Top],
+ 1,
+ borderfarEndList_Top,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_ptrs[] =
+{
+ &borderports_Top[0]
+};
+
+static UMLRTCommsPortFarEnd internalfarEndList_Top[] =
+{
+ {
+ 0,
+ &borderports_Top_sender[Capsule_Sender::borderport_start]
+ }
+};
+
+UMLRTCommsPort internalports_Top[] =
+{
+ {
+ &Top,
+ Capsule_Top::internalport_start,
+ &Top_slots[InstId_Top],
+ 1,
+ internalfarEndList_Top,
+ NULL,
+ NULL,
+ "",
+ true,
+ false,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * internalports_Top_ptrs[] =
+{
+ &internalports_Top[0]
+};
+
+static Capsule_Top top( &Top, &Top_slots[InstId_Top], borderports_Top_ptrs, internalports_Top_ptrs, true );
+
+static UMLRTSlot * slots_Top[] =
+{
+ &Top_slots[InstId_Top_medium],
+ &Top_slots[InstId_Top_receiver],
+ &Top_slots[InstId_Top_sender]
+};
+
+static UMLRTCapsulePart parts_Top[] =
+{
+ {
+ &Top,
+ Capsule_Top::part_medium,
+ 1,
+ &slots_Top[0]
+ },
+ {
+ &Top,
+ Capsule_Top::part_receiver,
+ 1,
+ &slots_Top[1]
+ },
+ {
+ &Top,
+ Capsule_Top::part_sender,
+ 1,
+ &slots_Top[2]
+ }
+};
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_medium[] =
+{
+ {
+ 0,
+ NULL
+ },
+ {
+ 0,
+ NULL
+ },
+ {
+ 0,
+ NULL
+ }
+};
+
+UMLRTCommsPort borderports_Top_medium[] =
+{
+ {
+ &Medium,
+ Capsule_Medium::borderport_m_inp,
+ &Top_slots[InstId_Top_medium],
+ 2,
+ borderfarEndList_Top_medium,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ true,
+ false,
+ false,
+ false,
+ true
+ },
+ {
+ &Medium,
+ Capsule_Medium::borderport_m_out,
+ &Top_slots[InstId_Top_medium],
+ 1,
+ &borderfarEndList_Top_medium[2],
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ true,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static UMLRTSlot * slots_Top_medium[] =
+{
+ &Top_slots[InstId_Top_medium_eavesdropper]
+};
+
+static UMLRTCapsulePart parts_Top_medium[] =
+{
+ {
+ &Medium,
+ Capsule_Medium::part_eavesdropper,
+ 1,
+ &slots_Top_medium[0]
+ }
+};
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_medium_eavesdropper[] =
+{
+ {
+ 1,
+ &borderports_Top_sender[Capsule_Sender::borderport_out]
+ }
+};
+
+UMLRTCommsPort borderports_Top_medium_eavesdropper[] =
+{
+ {
+ &Receiver,
+ Capsule_Receiver::borderport_inp,
+ &Top_slots[InstId_Top_medium_eavesdropper],
+ 1,
+ borderfarEndList_Top_medium_eavesdropper,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_medium_eavesdropper_ptrs[] =
+{
+ &borderports_Top_medium_eavesdropper[0]
+};
+
+static Capsule_Receiver top_medium_eavesdropper( &Receiver, &Top_slots[InstId_Top_medium_eavesdropper], borderports_Top_medium_eavesdropper_ptrs, NULL, true );
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_receiver[] =
+{
+ {
+ 0,
+ &borderports_Top_sender[Capsule_Sender::borderport_out]
+ }
+};
+
+UMLRTCommsPort borderports_Top_receiver[] =
+{
+ {
+ &Receiver,
+ Capsule_Receiver::borderport_inp,
+ &Top_slots[InstId_Top_receiver],
+ 1,
+ borderfarEndList_Top_receiver,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_receiver_ptrs[] =
+{
+ &borderports_Top_receiver[0]
+};
+
+static Capsule_Receiver top_receiver( &Receiver, &Top_slots[InstId_Top_receiver], borderports_Top_receiver_ptrs, NULL, true );
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_sender[] =
+{
+ {
+ 0,
+ &borderports_Top_receiver[Capsule_Receiver::borderport_inp]
+ },
+ {
+ 0,
+ &borderports_Top_medium_eavesdropper[Capsule_Receiver::borderport_inp]
+ },
+ {
+ 0,
+ &internalports_Top[Capsule_Top::internalport_start]
+ }
+};
+
+UMLRTCommsPort borderports_Top_sender[] =
+{
+ {
+ &Sender,
+ Capsule_Sender::borderport_out,
+ &Top_slots[InstId_Top_sender],
+ 2,
+ borderfarEndList_Top_sender,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ },
+ {
+ &Sender,
+ Capsule_Sender::borderport_start,
+ &Top_slots[InstId_Top_sender],
+ 1,
+ &borderfarEndList_Top_sender[2],
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_sender_ptrs[] =
+{
+ &borderports_Top_sender[0],
+ &borderports_Top_sender[1]
+};
+
+static Capsule_Sender top_sender( &Sender, &Top_slots[InstId_Top_sender], borderports_Top_sender_ptrs, NULL, true );
+
+UMLRTSlot Top_slots[] =
+{
+ {
+ "Top",
+ 0,
+ &Top,
+ NULL,
+ 0,
+ &top,
+ &DefaultController_,
+ 3,
+ parts_Top,
+ 1,
+ borderports_Top,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.medium",
+ 0,
+ &Medium,
+ &Top,
+ Capsule_Top::part_medium,
+ NULL,
+ &DefaultController_,
+ 1,
+ parts_Top_medium,
+ 2,
+ borderports_Top_medium,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.medium.eavesdropper",
+ 0,
+ &Receiver,
+ &Medium,
+ Capsule_Medium::part_eavesdropper,
+ &top_medium_eavesdropper,
+ &DefaultController_,
+ 0,
+ NULL,
+ 1,
+ borderports_Top_medium_eavesdropper,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.receiver",
+ 0,
+ &Receiver,
+ &Top,
+ Capsule_Top::part_receiver,
+ &top_receiver,
+ &DefaultController_,
+ 0,
+ NULL,
+ 1,
+ borderports_Top_receiver,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.sender",
+ 0,
+ &Sender,
+ &Top,
+ Capsule_Top::part_sender,
+ &top_sender,
+ &DefaultController_,
+ 0,
+ NULL,
+ 2,
+ borderports_Top_sender,
+ NULL,
+ true,
+ false
+ }
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/TopControllers.hh b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/TopControllers.hh
new file mode 100644
index 0000000..92e6126
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/TopControllers.hh
@@ -0,0 +1,27 @@
+
+#ifndef TOPCONTROLLERS_HH
+#define TOPCONTROLLERS_HH
+
+class UMLRTController;
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+enum CapsuleInstanceId
+{
+ InstId_Top,
+ InstId_Top_medium,
+ InstId_Top_medium_eavesdropper,
+ InstId_Top_receiver,
+ InstId_Top_sender
+};
+extern UMLRTController * DefaultController;
+extern UMLRTCommsPort borderports_Top[];
+extern UMLRTCommsPort internalports_Top[];
+extern UMLRTCommsPort borderports_Top_medium[];
+extern UMLRTCommsPort borderports_Top_medium_eavesdropper[];
+extern UMLRTCommsPort borderports_Top_receiver[];
+extern UMLRTCommsPort borderports_Top_sender[];
+extern UMLRTSlot Top_slots[];
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/TopMain.cc b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/TopMain.cc
new file mode 100644
index 0000000..0684f69
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/TopMain.cc
@@ -0,0 +1,38 @@
+#include "umlrtmain.hh"
+
+#include "umlrtcontroller.hh"
+#include "TopControllers.hh"
+#include "umlrtcapsuletocontrollermap.hh"
+#include "umlrtmessagepool.hh"
+#include "umlrtsignalelementpool.hh"
+#include "umlrttimerpool.hh"
+#include "umlrtuserconfig.hh"
+#include <stdio.h>
+
+static UMLRTSignalElement signalElementBuffer[USER_CONFIG_SIGNAL_ELEMENT_POOL_SIZE];
+static UMLRTSignalElementPool signalElementPool( signalElementBuffer, USER_CONFIG_SIGNAL_ELEMENT_POOL_SIZE );
+
+static UMLRTMessage messageBuffer[USER_CONFIG_MESSAGE_POOL_SIZE];
+static UMLRTMessagePool messagePool( messageBuffer, USER_CONFIG_MESSAGE_POOL_SIZE );
+
+static UMLRTTimer timers[USER_CONFIG_TIMER_POOL_SIZE];
+static UMLRTTimerPool timerPool( timers, USER_CONFIG_TIMER_POOL_SIZE );
+
+int main( int argc, char * argv[] )
+{
+ UMLRTController::initializePools( &signalElementPool, &messagePool, &timerPool );
+ UMLRTMain::setArgs( argc, argv );
+ UMLRTCapsuleToControllerMap::setDefaultSlotList( Top_slots, 5 );
+
+ if( ! UMLRTMain::targetStartup() )
+ return EXIT_FAILURE;
+
+ DefaultController->spawn();
+
+ if( ! UMLRTMain::mainLoop() )
+ return UMLRTMain::targetShutdown( false );
+
+ DefaultController->join();
+
+ return UMLRTMain::targetShutdown( true );
+}
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/UtilityMacros.cc b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/UtilityMacros.cc
new file mode 100644
index 0000000..4d9ca8f
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/UtilityMacros.cc
@@ -0,0 +1,6 @@
+
+#include "UtilityMacros.hh"
+
+
+// Nothing
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/UtilityMacros.hh b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/UtilityMacros.hh
new file mode 100644
index 0000000..07327a3
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalMixedPassThrough/expected_src/UtilityMacros.hh
@@ -0,0 +1,12 @@
+
+#ifndef UTILITYMACROS_HH
+#define UTILITYMACROS_HH
+
+#define CAPINST "[" << name() << ":" << getTypeName() << "]"
+#define FCAPINST "[" << name() << ":" << getTypeName() << "::" << getName() << "[" << getIndex() << "]]"
+#define CAPINST_STATE CAPINST << "(" << getCurrentStateString() << ")"
+#define FCAPINST_STATE FCAPINST << "(" << getCurrentStateString() << ")"
+
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.notation b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.notation
index 00ddb0c..33825b3 100644
--- a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.notation
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.notation
@@ -1,32 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
<notation:Diagram xmi:id="__hyYwMt0EeWdNb6-Lc-hxQ" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="__h01AMt0EeWdNb6-Lc-hxQ" type="2073">
+ <children xmi:type="notation:Shape" xmi:id="__h01AMt0EeWdNb6-Lc-hxQ" type="Class_Shape">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kQ36YMt2EeWdNb6-Lc-hxQ" source="PapyrusCSSForceValue">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kQ36Yct2EeWdNb6-Lc-hxQ" key="mutable" value="true"/>
</eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="__h3RQMt0EeWdNb6-Lc-hxQ" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="__h3RQct0EeWdNb6-Lc-hxQ" type="6089">
+ <children xmi:type="notation:DecorationNode" xmi:id="__h3RQMt0EeWdNb6-Lc-hxQ" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="__h3RQct0EeWdNb6-Lc-hxQ" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="__h34UMt0EeWdNb6-Lc-hxQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="__h34Uct0EeWdNb6-Lc-hxQ" type="7073">
- <children xmi:type="notation:Shape" xmi:id="_g0P38Mt1EeWdNb6-Lc-hxQ" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_g0QfAMt1EeWdNb6-Lc-hxQ" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_g0QfAct1EeWdNb6-Lc-hxQ" type="6054">
+ <children xmi:type="notation:BasicCompartment" xmi:id="__h34Uct0EeWdNb6-Lc-hxQ" type="Class_StructureCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_g0P38Mt1EeWdNb6-Lc-hxQ" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_g0QfAMt1EeWdNb6-Lc-hxQ" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_g0QfAct1EeWdNb6-Lc-hxQ" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_g0QfAst1EeWdNb6-Lc-hxQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_g0QfA8t1EeWdNb6-Lc-hxQ" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_g0QfA8t1EeWdNb6-Lc-hxQ" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_g0QfBMt1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_g0QfBct1EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_g0XzwMt1EeWdNb6-Lc-hxQ" type="3069">
+ <children xmi:type="notation:Shape" xmi:id="_g0XzwMt1EeWdNb6-Lc-hxQ" type="Port_Shape">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_k9-4AMt2EeWdNb6-Lc-hxQ" source="PapyrusCSSForceValue">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_k9-4Act2EeWdNb6-Lc-hxQ" key="mutable" value="true"/>
</eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_g0Xzwst1EeWdNb6-Lc-hxQ" type="5125">
+ <children xmi:type="notation:DecorationNode" xmi:id="_g0Xzwst1EeWdNb6-Lc-hxQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_g0Xzw8t1EeWdNb6-Lc-hxQ" x="-102" y="23"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_g0XzxMt1EeWdNb6-Lc-hxQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_g0XzxMt1EeWdNb6-Lc-hxQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_g0Xzxct1EeWdNb6-Lc-hxQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_KTYTEMt1EeWdNb6-Lc-hxQ"/>
@@ -53,11 +53,11 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_EQwT4EhOEeO0lv5O1DTHOQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_g0fIlct1EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_ej2tMMt2EeWdNb6-Lc-hxQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_ej2tMst2EeWdNb6-Lc-hxQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_ej2tMMt2EeWdNb6-Lc-hxQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ej2tMst2EeWdNb6-Lc-hxQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_ej2tM8t2EeWdNb6-Lc-hxQ" x="-25" y="22"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_ej2tNMt2EeWdNb6-Lc-hxQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ej2tNMt2EeWdNb6-Lc-hxQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_ej2tNct2EeWdNb6-Lc-hxQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_dLelAMt2EeWdNb6-Lc-hxQ"/>
@@ -66,20 +66,20 @@
<element xmi:type="uml:Property" href="RelayPortOptionalPassThrough.uml#_gywDIMt1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_g0P38ct1EeWdNb6-Lc-hxQ" x="142" y="184" width="127" height="99"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_iAEx4Mt1EeWdNb6-Lc-hxQ" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_iAFY8Mt1EeWdNb6-Lc-hxQ" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_iAFY8ct1EeWdNb6-Lc-hxQ" type="6054">
+ <children xmi:type="notation:Shape" xmi:id="_iAEx4Mt1EeWdNb6-Lc-hxQ" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_iAFY8Mt1EeWdNb6-Lc-hxQ" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_iAFY8ct1EeWdNb6-Lc-hxQ" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_iAFY8st1EeWdNb6-Lc-hxQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_iAFY88t1EeWdNb6-Lc-hxQ" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iAFY88t1EeWdNb6-Lc-hxQ" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_iAFY9Mt1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_iAFY9ct1EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_iAJDUMt1EeWdNb6-Lc-hxQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_iAJqYMt1EeWdNb6-Lc-hxQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_iAJDUMt1EeWdNb6-Lc-hxQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_iAJqYMt1EeWdNb6-Lc-hxQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_iAJqYct1EeWdNb6-Lc-hxQ" x="22" y="-13"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_iAJqYst1EeWdNb6-Lc-hxQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_iAJqYst1EeWdNb6-Lc-hxQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_iAJqY8t1EeWdNb6-Lc-hxQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_M9mdoMt1EeWdNb6-Lc-hxQ"/>
@@ -109,30 +109,30 @@
<element xmi:type="uml:Property" href="RelayPortOptionalPassThrough.uml#_iAAgcMt1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_iAEx4ct1EeWdNb6-Lc-hxQ" x="679" y="187" height="99"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_jCt6oMt1EeWdNb6-Lc-hxQ" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_jCt6ost1EeWdNb6-Lc-hxQ" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_jCt6o8t1EeWdNb6-Lc-hxQ" type="6054">
+ <children xmi:type="notation:Shape" xmi:id="_jCt6oMt1EeWdNb6-Lc-hxQ" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jCt6ost1EeWdNb6-Lc-hxQ" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jCt6o8t1EeWdNb6-Lc-hxQ" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_jCt6pMt1EeWdNb6-Lc-hxQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_jCuhsMt1EeWdNb6-Lc-hxQ" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jCuhsMt1EeWdNb6-Lc-hxQ" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_jCuhsct1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_jCuhsst1EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_jCyMEMt1EeWdNb6-Lc-hxQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_jCyMEst1EeWdNb6-Lc-hxQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_jCyMEMt1EeWdNb6-Lc-hxQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jCyMEst1EeWdNb6-Lc-hxQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_jCyME8t1EeWdNb6-Lc-hxQ" x="18" y="-16"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_jCyzIMt1EeWdNb6-Lc-hxQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jCyzIMt1EeWdNb6-Lc-hxQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_jCyzIct1EeWdNb6-Lc-hxQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_QiQQIMt1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_jCyMEct1EeWdNb6-Lc-hxQ" y="49" width="20" height="20"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_jCzaMMt1EeWdNb6-Lc-hxQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_jCzaMst1EeWdNb6-Lc-hxQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_jCzaMMt1EeWdNb6-Lc-hxQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jCzaMst1EeWdNb6-Lc-hxQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_jCzaM8t1EeWdNb6-Lc-hxQ" x="-95" y="21"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_jCzaNMt1EeWdNb6-Lc-hxQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jCzaNMt1EeWdNb6-Lc-hxQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_jCzaNct1EeWdNb6-Lc-hxQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_VFVZwMt1EeWdNb6-Lc-hxQ"/>
@@ -162,6 +162,86 @@
<element xmi:type="uml:Property" href="RelayPortOptionalPassThrough.uml#_jCppMMt1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_jCt6oct1EeWdNb6-Lc-hxQ" x="411" y="185" width="127" height="99"/>
</children>
+ <children xmi:type="notation:Shape" xmi:id="_Y43osN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y43osd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y43os99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalPassThrough.uml#_gywDIMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y43ost9JEeaWn9KVzGhArQ" x="342" y="184"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y476IN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y476Id9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y476I99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_KTYTEMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y476It9JEeaWn9KVzGhArQ" x="327" y="51"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y4_kgN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y4_kgd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5ALkN9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortOptionalPassThrough.uml#_tmiesMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y4_kgt9JEeaWn9KVzGhArQ" x="100" y="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y5EdCt9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y5EdC99JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5EdDd9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_dLelAMt2EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y5EdDN9JEeaWn9KVzGhArQ" x="253"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y5IucN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y5Iucd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5Iuc99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalPassThrough.uml#_iAAgcMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y5Iuct9JEeaWn9KVzGhArQ" x="879" y="187"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y5M_4N9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y5M_4d9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5M_499JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_M9mdoMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y5M_4t9JEeaWn9KVzGhArQ" x="200" y="49"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y5QqQN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y5QqQd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5QqQ99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalPassThrough.uml#_jCppMMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y5QqQt9JEeaWn9KVzGhArQ" x="611" y="185"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y5U7sN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y5U7sd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5U7s99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_QiQQIMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y5U7st9JEeaWn9KVzGhArQ" x="200" y="49"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y5abQN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y5abQd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5abQ99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_VFVZwMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y5abQt9JEeaWn9KVzGhArQ" x="327" y="50"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y5f60N9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y5f60d9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5f6099JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortOptionalPassThrough.uml#_vZrQQMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y5f60t9JEeaWn9KVzGhArQ" x="100" y="100"/>
+ </children>
<styles xmi:type="notation:TitleStyle" xmi:id="__h34Ust0EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="__h34U8t0EeWdNb6-Lc-hxQ"/>
</children>
@@ -186,11 +266,11 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_IUOex8t1EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_kNOJcMt2EeWdNb6-Lc-hxQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_kNOJcst2EeWdNb6-Lc-hxQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_kNOJcMt2EeWdNb6-Lc-hxQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kNOJcst2EeWdNb6-Lc-hxQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_kNOJc8t2EeWdNb6-Lc-hxQ" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_kNOJdMt2EeWdNb6-Lc-hxQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kNOJdMt2EeWdNb6-Lc-hxQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_kNOJdct2EeWdNb6-Lc-hxQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_jW924Mt2EeWdNb6-Lc-hxQ"/>
@@ -213,11 +293,11 @@
<element xmi:type="uml:Stereotype" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_LEi4sLtiEeSTjNEQkASznQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_0VGL-Mt2EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_Mjce8Mt6EeWdNb6-Lc-hxQ" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_Mjce8st6EeWdNb6-Lc-hxQ" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_Mjce8Mt6EeWdNb6-Lc-hxQ" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Mjce8st6EeWdNb6-Lc-hxQ" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Mjce88t6EeWdNb6-Lc-hxQ" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_Mjce9Mt6EeWdNb6-Lc-hxQ" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Mjce9Mt6EeWdNb6-Lc-hxQ" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Mjce9ct6EeWdNb6-Lc-hxQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_LrUkIMt6EeWdNb6-Lc-hxQ"/>
@@ -226,24 +306,56 @@
<element xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#__gweAMt0EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="__h01Act0EeWdNb6-Lc-hxQ" x="36" y="39" width="959" height="490"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="__hyYwct0EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <children xmi:type="notation:Shape" xmi:id="_Y4wT8N9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y4wT8d9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y4wT899JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#__gweAMt0EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y4wT8t9JEeaWn9KVzGhArQ" x="236" y="39"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y5laYN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y5laYd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5laY99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_jW924Mt2EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y5laYt9JEeaWn9KVzGhArQ" x="397" y="116"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y5pEwN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y5pEwd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5pEw99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortOptionalPassThrough.uml#_qTlDsMt2EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y5pEwt9JEeaWn9KVzGhArQ" x="397" y="16"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y5ukUN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y5ukUd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5ukU99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_LrUkIMt6EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y5ukUt9JEeaWn9KVzGhArQ" x="190" y="-10"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="__hyYwct0EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="__hyYwst0EeWdNb6-Lc-hxQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="__hyYw8t0EeWdNb6-Lc-hxQ">
<owner xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#__gweAMt0EeWdNb6-Lc-hxQ"/>
<configuration xmi:type="configuration:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrusrt.umlrt.tooling.diagram.common/configuration/UMLRT.configuration#_Z79eQHcZEeSnWeKqQOfW2A"/>
</styles>
<element xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#__gweAMt0EeWdNb6-Lc-hxQ"/>
- <edges xmi:type="notation:Connector" xmi:id="_tm314Mt1EeWdNb6-Lc-hxQ" type="4013" source="_g0XzwMt1EeWdNb6-Lc-hxQ" target="_jCyMEMt1EeWdNb6-Lc-hxQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_tm3148t1EeWdNb6-Lc-hxQ" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_tm314Mt1EeWdNb6-Lc-hxQ" type="Connector_Edge" source="_g0XzwMt1EeWdNb6-Lc-hxQ" target="_jCyMEMt1EeWdNb6-Lc-hxQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_tm3148t1EeWdNb6-Lc-hxQ" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_tm315Mt1EeWdNb6-Lc-hxQ" x="3" y="-8"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_tm4c8Mt1EeWdNb6-Lc-hxQ" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_tm4c8Mt1EeWdNb6-Lc-hxQ" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_tm4c8ct1EeWdNb6-Lc-hxQ" y="10"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_tm4c8st1EeWdNb6-Lc-hxQ" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_tm4c8st1EeWdNb6-Lc-hxQ" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_tm4c88t1EeWdNb6-Lc-hxQ" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_tm4c9Mt1EeWdNb6-Lc-hxQ" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_tm4c9Mt1EeWdNb6-Lc-hxQ" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_tm4c9ct1EeWdNb6-Lc-hxQ" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_tm314ct1EeWdNb6-Lc-hxQ"/>
@@ -252,17 +364,17 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tnqgEMt1EeWdNb6-Lc-hxQ" id="(1.0,0.55)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tnqgEct1EeWdNb6-Lc-hxQ" id="(0.0,0.6)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_vZ7H4Mt1EeWdNb6-Lc-hxQ" type="4013" source="_jCzaMMt1EeWdNb6-Lc-hxQ" target="_iAJDUMt1EeWdNb6-Lc-hxQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_vZ7H48t1EeWdNb6-Lc-hxQ" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_vZ7H4Mt1EeWdNb6-Lc-hxQ" type="Connector_Edge" source="_jCzaMMt1EeWdNb6-Lc-hxQ" target="_iAJDUMt1EeWdNb6-Lc-hxQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vZ7H48t1EeWdNb6-Lc-hxQ" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_vZ7H5Mt1EeWdNb6-Lc-hxQ" x="-1" y="-10"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_vZ7u8Mt1EeWdNb6-Lc-hxQ" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vZ7u8Mt1EeWdNb6-Lc-hxQ" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_vZ7u8ct1EeWdNb6-Lc-hxQ" x="-4" y="7"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_vZ7u8st1EeWdNb6-Lc-hxQ" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vZ7u8st1EeWdNb6-Lc-hxQ" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_vZ7u88t1EeWdNb6-Lc-hxQ" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_vZ7u9Mt1EeWdNb6-Lc-hxQ" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vZ7u9Mt1EeWdNb6-Lc-hxQ" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_vZ7u9ct1EeWdNb6-Lc-hxQ" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_vZ7H4ct1EeWdNb6-Lc-hxQ"/>
@@ -271,17 +383,17 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vaxccMt1EeWdNb6-Lc-hxQ" id="(1.0,0.4)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vaxccct1EeWdNb6-Lc-hxQ" id="(0.0,0.25)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_qT6a4Mt2EeWdNb6-Lc-hxQ" type="4013" source="_kNOJcMt2EeWdNb6-Lc-hxQ" target="_ej2tMMt2EeWdNb6-Lc-hxQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_qT6a48t2EeWdNb6-Lc-hxQ" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_qT6a4Mt2EeWdNb6-Lc-hxQ" type="Connector_Edge" source="_kNOJcMt2EeWdNb6-Lc-hxQ" target="_ej2tMMt2EeWdNb6-Lc-hxQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_qT6a48t2EeWdNb6-Lc-hxQ" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_qT6a5Mt2EeWdNb6-Lc-hxQ" x="-6" y="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_qT6a5ct2EeWdNb6-Lc-hxQ" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_qT6a5ct2EeWdNb6-Lc-hxQ" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_qT6a5st2EeWdNb6-Lc-hxQ" x="-4" y="-40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_qT7B8Mt2EeWdNb6-Lc-hxQ" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_qT7B8Mt2EeWdNb6-Lc-hxQ" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_qT7B8ct2EeWdNb6-Lc-hxQ" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_qT7B8st2EeWdNb6-Lc-hxQ" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_qT7B8st2EeWdNb6-Lc-hxQ" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_qT7B88t2EeWdNb6-Lc-hxQ" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_qT6a4ct2EeWdNb6-Lc-hxQ"/>
@@ -290,48 +402,399 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_qU7HgMt2EeWdNb6-Lc-hxQ" id="(0.35,1.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_qU7Hgct2EeWdNb6-Lc-hxQ" id="(0.6,0.0)"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y4wT9N9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="__h01AMt0EeWdNb6-Lc-hxQ" target="_Y4wT8N9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y4wT9d9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y4wT-d9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#__gweAMt0EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y4wT9t9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y4wT999JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y4wT-N9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y43otN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_g0P38Mt1EeWdNb6-Lc-hxQ" target="_Y43osN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y43otd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y43oud9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalPassThrough.uml#_gywDIMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y43ott9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y43ot99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y43ouN9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y476JN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_g0XzwMt1EeWdNb6-Lc-hxQ" target="_Y476IN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y476Jd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y476Kd9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_KTYTEMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y476Jt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y476J99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y476KN9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5ALkd9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_tm314Mt1EeWdNb6-Lc-hxQ" target="_Y4_kgN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5ALkt9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5ALlt9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortOptionalPassThrough.uml#_tmiesMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5ALk99JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5ALlN9JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5ALld9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5EdDt9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_ej2tMMt2EeWdNb6-Lc-hxQ" target="_Y5EdCt9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5EdD99JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5EdE99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_dLelAMt2EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5EdEN9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5EdEd9JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5EdEt9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5IudN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_iAEx4Mt1EeWdNb6-Lc-hxQ" target="_Y5IucN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5Iudd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5Iued9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalPassThrough.uml#_iAAgcMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5Iudt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5Iud99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5IueN9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5M_5N9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_iAJDUMt1EeWdNb6-Lc-hxQ" target="_Y5M_4N9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5M_5d9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5M_6d9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_M9mdoMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5M_5t9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5M_599JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5M_6N9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5QqRN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_jCt6oMt1EeWdNb6-Lc-hxQ" target="_Y5QqQN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5QqRd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5RRUN9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortOptionalPassThrough.uml#_jCppMMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5QqRt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5QqR99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5QqSN9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5U7tN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_jCyMEMt1EeWdNb6-Lc-hxQ" target="_Y5U7sN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5U7td9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5U7ud9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_QiQQIMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5U7tt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5U7t99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5U7uN9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5abRN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_jCzaMMt1EeWdNb6-Lc-hxQ" target="_Y5abQN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5abRd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5abSd9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_VFVZwMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5abRt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5abR99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5abSN9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5f61N9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_vZ7H4Mt1EeWdNb6-Lc-hxQ" target="_Y5f60N9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5f61d9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5f62d9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortOptionalPassThrough.uml#_vZrQQMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5f61t9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5f6199JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5f62N9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5laZN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_kNOJcMt2EeWdNb6-Lc-hxQ" target="_Y5laYN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5laZd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5laad9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_jW924Mt2EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5laZt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5laZ99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5laaN9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5pExN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_qT6a4Mt2EeWdNb6-Lc-hxQ" target="_Y5pEwN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5pExd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5pEyd9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortOptionalPassThrough.uml#_qTlDsMt2EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5pExt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5pEx99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5pEyN9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y5ukVN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_Mjce8Mt6EeWdNb6-Lc-hxQ" target="_Y5ukUN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y5ukVd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y5ukWd9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_LrUkIMt6EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y5ukVt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5ukV99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y5ukWN9JEeaWn9KVzGhArQ"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_CEiCUMt1EeWdNb6-Lc-hxQ" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_CEipYMt1EeWdNb6-Lc-hxQ" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_CEipYst1EeWdNb6-Lc-hxQ" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_CEipY8t1EeWdNb6-Lc-hxQ" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_CEipYMt1EeWdNb6-Lc-hxQ" type="Class_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_rvH9AN9JEeaWn9KVzGhArQ" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_rvH9Ad9JEeaWn9KVzGhArQ" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_CEipYst1EeWdNb6-Lc-hxQ" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_CEipY8t1EeWdNb6-Lc-hxQ" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_CEipZMt1EeWdNb6-Lc-hxQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_CEipZct1EeWdNb6-Lc-hxQ" type="7073">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_CEipZct1EeWdNb6-Lc-hxQ" type="Class_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_CEipZst1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_CEipZ8t1EeWdNb6-Lc-hxQ"/>
</children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_roa4EN9JEeaWn9KVzGhArQ" type="StereotypeLabel">
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_roa4Ed9JEeaWn9KVzGhArQ" name="stereotype" stringValue="UMLRealTime::Capsule"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_roa4Et9JEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_robfIN9JEeaWn9KVzGhArQ" type="StereotypeBrace">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_robfId9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_robfIt9JEeaWn9KVzGhArQ" name="stereotype" stringValue="UMLRealTime::Capsule"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_robfI99JEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rocGMN9JEeaWn9KVzGhArQ" type="StereotypeLabel">
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_rocGMd9JEeaWn9KVzGhArQ" name="stereotype" stringValue="RTCppProperties::CapsuleProperties"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_LEi4sLtiEeSTjNEQkASznQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rocGMt9JEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_rocGM99JEeaWn9KVzGhArQ" type="StereotypeBrace">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rocGNN9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_rocGNd9JEeaWn9KVzGhArQ" name="stereotype" stringValue="RTCppProperties::CapsuleProperties"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_LEi4sLtiEeSTjNEQkASznQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rocGNt9JEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_rod7aN9JEeaWn9KVzGhArQ" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rod7ad9JEeaWn9KVzGhArQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rod7at9JEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_rog-sN9JEeaWn9KVzGhArQ" type="StereotypeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rog-sd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_rog-st9JEeaWn9KVzGhArQ" name="stereotype" stringValue="UMLRealTime::Capsule"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rog-s99JEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_rohlwN9JEeaWn9KVzGhArQ" type="StereotypeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rohlwd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_rohlwt9JEeaWn9KVzGhArQ" name="stereotype" stringValue="RTCppProperties::CapsuleProperties"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_LEi4sLtiEeSTjNEQkASznQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rohlw99JEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_row2UN9JEeaWn9KVzGhArQ" type="Port_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_rvH9At9JEeaWn9KVzGhArQ" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_rvH9A99JEeaWn9KVzGhArQ" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_row2Ut9JEeaWn9KVzGhArQ" type="Port_NameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_row2U99JEeaWn9KVzGhArQ" x="25" y="3"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_row2VN9JEeaWn9KVzGhArQ" type="Port_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_row2Vd9JEeaWn9KVzGhArQ" x="25" y="-10"/>
+ </children>
+ <element xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_KTYTEMt1EeWdNb6-Lc-hxQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_row2Ud9JEeaWn9KVzGhArQ" x="-8" y="117" width="16" height="16"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_roxdYN9JEeaWn9KVzGhArQ" type="Port_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_rvH9BN9JEeaWn9KVzGhArQ" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_rvH9Bd9JEeaWn9KVzGhArQ" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_roxdYt9JEeaWn9KVzGhArQ" type="Port_NameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_roxdY99JEeaWn9KVzGhArQ" x="25" y="3"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_roxdZN9JEeaWn9KVzGhArQ" type="Port_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_roxdZd9JEeaWn9KVzGhArQ" x="25" y="-10"/>
+ </children>
+ <element xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_dLelAMt2EeWdNb6-Lc-hxQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_roxdYd9JEeaWn9KVzGhArQ" x="-8" y="140" width="16" height="16"/>
+ </children>
<element xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#_CENSMMt1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_CEipYct1EeWdNb6-Lc-hxQ" x="40" y="40" width="500" height="250"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_CEiCUct1EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <children xmi:type="notation:Shape" xmi:id="_rofJgN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rofJgd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rofJg99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#_CENSMMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rofJgt9JEeaWn9KVzGhArQ" x="240" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ro1u0t9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ro1u099JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ro1u1d9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_KTYTEMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ro1u1N9JEeaWn9KVzGhArQ" x="192" y="-8"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ro7OYN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ro7OYd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ro7OY99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_dLelAMt2EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ro7OYt9JEeaWn9KVzGhArQ" x="192" y="-8"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_CEiCUct1EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_CEiCUst1EeWdNb6-Lc-hxQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_CEiCU8t1EeWdNb6-Lc-hxQ">
<owner xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#_CENSMMt1EeWdNb6-Lc-hxQ"/>
<configuration xmi:type="configuration:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrusrt.umlrt.tooling.diagram.common/configuration/UMLRT.configuration#_Z79eQHcZEeSnWeKqQOfW2A"/>
</styles>
<element xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#_CENSMMt1EeWdNb6-Lc-hxQ"/>
+ <edges xmi:type="notation:Connector" xmi:id="_rofJhN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_CEipYMt1EeWdNb6-Lc-hxQ" target="_rofJgN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_rofJhd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_rofJid9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#_CENSMMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rofJht9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rofJh99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rofJiN9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ro1u1t9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_row2UN9JEeaWn9KVzGhArQ" target="_ro1u0t9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ro1u199JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ro1u299JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_KTYTEMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ro1u2N9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ro1u2d9JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ro1u2t9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ro7OZN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_roxdYN9JEeaWn9KVzGhArQ" target="_ro7OYN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ro7OZd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ro7Oad9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_dLelAMt2EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ro7OZt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ro7OZ99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ro7OaN9JEeaWn9KVzGhArQ"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_DdPhsMt1EeWdNb6-Lc-hxQ" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_DdQIwMt1EeWdNb6-Lc-hxQ" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_DdQIwst1EeWdNb6-Lc-hxQ" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_DdQIw8t1EeWdNb6-Lc-hxQ" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_DdQIwMt1EeWdNb6-Lc-hxQ" type="Class_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GumbMN9KEeaWn9KVzGhArQ" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GumbMd9KEeaWn9KVzGhArQ" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_DdQIwst1EeWdNb6-Lc-hxQ" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_DdQIw8t1EeWdNb6-Lc-hxQ" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_DdQIxMt1EeWdNb6-Lc-hxQ" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_DdQIxct1EeWdNb6-Lc-hxQ" type="7073">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_DdQIxct1EeWdNb6-Lc-hxQ" type="Class_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_DdQIxst1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_DdQIx8t1EeWdNb6-Lc-hxQ"/>
</children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_GqGVsN9KEeaWn9KVzGhArQ" type="StereotypeLabel">
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_GqGVsd9KEeaWn9KVzGhArQ" name="stereotype" stringValue="UMLRealTime::Capsule"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqGVst9KEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GqG8wN9KEeaWn9KVzGhArQ" type="StereotypeBrace">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GqG8wd9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_GqG8wt9KEeaWn9KVzGhArQ" name="stereotype" stringValue="UMLRealTime::Capsule"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqG8w99KEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_GqHj0N9KEeaWn9KVzGhArQ" type="StereotypeLabel">
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_GqHj0d9KEeaWn9KVzGhArQ" name="stereotype" stringValue="RTCppProperties::CapsuleProperties"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_LEi4sLtiEeSTjNEQkASznQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqHj0t9KEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GqIK4N9KEeaWn9KVzGhArQ" type="StereotypeBrace">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GqIK4d9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_GqIK4t9KEeaWn9KVzGhArQ" name="stereotype" stringValue="RTCppProperties::CapsuleProperties"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_LEi4sLtiEeSTjNEQkASznQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqIK499KEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GqIx_t9KEeaWn9KVzGhArQ" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GqIx_99KEeaWn9KVzGhArQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqIyAN9KEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GqKnJN9KEeaWn9KVzGhArQ" type="StereotypeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GqKnJd9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_GqKnJt9KEeaWn9KVzGhArQ" name="stereotype" stringValue="UMLRealTime::Capsule"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqKnJ99KEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GqLOMN9KEeaWn9KVzGhArQ" type="StereotypeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GqLOMd9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_GqLOMt9KEeaWn9KVzGhArQ" name="stereotype" stringValue="RTCppProperties::CapsuleProperties"/>
+ <element xmi:type="uml:Stereotype" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_LEi4sLtiEeSTjNEQkASznQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqLOM99KEeaWn9KVzGhArQ"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GqNqcN9KEeaWn9KVzGhArQ" type="Port_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GumbMt9KEeaWn9KVzGhArQ" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GumbM99KEeaWn9KVzGhArQ" key="mutable" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_GqNqct9KEeaWn9KVzGhArQ" type="Port_NameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GqNqc99KEeaWn9KVzGhArQ" x="25" y="3"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_GqNqdN9KEeaWn9KVzGhArQ" type="Port_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GqNqdd9KEeaWn9KVzGhArQ" x="25" y="-10"/>
+ </children>
+ <element xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_M9mdoMt1EeWdNb6-Lc-hxQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqNqcd9KEeaWn9KVzGhArQ" x="-8" y="117" width="16" height="16"/>
+ </children>
<element xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#_Dc8mwMt1EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_DdQIwct1EeWdNb6-Lc-hxQ" x="40" y="40" width="500" height="250"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_DdPhsct1EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <children xmi:type="notation:Shape" xmi:id="_GqJZAN9KEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GqJZAd9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GqJZA99KEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#_Dc8mwMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqJZAt9KEeaWn9KVzGhArQ" x="240" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GqRU2N9KEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GqRU2d9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GqRU299KEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_M9mdoMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqRU2t9KEeaWn9KVzGhArQ" x="192" y="-8"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_DdPhsct1EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_DdPhsst1EeWdNb6-Lc-hxQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_DdPhs8t1EeWdNb6-Lc-hxQ">
<owner xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#_Dc8mwMt1EeWdNb6-Lc-hxQ"/>
<configuration xmi:type="configuration:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrusrt.umlrt.tooling.diagram.common/configuration/UMLRT.configuration#_Z79eQHcZEeSnWeKqQOfW2A"/>
</styles>
<element xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#_Dc8mwMt1EeWdNb6-Lc-hxQ"/>
+ <edges xmi:type="notation:Connector" xmi:id="_GqJZBN9KEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_DdQIwMt1EeWdNb6-Lc-hxQ" target="_GqJZAN9KEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GqJZBd9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GqJZCd9KEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="RelayPortOptionalPassThrough.uml#_Dc8mwMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GqJZBt9KEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GqJZB99KEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GqJZCN9KEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GqRU3N9KEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_GqNqcN9KEeaWn9KVzGhArQ" target="_GqRU2N9KEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GqRU3d9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GqRU4d9KEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortOptionalPassThrough.uml#_M9mdoMt1EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GqRU3t9KEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GqRU399KEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GqRU4N9KEeaWn9KVzGhArQ"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_FeQ-QMt1EeWdNb6-Lc-hxQ" type="CompositeStructure" measurementUnit="Pixel">
<children xmi:type="notation:Shape" xmi:id="_FeRlUMt1EeWdNb6-Lc-hxQ" type="2073">
@@ -473,21 +936,21 @@
</edges>
</notation:Diagram>
<notation:Diagram xmi:id="_A6_8gMt3EeWdNb6-Lc-hxQ" type="PapyrusUMLStateMachineDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_A6_8gct3EeWdNb6-Lc-hxQ" type="2000">
- <children xmi:type="notation:DecorationNode" xmi:id="_A6_8gst3EeWdNb6-Lc-hxQ" type="2001">
+ <children xmi:type="notation:Shape" xmi:id="_A6_8gct3EeWdNb6-Lc-hxQ" type="StateMachine_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_A6_8gst3EeWdNb6-Lc-hxQ" type="StateMachine_NameLabel">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_A6_8g8t3EeWdNb6-Lc-hxQ" width="700" height="16"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_A6_8hMt3EeWdNb6-Lc-hxQ" type="2002">
- <children xmi:type="notation:Shape" xmi:id="_A6_8hct3EeWdNb6-Lc-hxQ" type="3000">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_H3Bb0N9KEeaWn9KVzGhArQ" type="StateMachine_RegionCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_A6_8hct3EeWdNb6-Lc-hxQ" type="Region_Shape">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_A6_8hst3EeWdNb6-Lc-hxQ" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A6_8h8t3EeWdNb6-Lc-hxQ" key="RegionZoneKey" value=""/>
</eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_A6_8iMt3EeWdNb6-Lc-hxQ" type="3002">
- <children xmi:type="notation:Shape" xmi:id="_EzLvAMt3EeWdNb6-Lc-hxQ" type="8000">
- <children xmi:type="notation:DecorationNode" xmi:id="_EzLvAst3EeWdNb6-Lc-hxQ" type="8001">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_H3CC4N9KEeaWn9KVzGhArQ" type="Region_SubvertexCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_EzLvAMt3EeWdNb6-Lc-hxQ" type="Pseudostate_InitialShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_EzLvAst3EeWdNb6-Lc-hxQ" type="Pseudostate_InitialFloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_EzLvA8t3EeWdNb6-Lc-hxQ" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_EzLvBMt3EeWdNb6-Lc-hxQ" type="8002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_EzLvBMt3EeWdNb6-Lc-hxQ" type="Pseudostate_InitialStereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_EzLvBct3EeWdNb6-Lc-hxQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="RelayPortOptionalPassThrough.uml#_A6EvcMt3EeWdNb6-Lc-hxQ"/>
@@ -501,12 +964,12 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_EzROkst3EeWdNb6-Lc-hxQ" x="200"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_GsuDgMt3EeWdNb6-Lc-hxQ" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_GsuDgst3EeWdNb6-Lc-hxQ" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_GsuDg8t3EeWdNb6-Lc-hxQ" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_GsuDgMt3EeWdNb6-Lc-hxQ" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GsuDgst3EeWdNb6-Lc-hxQ" type="State_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_GsuDg8t3EeWdNb6-Lc-hxQ" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_GsuDhMt3EeWdNb6-Lc-hxQ" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_GsuDhct3EeWdNb6-Lc-hxQ" type="6002">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_H3Cp8N9KEeaWn9KVzGhArQ" type="State_RegionCompartment">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_GsuDhst3EeWdNb6-Lc-hxQ"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_Gs1YQMt3EeWdNb6-Lc-hxQ" type="StereotypeLabel">
@@ -530,19 +993,20 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gs1_Yct3EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_SnSYEMt3EeWdNb6-Lc-hxQ" type="690">
+ <children xmi:type="notation:Shape" xmi:id="_SnSYEMt3EeWdNb6-Lc-hxQ" type="Behavior_EntryBehaviorLabel">
<element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalPassThrough.uml#_Sjv74Mt3EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_SnSYEct3EeWdNb6-Lc-hxQ"/>
</children>
+ <children xmi:type="notation:Compartment" xmi:id="_H4IPEN9KEeaWn9KVzGhArQ" type="InternalTransitions"/>
<element xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_GsmHsMt3EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_GsuDgct3EeWdNb6-Lc-hxQ" x="132" y="108"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_TTunUMt3EeWdNb6-Lc-hxQ" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_TTvOYMt3EeWdNb6-Lc-hxQ" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_TTvOYct3EeWdNb6-Lc-hxQ" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_TTunUMt3EeWdNb6-Lc-hxQ" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_TTvOYMt3EeWdNb6-Lc-hxQ" type="State_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TTvOYct3EeWdNb6-Lc-hxQ" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_TTvOYst3EeWdNb6-Lc-hxQ" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_TTvOY8t3EeWdNb6-Lc-hxQ" type="6002">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_H3Cp8d9KEeaWn9KVzGhArQ" type="State_RegionCompartment">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TTvOZMt3EeWdNb6-Lc-hxQ"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_TT3xQMt3EeWdNb6-Lc-hxQ" type="StereotypeLabel">
@@ -566,13 +1030,30 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TT4YYst3EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_Y6NusMt3EeWdNb6-Lc-hxQ" type="690">
+ <children xmi:type="notation:Shape" xmi:id="_Y6NusMt3EeWdNb6-Lc-hxQ" type="Behavior_EntryBehaviorLabel">
<element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalPassThrough.uml#_Y6IPIMt3EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_Y6Nusct3EeWdNb6-Lc-hxQ"/>
</children>
+ <children xmi:type="notation:Compartment" xmi:id="_H4NuoN9KEeaWn9KVzGhArQ" type="InternalTransitions"/>
<element xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_TTjoMMt3EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TTunUct3EeWdNb6-Lc-hxQ" x="410" y="107"/>
</children>
+ <children xmi:type="notation:Shape" xmi:id="_H4JdMN9KEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_H4JdMd9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_H4JdM99KEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_GsmHsMt3EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_H4JdMt9KEeaWn9KVzGhArQ" x="332" y="108"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_H4OVsN9KEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_H4OVsd9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_H4OVs99KEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_TTjoMMt3EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_H4OVst9KEeaWn9KVzGhArQ" x="610" y="107"/>
+ </children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_A6_8ict3EeWdNb6-Lc-hxQ"/>
</children>
<element xmi:type="uml:Region" href="RelayPortOptionalPassThrough.uml#_A6AeAMt3EeWdNb6-Lc-hxQ"/>
@@ -599,7 +1080,7 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Bu10Qst3EeWdNb6-Lc-hxQ" x="230" y="30"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_A6_8jct3EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_A6_8jct3EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_A6_8jst3EeWdNb6-Lc-hxQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_A6_8j8t3EeWdNb6-Lc-hxQ">
<owner xmi:type="uml:StateMachine" href="RelayPortOptionalPassThrough.uml#_A57lgMt3EeWdNb6-Lc-hxQ"/>
@@ -636,14 +1117,14 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EzROl8t3EeWdNb6-Lc-hxQ"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EzROmMt3EeWdNb6-Lc-hxQ"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_Z5O7sMt3EeWdNb6-Lc-hxQ" type="7000" source="_EzLvAMt3EeWdNb6-Lc-hxQ" target="_GsuDgMt3EeWdNb6-Lc-hxQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_Z5O7s8t3EeWdNb6-Lc-hxQ" type="7001">
+ <edges xmi:type="notation:Connector" xmi:id="_Z5O7sMt3EeWdNb6-Lc-hxQ" type="Transition_Edge" source="_EzLvAMt3EeWdNb6-Lc-hxQ" target="_GsuDgMt3EeWdNb6-Lc-hxQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Z5O7s8t3EeWdNb6-Lc-hxQ" type="Transition_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Z5O7tMt3EeWdNb6-Lc-hxQ" x="1" y="-11"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_Z5O7tct3EeWdNb6-Lc-hxQ" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Z5O7tct3EeWdNb6-Lc-hxQ" type="Transition_GuardLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Z5O7tst3EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_Z5O7t8t3EeWdNb6-Lc-hxQ" type="7003">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Z5O7t8t3EeWdNb6-Lc-hxQ" type="Transition_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Z5PiwMt3EeWdNb6-Lc-hxQ" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_Z5O7sct3EeWdNb6-Lc-hxQ"/>
@@ -652,39 +1133,59 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Z564MMt3EeWdNb6-Lc-hxQ" id="(0.9,1.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Z564Mct3EeWdNb6-Lc-hxQ" id="(0.0,0.0196078431372549)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_bErbIMt3EeWdNb6-Lc-hxQ" type="7000" source="_GsuDgMt3EeWdNb6-Lc-hxQ" target="_TTunUMt3EeWdNb6-Lc-hxQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_bErbI8t3EeWdNb6-Lc-hxQ" type="7001">
+ <edges xmi:type="notation:Connector" xmi:id="_bErbIMt3EeWdNb6-Lc-hxQ" type="Transition_Edge" source="_GsuDgMt3EeWdNb6-Lc-hxQ" target="_TTunUMt3EeWdNb6-Lc-hxQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bErbI8t3EeWdNb6-Lc-hxQ" type="Transition_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_bErbJMt3EeWdNb6-Lc-hxQ" x="-3" y="-13"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_bErbJct3EeWdNb6-Lc-hxQ" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bErbJct3EeWdNb6-Lc-hxQ" type="Transition_GuardLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_bErbJst3EeWdNb6-Lc-hxQ" x="2" y="16"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_bErbJ8t3EeWdNb6-Lc-hxQ" type="7003">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bErbJ8t3EeWdNb6-Lc-hxQ" type="Transition_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_bErbKMt3EeWdNb6-Lc-hxQ" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_bErbIct3EeWdNb6-Lc-hxQ"/>
<element xmi:type="uml:Transition" href="RelayPortOptionalPassThrough.uml#_bEhDEMt3EeWdNb6-Lc-hxQ"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bErbIst3EeWdNb6-Lc-hxQ" points="[24, 5, -218, -4]$[182, 5, -60, -4]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bFQC4Mt3EeWdNb6-Lc-hxQ" id="(1.0,0.29411764705882354)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bFQC4ct3EeWdNb6-Lc-hxQ" id="(0.0,0.39215686274509803)"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bFQC4Mt3EeWdNb6-Lc-hxQ" id="(1.0,0.425)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bFQC4ct3EeWdNb6-Lc-hxQ" id="(0.0,0.45)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_H4JdNN9KEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_GsuDgMt3EeWdNb6-Lc-hxQ" target="_H4JdMN9KEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_H4JdNd9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_H4JdOd9KEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_GsmHsMt3EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_H4JdNt9KEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_H4JdN99KEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_H4JdON9KEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_H4OVtN9KEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_TTunUMt3EeWdNb6-Lc-hxQ" target="_H4OVsN9KEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_H4OVtd9KEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_H4OVud9KEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_TTjoMMt3EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_H4OVtt9KEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_H4OVt99KEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_H4OVuN9KEeaWn9KVzGhArQ"/>
</edges>
</notation:Diagram>
<notation:Diagram xmi:id="_k1jfUMt3EeWdNb6-Lc-hxQ" type="PapyrusUMLStateMachineDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_k1jfUct3EeWdNb6-Lc-hxQ" type="2000">
- <children xmi:type="notation:DecorationNode" xmi:id="_k1jfUst3EeWdNb6-Lc-hxQ" type="2001">
+ <children xmi:type="notation:Shape" xmi:id="_k1jfUct3EeWdNb6-Lc-hxQ" type="StateMachine_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_k1jfUst3EeWdNb6-Lc-hxQ" type="StateMachine_NameLabel">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_k1jfU8t3EeWdNb6-Lc-hxQ" width="700" height="16"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_k1jfVMt3EeWdNb6-Lc-hxQ" type="2002">
- <children xmi:type="notation:Shape" xmi:id="_k1jfVct3EeWdNb6-Lc-hxQ" type="3000">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_t9SdsN9JEeaWn9KVzGhArQ" type="StateMachine_RegionCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_k1jfVct3EeWdNb6-Lc-hxQ" type="Region_Shape">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_k1jfVst3EeWdNb6-Lc-hxQ" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_k1jfV8t3EeWdNb6-Lc-hxQ" key="RegionZoneKey" value=""/>
</eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_k1jfWMt3EeWdNb6-Lc-hxQ" type="3002">
- <children xmi:type="notation:Shape" xmi:id="_nVOmwMt3EeWdNb6-Lc-hxQ" type="8000">
- <children xmi:type="notation:DecorationNode" xmi:id="_nVOmwst3EeWdNb6-Lc-hxQ" type="8001">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_t9Sdsd9JEeaWn9KVzGhArQ" type="Region_SubvertexCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_nVOmwMt3EeWdNb6-Lc-hxQ" type="Pseudostate_InitialShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nVOmwst3EeWdNb6-Lc-hxQ" type="Pseudostate_InitialFloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_nVOmw8t3EeWdNb6-Lc-hxQ" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_nVPN0Mt3EeWdNb6-Lc-hxQ" type="8002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nVPN0Mt3EeWdNb6-Lc-hxQ" type="Pseudostate_InitialStereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_nVPN0ct3EeWdNb6-Lc-hxQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="RelayPortOptionalPassThrough.uml#_kz7usMt3EeWdNb6-Lc-hxQ"/>
@@ -698,12 +1199,12 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_nVVUdct3EeWdNb6-Lc-hxQ" x="200"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_oEC0kMt3EeWdNb6-Lc-hxQ" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_oEC0kst3EeWdNb6-Lc-hxQ" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_oEC0k8t3EeWdNb6-Lc-hxQ" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_oEC0kMt3EeWdNb6-Lc-hxQ" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_oEC0kst3EeWdNb6-Lc-hxQ" type="State_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_oEC0k8t3EeWdNb6-Lc-hxQ" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_oEC0lMt3EeWdNb6-Lc-hxQ" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_oEC0lct3EeWdNb6-Lc-hxQ" type="6002">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_t9Sdst9JEeaWn9KVzGhArQ" type="State_RegionCompartment">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_oEC0lst3EeWdNb6-Lc-hxQ"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_oEI7MMt3EeWdNb6-Lc-hxQ" type="StereotypeLabel">
@@ -727,19 +1228,20 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_oEKJU8t3EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_tkAdMMt3EeWdNb6-Lc-hxQ" type="690">
+ <children xmi:type="notation:Shape" xmi:id="_tkAdMMt3EeWdNb6-Lc-hxQ" type="Behavior_EntryBehaviorLabel">
<element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalPassThrough.uml#_tj8LwMt3EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_tkAdMct3EeWdNb6-Lc-hxQ"/>
</children>
+ <children xmi:type="notation:Compartment" xmi:id="_t-R8MN9JEeaWn9KVzGhArQ" type="InternalTransitions"/>
<element xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_oD7f0Mt3EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_oEC0kct3EeWdNb6-Lc-hxQ" x="122" y="114"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_xcl4UMt3EeWdNb6-Lc-hxQ" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_xcl4Ust3EeWdNb6-Lc-hxQ" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_xcl4U8t3EeWdNb6-Lc-hxQ" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_xcl4UMt3EeWdNb6-Lc-hxQ" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_xcl4Ust3EeWdNb6-Lc-hxQ" type="State_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_xcl4U8t3EeWdNb6-Lc-hxQ" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_xcl4VMt3EeWdNb6-Lc-hxQ" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_xcl4Vct3EeWdNb6-Lc-hxQ" type="6002">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_t9Sds99JEeaWn9KVzGhArQ" type="State_RegionCompartment">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_xcl4Vst3EeWdNb6-Lc-hxQ"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_xc3lIMt3EeWdNb6-Lc-hxQ" type="StereotypeLabel">
@@ -763,13 +1265,30 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_xc4zS8t3EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_81o0MMt3EeWdNb6-Lc-hxQ" type="690">
+ <children xmi:type="notation:Shape" xmi:id="_81o0MMt3EeWdNb6-Lc-hxQ" type="Behavior_EntryBehaviorLabel">
<element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalPassThrough.uml#_81lJ0Mt3EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_81o0Mct3EeWdNb6-Lc-hxQ"/>
</children>
+ <children xmi:type="notation:Compartment" xmi:id="_t-WNoN9JEeaWn9KVzGhArQ" type="InternalTransitions"/>
<element xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_xcYc8Mt3EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_xcl4Uct3EeWdNb6-Lc-hxQ" x="378" y="115"/>
</children>
+ <children xmi:type="notation:Shape" xmi:id="_t-SjQN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_t-SjQd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_t-SjQ99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_oD7f0Mt3EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t-SjQt9JEeaWn9KVzGhArQ" x="322" y="114"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_t-XbwN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_t-Xbwd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_t-Xbw99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_xcYc8Mt3EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t-Xbwt9JEeaWn9KVzGhArQ" x="578" y="115"/>
+ </children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_k1jfWct3EeWdNb6-Lc-hxQ"/>
</children>
<element xmi:type="uml:Region" href="RelayPortOptionalPassThrough.uml#_kz55gMt3EeWdNb6-Lc-hxQ"/>
@@ -796,7 +1315,7 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ljotVct3EeWdNb6-Lc-hxQ" x="230" y="30"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_k1jfXct3EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_k1jfXct3EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_k1jfXst3EeWdNb6-Lc-hxQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_k1jfX8t3EeWdNb6-Lc-hxQ">
<owner xmi:type="uml:StateMachine" href="RelayPortOptionalPassThrough.uml#_kz3dQMt3EeWdNb6-Lc-hxQ"/>
@@ -833,14 +1352,14 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nVVUest3EeWdNb6-Lc-hxQ"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nVVUe8t3EeWdNb6-Lc-hxQ"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_FisD4Mt4EeWdNb6-Lc-hxQ" type="7000" source="_nVOmwMt3EeWdNb6-Lc-hxQ" target="_oEC0kMt3EeWdNb6-Lc-hxQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_FisD48t4EeWdNb6-Lc-hxQ" type="7001">
+ <edges xmi:type="notation:Connector" xmi:id="_FisD4Mt4EeWdNb6-Lc-hxQ" type="Transition_Edge" source="_nVOmwMt3EeWdNb6-Lc-hxQ" target="_oEC0kMt3EeWdNb6-Lc-hxQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_FisD48t4EeWdNb6-Lc-hxQ" type="Transition_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FisD5Mt4EeWdNb6-Lc-hxQ" x="1" y="-14"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_FisD5ct4EeWdNb6-Lc-hxQ" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_FisD5ct4EeWdNb6-Lc-hxQ" type="Transition_GuardLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FisD5st4EeWdNb6-Lc-hxQ" x="-3" y="10"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_FisD58t4EeWdNb6-Lc-hxQ" type="7003">
+ <children xmi:type="notation:DecorationNode" xmi:id="_FisD58t4EeWdNb6-Lc-hxQ" type="Transition_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_FisD6Mt4EeWdNb6-Lc-hxQ" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_FisD4ct4EeWdNb6-Lc-hxQ"/>
@@ -849,14 +1368,14 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FjOPYMt4EeWdNb6-Lc-hxQ" id="(1.0,0.9)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FjO2cMt4EeWdNb6-Lc-hxQ" id="(0.025,0.0)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_IsUHQMt4EeWdNb6-Lc-hxQ" type="7000" source="_oEC0kMt3EeWdNb6-Lc-hxQ" target="_xcl4UMt3EeWdNb6-Lc-hxQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_IsUuUMt4EeWdNb6-Lc-hxQ" type="7001">
+ <edges xmi:type="notation:Connector" xmi:id="_IsUHQMt4EeWdNb6-Lc-hxQ" type="Transition_Edge" source="_oEC0kMt3EeWdNb6-Lc-hxQ" target="_xcl4UMt3EeWdNb6-Lc-hxQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IsUuUMt4EeWdNb6-Lc-hxQ" type="Transition_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_IsUuUct4EeWdNb6-Lc-hxQ" x="-1" y="-12"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_IsUuUst4EeWdNb6-Lc-hxQ" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IsUuUst4EeWdNb6-Lc-hxQ" type="Transition_GuardLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_IsUuU8t4EeWdNb6-Lc-hxQ" x="-3" y="13"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_IsUuVMt4EeWdNb6-Lc-hxQ" type="7003">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IsUuVMt4EeWdNb6-Lc-hxQ" type="Transition_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_IsUuVct4EeWdNb6-Lc-hxQ" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_IsUHQct4EeWdNb6-Lc-hxQ"/>
@@ -865,23 +1384,43 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Is5WEMt4EeWdNb6-Lc-hxQ" id="(1.0,0.35294117647058826)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Is59IMt4EeWdNb6-Lc-hxQ" id="(0.0,0.43137254901960786)"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_t-SjRN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_oEC0kMt3EeWdNb6-Lc-hxQ" target="_t-SjQN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_t-SjRd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_t-SjSd9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_oD7f0Mt3EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_t-SjRt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t-SjR99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t-SjSN9JEeaWn9KVzGhArQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_t-XbxN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_xcl4UMt3EeWdNb6-Lc-hxQ" target="_t-XbwN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_t-Xbxd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_t-Xbyd9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_xcYc8Mt3EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_t-Xbxt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t-Xbx99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t-XbyN9JEeaWn9KVzGhArQ"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_zA7jcMt4EeWdNb6-Lc-hxQ" type="PapyrusUMLStateMachineDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_zA7jcct4EeWdNb6-Lc-hxQ" type="2000">
- <children xmi:type="notation:DecorationNode" xmi:id="_zA7jcst4EeWdNb6-Lc-hxQ" type="2001">
+ <children xmi:type="notation:Shape" xmi:id="_zA7jcct4EeWdNb6-Lc-hxQ" type="StateMachine_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zA7jcst4EeWdNb6-Lc-hxQ" type="StateMachine_NameLabel">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_zA7jc8t4EeWdNb6-Lc-hxQ" width="700" height="16"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_zA7jdMt4EeWdNb6-Lc-hxQ" type="2002">
- <children xmi:type="notation:Shape" xmi:id="_zA7jdct4EeWdNb6-Lc-hxQ" type="3000">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_aQ-rIN9JEeaWn9KVzGhArQ" type="StateMachine_RegionCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_zA7jdct4EeWdNb6-Lc-hxQ" type="Region_Shape">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zA7jdst4EeWdNb6-Lc-hxQ" source="RegionAnnotationKey">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zA7jd8t4EeWdNb6-Lc-hxQ" key="RegionZoneKey" value=""/>
</eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_zA7jeMt4EeWdNb6-Lc-hxQ" type="3002">
- <children xmi:type="notation:Shape" xmi:id="_1Xz7QMt4EeWdNb6-Lc-hxQ" type="8000">
- <children xmi:type="notation:DecorationNode" xmi:id="_1Xz7Qst4EeWdNb6-Lc-hxQ" type="8001">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_aQ_SMN9JEeaWn9KVzGhArQ" type="Region_SubvertexCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_1Xz7QMt4EeWdNb6-Lc-hxQ" type="Pseudostate_InitialShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1Xz7Qst4EeWdNb6-Lc-hxQ" type="Pseudostate_InitialFloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_1Xz7Q8t4EeWdNb6-Lc-hxQ" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_1Xz7RMt4EeWdNb6-Lc-hxQ" type="8002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_1Xz7RMt4EeWdNb6-Lc-hxQ" type="Pseudostate_InitialStereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_1Xz7Rct4EeWdNb6-Lc-hxQ" x="25" y="-10"/>
</children>
<element xmi:type="uml:Pseudostate" href="RelayPortOptionalPassThrough.uml#_y_QvgMt4EeWdNb6-Lc-hxQ"/>
@@ -895,13 +1434,15 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_1X4zwst4EeWdNb6-Lc-hxQ" x="200"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_37rmMMt4EeWdNb6-Lc-hxQ" type="6000">
- <children xmi:type="notation:DecorationNode" xmi:id="_37rmMst4EeWdNb6-Lc-hxQ" type="6001"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_37rmM8t4EeWdNb6-Lc-hxQ" type="19003">
+ <children xmi:type="notation:Shape" xmi:id="_37rmMMt4EeWdNb6-Lc-hxQ" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_37rmMst4EeWdNb6-Lc-hxQ" type="State_NameLabel">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_a27Q0N9JEeaWn9KVzGhArQ" width="144"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_37rmM8t4EeWdNb6-Lc-hxQ" type="State_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_37rmNMt4EeWdNb6-Lc-hxQ" x="40"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_37sNQMt4EeWdNb6-Lc-hxQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_37sNQct4EeWdNb6-Lc-hxQ"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_aQ_SMd9JEeaWn9KVzGhArQ" type="State_RegionCompartment">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_37sNQct4EeWdNb6-Lc-hxQ" y="-1" width="144"/>
</children>
<children xmi:type="notation:DecorationNode" xmi:id="_373zcMt4EeWdNb6-Lc-hxQ" type="StereotypeLabel">
<styles xmi:type="notation:StringValueStyle" xmi:id="_373zcct4EeWdNb6-Lc-hxQ" name="stereotype" stringValue="UMLRealTimeStateMach::RTState"/>
@@ -924,12 +1465,23 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KKLAAFDuEeOA4ecmvfqvaw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_375Bl8t4EeWdNb6-Lc-hxQ"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_86m-UMt4EeWdNb6-Lc-hxQ" type="690">
+ <children xmi:type="notation:Shape" xmi:id="_86m-UMt4EeWdNb6-Lc-hxQ" type="Behavior_EntryBehaviorLabel">
<element xmi:type="uml:OpaqueBehavior" href="RelayPortOptionalPassThrough.uml#_86jT8Mt4EeWdNb6-Lc-hxQ"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_86m-Uct4EeWdNb6-Lc-hxQ"/>
</children>
+ <children xmi:type="notation:Compartment" xmi:id="_aSAl4N9JEeaWn9KVzGhArQ" type="InternalTransitions">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_a2734N9JEeaWn9KVzGhArQ"/>
+ </children>
<element xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_37lfkMt4EeWdNb6-Lc-hxQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_37rmMct4EeWdNb6-Lc-hxQ" x="200" y="112"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_37rmMct4EeWdNb6-Lc-hxQ" x="200" y="112" width="144" height="73"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_aSB0AN9JEeaWn9KVzGhArQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_aSB0Ad9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_aSB0A99JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_37lfkMt4EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aSB0At9JEeaWn9KVzGhArQ" x="400" y="112"/>
</children>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_zA7ject4EeWdNb6-Lc-hxQ"/>
</children>
@@ -957,7 +1509,7 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_z0B0V8t4EeWdNb6-Lc-hxQ" x="230" y="30"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_zA7jfct4EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_zA7jfct4EeWdNb6-Lc-hxQ" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_zA7jfst4EeWdNb6-Lc-hxQ"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_zA7jf8t4EeWdNb6-Lc-hxQ">
<owner xmi:type="uml:StateMachine" href="RelayPortOptionalPassThrough.uml#_y_MeEMt4EeWdNb6-Lc-hxQ"/>
@@ -994,14 +1546,14 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1X4zx8t4EeWdNb6-Lc-hxQ"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1X4zyMt4EeWdNb6-Lc-hxQ"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_-Dq4IMt4EeWdNb6-Lc-hxQ" type="7000" source="_1Xz7QMt4EeWdNb6-Lc-hxQ" target="_37rmMMt4EeWdNb6-Lc-hxQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_-DrfMMt4EeWdNb6-Lc-hxQ" type="7001">
+ <edges xmi:type="notation:Connector" xmi:id="_-Dq4IMt4EeWdNb6-Lc-hxQ" type="Transition_Edge" source="_1Xz7QMt4EeWdNb6-Lc-hxQ" target="_37rmMMt4EeWdNb6-Lc-hxQ">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-DrfMMt4EeWdNb6-Lc-hxQ" type="Transition_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_-DrfMct4EeWdNb6-Lc-hxQ" x="5" y="-12"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_-DrfMst4EeWdNb6-Lc-hxQ" type="7002">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-DrfMst4EeWdNb6-Lc-hxQ" type="Transition_GuardLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_-DrfM8t4EeWdNb6-Lc-hxQ" x="7" y="14"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_-DrfNMt4EeWdNb6-Lc-hxQ" type="7003">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-DrfNMt4EeWdNb6-Lc-hxQ" type="Transition_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_-DrfNct4EeWdNb6-Lc-hxQ" y="60"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_-Dq4Ict4EeWdNb6-Lc-hxQ"/>
@@ -1010,5 +1562,15 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-EIyMMt4EeWdNb6-Lc-hxQ" id="(1.0,0.45)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-EIyMct4EeWdNb6-Lc-hxQ" id="(0.0,0.1568627450980392)"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_aSB0BN9JEeaWn9KVzGhArQ" type="StereotypeCommentLink" source="_37rmMMt4EeWdNb6-Lc-hxQ" target="_aSB0AN9JEeaWn9KVzGhArQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_aSB0Bd9JEeaWn9KVzGhArQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_aSB0Cd9JEeaWn9KVzGhArQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:State" href="RelayPortOptionalPassThrough.uml#_37lfkMt4EeWdNb6-Lc-hxQ"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aSB0Bt9JEeaWn9KVzGhArQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aSB0B99JEeaWn9KVzGhArQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aSB0CN9JEeaWn9KVzGhArQ"/>
+ </edges>
</notation:Diagram>
</xmi:XMI>
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml
index 9871879..27729ec 100644
--- a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml
@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:RTCppProperties="http://www.eclipse.org/papyrus/umlrt/cppproperties" xmlns:UMLRealTime="http://www.eclipse.org/papyrus/umlrt" xmlns:UMLRealTimeStateMach="http://www.eclipse.org/papyrus/umlrt/statemachine" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:RTCppProperties="http://www.eclipse.org/papyrus/umlrt/cppproperties" xmlns:UMLRTStateMachines="http://www.eclipse.org/papyrus/umlrt/statemachine" xmlns:UMLRealTime="http://www.eclipse.org/papyrus/umlrt" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
<uml:Model xmi:id="_34qEMMt0EeWdNb6-Lc-hxQ" name="RootElement">
<packagedElement xmi:type="uml:Package" xmi:id="_5-9CUMt0EeWdNb6-Lc-hxQ" name="Protocol1">
<packagedElement xmi:type="uml:Collaboration" xmi:id="_57qdwMt0EeWdNb6-Lc-hxQ" name="Protocol1">
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_5_LEwMt0EeWdNb6-Lc-hxQ" client="_57qdwMt0EeWdNb6-Lc-hxQ" supplier="_5_IogMt0EeWdNb6-Lc-hxQ" contract="_5_IogMt0EeWdNb6-Lc-hxQ">
+ <interfaceRealization xmi:id="_5_LEwMt0EeWdNb6-Lc-hxQ" client="_57qdwMt0EeWdNb6-Lc-hxQ" supplier="_5_IogMt0EeWdNb6-Lc-hxQ" contract="_5_IogMt0EeWdNb6-Lc-hxQ">
<name xsi:nil="true"/>
</interfaceRealization>
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_5_U1wMt0EeWdNb6-Lc-hxQ" client="_57qdwMt0EeWdNb6-Lc-hxQ" supplier="_5_SZgMt0EeWdNb6-Lc-hxQ" contract="_5_SZgMt0EeWdNb6-Lc-hxQ">
+ <interfaceRealization xmi:id="_5_U1wMt0EeWdNb6-Lc-hxQ" client="_57qdwMt0EeWdNb6-Lc-hxQ" supplier="_5_SZgMt0EeWdNb6-Lc-hxQ" contract="_5_SZgMt0EeWdNb6-Lc-hxQ">
<name xsi:nil="true"/>
</interfaceRealization>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_5_IogMt0EeWdNb6-Lc-hxQ" name="Protocol1"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_5_OIEMt0EeWdNb6-Lc-hxQ" name="Protocol1~">
- <ownedOperation xmi:type="uml:Operation" xmi:id="_7bxloMt0EeWdNb6-Lc-hxQ" name="msg1"/>
+ <ownedOperation xmi:id="_7bxloMt0EeWdNb6-Lc-hxQ" name="msg1"/>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_5_P9QMt0EeWdNb6-Lc-hxQ" client="_57qdwMt0EeWdNb6-Lc-hxQ" supplier="_5_OIEMt0EeWdNb6-Lc-hxQ">
<name xsi:nil="true"/>
@@ -27,15 +27,15 @@
</packagedElement>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="__gweAMt0EeWdNb6-Lc-hxQ" name="Top" classifierBehavior="_y_MeEMt4EeWdNb6-Lc-hxQ" isActive="true">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_gywDIMt1EeWdNb6-Lc-hxQ" name="sender" visibility="protected" type="_CENSMMt1EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_gywDIMt1EeWdNb6-Lc-hxQ" name="sender" visibility="protected" type="_CENSMMt1EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gyzGcct1EeWdNb6-Lc-hxQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_gyztgMt1EeWdNb6-Lc-hxQ" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_iAAgcMt1EeWdNb6-Lc-hxQ" name="receiver" visibility="protected" type="_Dc8mwMt1EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_iAAgcMt1EeWdNb6-Lc-hxQ" name="receiver" visibility="protected" type="_Dc8mwMt1EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_iAC8sMt1EeWdNb6-Lc-hxQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_iAC8sct1EeWdNb6-Lc-hxQ" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_jCppMMt1EeWdNb6-Lc-hxQ" name="mediator" visibility="protected" type="_Fd7AAMt1EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite">
+ <ownedAttribute xmi:id="_jCppMMt1EeWdNb6-Lc-hxQ" name="mediator" visibility="protected" type="_Fd7AAMt1EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_jCsFcMt1EeWdNb6-Lc-hxQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_jCsFcct1EeWdNb6-Lc-hxQ" value="1"/>
</ownedAttribute>
@@ -43,35 +43,35 @@
<ownedAttribute xmi:type="uml:Port" xmi:id="_LrUkIMt6EeWdNb6-Lc-hxQ" name="frame" visibility="public" isOrdered="true" aggregation="composite" isBehavior="true" isService="false">
<type xmi:type="uml:Collaboration" href="pathmap://UMLRTRTSLIB/UMLRT-RTS.uml#_TWVjwGtVEeSCmtGQ-V4nzg"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_uA5bwOxsEeWC6NxYAfYK4w" name="mediatorId" visibility="protected">
+ <ownedAttribute xmi:id="_uA5bwOxsEeWC6NxYAfYK4w" name="mediatorId" visibility="protected">
<type xmi:type="uml:Class" href="pathmap://UMLRTRTSLIB/UMLRT-RTS.uml#_GfwZUICSEeSeANT-DfY5oA"/>
</ownedAttribute>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_tmiesMt1EeWdNb6-Lc-hxQ" name="RTConnector1">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_tmmJEMt1EeWdNb6-Lc-hxQ" partWithPort="_gywDIMt1EeWdNb6-Lc-hxQ" role="_KTYTEMt1EeWdNb6-Lc-hxQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_tmmJEct1EeWdNb6-Lc-hxQ" partWithPort="_jCppMMt1EeWdNb6-Lc-hxQ" role="_QiQQIMt1EeWdNb6-Lc-hxQ"/>
+ <ownedConnector xmi:id="_tmiesMt1EeWdNb6-Lc-hxQ" name="RTConnector1">
+ <end xmi:id="_tmmJEMt1EeWdNb6-Lc-hxQ" partWithPort="_gywDIMt1EeWdNb6-Lc-hxQ" role="_KTYTEMt1EeWdNb6-Lc-hxQ"/>
+ <end xmi:id="_tmmJEct1EeWdNb6-Lc-hxQ" partWithPort="_jCppMMt1EeWdNb6-Lc-hxQ" role="_QiQQIMt1EeWdNb6-Lc-hxQ"/>
</ownedConnector>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_vZrQQMt1EeWdNb6-Lc-hxQ" name="RTConnector2">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_vZtFcMt1EeWdNb6-Lc-hxQ" partWithPort="_jCppMMt1EeWdNb6-Lc-hxQ" role="_VFVZwMt1EeWdNb6-Lc-hxQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_vZtFcct1EeWdNb6-Lc-hxQ" partWithPort="_iAAgcMt1EeWdNb6-Lc-hxQ" role="_M9mdoMt1EeWdNb6-Lc-hxQ"/>
+ <ownedConnector xmi:id="_vZrQQMt1EeWdNb6-Lc-hxQ" name="RTConnector2">
+ <end xmi:id="_vZtFcMt1EeWdNb6-Lc-hxQ" partWithPort="_jCppMMt1EeWdNb6-Lc-hxQ" role="_VFVZwMt1EeWdNb6-Lc-hxQ"/>
+ <end xmi:id="_vZtFcct1EeWdNb6-Lc-hxQ" partWithPort="_iAAgcMt1EeWdNb6-Lc-hxQ" role="_M9mdoMt1EeWdNb6-Lc-hxQ"/>
</ownedConnector>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_qTlDsMt2EeWdNb6-Lc-hxQ" name="RTConnector3">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_qTmR0Mt2EeWdNb6-Lc-hxQ" role="_jW924Mt2EeWdNb6-Lc-hxQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_qTmR0ct2EeWdNb6-Lc-hxQ" partWithPort="_gywDIMt1EeWdNb6-Lc-hxQ" role="_dLelAMt2EeWdNb6-Lc-hxQ"/>
+ <ownedConnector xmi:id="_qTlDsMt2EeWdNb6-Lc-hxQ" name="RTConnector3">
+ <end xmi:id="_qTmR0Mt2EeWdNb6-Lc-hxQ" role="_jW924Mt2EeWdNb6-Lc-hxQ"/>
+ <end xmi:id="_qTmR0ct2EeWdNb6-Lc-hxQ" partWithPort="_gywDIMt1EeWdNb6-Lc-hxQ" role="_dLelAMt2EeWdNb6-Lc-hxQ"/>
</ownedConnector>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_y_MeEMt4EeWdNb6-Lc-hxQ" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_y_PhYMt4EeWdNb6-Lc-hxQ" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_-Di8UMt4EeWdNb6-Lc-hxQ" name="t0" source="_y_QvgMt4EeWdNb6-Lc-hxQ" target="_37lfkMt4EeWdNb6-Lc-hxQ">
+ <region xmi:id="_y_PhYMt4EeWdNb6-Lc-hxQ" name="Region">
+ <transition xmi:id="_-Di8UMt4EeWdNb6-Lc-hxQ" name="t0" source="_y_QvgMt4EeWdNb6-Lc-hxQ" target="_37lfkMt4EeWdNb6-Lc-hxQ">
<effect xmi:type="uml:OpaqueBehavior" xmi:id="_QZvQgMt5EeWdNb6-Lc-hxQ">
<language>C++</language>
- <body>cout << "[Top.t0] starting" << endl;
-cout << "[Top.t0] incarnating mediator" << endl;
-mediatorId = frame.incarnate(mediator, Mediator);
-if (!mediatorId.isValid()) {
- cout << "[Top.t0] failed to incarnate mediator" << endl;
- return;
-}
-cout << "[Top.t0] starting sender" << endl;
-start.begin().send();
+ <body> cout << "[Top](t0) starting" << endl;
+ cout << "[Top](t0) incarnating mediator" << endl;
+ mediatorId = frame.incarnate(mediator, Mediator);
+ if (!mediatorId.isValid()) {
+ cout << "[Top](t0) failed to incarnate mediator" << endl;
+ return;
+ }
+ cout << "[Top](t0) starting sender" << endl;
+ start.begin().send();
</body>
</effect>
</transition>
@@ -79,7 +79,7 @@
<subvertex xmi:type="uml:State" xmi:id="_37lfkMt4EeWdNb6-Lc-hxQ" name="Started">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_86jT8Mt4EeWdNb6-Lc-hxQ">
<language>C++</language>
- <body>cout << "[Top.Started]" << endl;
+ <body> cout << "[Top](Started)" << endl;
</body>
</entry>
</subvertex>
@@ -90,29 +90,29 @@
<ownedAttribute xmi:type="uml:Port" xmi:id="_KTYTEMt1EeWdNb6-Lc-hxQ" name="s_out" visibility="public" type="_57qdwMt0EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite" isBehavior="true"/>
<ownedAttribute xmi:type="uml:Port" xmi:id="_dLelAMt2EeWdNb6-Lc-hxQ" name="start" visibility="public" type="_Xm3F4Mt2EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite" isBehavior="true" isConjugated="true"/>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_kz3dQMt3EeWdNb6-Lc-hxQ" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_kz55gMt3EeWdNb6-Lc-hxQ" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_FifPkMt4EeWdNb6-Lc-hxQ" name="t0" source="_kz7usMt3EeWdNb6-Lc-hxQ" target="_oD7f0Mt3EeWdNb6-Lc-hxQ"/>
- <transition xmi:type="uml:Transition" xmi:id="_IsIhEMt4EeWdNb6-Lc-hxQ" name="t1" source="_oD7f0Mt3EeWdNb6-Lc-hxQ" target="_xcYc8Mt3EeWdNb6-Lc-hxQ">
+ <region xmi:id="_kz55gMt3EeWdNb6-Lc-hxQ" name="Region">
+ <transition xmi:id="_FifPkMt4EeWdNb6-Lc-hxQ" name="t0" source="_kz7usMt3EeWdNb6-Lc-hxQ" target="_oD7f0Mt3EeWdNb6-Lc-hxQ"/>
+ <transition xmi:id="_IsIhEMt4EeWdNb6-Lc-hxQ" name="t1" source="_oD7f0Mt3EeWdNb6-Lc-hxQ" target="_xcYc8Mt3EeWdNb6-Lc-hxQ">
<effect xmi:type="uml:OpaqueBehavior" xmi:id="_oe2EwMt4EeWdNb6-Lc-hxQ">
<language>C++</language>
- <body>cout << "[Sender.t1] sending message" << endl;
-s_out.msg1().send();
+ <body> cout << "[Sender](t1) sending message" << endl;
+ s_out.msg1().send();
</body>
</effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_S2dnEMt4EeWdNb6-Lc-hxQ" event="_aMJtIMt2EeWdNb6-Lc-hxQ" port="_dLelAMt2EeWdNb6-Lc-hxQ"/>
+ <trigger xmi:id="_S2dnEMt4EeWdNb6-Lc-hxQ" event="_aMJtIMt2EeWdNb6-Lc-hxQ" port="_dLelAMt2EeWdNb6-Lc-hxQ"/>
</transition>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_kz7usMt3EeWdNb6-Lc-hxQ" name="Init"/>
<subvertex xmi:type="uml:State" xmi:id="_oD7f0Mt3EeWdNb6-Lc-hxQ" name="WaitingToStart">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_tj8LwMt3EeWdNb6-Lc-hxQ">
<language>C++</language>
- <body>cout << "[Sender.WaitingToStart]" << endl;
+ <body> cout << "[Sender](WaitingToStart)" << endl;
</body>
</entry>
</subvertex>
<subvertex xmi:type="uml:State" xmi:id="_xcYc8Mt3EeWdNb6-Lc-hxQ" name="MessageSent">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_81lJ0Mt3EeWdNb6-Lc-hxQ">
<language>C++</language>
- <body>cout << "[Sender.MessageSent]" << endl;
+ <body> cout << "[Sender](MessageSent)" << endl;
</body>
</entry>
</subvertex>
@@ -122,23 +122,24 @@
<packagedElement xmi:type="uml:Class" xmi:id="_Dc8mwMt1EeWdNb6-Lc-hxQ" name="Receiver" classifierBehavior="_A57lgMt3EeWdNb6-Lc-hxQ" isActive="true">
<ownedAttribute xmi:type="uml:Port" xmi:id="_M9mdoMt1EeWdNb6-Lc-hxQ" name="r_inp" visibility="public" type="_57qdwMt0EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite" isBehavior="true" isConjugated="true"/>
<ownedBehavior xmi:type="uml:StateMachine" xmi:id="_A57lgMt3EeWdNb6-Lc-hxQ" name="StateMachine" isReentrant="false">
- <region xmi:type="uml:Region" xmi:id="_A6AeAMt3EeWdNb6-Lc-hxQ" name="Region">
- <transition xmi:type="uml:Transition" xmi:id="_Z46yoMt3EeWdNb6-Lc-hxQ" name="t0" source="_A6EvcMt3EeWdNb6-Lc-hxQ" target="_GsmHsMt3EeWdNb6-Lc-hxQ"/>
- <transition xmi:type="uml:Transition" xmi:id="_bEhDEMt3EeWdNb6-Lc-hxQ" name="t1" source="_GsmHsMt3EeWdNb6-Lc-hxQ" target="_TTjoMMt3EeWdNb6-Lc-hxQ">
- <trigger xmi:type="uml:Trigger" xmi:id="_gPmA0Mt3EeWdNb6-Lc-hxQ" event="_7bza0Mt0EeWdNb6-Lc-hxQ" port="_M9mdoMt1EeWdNb6-Lc-hxQ"/>
+ <region xmi:id="_A6AeAMt3EeWdNb6-Lc-hxQ" name="Region">
+ <transition xmi:id="_Z46yoMt3EeWdNb6-Lc-hxQ" name="t0" source="_A6EvcMt3EeWdNb6-Lc-hxQ" target="_GsmHsMt3EeWdNb6-Lc-hxQ"/>
+ <transition xmi:id="_bEhDEMt3EeWdNb6-Lc-hxQ" name="t1" source="_GsmHsMt3EeWdNb6-Lc-hxQ" target="_TTjoMMt3EeWdNb6-Lc-hxQ">
+ <trigger xmi:id="_gPmA0Mt3EeWdNb6-Lc-hxQ" event="_7bza0Mt0EeWdNb6-Lc-hxQ" port="_M9mdoMt1EeWdNb6-Lc-hxQ"/>
</transition>
<subvertex xmi:type="uml:Pseudostate" xmi:id="_A6EvcMt3EeWdNb6-Lc-hxQ" name="Init"/>
<subvertex xmi:type="uml:State" xmi:id="_GsmHsMt3EeWdNb6-Lc-hxQ" name="Listening">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_Sjv74Mt3EeWdNb6-Lc-hxQ">
<language>C++</language>
- <body>cout << "[Receiver.Listening]" << endl;
+ <body> cout << "[Receiver](Listening)" << endl;
</body>
</entry>
</subvertex>
<subvertex xmi:type="uml:State" xmi:id="_TTjoMMt3EeWdNb6-Lc-hxQ" name="MessageReceived">
<entry xmi:type="uml:OpaqueBehavior" xmi:id="_Y6IPIMt3EeWdNb6-Lc-hxQ">
<language>C++</language>
- <body>cout << "[Receiver.MessageReceived]" << endl;
+ <body> cout << "[Receiver](MessageReceived)" << endl;
+ exit(0);
</body>
</entry>
</subvertex>
@@ -148,23 +149,23 @@
<packagedElement xmi:type="uml:Class" xmi:id="_Fd7AAMt1EeWdNb6-Lc-hxQ" name="Mediator" isActive="true">
<ownedAttribute xmi:type="uml:Port" xmi:id="_QiQQIMt1EeWdNb6-Lc-hxQ" name="m_inp" visibility="public" type="_57qdwMt0EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite" isConjugated="true"/>
<ownedAttribute xmi:type="uml:Port" xmi:id="_VFVZwMt1EeWdNb6-Lc-hxQ" name="m_out" visibility="public" type="_57qdwMt0EeWdNb6-Lc-hxQ" isOrdered="true" aggregation="composite"/>
- <ownedConnector xmi:type="uml:Connector" xmi:id="_28VwcMt1EeWdNb6-Lc-hxQ" name="RTConnector1">
- <end xmi:type="uml:ConnectorEnd" xmi:id="_28XloMt1EeWdNb6-Lc-hxQ" role="_QiQQIMt1EeWdNb6-Lc-hxQ"/>
- <end xmi:type="uml:ConnectorEnd" xmi:id="_28Xloct1EeWdNb6-Lc-hxQ" role="_VFVZwMt1EeWdNb6-Lc-hxQ"/>
+ <ownedConnector xmi:id="_28VwcMt1EeWdNb6-Lc-hxQ" name="RTConnector1">
+ <end xmi:id="_28XloMt1EeWdNb6-Lc-hxQ" role="_QiQQIMt1EeWdNb6-Lc-hxQ"/>
+ <end xmi:id="_28Xloct1EeWdNb6-Lc-hxQ" role="_VFVZwMt1EeWdNb6-Lc-hxQ"/>
</ownedConnector>
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_Xm5iIMt2EeWdNb6-Lc-hxQ" name="Start">
<packagedElement xmi:type="uml:Collaboration" xmi:id="_Xm3F4Mt2EeWdNb6-Lc-hxQ" name="Start">
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_XnA24Mt2EeWdNb6-Lc-hxQ" client="_Xm3F4Mt2EeWdNb6-Lc-hxQ" supplier="_Xm9MgMt2EeWdNb6-Lc-hxQ" contract="_Xm9MgMt2EeWdNb6-Lc-hxQ">
+ <interfaceRealization xmi:id="_XnA24Mt2EeWdNb6-Lc-hxQ" client="_Xm3F4Mt2EeWdNb6-Lc-hxQ" supplier="_Xm9MgMt2EeWdNb6-Lc-hxQ" contract="_Xm9MgMt2EeWdNb6-Lc-hxQ">
<name xsi:nil="true"/>
</interfaceRealization>
- <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_XnKA0Mt2EeWdNb6-Lc-hxQ" client="_Xm3F4Mt2EeWdNb6-Lc-hxQ" supplier="_XnGWcMt2EeWdNb6-Lc-hxQ" contract="_XnGWcMt2EeWdNb6-Lc-hxQ">
+ <interfaceRealization xmi:id="_XnKA0Mt2EeWdNb6-Lc-hxQ" client="_Xm3F4Mt2EeWdNb6-Lc-hxQ" supplier="_XnGWcMt2EeWdNb6-Lc-hxQ" contract="_XnGWcMt2EeWdNb6-Lc-hxQ">
<name xsi:nil="true"/>
</interfaceRealization>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_Xm9MgMt2EeWdNb6-Lc-hxQ" name="Start"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_XnBd8Mt2EeWdNb6-Lc-hxQ" name="Start~">
- <ownedOperation xmi:type="uml:Operation" xmi:id="_aMJGEMt2EeWdNb6-Lc-hxQ" name="begin"/>
+ <ownedOperation xmi:id="_aMJGEMt2EeWdNb6-Lc-hxQ" name="begin"/>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_XnFIUMt2EeWdNb6-Lc-hxQ" client="_Xm3F4Mt2EeWdNb6-Lc-hxQ" supplier="_XnBd8Mt2EeWdNb6-Lc-hxQ">
<name xsi:nil="true"/>
@@ -178,30 +179,30 @@
<name xsi:nil="true"/>
</packagedElement>
</packagedElement>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_4ABQcMt0EeWdNb6-Lc-hxQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4AETwMt0EeWdNb6-Lc-hxQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_4ABQcMt0EeWdNb6-Lc-hxQ">
+ <eAnnotations xmi:id="_4AETwMt0EeWdNb6-Lc-hxQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_1h74oEeVEeO0lv5O1DTHOQ"/>
+ <appliedProfile href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_1h74oEeVEeO0lv5O1DTHOQ"/>
</profileApplication>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_9Z4REMt0EeWdNb6-Lc-hxQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9Z44IMt0EeWdNb6-Lc-hxQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <profileApplication xmi:id="_9Z4REMt0EeWdNb6-Lc-hxQ">
+ <eAnnotations xmi:id="_9Z44IMt0EeWdNb6-Lc-hxQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt/statemachine#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KLcn0FDtEeOA4ecmvfqvaw"/>
+ <appliedProfile href="pathmap://UML_RT_PROFILE/UMLRealTimeSM-addendum.profile.uml#_KLcn0FDtEeOA4ecmvfqvaw"/>
</profileApplication>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_-RkHAMt0EeWdNb6-Lc-hxQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-RlVIMt0EeWdNb6-Lc-hxQ" source="PapyrusVersion">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-RlVIct0EeWdNb6-Lc-hxQ" key="Version" value="0.0.11"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-RlVIst0EeWdNb6-Lc-hxQ" key="Comment" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-RlVI8t0EeWdNb6-Lc-hxQ" key="Copyright" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-RlVJMt0EeWdNb6-Lc-hxQ" key="Date" value="2015-12-10"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-RlVJct0EeWdNb6-Lc-hxQ" key="Author" value=""/>
+ <profileApplication xmi:id="_-RkHAMt0EeWdNb6-Lc-hxQ">
+ <eAnnotations xmi:id="_-RlVIMt0EeWdNb6-Lc-hxQ" source="PapyrusVersion">
+ <details xmi:id="_-RlVIct0EeWdNb6-Lc-hxQ" key="Version" value="0.0.11"/>
+ <details xmi:id="_-RlVIst0EeWdNb6-Lc-hxQ" key="Comment" value=""/>
+ <details xmi:id="_-RlVI8t0EeWdNb6-Lc-hxQ" key="Copyright" value=""/>
+ <details xmi:id="_-RlVJMt0EeWdNb6-Lc-hxQ" key="Date" value="2015-12-10"/>
+ <details xmi:id="_-RlVJct0EeWdNb6-Lc-hxQ" key="Author" value=""/>
</eAnnotations>
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-RkuEMt0EeWdNb6-Lc-hxQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <eAnnotations xmi:id="_-RkuEMt0EeWdNb6-Lc-hxQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/umlrt/cppproperties#/"/>
</eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_vl5LALs8EeSTjNEQkASznQ"/>
+ <appliedProfile href="pathmap://UMLRT_CPP/RTCppProperties.profile.uml#_vl5LALs8EeSTjNEQkASznQ"/>
</profileApplication>
</uml:Model>
<UMLRealTime:ProtocolContainer xmi:id="_5--3gMt0EeWdNb6-Lc-hxQ" base_Package="_5-9CUMt0EeWdNb6-Lc-hxQ"/>
@@ -234,19 +235,19 @@
<RTCppProperties:CapsuleProperties xmi:id="_zcaQcMt2EeWdNb6-Lc-hxQ" headerPreface="#include <iostream>
using namespace std;
" base_Class="_CENSMMt1EeWdNb6-Lc-hxQ"/>
<RTCppProperties:CapsuleProperties xmi:id="_0UzRAMt2EeWdNb6-Lc-hxQ" headerPreface="#include <iostream>
using namespace std;
" base_Class="__gweAMt0EeWdNb6-Lc-hxQ"/>
<RTCppProperties:CapsuleProperties xmi:id="_1HTsAMt2EeWdNb6-Lc-hxQ" headerPreface="#include <iostream>
using namespace std;
" base_Class="_Dc8mwMt1EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_A6IZ0Mt3EeWdNb6-Lc-hxQ" base_Pseudostate="_A6EvcMt3EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_A6K2EMt3EeWdNb6-Lc-hxQ" base_Region="_A6AeAMt3EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_A6LdIMt3EeWdNb6-Lc-hxQ" base_StateMachine="_A57lgMt3EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTState xmi:id="_Gsoj8Mt3EeWdNb6-Lc-hxQ" base_State="_GsmHsMt3EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTState xmi:id="_TTmrgMt3EeWdNb6-Lc-hxQ" base_State="_TTjoMMt3EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_kz9j4Mt3EeWdNb6-Lc-hxQ" base_Pseudostate="_kz7usMt3EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_kz-K8Mt3EeWdNb6-Lc-hxQ" base_Region="_kz55gMt3EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_kz-yAMt3EeWdNb6-Lc-hxQ" base_StateMachine="_kz3dQMt3EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTState xmi:id="_oD9VAMt3EeWdNb6-Lc-hxQ" base_State="_oD7f0Mt3EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTState xmi:id="_xcbgQMt3EeWdNb6-Lc-hxQ" base_State="_xcYc8Mt3EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTPseudostate xmi:id="_y_SksMt4EeWdNb6-Lc-hxQ" base_Pseudostate="_y_QvgMt4EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTRegion xmi:id="_y_TLwMt4EeWdNb6-Lc-hxQ" base_Region="_y_PhYMt4EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTStateMachine xmi:id="_y_TLwct4EeWdNb6-Lc-hxQ" base_StateMachine="_y_MeEMt4EeWdNb6-Lc-hxQ"/>
- <UMLRealTimeStateMach:RTState xmi:id="_37nUwMt4EeWdNb6-Lc-hxQ" base_State="_37lfkMt4EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_A6IZ0Mt3EeWdNb6-Lc-hxQ" base_Pseudostate="_A6EvcMt3EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_A6K2EMt3EeWdNb6-Lc-hxQ" base_Region="_A6AeAMt3EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_A6LdIMt3EeWdNb6-Lc-hxQ" base_StateMachine="_A57lgMt3EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTState xmi:id="_Gsoj8Mt3EeWdNb6-Lc-hxQ" base_State="_GsmHsMt3EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTState xmi:id="_TTmrgMt3EeWdNb6-Lc-hxQ" base_State="_TTjoMMt3EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_kz9j4Mt3EeWdNb6-Lc-hxQ" base_Pseudostate="_kz7usMt3EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_kz-K8Mt3EeWdNb6-Lc-hxQ" base_Region="_kz55gMt3EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_kz-yAMt3EeWdNb6-Lc-hxQ" base_StateMachine="_kz3dQMt3EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTState xmi:id="_oD9VAMt3EeWdNb6-Lc-hxQ" base_State="_oD7f0Mt3EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTState xmi:id="_xcbgQMt3EeWdNb6-Lc-hxQ" base_State="_xcYc8Mt3EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTPseudostate xmi:id="_y_SksMt4EeWdNb6-Lc-hxQ" base_Pseudostate="_y_QvgMt4EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTRegion xmi:id="_y_TLwMt4EeWdNb6-Lc-hxQ" base_Region="_y_PhYMt4EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTStateMachine xmi:id="_y_TLwct4EeWdNb6-Lc-hxQ" base_StateMachine="_y_MeEMt4EeWdNb6-Lc-hxQ"/>
+ <UMLRTStateMachines:RTState xmi:id="_37nUwMt4EeWdNb6-Lc-hxQ" base_State="_37lfkMt4EeWdNb6-Lc-hxQ"/>
<UMLRealTime:RTPort xmi:id="_LrYOgMt6EeWdNb6-Lc-hxQ" isWired="false" base_Port="_LrUkIMt6EeWdNb6-Lc-hxQ"/>
</xmi:XMI>
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/CMakeLists.txt b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/CMakeLists.txt
new file mode 100644
index 0000000..bbed6a8
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/CMakeLists.txt
@@ -0,0 +1,36 @@
+# Generated 2017-01-20 14:55:14
+
+cmake_minimum_required(VERSION 2.8.7)
+set(TARGET TopMain)
+project(${TARGET})
+
+# require location of supporting RTS
+if (NOT UMLRTS_ROOT)
+ if (DEFINED ENV{UMLRTS_ROOT})
+ set(UMLRTS_ROOT $ENV{UMLRTS_ROOT})
+ else ()
+ set(UMLRTS_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/umlrt.rts)
+ endif ()
+endif ()
+
+# setup primary envars - provides tooling config
+include(${UMLRTS_ROOT}/build/buildenv.cmake)
+
+# model sources
+set(SRCS TopMain.cc Protocol1.cc Sender.cc Receiver.cc Mediator.cc Start.cc Top.cc TopControllers.cc )
+
+# specify target
+add_executable(${TARGET} ${SRCS})
+
+# setup lib dependency support after defining TARGET
+include(${UMLRTS_ROOT}/build/rtslib.cmake)
+
+# compiler parameters
+set_target_properties(${TARGET} PROPERTIES COMPILE_OPTIONS "${COPTS}")
+set_target_properties(${TARGET} PROPERTIES COMPILE_DEFINITIONS "${CDEFS}")
+include_directories(${INCS})
+
+# linker parameters
+set_target_properties(${TARGET} PROPERTIES CMAKE_EXE_LINKER_FLAGS "${LOPTS}")
+target_link_libraries(${TARGET} ${LIBS})
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Makefile b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Makefile
new file mode 100644
index 0000000..0bcbd22
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Makefile
@@ -0,0 +1,11 @@
+##################################################
+# Default makefile
+# Redirect make to target makefile
+##################################################
+
+all:
+ make -f MakefileTop.mk all
+clean:
+ make -f MakefileTop.mk clean
+.PHONY:
+ make -f MakefileTop.mk all clean
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/MakefileTop.mk b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/MakefileTop.mk
new file mode 100644
index 0000000..a498202
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/MakefileTop.mk
@@ -0,0 +1,49 @@
+# set default value for TARGETOS if is it not defined
+ifeq ($(TARGETOS), )
+$(warning warning: TARGETOS not defined. Choosing linux)
+TARGETOS=linux
+endif
+
+# set default value for BUILDTOOLS if is it not defined
+ifeq ($(BUILDTOOLS), )
+$(warning warning: BUILDTOOLS not defined. Choosing x86-gcc-4.6.3)
+BUILDTOOLS=x86-gcc-4.6.3
+endif
+
+# Location of RTS root.
+UMLRTS_ROOT ?= ./umlrt.rts
+
+CONFIG=$(TARGETOS).$(BUILDTOOLS)
+
+# Destination directory for the RTS services library.
+LIBDEST=$(UMLRTS_ROOT)/lib/$(CONFIG)
+
+include $(UMLRTS_ROOT)/build/host/host.mk
+include $(UMLRTS_ROOT)/build/buildtools/$(BUILDTOOLS)/buildtools.mk
+
+LD_PATHS=$(LIBDEST)
+CC_INCLUDES+=$(UMLRTS_ROOT)/include
+
+CC_DEFINES:=$(foreach d, $(CC_DEFINES), $(CC_DEF)$d)
+CC_INCLUDES:=$(foreach i, $(CC_INCLUDES), $(CC_INC)$i)
+LD_LIBS:=$(foreach i, $(LD_LIBS), $(LD_LIB)$i)
+LD_PATHS:=$(foreach i, $(LD_PATHS), $(LD_LIBPATH)$i)
+
+SRCS = TopMain.cc Protocol1.cc Sender.cc Receiver.cc Mediator.cc Start.cc Top.cc TopControllers.cc
+OBJS = $(subst $(CC_EXT),$(OBJ_EXT),$(SRCS))
+
+MAIN = TopMain$(EXE_EXT)
+
+all: $(MAIN)
+
+$(MAIN): $(OBJS) $(UMLRTS_ROOT)/lib/$(CONFIG)/$(LIB_PRFX)rts$(LIB_EXT)
+ $(LD) $(LD_FLAGS) $(OBJS) $(LD_PATHS) $(LD_LIBS) $(LD_OUT)$@
+
+%$(OBJ_EXT) : %$(CC_EXT)
+ $(CC) $< $(CC_FLAGS) $(CC_DEFINES) $(CC_INCLUDES) $(CC_OUT)$@
+
+clean :
+ @echo $(RM) main$(EXE_EXT) *$(OBJ_EXT) *$(DEP_EXT) $(DBG_FILES)
+ @$(RM) main$(EXE_EXT) *$(OBJ_EXT) *$(DEP_EXT) $(DBG_FILES)
+
+.PHONY: all clean
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Mediator.cc b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Mediator.cc
new file mode 100644
index 0000000..c75a474
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Mediator.cc
@@ -0,0 +1,132 @@
+
+#include "Mediator.hh"
+
+#include <cstddef>
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcommsportrole.hh"
+#include "umlrtframeservice.hh"
+#include "umlrtslot.hh"
+class UMLRTRtsInterface;
+struct UMLRTCommsPort;
+
+Capsule_Mediator::Capsule_Mediator( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, m_inp( borderPorts[borderport_m_inp] )
+, m_out( borderPorts[borderport_m_out] )
+{
+}
+
+
+
+
+
+
+void Capsule_Mediator::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_m_inp:
+ switch( index )
+ {
+ case 0:
+ UMLRTFrameService::connectFarEnds( borderPorts[borderport_m_inp], index, borderPorts[borderport_m_out], 0 );
+ UMLRTFrameService::sendBoundUnboundFarEnd( borderPorts[borderport_m_inp], index, true );
+ UMLRTFrameService::sendBoundUnboundFarEnd( borderPorts[borderport_m_out], 0, true );
+ break;
+ }
+ break;
+ case borderport_m_out:
+ switch( index )
+ {
+ }
+ break;
+ }
+}
+
+void Capsule_Mediator::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_m_inp:
+ switch( index )
+ {
+ case 0:
+ UMLRTFrameService::sendBoundUnboundForPortIndex( borderPorts[borderport_m_inp], index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_m_inp], index );
+ break;
+ }
+ break;
+ case borderport_m_out:
+ switch( index )
+ {
+ case 0:
+ UMLRTFrameService::sendBoundUnboundForPortIndex( borderPorts[borderport_m_out], index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_m_out], index );
+ break;
+ }
+ break;
+ }
+}
+
+void Capsule_Mediator::initialize( const UMLRTMessage & msg )
+{
+}
+
+void Capsule_Mediator::inject( const UMLRTMessage & msg )
+{
+}
+
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Mediator::port_m_inp,
+ "Protocol1",
+ "m_inp",
+ "",
+ 1,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ true
+ },
+ {
+ Capsule_Mediator::port_m_out,
+ "Protocol1",
+ "m_out",
+ "",
+ 1,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Mediator( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ UMLRTFrameService::connectFarEnds( borderPorts[Capsule_Mediator::borderport_m_inp], 0, borderPorts[Capsule_Mediator::borderport_m_out], 0 );
+ slot->capsule = new Capsule_Mediator( &Mediator, slot, borderPorts, NULL, false );
+}
+
+const UMLRTCapsuleClass Mediator =
+{
+ "Mediator",
+ NULL,
+ instantiate_Mediator,
+ 0,
+ NULL,
+ 2,
+ portroles_border,
+ 0,
+ NULL
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Mediator.hh b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Mediator.hh
new file mode 100644
index 0000000..e4559d5
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Mediator.hh
@@ -0,0 +1,43 @@
+
+#ifndef MEDIATOR_HH
+#define MEDIATOR_HH
+
+#include "Protocol1.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+class Capsule_Mediator : public UMLRTCapsule
+{
+public:
+ Capsule_Mediator( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+protected:
+ Protocol1::Conj m_inp;
+public:
+ enum BorderPortId
+ {
+ borderport_m_inp,
+ borderport_m_out
+ };
+protected:
+ Protocol1::Base m_out;
+public:
+ enum PartId
+ {
+ };
+ enum PortId
+ {
+ port_m_inp,
+ port_m_out
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+ virtual void initialize( const UMLRTMessage & msg );
+ virtual void inject( const UMLRTMessage & msg );
+};
+extern const UMLRTCapsuleClass Mediator;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Protocol1.cc b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Protocol1.cc
new file mode 100644
index 0000000..4ddb137
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Protocol1.cc
@@ -0,0 +1,50 @@
+
+#include "Protocol1.hh"
+
+#include "umlrtobjectclass.hh"
+#include "umlrtoutsignal.hh"
+struct UMLRTCommsPort;
+
+static UMLRTObject_field fields_msg1[] =
+{
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0
+ }
+ #endif
+};
+
+static UMLRTObject payload_msg1 =
+{
+ 0,
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ 1
+ #else
+ 0
+ #endif
+ ,
+ fields_msg1
+};
+
+Protocol1::Base::Base( const UMLRTCommsPort * & srcPort )
+: UMLRTProtocol( srcPort )
+{
+}
+
+UMLRTOutSignal Protocol1::Base::msg1() const
+{
+ UMLRTOutSignal signal;
+ signal.initialize( "msg1", signal_msg1, srcPort, &payload_msg1 );
+ return signal;
+}
+
+Protocol1::Conj::Conj( const UMLRTCommsPort * & srcPort )
+: UMLRTProtocol( srcPort )
+{
+}
+
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Protocol1.hh b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Protocol1.hh
new file mode 100644
index 0000000..3f65d75
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Protocol1.hh
@@ -0,0 +1,30 @@
+
+#ifndef PROTOCOL1_HH
+#define PROTOCOL1_HH
+
+#include "umlrtoutsignal.hh"
+#include "umlrtprotocol.hh"
+#include "umlrtsignal.hh"
+struct UMLRTCommsPort;
+
+namespace Protocol1
+{
+ class Base : public UMLRTProtocol
+ {
+ public:
+ Base( const UMLRTCommsPort * & srcPort );
+ UMLRTOutSignal msg1() const;
+ };
+ class Conj : public UMLRTProtocol
+ {
+ public:
+ Conj( const UMLRTCommsPort * & srcPort );
+ };
+ enum SignalId
+ {
+ signal_msg1 = UMLRTSignal::FIRST_PROTOCOL_SIGNAL_ID
+ };
+};
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Receiver.cc b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Receiver.cc
new file mode 100644
index 0000000..740608a
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Receiver.cc
@@ -0,0 +1,187 @@
+
+#include "Receiver.hh"
+
+#include "Protocol1.hh"
+#include "umlrtcommsportrole.hh"
+#include "umlrtmessage.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsuleclass.hh"
+#include "umlrtframeservice.hh"
+class UMLRTRtsInterface;
+struct UMLRTCommsPort;
+
+Capsule_Receiver::Capsule_Receiver( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, r_inp( borderPorts[borderport_r_inp] )
+, currentState( SPECIAL_INTERNAL_STATE_UNVISITED )
+{
+ stateNames[Listening] = "Listening";
+ stateNames[MessageReceived] = "MessageReceived";
+ stateNames[SPECIAL_INTERNAL_STATE_UNVISITED] = "<uninitialized>";
+}
+
+
+
+
+
+void Capsule_Receiver::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_r_inp:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_r_inp, index, true );
+ break;
+ }
+}
+
+void Capsule_Receiver::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_r_inp:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_r_inp, index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_r_inp], index );
+ break;
+ }
+}
+
+void Capsule_Receiver::inject( const UMLRTMessage & message )
+{
+ msg = &message;
+ switch( currentState )
+ {
+ case Listening:
+ currentState = state_____Listening( &message );
+ break;
+ case MessageReceived:
+ currentState = state_____MessageReceived( &message );
+ break;
+ default:
+ break;
+ }
+}
+
+void Capsule_Receiver::initialize( const UMLRTMessage & message )
+{
+ msg = &message;
+ actionchain_____t0( &message );
+ currentState = Listening;
+}
+
+const char * Capsule_Receiver::getCurrentStateString() const
+{
+ return stateNames[currentState];
+}
+
+
+
+
+void Capsule_Receiver::entryaction_____Listening( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml RootElement::Receiver::Listening entry */
+ cout << "[Receiver](Listening)" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Receiver::entryaction_____MessageReceived( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml RootElement::Receiver::MessageReceived entry */
+ cout << "[Receiver](MessageReceived)" << endl;
+ exit(0);
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Receiver::exitaction_____Listening( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ #undef rtdata
+}
+
+void Capsule_Receiver::actionchain_____t0( const UMLRTMessage * msg )
+{
+ entryaction_____Listening( msg );
+}
+
+void Capsule_Receiver::actionchain_____t1( const UMLRTMessage * msg )
+{
+ exitaction_____Listening( msg );
+ entryaction_____MessageReceived( msg );
+}
+
+Capsule_Receiver::State Capsule_Receiver::state_____Listening( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ case port_r_inp:
+ switch( msg->getSignalId() )
+ {
+ case Protocol1::signal_msg1:
+ actionchain_____t1( msg );
+ return MessageReceived;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+Capsule_Receiver::State Capsule_Receiver::state_____MessageReceived( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Receiver::port_r_inp,
+ "Protocol1",
+ "r_inp",
+ "",
+ 1,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Receiver( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ slot->capsule = new Capsule_Receiver( &Receiver, slot, borderPorts, NULL, false );
+}
+
+const UMLRTCapsuleClass Receiver =
+{
+ "Receiver",
+ NULL,
+ instantiate_Receiver,
+ 0,
+ NULL,
+ 1,
+ portroles_border,
+ 0,
+ NULL
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Receiver.hh b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Receiver.hh
new file mode 100644
index 0000000..c88e103
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Receiver.hh
@@ -0,0 +1,58 @@
+
+#ifndef RECEIVER_HH
+#define RECEIVER_HH
+
+#include "Protocol1.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+#include <iostream>
+using namespace std;
+
+class Capsule_Receiver : public UMLRTCapsule
+{
+public:
+ Capsule_Receiver( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+protected:
+ Protocol1::Conj r_inp;
+public:
+ enum BorderPortId
+ {
+ borderport_r_inp
+ };
+ enum PartId
+ {
+ };
+ enum PortId
+ {
+ port_r_inp
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+ virtual void inject( const UMLRTMessage & message );
+ virtual void initialize( const UMLRTMessage & message );
+ const char * getCurrentStateString() const;
+private:
+ enum State
+ {
+ Listening,
+ MessageReceived,
+ SPECIAL_INTERNAL_STATE_UNVISITED
+ };
+ const char * stateNames[3];
+ State currentState;
+ void entryaction_____Listening( const UMLRTMessage * msg );
+ void entryaction_____MessageReceived( const UMLRTMessage * msg );
+ void exitaction_____Listening( const UMLRTMessage * msg );
+ void actionchain_____t0( const UMLRTMessage * msg );
+ void actionchain_____t1( const UMLRTMessage * msg );
+ State state_____Listening( const UMLRTMessage * msg );
+ State state_____MessageReceived( const UMLRTMessage * msg );
+};
+extern const UMLRTCapsuleClass Receiver;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Sender.cc b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Sender.cc
new file mode 100644
index 0000000..ced405e
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Sender.cc
@@ -0,0 +1,220 @@
+
+#include "Sender.hh"
+
+#include "Start.hh"
+#include "umlrtcommsportrole.hh"
+#include "umlrtmessage.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsuleclass.hh"
+#include "umlrtframeservice.hh"
+class UMLRTRtsInterface;
+struct UMLRTCommsPort;
+
+Capsule_Sender::Capsule_Sender( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, s_out( borderPorts[borderport_s_out] )
+, start( borderPorts[borderport_start] )
+, currentState( SPECIAL_INTERNAL_STATE_UNVISITED )
+{
+ stateNames[MessageSent] = "MessageSent";
+ stateNames[WaitingToStart] = "WaitingToStart";
+ stateNames[SPECIAL_INTERNAL_STATE_UNVISITED] = "<uninitialized>";
+}
+
+
+
+
+
+
+void Capsule_Sender::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_s_out:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_s_out, index, true );
+ break;
+ case borderport_start:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_start, index, true );
+ break;
+ }
+}
+
+void Capsule_Sender::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ case borderport_s_out:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_s_out, index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_s_out], index );
+ break;
+ case borderport_start:
+ UMLRTFrameService::sendBoundUnbound( borderPorts, borderport_start, index, false );
+ UMLRTFrameService::disconnectPort( borderPorts[borderport_start], index );
+ break;
+ }
+}
+
+void Capsule_Sender::inject( const UMLRTMessage & message )
+{
+ msg = &message;
+ switch( currentState )
+ {
+ case WaitingToStart:
+ currentState = state_____WaitingToStart( &message );
+ break;
+ case MessageSent:
+ currentState = state_____MessageSent( &message );
+ break;
+ default:
+ break;
+ }
+}
+
+void Capsule_Sender::initialize( const UMLRTMessage & message )
+{
+ msg = &message;
+ actionchain_____t0( &message );
+ currentState = WaitingToStart;
+}
+
+const char * Capsule_Sender::getCurrentStateString() const
+{
+ return stateNames[currentState];
+}
+
+
+
+
+void Capsule_Sender::entryaction_____MessageSent( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml RootElement::Sender::MessageSent entry */
+ cout << "[Sender](MessageSent)" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Sender::entryaction_____WaitingToStart( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml RootElement::Sender::WaitingToStart entry */
+ cout << "[Sender](WaitingToStart)" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Sender::exitaction_____WaitingToStart( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ #undef rtdata
+}
+
+void Capsule_Sender::transitionaction_____t1( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml RootElement::Sender transition WaitingToStart,MessageSent,begin:start */
+ cout << "[Sender](t1) sending message" << endl;
+ s_out.msg1().send();
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Sender::actionchain_____t0( const UMLRTMessage * msg )
+{
+ entryaction_____WaitingToStart( msg );
+}
+
+void Capsule_Sender::actionchain_____t1( const UMLRTMessage * msg )
+{
+ exitaction_____WaitingToStart( msg );
+ transitionaction_____t1( msg );
+ entryaction_____MessageSent( msg );
+}
+
+Capsule_Sender::State Capsule_Sender::state_____MessageSent( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+Capsule_Sender::State Capsule_Sender::state_____WaitingToStart( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ case port_start:
+ switch( msg->getSignalId() )
+ {
+ case Start::signal_begin:
+ actionchain_____t1( msg );
+ return MessageSent;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Sender::port_s_out,
+ "Protocol1",
+ "s_out",
+ "",
+ 1,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ },
+ {
+ Capsule_Sender::port_start,
+ "Start",
+ "start",
+ "",
+ 1,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Sender( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ slot->capsule = new Capsule_Sender( &Sender, slot, borderPorts, NULL, false );
+}
+
+const UMLRTCapsuleClass Sender =
+{
+ "Sender",
+ NULL,
+ instantiate_Sender,
+ 0,
+ NULL,
+ 2,
+ portroles_border,
+ 0,
+ NULL
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Sender.hh b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Sender.hh
new file mode 100644
index 0000000..9199139
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Sender.hh
@@ -0,0 +1,65 @@
+
+#ifndef SENDER_HH
+#define SENDER_HH
+
+#include "Protocol1.hh"
+#include "Start.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+#include <iostream>
+using namespace std;
+
+class Capsule_Sender : public UMLRTCapsule
+{
+public:
+ Capsule_Sender( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+protected:
+ Protocol1::Base s_out;
+public:
+ enum BorderPortId
+ {
+ borderport_s_out,
+ borderport_start
+ };
+protected:
+ Start::Conj start;
+public:
+ enum PartId
+ {
+ };
+ enum PortId
+ {
+ port_s_out,
+ port_start
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+ virtual void inject( const UMLRTMessage & message );
+ virtual void initialize( const UMLRTMessage & message );
+ const char * getCurrentStateString() const;
+private:
+ enum State
+ {
+ MessageSent,
+ WaitingToStart,
+ SPECIAL_INTERNAL_STATE_UNVISITED
+ };
+ const char * stateNames[3];
+ State currentState;
+ void entryaction_____MessageSent( const UMLRTMessage * msg );
+ void entryaction_____WaitingToStart( const UMLRTMessage * msg );
+ void exitaction_____WaitingToStart( const UMLRTMessage * msg );
+ void transitionaction_____t1( const UMLRTMessage * msg );
+ void actionchain_____t0( const UMLRTMessage * msg );
+ void actionchain_____t1( const UMLRTMessage * msg );
+ State state_____MessageSent( const UMLRTMessage * msg );
+ State state_____WaitingToStart( const UMLRTMessage * msg );
+};
+extern const UMLRTCapsuleClass Sender;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Start.cc b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Start.cc
new file mode 100644
index 0000000..63b3114
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Start.cc
@@ -0,0 +1,50 @@
+
+#include "Start.hh"
+
+#include "umlrtobjectclass.hh"
+#include "umlrtoutsignal.hh"
+struct UMLRTCommsPort;
+
+static UMLRTObject_field fields_begin[] =
+{
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0
+ }
+ #endif
+};
+
+static UMLRTObject payload_begin =
+{
+ 0,
+ #ifdef NEED_NON_FLEXIBLE_ARRAY
+ 1
+ #else
+ 0
+ #endif
+ ,
+ fields_begin
+};
+
+Start::Conj::Conj( const UMLRTCommsPort * & srcPort )
+: UMLRTProtocol( srcPort )
+{
+}
+
+Start::Base::Base( const UMLRTCommsPort * & srcPort )
+: UMLRTProtocol( srcPort )
+{
+}
+
+UMLRTOutSignal Start::Base::begin() const
+{
+ UMLRTOutSignal signal;
+ signal.initialize( "begin", signal_begin, srcPort, &payload_begin );
+ return signal;
+}
+
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Start.hh b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Start.hh
new file mode 100644
index 0000000..ef03e4c
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Start.hh
@@ -0,0 +1,30 @@
+
+#ifndef START_HH
+#define START_HH
+
+#include "umlrtoutsignal.hh"
+#include "umlrtprotocol.hh"
+#include "umlrtsignal.hh"
+struct UMLRTCommsPort;
+
+namespace Start
+{
+ class Conj : public UMLRTProtocol
+ {
+ public:
+ Conj( const UMLRTCommsPort * & srcPort );
+ };
+ enum SignalId
+ {
+ signal_begin = UMLRTSignal::FIRST_PROTOCOL_SIGNAL_ID
+ };
+ class Base : public UMLRTProtocol
+ {
+ public:
+ Base( const UMLRTCommsPort * & srcPort );
+ UMLRTOutSignal begin() const;
+ };
+};
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Top-connections.log b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Top-connections.log
new file mode 100644
index 0000000..b16653d
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Top-connections.log
@@ -0,0 +1,8 @@
+Top.RTConnector1
+ Top.sender#s_out.far[0] <-> Top.mediator#m_inp.far[0]
+Top.RTConnector2
+ Top.mediator#m_out.far[0] <-> Top.receiver#r_inp.far[0]
+Top.RTConnector3
+ Top#start.far[0] <-> Top.sender#start.far[0]
+Top.mediator.RTConnector1
+ Top.sender#s_out.far[0] <-> Top.receiver#r_inp.far[0]
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Top.cc b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Top.cc
new file mode 100644
index 0000000..e95df71
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Top.cc
@@ -0,0 +1,223 @@
+
+#include "Top.hh"
+
+#include "Mediator.hh"
+#include "Receiver.hh"
+#include "Sender.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcapsulepart.hh"
+#include "umlrtcommsportrole.hh"
+#include "umlrtmessage.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+#include "umlrtcapsulerole.hh"
+#include "umlrtcommsport.hh"
+#include "umlrtframeservice.hh"
+class UMLRTRtsInterface;
+
+Capsule_Top::Capsule_Top( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat )
+: UMLRTCapsule( NULL, cd, st, border, internal, isStat )
+, currentState( SPECIAL_INTERNAL_STATE_UNVISITED )
+, frame( borderPorts[borderport_frame] )
+, start( internalPorts[internalport_start] )
+, mediator( &slot->parts[part_mediator] )
+, receiver( &slot->parts[part_receiver] )
+, sender( &slot->parts[part_sender] )
+{
+ stateNames[Started] = "Started";
+ stateNames[SPECIAL_INTERNAL_STATE_UNVISITED] = "<uninitialized>";
+}
+
+void Capsule_Top::inject( const UMLRTMessage & message )
+{
+ msg = &message;
+ switch( currentState )
+ {
+ case Started:
+ currentState = state_____Started( &message );
+ break;
+ default:
+ break;
+ }
+}
+
+void Capsule_Top::initialize( const UMLRTMessage & message )
+{
+ msg = &message;
+ actionchain_____t0( &message );
+ currentState = Started;
+}
+
+const char * Capsule_Top::getCurrentStateString() const
+{
+ return stateNames[currentState];
+}
+
+
+
+
+void Capsule_Top::entryaction_____Started( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml RootElement::Top::Started entry */
+ cout << "[Top](Started)" << endl;
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Top::transitionaction_____t0( const UMLRTMessage * msg )
+{
+ #define rtdata ( (void *)msg->getParam( 0 ) )
+ /* UMLRTGEN-USERREGION-BEGIN platform:/resource/RelayPortOptionalPassThrough/RelayPortOptionalPassThrough.uml RootElement::Top transition Init,Started */
+ cout << "[Top](t0) starting" << endl;
+ cout << "[Top](t0) incarnating mediator" << endl;
+ mediatorId = frame.incarnate(mediator, Mediator);
+ if (!mediatorId.isValid()) {
+ cout << "[Top](t0) failed to incarnate mediator" << endl;
+ return;
+ }
+ cout << "[Top](t0) starting sender" << endl;
+ start.begin().send();
+ /* UMLRTGEN-USERREGION-END */
+ #undef rtdata
+}
+
+void Capsule_Top::actionchain_____t0( const UMLRTMessage * msg )
+{
+ transitionaction_____t0( msg );
+ entryaction_____Started( msg );
+}
+
+Capsule_Top::State Capsule_Top::state_____Started( const UMLRTMessage * msg )
+{
+ switch( msg->destPort->role()->id )
+ {
+ default:
+ this->unexpectedMessage();
+ break;
+ }
+ return currentState;
+}
+
+
+
+
+
+
+
+
+
+
+void Capsule_Top::bindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ }
+ else
+ UMLRTFrameService::sendBoundUnbound( internalPorts, internalport_start, index, true );
+}
+
+void Capsule_Top::unbindPort( bool isBorder, int portId, int index )
+{
+ if( isBorder )
+ switch( portId )
+ {
+ }
+ else
+ {
+ UMLRTFrameService::sendBoundUnbound( internalPorts, internalport_start, index, false );
+ UMLRTFrameService::disconnectPort( internalPorts[internalport_start], index );
+ }
+}
+
+
+
+static const UMLRTCapsuleRole roles[] =
+{
+ {
+ "mediator",
+ &Mediator,
+ 0,
+ 1,
+ true,
+ false
+ },
+ {
+ "receiver",
+ &Receiver,
+ 1,
+ 1,
+ false,
+ false
+ },
+ {
+ "sender",
+ &Sender,
+ 1,
+ 1,
+ false,
+ false
+ }
+};
+
+static const UMLRTCommsPortRole portroles_border[] =
+{
+ {
+ Capsule_Top::port_frame,
+ "Frame",
+ "frame",
+ "",
+ 0,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ }
+};
+
+static const UMLRTCommsPortRole portroles_internal[] =
+{
+ {
+ Capsule_Top::port_start,
+ "Start",
+ "start",
+ "",
+ 1,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static void instantiate_Top( const UMLRTRtsInterface * rts, UMLRTSlot * slot, const UMLRTCommsPort * * borderPorts )
+{
+ const UMLRTCommsPort * * internalPorts = UMLRTFrameService::createInternalPorts( slot, &Top );
+ UMLRTFrameService::connectPorts( internalPorts[Capsule_Top::internalport_start], 0, &slot->parts[Capsule_Top::part_sender].slots[0]->ports[Capsule_Sender::borderport_start], 0 );
+ UMLRTFrameService::connectPorts( &slot->parts[Capsule_Top::part_mediator].slots[0]->ports[Capsule_Mediator::borderport_m_inp], 0, &slot->parts[Capsule_Top::part_sender].slots[0]->ports[Capsule_Sender::borderport_s_out], 0 );
+ UMLRTFrameService::connectPorts( &slot->parts[Capsule_Top::part_mediator].slots[0]->ports[Capsule_Mediator::borderport_m_out], 0, &slot->parts[Capsule_Top::part_receiver].slots[0]->ports[Capsule_Receiver::borderport_r_inp], 0 );
+ Receiver.instantiate( NULL, slot->parts[Capsule_Top::part_receiver].slots[0], UMLRTFrameService::createBorderPorts( slot->parts[Capsule_Top::part_receiver].slots[0], Receiver.numPortRolesBorder ) );
+ Sender.instantiate( NULL, slot->parts[Capsule_Top::part_sender].slots[0], UMLRTFrameService::createBorderPorts( slot->parts[Capsule_Top::part_sender].slots[0], Sender.numPortRolesBorder ) );
+ slot->capsule = new Capsule_Top( &Top, slot, borderPorts, internalPorts, false );
+}
+
+const UMLRTCapsuleClass Top =
+{
+ "Top",
+ NULL,
+ instantiate_Top,
+ 3,
+ roles,
+ 1,
+ portroles_border,
+ 1,
+ portroles_internal
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Top.hh b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Top.hh
new file mode 100644
index 0000000..c9a3dd5
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/Top.hh
@@ -0,0 +1,75 @@
+
+#ifndef TOP_HH
+#define TOP_HH
+
+#include "Start.hh"
+#include "umlrtcapsule.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcapsuleid.hh"
+#include "umlrtframeprotocol.hh"
+#include "umlrtmessage.hh"
+struct UMLRTCapsulePart;
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+#include <iostream>
+using namespace std;
+
+class Capsule_Top : public UMLRTCapsule
+{
+public:
+ Capsule_Top( const UMLRTCapsuleClass * cd, UMLRTSlot * st, const UMLRTCommsPort * * border, const UMLRTCommsPort * * internal, bool isStat );
+ virtual void inject( const UMLRTMessage & message );
+ virtual void initialize( const UMLRTMessage & message );
+ const char * getCurrentStateString() const;
+private:
+ enum State
+ {
+ Started,
+ SPECIAL_INTERNAL_STATE_UNVISITED
+ };
+ const char * stateNames[2];
+ State currentState;
+ void entryaction_____Started( const UMLRTMessage * msg );
+ void transitionaction_____t0( const UMLRTMessage * msg );
+ void actionchain_____t0( const UMLRTMessage * msg );
+ State state_____Started( const UMLRTMessage * msg );
+protected:
+ UMLRTFrameProtocol_baserole frame;
+public:
+ enum BorderPortId
+ {
+ borderport_frame
+ };
+protected:
+ Start::Base start;
+public:
+ enum InternalPortId
+ {
+ internalport_start
+ };
+ enum PartId
+ {
+ part_mediator,
+ part_receiver,
+ part_sender
+ };
+protected:
+ const UMLRTCapsulePart * const mediator;
+ const UMLRTCapsulePart * const receiver;
+ const UMLRTCapsulePart * const sender;
+public:
+ enum PortId
+ {
+ port_frame,
+ port_start
+ };
+ virtual void bindPort( bool isBorder, int portId, int index );
+ virtual void unbindPort( bool isBorder, int portId, int index );
+protected:
+ UMLRTCapsuleId mediatorId;
+};
+extern const UMLRTCapsuleClass Top;
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/TopControllers.cc b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/TopControllers.cc
new file mode 100644
index 0000000..9675b75
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/TopControllers.cc
@@ -0,0 +1,359 @@
+
+#include "TopControllers.hh"
+
+#include "Mediator.hh"
+#include "Receiver.hh"
+#include "Sender.hh"
+#include "Top.hh"
+#include "umlrtcapsuleclass.hh"
+#include "umlrtcapsulepart.hh"
+#include "umlrtcommsport.hh"
+#include "umlrtcommsportfarend.hh"
+#include "umlrtcontroller.hh"
+#include "umlrtslot.hh"
+#include <cstddef>
+
+
+static UMLRTController DefaultController_( "DefaultController" );
+
+UMLRTController * DefaultController = &DefaultController_;
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top[] =
+{
+ {
+ 0,
+ NULL
+ }
+};
+
+UMLRTCommsPort borderports_Top[] =
+{
+ {
+ &Top,
+ Capsule_Top::borderport_frame,
+ &Top_slots[InstId_Top],
+ 1,
+ borderfarEndList_Top,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_ptrs[] =
+{
+ &borderports_Top[0]
+};
+
+static UMLRTCommsPortFarEnd internalfarEndList_Top[] =
+{
+ {
+ 0,
+ &borderports_Top_sender[Capsule_Sender::borderport_start]
+ }
+};
+
+UMLRTCommsPort internalports_Top[] =
+{
+ {
+ &Top,
+ Capsule_Top::internalport_start,
+ &Top_slots[InstId_Top],
+ 1,
+ internalfarEndList_Top,
+ NULL,
+ NULL,
+ "",
+ true,
+ false,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * internalports_Top_ptrs[] =
+{
+ &internalports_Top[0]
+};
+
+static Capsule_Top top( &Top, &Top_slots[InstId_Top], borderports_Top_ptrs, internalports_Top_ptrs, true );
+
+static UMLRTSlot * slots_Top[] =
+{
+ &Top_slots[InstId_Top_mediator],
+ &Top_slots[InstId_Top_receiver],
+ &Top_slots[InstId_Top_sender]
+};
+
+static UMLRTCapsulePart parts_Top[] =
+{
+ {
+ &Top,
+ Capsule_Top::part_mediator,
+ 1,
+ &slots_Top[0]
+ },
+ {
+ &Top,
+ Capsule_Top::part_receiver,
+ 1,
+ &slots_Top[1]
+ },
+ {
+ &Top,
+ Capsule_Top::part_sender,
+ 1,
+ &slots_Top[2]
+ }
+};
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_mediator[] =
+{
+ {
+ 0,
+ NULL
+ },
+ {
+ 0,
+ NULL
+ }
+};
+
+UMLRTCommsPort borderports_Top_mediator[] =
+{
+ {
+ &Mediator,
+ Capsule_Mediator::borderport_m_inp,
+ &Top_slots[InstId_Top_mediator],
+ 1,
+ borderfarEndList_Top_mediator,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ true,
+ false,
+ false,
+ false,
+ true
+ },
+ {
+ &Mediator,
+ Capsule_Mediator::borderport_m_out,
+ &Top_slots[InstId_Top_mediator],
+ 1,
+ &borderfarEndList_Top_mediator[1],
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ true,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_receiver[] =
+{
+ {
+ 0,
+ &borderports_Top_sender[Capsule_Sender::borderport_s_out]
+ }
+};
+
+UMLRTCommsPort borderports_Top_receiver[] =
+{
+ {
+ &Receiver,
+ Capsule_Receiver::borderport_r_inp,
+ &Top_slots[InstId_Top_receiver],
+ 1,
+ borderfarEndList_Top_receiver,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_receiver_ptrs[] =
+{
+ &borderports_Top_receiver[0]
+};
+
+static Capsule_Receiver top_receiver( &Receiver, &Top_slots[InstId_Top_receiver], borderports_Top_receiver_ptrs, NULL, true );
+
+static UMLRTCommsPortFarEnd borderfarEndList_Top_sender[] =
+{
+ {
+ 0,
+ &borderports_Top_receiver[Capsule_Receiver::borderport_r_inp]
+ },
+ {
+ 0,
+ &internalports_Top[Capsule_Top::internalport_start]
+ }
+};
+
+UMLRTCommsPort borderports_Top_sender[] =
+{
+ {
+ &Sender,
+ Capsule_Sender::borderport_s_out,
+ &Top_slots[InstId_Top_sender],
+ 1,
+ borderfarEndList_Top_sender,
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ },
+ {
+ &Sender,
+ Capsule_Sender::borderport_start,
+ &Top_slots[InstId_Top_sender],
+ 1,
+ &borderfarEndList_Top_sender[1],
+ NULL,
+ NULL,
+ "",
+ true,
+ true,
+ true,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ false,
+ true
+ }
+};
+
+static const UMLRTCommsPort * borderports_Top_sender_ptrs[] =
+{
+ &borderports_Top_sender[0],
+ &borderports_Top_sender[1]
+};
+
+static Capsule_Sender top_sender( &Sender, &Top_slots[InstId_Top_sender], borderports_Top_sender_ptrs, NULL, true );
+
+UMLRTSlot Top_slots[] =
+{
+ {
+ "Top",
+ 0,
+ &Top,
+ NULL,
+ 0,
+ &top,
+ &DefaultController_,
+ 3,
+ parts_Top,
+ 1,
+ borderports_Top,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.mediator",
+ 0,
+ &Mediator,
+ &Top,
+ Capsule_Top::part_mediator,
+ NULL,
+ &DefaultController_,
+ 0,
+ NULL,
+ 2,
+ borderports_Top_mediator,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.receiver",
+ 0,
+ &Receiver,
+ &Top,
+ Capsule_Top::part_receiver,
+ &top_receiver,
+ &DefaultController_,
+ 0,
+ NULL,
+ 1,
+ borderports_Top_receiver,
+ NULL,
+ true,
+ false
+ },
+ {
+ "Top.sender",
+ 0,
+ &Sender,
+ &Top,
+ Capsule_Top::part_sender,
+ &top_sender,
+ &DefaultController_,
+ 0,
+ NULL,
+ 2,
+ borderports_Top_sender,
+ NULL,
+ true,
+ false
+ }
+};
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/TopControllers.hh b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/TopControllers.hh
new file mode 100644
index 0000000..41bd27a
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/TopControllers.hh
@@ -0,0 +1,25 @@
+
+#ifndef TOPCONTROLLERS_HH
+#define TOPCONTROLLERS_HH
+
+class UMLRTController;
+struct UMLRTCommsPort;
+struct UMLRTSlot;
+
+enum CapsuleInstanceId
+{
+ InstId_Top,
+ InstId_Top_mediator,
+ InstId_Top_receiver,
+ InstId_Top_sender
+};
+extern UMLRTController * DefaultController;
+extern UMLRTCommsPort borderports_Top[];
+extern UMLRTCommsPort internalports_Top[];
+extern UMLRTCommsPort borderports_Top_mediator[];
+extern UMLRTCommsPort borderports_Top_receiver[];
+extern UMLRTCommsPort borderports_Top_sender[];
+extern UMLRTSlot Top_slots[];
+
+#endif
+
diff --git a/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/TopMain.cc b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/TopMain.cc
new file mode 100644
index 0000000..b465f00
--- /dev/null
+++ b/models/tests/codepattern/structure/RelayPortOptionalPassThrough/expected_src/TopMain.cc
@@ -0,0 +1,38 @@
+#include "umlrtmain.hh"
+
+#include "umlrtcontroller.hh"
+#include "TopControllers.hh"
+#include "umlrtcapsuletocontrollermap.hh"
+#include "umlrtmessagepool.hh"
+#include "umlrtsignalelementpool.hh"
+#include "umlrttimerpool.hh"
+#include "umlrtuserconfig.hh"
+#include <stdio.h>
+
+static UMLRTSignalElement signalElementBuffer[USER_CONFIG_SIGNAL_ELEMENT_POOL_SIZE];
+static UMLRTSignalElementPool signalElementPool( signalElementBuffer, USER_CONFIG_SIGNAL_ELEMENT_POOL_SIZE );
+
+static UMLRTMessage messageBuffer[USER_CONFIG_MESSAGE_POOL_SIZE];
+static UMLRTMessagePool messagePool( messageBuffer, USER_CONFIG_MESSAGE_POOL_SIZE );
+
+static UMLRTTimer timers[USER_CONFIG_TIMER_POOL_SIZE];
+static UMLRTTimerPool timerPool( timers, USER_CONFIG_TIMER_POOL_SIZE );
+
+int main( int argc, char * argv[] )
+{
+ UMLRTController::initializePools( &signalElementPool, &messagePool, &timerPool );
+ UMLRTMain::setArgs( argc, argv );
+ UMLRTCapsuleToControllerMap::setDefaultSlotList( Top_slots, 4 );
+
+ if( ! UMLRTMain::targetStartup() )
+ return EXIT_FAILURE;
+
+ DefaultController->spawn();
+
+ if( ! UMLRTMain::mainLoop() )
+ return UMLRTMain::targetShutdown( false );
+
+ DefaultController->join();
+
+ return UMLRTMain::targetShutdown( true );
+}
diff --git a/models/tests/codepattern/structure/RelayPortPassThrough/RelayPortPassThrough.notation b/models/tests/codepattern/structure/RelayPortPassThrough/RelayPortPassThrough.notation
index 6665719..c1a25cd 100644
--- a/models/tests/codepattern/structure/RelayPortPassThrough/RelayPortPassThrough.notation
+++ b/models/tests/codepattern/structure/RelayPortPassThrough/RelayPortPassThrough.notation
@@ -1,26 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:texteditormodel="http://www.eclipse.org/Papyrus/TextEditor/0.10.0/texteditormodel" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
<notation:Diagram xmi:id="_2KgrEMkpEeWjbM1NisbpCg" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_2LI9MMkpEeWjbM1NisbpCg" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_2LMAgMkpEeWjbM1NisbpCg" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_2LMAgckpEeWjbM1NisbpCg" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_2LI9MMkpEeWjbM1NisbpCg" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LMAgMkpEeWjbM1NisbpCg" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_2LMAgckpEeWjbM1NisbpCg" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_2LMAgskpEeWjbM1NisbpCg" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_2LMnkMkpEeWjbM1NisbpCg" type="7073">
- <children xmi:type="notation:Shape" xmi:id="_9-Hp8MksEeWjbM1NisbpCg" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_9-IRAMksEeWjbM1NisbpCg" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_9-IRAcksEeWjbM1NisbpCg" type="6054">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2LMnkMkpEeWjbM1NisbpCg" type="Class_StructureCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_9-Hp8MksEeWjbM1NisbpCg" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9-IRAMksEeWjbM1NisbpCg" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_9-IRAcksEeWjbM1NisbpCg" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_9-IRAsksEeWjbM1NisbpCg" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_9-IRA8ksEeWjbM1NisbpCg" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9-IRA8ksEeWjbM1NisbpCg" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_9-IRBMksEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_9-IRBcksEeWjbM1NisbpCg"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_9-L7YMksEeWjbM1NisbpCg" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_9-L7YsksEeWjbM1NisbpCg" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_9-L7YMksEeWjbM1NisbpCg" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9-L7YsksEeWjbM1NisbpCg" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_9-L7Y8ksEeWjbM1NisbpCg" x="-83" y="-13"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_9-L7ZMksEeWjbM1NisbpCg" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9-L7ZMksEeWjbM1NisbpCg" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_9-L7ZcksEeWjbM1NisbpCg" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortPassThrough.uml#_BqswwMkqEeWjbM1NisbpCg"/>
@@ -50,20 +50,20 @@
<element xmi:type="uml:Property" href="RelayPortPassThrough.uml#_9-DYgMksEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_9-Hp8cksEeWjbM1NisbpCg" x="109" y="168" width="168" height="99"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_-dXxwMksEeWjbM1NisbpCg" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="_-dYY0MksEeWjbM1NisbpCg" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_-dYY0cksEeWjbM1NisbpCg" type="6054">
+ <children xmi:type="notation:Shape" xmi:id="_-dXxwMksEeWjbM1NisbpCg" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-dYY0MksEeWjbM1NisbpCg" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_-dYY0cksEeWjbM1NisbpCg" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_-dYY0sksEeWjbM1NisbpCg" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_-dYY08ksEeWjbM1NisbpCg" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_-dYY08ksEeWjbM1NisbpCg" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_-dYY1MksEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_-dYY1cksEeWjbM1NisbpCg"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_-ddRUMksEeWjbM1NisbpCg" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_-ddRUsksEeWjbM1NisbpCg" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_-ddRUMksEeWjbM1NisbpCg" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-ddRUsksEeWjbM1NisbpCg" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_-ddRU8ksEeWjbM1NisbpCg" x="13" y="-12"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_-ddRVMksEeWjbM1NisbpCg" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-ddRVMksEeWjbM1NisbpCg" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_-ddRVcksEeWjbM1NisbpCg" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortPassThrough.uml#_ID5ugMkqEeWjbM1NisbpCg"/>
@@ -93,30 +93,30 @@
<element xmi:type="uml:Property" href="RelayPortPassThrough.uml#_-dTgUMksEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_-dXxwcksEeWjbM1NisbpCg" x="678" y="168" width="180" height="99"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="__CQngMksEeWjbM1NisbpCg" type="3070">
- <children xmi:type="notation:DecorationNode" xmi:id="__CQngsksEeWjbM1NisbpCg" type="5126"/>
- <children xmi:type="notation:DecorationNode" xmi:id="__CQng8ksEeWjbM1NisbpCg" type="6054">
+ <children xmi:type="notation:Shape" xmi:id="__CQngMksEeWjbM1NisbpCg" type="Property_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__CQngsksEeWjbM1NisbpCg" type="Property_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="__CQng8ksEeWjbM1NisbpCg" type="Property_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="__CQnhMksEeWjbM1NisbpCg" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="__CQnhcksEeWjbM1NisbpCg" type="7077">
+ <children xmi:type="notation:BasicCompartment" xmi:id="__CQnhcksEeWjbM1NisbpCg" type="Property_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="__CQnhsksEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="__CQnh8ksEeWjbM1NisbpCg"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="__CUR4MksEeWjbM1NisbpCg" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="__CUR4sksEeWjbM1NisbpCg" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="__CUR4MksEeWjbM1NisbpCg" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__CUR4sksEeWjbM1NisbpCg" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="__CUR48ksEeWjbM1NisbpCg" x="14" y="-15"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="__CUR5MksEeWjbM1NisbpCg" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="__CUR5MksEeWjbM1NisbpCg" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="__CU48MksEeWjbM1NisbpCg" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortPassThrough.uml#_Okqs0MkqEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="__CUR4cksEeWjbM1NisbpCg" y="48" width="20" height="20"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="__CU48cksEeWjbM1NisbpCg" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="__CVgAMksEeWjbM1NisbpCg" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="__CU48cksEeWjbM1NisbpCg" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__CVgAMksEeWjbM1NisbpCg" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="__CVgAcksEeWjbM1NisbpCg" x="-98" y="23"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="__CVgAsksEeWjbM1NisbpCg" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="__CVgAsksEeWjbM1NisbpCg" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="__CVgA8ksEeWjbM1NisbpCg" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortPassThrough.uml#_SjqR8MkqEeWjbM1NisbpCg"/>
@@ -146,6 +146,78 @@
<element xmi:type="uml:Property" href="RelayPortPassThrough.uml#__CMWEMksEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="__CQngcksEeWjbM1NisbpCg" x="385" y="168" width="185" height="99"/>
</children>
+ <children xmi:type="notation:Shape" xmi:id="_GKVfQN9EEeagNYePtMAL0Q" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GKVfQd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GKWGUN9EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortPassThrough.uml#_9-DYgMksEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GKVfQt9EEeagNYePtMAL0Q" x="309" y="168"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GKdbEN9EEeagNYePtMAL0Q" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GKdbEd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GKdbE99EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortPassThrough.uml#_BqswwMkqEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GKdbEt9EEeagNYePtMAL0Q" x="368" y="49"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GKnzIN9EEeagNYePtMAL0Q" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GKnzId9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GKnzI99EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortPassThrough.uml#_Ma3nYMktEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GKnzIt9EEeagNYePtMAL0Q" x="100" y="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GKvH4N9EEeagNYePtMAL0Q" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GKvH4d9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GKvH499EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortPassThrough.uml#_-dTgUMksEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GKvH4t9EEeagNYePtMAL0Q" x="878" y="168"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GK3qwN9EEeagNYePtMAL0Q" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GK3qwd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GK3qw99EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortPassThrough.uml#_ID5ugMkqEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GK3qwt9EEeagNYePtMAL0Q" x="200" y="49"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GK_mkN9EEeagNYePtMAL0Q" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GK_mkd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GK_mk99EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortPassThrough.uml#__CMWEMksEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GK_mkt9EEeagNYePtMAL0Q" x="585" y="168"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GLHiYN9EEeagNYePtMAL0Q" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GLHiYd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GLHiY99EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortPassThrough.uml#_Okqs0MkqEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GLHiYt9EEeagNYePtMAL0Q" x="200" y="48"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GLShgN9EEeagNYePtMAL0Q" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GLShgd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GLShg99EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortPassThrough.uml#_SjqR8MkqEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GLShgt9EEeagNYePtMAL0Q" x="385" y="52"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GLbrcN9EEeagNYePtMAL0Q" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GLbrcd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GLbrc99EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortPassThrough.uml#_PnpscMktEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GLbrct9EEeagNYePtMAL0Q" x="100" y="100"/>
+ </children>
<styles xmi:type="notation:TitleStyle" xmi:id="_2LMnkckpEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_2LMnkskpEeWjbM1NisbpCg"/>
</children>
@@ -160,24 +232,24 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_QmwnouCoEeWlQawYMs_dEQ" x="240" y="40"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_2KgrEckpEeWjbM1NisbpCg" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_2KgrEckpEeWjbM1NisbpCg" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_2KgrEskpEeWjbM1NisbpCg"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_2KgrE8kpEeWjbM1NisbpCg">
<owner xmi:type="uml:Class" href="RelayPortPassThrough.uml#_2JhzoMkpEeWjbM1NisbpCg"/>
<configuration xmi:type="configuration:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrusrt.umlrt.tooling.diagram.common/configuration/UMLRT.configuration#_Z79eQHcZEeSnWeKqQOfW2A"/>
</styles>
<element xmi:type="uml:Class" href="RelayPortPassThrough.uml#_2JhzoMkpEeWjbM1NisbpCg"/>
- <edges xmi:type="notation:Connector" xmi:id="_MbGQ4MktEeWjbM1NisbpCg" type="4013" source="_9-L7YMksEeWjbM1NisbpCg" target="__CUR4MksEeWjbM1NisbpCg">
- <children xmi:type="notation:DecorationNode" xmi:id="_MbGQ48ktEeWjbM1NisbpCg" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_MbGQ4MktEeWjbM1NisbpCg" type="Connector_Edge" source="_9-L7YMksEeWjbM1NisbpCg" target="__CUR4MksEeWjbM1NisbpCg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MbGQ48ktEeWjbM1NisbpCg" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_MbGQ5MktEeWjbM1NisbpCg" x="-3" y="-8"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_MbGQ5cktEeWjbM1NisbpCg" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MbGQ5cktEeWjbM1NisbpCg" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_MbGQ5sktEeWjbM1NisbpCg" x="-2" y="9"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_MbG38MktEeWjbM1NisbpCg" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MbG38MktEeWjbM1NisbpCg" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_MbG38cktEeWjbM1NisbpCg" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_MbG38sktEeWjbM1NisbpCg" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MbG38sktEeWjbM1NisbpCg" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_MbG388ktEeWjbM1NisbpCg" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_MbGQ4cktEeWjbM1NisbpCg"/>
@@ -186,17 +258,17 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MbxmUMktEeWjbM1NisbpCg" id="(1.0,0.55)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MbyNYMktEeWjbM1NisbpCg" id="(0.0,0.6)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_Pn8AUMktEeWjbM1NisbpCg" type="4013" source="__CU48cksEeWjbM1NisbpCg" target="_-ddRUMksEeWjbM1NisbpCg">
- <children xmi:type="notation:DecorationNode" xmi:id="_Pn8AU8ktEeWjbM1NisbpCg" type="6025">
+ <edges xmi:type="notation:Connector" xmi:id="_Pn8AUMktEeWjbM1NisbpCg" type="Connector_Edge" source="__CU48cksEeWjbM1NisbpCg" target="_-ddRUMksEeWjbM1NisbpCg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Pn8AU8ktEeWjbM1NisbpCg" type="Connector_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Pn8AVMktEeWjbM1NisbpCg" y="-8"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_Pn8AVcktEeWjbM1NisbpCg" type="6050">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Pn8AVcktEeWjbM1NisbpCg" type="Connector_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Pn8AVsktEeWjbM1NisbpCg" x="-3" y="8"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_Pn8AV8ktEeWjbM1NisbpCg" type="6051">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Pn8AV8ktEeWjbM1NisbpCg" type="Connector_SourceMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Pn8AWMktEeWjbM1NisbpCg" y="20"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_Pn8AWcktEeWjbM1NisbpCg" type="6052">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Pn8AWcktEeWjbM1NisbpCg" type="Connector_TargetMultiplicityLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Pn8AWsktEeWjbM1NisbpCg" y="20"/>
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_Pn8AUcktEeWjbM1NisbpCg"/>
@@ -215,14 +287,104 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qmx1wOCoEeWlQawYMs_dEQ"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qmx1weCoEeWlQawYMs_dEQ"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GKWGUd9EEeagNYePtMAL0Q" type="StereotypeCommentLink" source="_9-Hp8MksEeWjbM1NisbpCg" target="_GKVfQN9EEeagNYePtMAL0Q">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GKWGUt9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GKWGVt9EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortPassThrough.uml#_9-DYgMksEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GKWGU99EEeagNYePtMAL0Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GKWGVN9EEeagNYePtMAL0Q"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GKWGVd9EEeagNYePtMAL0Q"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GKdbFN9EEeagNYePtMAL0Q" type="StereotypeCommentLink" source="_9-L7YMksEeWjbM1NisbpCg" target="_GKdbEN9EEeagNYePtMAL0Q">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GKdbFd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GKdbGd9EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortPassThrough.uml#_BqswwMkqEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GKdbFt9EEeagNYePtMAL0Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GKdbF99EEeagNYePtMAL0Q"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GKdbGN9EEeagNYePtMAL0Q"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GKnzJN9EEeagNYePtMAL0Q" type="StereotypeCommentLink" source="_MbGQ4MktEeWjbM1NisbpCg" target="_GKnzIN9EEeagNYePtMAL0Q">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GKnzJd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GKnzKd9EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortPassThrough.uml#_Ma3nYMktEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GKnzJt9EEeagNYePtMAL0Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GKnzJ99EEeagNYePtMAL0Q"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GKnzKN9EEeagNYePtMAL0Q"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GKvH5N9EEeagNYePtMAL0Q" type="StereotypeCommentLink" source="_-dXxwMksEeWjbM1NisbpCg" target="_GKvH4N9EEeagNYePtMAL0Q">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GKvH5d9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GKvu899EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortPassThrough.uml#_-dTgUMksEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GKvu8N9EEeagNYePtMAL0Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GKvu8d9EEeagNYePtMAL0Q"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GKvu8t9EEeagNYePtMAL0Q"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GK3qxN9EEeagNYePtMAL0Q" type="StereotypeCommentLink" source="_-ddRUMksEeWjbM1NisbpCg" target="_GK3qwN9EEeagNYePtMAL0Q">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GK3qxd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GK3qyd9EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortPassThrough.uml#_ID5ugMkqEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GK3qxt9EEeagNYePtMAL0Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GK3qx99EEeagNYePtMAL0Q"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GK3qyN9EEeagNYePtMAL0Q"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GK_mlN9EEeagNYePtMAL0Q" type="StereotypeCommentLink" source="__CQngMksEeWjbM1NisbpCg" target="_GK_mkN9EEeagNYePtMAL0Q">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GK_mld9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GLANoN9EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Property" href="RelayPortPassThrough.uml#__CMWEMksEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GK_mlt9EEeagNYePtMAL0Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GK_ml99EEeagNYePtMAL0Q"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GK_mmN9EEeagNYePtMAL0Q"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GLHiZN9EEeagNYePtMAL0Q" type="StereotypeCommentLink" source="__CUR4MksEeWjbM1NisbpCg" target="_GLHiYN9EEeagNYePtMAL0Q">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GLHiZd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GLHiad9EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortPassThrough.uml#_Okqs0MkqEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GLHiZt9EEeagNYePtMAL0Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GLHiZ99EEeagNYePtMAL0Q"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GLHiaN9EEeagNYePtMAL0Q"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GLShhN9EEeagNYePtMAL0Q" type="StereotypeCommentLink" source="__CU48cksEeWjbM1NisbpCg" target="_GLShgN9EEeagNYePtMAL0Q">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GLShhd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GLTIkN9EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Port" href="RelayPortPassThrough.uml#_SjqR8MkqEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GLShht9EEeagNYePtMAL0Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GLShh99EEeagNYePtMAL0Q"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GLShiN9EEeagNYePtMAL0Q"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_GLbrdN9EEeagNYePtMAL0Q" type="StereotypeCommentLink" source="_Pn8AUMktEeWjbM1NisbpCg" target="_GLbrcN9EEeagNYePtMAL0Q">
+ <styles xmi:type="notation:FontStyle" xmi:id="_GLbrdd9EEeagNYePtMAL0Q"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_GLbred9EEeagNYePtMAL0Q" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Connector" href="RelayPortPassThrough.uml#_PnpscMktEeWjbM1NisbpCg"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GLbrdt9EEeagNYePtMAL0Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GLbrd99EEeagNYePtMAL0Q"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GLbreN9EEeagNYePtMAL0Q"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_4MfJ4MkpEeWjbM1NisbpCg" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_4MfJ5MkpEeWjbM1NisbpCg" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_4MfJ5skpEeWjbM1NisbpCg" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_4MfJ58kpEeWjbM1NisbpCg" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_4MfJ5MkpEeWjbM1NisbpCg" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_4MfJ5skpEeWjbM1NisbpCg" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_4MfJ58kpEeWjbM1NisbpCg" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_4MfJ6MkpEeWjbM1NisbpCg" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_4Mfw8MkpEeWjbM1NisbpCg" type="7073">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_4Mfw8MkpEeWjbM1NisbpCg" type="Class_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_4Mfw8ckpEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_4Mfw8skpEeWjbM1NisbpCg"/>
</children>
@@ -247,11 +409,11 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_BBPkF8kqEeWjbM1NisbpCg"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_CzF8MMkqEeWjbM1NisbpCg" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_CzGjQMkqEeWjbM1NisbpCg" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_CzF8MMkqEeWjbM1NisbpCg" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CzGjQMkqEeWjbM1NisbpCg" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_CzGjQckqEeWjbM1NisbpCg" x="-94" y="-19"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_CzGjQskqEeWjbM1NisbpCg" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_CzGjQskqEeWjbM1NisbpCg" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_CzGjQ8kqEeWjbM1NisbpCg" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortPassThrough.uml#_BqswwMkqEeWjbM1NisbpCg"/>
@@ -276,7 +438,7 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q1XEUuCoEeWlQawYMs_dEQ" x="690" y="112"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_4MfJ4ckpEeWjbM1NisbpCg" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_4MfJ4ckpEeWjbM1NisbpCg" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_4MfJ4skpEeWjbM1NisbpCg"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_4MfJ48kpEeWjbM1NisbpCg">
<owner xmi:type="uml:Class" href="RelayPortPassThrough.uml#_4MDFAMkpEeWjbM1NisbpCg"/>
@@ -305,12 +467,12 @@
</edges>
</notation:Diagram>
<notation:Diagram xmi:id="_6Q1AMMkpEeWjbM1NisbpCg" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_6Q1nQMkpEeWjbM1NisbpCg" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_6Q1nQskpEeWjbM1NisbpCg" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_6Q1nQ8kpEeWjbM1NisbpCg" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_6Q1nQMkpEeWjbM1NisbpCg" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_6Q1nQskpEeWjbM1NisbpCg" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6Q1nQ8kpEeWjbM1NisbpCg" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_6Q1nRMkpEeWjbM1NisbpCg" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_6Q1nRckpEeWjbM1NisbpCg" type="7073">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_6Q1nRckpEeWjbM1NisbpCg" type="Class_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_6Q1nRskpEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_6Q1nR8kpEeWjbM1NisbpCg"/>
</children>
@@ -335,11 +497,11 @@
<element xmi:type="uml:Stereotype" href="pathmap://UML_RT_PROFILE/uml-rt.profile.uml#_hcMIwEhNEeO0lv5O1DTHOQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_HVH888kqEeWjbM1NisbpCg"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_JRgxIMkqEeWjbM1NisbpCg" type="3069">
- <children xmi:type="notation:DecorationNode" xmi:id="_JRhYMMkqEeWjbM1NisbpCg" type="5125">
+ <children xmi:type="notation:Shape" xmi:id="_JRgxIMkqEeWjbM1NisbpCg" type="Port_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_JRhYMMkqEeWjbM1NisbpCg" type="Port_NameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_JRhYMckqEeWjbM1NisbpCg" x="25" y="3"/>
</children>
- <children xmi:type="notation:DecorationNode" xmi:id="_JRhYMskqEeWjbM1NisbpCg" type="6029">
+ <children xmi:type="notation:DecorationNode" xmi:id="_JRhYMskqEeWjbM1NisbpCg" type="Port_StereotypeLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_JRhYM8kqEeWjbM1NisbpCg" x="25" y="-10"/>
</children>
<element xmi:type="uml:Port" href="RelayPortPassThrough.uml#_ID5ugMkqEeWjbM1NisbpCg"/>
@@ -364,7 +526,7 @@
<element xsi:nil="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q43EQuCoEeWlQawYMs_dEQ" x="190" y="120"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_6Q1AMckpEeWjbM1NisbpCg" name="diagram_compatibility_version" stringValue="1.1.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_6Q1AMckpEeWjbM1NisbpCg" name="diagram_compatibility_version" stringValue="1.2.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_6Q1AMskpEeWjbM1NisbpCg"/>
<styles xmi:type="style:PapyrusViewStyle" xmi:id="_6Q1AM8kpEeWjbM1NisbpCg">
<owner xmi:type="uml:Class" href="RelayPortPassThrough.uml#_6QfpAMkpEeWjbM1NisbpCg"/>
@@ -393,12 +555,12 @@
</edges>
</notation:Diagram>
<notation:Diagram xmi:id="_8TcYMMkpEeWjbM1NisbpCg" type="CompositeStructure" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_8Tc_QMkpEeWjbM1NisbpCg" type="2073">
- <children xmi:type="notation:DecorationNode" xmi:id="_8Tc_QskpEeWjbM1NisbpCg" type="5156"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_8Tc_Q8kpEeWjbM1NisbpCg" type="6089">
+ <children xmi:type="notation:Shape" xmi:id="_8Tc_QMkpEeWjbM1NisbpCg" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8Tc_QskpEeWjbM1NisbpCg" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_8Tc_Q8kpEeWjbM1NisbpCg" type="Class_FloatingNameLabel">
<layoutConstraint xmi:type="notation:Location" xmi:id="_8Tc_RMkpEeWjbM1NisbpCg" y="5"/>
</children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_8Tc_RckpEeWjbM1NisbpCg" type="7073">
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8Tc_RckpEeWjbM1NisbpCg" type="Class_StructureCompartment">
<styles xmi:type="notation:TitleStyle" xmi:id="_8Tc_RskpEeWjbM1NisbpCg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8Tc_R8kpEeWjbM1NisbpCg"/>