diff --git a/build.txt b/build.txt index 78cc597f0e63edb3fa93d42e136ffcb95d41ca0f..7700898e6388d7acde3abe15d1151a293a1c3083 100644 --- a/build.txt +++ b/build.txt @@ -1 +1 @@ -12715 \ No newline at end of file +12721 \ No newline at end of file diff --git a/modeling/DIPLODOCUS/802.15.4.xml b/modeling/DIPLODOCUS/802.15.4.xml index 0038bde72fedf2e7dbfd2b14e0cd380e6784c98b..226880781b10b43cdf3bd5c6120b186aca5bdf23 100644 --- a/modeling/DIPLODOCUS/802.15.4.xml +++ b/modeling/DIPLODOCUS/802.15.4.xml @@ -19573,7 +19573,7 @@ SRC to CWM1, CWS and SINK <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="6136" > +<!-- COMPONENT type="1508" id="6136" > <cdparam x="668" y="275" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -19583,7 +19583,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="1" id="6133" /> <TGConnectingPoint num="2" id="6134" /> <TGConnectingPoint num="3" id="6135" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1507" id="6138" > <cdparam x="465" y="594" /> @@ -19616,7 +19616,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="13" id="6152" /> </COMPONENT> -<COMPONENT type="1508" id="6158" > +<!-- COMPONENT type="1508" id="6158" > <cdparam x="198" y="272" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -19626,7 +19626,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="1" id="6155" /> <TGConnectingPoint num="2" id="6156" /> <TGConnectingPoint num="3" id="6157" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1500" id="6174" > <cdparam x="198" y="362" /> @@ -19811,7 +19811,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="9" id="6256" /> </COMPONENT> -<CONNECTOR type="1501" id="6262" > +<!-- CONNECTOR type="1501" id="6262" > <cdparam x="801" y="457" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -19853,7 +19853,7 @@ SRC to CWM1, CWS and SINK <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="6264" > <cdparam x="723" y="370" /> @@ -19913,7 +19913,7 @@ SRC to CWM1, CWS and SINK <P2 x="425" y="550" id="6139" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="6274" > +<!-- CONNECTOR type="1501" id="6274" > <cdparam x="94" y="485" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -19964,7 +19964,7 @@ SRC to CWM1, CWS and SINK <P1 x="213" y="302" id="6157" /> <P2 x="213" y="352" id="6162" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="6277" > <cdparam x="173" y="377" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -20023,7 +20023,7 @@ SRC to CWM1, CWS and SINK <P2 x="456" y="117" id="6180" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="6283" > +<!-- CONNECTOR type="1501" id="6283" > <cdparam x="209" y="311" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -20038,7 +20038,7 @@ SRC to CWM1, CWS and SINK <P1 x="683" y="221" id="6237" /> <P2 x="683" y="275" id="6132" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="6285" > <cdparam x="683" y="305" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> diff --git a/modeling/DIPLODOCUS/CPlibrary/DMAPollingCycleP_AD.lib b/modeling/DIPLODOCUS/CPlibrary/DMAPollingCycleP_AD.lib index 6966203d75c84fe7618a16f74165d79d7fb9fe89..0fbe679974464fa81277e9a0a808d7cc492cd758 100644 --- a/modeling/DIPLODOCUS/CPlibrary/DMAPollingCycleP_AD.lib +++ b/modeling/DIPLODOCUS/CPlibrary/DMAPollingCycleP_AD.lib @@ -3,7 +3,7 @@ <TURTLEGSELECTEDCOMPONENTS version="0.96-beta1" copyMaxId="141314" decX="14" decY="10" > <CommunicationPatternDiagramPanelCopy name="DMAPollingCycleP_AD" xSel="14" ySel="10" widthSel="638" heightSel="382" > -<CONNECTOR type="1501" id="141311" > +<!--CONNECTOR type="1501" id="141311" > <cdparam x="174" y="274" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -36,9 +36,9 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> -<CONNECTOR type="1501" id="141310" > +<!--CONNECTOR type="1501" id="141310" > <cdparam x="418" y="121" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -56,7 +56,7 @@ <TGConnectingPoint num="1" id="141307" /> <TGConnectingPoint num="2" id="141308" /> <TGConnectingPoint num="3" id="141309" /> -</COMPONENT> +</COMPONENT--> <CONNECTOR type="1501" id="141303" > <cdparam x="271" y="184" /> @@ -163,14 +163,14 @@ <TGConnectingPoint num="0" id="141271" /> </COMPONENT> -<CONNECTOR type="1501" id="141299" > +<!--CONNECTOR type="1501" id="141299" > <cdparam x="316" y="90" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> <P1 x="311" y="40" id="141271" /> <P2 x="311" y="84" id="141306" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanelCopy> diff --git a/modeling/DIPLODOCUS/CPlibrary/DMATransferCycleP_AD.lib b/modeling/DIPLODOCUS/CPlibrary/DMATransferCycleP_AD.lib index 4493a4bc5456913dbc9243fef03ef96c43d3e3d5..fbf568870a991552dc6abb09fa3170c9043345cb 100644 --- a/modeling/DIPLODOCUS/CPlibrary/DMATransferCycleP_AD.lib +++ b/modeling/DIPLODOCUS/CPlibrary/DMATransferCycleP_AD.lib @@ -29,7 +29,7 @@ <TGConnectingPoint num="9" id="140366" /> </COMPONENT> -<CONNECTOR type="1501" id="140355" > +<!-- CONNECTOR type="1501" id="140355" > <cdparam x="382" y="90" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -70,7 +70,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="77479" > <cdparam x="342" y="324" /> @@ -133,7 +133,7 @@ <infoparam name="guard 3" value="[ else ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="77451" > +<!-- COMPONENT type="1508" id="77451" > <cdparam x="367" y="229" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -143,7 +143,7 @@ <TGConnectingPoint num="1" id="77448" /> <TGConnectingPoint num="2" id="77449" /> <TGConnectingPoint num="3" id="77450" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1507" id="77464" > <cdparam x="372" y="520" /> @@ -189,14 +189,14 @@ <P2 x="382" y="432" id="140357" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="77487" > +<!-- CONNECTOR type="1501" id="77487" > <cdparam x="382" y="259" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> <P1 x="382" y="259" id="77450" /> <P2 x="382" y="299" id="77425" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanelCopy> diff --git a/modeling/DIPLODOCUS/CPlibrary/DMATransfer_NoPolling_MainCP.lib b/modeling/DIPLODOCUS/CPlibrary/DMATransfer_NoPolling_MainCP.lib index bf31ad61b6aaf64cdc050180c1af107ab89944b5..5cfcc71faafdd6410b9a9493f9bdcbc8df55fe6d 100644 --- a/modeling/DIPLODOCUS/CPlibrary/DMATransfer_NoPolling_MainCP.lib +++ b/modeling/DIPLODOCUS/CPlibrary/DMATransfer_NoPolling_MainCP.lib @@ -46,7 +46,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="7701" > +<!-- CONNECTOR type="1501" id="7701" > <cdparam x="282" y="387" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -79,7 +79,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <COMPONENT type="1500" id="7650" > <cdparam x="374" y="286" /> @@ -152,7 +152,7 @@ <TGConnectingPoint num="9" id="7617" /> </COMPONENT> -<COMPONENT type="1508" id="7623" > +<!--COMPONENT type="1508" id="7623" > <cdparam x="374" y="184" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -162,7 +162,7 @@ <TGConnectingPoint num="1" id="7620" /> <TGConnectingPoint num="2" id="7621" /> <TGConnectingPoint num="3" id="7622" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="7634" > <cdparam x="461" y="341" /> @@ -208,7 +208,7 @@ <P2 x="523" y="411" id="7606" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="7706" > +<!-- CONNECTOR type="1501" id="7706" > <cdparam x="389" y="132" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -223,7 +223,7 @@ <P1 x="389" y="214" id="7622" /> <P2 x="389" y="276" id="7638" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="23058" > <cdparam x="398" y="55" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> diff --git a/modeling/DIPLODOCUS/CPlibrary/LoadCPU_mainCP.lib b/modeling/DIPLODOCUS/CPlibrary/LoadCPU_mainCP.lib index 7c0f4dd45a7c58854df703587f7b18edc04889ab..bc850b1a6e0ea30fbf11ed64cba7ccb163e76d68 100644 --- a/modeling/DIPLODOCUS/CPlibrary/LoadCPU_mainCP.lib +++ b/modeling/DIPLODOCUS/CPlibrary/LoadCPU_mainCP.lib @@ -64,7 +64,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="9922" > +<!-- CONNECTOR type="1501" id="9922" > <cdparam x="256" y="376" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -109,7 +109,7 @@ <TGConnectingPoint num="1" id="9898" /> <TGConnectingPoint num="2" id="9899" /> <TGConnectingPoint num="3" id="9900" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="9885" > <cdparam x="299" y="102" /> @@ -181,7 +181,7 @@ <P2 x="361" y="97" id="9886" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="9901" > +<!-- CONNECTOR type="1501" id="9901" > <cdparam x="361" y="142" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -196,7 +196,7 @@ <P1 x="361" y="220" id="9900" /> <P2 x="361" y="260" id="9903" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanelCopy> diff --git a/modeling/DIPLODOCUS/CPlibrary/StoreCPU_mainCP.lib b/modeling/DIPLODOCUS/CPlibrary/StoreCPU_mainCP.lib index 740681d07b249f3f03a80504a902cdfc51a94daf..9bfde1ff13b73633a7d8cd83ae3e58173795f1a2 100644 --- a/modeling/DIPLODOCUS/CPlibrary/StoreCPU_mainCP.lib +++ b/modeling/DIPLODOCUS/CPlibrary/StoreCPU_mainCP.lib @@ -3,7 +3,7 @@ <TURTLEGSELECTEDCOMPONENTS version="0.96-beta1" copyMaxId="5622" decX="91" decY="17" > <CommunicationPatternDiagramPanelCopy name="MainCP" xSel="91" ySel="17" widthSel="426" heightSel="465" > -<CONNECTOR type="1501" id="5619" > +<!-- CONNECTOR type="1501" id="5619" > <cdparam x="253" y="388" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -36,7 +36,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="5617" > <cdparam x="318" y="297" /> @@ -117,7 +117,7 @@ <TGConnectingPoint num="9" id="1710" /> </COMPONENT> -<COMPONENT type="1508" id="5593" > +<!-- COMPONENT type="1508" id="5593" > <cdparam x="343" y="202" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -127,7 +127,7 @@ <TGConnectingPoint num="1" id="5595" /> <TGConnectingPoint num="2" id="5596" /> <TGConnectingPoint num="3" id="5597" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="5582" > <cdparam x="296" y="114" /> @@ -181,7 +181,7 @@ <P2 x="358" y="109" id="5583" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="5598" > +<!-- CONNECTOR type="1501" id="5598" > <cdparam x="358" y="154" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -196,7 +196,7 @@ <P1 x="358" y="232" id="5597" /> <P2 x="358" y="272" id="5600" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanelCopy> diff --git a/modeling/DIPLODOCUS/MODELS_2014demo.xml b/modeling/DIPLODOCUS/MODELS_2014demo.xml index 4b23c4ce88af24e7219f74fa9a529ddcfdb89227..7df510c673072fb5e8ac71229d5f6bbc3343fb8c 100644 --- a/modeling/DIPLODOCUS/MODELS_2014demo.xml +++ b/modeling/DIPLODOCUS/MODELS_2014demo.xml @@ -20402,7 +20402,7 @@ SRC to CWM1, CWS and SINK <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="6200" > +<!-- COMPONENT type="1508" id="6200" > <cdparam x="668" y="275" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -20412,7 +20412,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="1" id="6197" /> <TGConnectingPoint num="2" id="6198" /> <TGConnectingPoint num="3" id="6199" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1507" id="6202" > <cdparam x="465" y="594" /> @@ -20445,7 +20445,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="13" id="6216" /> </COMPONENT> -<COMPONENT type="1508" id="6222" > +<!-- COMPONENT type="1508" id="6222" > <cdparam x="198" y="272" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -20455,7 +20455,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="1" id="6219" /> <TGConnectingPoint num="2" id="6220" /> <TGConnectingPoint num="3" id="6221" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1500" id="6238" > <cdparam x="198" y="362" /> @@ -20640,7 +20640,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="9" id="6320" /> </COMPONENT> -<CONNECTOR type="1501" id="6326" > +<!-- CONNECTOR type="1501" id="6326" > <cdparam x="801" y="457" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -20682,7 +20682,7 @@ SRC to CWM1, CWS and SINK <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="6328" > <cdparam x="723" y="370" /> @@ -20742,7 +20742,7 @@ SRC to CWM1, CWS and SINK <P2 x="425" y="550" id="6203" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="6338" > +<!-- CONNECTOR type="1501" id="6338" > <cdparam x="94" y="485" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -20793,7 +20793,7 @@ SRC to CWM1, CWS and SINK <P1 x="213" y="302" id="6221" /> <P2 x="213" y="352" id="6226" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="6341" > <cdparam x="173" y="377" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -20852,7 +20852,7 @@ SRC to CWM1, CWS and SINK <P2 x="456" y="117" id="6244" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="6347" > +<!-- CONNECTOR type="1501" id="6347" > <cdparam x="209" y="311" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -20875,7 +20875,7 @@ SRC to CWM1, CWS and SINK <P1 x="683" y="305" id="6199" /> <P2 x="683" y="345" id="6183" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> diff --git a/modeling/DIPLODOCUS/MODELS_2014demoFinal.xml b/modeling/DIPLODOCUS/MODELS_2014demoFinal.xml index 795ad10afb6cb91e4d06062648b1bd9b9da83f81..4f846ab5e2b1601f41715ca41ab9f5cbd3aadf03 100644 --- a/modeling/DIPLODOCUS/MODELS_2014demoFinal.xml +++ b/modeling/DIPLODOCUS/MODELS_2014demoFinal.xml @@ -14163,7 +14163,7 @@ SRC to CWM1, CWS and SINK <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="10192" > +<!-- COMPONENT type="1508" id="10192" > <cdparam x="668" y="275" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -14173,7 +14173,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="1" id="10189" /> <TGConnectingPoint num="2" id="10190" /> <TGConnectingPoint num="3" id="10191" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1507" id="10194" > <cdparam x="465" y="594" /> @@ -14206,7 +14206,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="13" id="10208" /> </COMPONENT> -<COMPONENT type="1508" id="10214" > +<!-- COMPONENT type="1508" id="10214" > <cdparam x="198" y="272" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -14216,7 +14216,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="1" id="10211" /> <TGConnectingPoint num="2" id="10212" /> <TGConnectingPoint num="3" id="10213" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1500" id="10230" > <cdparam x="198" y="362" /> @@ -14401,7 +14401,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="9" id="10312" /> </COMPONENT> -<CONNECTOR type="1501" id="10318" > +<!-- CONNECTOR type="1501" id="10318" > <cdparam x="801" y="457" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -14443,7 +14443,7 @@ SRC to CWM1, CWS and SINK <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="10320" > <cdparam x="723" y="370" /> @@ -14503,7 +14503,7 @@ SRC to CWM1, CWS and SINK <P2 x="425" y="550" id="10195" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="10330" > +<!-- CONNECTOR type="1501" id="10330" > <cdparam x="94" y="485" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -14554,7 +14554,7 @@ SRC to CWM1, CWS and SINK <P1 x="213" y="302" id="10213" /> <P2 x="213" y="352" id="10218" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="10333" > <cdparam x="173" y="377" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -14613,7 +14613,7 @@ SRC to CWM1, CWS and SINK <P2 x="456" y="117" id="10236" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="10339" > +<!-- CONNECTOR type="1501" id="10339" > <cdparam x="209" y="311" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -14636,7 +14636,7 @@ SRC to CWM1, CWS and SINK <P1 x="683" y="305" id="10191" /> <P2 x="683" y="345" id="10175" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> diff --git a/modeling/DIPLODOCUS/MODELS_2014demoTurin.xml b/modeling/DIPLODOCUS/MODELS_2014demoTurin.xml index 365870870d48d0496ae67dd4c9ec13b48586f8e3..ee1add4c3f7c6aafd962e9d2da26e869c814d6f3 100644 --- a/modeling/DIPLODOCUS/MODELS_2014demoTurin.xml +++ b/modeling/DIPLODOCUS/MODELS_2014demoTurin.xml @@ -4346,7 +4346,7 @@ SRC to CWM1, CWS and SINK <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="1266" > +<!-- COMPONENT type="1508" id="1266" > <cdparam x="668" y="275" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -4356,7 +4356,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="1" id="1263" /> <TGConnectingPoint num="2" id="1264" /> <TGConnectingPoint num="3" id="1265" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1507" id="1268" > <cdparam x="465" y="594" /> @@ -4389,7 +4389,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="13" id="1282" /> </COMPONENT> -<COMPONENT type="1508" id="1288" > +<!-- COMPONENT type="1508" id="1288" > <cdparam x="198" y="272" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -4399,7 +4399,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="1" id="1285" /> <TGConnectingPoint num="2" id="1286" /> <TGConnectingPoint num="3" id="1287" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1500" id="1304" > <cdparam x="198" y="362" /> @@ -4584,7 +4584,7 @@ SRC to CWM1, CWS and SINK <TGConnectingPoint num="9" id="1386" /> </COMPONENT> -<CONNECTOR type="1501" id="1392" > +<!-- CONNECTOR type="1501" id="1392" > <cdparam x="801" y="457" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -4626,7 +4626,7 @@ SRC to CWM1, CWS and SINK <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1394" > <cdparam x="723" y="370" /> @@ -4686,7 +4686,7 @@ SRC to CWM1, CWS and SINK <P2 x="425" y="550" id="1269" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1404" > +<!-- CONNECTOR type="1501" id="1404" > <cdparam x="94" y="485" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -4737,7 +4737,7 @@ SRC to CWM1, CWS and SINK <P1 x="213" y="302" id="1287" /> <P2 x="213" y="352" id="1292" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="1407" > <cdparam x="173" y="377" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -4796,7 +4796,7 @@ SRC to CWM1, CWS and SINK <P2 x="456" y="117" id="1310" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1413" > +<!-- CONNECTOR type="1501" id="1413" > <cdparam x="209" y="311" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -4819,7 +4819,7 @@ SRC to CWM1, CWS and SINK <P1 x="683" y="305" id="1265" /> <P2 x="683" y="345" id="1249" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> diff --git a/modeling/DIPLODOCUS/ZigBeeTutorial.xml b/modeling/DIPLODOCUS/ZigBeeTutorial.xml index ba2ca48c0ab2e0acce7213fb8039910f21830928..95a32d4a4902d8a4a6d0d4d3e2a76f9e463b7011 100644 --- a/modeling/DIPLODOCUS/ZigBeeTutorial.xml +++ b/modeling/DIPLODOCUS/ZigBeeTutorial.xml @@ -6235,7 +6235,7 @@ POLLING <TGConnectingPoint num="0" id="2490" /> </COMPONENT> -<COMPONENT type="1508" id="2496" > +<!-- COMPONENT type="1508" id="2496" > <cdparam x="360" y="163" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -6245,7 +6245,7 @@ POLLING <TGConnectingPoint num="1" id="2493" /> <TGConnectingPoint num="2" id="2494" /> <TGConnectingPoint num="3" id="2495" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="2507" > <cdparam x="182" y="332" /> @@ -6299,7 +6299,7 @@ POLLING <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="2516" > +<!-- CONNECTOR type="1501" id="2516" > <cdparam x="244" y="372" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -6309,7 +6309,8 @@ POLLING <Point x="136" y="425" /> <Point x="136" y="178" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="2513" > +</CONNECTOR> +<SUBCOMPONENT type="-1" id="2513" > <father id="2516" num="0" /> <cdparam x="244" y="425" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -6332,7 +6333,7 @@ POLLING <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="2517" > <cdparam x="375" y="314" /> @@ -6342,22 +6343,22 @@ POLLING <P2 x="375" y="386" id="2463" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="2518" > +<!-- CONNECTOR type="1501" id="2518" > <cdparam x="375" y="193" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> <P1 x="375" y="193" id="2495" /> <P2 x="375" y="249" id="2477" /> <AutomaticDrawing data="true" /> -</CONNECTOR> -<CONNECTOR type="1501" id="2519" > +</CONNECTOR--> +<!-- CONNECTOR type="1501" id="2519" > <cdparam x="375" y="115" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> <P1 x="375" y="115" id="2508" /> <P2 x="375" y="163" id="2492" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -6911,7 +6912,7 @@ POLLING <infoparam name="guard 3" value="[ transferTerminated == true ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="2866" > +<!-- COMPONENT type="1508" id="2866" > <cdparam x="279" y="127" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -6921,7 +6922,7 @@ POLLING <TGConnectingPoint num="1" id="2863" /> <TGConnectingPoint num="2" id="2864" /> <TGConnectingPoint num="3" id="2865" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="2877" > <cdparam x="101" y="296" /> @@ -6958,7 +6959,7 @@ POLLING <P2 x="294" y="337" id="2844" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="2884" > +<!-- CONNECTOR type="1501" id="2884" > <cdparam x="163" y="336" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -6968,7 +6969,8 @@ POLLING <Point x="55" y="389" /> <Point x="55" y="142" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="2881" > +</CONNECTOR> +<SUBCOMPONENT type="-1" id="2881" > <father id="2884" num="0" /> <cdparam x="163" y="389" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -6991,7 +6993,7 @@ POLLING <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="2886" > <cdparam x="254" y="238" /> @@ -7010,22 +7012,22 @@ POLLING <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="2887" > +<!-- CONNECTOR type="1501" id="2887" > <cdparam x="294" y="157" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> <P1 x="294" y="157" id="2865" /> <P2 x="294" y="213" id="2849" /> <AutomaticDrawing data="true" /> -</CONNECTOR> -<CONNECTOR type="1501" id="2888" > +</CONNECTOR--> +<!-- CONNECTOR type="1501" id="2888" > <cdparam x="294" y="79" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> <P1 x="294" y="79" id="2878" /> <P2 x="294" y="127" id="2862" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> diff --git a/modeling/DIPLODOCUS/Zigbee.xml b/modeling/DIPLODOCUS/Zigbee.xml index 88fe2e202264d020644a033ce4d2e3b5512677c0..3077fffb998d8ab9e61e7cac5d28035e5fb9062e 100644 --- a/modeling/DIPLODOCUS/Zigbee.xml +++ b/modeling/DIPLODOCUS/Zigbee.xml @@ -4229,7 +4229,7 @@ <infoparam name="guard 3" value="[ else ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="1323" > +<!-- COMPONENT type="1508" id="1323" > <cdparam x="346" y="190" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -4239,7 +4239,7 @@ <TGConnectingPoint num="1" id="1320" /> <TGConnectingPoint num="2" id="1321" /> <TGConnectingPoint num="3" id="1322" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1334" > <cdparam x="305" y="102" /> @@ -4312,7 +4312,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1355" > +<!-- CONNECTOR type="1501" id="1355" > <cdparam x="256" y="376" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -4345,7 +4345,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1356" > <cdparam x="361" y="325" /> @@ -4363,7 +4363,7 @@ <P2 x="361" y="97" id="1324" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1358" > +<!-- CONNECTOR type="1501" id="1358" > <cdparam x="361" y="142" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -4378,7 +4378,7 @@ <P1 x="361" y="220" id="1322" /> <P2 x="361" y="260" id="1306" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -4927,7 +4927,7 @@ CPU via interrupts (no polling messages) <TGConnectingPoint num="9" id="1718" /> </COMPONENT> -<COMPONENT type="1508" id="1724" > +<!-- COMPONENT type="1508" id="1724" > <cdparam x="278" y="185" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -4937,7 +4937,7 @@ CPU via interrupts (no polling messages) <TGConnectingPoint num="1" id="1721" /> <TGConnectingPoint num="2" id="1722" /> <TGConnectingPoint num="3" id="1723" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1735" > <cdparam x="371" y="342" /> @@ -5036,7 +5036,7 @@ CPU via interrupts (no polling messages) <P2 x="427" y="412" id="1707" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1769" > +<!-- CONNECTOR type="1501" id="1769" > <cdparam x="186" y="388" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -5069,7 +5069,7 @@ CPU via interrupts (no polling messages) <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1771" > <cdparam x="253" y="302" /> @@ -5105,7 +5105,7 @@ CPU via interrupts (no polling messages) <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1774" > +<!-- CONNECTOR type="1501" id="1774" > <cdparam x="293" y="133" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -5120,7 +5120,7 @@ CPU via interrupts (no polling messages) <P1 x="293" y="215" id="1723" /> <P2 x="293" y="277" id="1739" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="1776" > <cdparam x="291" y="25" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -6148,7 +6148,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="2409" /> </COMPONENT> -<COMPONENT type="1508" id="2415" > +<!-- COMPONENT type="1508" id="2415" > <cdparam x="250" y="191" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -6158,7 +6158,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="2412" /> <TGConnectingPoint num="2" id="2413" /> <TGConnectingPoint num="3" id="2414" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="2426" > <cdparam x="337" y="348" /> @@ -6239,7 +6239,7 @@ INTERRUPTS <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="2447" > +<!-- CONNECTOR type="1501" id="2447" > <cdparam x="158" y="394" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -6272,7 +6272,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="2448" > <cdparam x="399" y="388" /> @@ -6282,7 +6282,7 @@ INTERRUPTS <P2 x="399" y="418" id="2398" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="2449" > +<!-- CONNECTOR type="1501" id="2449" > <cdparam x="265" y="139" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -6297,7 +6297,7 @@ INTERRUPTS <P1 x="265" y="221" id="2414" /> <P2 x="265" y="283" id="2385" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="2451" > <cdparam x="263" y="31" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -6381,7 +6381,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="2479" /> </COMPONENT> -<COMPONENT type="1508" id="2485" > +<!-- COMPONENT type="1508" id="2485" > <cdparam x="225" y="195" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -6391,7 +6391,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="2482" /> <TGConnectingPoint num="2" id="2483" /> <TGConnectingPoint num="3" id="2484" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="2496" > <cdparam x="312" y="352" /> @@ -6438,7 +6438,7 @@ INTERRUPTS <TGConnectingPoint num="0" id="2508" /> </COMPONENT> -<CONNECTOR type="1501" id="2513" > +<!-- CONNECTOR type="1501" id="2513" > <cdparam x="133" y="398" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -6471,7 +6471,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="2515" > <cdparam x="200" y="312" /> @@ -6515,7 +6515,7 @@ INTERRUPTS <P2 x="374" y="422" id="2468" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="2519" > +<!-- CONNECTOR type="1501" id="2519" > <cdparam x="240" y="143" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -6530,7 +6530,7 @@ INTERRUPTS <P1 x="240" y="225" id="2484" /> <P2 x="240" y="287" id="2455" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="2521" > <cdparam x="238" y="35" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> diff --git a/modeling/DIPLODOCUS/ZigbeeCommunications.xml b/modeling/DIPLODOCUS/ZigbeeCommunications.xml index 177315434b2dcc59794a67f95d577ffe3b9fab7d..3812a1b97161e1d86614067e1527b6cfe349d7d1 100644 --- a/modeling/DIPLODOCUS/ZigbeeCommunications.xml +++ b/modeling/DIPLODOCUS/ZigbeeCommunications.xml @@ -61,7 +61,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="21" /> </COMPONENT> -<COMPONENT type="1508" id="27" > +<!-- COMPONENT type="1508" id="27" > <cdparam x="237" y="197" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -71,7 +71,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="24" /> <TGConnectingPoint num="2" id="25" /> <TGConnectingPoint num="3" id="26" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="38" > <cdparam x="324" y="354" /> @@ -170,7 +170,7 @@ INTERRUPTS <P2 x="386" y="424" id="10" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="72" > +<!-- CONNECTOR type="1501" id="72" > <cdparam x="145" y="400" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -203,7 +203,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="74" > <cdparam x="212" y="314" /> @@ -247,7 +247,7 @@ INTERRUPTS <P2 x="252" y="100" id="55" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="78" > +<!-- CONNECTOR type="1501" id="78" > <cdparam x="252" y="145" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -262,7 +262,7 @@ INTERRUPTS <P1 x="252" y="227" id="26" /> <P2 x="252" y="289" id="42" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -1672,7 +1672,7 @@ POLLING <TGConnectingPoint num="0" id="947" /> </COMPONENT> -<COMPONENT type="1508" id="953" > +<!-- COMPONENT type="1508" id="953" > <cdparam x="360" y="163" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -1682,7 +1682,7 @@ POLLING <TGConnectingPoint num="1" id="950" /> <TGConnectingPoint num="2" id="951" /> <TGConnectingPoint num="3" id="952" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="964" > <cdparam x="182" y="332" /> @@ -1736,7 +1736,7 @@ POLLING <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="973" > +<!-- CONNECTOR type="1501" id="973" > <cdparam x="244" y="372" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -1769,7 +1769,7 @@ POLLING <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="974" > <cdparam x="375" y="314" /> @@ -1779,7 +1779,7 @@ POLLING <P2 x="375" y="386" id="920" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="975" > +<!-- CONNECTOR type="1501" id="975" > <cdparam x="375" y="193" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -1794,7 +1794,7 @@ POLLING <P1 x="375" y="115" id="965" /> <P2 x="375" y="163" id="949" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -2340,7 +2340,7 @@ POLLING <infoparam name="guard 3" value="[ transferTerminated == true ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="1323" > +<!-- COMPONENT type="1508" id="1323" > <cdparam x="279" y="127" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2350,7 +2350,7 @@ POLLING <TGConnectingPoint num="1" id="1320" /> <TGConnectingPoint num="2" id="1321" /> <TGConnectingPoint num="3" id="1322" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1334" > <cdparam x="101" y="296" /> @@ -2387,7 +2387,7 @@ POLLING <P2 x="294" y="337" id="1301" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1341" > +<!-- CONNECTOR type="1501" id="1341" > <cdparam x="163" y="336" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -2420,7 +2420,7 @@ POLLING <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1343" > <cdparam x="254" y="238" /> @@ -2439,7 +2439,7 @@ POLLING <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1344" > +<!-- CONNECTOR type="1501" id="1344" > <cdparam x="294" y="157" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -2454,7 +2454,7 @@ POLLING <P1 x="294" y="79" id="1335" /> <P2 x="294" y="127" id="1319" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -2734,7 +2734,7 @@ POLLING <Modeling type="TML CP" nameTab="Load_CPU" > <CommunicationPatternDiagramPanel name="MainCP" minX="10" maxX="1400" minY="10" maxY="900" > -<CONNECTOR type="1501" id="3903" > +<!-- CONNECTOR type="1501" id="3903" > <cdparam x="212" y="387" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -2767,7 +2767,7 @@ POLLING <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="3901" > <cdparam x="277" y="296" /> @@ -2838,7 +2838,7 @@ POLLING <infoparam name="guard 3" value="[ else ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="3877" > +<!-- COMPONENT type="1508" id="3877" > <cdparam x="302" y="201" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2848,7 +2848,7 @@ POLLING <TGConnectingPoint num="1" id="3879" /> <TGConnectingPoint num="2" id="3880" /> <TGConnectingPoint num="3" id="3881" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="3866" > <cdparam x="255" y="113" /> @@ -2936,7 +2936,7 @@ POLLING <P2 x="317" y="108" id="3867" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="3882" > +<!-- CONNECTOR type="1501" id="3882" > <cdparam x="317" y="153" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -2951,7 +2951,7 @@ POLLING <P1 x="317" y="231" id="3881" /> <P2 x="317" y="271" id="3884" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -3341,7 +3341,7 @@ POLLING <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="5618" > +<!-- CONNECTOR type="1501" id="5618" > <cdparam x="275" y="449" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -3374,7 +3374,7 @@ POLLING <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <COMPONENT type="301" id="1697" > <cdparam x="536" y="48" /> @@ -3418,7 +3418,7 @@ POLLING <TGConnectingPoint num="9" id="1709" /> </COMPONENT> -<COMPONENT type="1508" id="5592" > +<!-- COMPONENT type="1508" id="5592" > <cdparam x="365" y="263" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -3428,7 +3428,7 @@ POLLING <TGConnectingPoint num="1" id="5594" /> <TGConnectingPoint num="2" id="5595" /> <TGConnectingPoint num="3" id="5596" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="5581" > <cdparam x="318" y="175" /> @@ -3482,7 +3482,7 @@ POLLING <P2 x="380" y="170" id="5582" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="5597" > +<!-- CONNECTOR type="1501" id="5597" > <cdparam x="380" y="215" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -3497,7 +3497,7 @@ POLLING <P1 x="380" y="293" id="5596" /> <P2 x="380" y="333" id="5599" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -3847,7 +3847,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="1887" /> </COMPONENT> -<COMPONENT type="1508" id="1893" > +<!-- COMPONENT type="1508" id="1893" > <cdparam x="237" y="197" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -3857,7 +3857,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="1890" /> <TGConnectingPoint num="2" id="1891" /> <TGConnectingPoint num="3" id="1892" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1904" > <cdparam x="324" y="354" /> @@ -3956,7 +3956,7 @@ INTERRUPTS <P2 x="386" y="424" id="1876" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1938" > +<!-- CONNECTOR type="1501" id="1938" > <cdparam x="145" y="400" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -3989,7 +3989,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1940" > <cdparam x="212" y="314" /> @@ -4033,7 +4033,7 @@ INTERRUPTS <P2 x="252" y="100" id="1921" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1944" > +<!-- CONNECTOR type="1501" id="1944" > <cdparam x="252" y="145" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -4048,7 +4048,7 @@ INTERRUPTS <P1 x="252" y="227" id="1892" /> <P2 x="252" y="289" id="1908" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -4975,7 +4975,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="2553" /> </COMPONENT> -<COMPONENT type="1508" id="2559" > +<!-- COMPONENT type="1508" id="2559" > <cdparam x="237" y="197" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -4985,7 +4985,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="2556" /> <TGConnectingPoint num="2" id="2557" /> <TGConnectingPoint num="3" id="2558" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="2570" > <cdparam x="324" y="354" /> @@ -5084,7 +5084,7 @@ INTERRUPTS <P2 x="386" y="424" id="2542" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="2604" > +<!-- CONNECTOR type="1501" id="2604" > <cdparam x="145" y="400" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -5117,7 +5117,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="2606" > <cdparam x="212" y="314" /> @@ -5161,7 +5161,7 @@ INTERRUPTS <P2 x="252" y="100" id="2587" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="2610" > +<!-- CONNECTOR type="1501" id="2610" > <cdparam x="252" y="145" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -5176,7 +5176,7 @@ INTERRUPTS <P1 x="252" y="227" id="2558" /> <P2 x="252" y="289" id="2574" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -6103,7 +6103,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="3219" /> </COMPONENT> -<COMPONENT type="1508" id="3225" > +<!-- COMPONENT type="1508" id="3225" > <cdparam x="237" y="197" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -6113,7 +6113,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="3222" /> <TGConnectingPoint num="2" id="3223" /> <TGConnectingPoint num="3" id="3224" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="3236" > <cdparam x="324" y="354" /> @@ -6212,7 +6212,7 @@ INTERRUPTS <P2 x="386" y="424" id="3208" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="3270" > +<!-- CONNECTOR type="1501" id="3270" > <cdparam x="145" y="400" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -6245,7 +6245,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="3272" > <cdparam x="212" y="314" /> @@ -6289,7 +6289,7 @@ INTERRUPTS <P2 x="252" y="100" id="3253" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="3276" > +<!-- CONNECTOR type="1501" id="3276" > <cdparam x="252" y="145" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -6304,7 +6304,7 @@ INTERRUPTS <P1 x="252" y="227" id="3224" /> <P2 x="252" y="289" id="3240" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> diff --git a/modeling/DIPLODOCUS/Zigbee_Andrea.xml b/modeling/DIPLODOCUS/Zigbee_Andrea.xml index f7134753e75e2b83859356a80847590d66ce26db..e43a72c5a7d0bc2b15296aaea443cf12bafc5add 100644 --- a/modeling/DIPLODOCUS/Zigbee_Andrea.xml +++ b/modeling/DIPLODOCUS/Zigbee_Andrea.xml @@ -22104,7 +22104,7 @@ input components per cycle <TGConnectingPoint num="9" id="7576" /> </COMPONENT> -<COMPONENT type="1508" id="7582" > +<!-- COMPONENT type="1508" id="7582" > <cdparam x="343" y="202" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -22114,7 +22114,7 @@ input components per cycle <TGConnectingPoint num="1" id="7579" /> <TGConnectingPoint num="2" id="7580" /> <TGConnectingPoint num="3" id="7581" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="7593" > <cdparam x="296" y="114" /> @@ -22152,7 +22152,7 @@ input components per cycle <TGConnectingPoint num="0" id="7596" /> </COMPONENT> -<CONNECTOR type="1501" id="7601" > +<!-- CONNECTOR type="1501" id="7601" > <cdparam x="253" y="388" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -22185,7 +22185,7 @@ input components per cycle <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="7603" > <cdparam x="318" y="297" /> @@ -22220,7 +22220,7 @@ input components per cycle <P2 x="358" y="109" id="7583" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="7606" > +<!-- CONNECTOR type="1501" id="7606" > <cdparam x="358" y="154" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -22235,7 +22235,7 @@ input components per cycle <P1 x="358" y="232" id="7581" /> <P2 x="358" y="272" id="7554" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -22622,7 +22622,7 @@ input components per cycle </extraparam> </COMPONENT> -<COMPONENT type="1508" id="7856" > +<!-- COMPONENT type="1508" id="7856" > <cdparam x="346" y="190" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -22632,7 +22632,7 @@ input components per cycle <TGConnectingPoint num="1" id="7853" /> <TGConnectingPoint num="2" id="7854" /> <TGConnectingPoint num="3" id="7855" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="7867" > <cdparam x="299" y="102" /> @@ -22705,7 +22705,7 @@ input components per cycle <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="7888" > +<!-- CONNECTOR type="1501" id="7888" > <cdparam x="256" y="376" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -22738,7 +22738,7 @@ input components per cycle <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="7889" > <cdparam x="361" y="325" /> @@ -22756,7 +22756,7 @@ input components per cycle <P2 x="361" y="97" id="7857" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="7891" > +<!-- CONNECTOR type="1501" id="7891" > <cdparam x="361" y="142" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -22771,7 +22771,7 @@ input components per cycle <P1 x="361" y="220" id="7855" /> <P2 x="361" y="260" id="7822" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -23247,7 +23247,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="8167" /> </COMPONENT> -<COMPONENT type="1508" id="8173" > +<!-- COMPONENT type="1508" id="8173" > <cdparam x="281" y="543" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -23257,7 +23257,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="8170" /> <TGConnectingPoint num="2" id="8171" /> <TGConnectingPoint num="3" id="8172" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="8184" > <cdparam x="368" y="700" /> @@ -23357,7 +23357,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="8221" /> </COMPONENT> -<COMPONENT type="1508" id="8227" > +<!-- COMPONENT type="1508" id="8227" > <cdparam x="281" y="183" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -23367,7 +23367,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="8224" /> <TGConnectingPoint num="2" id="8225" /> <TGConnectingPoint num="3" id="8226" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="8238" > <cdparam x="234" y="95" /> @@ -23413,7 +23413,7 @@ INTERRUPTS <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="8246" > +<!-- CONNECTOR type="1501" id="8246" > <cdparam x="191" y="369" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -23446,7 +23446,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="8247" > <cdparam x="430" y="740" /> @@ -23456,7 +23456,7 @@ INTERRUPTS <P2 x="430" y="770" id="8156" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="8251" > +<!-- CONNECTOR type="1501" id="8251" > <cdparam x="189" y="746" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -23489,7 +23489,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="8253" > <cdparam x="256" y="660" /> @@ -23525,7 +23525,7 @@ INTERRUPTS <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="8256" > +<!-- CONNECTOR type="1501" id="8256" > <cdparam x="296" y="491" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -23540,7 +23540,7 @@ INTERRUPTS <P1 x="296" y="573" id="8172" /> <P2 x="296" y="635" id="8188" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="8258" > <cdparam x="296" y="318" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -23557,7 +23557,7 @@ INTERRUPTS <P2 x="296" y="90" id="8228" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="8260" > +<!-- CONNECTOR type="1501" id="8260" > <cdparam x="296" y="135" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -23572,7 +23572,7 @@ INTERRUPTS <P1 x="296" y="213" id="8226" /> <P2 x="296" y="253" id="8109" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -24871,7 +24871,7 @@ sequence diagram. </extraparam> </COMPONENT> -<COMPONENT type="1508" id="9105" > +<!-- COMPONENT type="1508" id="9105" > <cdparam x="340" y="217" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -24881,7 +24881,7 @@ sequence diagram. <TGConnectingPoint num="1" id="9102" /> <TGConnectingPoint num="2" id="9103" /> <TGConnectingPoint num="3" id="9104" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="9116" > <cdparam x="293" y="129" /> @@ -24937,7 +24937,7 @@ sequence diagram. <TGConnectingPoint num="0" id="9130" /> </COMPONENT> -<CONNECTOR type="1501" id="9135" > +<!-- CONNECTOR type="1501" id="9135" > <cdparam x="250" y="403" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -24970,7 +24970,7 @@ sequence diagram. <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="9137" > <cdparam x="315" y="312" /> @@ -25005,7 +25005,7 @@ sequence diagram. <P2 x="355" y="124" id="9106" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="9140" > +<!-- CONNECTOR type="1501" id="9140" > <cdparam x="355" y="169" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -25020,7 +25020,7 @@ sequence diagram. <P1 x="355" y="247" id="9104" /> <P2 x="355" y="287" id="9071" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -25540,7 +25540,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="9432" /> </COMPONENT> -<COMPONENT type="1508" id="9438" > +<!-- COMPONENT type="1508" id="9438" > <cdparam x="329" y="553" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -25550,7 +25550,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="9435" /> <TGConnectingPoint num="2" id="9436" /> <TGConnectingPoint num="3" id="9437" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="9449" > <cdparam x="416" y="710" /> @@ -25606,7 +25606,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="9470" /> </COMPONENT> -<COMPONENT type="1508" id="9476" > +<!-- COMPONENT type="1508" id="9476" > <cdparam x="329" y="193" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -25616,7 +25616,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="9473" /> <TGConnectingPoint num="2" id="9474" /> <TGConnectingPoint num="3" id="9475" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="9487" > <cdparam x="282" y="105" /> @@ -25679,7 +25679,7 @@ INTERRUPTS <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="9497" > +<!-- CONNECTOR type="1501" id="9497" > <cdparam x="237" y="756" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -25747,7 +25747,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="9503" > <cdparam x="304" y="288" /> @@ -25774,7 +25774,7 @@ INTERRUPTS <P2 x="478" y="780" id="9421" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="9505" > +<!-- CONNECTOR type="1501" id="9505" > <cdparam x="344" y="501" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -25789,7 +25789,7 @@ INTERRUPTS <P1 x="344" y="583" id="9437" /> <P2 x="344" y="645" id="9358" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="9507" > <cdparam x="344" y="328" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -25806,7 +25806,7 @@ INTERRUPTS <P2 x="344" y="100" id="9477" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="9509" > +<!-- CONNECTOR type="1501" id="9509" > <cdparam x="344" y="145" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -25821,7 +25821,7 @@ INTERRUPTS <P1 x="344" y="223" id="9475" /> <P2 x="344" y="263" id="9374" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -27120,7 +27120,7 @@ sequence diagram. </extraparam> </COMPONENT> -<COMPONENT type="1508" id="10354" > +<!-- COMPONENT type="1508" id="10354" > <cdparam x="351" y="210" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -27130,7 +27130,7 @@ sequence diagram. <TGConnectingPoint num="1" id="10351" /> <TGConnectingPoint num="2" id="10352" /> <TGConnectingPoint num="3" id="10353" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="10365" > <cdparam x="304" y="122" /> @@ -27186,7 +27186,7 @@ sequence diagram. <TGConnectingPoint num="0" id="10379" /> </COMPONENT> -<CONNECTOR type="1501" id="10384" > +<!-- CONNECTOR type="1501" id="10384" > <cdparam x="261" y="396" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -27219,7 +27219,7 @@ sequence diagram. <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="10386" > <cdparam x="326" y="305" /> @@ -27254,7 +27254,7 @@ sequence diagram. <P2 x="366" y="117" id="10355" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="10389" > +<!-- CONNECTOR type="1501" id="10389" > <cdparam x="366" y="162" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -27269,7 +27269,7 @@ sequence diagram. <P1 x="366" y="240" id="10353" /> <P2 x="366" y="280" id="10320" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -27696,7 +27696,7 @@ sequence diagram. <TGConnectingPoint num="9" id="10646" /> </COMPONENT> -<COMPONENT type="1508" id="10652" > +<!-- COMPONENT type="1508" id="10652" > <cdparam x="262" y="196" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -27706,7 +27706,7 @@ sequence diagram. <TGConnectingPoint num="1" id="10649" /> <TGConnectingPoint num="2" id="10650" /> <TGConnectingPoint num="3" id="10651" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="10663" > <cdparam x="215" y="108" /> @@ -27761,7 +27761,7 @@ sequence diagram. <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="10673" > +<!-- CONNECTOR type="1501" id="10673" > <cdparam x="172" y="382" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -27794,7 +27794,7 @@ sequence diagram. <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="10674" > <cdparam x="277" y="331" /> @@ -27812,7 +27812,7 @@ sequence diagram. <P2 x="277" y="103" id="10653" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="10676" > +<!-- CONNECTOR type="1501" id="10676" > <cdparam x="277" y="148" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -27827,7 +27827,7 @@ sequence diagram. <P1 x="277" y="226" id="10651" /> <P2 x="277" y="266" id="10607" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -28214,7 +28214,7 @@ sequence diagram. </extraparam> </COMPONENT> -<COMPONENT type="1508" id="10926" > +<!-- COMPONENT type="1508" id="10926" > <cdparam x="260" y="183" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -28224,7 +28224,7 @@ sequence diagram. <TGConnectingPoint num="1" id="10923" /> <TGConnectingPoint num="2" id="10924" /> <TGConnectingPoint num="3" id="10925" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="10937" > <cdparam x="213" y="95" /> @@ -28280,7 +28280,7 @@ sequence diagram. <TGConnectingPoint num="0" id="10951" /> </COMPONENT> -<CONNECTOR type="1501" id="10956" > +<!-- CONNECTOR type="1501" id="10956" > <cdparam x="170" y="369" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -28313,7 +28313,7 @@ sequence diagram. <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="10958" > <cdparam x="235" y="278" /> @@ -28348,7 +28348,7 @@ sequence diagram. <P2 x="275" y="90" id="10927" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="10961" > +<!-- CONNECTOR type="1501" id="10961" > <cdparam x="275" y="135" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -28363,7 +28363,7 @@ sequence diagram. <P1 x="275" y="213" id="10925" /> <P2 x="275" y="253" id="10892" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -28772,7 +28772,7 @@ sequence diagram. </extraparam> </COMPONENT> -<COMPONENT type="1508" id="11213" > +<!-- COMPONENT type="1508" id="11213" > <cdparam x="405" y="249" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -28782,7 +28782,7 @@ sequence diagram. <TGConnectingPoint num="1" id="11210" /> <TGConnectingPoint num="2" id="11211" /> <TGConnectingPoint num="3" id="11212" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="11224" > <cdparam x="358" y="161" /> @@ -28838,7 +28838,7 @@ sequence diagram. <TGConnectingPoint num="0" id="11238" /> </COMPONENT> -<CONNECTOR type="1501" id="11243" > +<!-- CONNECTOR type="1501" id="11243" > <cdparam x="315" y="435" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -28871,7 +28871,7 @@ sequence diagram. <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="11245" > <cdparam x="380" y="344" /> @@ -28906,7 +28906,7 @@ sequence diagram. <P2 x="420" y="156" id="11214" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="11248" > +<!-- CONNECTOR type="1501" id="11248" > <cdparam x="420" y="201" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -28921,7 +28921,7 @@ sequence diagram. <P1 x="420" y="279" id="11212" /> <P2 x="420" y="319" id="11179" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -29348,7 +29348,7 @@ sequence diagram. <TGConnectingPoint num="9" id="11505" /> </COMPONENT> -<COMPONENT type="1508" id="11511" > +<!-- COMPONENT type="1508" id="11511" > <cdparam x="260" y="198" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -29358,7 +29358,7 @@ sequence diagram. <TGConnectingPoint num="1" id="11508" /> <TGConnectingPoint num="2" id="11509" /> <TGConnectingPoint num="3" id="11510" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="11522" > <cdparam x="213" y="110" /> @@ -29413,7 +29413,7 @@ sequence diagram. <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="11532" > +<!-- CONNECTOR type="1501" id="11532" > <cdparam x="170" y="384" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -29446,7 +29446,7 @@ sequence diagram. <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="11533" > <cdparam x="275" y="333" /> @@ -29464,7 +29464,7 @@ sequence diagram. <P2 x="275" y="105" id="11512" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="11535" > +<!-- CONNECTOR type="1501" id="11535" > <cdparam x="275" y="150" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -29479,7 +29479,7 @@ sequence diagram. <P1 x="275" y="228" id="11510" /> <P2 x="275" y="268" id="11466" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -29884,7 +29884,7 @@ sequence diagram. <TGConnectingPoint num="9" id="11790" /> </COMPONENT> -<COMPONENT type="1508" id="11796" > +<!-- COMPONENT type="1508" id="11796" > <cdparam x="267" y="201" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -29894,7 +29894,7 @@ sequence diagram. <TGConnectingPoint num="1" id="11793" /> <TGConnectingPoint num="2" id="11794" /> <TGConnectingPoint num="3" id="11795" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="11807" > <cdparam x="220" y="113" /> @@ -29949,7 +29949,7 @@ sequence diagram. <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="11817" > +<!-- CONNECTOR type="1501" id="11817" > <cdparam x="177" y="387" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -29982,7 +29982,7 @@ sequence diagram. <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="11818" > <cdparam x="282" y="336" /> @@ -30000,7 +30000,7 @@ sequence diagram. <P2 x="282" y="108" id="11797" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="11820" > +<!-- CONNECTOR type="1501" id="11820" > <cdparam x="282" y="153" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -30015,7 +30015,7 @@ sequence diagram. <P1 x="282" y="231" id="11795" /> <P2 x="282" y="271" id="11751" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -30515,7 +30515,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="12110" /> </COMPONENT> -<COMPONENT type="1508" id="12116" > +<!-- COMPONENT type="1508" id="12116" > <cdparam x="319" y="222" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -30525,7 +30525,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="12113" /> <TGConnectingPoint num="2" id="12114" /> <TGConnectingPoint num="3" id="12115" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="12127" > <cdparam x="406" y="379" /> @@ -30563,7 +30563,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="12137" /> </COMPONENT> -<COMPONENT type="1508" id="12143" > +<!-- COMPONENT type="1508" id="12143" > <cdparam x="453" y="543" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -30573,7 +30573,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="12140" /> <TGConnectingPoint num="2" id="12141" /> <TGConnectingPoint num="3" id="12142" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="12154" > <cdparam x="406" y="459" /> @@ -30620,7 +30620,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="12166" /> </COMPONENT> -<CONNECTOR type="1501" id="12171" > +<!-- CONNECTOR type="1501" id="12171" > <cdparam x="363" y="729" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -30653,7 +30653,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="12173" > <cdparam x="428" y="638" /> @@ -30672,7 +30672,7 @@ INTERRUPTS <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="12177" > +<!-- CONNECTOR type="1501" id="12177" > <cdparam x="227" y="425" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -30705,7 +30705,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="12179" > <cdparam x="294" y="339" /> @@ -30749,7 +30749,7 @@ INTERRUPTS <P2 x="468" y="454" id="12144" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="12183" > +<!-- CONNECTOR type="1501" id="12183" > <cdparam x="334" y="170" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -30764,7 +30764,7 @@ INTERRUPTS <P1 x="334" y="252" id="12115" /> <P2 x="334" y="314" id="12052" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="12185" > <cdparam x="343" y="93" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -30781,7 +30781,7 @@ INTERRUPTS <P2 x="468" y="771" id="12155" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="12187" > +<!-- CONNECTOR type="1501" id="12187" > <cdparam x="552" y="464" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -30796,7 +30796,7 @@ INTERRUPTS <P1 x="468" y="573" id="12142" /> <P2 x="468" y="613" id="12036" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -32277,7 +32277,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="13092" /> </COMPONENT> -<COMPONENT type="1508" id="13098" > +<!-- COMPONENT type="1508" id="13098" > <cdparam x="272" y="204" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -32287,7 +32287,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="13095" /> <TGConnectingPoint num="2" id="13096" /> <TGConnectingPoint num="3" id="13097" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="13109" > <cdparam x="225" y="116" /> @@ -32342,7 +32342,7 @@ INTERRUPTS <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="13119" > +<!-- CONNECTOR type="1501" id="13119" > <cdparam x="182" y="390" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -32375,7 +32375,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="13120" > <cdparam x="287" y="339" /> @@ -32393,7 +32393,7 @@ INTERRUPTS <P2 x="287" y="111" id="13099" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="13122" > +<!-- CONNECTOR type="1501" id="13122" > <cdparam x="287" y="156" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -32408,7 +32408,7 @@ INTERRUPTS <P1 x="287" y="234" id="13097" /> <P2 x="287" y="274" id="13070" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -32779,7 +32779,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="13360" /> </COMPONENT> -<COMPONENT type="1508" id="13366" > +<!-- COMPONENT type="1508" id="13366" > <cdparam x="268" y="197" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -32789,7 +32789,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="13363" /> <TGConnectingPoint num="2" id="13364" /> <TGConnectingPoint num="3" id="13365" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="13377" > <cdparam x="221" y="109" /> @@ -32844,7 +32844,7 @@ INTERRUPTS <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="13387" > +<!-- CONNECTOR type="1501" id="13387" > <cdparam x="178" y="383" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -32877,7 +32877,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="13388" > <cdparam x="283" y="332" /> @@ -32895,7 +32895,7 @@ INTERRUPTS <P2 x="283" y="104" id="13367" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="13390" > +<!-- CONNECTOR type="1501" id="13390" > <cdparam x="283" y="149" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -32910,7 +32910,7 @@ INTERRUPTS <P1 x="283" y="227" id="13365" /> <P2 x="283" y="267" id="13338" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -33263,7 +33263,7 @@ INTERRUPTS <infoparam name="guard 3" value="[ else ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="13623" > +<!-- COMPONENT type="1508" id="13623" > <cdparam x="260" y="185" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -33273,7 +33273,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="13620" /> <TGConnectingPoint num="2" id="13621" /> <TGConnectingPoint num="3" id="13622" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="13634" > <cdparam x="213" y="97" /> @@ -33329,7 +33329,7 @@ INTERRUPTS <TGConnectingPoint num="0" id="13648" /> </COMPONENT> -<CONNECTOR type="1501" id="13653" > +<!-- CONNECTOR type="1501" id="13653" > <cdparam x="170" y="371" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -33362,7 +33362,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="13655" > <cdparam x="235" y="280" /> @@ -33397,7 +33397,7 @@ INTERRUPTS <P2 x="275" y="92" id="13624" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="13658" > +<!-- CONNECTOR type="1501" id="13658" > <cdparam x="275" y="137" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -33412,7 +33412,7 @@ INTERRUPTS <P1 x="275" y="215" id="13622" /> <P2 x="275" y="255" id="13606" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> @@ -33823,7 +33823,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="13902" /> </COMPONENT> -<COMPONENT type="1508" id="13908" > +<!-- COMPONENT type="1508" id="13908" > <cdparam x="272" y="176" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -33833,7 +33833,7 @@ INTERRUPTS <TGConnectingPoint num="1" id="13905" /> <TGConnectingPoint num="2" id="13906" /> <TGConnectingPoint num="3" id="13907" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="13919" > <cdparam x="359" y="333" /> @@ -33871,7 +33871,7 @@ INTERRUPTS <TGConnectingPoint num="9" id="13929" /> </COMPONENT> -<CONNECTOR type="1501" id="13934" > +<!-- CONNECTOR type="1501" id="13934" > <cdparam x="180" y="379" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -33904,7 +33904,7 @@ INTERRUPTS <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="13936" > <cdparam x="247" y="293" /> @@ -33948,7 +33948,7 @@ INTERRUPTS <P2 x="421" y="403" id="13891" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="13940" > +<!-- CONNECTOR type="1501" id="13940" > <cdparam x="287" y="124" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -33963,7 +33963,7 @@ INTERRUPTS <P1 x="287" y="206" id="13907" /> <P2 x="287" y="268" id="13876" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="13942" > <cdparam x="296" y="47" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> diff --git a/modeling/modelsForTestingTTool/testCP.xml b/modeling/modelsForTestingTTool/testCP.xml index 6708dbc59e11af7fc5362d1436b3a2838e676520..0a7b71ff2f5e7a746f91a01f7d3b457bfe55f60e 100644 --- a/modeling/modelsForTestingTTool/testCP.xml +++ b/modeling/modelsForTestingTTool/testCP.xml @@ -1955,7 +1955,7 @@ <TGConnectingPoint num="9" id="1158" /> </COMPONENT> -<COMPONENT type="1508" id="1164" > +<!-- COMPONENT type="1508" id="1164" > <cdparam x="304" y="202" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -1965,7 +1965,7 @@ <TGConnectingPoint num="1" id="1161" /> <TGConnectingPoint num="2" id="1162" /> <TGConnectingPoint num="3" id="1163" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1175" > <cdparam x="122" y="359" /> @@ -2092,7 +2092,7 @@ <TGConnectingPoint num="9" id="1225" /> </COMPONENT> -<CONNECTOR type="1501" id="1230" > +<!-- CONNECTOR type="1501" id="1230" > <cdparam x="466" y="506" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Zama to junction1" value="null" /> @@ -2125,7 +2125,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1231" > <cdparam x="178" y="475" /> @@ -2193,7 +2193,7 @@ <P2 x="319" y="91" id="1203" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1239" > +<!-- CONNECTOR type="1501" id="1239" > <cdparam x="319" y="136" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from lala to junction1" value="null" /> @@ -2208,7 +2208,7 @@ <P1 x="319" y="232" id="1163" /> <P2 x="319" y="288" id="1190" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="1241" > <cdparam x="319" y="488" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -2290,7 +2290,7 @@ <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="1266" > +<!-- COMPONENT type="1508" id="1266" > <cdparam x="755" y="345" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2300,7 +2300,7 @@ <TGConnectingPoint num="1" id="1263" /> <TGConnectingPoint num="2" id="1264" /> <TGConnectingPoint num="3" id="1265" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1277" > <cdparam x="884" y="503" /> @@ -2378,7 +2378,7 @@ <TGConnectingPoint num="13" id="1313" /> </COMPONENT> -<COMPONENT type="1508" id="1319" > +<!-- COMPONENT type="1508" id="1319" > <cdparam x="298" y="342" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2388,7 +2388,7 @@ <TGConnectingPoint num="1" id="1316" /> <TGConnectingPoint num="2" id="1317" /> <TGConnectingPoint num="3" id="1318" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1500" id="1335" > <cdparam x="298" y="429" /> @@ -2569,7 +2569,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1395" > +<!-- CONNECTOR type="1501" id="1395" > <cdparam x="946" y="543" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ExecuteTransfer2 to junction5" value="null" /> @@ -2602,7 +2602,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1397" > <cdparam x="810" y="452" /> @@ -2621,7 +2621,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1398" > +<!-- CONNECTOR type="1501" id="1398" > <cdparam x="770" y="375" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from junction5 to choice5" value="null" /> @@ -2670,7 +2670,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1405" > <cdparam x="273" y="444" /> @@ -2689,7 +2689,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1406" > +<!-- CONNECTOR type="1501" id="1406" > <cdparam x="313" y="372" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from junction2 to choice2" value="null" /> @@ -2704,7 +2704,7 @@ <P1 x="313" y="294" id="1376" /> <P2 x="313" y="342" id="1315" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="1408" > <cdparam x="556" y="182" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -2830,7 +2830,7 @@ <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="1456" > +<!-- COMPONENT type="1508" id="1456" > <cdparam x="797" y="201" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2840,7 +2840,7 @@ <TGConnectingPoint num="1" id="1453" /> <TGConnectingPoint num="2" id="1454" /> <TGConnectingPoint num="3" id="1455" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1467" > <cdparam x="756" y="89" /> @@ -2940,7 +2940,7 @@ <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="1510" > +<!-- COMPONENT type="1508" id="1510" > <cdparam x="315" y="188" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2950,7 +2950,7 @@ <TGConnectingPoint num="1" id="1507" /> <TGConnectingPoint num="2" id="1508" /> <TGConnectingPoint num="3" id="1509" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1521" > <cdparam x="274" y="91" /> @@ -2979,7 +2979,7 @@ <TGConnectingPoint num="0" id="1522" /> </COMPONENT> -<CONNECTOR type="1501" id="1527" > +<!-- CONNECTOR type="1501" id="1527" > <cdparam x="205" y="382" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ExecuteTransfer3 to junction6" value="null" /> @@ -3012,7 +3012,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1529" > <cdparam x="290" y="291" /> @@ -3092,14 +3092,14 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1537" > +<!-- CONNECTOR type="1501" id="1537" > <cdparam x="330" y="131" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ProgramTransfer3 to junction6" value="null" /> <P1 x="330" y="131" id="1512" /> <P2 x="330" y="188" id="1506" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="1538" > <cdparam x="330" y="45" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -3108,7 +3108,7 @@ <P2 x="330" y="86" id="1511" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1542" > +<!-- CONNECTOR type="1501" id="1542" > <cdparam x="979" y="404" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ExecuteTransfer4 to junction7" value="null" /> @@ -3141,7 +3141,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1544" > <cdparam x="852" y="300" /> @@ -3177,7 +3177,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1547" > +<!-- CONNECTOR type="1501" id="1547" > <cdparam x="812" y="231" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from junction7 to choice7" value="null" /> @@ -3192,7 +3192,7 @@ <P1 x="812" y="129" id="1458" /> <P2 x="812" y="201" id="1452" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="1549" > <cdparam x="702" y="402" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -3201,14 +3201,14 @@ <P2 x="702" y="444" id="1412" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1550" > +<!-- CONNECTOR type="1501" id="1550" > <cdparam x="330" y="218" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from junction6 to choice6" value="null" /> <P1 x="330" y="218" id="1509" /> <P2 x="330" y="266" id="1493" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> diff --git a/modeling/modelsForTestingTTool/testCP2.xml b/modeling/modelsForTestingTTool/testCP2.xml index 6bda7a93bfdb78ed625cb2ee83577f6ce1bf2bd1..6dac72745dfdbfa089ef9cc0fa322b2f8ae843ed 100644 --- a/modeling/modelsForTestingTTool/testCP2.xml +++ b/modeling/modelsForTestingTTool/testCP2.xml @@ -1953,7 +1953,7 @@ <TGConnectingPoint num="9" id="1135" /> </COMPONENT> -<COMPONENT type="1508" id="1141" > +<!-- COMPONENT type="1508" id="1141" > <cdparam x="304" y="202" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -1963,7 +1963,7 @@ <TGConnectingPoint num="1" id="1138" /> <TGConnectingPoint num="2" id="1139" /> <TGConnectingPoint num="3" id="1140" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1152" > <cdparam x="122" y="359" /> @@ -2090,7 +2090,7 @@ <TGConnectingPoint num="9" id="1202" /> </COMPONENT> -<CONNECTOR type="1501" id="1207" > +<!-- CONNECTOR type="1501" id="1207" > <cdparam x="466" y="506" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Zama to junction1" value="null" /> @@ -2123,7 +2123,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1208" > <cdparam x="178" y="475" /> @@ -2191,7 +2191,7 @@ <P2 x="319" y="91" id="1180" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1216" > +<!-- CONNECTOR type="1501" id="1216" > <cdparam x="319" y="136" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from lala to junction1" value="null" /> @@ -2206,7 +2206,7 @@ <P1 x="319" y="232" id="1140" /> <P2 x="319" y="288" id="1167" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="1218" > <cdparam x="319" y="488" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -2288,7 +2288,7 @@ <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="1243" > +<!-- COMPONENT type="1508" id="1243" > <cdparam x="755" y="345" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2298,7 +2298,7 @@ <TGConnectingPoint num="1" id="1240" /> <TGConnectingPoint num="2" id="1241" /> <TGConnectingPoint num="3" id="1242" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1254" > <cdparam x="890" y="503" /> @@ -2376,7 +2376,7 @@ <TGConnectingPoint num="13" id="1290" /> </COMPONENT> -<COMPONENT type="1508" id="1296" > +<!-- COMPONENT type="1508" id="1296" > <cdparam x="298" y="342" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2386,7 +2386,7 @@ <TGConnectingPoint num="1" id="1293" /> <TGConnectingPoint num="2" id="1294" /> <TGConnectingPoint num="3" id="1295" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1500" id="1312" > <cdparam x="298" y="429" /> @@ -2567,7 +2567,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1372" > +<!-- CONNECTOR type="1501" id="1372" > <cdparam x="946" y="543" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ExecuteTransfer2 to junction5" value="null" /> @@ -2600,7 +2600,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1374" > <cdparam x="810" y="452" /> @@ -2619,7 +2619,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1375" > +<!-- CONNECTOR type="1501" id="1375" > <cdparam x="770" y="375" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from junction5 to choice5" value="null" /> @@ -2668,7 +2668,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1382" > <cdparam x="273" y="444" /> @@ -2687,7 +2687,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1383" > +<!-- CONNECTOR type="1501" id="1383" > <cdparam x="313" y="372" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from junction2 to choice2" value="null" /> @@ -2702,7 +2702,7 @@ <P1 x="313" y="294" id="1353" /> <P2 x="313" y="342" id="1292" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="1385" > <cdparam x="556" y="182" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -2828,7 +2828,7 @@ <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="1433" > +<!-- COMPONENT type="1508" id="1433" > <cdparam x="797" y="201" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2838,7 +2838,7 @@ <TGConnectingPoint num="1" id="1430" /> <TGConnectingPoint num="2" id="1431" /> <TGConnectingPoint num="3" id="1432" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1444" > <cdparam x="756" y="89" /> @@ -2938,7 +2938,7 @@ <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="1487" > +<!-- COMPONENT type="1508" id="1487" > <cdparam x="315" y="188" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2948,7 +2948,7 @@ <TGConnectingPoint num="1" id="1484" /> <TGConnectingPoint num="2" id="1485" /> <TGConnectingPoint num="3" id="1486" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="1498" > <cdparam x="274" y="91" /> @@ -2977,7 +2977,7 @@ <TGConnectingPoint num="0" id="1499" /> </COMPONENT> -<CONNECTOR type="1501" id="1504" > +<!-- CONNECTOR type="1501" id="1504" > <cdparam x="205" y="382" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ExecuteTransfer3 to junction6" value="null" /> @@ -3010,7 +3010,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1506" > <cdparam x="290" y="291" /> @@ -3090,14 +3090,14 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1514" > +<!-- CONNECTOR type="1501" id="1514" > <cdparam x="330" y="131" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ProgramTransfer3 to junction6" value="null" /> <P1 x="330" y="131" id="1489" /> <P2 x="330" y="188" id="1483" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="1515" > <cdparam x="330" y="45" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -3106,7 +3106,7 @@ <P2 x="330" y="86" id="1488" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1519" > +<!-- CONNECTOR type="1501" id="1519" > <cdparam x="979" y="404" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ExecuteTransfer4 to junction7" value="null" /> @@ -3139,7 +3139,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="1521" > <cdparam x="852" y="300" /> @@ -3175,7 +3175,7 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="1524" > +<!-- CONNECTOR type="1501" id="1524" > <cdparam x="812" y="231" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from junction7 to choice7" value="null" /> @@ -3190,7 +3190,7 @@ <P1 x="812" y="129" id="1435" /> <P2 x="812" y="201" id="1429" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="1526" > <cdparam x="702" y="402" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -3199,14 +3199,14 @@ <P2 x="702" y="444" id="1389" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="1527" > +<!-- CONNECTOR type="1501" id="1527" > <cdparam x="330" y="218" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from junction6 to choice6" value="null" /> <P1 x="330" y="218" id="1486" /> <P2 x="330" y="266" id="1470" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> diff --git a/modeling/modelsForTestingTTool/testCP3.xml b/modeling/modelsForTestingTTool/testCP3.xml index 457d7b6261bc484a5f5a86184074ce766e4351e6..d37993f618e37bf518de55a88b1f2535f6b1068c 100644 --- a/modeling/modelsForTestingTTool/testCP3.xml +++ b/modeling/modelsForTestingTTool/testCP3.xml @@ -928,7 +928,7 @@ <TGConnectingPoint num="9" id="386" /> </COMPONENT> -<COMPONENT type="1508" id="392" > +<!-- COMPONENT type="1508" id="392" > <cdparam x="302" y="198" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -938,7 +938,7 @@ <TGConnectingPoint num="1" id="389" /> <TGConnectingPoint num="2" id="390" /> <TGConnectingPoint num="3" id="391" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="403" > <cdparam x="114" y="497" /> @@ -1065,14 +1065,14 @@ <TGConnectingPoint num="9" id="453" /> </COMPONENT> -<CONNECTOR type="1501" id="455" > +<!-- CONNECTOR type="1501" id="455" > <cdparam x="319" y="232" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> <P1 x="317" y="228" id="391" /> <P2 x="317" y="252" id="340" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="456" > <cdparam x="160" y="280" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -1081,7 +1081,7 @@ <P2 x="317" y="426" id="418" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="460" > +<!-- CONNECTOR type="1501" id="460" > <cdparam x="466" y="506" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Zama to junction1" value="null" /> @@ -1114,7 +1114,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="461" > <cdparam x="176" y="613" /> @@ -1182,14 +1182,14 @@ <P2 x="317" y="87" id="431" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="469" > +<!-- CONNECTOR type="1501" id="469" > <cdparam x="317" y="132" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from lala to junction1" value="null" /> <P1 x="317" y="132" id="432" /> <P2 x="317" y="198" id="388" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="470" > <cdparam x="317" y="626" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -1323,7 +1323,7 @@ <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="518" > +<!-- COMPONENT type="1508" id="518" > <cdparam x="797" y="201" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -1333,7 +1333,7 @@ <TGConnectingPoint num="1" id="515" /> <TGConnectingPoint num="2" id="516" /> <TGConnectingPoint num="3" id="517" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="529" > <cdparam x="750" y="89" /> @@ -1433,7 +1433,7 @@ <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="572" > +<!-- COMPONENT type="1508" id="572" > <cdparam x="315" y="188" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -1443,7 +1443,7 @@ <TGConnectingPoint num="1" id="569" /> <TGConnectingPoint num="2" id="570" /> <TGConnectingPoint num="3" id="571" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="583" > <cdparam x="268" y="91" /> @@ -1472,7 +1472,7 @@ <TGConnectingPoint num="0" id="584" /> </COMPONENT> -<CONNECTOR type="1501" id="589" > +<!-- CONNECTOR type="1501" id="589" > <cdparam x="979" y="404" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="null" /> @@ -1505,9 +1505,9 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> -<CONNECTOR type="1501" id="593" > +<!-- CONNECTOR type="1501" id="593" > <cdparam x="205" y="382" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ExecuteTransfer3 to junction6" value="null" /> @@ -1540,7 +1540,7 @@ <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> -</SUBCOMPONENT> +</SUBCOMPONENT--> <CONNECTOR type="1501" id="595" > <cdparam x="290" y="291" /> @@ -1620,14 +1620,14 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="1501" id="603" > +<!-- CONNECTOR type="1501" id="603" > <cdparam x="330" y="131" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ProgramTransfer3 to junction6" value="null" /> <P1 x="330" y="131" id="574" /> <P2 x="330" y="188" id="568" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="604" > <cdparam x="330" y="45" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -1678,14 +1678,14 @@ <P2 x="812" y="275" id="501" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="610" > +<!-- CONNECTOR type="1501" id="610" > <cdparam x="812" y="129" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from ProgramTransfer4 to junction7" value="null" /> <P1 x="812" y="129" id="520" /> <P2 x="812" y="201" id="514" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> <CONNECTOR type="1501" id="611" > <cdparam x="702" y="402" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> @@ -1694,14 +1694,14 @@ <P2 x="702" y="444" id="474" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="1501" id="612" > +<!-- CONNECTOR type="1501" id="612" > <cdparam x="330" y="218" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from junction6 to choice6" value="null" /> <P1 x="330" y="218" id="571" /> <P2 x="330" y="266" id="555" /> <AutomaticDrawing data="true" /> -</CONNECTOR> +</CONNECTOR--> </CommunicationPatternDiagramPanel> diff --git a/src/main/java/avatartranslator/AvatarState.java b/src/main/java/avatartranslator/AvatarState.java index 3dc8238c19c2d8dc7fa70564dbf8f0ae84d412c2..13702fb6ca968e817b732758f73aada713c91fa2 100644 --- a/src/main/java/avatartranslator/AvatarState.java +++ b/src/main/java/avatartranslator/AvatarState.java @@ -89,7 +89,6 @@ public class AvatarState extends AvatarStateElement { checkLatency = b; } - public int hasEmptyTransitionsOnItself(AvatarStateMachine _asm) { AvatarTransition at; int cpt = 0; diff --git a/src/main/java/ui/AbstractCDElement.java b/src/main/java/ui/AbstractCDElement.java new file mode 100644 index 0000000000000000000000000000000000000000..afd37aeedc40af60a30811e394202b36c919fa2e --- /dev/null +++ b/src/main/java/ui/AbstractCDElement.java @@ -0,0 +1,79 @@ +package ui; + +public abstract class AbstractCDElement implements CDElement { + + private boolean enabled; + + protected AbstractCDElement() { + enabled = true; + } + + /** + * Issue #69 + * @param _enabled + */ + @Override + public void setEnabled( final boolean _enabled ) { + doSetEnabled( _enabled ); + } + + /** + * Issue #69 + * @param _enabled + */ + @Override + public void doSetEnabled( final boolean _enabled ) { + enabled = _enabled; + } + + @Override + public boolean isEnabled() { + return enabled; + } + + @Override + public boolean isEnabled( boolean checkBranch ) { + return isEnabled(); + } + + /** + * Issue #69 + * @return + */ + @Override + public boolean canBeDisabled() { + return false; + } + + /** + * Issue #69 + * @return + */ + @Override + public boolean canLabelBeDisabled( TGCOneLineText label ) { + return false; + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#acceptForward(ui.ICDElementVisitor) + */ + @Override + public void acceptForward( final ICDElementVisitor visitor ) { + visitor.visit( this ); + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#acceptBackward(ui.ICDElementVisitor) + */ + @Override + public void acceptBackward( final ICDElementVisitor visitor ) { + visitor.visit( this ); + } +// +// @Override +// public boolean isFullDisabler() { +// return false; +// } +} diff --git a/src/main/java/ui/ActionPerformer.java b/src/main/java/ui/ActionPerformer.java index e5ace4879d4f47b74d379b37d23cca72133bfead..69831a95f2182b484e4e973f383a503c54c50c57 100644 --- a/src/main/java/ui/ActionPerformer.java +++ b/src/main/java/ui/ActionPerformer.java @@ -367,8 +367,8 @@ public class ActionPerformer { mgui.actionOnButton(TGComponentManager.COMPONENT, TGComponentManager.AVATARSMD_RECEIVE_SIGNAL); } else if (command.equals(mgui.actions[TGUIAction.ASMD_LIBRARY_FUNCTION_CALL].getActionCommand())) { mgui.actionOnButton(TGComponentManager.COMPONENT, TGComponentManager.AVATARSMD_LIBRARY_FUNCTION_CALL); - } else if (command.equals(mgui.actions[TGUIAction.ASMD_PARALLEL].getActionCommand())) { - mgui.actionOnButton(TGComponentManager.COMPONENT, TGComponentManager.AVATARSMD_PARALLEL); +// Issue #69 } else if (command.equals(mgui.actions[TGUIAction.ASMD_PARALLEL].getActionCommand())) { +// mgui.actionOnButton(TGComponentManager.COMPONENT, TGComponentManager.AVATARSMD_PARALLEL); } else if (command.equals(mgui.actions[TGUIAction.ASMD_STATE].getActionCommand())) { mgui.actionOnButton(TGComponentManager.COMPONENT, TGComponentManager.AVATARSMD_STATE); } else if (command.equals(mgui.actions[TGUIAction.ASMD_CHOICE].getActionCommand())) { diff --git a/src/main/java/ui/ActivityDiagram2TMLTranslator.java b/src/main/java/ui/ActivityDiagram2TMLTranslator.java new file mode 100644 index 0000000000000000000000000000000000000000..73dacbb477b7a2d03b8c797a0703b7dc2daffb8c --- /dev/null +++ b/src/main/java/ui/ActivityDiagram2TMLTranslator.java @@ -0,0 +1,965 @@ +package ui; + +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.Vector; + +import myutil.Conversion; +import myutil.TraceManager; +import tmltranslator.SecurityPattern; +import tmltranslator.TMLActionState; +import tmltranslator.TMLActivity; +import tmltranslator.TMLActivityElement; +import tmltranslator.TMLAttribute; +import tmltranslator.TMLChannel; +import tmltranslator.TMLCheckingError; +import tmltranslator.TMLChoice; +import tmltranslator.TMLDelay; +import tmltranslator.TMLEvent; +import tmltranslator.TMLExecC; +import tmltranslator.TMLExecCInterval; +import tmltranslator.TMLExecI; +import tmltranslator.TMLExecIInterval; +import tmltranslator.TMLForLoop; +import tmltranslator.TMLJunction; +import tmltranslator.TMLModeling; +import tmltranslator.TMLNotifiedEvent; +import tmltranslator.TMLRandom; +import tmltranslator.TMLRandomSequence; +import tmltranslator.TMLReadChannel; +import tmltranslator.TMLRequest; +import tmltranslator.TMLSelectEvt; +import tmltranslator.TMLSendEvent; +import tmltranslator.TMLSendRequest; +import tmltranslator.TMLSequence; +import tmltranslator.TMLStartState; +import tmltranslator.TMLStopState; +import tmltranslator.TMLTask; +import tmltranslator.TMLType; +import tmltranslator.TMLWaitEvent; +import tmltranslator.TMLWriteChannel; +import translator.CheckingError; +import ui.tmlad.TMLADActionState; +import ui.tmlad.TMLADChoice; +import ui.tmlad.TMLADDecrypt; +import ui.tmlad.TMLADDelay; +import ui.tmlad.TMLADDelayInterval; +import ui.tmlad.TMLADEncrypt; +import ui.tmlad.TMLADExecC; +import ui.tmlad.TMLADExecCInterval; +import ui.tmlad.TMLADExecI; +import ui.tmlad.TMLADExecIInterval; +import ui.tmlad.TMLADForEverLoop; +import ui.tmlad.TMLADForLoop; +import ui.tmlad.TMLADForStaticLoop; +import ui.tmlad.TMLADNotifiedEvent; +import ui.tmlad.TMLADRandom; +import ui.tmlad.TMLADReadChannel; +import ui.tmlad.TMLADReadRequestArg; +import ui.tmlad.TMLADSelectEvt; +import ui.tmlad.TMLADSendEvent; +import ui.tmlad.TMLADSendRequest; +import ui.tmlad.TMLADSequence; +import ui.tmlad.TMLADStartState; +import ui.tmlad.TMLADStopState; +import ui.tmlad.TMLADUnorderedSequence; +import ui.tmlad.TMLADWaitEvent; +import ui.tmlad.TMLADWriteChannel; +import ui.tmlad.TMLActivityDiagramPanel; + +public class ActivityDiagram2TMLTranslator { + + public static final ActivityDiagram2TMLTranslator INSTANCE = new ActivityDiagram2TMLTranslator(); + + private ActivityDiagram2TMLTranslator() { + } + + public void generateTaskActivityDiagrams( final TMLTask tmltask, + final List<CheckingError> checkingErrors, + final List<CheckingError> warnings, + final CorrespondanceTGElement corrTgElement, + final TMLModeling<TGComponent> tmlm, + final Map<String, SecurityPattern> securityPatterns, + final Map<String, String> table, + final List<String> removedChannels, + final List<String> removedEvents, + final List<String> removedRequests ) + throws MalformedTMLDesignException { + TMLActivity activity = tmltask.getActivityDiagram(); + TMLActivityDiagramPanel tadp = (TMLActivityDiagramPanel)(activity.getReferenceObject()); + + TraceManager.addDev( "Generating activity diagram of: " + tmltask.getName()); + + // search for start state + List<TGComponent> list = tadp.getComponentList(); + Iterator<TGComponent> iterator = list.listIterator(); + TGComponent tgc; + TMLADStartState tss = null; + int cptStart = 0; + // boolean rndAdded = false; + + while(iterator.hasNext()) { + tgc = iterator.next(); + + if (tgc instanceof TMLADStartState) { + tss = (TMLADStartState) tgc; + cptStart ++; + } + } + + if (tss == null) { + TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "No start state in the TML activity diagram of " + tmltask.getName()); + ce.setTMLTask(tmltask); + checkingErrors.add(ce); + return; + } + + if (cptStart > 1) { + TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "More than one start state in the TML activity diagram of " + tmltask.getName()); + ce.setTMLTask(tmltask); + checkingErrors.add(ce); + return; + } + + // Adding start state + TMLStartState tmlss = new TMLStartState("start", tss); + corrTgElement.addCor(tmlss, tss); + activity.setFirst(tmlss); + + // Creation of other elements + TMLChannel channel; + String [] channels; + TMLEvent event; + TMLRequest request; + + TMLADRandom tmladrandom; + TMLRandom tmlrandom; + TMLActionState tmlaction; + TMLChoice tmlchoice; + TMLExecI tmlexeci; + TMLExecIInterval tmlexecii; + TMLExecC tmlexecc; + TMLExecCInterval tmlexecci; + TMLForLoop tmlforloop; + TMLReadChannel tmlreadchannel; + TMLSendEvent tmlsendevent; + TMLSendRequest tmlsendrequest; + TMLStopState tmlstopstate; + TMLWaitEvent tmlwaitevent; + TMLNotifiedEvent tmlnotifiedevent; + TMLWriteChannel tmlwritechannel; + TMLSequence tmlsequence; + TMLRandomSequence tmlrsequence; + TMLSelectEvt tmlselectevt; + TMLDelay tmldelay; + int staticLoopIndex = 0; + String sl = "", tmp; + TMLType tt; + TMLAttribute tmlt; + + iterator = list.listIterator(); + while(iterator.hasNext()) { + tgc = iterator.next(); + // Issue #69: Manage component enablement + if ( tgc.isEnabled() ) { + if (tgc.getCheckLatency()){ + String name = tmltask.getName() + ":" + tgc.getName(); + name = name.replaceAll(" ",""); + //TraceManager.addDev("To check " + name); + if (tgc.getValue().contains("(")) { + tmlm.addCheckedActivity(tgc, name + ":" + tgc.getValue().split("\\(")[0]); + } else { + if (tgc instanceof TMLADExecI) { + tmlm.addCheckedActivity(tgc, ((TMLADExecI) tgc).getDelayValue()); + } + } + } + if (tgc instanceof TMLADActionState) { + tmlaction = new TMLActionState("action", tgc); + tmp = ((TMLADActionState)(tgc)).getAction(); + tmp = modifyActionString(tmp); + tmlaction.setAction(tmp); + activity.addElement(tmlaction); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlaction, tgc); + + } else if (tgc instanceof TMLADRandom) { + tmladrandom = (TMLADRandom)tgc; + tmlrandom = new TMLRandom("random" + tmladrandom.getValue(), tgc); + tmp = tmladrandom.getVariable(); + tmp = modifyActionString(tmp); + tmlrandom.setVariable(tmp); + tmp = tmladrandom.getMinValue(); + tmp = modifyActionString(tmp); + tmlrandom.setMinValue(tmp); + tmp = tmladrandom.getMaxValue(); + tmp = modifyActionString(tmp); + tmlrandom.setMaxValue(tmp); + tmlrandom.setFunctionId(tmladrandom.getFunctionId()); + activity.addElement(tmlrandom); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlrandom, tgc); + + } else if (tgc instanceof TMLADChoice) { + tmlchoice = new TMLChoice("choice", tgc); + // Guards are added at the same time as next activities + activity.addElement(tmlchoice); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlchoice, tgc); + + } else if (tgc instanceof TMLADSelectEvt) { + tmlselectevt = new TMLSelectEvt("select", tgc); + activity.addElement(tmlselectevt); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlselectevt, tgc); + + } else if (tgc instanceof TMLADExecI) { + tmlexeci = new TMLExecI("execi", tgc); + tmlexeci.setAction(modifyString(((TMLADExecI)tgc).getDelayValue())); + tmlexeci.setValue(((TMLADExecI)tgc).getDelayValue()); + activity.addElement(tmlexeci); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlexeci, tgc); + + } else if (tgc instanceof TMLADExecIInterval) { + tmlexecii = new TMLExecIInterval("execi", tgc); + tmlexecii.setValue(tgc.getValue()); + tmlexecii.setMinDelay(modifyString(((TMLADExecIInterval)tgc).getMinDelayValue())); + tmlexecii.setMaxDelay(modifyString(((TMLADExecIInterval)tgc).getMaxDelayValue())); + activity.addElement(tmlexecii); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlexecii, tgc); + + } else if (tgc instanceof TMLADEncrypt) { + tmlexecc = new TMLExecC("encrypt_"+((TMLADEncrypt)tgc).securityContext, tgc); + activity.addElement(tmlexecc); + SecurityPattern sp = securityPatterns.get(((TMLADEncrypt)tgc).securityContext); + if (sp ==null){ + //Throw error for missing security pattern + UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADEncrypt)tgc).securityContext + " not found"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } + else { + tmlexecc.securityPattern = sp; + tmlexecc.setAction(Integer.toString(sp.encTime)); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + tmlm.securityTaskMap.get(sp).add(tmltask); + corrTgElement.addCor(tmlexecc, tgc); + } + } else if (tgc instanceof TMLADDecrypt) { + tmlexecc = new TMLExecC("decrypt_"+((TMLADDecrypt)tgc).securityContext, tgc); + activity.addElement(tmlexecc); + SecurityPattern sp = securityPatterns.get(((TMLADDecrypt)tgc).securityContext); + if (sp ==null){ + //Throw error for missing security pattern + UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADDecrypt)tgc).securityContext + " not found"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } + else { + tmlexecc.securityPattern = sp; + tmlexecc.setAction(Integer.toString(sp.decTime)); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlexecc, tgc); + tmlm.securityTaskMap.get(sp).add(tmltask); + } + + } else if (tgc instanceof TMLADExecC) { + tmlexecc = new TMLExecC("execc", tgc); + tmlexecc.setValue(((TMLADExecC)tgc).getDelayValue()); + tmlexecc.setAction(modifyString(((TMLADExecC)tgc).getDelayValue())); + activity.addElement(tmlexecc); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlexecc, tgc); + + } else if (tgc instanceof TMLADExecCInterval) { + tmlexecci = new TMLExecCInterval("execci", tgc); + tmlexecci.setMinDelay(modifyString(((TMLADExecCInterval)tgc).getMinDelayValue())); + tmlexecci.setMaxDelay(modifyString(((TMLADExecCInterval)tgc).getMaxDelayValue())); + activity.addElement(tmlexecci); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlexecci, tgc); + + } else if (tgc instanceof TMLADDelay) { + tmldelay = new TMLDelay("d-delay", tgc); + tmldelay.setMinDelay(modifyString(((TMLADDelay)tgc).getDelayValue())); + tmldelay.setMaxDelay(modifyString(((TMLADDelay)tgc).getDelayValue())); + tmldelay.setUnit(((TMLADDelay)tgc).getUnit()); + activity.addElement(tmldelay); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmldelay, tgc); + + } else if (tgc instanceof TMLADDelayInterval) { + tmldelay = new TMLDelay("nd-delay", tgc); + tmldelay.setMinDelay(modifyString(((TMLADDelayInterval)tgc).getMinDelayValue())); + tmldelay.setMaxDelay(modifyString(((TMLADDelayInterval)tgc).getMaxDelayValue())); + tmldelay.setUnit(((TMLADDelayInterval)tgc).getUnit()); + activity.addElement(tmldelay); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmldelay, tgc); + + } else if (tgc instanceof TMLADForLoop) { + tmlforloop = new TMLForLoop("loop", tgc); + tmlforloop.setInit(modifyString(((TMLADForLoop)tgc).getInit())); + tmp = ((TMLADForLoop)tgc).getCondition(); + /*if (tmp.trim().length() == 0) { + tmp = "true"; + }*/ + tmlforloop.setCondition(modifyString(tmp)); + tmlforloop.setIncrement(modifyActionString(((TMLADForLoop)tgc).getIncrement())); + + activity.addElement(tmlforloop); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlforloop, tgc); + + } else if (tgc instanceof TMLADForStaticLoop) { + sl = "loop__" + staticLoopIndex; + tt = new TMLType(TMLType.NATURAL); + tmlt = new TMLAttribute(sl, tt); + tmlt.initialValue = "0"; + tmltask.addAttribute(tmlt); + tmlforloop = new TMLForLoop(sl, tgc); + tmlforloop.setInit(sl + " = 0"); + tmlforloop.setCondition(sl + "<" + modifyString(tgc.getValue())); + tmlforloop.setIncrement(sl + " = " + sl + " + 1"); + activity.addElement(tmlforloop); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlforloop, tgc); + staticLoopIndex++; + + } else if (tgc instanceof TMLADForEverLoop) { + /*sl = "loop__" + staticLoopIndex; + tt = new TMLType(TMLType.NATURAL); + tmlt = new TMLAttribute(sl, tt); + tmlt.initialValue = "0"; + tmltask.addAttribute(tmlt);*/ + tmlforloop = new TMLForLoop("infiniteloop", tgc); + tmlforloop.setInit(""); + tmlforloop.setCondition(""); + tmlforloop.setIncrement(""); + tmlforloop.setInfinite(true); + activity.addElement(tmlforloop); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlforloop, tgc); + staticLoopIndex++; + + tmlstopstate = new TMLStopState("Stop after infinite loop", null); + activity.addElement(tmlstopstate); + tmlforloop.addNext(tmlstopstate); + + } else if (tgc instanceof TMLADSequence) { + tmlsequence = new TMLSequence("seq", tgc); + activity.addElement(tmlsequence); + corrTgElement.addCor(tmlsequence, tgc); + + } else if (tgc instanceof TMLADUnorderedSequence) { + tmlrsequence = new TMLRandomSequence("rseq", tgc); + activity.addElement(tmlrsequence); + corrTgElement.addCor(tmlrsequence, tgc); + + } else if (tgc instanceof TMLADReadChannel) { + // Get the channel + //TMLADReadChannel rd = (TMLADReadChannel) tgc; + channel = tmlm.getChannelByName( getFromTable( tmltask, ((TMLADReadChannel)tgc).getChannelName(), table ) ); + /*if (rd.isAttacker()){ + channel = tmlm.getChannelByName(getAttackerChannel(((TMLADReadChannel)tgc).getChannelName())); + }*/ + if (channel == null) { + if (Conversion.containsStringInList(removedChannels, ((TMLADReadChannel)tgc).getChannelName())) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADReadChannel)tgc).getChannelName() + " has been removed because the corresponding channel is not taken into account"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + warnings.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + activity.addElement(new TMLJunction("void junction", tgc)); + } else { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADReadChannel)tgc).getChannelName() + " is an unknown channel"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + checkingErrors.add(ce); + } + + } else { + tmlreadchannel = new TMLReadChannel("read channel", tgc); + tmlreadchannel.setNbOfSamples(modifyString(((TMLADReadChannel)tgc).getSamplesValue())); + tmlreadchannel.setEncForm(((TMLADReadChannel) tgc).getEncForm()); + tmlreadchannel.addChannel(channel); + //security pattern + if (securityPatterns.get(((TMLADReadChannel)tgc).getSecurityContext())!=null){ + tmlreadchannel.securityPattern= securityPatterns.get(((TMLADReadChannel)tgc).getSecurityContext()); + //NbOfSamples will increase due to extra overhead from MAC + int cur=1; + try { + cur = Integer.valueOf(modifyString(((TMLADReadChannel)tgc).getSamplesValue())); + } catch(NumberFormatException e) { + } catch(NullPointerException e) { + } + int add = Integer.valueOf(tmlreadchannel.securityPattern.overhead); + if (!tmlreadchannel.securityPattern.nonce.equals("")){ + SecurityPattern nonce = securityPatterns.get(tmlreadchannel.securityPattern.nonce); + if (nonce!=null){ + add = Integer.valueOf(nonce.overhead); + } + } + cur = cur+ add; + tmlreadchannel.setNbOfSamples(Integer.toString(cur)); + } + else if (!((TMLADReadChannel)tgc).getSecurityContext().isEmpty()){ + //Throw error for missing security pattern + UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADReadChannel)tgc).getSecurityContext() + " not found"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } + if (tmltask.isAttacker()){ + tmlreadchannel.setAttacker(true); + } + activity.addElement(tmlreadchannel); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlreadchannel, tgc); + } + } else if (tgc instanceof TMLADSendEvent) { + event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADSendEvent)tgc).getEventName(), table )); + if (event == null) { + if (Conversion.containsStringInList(removedEvents, ((TMLADSendEvent)tgc).getEventName())) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendEvent)tgc).getEventName() + " has been removed because the corresponding event is not taken into account"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + warnings.add(ce); + activity.addElement(new TMLJunction("void junction", tgc)); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } else { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent)tgc).getEventName() + " is an unknown event"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } + } else { + tmlsendevent = new TMLSendEvent("send event", tgc); + tmlsendevent.setEvent(event); + + for(int i=0; i<((TMLADSendEvent)tgc).realNbOfParams(); i++) { + tmp = modifyString(((TMLADSendEvent)tgc).getRealParamValue(i)); + Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); + if (allVariables.size() > 0) { + for(int k=0; k<allVariables.size(); k++) { + //TraceManager.addDev("Adding record: " + allVariables.get(k)); + tmlsendevent.addParam(allVariables.get(k)); + } + } else { + //TraceManager.addDev("Adding param: " + tmp); + tmlsendevent.addParam(tmp); + } + } + if (event.getNbOfParams() != tmlsendevent.getNbOfParams()) { + TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " sendevent#:" + tmlsendevent.getNbOfParams()); + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent)tgc).getEventName() + ": wrong number of parameters"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } else { + activity.addElement(tmlsendevent); + corrTgElement.addCor(tmlsendevent, tgc); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + } + } + + } else if (tgc instanceof TMLADSendRequest) { + request = tmlm.getRequestByName(getFromTable(tmltask, ((TMLADSendRequest)tgc).getRequestName(), table ) ); + if (request == null) { + if (Conversion.containsStringInList(removedRequests, ((TMLADSendRequest)tgc).getRequestName())) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendRequest)tgc).getRequestName() + " has been removed because the corresponding request is not taken into account"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + warnings.add(ce); + activity.addElement(new TMLJunction("void junction", tgc)); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } else { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest)tgc).getRequestName() + " is an unknown request"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } + } else { + tmlsendrequest = new TMLSendRequest("send request", tgc); + tmlsendrequest.setRequest(request); + for(int i=0; i<((TMLADSendRequest)tgc).realNbOfParams(); i++) { + tmp = modifyString(((TMLADSendRequest)tgc).getRealParamValue(i)); + Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); + if (allVariables.size() > 0) { + for(int k=0; k<allVariables.size(); k++) { + //TraceManager.addDev("Adding record: " + allVariables.get(k)); + tmlsendrequest.addParam(allVariables.get(k)); + request.addParamName(allVariables.get(k)); + } + } else { + //TraceManager.addDev("Adding param: " + tmp); + tmlsendrequest.addParam(tmp); + request.addParamName(tmp); + } + } + if (request.getNbOfParams() != tmlsendrequest.getNbOfParams()) { + TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " sendrequest#:" + tmlsendrequest.getNbOfParams()); + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest)tgc).getRequestName() + ": wrong number of parameters"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } else { + activity.addElement(tmlsendrequest); + corrTgElement.addCor(tmlsendrequest, tgc); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + } + } + + } else if (tgc instanceof TMLADReadRequestArg) { + request = tmlm.getRequestToMe(tmltask); + if (request == null) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "This task is not requested: cannot use \"reading request arg\" operator"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } else { + tmlaction = new TMLActionState("action reading args", tgc); + String act = ""; + int cpt = 1; + for(int i=0; i<((TMLADReadRequestArg)tgc).realNbOfParams(); i++) { + tmp = modifyString(((TMLADReadRequestArg)tgc).getRealParamValue(i)); + Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); + + if (allVariables.size() > 0) { + for(int k=0; k<allVariables.size(); k++) { + //TraceManager.addDev("Adding record: " + allVariables.get(k)); + if (cpt != 1) { + act += "$"; + } + act += allVariables.get(k) + " = arg" + cpt + "__req"; + cpt ++; + } + } else { + //TraceManager.addDev("Adding param: " + tmp); + if (cpt != 1) { + act += "$"; + } + act += tmp + " = arg" + cpt + "__req"; + cpt ++; + } + } + if (request.getNbOfParams() != (cpt-1)) { + //TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " read request arg#:" + (cpt-1)); + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Wrong number of parameters in \"reading request arg\" operator"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } else { + //TraceManager.addDev("Adding action = " + act); + tmlaction.setAction(act); + activity.addElement(tmlaction); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlaction, tgc); + } + } + + } else if (tgc instanceof TMLADStopState) { + tmlstopstate = new TMLStopState("stop state", tgc); + activity.addElement(tmlstopstate); + corrTgElement.addCor(tmlstopstate, tgc); + + } else if (tgc instanceof TMLADNotifiedEvent) { + event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADNotifiedEvent)tgc).getEventName(), table ) ); + if (event == null) { + if( removedEvents.size() > 0 ) { + if (Conversion.containsStringInList(removedEvents, ((TMLADNotifiedEvent)tgc).getEventName())) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADNotifiedEvent)tgc).getEventName() + " has been removed because the corresponding event is not taken into account"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + warnings.add(ce); + activity.addElement(new TMLJunction("void junction", tgc)); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } else { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent)tgc).getEventName() + " is an unknown event"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } + } else { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent)tgc).getEventName() + " is an unknown event"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } + } else { + event.setNotified(true); + tmlnotifiedevent = new TMLNotifiedEvent("notified event", tgc); + tmlnotifiedevent.setEvent(event); + tmlnotifiedevent.setVariable(modifyString(((TMLADNotifiedEvent)tgc).getVariable())); + activity.addElement(tmlnotifiedevent); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlnotifiedevent, tgc); + } + + } else if (tgc instanceof TMLADWaitEvent) { + event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADWaitEvent)tgc).getEventName(), table ) ); + if (event == null) { + if( removedEvents.size() > 0 ) { + if (Conversion.containsStringInList(removedEvents, ((TMLADWaitEvent)tgc).getEventName())) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWaitEvent)tgc).getEventName() + " has been removed because the corresponding event is not taken into account"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + warnings.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + activity.addElement(new TMLJunction("void junction", tgc)); + } else { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent)tgc).getEventName() + " is an unknown event"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + checkingErrors.add(ce); + } + } else { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent)tgc).getEventName() + " is an unknown event"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + checkingErrors.add(ce); + } + } else { + //TraceManager.addDev("Nb of param of event:" + event.getNbOfParams()); + tmlwaitevent = new TMLWaitEvent("wait event", tgc); + tmlwaitevent.setEvent(event); + for(int i=0; i<((TMLADWaitEvent)tgc).realNbOfParams(); i++) { + tmp = modifyString(((TMLADWaitEvent)tgc).getRealParamValue(i)); + Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); + if (allVariables.size() > 0) { + for(int k=0; k<allVariables.size(); k++) { + //TraceManager.addDev("Adding record: " + allVariables.get(k)); + tmlwaitevent.addParam(allVariables.get(k)); + } + } else { + //TraceManager.addDev("Adding param: " + tmp); + tmlwaitevent.addParam(tmp); + } + } + if (event.getNbOfParams() != tmlwaitevent.getNbOfParams()) { + //TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " waitevent#:" + tmlwaitevent.getNbOfParams()); + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent)tgc).getEventName() + ": wrong number of parameters"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + } else { + activity.addElement(tmlwaitevent); + corrTgElement.addCor(tmlwaitevent, tgc); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + } + + } + + } else if (tgc instanceof TMLADWriteChannel) { + // Get channels + //TMLADWriteChannel wr = (TMLADWriteChannel) tgc; + channels = ((TMLADWriteChannel)tgc).getChannelsByName(); + boolean error = false; + for(int i=0; i<channels.length; i++) { + //TraceManager.addDev("Getting from table " + tmltask.getName() + "/" +channels[i]); + channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i], table ) ); + if (channel == null) { + if (Conversion.containsStringInList(removedChannels, ((TMLADWriteChannel)tgc).getChannelName(i))) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWriteChannel)tgc).getChannelName(i) + " has been removed because the corresponding channel is not taken into account"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + warnings.add(ce); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + activity.addElement(new TMLJunction("void junction", tgc)); + } else { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWriteChannel)tgc).getChannelName(i) + " is an unknown channel"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.UNKNOWN); + checkingErrors.add(ce); + } + error = true; + + } + } + if (!error) { + tmlwritechannel = new TMLWriteChannel("write channel", tgc); + tmlwritechannel.setNbOfSamples(modifyString(((TMLADWriteChannel)tgc).getSamplesValue())); + tmlwritechannel.setEncForm(((TMLADWriteChannel) tgc).getEncForm()); + + for(int i=0; i<channels.length; i++) { + channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i], table ) ); + tmlwritechannel.addChannel(channel); + } + //if (wr.isAttacker()){ + //channel = tmlm.getChannelByName(getAttackerChannel(channels[0])); + //tmlwritechannel.addChannel(channel); + //} + //add sec pattern + if (securityPatterns.get(((TMLADWriteChannel)tgc).getSecurityContext())!=null){ + tmlwritechannel.securityPattern= securityPatterns.get(((TMLADWriteChannel)tgc).getSecurityContext()); + int cur = Integer.valueOf(modifyString(((TMLADWriteChannel)tgc).getSamplesValue())); + int add = Integer.valueOf(tmlwritechannel.securityPattern.overhead); + if (!tmlwritechannel.securityPattern.nonce.equals("")){ + SecurityPattern nonce = securityPatterns.get(tmlwritechannel.securityPattern.nonce); + if (nonce!=null){ + add = Integer.valueOf(nonce.overhead); + } + } + cur = cur+ add; + tmlwritechannel.setNbOfSamples(Integer.toString(cur)); + } + else if (!((TMLADWriteChannel)tgc).getSecurityContext().isEmpty()){ + //Throw error for missing security pattern + UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADWriteChannel)tgc).getSecurityContext() + " not found"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } + if (tmltask.isAttacker()){ + tmlwritechannel.setAttacker(true); + } + activity.addElement(tmlwritechannel); + ((BasicErrorHighlight)tgc).setStateAction(ErrorHighlight.OK); + corrTgElement.addCor(tmlwritechannel, tgc); + } + } + } + } + + // Interconnection between elements + //TGConnectorTMLAD tgco; + //TGConnectingPoint p1, p2; + //TMLActivityElement ae1, ae2; + //TGComponent /*tgc1, tgc2,*/ tgc3; + //int j, index; + + final List<TGConnector> connectors = tadp.getConnectors(); + final Set<TGConnector> prunedConectors = new HashSet<TGConnector>(); + + for ( final TGConnector connector : connectors ) { + if ( !prunedConectors.contains( connector ) ) { + FindNextEnabledConnectingPointVisitor visitor = new FindNextEnabledConnectingPointVisitor( prunedConectors ); + connector.getTGConnectingPointP1().acceptBackward( visitor ); + final TGConnectingPoint conPoint1 = visitor.getEnabledComponentPoint(); + + if ( conPoint1 != null ) { + visitor = new FindNextEnabledConnectingPointVisitor( prunedConectors ); + connector.getTGConnectingPointP2().acceptForward( visitor ); + final TGConnectingPoint conPoint2 = visitor.getEnabledComponentPoint(); + + if ( conPoint2 != null ) { + final TGComponent compo1 = (TGComponent) conPoint1.getFather(); + final TGComponent compo2 = (TGComponent) conPoint2.getFather(); + + final TMLActivityElement ae1 = activity.findReferenceElement( compo1 ); + final TMLActivityElement ae2 = activity.findReferenceElement( compo2 ); + + //Special case if "for loop" or if "choice" + if (ae1 instanceof TMLForLoop) { + final int index = compo1.indexOf( conPoint1 ) - 1; + + if (index == 0) { + ae1.addNext( 0, ae2 ); + } + else { + ae1.addNext( ae2 ); + } + + } + else if (ae1 instanceof TMLChoice) { + //final int index = compo1.indexOf( conPoint1 ) - 1; + //TraceManager.addDev("Adding next:" + ae2); + ae1.addNext(ae2); + + final TMLADChoice choice = (TMLADChoice) compo1; + final TGCOneLineText guard = choice.getGuardForConnectingPoint( conPoint1 ); + ( (TMLChoice) ae1 ).addGuard( modifyString( choice.getEffectiveCondition( guard ) ) ); + } + else if (ae1 instanceof TMLSequence) { + final int index = compo1.indexOf( conPoint1 ) - 1; + ((TMLSequence)ae1).addIndex(index); + ae1.addNext(ae2); + //TraceManager.addDev("Adding " + ae2 + " at index " + index); + + } + else if (ae1 instanceof TMLRandomSequence) { + final int index = compo1.indexOf( conPoint1 ) - 1; + ((TMLRandomSequence)ae1).addIndex(index); + ae1.addNext(ae2); + } + else { + ae1.addNext(ae2); + } + } + } + } + } + + // Check that each "for" has two nexts + // Check that TMLChoice have compatible guards + // Check TML select evts + iterator = list.listIterator(); + while(iterator.hasNext()) { + tgc = iterator.next(); + + // Issue #69: Disabling of AD components + if ( tgc.isEnabled() ) { + if ((tgc instanceof TMLADForLoop) || (tgc instanceof TMLADForStaticLoop)) { + final TMLActivityElement ae1 = activity.findReferenceElement(tgc); + + if (ae1 != null) { + if (ae1.getNbNext() != 2) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted for loop: a loop must have an internal behavior, and an exit behavior "); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } + } + } + else if (tgc instanceof TMLADChoice) { + tmlchoice = (TMLChoice)(activity.findReferenceElement(tgc)); + tmlchoice.orderGuards(); + + int nbNonDeter = tmlchoice.nbOfNonDeterministicGuard(); + int nbStocha = tmlchoice.nbOfStochasticGuard(); + if ((nbNonDeter > 0) && (nbStocha > 0)) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic and stochastic guards"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } + int nb = Math.max(nbNonDeter, nbStocha); + if (nb > 0) { + nb = nb + tmlchoice.nbOfElseAndAfterGuards(); + if (nb != tmlchoice.getNbGuard()) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, UICheckingError.MESSAGE_CHOICE_BOTH_STOCHASTIC_DETERMINISTIC );//"Badly formatted choice: it has both non-determinitic/ stochastic and regular guards"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } + } + + //if (tmlchoice.nbOfNonDeterministicGuard() > 0) { + /*if (!rndAdded) { + TMLAttribute tmlt = new TMLAttribute("rnd__0", new TMLType(TMLType.NATURAL)); + tmlt.initialValue = ""; + tmltask.addAttribute(tmlt); + rndAdded = true; + }*/ + //} + if (tmlchoice.hasMoreThanOneElse()) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [else] guard"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } else if ( tmlchoice.getElseGuard() > -1 ) { + final int index = tmlchoice.getElseGuard(); + + if (index == 0) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have a regular guard"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } + } + if (tmlchoice.hasMoreThanOneAfter()) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [after] guard"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } + } + else if (tgc instanceof TMLADSelectEvt) { + tmlselectevt = (TMLSelectEvt)(activity.findReferenceElement(tgc)); + if (!tmlselectevt.isARealSelectEvt()) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "'Select events' should be followed by only event receiving operators"); + ce.setTDiagramPanel(tadp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + } + } + } + } + + // Sorting nexts elements of Sequence + for( int j=0; j<activity.nElements(); j++) { + final TMLActivityElement ae1 = activity.get(j); + + if (ae1 instanceof TMLSequence) { + ((TMLSequence)ae1).sortNexts(); + } + else if (ae1 instanceof TMLRandomSequence) { + ((TMLRandomSequence)ae1).sortNexts(); + } + } + + TraceManager.addDev( tmltask.getActivityDiagram().toXML() ); + } + + private String modifyActionString(String _input) { + int index = _input.indexOf("++"); + boolean b1, b2; + String tmp; + + if(index > -1) { + tmp = _input.substring(0, index).trim(); + + b1 = (tmp.substring(0,1)).matches("[a-zA-Z]"); + b2 = tmp.matches("\\w*"); + if (b1 && b2) { + return tmp + " = " + tmp + " + 1"; + } + } + + index = _input.indexOf("--"); + if(index > -1) { + tmp = _input.substring(0, index).trim(); + + b1 = (tmp.substring(0,1)).matches("[a-zA-Z]"); + b2 = tmp.matches("\\w*"); + if (b1 && b2) { + return tmp + " = " + tmp + " - 1"; + } + } + + return modifyString(_input); + } + + private String modifyString(String _input) { + return Conversion.replaceAllChar(_input, '.', "__"); + } + + private String getFromTable( final TMLTask task, + final String s, + final Map<String, String> table ) { + //TraceManager.addDev("TABLE GET: Getting from task=" + task.getName() + " element=" + s); + + if (table == null) { + return s; + } + + String ret = table.get(task.getName() + "/" + s); + //TraceManager.addDev("Returning=" + ret); + + if (ret == null) { + return s; + } + + return ret; + } +} diff --git a/src/main/java/ui/AvatarDesignPanelTranslator.java b/src/main/java/ui/AvatarDesignPanelTranslator.java index e440a89501499f03326d02efec5160cee35ee901..19f86b72de68de83f4d875110032d72427d8feb6 100644 --- a/src/main/java/ui/AvatarDesignPanelTranslator.java +++ b/src/main/java/ui/AvatarDesignPanelTranslator.java @@ -1267,51 +1267,61 @@ public class AvatarDesignPanelTranslator { ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true; } } + final AvatarStateMachineElement element; + final String name = "action_on_signal"; + + if ( asmdss.isEnabled() ) { + element = new AvatarActionOnSignal( name, atas, asmdss ); + + final AvatarActionOnSignal aaos = (AvatarActionOnSignal) element; + if (asmdss.hasCheckedAccessibility()) + aaos.setCheckable(); + + if (asmdss.hasCheckedAccessibility()) + aaos.setChecked(); + + if (aaos.isReceiving ()) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A receiving signal is used for sending: " + asmdss.getValue()); + + if (asmdss.getNbOfValues() == -1) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdss.getValue()); + + for(int i=0; i<asmdss.getNbOfValues(); i++) { + String tmp = asmdss.getValue(i); + if (tmp.isEmpty ()) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdss.getValue()); + + this.manageAttribute (tmp, _ab, aaos, tdp, asmdss, asmdss.getValue()); + } + + if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ()) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal sending: " + asmdss.getValue() + " -> nb of parameters does not match definition"); + + // Checking expressions passed as parameter + for (int i=0; i<aaos.getNbOfValues(); i++) { + String theVal = aaos.getValue(i); + if (atas.getListOfAttributes ().get (i).isInt ()) { + if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition"); + } else { + // We assume it is a bool attribute + if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition"); + } + } + + if (asmdss.getCheckLatency()){ + aaos.setCheckLatency( true ); + _as.checkedIDs.add(asmdss.getName()+"-"+ asmdss.getSignalName()+":"+aaos.getID()); + } + } + else { + element = new AvatarDummyState( name + ":" + atas.getName(), asmdss ); + } - AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdss); - if (asmdss.hasCheckedAccessibility()) - aaos.setCheckable(); - - if (asmdss.hasCheckedAccessibility()) - aaos.setChecked(); - - if (aaos.isReceiving ()) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A receiving signal is used for sending: " + asmdss.getValue()); - - if (asmdss.getNbOfValues() == -1) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdss.getValue()); - - for(int i=0; i<asmdss.getNbOfValues(); i++) { - String tmp = asmdss.getValue(i); - if (tmp.isEmpty ()) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdss.getValue()); - - this.manageAttribute (tmp, _ab, aaos, tdp, asmdss, asmdss.getValue()); - } - - if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ()) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal sending: " + asmdss.getValue() + " -> nb of parameters does not match definition"); - - // Checking expressions passed as parameter - for (int i=0; i<aaos.getNbOfValues(); i++) { - String theVal = aaos.getValue(i); - if (atas.getListOfAttributes ().get (i).isInt ()) { - if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition"); - } else { - // We assume it is a bool attribute - if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdss.getValue() + " -> value at index #" + i + " does not match definition"); - } - } - - this.listE.addCor (aaos, asmdss); - asmdss.setAVATARID (aaos.getID()); - if (asmdss.getCheckLatency()){ - aaos.setCheckLatency(true); - _as.checkedIDs.add(asmdss.getName()+"-"+ asmdss.getSignalName()+":"+aaos.getID()); - } - asm.addElement (aaos); + listE.addCor(element, asmdss); + asmdss.setAVATARID (element.getID()); + asm.addElement(element); } private void translateAvatarSMDLibraryFunctionCall (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDLibraryFunctionCall asmdlfc) throws CheckingError { @@ -1328,202 +1338,212 @@ public class AvatarDesignPanelTranslator { throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Unknown library function '" + libraryFunction.getFunctionName () + "'"); /* create Avatar representation of the function call */ - AvatarLibraryFunctionCall alfc = new AvatarLibraryFunctionCall ("library_function_call", aLibraryFunction, asmdlfc); - - /* Get the list of parameters passed to the function */ - List<TAttribute> parameters = asmdlfc.getParameters (); - /* If the number of parameters does not match raise an error */ - if (parameters.size () != libraryFunction.getParameters ().size ()) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getParameters ().size () + "parameters (" + parameters.size () + " provided)"); - - /* Loop through the parameters */ - int i=0; - for (TAttribute ta: parameters) { - i ++; - /* If parameter has not be filled in raise an error */ - if (ta == null) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Missing parameter #" + i + " when calling library function " + libraryFunction.getFunctionName ()); - - /* Check if type of parameter matches what's expected */ - TAttribute returnTA = libraryFunction.getParameters ().get (i-1); - if (!ta.hasSameType (returnTA)) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of parameter #" + i + " when calling library function " + libraryFunction.getFunctionName () + " does not match"); - - /* Creates all the parameters corresponding to this parameter */ - List<String> parameterNames = new LinkedList<String> (); - if (ta.getType() == TAttribute.INTEGER - || ta.getType() == TAttribute.NATURAL - || ta.getType() == TAttribute.BOOLEAN - || ta.getType() == TAttribute.TIMER) - parameterNames.add (ta.getId ()); - else { - List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ()); - if (types == null || types.isEmpty ()) - throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); - - for (TAttribute type: types) - parameterNames.add (ta.getId () + "__" + type.getId ()); - } - - /* Add flattened parameters */ - for (String parameterName: parameterNames) { - /* Try to get the corresponding attribute */ - AvatarAttribute attr = _ab.getAvatarAttributeWithName (parameterName); - /* If it does not exist raise an error */ - if (attr == null) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Parameter '" + ta.getId () + "' passed when calling library function " + libraryFunction.getFunctionName () + " does not exist"); - alfc.addParameter (attr); - } + final AvatarStateMachineElement element; + final String name = "library_function_call"; + + if ( asmdlfc.isEnabled() ) { + /* create Avatar representation of the function call */ + element = new AvatarLibraryFunctionCall( name, aLibraryFunction, asmdlfc ); + AvatarLibraryFunctionCall alfc = (AvatarLibraryFunctionCall) element; +// AvatarLibraryFunctionCall alfc = new AvatarLibraryFunctionCall ("library_function_call", aLibraryFunction, asmdlfc); + + /* Get the list of parameters passed to the function */ + List<TAttribute> parameters = asmdlfc.getParameters (); + /* If the number of parameters does not match raise an error */ + if (parameters.size () != libraryFunction.getParameters ().size ()) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getParameters ().size () + "parameters (" + parameters.size () + " provided)"); + + /* Loop through the parameters */ + int i=0; + for (TAttribute ta: parameters) { + i ++; + /* If parameter has not be filled in raise an error */ + if (ta == null) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Missing parameter #" + i + " when calling library function " + libraryFunction.getFunctionName ()); + + /* Check if type of parameter matches what's expected */ + TAttribute returnTA = libraryFunction.getParameters ().get (i-1); + if (!ta.hasSameType (returnTA)) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of parameter #" + i + " when calling library function " + libraryFunction.getFunctionName () + " does not match"); + + /* Creates all the parameters corresponding to this parameter */ + List<String> parameterNames = new LinkedList<String> (); + if (ta.getType() == TAttribute.INTEGER + || ta.getType() == TAttribute.NATURAL + || ta.getType() == TAttribute.BOOLEAN + || ta.getType() == TAttribute.TIMER) + parameterNames.add (ta.getId ()); + else { + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ()); + if (types == null || types.isEmpty ()) + throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); + + for (TAttribute type: types) + parameterNames.add (ta.getId () + "__" + type.getId ()); + } + + /* Add flattened parameters */ + for (String parameterName: parameterNames) { + /* Try to get the corresponding attribute */ + AvatarAttribute attr = _ab.getAvatarAttributeWithName (parameterName); + /* If it does not exist raise an error */ + if (attr == null) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Parameter '" + ta.getId () + "' passed when calling library function " + libraryFunction.getFunctionName () + " does not exist"); + alfc.addParameter (attr); + } + } + + /* Get the list of signals mapped to the function's placeholders */ + List<ui.AvatarSignal> signals = asmdlfc.getSignals (); + /* If the number of signals does not match raise an error */ + if (signals.size () != libraryFunction.getSignals ().size ()) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getSignals ().size () + " signals (" + signals.size () + " mapped)"); + + /* Loop through the signals */ + i=0; + for (ui.AvatarSignal uias: signals) { + i ++; + /* If signal has not be filled in raise an error */ + if (uias == null) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Missing mapping for signal #" + i + " when calling library function " + libraryFunction.getFunctionName ()); + + /* Check if prototype of signal matches what's expected */ + ui.AvatarSignal expectedSig = libraryFunction.getSignals ().get (i-1); + if (!expectedSig.hasSamePrototype (uias)) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Prototype of signal #" + i + " when calling library function " + libraryFunction.getFunctionName () + " does not match"); + + /* Try to get the corresponding signal */ + avatartranslator.AvatarSignal sig = _ab.getAvatarSignalWithName (uias.getId ()); + /* If it does not exist raise an error */ + if (sig == null) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal '" + uias.getId () + "' mapped when calling library function " + libraryFunction.getFunctionName () + " does not exist"); + alfc.addSignal (sig); + } + + /* Get the list of return attributes passed to the function */ + List<TAttribute> returnAttributes = asmdlfc.getReturnAttributes (); + /* If the number of return attributes is greater that what the function can return raise an error */ + if (returnAttributes.size () > libraryFunction.getReturnAttributes ().size ()) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " can only return " + libraryFunction.getReturnAttributes ().size () + " values (" + returnAttributes.size () + " expected)"); + + /* Loop through the return attributes */ + i=0; + for (TAttribute ta: returnAttributes) { + List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> (); + /* If return attribute has not be filled in, add a dummy one */ + if (ta == null) { + TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i); + String dummyName = "__dummy_return_attribute_" + returnTA.getId (); + + /* Creates all the attributes corresponding to this return attribute */ + if (returnTA.getType() == TAttribute.INTEGER + || returnTA.getType() == TAttribute.NATURAL + || returnTA.getType() == TAttribute.BOOLEAN + || returnTA.getType() == TAttribute.TIMER) { + AvatarAttribute attr = _ab.getAvatarAttributeWithName (dummyName); + if (attr == null) { + attr = this.createRegularAttribute (_ab, returnTA, "__dummy_return_attribute_"); + _ab.addAttribute (attr); + } + attrs.add (attr); + } else { + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ()); + if (types == null || types.isEmpty ()) + throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); + + for (TAttribute type: types) { + String attributeName = dummyName + "__" + type.getId (); + AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName); + if (attr == null) { + attr = this.createRegularAttribute (_ab, type, dummyName + "__"); + _ab.addAttribute (attr); + } + attrs.add (attr); + } + } + } else { + /* Check if type of return attribute matches what's expected */ + TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i); + if (!ta.hasSameType (returnTA)) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of return attribute #" + (i+1) + " when calling library function " + libraryFunction.getFunctionName () + " does not match"); + + /* Creates all the attributes corresponding to this return attribute */ + List<String> attributeNames = new LinkedList<String> (); + if (ta.getType() == TAttribute.INTEGER + || ta.getType() == TAttribute.NATURAL + || ta.getType() == TAttribute.BOOLEAN + || ta.getType() == TAttribute.TIMER) + attributeNames.add (ta.getId ()); + else { + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ()); + if (types == null || types.isEmpty ()) + throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); + + for (TAttribute type: types) + attributeNames.add (ta.getId () + "__" + type.getId ()); + } + + /* Add flattened parameters */ + for (String attributeName: attributeNames) { + AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName); + /* If a return attribute was given but we can't find the corresponding one raise an error */ + if (attr == null) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Attribute '" + ta.getId () + "' expected to hold return value #" + (i+1) + " when calling library function " + libraryFunction.getFunctionName () + " does not exist"); + attrs.add (attr); + } + } + + for (AvatarAttribute attr: attrs) + alfc.addReturnAttribute (attr); + i ++; + } + + /* If there were missing return attributes, add dummies ones */ + for (; i<libraryFunction.getReturnAttributes ().size (); i++) { + TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i); + String dummyName = "__dummy_return_attribute_" + returnTA.getId (); + + List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> (); + /* Creates all the attributes corresponding to this return attribute */ + if (returnTA.getType() == TAttribute.INTEGER + || returnTA.getType() == TAttribute.NATURAL + || returnTA.getType() == TAttribute.BOOLEAN + || returnTA.getType() == TAttribute.TIMER) { + AvatarAttribute attr = _ab.getAvatarAttributeWithName (dummyName); + if (attr == null) { + attr = this.createRegularAttribute (_ab, returnTA, "__dummy_return_attribute_"); + _ab.addAttribute (attr); + } + attrs.add (attr); + } else { + List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ()); + if (types == null || types.isEmpty ()) + throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); + + for (TAttribute type: types) { + String attributeName = dummyName + "__" + type.getId (); + AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName); + if (attr == null) { + attr = this.createRegularAttribute (_ab, type, dummyName + "__"); + _ab.addAttribute (attr); + } + attrs.add (attr); + } + } + + for (AvatarAttribute attr: attrs) + alfc.addReturnAttribute (attr); + } } - - /* Get the list of signals mapped to the function's placeholders */ - List<ui.AvatarSignal> signals = asmdlfc.getSignals (); - /* If the number of signals does not match raise an error */ - if (signals.size () != libraryFunction.getSignals ().size ()) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " requires " + libraryFunction.getSignals ().size () + " signals (" + signals.size () + " mapped)"); - - /* Loop through the signals */ - i=0; - for (ui.AvatarSignal uias: signals) { - i ++; - /* If signal has not be filled in raise an error */ - if (uias == null) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Missing mapping for signal #" + i + " when calling library function " + libraryFunction.getFunctionName ()); - - /* Check if prototype of signal matches what's expected */ - ui.AvatarSignal expectedSig = libraryFunction.getSignals ().get (i-1); - if (!expectedSig.hasSamePrototype (uias)) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Prototype of signal #" + i + " when calling library function " + libraryFunction.getFunctionName () + " does not match"); - - /* Try to get the corresponding signal */ - avatartranslator.AvatarSignal sig = _ab.getAvatarSignalWithName (uias.getId ()); - /* If it does not exist raise an error */ - if (sig == null) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Signal '" + uias.getId () + "' mapped when calling library function " + libraryFunction.getFunctionName () + " does not exist"); - alfc.addSignal (sig); - } - - /* Get the list of return attributes passed to the function */ - List<TAttribute> returnAttributes = asmdlfc.getReturnAttributes (); - /* If the number of return attributes is greater that what the function can return raise an error */ - if (returnAttributes.size () > libraryFunction.getReturnAttributes ().size ()) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Calling library function " + libraryFunction.getFunctionName () + " can only return " + libraryFunction.getReturnAttributes ().size () + " values (" + returnAttributes.size () + " expected)"); - - /* Loop through the return attributes */ - i=0; - for (TAttribute ta: returnAttributes) { - List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> (); - /* If return attribute has not be filled in, add a dummy one */ - if (ta == null) { - TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i); - String dummyName = "__dummy_return_attribute_" + returnTA.getId (); - - /* Creates all the attributes corresponding to this return attribute */ - if (returnTA.getType() == TAttribute.INTEGER - || returnTA.getType() == TAttribute.NATURAL - || returnTA.getType() == TAttribute.BOOLEAN - || returnTA.getType() == TAttribute.TIMER) { - AvatarAttribute attr = _ab.getAvatarAttributeWithName (dummyName); - if (attr == null) { - attr = this.createRegularAttribute (_ab, returnTA, "__dummy_return_attribute_"); - _ab.addAttribute (attr); - } - attrs.add (attr); - } else { - List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ()); - if (types == null || types.isEmpty ()) - throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); - - for (TAttribute type: types) { - String attributeName = dummyName + "__" + type.getId (); - AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName); - if (attr == null) { - attr = this.createRegularAttribute (_ab, type, dummyName + "__"); - _ab.addAttribute (attr); - } - attrs.add (attr); - } - } - } else { - /* Check if type of return attribute matches what's expected */ - TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i); - if (!ta.hasSameType (returnTA)) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Type of return attribute #" + (i+1) + " when calling library function " + libraryFunction.getFunctionName () + " does not match"); - - /* Creates all the attributes corresponding to this return attribute */ - List<String> attributeNames = new LinkedList<String> (); - if (ta.getType() == TAttribute.INTEGER - || ta.getType() == TAttribute.NATURAL - || ta.getType() == TAttribute.BOOLEAN - || ta.getType() == TAttribute.TIMER) - attributeNames.add (ta.getId ()); - else { - List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (ta.getTypeOther ()); - if (types == null || types.isEmpty ()) - throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + ta.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); - - for (TAttribute type: types) - attributeNames.add (ta.getId () + "__" + type.getId ()); - } - - /* Add flattened parameters */ - for (String attributeName: attributeNames) { - AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName); - /* If a return attribute was given but we can't find the corresponding one raise an error */ - if (attr == null) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Attribute '" + ta.getId () + "' expected to hold return value #" + (i+1) + " when calling library function " + libraryFunction.getFunctionName () + " does not exist"); - attrs.add (attr); - } - } - - for (AvatarAttribute attr: attrs) - alfc.addReturnAttribute (attr); - i ++; - } - - /* If there were missing return attributes, add dummies ones */ - for (; i<libraryFunction.getReturnAttributes ().size (); i++) { - TAttribute returnTA = libraryFunction.getReturnAttributes ().get (i); - String dummyName = "__dummy_return_attribute_" + returnTA.getId (); - - List<AvatarAttribute> attrs = new LinkedList<AvatarAttribute> (); - /* Creates all the attributes corresponding to this return attribute */ - if (returnTA.getType() == TAttribute.INTEGER - || returnTA.getType() == TAttribute.NATURAL - || returnTA.getType() == TAttribute.BOOLEAN - || returnTA.getType() == TAttribute.TIMER) { - AvatarAttribute attr = _ab.getAvatarAttributeWithName (dummyName); - if (attr == null) { - attr = this.createRegularAttribute (_ab, returnTA, "__dummy_return_attribute_"); - _ab.addAttribute (attr); - } - attrs.add (attr); - } else { - List<TAttribute> types = adp.getAvatarBDPanel ().getAttributesOfDataType (returnTA.getTypeOther ()); - if (types == null || types.isEmpty ()) - throw new CheckingError (CheckingError.STRUCTURE_ERROR, "Unknown data type: " + returnTA.getTypeOther () + " when calling " + libraryFunction.getFunctionName ()); - - for (TAttribute type: types) { - String attributeName = dummyName + "__" + type.getId (); - AvatarAttribute attr = _ab.getAvatarAttributeWithName (attributeName); - if (attr == null) { - attr = this.createRegularAttribute (_ab, type, dummyName + "__"); - _ab.addAttribute (attr); - } - attrs.add (attr); - } - } - - for (AvatarAttribute attr: attrs) - alfc.addReturnAttribute (attr); + else { + element = new AvatarDummyState( name + ":" + aLibraryFunction.getName(), asmdlfc ); } - this.listE.addCor (alfc, asmdlfc); - asmdlfc.setAVATARID (alfc.getID()); - asm.addElement (alfc); + listE.addCor( element, asmdlfc ); + asmdlfc.setAVATARID( element.getID() ); + asm.addElement( element ); } - private void translateAvatarSMDReceiveSignal (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDReceiveSignal asmdrs) throws CheckingError { AvatarStateMachine asm = _ab.getStateMachine (); avatartranslator.AvatarSignal atas = _ab.getAvatarSignalWithName (asmdrs.getSignalName ()); @@ -1549,110 +1569,172 @@ public class AvatarDesignPanelTranslator { if (atas.getReferenceObject() instanceof ui.AvatarSignal) { ((ui.AvatarSignal) atas.getReferenceObject()).attachedToARelation = true; } + + final AvatarStateMachineElement element; + final String name = "action_on_signal"; + + if ( asmdrs.isEnabled() ) { + element = new AvatarActionOnSignal( name, atas, asmdrs ); + + final AvatarActionOnSignal aaos = (AvatarActionOnSignal) element; - AvatarActionOnSignal aaos = new AvatarActionOnSignal ("action_on_signal", atas, asmdrs); - if (asmdrs.hasCheckableAccessibility()) - aaos.setCheckable(); - - if (asmdrs.hasCheckedAccessibility()) - aaos.setChecked(); - - if (aaos.isSending()) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A sending signal is used for receiving: " + asmdrs.getValue()); - - if (asmdrs.getNbOfValues() == -1) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdrs.getValue()); - - for(int i=0; i<asmdrs.getNbOfValues(); i++) { - String tmp = asmdrs.getValue(i); - if (tmp.isEmpty ()) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdrs.getValue()); - - this.manageAttribute (tmp, _ab, aaos, tdp, asmdrs, asmdrs.getValue()); - } - - if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ()) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> nb of parameters does not match definition"); - - // Checking expressions passed as parameter - for (int i=0; i<aaos.getNbOfValues(); i++) { - String theVal = aaos.getValue(i); - if (atas.getListOfAttributes ().get (i).isInt ()) { - if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0) - throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition"); - } else { - // We assume it is a bool attribute - if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0) - throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition"); - } - } + if (asmdrs.hasCheckableAccessibility()) + aaos.setCheckable(); + + if (asmdrs.hasCheckedAccessibility()) + aaos.setChecked(); + + if (aaos.isSending()) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "A sending signal is used for receiving: " + asmdrs.getValue()); + + if (asmdrs.getNbOfValues() == -1) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal: " + asmdrs.getValue()); + + for(int i=0; i<asmdrs.getNbOfValues(); i++) { + String tmp = asmdrs.getValue(i); + if (tmp.isEmpty ()) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Empty parameter in signal expression: " + asmdrs.getValue()); + + this.manageAttribute (tmp, _ab, aaos, tdp, asmdrs, asmdrs.getValue()); + } + + if (aaos.getNbOfValues () != atas.getListOfAttributes ().size ()) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> nb of parameters does not match definition"); + + // Checking expressions passed as parameter + for (int i=0; i<aaos.getNbOfValues(); i++) { + String theVal = aaos.getValue(i); + if (atas.getListOfAttributes ().get (i).isInt ()) { + if (AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, theVal) < 0) + throw new CheckingError (CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition"); + } else { + // We assume it is a bool attribute + if (AvatarSyntaxChecker.isAValidBoolExpr(_as, _ab, theVal) < 0) + throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed signal receiving: " + asmdrs.getValue() + " -> value at index #" + i + " does not match definition"); + } + } + + if (asmdrs.getCheckLatency()){ + aaos.setCheckLatency(true); + _as.checkedIDs.add(asmdrs.getName()+"-"+asmdrs.getSignalName()+":"+aaos.getID()); + } + } + else { + element = new AvatarDummyState( name + ":" + atas.getName(), asmdrs ); + } - this.listE.addCor (aaos, asmdrs); - asmdrs.setAVATARID (aaos.getID()); - asm.addElement (aaos); - if (asmdrs.getCheckLatency()){ - aaos.setCheckLatency(true); - _as.checkedIDs.add(asmdrs.getName()+"-"+asmdrs.getSignalName()+":"+aaos.getID()); - } + this.listE.addCor( element, asmdrs ); + asmdrs.setAVATARID( element.getID() ); + asm.addElement( element ); } private void translateAvatarSMDState (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDState tgc) throws CheckingError { - AvatarStateMachine asm = _ab.getStateMachine (); - AvatarState astate = asm.getStateWithName(tgc.getValue()); - if (astate == null) { - astate = new AvatarState (tgc.getValue(), tgc); - astate.setAsVerifiable(true); - asm.addElement (astate); - } + AvatarStateMachine stateMachine = _ab.getStateMachine (); + AvatarStateElement stateElement = createState( stateMachine, tgc ); + //AvatarState astate = asm.getStateWithName(tgc.getValue()); +// if (astate == null) { +// astate = new AvatarState (tgc.getValue(), tgc); +// astate.setAsVerifiable(true); +// asm.addElement (astate); +// } if (tgc.hasCheckableAccessibility ()) - astate.setCheckable (); + stateElement.setCheckable (); if (tgc.hasCheckedAccessibility()) - astate.setChecked(); - - // Executable code - astate.addEntryCode(tgc.getEntryCode()); + stateElement.setChecked(); + + // Issue #69 + if ( tgc.isEnabled() ) { + final AvatarState state = (AvatarState) stateElement; + + // Executable code + state.addEntryCode(tgc.getEntryCode()); + + if (tgc.getCheckLatency()){ + state.setCheckLatency(true); + _as.checkedIDs.add(tgc.getName()+"-"+tgc.getValue()+":"+state.getID()); + } + } - this.listE.addCor (astate, tgc); - astate.addReferenceObject (tgc); - tgc.setAVATARID (astate.getID()); - if (tgc.getCheckLatency()){ - astate.setCheckLatency(true); - _as.checkedIDs.add(tgc.getName()+"-"+tgc.getValue()+":"+astate.getID()); - } + listE.addCor(stateElement, tgc); + stateElement.addReferenceObject (tgc); + tgc.setAVATARID(stateElement.getID()); + } + + private AvatarStateElement createState( final AvatarStateMachine stateMachine, + final AvatarSMDState diagramState ) { + AvatarStateElement stateElement = stateMachine.getStateWithName( diagramState.getValue() ); + + if ( stateElement == null ) { + final String name = diagramState.getValue(); + + // Issue #69 + if ( diagramState.isEnabled() ) { + stateElement = new AvatarState( name, diagramState ); + stateElement.setAsVerifiable( true ); + } + else { + if ( diagramState.getOutputConnectors().isEmpty() ) { + stateElement = new AvatarStopState( name + "_state_converted_to_stop", diagramState ); + } + else { + stateElement = new AvatarDummyState( name, diagramState ); + } + } + + stateMachine.addElement( stateElement ); + } + + return stateElement; } private void translateAvatarSMDRandom (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDRandom asmdrand) throws CheckingError { AvatarStateMachine asm = _ab.getStateMachine (); - AvatarRandom arandom = new AvatarRandom ("random", asmdrand); - String tmp1 = modifyString (asmdrand.getMinValue()); - int error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp1); - if (error < 0) - this.makeError (error, tdp, _ab, asmdrand, "min value of random", tmp1); - - String tmp2 = modifyString(asmdrand.getMaxValue()); - error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2); - if (error < 0) - this.makeError (error, tdp, _ab, asmdrand, "max value of random", tmp2); - arandom.setValues (tmp1, tmp2); - arandom.setFunctionId (asmdrand.getFunctionId()); + final AvatarStateMachineElement element; + final String name = "random"; + + if ( asmdrand.isEnabled() ) { + element = new AvatarRandom( name, asmdrand ); + + final AvatarRandom arandom = (AvatarRandom) element; - tmp1 = modifyString(asmdrand.getVariable()); - AvatarAttribute aa = _ab.getAvatarAttributeWithName (tmp1); + String tmp1 = modifyString (asmdrand.getMinValue()); + int error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp1); + + if (error < 0) { + makeError (error, tdp, _ab, asmdrand, "min value of random", tmp1); + } - if (aa == null) - this.makeError (-3, tdp, _ab, asmdrand, "random", tmp1); - // Checking type of variable -> must be an int - else if (!(aa.isInt())) - this.makeError (error, tdp, _ab, asmdrand, ": variable of random must be of type \"int\"", tmp2); + String tmp2 = modifyString(asmdrand.getMaxValue()); + error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2); + + if (error < 0) { + makeError (error, tdp, _ab, asmdrand, "max value of random", tmp2); + } - arandom.setVariable (tmp1); + arandom.setValues (tmp1, tmp2); + arandom.setFunctionId (asmdrand.getFunctionId()); + + tmp1 = modifyString(asmdrand.getVariable()); + AvatarAttribute aa = _ab.getAvatarAttributeWithName (tmp1); + + if (aa == null) + this.makeError (-3, tdp, _ab, asmdrand, "random", tmp1); + // Checking type of variable -> must be an int + else if (!(aa.isInt())) + this.makeError (error, tdp, _ab, asmdrand, ": variable of random must be of type \"int\"", tmp2); + + arandom.setVariable(tmp1); + } + else { + element = new AvatarDummyState( name, asmdrand ); + } - asm.addElement (arandom); - listE.addCor (arandom, asmdrand); - asmdrand.setAVATARID (arandom.getID()); + asm.addElement (element); + listE.addCor( element, asmdrand ); + asmdrand.setAVATARID( element.getID() ); } private void translateAvatarSMDSetTimer (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDSetTimer asmdst) throws CheckingError { @@ -1670,12 +1752,23 @@ public class AvatarDesignPanelTranslator { if (error < 0) this.makeError(error, tdp, _ab, asmdst, "value of the timer setting", tmp); - AvatarSetTimer asettimer = new AvatarSetTimer("settimer__" + aa.getName(), asmdst); - asettimer.setTimer (aa); - asettimer.setTimerValue (tmp); - asm.addElement (asettimer); - this.listE.addCor (asettimer, asmdst); - asmdst.setAVATARID (asettimer.getID()); + final AvatarStateMachineElement element; + final String name = "settimer__" + aa.getName(); + + if ( asmdst.isEnabled() ) { + element = new AvatarSetTimer( name, asmdst ); + + final AvatarSetTimer asettimer = (AvatarSetTimer) element; + asettimer.setTimer( aa ); + asettimer.setTimerValue( tmp ); + } + else { + element = new AvatarDummyState( name, asmdst ); + } + + asm.addElement(element); + listE.addCor(element, asmdst); + asmdst.setAVATARID(element.getID()); } private void translateAvatarSMDResetTimer (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDResetTimer asmdrt) throws CheckingError { @@ -1688,11 +1781,20 @@ public class AvatarDesignPanelTranslator { if (aa.getType() != AvatarType.TIMER) throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed parameter: " + tmp + " in timer reset: shall be a parameter of type \"Timer\""); - AvatarResetTimer aresettimer = new AvatarResetTimer("resettimer__" + aa.getName(), asmdrt); - aresettimer.setTimer (aa); - asm.addElement(aresettimer); - this.listE.addCor (aresettimer, asmdrt); - asmdrt.setAVATARID (aresettimer.getID()); + final AvatarStateMachineElement element; + final String name = "resettimer__" + aa.getName(); + + if ( asmdrt.isEnabled() ) { + element= new AvatarResetTimer( name, asmdrt ); + ( (AvatarResetTimer) element ).setTimer( aa ); + } + else { + element = new AvatarDummyState( name, asmdrt ); + } + + asm.addElement( element ); + listE.addCor( element, asmdrt ); + asmdrt.setAVATARID( element.getID() ); } private void translateAvatarSMDExpireTimer (TDiagramPanel tdp, AvatarSpecification _as, AvatarStateMachineOwner _ab, AvatarSMDExpireTimer asmdet) throws CheckingError { @@ -1705,14 +1807,178 @@ public class AvatarDesignPanelTranslator { if (aa.getType() != AvatarType.TIMER) throw new CheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed parameter: " + tmp + " in timer expiration: shall be a parameter of type \"Timer\""); - AvatarExpireTimer aexpiretimer = new AvatarExpireTimer("expiretimer__" + aa.getName(), asmdet); - aexpiretimer.setTimer(aa); - asm.addElement(aexpiretimer); - this.listE.addCor(aexpiretimer, asmdet); - asmdet.setAVATARID(aexpiretimer.getID()); + final AvatarStateMachineElement avatarElement; + final String name = "expiretimer__" + aa.getName(); + + if ( asmdet.isEnabled() ) { + avatarElement = new AvatarExpireTimer( name, asmdet ); + ( ( AvatarExpireTimer) avatarElement ).setTimer(aa); + } + else { + avatarElement = new AvatarDummyState( name, asmdet ); + } + + asm.addElement( avatarElement ); + this.listE.addCor( avatarElement, asmdet ); + asmdet.setAVATARID( avatarElement.getID() ); +// AvatarExpireTimer aexpiretimer = new AvatarExpireTimer("expiretimer__" + aa.getName(), asmdet); +// aexpiretimer.setTimer(aa); +// asm.addElement(aexpiretimer); +// this.listE.addCor(aexpiretimer, asmdet); +// asmdet.setAVATARID(aexpiretimer.getID()); + } + + private void createGuard( final AvatarTransition transition, + final AvatarSMDConnector connector ) { + final AvatarStateMachineOwner block = transition.getBlock(); + final String guardStr = modifyString( connector.getEffectiveGuard() ); + final AvatarGuard guard = AvatarGuard.createFromString( block, guardStr ); + final int error; + + if ( guard.isElseGuard() ) { + error = 0; + } + else { + error = AvatarSyntaxChecker.isAValidGuard( block.getAvatarSpecification(), block, guardStr ); + } + + if ( error < 0 ) { + makeError( error, connector.tdp, block, connector, "transition guard", guardStr ); + } + else { + transition.setGuard( guard ); + } + } + + private void createAfterDelay( final AvatarTransition transition, + final AvatarSMDConnector connector ) { + final AvatarStateMachineOwner block = transition.getBlock(); + final AvatarSpecification spec = block.getAvatarSpecification(); + + String afterMinDelayStr = modifyString( connector.getEffectiveAfterMinDelay() ); + int error = AvatarSyntaxChecker.isAValidIntExpr( spec, block, afterMinDelayStr ); + + if ( error < 0 ) { + makeError( error, connector.tdp, block, connector, "after min delay", afterMinDelayStr ); + afterMinDelayStr = null; + } + + String afterMaxDelayStr = modifyString( connector.getEffectiveAfterMaxDelay() ); + error = AvatarSyntaxChecker.isAValidIntExpr( spec, block, afterMaxDelayStr ); + + if ( error < 0 ) { + makeError(error, connector.tdp, block, connector, "after max delay", afterMaxDelayStr ); + afterMaxDelayStr = null; + } + + if ( afterMinDelayStr != null && afterMaxDelayStr != null ) { + transition.setDelays( afterMinDelayStr, afterMaxDelayStr ); + } + } + + private void createComputeDelay( final AvatarTransition transition, + final AvatarSMDConnector connector ) { + final AvatarStateMachineOwner block = transition.getBlock(); + final AvatarSpecification spec = block.getAvatarSpecification(); + + String computeMinDelayStr = modifyString( connector.getEffectiveComputeMinDelay() ); + int error = AvatarSyntaxChecker.isAValidIntExpr( spec, block, computeMinDelayStr ); + + if (error < 0) { + makeError( error, connector.tdp, block, connector, "compute min ", computeMinDelayStr ); + computeMinDelayStr = null; + } + + String computeMaxDelayStr = modifyString( connector.getEffectiveComputeMaxDelay() ); + error = AvatarSyntaxChecker.isAValidIntExpr( spec, block, computeMaxDelayStr ); + + if (error < 0) { + makeError( error, connector.tdp, block, connector, "compute max ", computeMaxDelayStr ); + computeMaxDelayStr = null; + } + + if ( computeMinDelayStr != null && computeMaxDelayStr != null) { + transition.setComputes( computeMinDelayStr, computeMaxDelayStr ); + } } + + private void createProbability( final AvatarTransition transition, + final AvatarSMDConnector connector ) { + final AvatarStateMachineOwner block = transition.getBlock(); + final AvatarSpecification spec = block.getAvatarSpecification(); + final String probabilityStr = modifyString( connector.getEffectiveProbability() ); + final int error = AvatarSyntaxChecker.isAValidProbabilityExpr( spec, block, probabilityStr ); + + if ( error < 0 ) { + makeError( error, connector.tdp, block, connector, "probability ", probabilityStr ); + } - public void makeStateMachine (AvatarSpecification _as, AvatarStateMachineOwner _ab) { + if ( probabilityStr != null && !probabilityStr.isEmpty() ) { + transition.setProbability( Double.parseDouble( probabilityStr ) ); + } + } + + private void createActions( final AvatarTransition transition, + final AvatarSMDConnector connector ) { + final AvatarStateMachineOwner block = transition.getBlock(); + int error = 0; + + for( String actionText : connector.getEffectiveActions() ) { + if ( actionText.trim().length() > 0 ) { + actionText = modifyString( actionText.trim() ); + + // Variable assignment or method call? + if ( !isAVariableAssignation( actionText ) ) { + // Method call + int index2 = actionText.indexOf( ";" ); + + if ( index2 != -1 ) { + makeError( error, connector.tdp, block, connector, "transition action", actionText ); + } + + actionText = modifyStringMethodCall( actionText, block.getName() ); + + if ( !AvatarBlock.isAValidMethodCall( block, actionText ) ) { + UICheckingError ce = new UICheckingError( CheckingError.BEHAVIOR_ERROR, "Badly formed transition method call: " + actionText ); + // TODO: adapt + // ce.setAvatarBlock(_ab); + ce.setTDiagramPanel( connector.tdp ); + ce.setTGComponent( connector ); + addCheckingError(ce); + } + else { + transition.addAction( actionText ); + } + } + else { + // Variable assignment + error = AvatarSyntaxChecker.isAValidVariableExpr( block.getAvatarSpecification(), block, actionText); + + if ( error < 0 ) { + makeError( error, connector.tdp, block, connector, "transition action", actionText ); + } + else { + transition.addAction( actionText ); + } + } + } + } + } + + private void createTransitionInfo( final AvatarTransition transition, + final AvatarSMDConnector connector ) { + createGuard( transition,connector ); + + createAfterDelay( transition, connector); + + createComputeDelay( transition, connector ); + + createProbability( transition, connector ); + + createActions( transition, connector ); + } + + private void makeStateMachine (AvatarSpecification _as, AvatarStateMachineOwner _ab) { AvatarBDStateMachineOwner block = (AvatarBDStateMachineOwner) listE.getTG (_ab); AvatarStateMachine asm = _ab.getStateMachine (); @@ -1733,7 +1999,7 @@ public class AvatarDesignPanelTranslator { int size = checkingErrors.size(); - TDiagramPanel tdp = asmdp; + //TDiagramPanel tdp = asmdp; // search for start state AvatarSMDStartState tss = null; @@ -1743,7 +2009,7 @@ public class AvatarDesignPanelTranslator { tss = (AvatarSMDStartState) tgc; else { UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "More than one start state in the state machine diagram of " + name); - ce.setTDiagramPanel(tdp); + ce.setTDiagramPanel( asmdp ); addCheckingError(ce); return; } @@ -1751,7 +2017,7 @@ public class AvatarDesignPanelTranslator { if (tss == null) { UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "No start state in the state machine diagram of " + name); - ce.setTDiagramPanel(tdp); + ce.setTDiagramPanel( asmdp ); addCheckingError(ce); return; } @@ -1759,27 +2025,32 @@ public class AvatarDesignPanelTranslator { // This shall also be true for all composite state: at most one start state! if (checkForStartStateOfCompositeStates (asmdp) != null) { UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "More than one start state in composite state"); - ce.setTDiagramPanel(tdp); + ce.setTDiagramPanel( asmdp ); addCheckingError(ce); return; } int choiceID = 0; // First pass: creating AVATAR components, but no interconnection between them - for (TGComponent tgc: asmdp.getAllComponentList ()) + // Issue #69: + final FindAvatarSMDComponentsToBeTranslatedVisitor componentsToBeTranslatedVisitor = new FindAvatarSMDComponentsToBeTranslatedVisitor(); + tss.acceptForward( componentsToBeTranslatedVisitor ); + final Set<TGComponent> componentsToBeTranslated = componentsToBeTranslatedVisitor.getComponentsToBeTranslated(); + + for (TGComponent tgc: componentsToBeTranslated/*asmdp.getAllComponentList ()*/) try { // Receive signal if (tgc instanceof AvatarSMDReceiveSignal) - this.translateAvatarSMDReceiveSignal (tdp, _as, _ab, (AvatarSMDReceiveSignal) tgc); + this.translateAvatarSMDReceiveSignal ( asmdp, _as, _ab, (AvatarSMDReceiveSignal) tgc); // Send signals else if (tgc instanceof AvatarSMDSendSignal) - this.translateAvatarSMDSendSignal (tdp, _as, _ab, (AvatarSMDSendSignal) tgc); + this.translateAvatarSMDSendSignal ( asmdp, _as, _ab, (AvatarSMDSendSignal) tgc); // Library Function Call else if (tgc instanceof AvatarSMDLibraryFunctionCall) - this.translateAvatarSMDLibraryFunctionCall (tdp, _as, _ab, (AvatarSMDLibraryFunctionCall) tgc); + this.translateAvatarSMDLibraryFunctionCall ( asmdp, _as, _ab, (AvatarSMDLibraryFunctionCall) tgc); // State else if (tgc instanceof AvatarSMDState) - this.translateAvatarSMDState (tdp, _as, _ab, (AvatarSMDState) tgc); + this.translateAvatarSMDState ( asmdp, _as, _ab, (AvatarSMDState) tgc); // Choice else if (tgc instanceof AvatarSMDChoice) { AvatarState astate = new AvatarState ("choice__" + choiceID, tgc); @@ -1790,16 +2061,16 @@ public class AvatarDesignPanelTranslator { } // Random else if (tgc instanceof AvatarSMDRandom) - this.translateAvatarSMDRandom (tdp, _as, _ab, (AvatarSMDRandom) tgc); + this.translateAvatarSMDRandom ( asmdp, _as, _ab, (AvatarSMDRandom) tgc); // Set timer else if (tgc instanceof AvatarSMDSetTimer) - this.translateAvatarSMDSetTimer (tdp, _as, _ab, (AvatarSMDSetTimer) tgc); + this.translateAvatarSMDSetTimer ( asmdp, _as, _ab, (AvatarSMDSetTimer) tgc); // Reset timer else if (tgc instanceof AvatarSMDResetTimer) - this.translateAvatarSMDResetTimer (tdp, _as, _ab, (AvatarSMDResetTimer) tgc); + this.translateAvatarSMDResetTimer ( asmdp, _as, _ab, (AvatarSMDResetTimer) tgc); // Expire timer else if (tgc instanceof AvatarSMDExpireTimer) - this.translateAvatarSMDExpireTimer (tdp, _as, _ab, (AvatarSMDExpireTimer) tgc); + this.translateAvatarSMDExpireTimer ( asmdp, _as, _ab, (AvatarSMDExpireTimer) tgc); // Start state else if (tgc instanceof AvatarSMDStartState) { AvatarStartState astart = new AvatarStartState("start", tgc); @@ -1821,7 +2092,7 @@ public class AvatarDesignPanelTranslator { // TODO: adapt // ce.setAvatarBlock (_ab); UICheckingError uice = new UICheckingError(ce); - uice.setTDiagramPanel (tdp); + uice.setTDiagramPanel ( asmdp ); uice.setTGComponent (tgc); uice.addMessagePrefix ("State Machine of " + name + ": "); this.addCheckingError (uice); @@ -1834,152 +2105,184 @@ public class AvatarDesignPanelTranslator { asm.removeAllInternalStartStates(); // Make hierachy between states and elements - for (TGComponent tgc: asmdp.getAllComponentList ()) + for (TGComponent tgc: componentsToBeTranslated/*asmdp.getAllComponentList ()*/) { if (tgc != null && tgc.getFather() != null) { AvatarStateMachineElement element1 = (AvatarStateMachineElement)(listE.getObject(tgc)); AvatarStateMachineElement element2 = (AvatarStateMachineElement)(listE.getObject(tgc.getFather())); - if (element1 != null && element2 != null && element2 instanceof AvatarState) + + if (element1 != null && /*element2 != null && */element2 instanceof AvatarState) { element1.setState ((AvatarState) element2); + } } + } // Make next: handle transitions - for (TGComponent tgc: asmdp.getAllComponentList ()) - if (tgc instanceof AvatarSMDConnector) { - AvatarSMDConnector asmdco = (AvatarSMDConnector) tgc; - TGComponent tgc1 = tdp.getComponentToWhichBelongs (asmdco.getTGConnectingPointP1()); - TGComponent tgc2 = tdp.getComponentToWhichBelongs (asmdco.getTGConnectingPointP2()); - if (tgc1 == null || tgc2 == null) - TraceManager.addDev("Tgcs null in Avatar translation"); - else { - AvatarStateMachineElement element1 = (AvatarStateMachineElement)(listE.getObject(tgc1)); - AvatarStateMachineElement element2 = (AvatarStateMachineElement)(listE.getObject(tgc2)); - if (element1 != null && element2 != null) { - AvatarTransition at = new AvatarTransition (_ab, "avatar transition", tgc); - - // Guard - String tmp = modifyString (asmdco.getGuard()); - AvatarGuard guard = AvatarGuard.createFromString (_ab, tmp); - if (guard.isElseGuard()) - at.setGuard(guard); - else { - int error = AvatarSyntaxChecker.isAValidGuard (_as, _ab, tmp); - if (error < 0) - this.makeError (error, tdp, _ab, tgc, "transition guard", tmp); - else - at.setGuard (guard); - } - - // Delays - String tmp1 = modifyString (asmdco.getAfterMinDelay ()); - int error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1); - if (error < 0) { - this.makeError (error, tdp, _ab, tgc, "after min delay", tmp1); - tmp1 = null; - } - String tmp2 = modifyString (asmdco.getAfterMaxDelay ()); - error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp2); - if (error < 0) { - this.makeError(error, tdp, _ab, tgc, "after max delay", tmp2); - tmp2 = null; - } - - if (tmp1 != null && tmp2 != null) - at.setDelays(tmp1, tmp2); - - // Compute min and max -// tmp1 = modifyString (asmdco.getComputeMinDelay ()); -// error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1); -// if (error < 0) { -// this.makeError (error, tdp, _ab, tgc, "compute min ", tmp1); -// tmp1 = null; -// } -// tmp2 = modifyString(asmdco.getComputeMaxDelay()); -// error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2); -// if (error < 0) { -// this.makeError (error, tdp, _ab, tgc, "compute max ", tmp2); -// tmp2 = null; -// } -// -// if (tmp1 != null && tmp2 != null) -// at.setComputes(tmp1, tmp2); - - // Probability - tmp1 = asmdco.getProbability (); - if ((tmp1 != null) && (tmp1.length()>0)) { - error = AvatarSyntaxChecker.isAValidProbabilityExpr(_as, _ab, tmp1); - if (error < 0) { - this.makeError(error, tdp, _ab, tgc, "probability ", tmp1); - tmp1 = null; - } - if (tmp1 != null) { - at.setProbability(new Double(tmp1).doubleValue()); - } - } - - // Actions - for(String s: asmdco.getActions()) - if (s.trim().length() > 0) { - s = modifyString(s.trim()); - - // Variable assignation or method call? - if (!isAVariableAssignation(s)) { - // Method call - int index2 = s.indexOf(";"); - if (index2 != -1) - this.makeError(error, tdp, _ab, tgc, "transition action", s); - - s = modifyStringMethodCall(s, _ab.getName()); - if (!AvatarBlock.isAValidMethodCall (_ab, s)) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed transition method call: " + s); - // TODO: adapt - // ce.setAvatarBlock(_ab); - ce.setTDiagramPanel(tdp); - ce.setTGComponent(tgc); - addCheckingError(ce); - } else - at.addAction(s); - } else { - // Variable assignation - error = AvatarSyntaxChecker.isAValidVariableExpr (_as, _ab, s); - if (error < 0) - this.makeError (error, tdp, _ab, tgc, "transition action", s); - else - at.addAction (s); - } - } - - element1.addNext (at); - at.addNext (element2); - this.listE.addCor (at, tgc); - tgc.setAVATARID (at.getID()); - asm.addElement (at); - - // Check for after on composite transitions - if (at.hasDelay() && element1 instanceof AvatarState && asm.isACompositeTransition(at)) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "After clause cannot be used on composite transitions. Use timers instead."); - // TODO: adapt - // ce.setAvatarBlock(_ab); - ce.setTDiagramPanel(tdp); - ce.setTGComponent(tgc); - addCheckingError(ce); - } - } - } - } + final Set<TGConnector> prunedConectors = componentsToBeTranslatedVisitor.getPrunedConnectors(); + + for ( final TGConnector connector : asmdp.getConnectors() ) { + // for (TGComponent tgc: asmdp.getAllComponentList ()) { + // if (tgc instanceof AvatarSMDConnector) { + // AvatarSMDConnector asmdco = (AvatarSMDConnector) tgc; + // Issue #69 + if ( !prunedConectors.contains( connector ) ) { + FindNextEnabledAvatarSMDConnectingPointVisitor visitor = new FindNextEnabledAvatarSMDConnectingPointVisitor( prunedConectors, componentsToBeTranslated ); + connector.getTGConnectingPointP1().acceptBackward( visitor ); + final TGConnectingPoint conPoint1 = visitor.getEnabledComponentPoint(); + + if ( conPoint1 != null ) { + visitor = new FindNextEnabledAvatarSMDConnectingPointVisitor( prunedConectors, componentsToBeTranslated ); + connector.getTGConnectingPointP2().acceptForward( visitor ); + final TGConnectingPoint conPoint2 = visitor.getEnabledComponentPoint(); + + if ( conPoint2 != null ) { + final TGComponent tgc1 = (TGComponent) conPoint1.getFather();//tdp.getComponentToWhichBelongs( connector.getTGConnectingPointP1() ); + final TGComponent tgc2 = (TGComponent) conPoint2.getFather();//tdp.getComponentToWhichBelongs( connector.getTGConnectingPointP2() ); + // TGComponent tgc1 = asmdp.getComponentToWhichBelongs (asmdco.getTGConnectingPointP1()); + // TGComponent tgc2 = asmdp.getComponentToWhichBelongs (asmdco.getTGConnectingPointP2()); + if (tgc1 == null || tgc2 == null) { + TraceManager.addDev("Tgcs null in Avatar translation"); + } + else { + final AvatarStateMachineElement element1 = (AvatarStateMachineElement)(listE.getObject(tgc1)); + final AvatarStateMachineElement element2 = (AvatarStateMachineElement)(listE.getObject(tgc2)); + + if ( element1 != null && element2 != null ) { + final AvatarSMDConnector avatarSmdConnector = (AvatarSMDConnector) connector; + + if ( asm.findEmptyTransition( element1, element2 ) == null ) { + final AvatarTransition at = new AvatarTransition( _ab, "avatar transition", connector ); + createTransitionInfo( at, avatarSmdConnector ); + // AvatarTransition at = new AvatarTransition (_ab, "avatar transition", tgc); + // + // // Guard + // String tmp = modifyString (asmdco.getGuard()); + // AvatarGuard guard = AvatarGuard.createFromString (_ab, tmp); + // if (guard.isElseGuard()) + // at.setGuard(guard); + // else { + // int error = AvatarSyntaxChecker.isAValidGuard (_as, _ab, tmp); + // if (error < 0) + // this.makeError (error, tdp, _ab, tgc, "transition guard", tmp); + // else + // at.setGuard (guard); + // } + // + // // Delays + // String tmp1 = modifyString (asmdco.getAfterMinDelay ()); + // int error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1); + // if (error < 0) { + // this.makeError (error, tdp, _ab, tgc, "after min delay", tmp1); + // tmp1 = null; + // } + // String tmp2 = modifyString (asmdco.getAfterMaxDelay ()); + // error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp2); + // if (error < 0) { + // this.makeError(error, tdp, _ab, tgc, "after max delay", tmp2); + // tmp2 = null; + // } + // + // if (tmp1 != null && tmp2 != null) + // at.setDelays(tmp1, tmp2); + + // Compute min and max + // tmp1 = modifyString (asmdco.getComputeMinDelay ()); + // error = AvatarSyntaxChecker.isAValidIntExpr (_as, _ab, tmp1); + // if (error < 0) { + // this.makeError (error, tdp, _ab, tgc, "compute min ", tmp1); + // tmp1 = null; + // } + // tmp2 = modifyString(asmdco.getComputeMaxDelay()); + // error = AvatarSyntaxChecker.isAValidIntExpr(_as, _ab, tmp2); + // if (error < 0) { + // this.makeError (error, tdp, _ab, tgc, "compute max ", tmp2); + // tmp2 = null; + // } + // + // if (tmp1 != null && tmp2 != null) + // at.setComputes(tmp1, tmp2); + + // Probability + // tmp1 = asmdco.getProbability (); + // if ((tmp1 != null) && (tmp1.length()>0)) { + // error = AvatarSyntaxChecker.isAValidProbabilityExpr(_as, _ab, tmp1); + // if (error < 0) { + // this.makeError(error, tdp, _ab, tgc, "probability ", tmp1); + // tmp1 = null; + // } + // if (tmp1 != null) { + // at.setProbability(new Double(tmp1).doubleValue()); + // } + // } + // + // // Actions + // for(String s: asmdco.getActions()) + // if (s.trim().length() > 0) { + // s = modifyString(s.trim()); + // + // // Variable assignation or method call? + // if (!isAVariableAssignation(s)) { + // // Method call + // int index2 = s.indexOf(";"); + // if (index2 != -1) + // this.makeError(error, tdp, _ab, tgc, "transition action", s); + // + // s = modifyStringMethodCall(s, _ab.getName()); + // if (!AvatarBlock.isAValidMethodCall (_ab, s)) { + // UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formed transition method call: " + s); + // // TODO: adapt + // // ce.setAvatarBlock(_ab); + // ce.setTDiagramPanel(tdp); + // ce.setTGComponent(tgc); + // addCheckingError(ce); + // } else + // at.addAction(s); + // } else { + // // Variable assignation + // error = AvatarSyntaxChecker.isAValidVariableExpr (_as, _ab, s); + // if (error < 0) + // this.makeError (error, tdp, _ab, tgc, "transition action", s); + // else + // at.addAction (s); + // } + // } + + element1.addNext( at ); + at.addNext( element2 ); + listE.addCor( at, connector ); + connector.setAVATARID( at.getID() ); + asm.addElement( at ); + + // Check for after on composite transitions + if (at.hasDelay() && element1 instanceof AvatarState && asm.isACompositeTransition(at)) { + UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "After clause cannot be used on composite transitions. Use timers instead."); + // TODO: adapt + // ce.setAvatarBlock(_ab); + ce.setTDiagramPanel( asmdp ); + ce.setTGComponent( connector ); + addCheckingError( ce ); + } + } + } + } + } + } + } + } asm.handleUnfollowedStartState(_ab); // Investigate all states -> put warnings for all empty transitions from a state to the same one (infinite loop) // int nb; - for (AvatarStateMachineElement asmee: asm.getListOfElements()) + for (AvatarStateMachineElement asmee: asm.getListOfElements()) { if (asmee instanceof AvatarState && ((AvatarState)asmee).hasEmptyTransitionsOnItself(asm) > 0) { UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "State(s) " + asmee.getName() + " has empty transitions on itself"); // TODO: adapt // ce.setAvatarBlock(_ab); - ce.setTDiagramPanel(tdp); + ce.setTDiagramPanel( asmdp ); ce.setTGComponent((TGComponent)(asmee.getReferenceObject())); addWarning(ce); } + } } private void makeError(int _error, TDiagramPanel _tdp, AvatarStateMachineOwner _ab, TGComponent _tgc, String _info, String _element) { @@ -2058,23 +2361,23 @@ public class AvatarDesignPanelTranslator { //TraceManager.addDev("Searching signal with name " + name1 + " in block " + b1.getName()); atas1 = b1.getAvatarSignalWithName(name1); atas2 = b2.getAvatarSignalWithName(name2); - if ((atas1 != null) && (atas2 != null)) { - if(atas1.isCompatibleWith(atas2)) { - //TraceManager.addDev("Signals " + atas1 + " and " + atas2 + " are compatible"); - r.addSignals(atas1, atas2); - } else { - //TraceManager.addDev("Signals " + atas1 + " and " + atas2 + " are NOT compatible"); - UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Wrong signal association betwen " + atas1 + " and " + atas2); - // TODO: adapt - // ce.setAvatarBlock(_ab); - ce.setTDiagramPanel(tgc.getTDiagramPanel()); - ce.setTGComponent(tgc); - addCheckingError(ce); - } - } else { - TraceManager.addDev("Null signals in AVATAR relation: " + name1 + " " + name2); - } - + + if ((atas1 != null) && (atas2 != null)) { + if(atas1.isCompatibleWith(atas2)) { + //TraceManager.addDev("Signals " + atas1 + " and " + atas2 + " are compatible"); + r.addSignals(atas1, atas2); + } else { + //TraceManager.addDev("Signals " + atas1 + " and " + atas2 + " are NOT compatible"); + UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Wrong signal association betwen " + atas1 + " and " + atas2); + // TODO: adapt + // ce.setAvatarBlock(_ab); + ce.setTDiagramPanel(tgc.getTDiagramPanel()); + ce.setTGComponent(tgc); + addCheckingError(ce); + } + } else { + TraceManager.addDev("Null signals in AVATAR relation: " + name1 + " " + name2); + } } // Attribute of the relation diff --git a/src/main/java/ui/CDElement.java b/src/main/java/ui/CDElement.java index 3458d8766a22a52c778f04c4e06f6fe06b835cfc..d87b8033e0a203ce347271d39e454bf9fd48a259 100755 --- a/src/main/java/ui/CDElement.java +++ b/src/main/java/ui/CDElement.java @@ -35,14 +35,9 @@ * The fact that you are presently reading this means that you have had * knowledge of the CeCILL license and that you accept its terms. */ - - - - package ui; - /** * Interface CDElement * Creation : 22/12/2003 @@ -55,4 +50,21 @@ public interface CDElement { int getWidth(); int getHeight(); String getName(); + + // Issue #69 + void acceptForward( ICDElementVisitor visitor ); + + void acceptBackward( ICDElementVisitor visitor ); + + boolean canBeDisabled(); + + void setEnabled( boolean _enabled ); + + void doSetEnabled( boolean _enabled ); + + boolean isEnabled(); + + boolean isEnabled( boolean checkBranch ); + + boolean canLabelBeDisabled( TGCOneLineText label ); } diff --git a/src/main/java/ui/CanBeDisabled.java b/src/main/java/ui/CanBeDisabled.java deleted file mode 100755 index e7261314e735b085217b52062cf7a791547c3581..0000000000000000000000000000000000000000 --- a/src/main/java/ui/CanBeDisabled.java +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille - * - * ludovic.apvrille AT enst.fr - * - * This software is a computer program whose purpose is to allow the - * edition of TURTLE analysis, design and deployment diagrams, to - * allow the generation of RT-LOTOS or Java code from this diagram, - * and at last to allow the analysis of formal validation traces - * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP - * from INRIA Rhone-Alpes. - * - * This software is governed by the CeCILL license under French law and - * abiding by the rules of distribution of free software. You can use, - * modify and/ or redistribute the software under the terms of the CeCILL - * license as circulated by CEA, CNRS and INRIA at the following URL - * "http://www.cecill.info". - * - * As a counterpart to the access to the source code and rights to copy, - * modify and redistribute granted by the license, users are provided only - * with a limited warranty and the software's author, the holder of the - * economic rights, and the successive licensors have only limited - * liability. - * - * In this respect, the user's attention is drawn to the risks associated - * with loading, using, modifying and/or developing or reproducing the - * software by the user in light of its specific status of free software, - * that may mean that it is complicated to manipulate, and that also - * therefore means that it is reserved for developers and experienced - * professionals having in-depth computer knowledge. Users are therefore - * encouraged to load and test the software's suitability as regards their - * requirements in conditions enabling the security of their systems and/or - * data to be ensured and, more generally, to use and operate it in the - * same conditions as regards security. - * - * The fact that you are presently reading this means that you have had - * knowledge of the CeCILL license and that you accept its terms. - */ - - - - - -package ui; - -/** - * Class CanBeDisabled - * Components that can be enabled/disabled with a mouse click - * Creation: 22/04/2015 - * @version 1.0 22/04/2015 - * @author Ludovic APVRILLE - */ -public interface CanBeDisabled { - boolean isEnabled(); - void setEnabled(boolean _enabled); -} diff --git a/src/main/java/ui/ColorManager.java b/src/main/java/ui/ColorManager.java index a454f3a88d285700308620b3a398088dd8810e39..e4a49c55fa04d4265c5ecb3b32b6733c6ef4138c 100755 --- a/src/main/java/ui/ColorManager.java +++ b/src/main/java/ui/ColorManager.java @@ -36,16 +36,12 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; import myutil.GraphicLib; import java.awt.*; - /** * Class IconManager * Creation: 15/12/2003 @@ -56,6 +52,11 @@ public class ColorManager { public static final Color DEFAULT = Color.black; public static final Color NORMAL_0 = Color.black; + + // Issue #69: Disabling components in diagram + public static Color DISABLED = new Color(214, 206, 198); + public static Color DISABLED_FILLING = Color.WHITE; + public static final Color POINTER_ON_ME_0 = Color.red; public static final Color ACCESSIBILITY = Color.red; public static final Color ACCESSIBILITY_UNKNOWN = Color.DARK_GRAY; @@ -149,14 +150,20 @@ public class ColorManager { //public static Color ATD_BLOCK = new Color(196, 232, 195); public static Color ATD_BLOCK = new Color(218, 218, 218); public static Color ATD_ATTACK = new Color(214, 187, 158); - public static Color ATD_ATTACK_DISABLED = new Color(214, 206, 198); + + // Issue # 69: Using default disabled color + //public static Color ATD_ATTACK_DISABLED = new Color(214, 206, 198); + public static Color ATD_ROOT_ATTACK = new Color(243, 131, 10); public static Color ATD_CONSTRAINT = new Color(191, 153, 161); public static Color ATD_COUNTERMEASURE = new Color(209, 218, 174); public static Color FTD_BLOCK = new Color(218, 218, 218); public static Color FTD_FAULT = new Color(214, 187, 158); - public static Color FTD_FAULT_DISABLED = new Color(214, 206, 198); + + // Issue # 69: Using default disabled color + // public static Color FTD_FAULT_DISABLED = new Color(214, 206, 198); + public static Color FTD_ROOT_FAULT = new Color(243, 131, 10); public static Color FTD_CONSTRAINT = new Color(191, 153, 161); public static Color FTD_COUNTERMEASURE = new Color(209, 218, 174); @@ -222,37 +229,52 @@ public class ColorManager { public static final Color InteractiveSimulationText_TERM = new Color(241, 6, 6); public static final Color InteractiveSimulationText_UNKNOWN = new Color(6, 6, 241); - public final static void setColor(Graphics g, int state, int type) { + // Issue #69: Managing color for disabled diagram components + public final static void setColor( Graphics g, + int state, + int type ) { + setColor( g, state, type, true ); + } + + public final static void setColor( Graphics g, + int state, + int type, + boolean enabled ) { if (type == 0) { - switch(state) { - case 0: - g.setColor(NORMAL_0); - break; - case 1: - g.setColor(POINTER_ON_ME_0); - GraphicLib.setMediumStroke(g); - break; - case 2: - g.setColor(SELECTED_0); - break; - case 3: - g.setColor(MOVING_0); - break; - case 4: - g.setColor(ADDING_0); - break; - case 5: - g.setColor(POINTED_0); - break; - case 6: - g.setColor(RESIZE_POINTED); - break; - case 7: - g.setColor(RESIZE_POINTED); - break; - default: - g.setColor(DEFAULT); - } + if ( !enabled ) { + g.setColor( DISABLED ); + } + else { + switch(state) { + case 0: + g.setColor(NORMAL_0); + break; + case 1: + g.setColor(POINTER_ON_ME_0); + GraphicLib.setMediumStroke(g); + break; + case 2: + g.setColor(SELECTED_0); + break; + case 3: + g.setColor(MOVING_0); + break; + case 4: + g.setColor(ADDING_0); + break; + case 5: + g.setColor(POINTED_0); + break; + case 6: + g.setColor(RESIZE_POINTED); + break; + case 7: + g.setColor(RESIZE_POINTED); + break; + default: + g.setColor(DEFAULT); + } + } } } @@ -298,10 +320,8 @@ public class ColorManager { AVATAR_RECEIVE_SIGNAL = Color.white; AVATAR_ASSUMPTION_ATTRIBUTES = Color.white; AVATAR_ASSUMPTION_TOP = Color.white; - SYSMLSEC_PARTITIONING = Color.white; - SYSMLSEC_SWDESIGN = Color.white; - SYSMLSEC_REQ = Color.white; - + SYSMLSEC_PARTITIONING = Color.white; + SYSMLSEC_SWDESIGN = Color.white; + SYSMLSEC_REQ = Color.white; } - } // Class Color diff --git a/src/main/java/ui/Expression.java b/src/main/java/ui/Expression.java new file mode 100644 index 0000000000000000000000000000000000000000..08cf3df2c60b9f429e4d5def99aa2d8bec385756 --- /dev/null +++ b/src/main/java/ui/Expression.java @@ -0,0 +1,69 @@ +package ui; + +public class Expression { + + private String text; + + private final String nullText; + + private final String label; + + private boolean enabled; + + public Expression( final String text ) { + this( text, null, null ); + } + + public Expression( final String text, + final String nullText, + final String label ) { + this.text = text; + this.nullText = nullText; + this.label = label; + this.enabled = true; + } +// +// public Expression( final String text, +// final boolean enabled, +// final String nullText ) { +// } + + public String getText() { + return text; + } + + public void setText( String text ) { + this.text = text; + } + + public boolean isEnabled() { + return enabled; + } + + public void setEnabled(boolean enabled) { + this.enabled = enabled; + } + + public String getEffectiveExpression( final String defaultExpr ) { + return isEnabled() ? getText() : defaultExpr; + } + + public boolean isNull() { + if ( nullText == null ) { + return getText() == null; + } + + return nullText.equals( getText() ); + } + + @Override + public String toString() { + final String text = isNull() ? "null" : getText(); + + return label == null ? text : String.format( label, text ); + } + + public String getLabel() { + return label; + } +} diff --git a/src/main/java/ui/FindNextEnabledConnectingPointVisitor.java b/src/main/java/ui/FindNextEnabledConnectingPointVisitor.java new file mode 100644 index 0000000000000000000000000000000000000000..32c0a42e98b42e385f282a1c112de69dddd0a9e4 --- /dev/null +++ b/src/main/java/ui/FindNextEnabledConnectingPointVisitor.java @@ -0,0 +1,71 @@ +package ui; + +import java.util.Set; + +public class FindNextEnabledConnectingPointVisitor extends TrackingCDElementVisitor { + + private final Set<TGConnector> disabledConnectors; + + private TGConnectingPoint enabledConnectingPoint; + + private TGConnectingPoint previousEnabledConnectingPoint; + + public FindNextEnabledConnectingPointVisitor( final Set<TGConnector> disabledConnectors ) { + super(); + + this.disabledConnectors = disabledConnectors; + enabledConnectingPoint = null; + } + + @Override + public boolean visit( final CDElement element ) { + if ( !super.visit( element ) ) { + return false; + } + + if ( element instanceof TGConnector ) { + final TGConnector connector = (TGConnector) element; + + if ( pruneConnector( connector ) ) { + disabledConnectors.add( (TGConnector) element ); + + return true; + } + + enabledConnectingPoint = previousEnabledConnectingPoint; + + return false; + } + + if ( element instanceof TGConnectingPoint ) { + final TGConnectingPoint point = (TGConnectingPoint) element; + final CDElement father = point.getFather(); + previousEnabledConnectingPoint = point; + + if ( !pruneElement( father ) ) { + enabledConnectingPoint = point; + + return false; + } + } + + return true; + } + + protected boolean pruneElement( final CDElement diagramElement ) { + return !diagramElement.isEnabled() || !( diagramElement instanceof TGComponent ) || diagramElement instanceof TGConnector; + } + + + protected boolean pruneConnector( final TGConnector connector ) { + return true; + } + + public TGConnectingPoint getEnabledComponentPoint() { + return enabledConnectingPoint; + } + + public Set<TGConnector> getDisabledConnectors() { + return disabledConnectors; + } +} diff --git a/src/main/java/ui/ForwardComponentsEnabledVisitor.java b/src/main/java/ui/ForwardComponentsEnabledVisitor.java new file mode 100644 index 0000000000000000000000000000000000000000..21f28cb74f23948114945db84e36564c53024c56 --- /dev/null +++ b/src/main/java/ui/ForwardComponentsEnabledVisitor.java @@ -0,0 +1,31 @@ +package ui; + +public class ForwardComponentsEnabledVisitor extends TrackingCDElementVisitor { + + private boolean enabled; + + public ForwardComponentsEnabledVisitor() { + super(); + + enabled = true; + } + + @Override + public boolean visit(CDElement element) { + if ( !super.visit( element ) ) { + return false; + } + + if ( element.canBeDisabled() && !( element instanceof TGConnector ) ) { + enabled = element.isEnabled(); + + return false; + } + + return true; + } + + public boolean isEnabled() { + return enabled; + } +} diff --git a/src/main/java/ui/GNCModeling.java b/src/main/java/ui/GNCModeling.java index 368b47c25185ac94e2a7bf30567a3499f30f834e..e470accc10c968c1964047f585959a4d647bf325 100755 --- a/src/main/java/ui/GNCModeling.java +++ b/src/main/java/ui/GNCModeling.java @@ -36,10 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - - package ui; import myutil.TreeCell; @@ -49,6 +45,7 @@ import ui.ncdd.*; import java.util.ArrayList; import java.util.LinkedList; +import java.util.List; import java.util.ListIterator; /** @@ -64,16 +61,14 @@ public class GNCModeling { private NCDiagramPanel ncdp; private LinkedList<CheckingError> checkingErrors, warnings; private CorrespondanceTGElement listE; - private NCStructure nc; + //private NCStructure nc; private static int PATH_INDEX = 0; - - + public GNCModeling(NCPanel _ncp) { ncp = _ncp; ncdp = ncp.ncdp; } - public NCStructure translateToNCStructure() { PATH_INDEX = 0; @@ -93,8 +88,6 @@ public class GNCModeling { manageParameters(); } - // - return ncs; } @@ -102,8 +95,7 @@ public class GNCModeling { return listE; } - - public LinkedList<CheckingError> getCheckingErrors() { + public List<CheckingError> getCheckingErrors() { return checkingErrors; } @@ -112,16 +104,16 @@ public class GNCModeling { } private void addEquipments() { - ListIterator iterator = ncdp.getListOfEqNode().listIterator(); + ListIterator<NCEqNode> iterator = ncdp.getListOfEqNode().listIterator(); NCEqNode node; NCEquipment eq; - NCConnectorNode con; - int cpt; + // NCConnectorNode con; + //int cpt; while(iterator.hasNext()) { - node = (NCEqNode)(iterator.next()); + node = iterator.next(); // Find the only interface of that Equipment // If more than one interface -> error @@ -163,13 +155,13 @@ public class GNCModeling { } private void addSwitches() { - ListIterator iterator = ncdp.getListOfSwitchNode().listIterator(); + ListIterator<NCSwitchNode> iterator = ncdp.getListOfSwitchNode().listIterator(); NCSwitchNode node; NCSwitch sw; NCCapacityUnit unit = new NCCapacityUnit(); while(iterator.hasNext()) { - node = (NCSwitchNode)(iterator.next()); + node = iterator.next(); sw= new NCSwitch(); sw.setName(node.getNodeName()); @@ -184,13 +176,13 @@ public class GNCModeling { } private void addTraffics() { - ListIterator iterator = ncdp.getTrafficArtifacts().listIterator(); + ListIterator<NCTrafficArtifact> iterator = ncdp.getTrafficArtifacts().listIterator(); NCTrafficArtifact arti; NCTraffic tr; NCTimeUnit unit; while(iterator.hasNext()) { - arti = (NCTrafficArtifact)(iterator.next()); + arti = iterator.next(); tr = new NCTraffic(); tr.setName(arti.getValue()); tr.setPeriodicType(arti.getPeriodicType()); @@ -210,9 +202,9 @@ public class GNCModeling { } private void addLinks() { - ListIterator iterator = ncdp.getListOfLinks().listIterator(); + ListIterator<NCConnectorNode> iterator = ncdp.getListOfLinks().listIterator(); NCConnectorNode nccn; - NCLink lk = null, lkr; + NCLink lk = null;//, lkr; boolean added; TGComponent tgc; TGConnectingPoint tp; @@ -223,7 +215,7 @@ public class GNCModeling { while(iterator.hasNext()) { added = false; - nccn = (NCConnectorNode)(iterator.next()); + nccn = iterator.next(); if (ncdp.isALinkBetweenEquipment(nccn)) { UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Link connected between two equipments: " + nccn.getInterfaceName()); @@ -305,19 +297,24 @@ public class GNCModeling { nccu.setUnit(nccn.getCapacityUnit()); lk.setCapacityUnit(nccu); } else { - if (switch1 == null) { + if (switch1 == null && switch2 != null ) { lk.setCapacity(switch2.getCapacity()); nccu = new NCCapacityUnit(); nccu.setUnit(switch2.getCapacityUnit()); lk.setCapacityUnit(nccu); } - if (switch2 == null) { + // DB: Seems to be a bug... + else if (switch2 == null && switch1 != null ) { lk.setCapacity(switch1.getCapacity()); nccu = new NCCapacityUnit(); - nccu.setUnit(switch2.getCapacityUnit()); + + // DB looks like a copy paste error + nccu.setUnit(switch1.getCapacityUnit()); +// nccu.setUnit(switch2.getCapacityUnit()); lk.setCapacityUnit(nccu); } - if ((switch1 != null) && (switch2 != null)) { + else { + //if ((switch1 != null) && (switch2 != null)) { if (switch1.getCapacity() != switch2.getCapacity()) { UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Link with no capacity between two switches of different capacity: " + nccn.getInterfaceName()); ce.setTDiagramPanel(ncdp); @@ -357,18 +354,18 @@ public class GNCModeling { // Consider each traffic // For each traffic, its builds a tree // Then, its generates the corresponding paths - ListIterator iterator = ncdp.getTrafficArtifacts().listIterator(); + ListIterator<NCTrafficArtifact> iterator = ncdp.getTrafficArtifacts().listIterator(); NCTrafficArtifact arti; NCTraffic tr; TreeCell tree; int ret; - NCPath path; + //NCPath path; NCEqNode node; NCEquipment eq; - ArrayList<String> list; + List<String> list; while(iterator.hasNext()) { - arti = (NCTrafficArtifact)(iterator.next()); + arti = iterator.next(); tr = ncs.getTrafficByName(arti.getValue()); if (tr == null) { @@ -399,7 +396,7 @@ public class GNCModeling { } } - public void exploreTree(TreeCell tree, ArrayList<String> list, NCEquipment origin, NCTraffic traffic) { + private void exploreTree(TreeCell tree, List<String> list, NCEquipment origin, NCTraffic traffic) { NCSwitchNode sw; NCSwitch ncsw; NCLinkedElement ncle; @@ -505,7 +502,7 @@ public class GNCModeling { // Find the only interface of that Equipment // If more than one interface -> error - ArrayList<NCSwitchNode> listsw = ncdp.getSwitchesOfEq(node); + List<NCSwitchNode> listsw = ncdp.getSwitchesOfEq(node); if (listsw.size() == 0) { UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Equipment " + node.getName() + " has non interface: traffic " + arti.getValue() + " cannot be sent over the network"); @@ -569,10 +566,10 @@ public class GNCModeling { TreeCell cell; NCConnectorNode nextArriving; - ArrayList<NCRoute> computed = new ArrayList<NCRoute>(); + List<NCRoute> computed = new ArrayList<NCRoute>(); // Get all routes concerning that traffic on that switch - ArrayList<NCRoute> routes = ncdp.getAllRoutesFor(sw, arti); + List<NCRoute> routes = ncdp.getAllRoutesFor(sw, arti); // @@ -703,9 +700,9 @@ public class GNCModeling { } public void manageParameters() { - ListIterator iterator; + //ListIterator iterator; NCEqNode node1, node2; - ArrayList<NCConnectorNode> cons1, cons2; + List<NCConnectorNode> cons1, cons2; NCConnectorNode con1, con2; int i; int parameter1, parameter2; @@ -716,14 +713,14 @@ public class GNCModeling { //NCPath path1; //ArrayList<NCEquipment> newEquipments = new ArrayList<NCEquipment>(); - ArrayList<NCTraffic> newTraffics = new ArrayList<NCTraffic>(); - ArrayList<NCLink> newLinks = new ArrayList<NCLink>(); - ArrayList<NCPath> newPaths = new ArrayList<NCPath>(); + //List<NCTraffic> newTraffics = new ArrayList<NCTraffic>(); + //List<NCLink> newLinks = new ArrayList<NCLink>(); + List<NCPath> newPaths = new ArrayList<NCPath>(); - ArrayList<NCEquipment> oldEquipments = new ArrayList<NCEquipment>(); - ArrayList<NCTraffic> oldTraffics = new ArrayList<NCTraffic>(); - ArrayList<NCLink> oldLinks = new ArrayList<NCLink>(); - ArrayList<NCPath> oldPaths = new ArrayList<NCPath>(); + List<NCEquipment> oldEquipments = new ArrayList<NCEquipment>(); + List<NCTraffic> oldTraffics = new ArrayList<NCTraffic>(); + List<NCLink> oldLinks = new ArrayList<NCLink>(); + List<NCPath> oldPaths = new ArrayList<NCPath>(); // Are there any path to duplicate? for(NCPath path: ncs.paths) { @@ -862,5 +859,4 @@ public class GNCModeling { cpt ++; } } - } diff --git a/src/main/java/ui/GTMLModeling.java b/src/main/java/ui/GTMLModeling.java index ea8fa2e3678ace381db547c86b47f79c866dcb40..f3d8a5b4412a30b2f31ef81b7d28e5886d29ff87 100755 --- a/src/main/java/ui/GTMLModeling.java +++ b/src/main/java/ui/GTMLModeling.java @@ -38,35 +38,103 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui; +import java.awt.Point; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; +import java.util.Iterator; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Vector; + import avatartranslator.AvatarSpecification; -import myutil.Conversion; import myutil.TraceManager; -import tmltranslator.*; +import tmltranslator.HwA; +import tmltranslator.HwBridge; +import tmltranslator.HwBus; +import tmltranslator.HwCPU; +import tmltranslator.HwCommunicationNode; +import tmltranslator.HwCrossbar; +import tmltranslator.HwDMA; +import tmltranslator.HwExecutionNode; +import tmltranslator.HwFPGA; +import tmltranslator.HwLink; +import tmltranslator.HwMemory; +import tmltranslator.HwNode; +import tmltranslator.HwVGMN; +import tmltranslator.SecurityPattern; +import tmltranslator.TMLActivity; +import tmltranslator.TMLActivityElement; +import tmltranslator.TMLActivityElementChannel; +import tmltranslator.TMLArchitecture; +import tmltranslator.TMLAttribute; +import tmltranslator.TMLCP; +import tmltranslator.TMLCPError; +import tmltranslator.TMLCPLib; +import tmltranslator.TMLCPLibArtifact; +import tmltranslator.TMLCPSyntaxChecking; +import tmltranslator.TMLChannel; +import tmltranslator.TMLCheckingError; +import tmltranslator.TMLElement; +import tmltranslator.TMLError; +import tmltranslator.TMLEvent; +import tmltranslator.TMLExecI; +import tmltranslator.TMLMapping; +import tmltranslator.TMLModeling; +import tmltranslator.TMLPort; +import tmltranslator.TMLRequest; +import tmltranslator.TMLSyntaxChecking; +import tmltranslator.TMLTask; +import tmltranslator.TMLType; import tmltranslator.modelcompiler.ArchUnitMEC; import tmltranslator.tmlcp.TMLCPElement; import tmltranslator.tmlcp.TMLSDAction; import tmltranslator.tmlcp.TMLSDEvent; import tmltranslator.tmlcp.TMLSDMessage; import translator.CheckingError; -import ui.tmlad.*; +import ui.tmlad.TMLADEncrypt; +import ui.tmlad.TMLADReadChannel; +import ui.tmlad.TMLADWriteChannel; +import ui.tmlad.TMLActivityDiagramPanel; import ui.tmlcd.TMLChannelOperator; import ui.tmlcd.TMLEventOperator; import ui.tmlcd.TMLRequestOperator; import ui.tmlcd.TMLTaskOperator; -import ui.tmlcompd.*; -import ui.tmldd.*; +import ui.tmlcompd.TMLCChannelOutPort; +import ui.tmlcompd.TMLCFork; +import ui.tmlcompd.TMLCJoin; +import ui.tmlcompd.TMLCPath; +import ui.tmlcompd.TMLCPortConnector; +import ui.tmlcompd.TMLCPrimitiveComponent; +import ui.tmlcompd.TMLCPrimitivePort; +import ui.tmlcompd.TMLCRecordComponent; +import ui.tmldd.TMLArchiArtifact; +import ui.tmldd.TMLArchiBUSNode; +import ui.tmldd.TMLArchiBridgeNode; +import ui.tmldd.TMLArchiCPNode; +import ui.tmldd.TMLArchiCPUNode; +import ui.tmldd.TMLArchiCommunicationArtifact; +import ui.tmldd.TMLArchiCommunicationNode; +import ui.tmldd.TMLArchiConnectorNode; +import ui.tmldd.TMLArchiCrossbarNode; +import ui.tmldd.TMLArchiDMANode; +import ui.tmldd.TMLArchiEventArtifact; +import ui.tmldd.TMLArchiFPGANode; +import ui.tmldd.TMLArchiFirewallNode; +import ui.tmldd.TMLArchiHWANode; +import ui.tmldd.TMLArchiKey; +import ui.tmldd.TMLArchiMemoryNode; +import ui.tmldd.TMLArchiNode; +import ui.tmldd.TMLArchiPortArtifact; +import ui.tmldd.TMLArchiVGMNNode; import ui.tmlsd.TGConnectorMessageTMLSD; import ui.tmlsd.TMLSDControllerInstance; import ui.tmlsd.TMLSDStorageInstance; import ui.tmlsd.TMLSDTransferInstance; -import java.awt.*; -import java.util.*; -import java.util.List; - /** * Class GTMLModeling * Use to translate graphical TML modeling to "tmlmodeling" @@ -1595,7 +1663,7 @@ public class GTMLModeling { } else { // Adding all elements of record //TraceManager.addDev("Found a record named: " + rc.getValue()); - LinkedList<TAttribute> attr = rc.getAttributes(); + List<TAttribute> attr = rc.getAttributes(); for (TAttribute tat : attr) { if (tat.getType() == TAttribute.NATURAL) { tt = new TMLType(TMLType.NATURAL); @@ -1654,860 +1722,873 @@ public class GTMLModeling { while (iterator.hasNext()) { tmltask = iterator.next(); - generateTaskActivityDiagrams(tmltask); + + // Issue #69: Component disabling + ActivityDiagram2TMLTranslator.INSTANCE.generateTaskActivityDiagrams( tmltask, + checkingErrors, + warnings, + listE, + tmlm, + securityPatterns, + table, + removedChannels, + removedEvents, + removedRequests ); +// generateTaskActivityDiagrams(tmltask); } //TraceManager.addDev( "errors: " + checkingErrors.size() ); if (checkingErrors.size() > 0) { throw new MalformedTMLDesignException("Error(s) found in activity diagrams"); } } - - private String modifyActionString(String _input) { - int index = _input.indexOf("++"); - boolean b1, b2; - String tmp; - - if (index > -1) { - tmp = _input.substring(0, index).trim(); - - b1 = (tmp.substring(0, 1)).matches("[a-zA-Z]"); - b2 = tmp.matches("\\w*"); - if (b1 && b2) { - return tmp + " = " + tmp + " + 1"; - } - } - - index = _input.indexOf("--"); - if (index > -1) { - tmp = _input.substring(0, index).trim(); - - b1 = (tmp.substring(0, 1)).matches("[a-zA-Z]"); - b2 = tmp.matches("\\w*"); - if (b1 && b2) { - return tmp + " = " + tmp + " - 1"; - } - } - - return modifyString(_input); - } - - private String modifyString(String _input) { - return Conversion.replaceAllChar(_input, '.', "__"); - } - - private void generateTaskActivityDiagrams(TMLTask tmltask) throws MalformedTMLDesignException { - TMLActivity activity = tmltask.getActivityDiagram(); - TMLActivityDiagramPanel tadp = (TMLActivityDiagramPanel) (activity.getReferenceObject()); - - //TraceManager.addDev("Generating activity diagram of:" + tmltask.getName()); - - // search for start state - List<TGComponent> list = tadp.getComponentList(); - Iterator<TGComponent> iterator = list.listIterator(); - TGComponent tgc; - TMLADStartState tss = null; - int cptStart = 0; - // boolean rndAdded = false; - - while (iterator.hasNext()) { - tgc = iterator.next(); - - if (tgc instanceof TMLADStartState) { - tss = (TMLADStartState) tgc; - cptStart++; - } - } - - if (tss == null) { - TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "No start state in the TML activity diagram of " + tmltask.getName()); - ce.setTMLTask(tmltask); - checkingErrors.add(ce); - return; - } - - if (cptStart > 1) { - TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "More than one start state in the TML activity diagram of " + tmltask.getName()); - ce.setTMLTask(tmltask); - checkingErrors.add(ce); - return; - } - - // Adding start state - TMLStartState tmlss = new TMLStartState("start", tss); - listE.addCor(tmlss, tss); - activity.setFirst(tmlss); - - // Creation of other elements - TMLChannel channel; - String[] channels; - TMLEvent event; - TMLRequest request; - - TMLADRandom tmladrandom; - TMLRandom tmlrandom; - TMLActionState tmlaction; - TMLChoice tmlchoice; - TMLExecI tmlexeci; - TMLExecIInterval tmlexecii; - TMLExecC tmlexecc; - TMLExecCInterval tmlexecci; - TMLForLoop tmlforloop; - TMLReadChannel tmlreadchannel; - TMLSendEvent tmlsendevent; - TMLSendRequest tmlsendrequest; - TMLStopState tmlstopstate; - TMLWaitEvent tmlwaitevent; - TMLNotifiedEvent tmlnotifiedevent; - TMLWriteChannel tmlwritechannel; - TMLSequence tmlsequence; - TMLRandomSequence tmlrsequence; - TMLSelectEvt tmlselectevt; - TMLDelay tmldelay; - int staticLoopIndex = 0; - String sl = "", tmp; - TMLType tt; - TMLAttribute tmlt; - - iterator = list.listIterator(); - while (iterator.hasNext()) { - tgc = iterator.next(); - if (tgc.getCheckLatency()) { - String name = tmltask.getName() + ":" + tgc.getName(); - name = name.replaceAll(" ", ""); - //TraceManager.addDev("To check " + name); - if (tgc.getValue().contains("(")) { - tmlm.addCheckedActivity(tgc, name + ":" + tgc.getValue().split("\\(")[0]); - } else { - if (tgc instanceof TMLADExecI) { - tmlm.addCheckedActivity(tgc, ((TMLADExecI) tgc).getDelayValue()); - } - } - } - if (tgc instanceof TMLADActionState) { - tmlaction = new TMLActionState("action", tgc); - tmp = ((TMLADActionState) (tgc)).getAction(); - tmp = modifyActionString(tmp); - tmlaction.setAction(tmp); - activity.addElement(tmlaction); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlaction, tgc); - - } else if (tgc instanceof TMLADRandom) { - tmladrandom = (TMLADRandom) tgc; - tmlrandom = new TMLRandom("random" + tmladrandom.getValue(), tgc); - tmp = tmladrandom.getVariable(); - tmp = modifyActionString(tmp); - tmlrandom.setVariable(tmp); - tmp = tmladrandom.getMinValue(); - tmp = modifyActionString(tmp); - tmlrandom.setMinValue(tmp); - tmp = tmladrandom.getMaxValue(); - tmp = modifyActionString(tmp); - tmlrandom.setMaxValue(tmp); - tmlrandom.setFunctionId(tmladrandom.getFunctionId()); - activity.addElement(tmlrandom); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlrandom, tgc); - - } else if (tgc instanceof TMLADChoice) { - tmlchoice = new TMLChoice("choice", tgc); - // Guards are added at the same time as next activities - activity.addElement(tmlchoice); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlchoice, tgc); - - } else if (tgc instanceof TMLADSelectEvt) { - tmlselectevt = new TMLSelectEvt("select", tgc); - activity.addElement(tmlselectevt); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlselectevt, tgc); - - } else if (tgc instanceof TMLADExecI) { - tmlexeci = new TMLExecI("execi", tgc); - tmlexeci.setAction(modifyString(((TMLADExecI) tgc).getDelayValue())); - tmlexeci.setValue(((TMLADExecI) tgc).getDelayValue()); - activity.addElement(tmlexeci); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlexeci, tgc); - - } else if (tgc instanceof TMLADExecIInterval) { - tmlexecii = new TMLExecIInterval("execi", tgc); - tmlexecii.setValue(tgc.getValue()); - tmlexecii.setMinDelay(modifyString(((TMLADExecIInterval) tgc).getMinDelayValue())); - tmlexecii.setMaxDelay(modifyString(((TMLADExecIInterval) tgc).getMaxDelayValue())); - activity.addElement(tmlexecii); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlexecii, tgc); - - } else if (tgc instanceof TMLADEncrypt) { - tmlexecc = new TMLExecC("encrypt_" + ((TMLADEncrypt) tgc).securityContext, tgc); - activity.addElement(tmlexecc); - SecurityPattern sp = securityPatterns.get(((TMLADEncrypt) tgc).securityContext); - if (sp == null) { - //Throw error for missing security pattern - UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADEncrypt) tgc).securityContext + " not found"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } else { - tmlexecc.securityPattern = sp; - tmlexecc.setAction(Integer.toString(sp.encTime)); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - tmlm.securityTaskMap.get(sp).add(tmltask); - listE.addCor(tmlexecc, tgc); - } - } else if (tgc instanceof TMLADDecrypt) { - tmlexecc = new TMLExecC("decrypt_" + ((TMLADDecrypt) tgc).securityContext, tgc); - activity.addElement(tmlexecc); - SecurityPattern sp = securityPatterns.get(((TMLADDecrypt) tgc).securityContext); - if (sp == null) { - //Throw error for missing security pattern - UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADDecrypt) tgc).securityContext + " not found"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } else { - tmlexecc.securityPattern = sp; - tmlexecc.setAction(Integer.toString(sp.decTime)); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlexecc, tgc); - tmlm.securityTaskMap.get(sp).add(tmltask); - } - - } else if (tgc instanceof TMLADExecC) { - tmlexecc = new TMLExecC("execc", tgc); - tmlexecc.setValue(((TMLADExecC) tgc).getDelayValue()); - tmlexecc.setAction(modifyString(((TMLADExecC) tgc).getDelayValue())); - activity.addElement(tmlexecc); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlexecc, tgc); - - } else if (tgc instanceof TMLADExecCInterval) { - tmlexecci = new TMLExecCInterval("execci", tgc); - tmlexecci.setMinDelay(modifyString(((TMLADExecCInterval) tgc).getMinDelayValue())); - tmlexecci.setMaxDelay(modifyString(((TMLADExecCInterval) tgc).getMaxDelayValue())); - activity.addElement(tmlexecci); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlexecci, tgc); - - } else if (tgc instanceof TMLADDelay) { - tmldelay = new TMLDelay("d-delay", tgc); - tmldelay.setMinDelay(modifyString(((TMLADDelay) tgc).getDelayValue())); - tmldelay.setMaxDelay(modifyString(((TMLADDelay) tgc).getDelayValue())); - tmldelay.setUnit(((TMLADDelay) tgc).getUnit()); - activity.addElement(tmldelay); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmldelay, tgc); - - } else if (tgc instanceof TMLADDelayInterval) { - tmldelay = new TMLDelay("nd-delay", tgc); - tmldelay.setMinDelay(modifyString(((TMLADDelayInterval) tgc).getMinDelayValue())); - tmldelay.setMaxDelay(modifyString(((TMLADDelayInterval) tgc).getMaxDelayValue())); - tmldelay.setUnit(((TMLADDelayInterval) tgc).getUnit()); - activity.addElement(tmldelay); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmldelay, tgc); - - } else if (tgc instanceof TMLADForLoop) { - tmlforloop = new TMLForLoop("loop", tgc); - tmlforloop.setInit(modifyString(((TMLADForLoop) tgc).getInit())); - tmp = ((TMLADForLoop) tgc).getCondition(); - /*if (tmp.trim().length() == 0) { - tmp = "true"; - }*/ - tmlforloop.setCondition(modifyString(tmp)); - tmlforloop.setIncrement(modifyActionString(((TMLADForLoop) tgc).getIncrement())); - - activity.addElement(tmlforloop); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlforloop, tgc); - - } else if (tgc instanceof TMLADForStaticLoop) { - sl = "loop__" + staticLoopIndex; - tt = new TMLType(TMLType.NATURAL); - tmlt = new TMLAttribute(sl, tt); - tmlt.initialValue = "0"; - tmltask.addAttribute(tmlt); - tmlforloop = new TMLForLoop(sl, tgc); - tmlforloop.setInit(sl + " = 0"); - tmlforloop.setCondition(sl + "<" + modifyString(tgc.getValue())); - tmlforloop.setIncrement(sl + " = " + sl + " + 1"); - activity.addElement(tmlforloop); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlforloop, tgc); - staticLoopIndex++; - - } else if (tgc instanceof TMLADForEverLoop) { - /*sl = "loop__" + staticLoopIndex; - tt = new TMLType(TMLType.NATURAL); - tmlt = new TMLAttribute(sl, tt); - tmlt.initialValue = "0"; - tmltask.addAttribute(tmlt);*/ - tmlforloop = new TMLForLoop("infiniteloop", tgc); - tmlforloop.setInit(""); - tmlforloop.setCondition(""); - tmlforloop.setIncrement(""); - tmlforloop.setInfinite(true); - activity.addElement(tmlforloop); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlforloop, tgc); - staticLoopIndex++; - - tmlstopstate = new TMLStopState("Stop after infinite loop", null); - activity.addElement(tmlstopstate); - tmlforloop.addNext(tmlstopstate); - - } else if (tgc instanceof TMLADSequence) { - tmlsequence = new TMLSequence("seq", tgc); - activity.addElement(tmlsequence); - listE.addCor(tmlsequence, tgc); - - } else if (tgc instanceof TMLADUnorderedSequence) { - tmlrsequence = new TMLRandomSequence("rseq", tgc); - activity.addElement(tmlrsequence); - listE.addCor(tmlrsequence, tgc); - - } else if (tgc instanceof TMLADReadChannel) { - // Get the channel - //TMLADReadChannel rd = (TMLADReadChannel) tgc; - channel = tmlm.getChannelByName(getFromTable(tmltask, ((TMLADReadChannel) tgc).getChannelName())); - /*if (rd.isAttacker()){ - channel = tmlm.getChannelByName(getAttackerChannel(((TMLADReadChannel)tgc).getChannelName())); - }*/ - if (channel == null) { - if (Conversion.containsStringInList(removedChannels, ((TMLADReadChannel) tgc).getChannelName())) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADReadChannel) tgc).getChannelName() + " has been removed because the corresponding channel is not taken into account"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - warnings.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - activity.addElement(new TMLJunction("void junction", tgc)); - } else { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADReadChannel) tgc).getChannelName() + " is an unknown channel"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - checkingErrors.add(ce); - } - - } else { - tmlreadchannel = new TMLReadChannel("read channel", tgc); - tmlreadchannel.setNbOfSamples(modifyString(((TMLADReadChannel) tgc).getSamplesValue())); - tmlreadchannel.setEncForm(((TMLADReadChannel) tgc).getEncForm()); - tmlreadchannel.addChannel(channel); - //security pattern - if (securityPatterns.get(((TMLADReadChannel) tgc).getSecurityContext()) != null) { - tmlreadchannel.securityPattern = securityPatterns.get(((TMLADReadChannel) tgc).getSecurityContext()); - //NbOfSamples will increase due to extra overhead from MAC - int cur = 1; - try { - cur = Integer.valueOf(modifyString(((TMLADReadChannel) tgc).getSamplesValue())); - } catch (NumberFormatException e) { - } catch (NullPointerException e) { - } - int add = Integer.valueOf(tmlreadchannel.securityPattern.overhead); - if (!tmlreadchannel.securityPattern.nonce.equals("")) { - SecurityPattern nonce = securityPatterns.get(tmlreadchannel.securityPattern.nonce); - if (nonce != null) { - add = Integer.valueOf(nonce.overhead); - } - } - cur = cur + add; - tmlreadchannel.setNbOfSamples(Integer.toString(cur)); - } else if (!((TMLADReadChannel) tgc).getSecurityContext().isEmpty()) { - //Throw error for missing security pattern - UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADReadChannel) tgc).getSecurityContext() + " not found"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } - if (tmltask.isAttacker()) { - tmlreadchannel.setAttacker(true); - } - activity.addElement(tmlreadchannel); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlreadchannel, tgc); - } - } else if (tgc instanceof TMLADSendEvent) { - event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADSendEvent) tgc).getEventName())); - if (event == null) { - if (Conversion.containsStringInList(removedEvents, ((TMLADSendEvent) tgc).getEventName())) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - warnings.add(ce); - activity.addElement(new TMLJunction("void junction", tgc)); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } else { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent) tgc).getEventName() + " is an unknown event"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } - } else { - tmlsendevent = new TMLSendEvent("send event", tgc); - tmlsendevent.setEvent(event); - - for (int i = 0; i < ((TMLADSendEvent) tgc).realNbOfParams(); i++) { - tmp = modifyString(((TMLADSendEvent) tgc).getRealParamValue(i)); - Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); - if (allVariables.size() > 0) { - for (int k = 0; k < allVariables.size(); k++) { - //TraceManager.addDev("Adding record: " + allVariables.get(k)); - tmlsendevent.addParam(allVariables.get(k)); - } - } else { - //TraceManager.addDev("Adding param: " + tmp); - tmlsendevent.addParam(tmp); - } - } - if (event.getNbOfParams() != tmlsendevent.getNbOfParams()) { - //TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " sendevent#:" + tmlsendevent.getNbOfParams()); - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent) tgc).getEventName() + ": wrong number of parameters"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } else { - activity.addElement(tmlsendevent); - listE.addCor(tmlsendevent, tgc); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - } - } - - } else if (tgc instanceof TMLADSendRequest) { - request = tmlm.getRequestByName(getFromTable(tmltask, ((TMLADSendRequest) tgc).getRequestName())); - if (request == null) { - if (Conversion.containsStringInList(removedRequests, ((TMLADSendRequest) tgc).getRequestName())) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendRequest) tgc).getRequestName() + " has been removed because the corresponding request is not taken into account"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - warnings.add(ce); - activity.addElement(new TMLJunction("void junction", tgc)); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } else { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest) tgc).getRequestName() + " is an unknown request"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } - } else { - tmlsendrequest = new TMLSendRequest("send request", tgc); - tmlsendrequest.setRequest(request); - for (int i = 0; i < ((TMLADSendRequest) tgc).realNbOfParams(); i++) { - tmp = modifyString(((TMLADSendRequest) tgc).getRealParamValue(i)); - Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); - if (allVariables.size() > 0) { - for (int k = 0; k < allVariables.size(); k++) { - TraceManager.addDev("Adding record: " + allVariables.get(k)); - tmlsendrequest.addParam(allVariables.get(k)); - request.addParamName(allVariables.get(k)); - } - } else { - //TraceManager.addDev("Adding param: " + tmp); - tmlsendrequest.addParam(tmp); - request.addParamName(tmp); - } - } - if (request.getNbOfParams() != tmlsendrequest.getNbOfParams()) { - //TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " sendrequest#:" + tmlsendrequest.getNbOfParams()); - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest) tgc).getRequestName() + ": wrong number of parameters"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } else { - activity.addElement(tmlsendrequest); - listE.addCor(tmlsendrequest, tgc); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - } - } - - } else if (tgc instanceof TMLADReadRequestArg) { - request = tmlm.getRequestToMe(tmltask); - if (request == null) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "This task is not requested: cannot use \"reading request arg\" operator"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } else { - tmlaction = new TMLActionState("action reading args", tgc); - String act = ""; - int cpt = 1; - for (int i = 0; i < ((TMLADReadRequestArg) tgc).realNbOfParams(); i++) { - tmp = modifyString(((TMLADReadRequestArg) tgc).getRealParamValue(i)); - Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); - - if (allVariables.size() > 0) { - for (int k = 0; k < allVariables.size(); k++) { - //TraceManager.addDev("Adding record: " + allVariables.get(k)); - if (cpt != 1) { - act += "$"; - } - act += allVariables.get(k) + " = arg" + cpt + "__req"; - cpt++; - } - } else { - //TraceManager.addDev("Adding param: " + tmp); - if (cpt != 1) { - act += "$"; - } - act += tmp + " = arg" + cpt + "__req"; - cpt++; - } - } - if (request.getNbOfParams() != (cpt - 1)) { - //TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " read request arg#:" + (cpt-1)); - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Wrong number of parameters in \"reading request arg\" operator"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } else { - //TraceManager.addDev("Adding action = " + act); - tmlaction.setAction(act); - activity.addElement(tmlaction); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlaction, tgc); - } - - - } - - } else if (tgc instanceof TMLADStopState) { - tmlstopstate = new TMLStopState("stop state", tgc); - activity.addElement(tmlstopstate); - listE.addCor(tmlstopstate, tgc); - - } else if (tgc instanceof TMLADNotifiedEvent) { - event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADNotifiedEvent) tgc).getEventName())); - if (event == null) { - if (removedEvents.size() > 0) { - if (Conversion.containsStringInList(removedEvents, ((TMLADNotifiedEvent) tgc).getEventName())) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADNotifiedEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - warnings.add(ce); - activity.addElement(new TMLJunction("void junction", tgc)); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } else { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent) tgc).getEventName() + " is an unknown event"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } - } else { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent) tgc).getEventName() + " is an unknown event"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } - } else { - event.setNotified(true); - tmlnotifiedevent = new TMLNotifiedEvent("notified event", tgc); - tmlnotifiedevent.setEvent(event); - tmlnotifiedevent.setVariable(modifyString(((TMLADNotifiedEvent) tgc).getVariable())); - activity.addElement(tmlnotifiedevent); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlnotifiedevent, tgc); - } - - } else if (tgc instanceof TMLADWaitEvent) { - event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADWaitEvent) tgc).getEventName())); - if (event == null) { - if (removedEvents.size() > 0) { - if (Conversion.containsStringInList(removedEvents, ((TMLADWaitEvent) tgc).getEventName())) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWaitEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - warnings.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - activity.addElement(new TMLJunction("void junction", tgc)); - } else { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + " is an unknown event"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - checkingErrors.add(ce); - } - } else { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + " is an unknown event"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - checkingErrors.add(ce); - } - } else { - //TraceManager.addDev("Nb of param of event:" + event.getNbOfParams()); - tmlwaitevent = new TMLWaitEvent("wait event", tgc); - tmlwaitevent.setEvent(event); - for (int i = 0; i < ((TMLADWaitEvent) tgc).realNbOfParams(); i++) { - tmp = modifyString(((TMLADWaitEvent) tgc).getRealParamValue(i)); - Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); - if (allVariables.size() > 0) { - for (int k = 0; k < allVariables.size(); k++) { - //TraceManager.addDev("Adding record: " + allVariables.get(k)); - tmlwaitevent.addParam(allVariables.get(k)); - } - } else { - //TraceManager.addDev("Adding param: " + tmp); - tmlwaitevent.addParam(tmp); - } - } - if (event.getNbOfParams() != tmlwaitevent.getNbOfParams()) { - //TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " waitevent#:" + tmlwaitevent.getNbOfParams()); - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + ": wrong number of parameters"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - } else { - activity.addElement(tmlwaitevent); - listE.addCor(tmlwaitevent, tgc); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - } - - } - - } else if (tgc instanceof TMLADWriteChannel) { - // Get channels - //TMLADWriteChannel wr = (TMLADWriteChannel) tgc; - channels = ((TMLADWriteChannel) tgc).getChannelsByName(); - boolean error = false; - for (int i = 0; i < channels.length; i++) { - //TraceManager.addDev("Getting from table " + tmltask.getName() + "/" +channels[i]); - channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i])); - if (channel == null) { - if (Conversion.containsStringInList(removedChannels, ((TMLADWriteChannel) tgc).getChannelName(i))) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWriteChannel) tgc).getChannelName(i) + " has been removed because the corresponding channel is not taken into account"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - warnings.add(ce); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - activity.addElement(new TMLJunction("void junction", tgc)); - } else { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWriteChannel) tgc).getChannelName(i) + " is an unknown channel"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); - checkingErrors.add(ce); - } - error = true; - - } - } - if (!error) { - tmlwritechannel = new TMLWriteChannel("write channel", tgc); - tmlwritechannel.setNbOfSamples(modifyString(((TMLADWriteChannel) tgc).getSamplesValue())); - tmlwritechannel.setEncForm(((TMLADWriteChannel) tgc).getEncForm()); - for (int i = 0; i < channels.length; i++) { - channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i])); - tmlwritechannel.addChannel(channel); - } - //if (wr.isAttacker()){ - //channel = tmlm.getChannelByName(getAttackerChannel(channels[0])); - //tmlwritechannel.addChannel(channel); - //} - //add sec pattern - if (securityPatterns.get(((TMLADWriteChannel) tgc).getSecurityContext()) != null) { - tmlwritechannel.securityPattern = securityPatterns.get(((TMLADWriteChannel) tgc).getSecurityContext()); - int cur = Integer.valueOf(modifyString(((TMLADWriteChannel) tgc).getSamplesValue())); - int add = Integer.valueOf(tmlwritechannel.securityPattern.overhead); - if (!tmlwritechannel.securityPattern.nonce.equals("")) { - SecurityPattern nonce = securityPatterns.get(tmlwritechannel.securityPattern.nonce); - if (nonce != null) { - add = Integer.valueOf(nonce.overhead); - } - } - cur = cur + add; - tmlwritechannel.setNbOfSamples(Integer.toString(cur)); - } else if (!((TMLADWriteChannel) tgc).getSecurityContext().isEmpty()) { - //Throw error for missing security pattern - UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADWriteChannel) tgc).getSecurityContext() + " not found"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } - if (tmltask.isAttacker()) { - tmlwritechannel.setAttacker(true); - } - activity.addElement(tmlwritechannel); - ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); - listE.addCor(tmlwritechannel, tgc); - } - } - } - - // Interconnection between elements - TGConnectorTMLAD tgco; - TGConnectingPoint p1, p2; - TMLActivityElement ae1, ae2; - TGComponent tgc1, tgc2, tgc3; - int j, index; - - iterator = list.listIterator(); - while (iterator.hasNext()) { - tgc = iterator.next(); - if (tgc instanceof TGConnectorTMLAD) { - tgco = (TGConnectorTMLAD) tgc; - p1 = tgco.getTGConnectingPointP1(); - p2 = tgco.getTGConnectingPointP2(); - - // Identification of connected components - tgc1 = null; - tgc2 = null; - for (j = 0; j < list.size(); j++) { - tgc3 = list.get(j); - if (tgc3.belongsToMe(p1)) { - tgc1 = tgc3; - } - if (tgc3.belongsToMe(p2)) { - tgc2 = tgc3; - } - } - - // Connecting tml modeling components - if ((tgc1 != null) && (tgc2 != null)) { - //ADComponent ad1, ad2; - ae1 = activity.findReferenceElement(tgc1); - ae2 = activity.findReferenceElement(tgc2); - - if ((ae1 != null) && (ae2 != null)) { - //Special case if "for loop" or if "choice" - - if (ae1 instanceof TMLForLoop) { - index = tgc1.indexOf(p1) - 1; - if (index == 0) { - ae1.addNext(0, ae2); - } else { - ae1.addNext(ae2); - } - - } else if (ae1 instanceof TMLChoice) { - index = tgc1.indexOf(p1) - 1; - //TraceManager.addDev("Adding next:" + ae2); - ae1.addNext(ae2); - //TraceManager.addDev("Adding guard:" + ((TMLADChoice)tgc1).getGuard(index)); - ((TMLChoice) ae1).addGuard(modifyString(((TMLADChoice) tgc1).getGuard(index))); - - } else if (ae1 instanceof TMLSequence) { - index = tgc1.indexOf(p1) - 1; - ((TMLSequence) ae1).addIndex(index); - ae1.addNext(ae2); - //TraceManager.addDev("Adding " + ae2 + " at index " + index); - - } else if (ae1 instanceof TMLRandomSequence) { - index = tgc1.indexOf(p1) - 1; - ((TMLRandomSequence) ae1).addIndex(index); - ae1.addNext(ae2); - //TraceManager.addDev("Adding " + ae2 + " at index " + index); - - } else { - ae1.addNext(ae2); - } - } - } - } - } - - - // Check that each "for" has two nexts - // Check that TMLChoice have compatible guards - // Check TML select evts - iterator = list.listIterator(); - while (iterator.hasNext()) { - tgc = iterator.next(); - - if ((tgc instanceof TMLADForLoop) || (tgc instanceof TMLADForStaticLoop)) { - ae1 = activity.findReferenceElement(tgc); - if (ae1 != null) { - if (ae1.getNbNext() != 2) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted for loop: a loop must have an internal behavior, and an exit behavior "); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } - } - } else if (tgc instanceof TMLADChoice) { - tmlchoice = (TMLChoice) (activity.findReferenceElement(tgc)); - tmlchoice.orderGuards(); - - int nbNonDeter = tmlchoice.nbOfNonDeterministicGuard(); - int nbStocha = tmlchoice.nbOfStochasticGuard(); - if ((nbNonDeter > 0) && (nbStocha > 0)) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic and stochastic guards"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } - int nb = Math.max(nbNonDeter, nbStocha); - if (nb > 0) { - nb = nb + tmlchoice.nbOfElseAndAfterGuards(); - if (nb != tmlchoice.getNbGuard()) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic/ stochastic and regular guards)"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } - } - - if (tmlchoice.nbOfNonDeterministicGuard() > 0) { - /*if (!rndAdded) { - TMLAttribute tmlt = new TMLAttribute("rnd__0", new TMLType(TMLType.NATURAL)); - tmlt.initialValue = ""; - tmltask.addAttribute(tmlt); - rndAdded = true; - }*/ - } - if (tmlchoice.hasMoreThanOneElse()) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [else] guard"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } else if ((index = tmlchoice.getElseGuard()) > -1) { - index = tmlchoice.getElseGuard(); - if (index == 0) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have a regular guard"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } - } - if (tmlchoice.hasMoreThanOneAfter()) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [after] guard"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } - } - if (tgc instanceof TMLADSelectEvt) { - tmlselectevt = (TMLSelectEvt) (activity.findReferenceElement(tgc)); - if (!tmlselectevt.isARealSelectEvt()) { - UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "'Select events' should be followed by only event receiving operators"); - ce.setTDiagramPanel(tadp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - } - } - - } - - // Sorting nexts elements of Sequence - for (j = 0; j < activity.nElements(); j++) { - ae1 = activity.get(j); - if (ae1 instanceof TMLSequence) { - ((TMLSequence) ae1).sortNexts(); - } - if (ae1 instanceof TMLRandomSequence) { - ((TMLRandomSequence) ae1).sortNexts(); - } - } - } +// +// private String modifyActionString(String _input) { +// int index = _input.indexOf("++"); +// boolean b1, b2; +// String tmp; +// +// if (index > -1) { +// tmp = _input.substring(0, index).trim(); +// +// b1 = (tmp.substring(0, 1)).matches("[a-zA-Z]"); +// b2 = tmp.matches("\\w*"); +// if (b1 && b2) { +// return tmp + " = " + tmp + " + 1"; +// } +// } +// +// index = _input.indexOf("--"); +// if (index > -1) { +// tmp = _input.substring(0, index).trim(); +// +// b1 = (tmp.substring(0, 1)).matches("[a-zA-Z]"); +// b2 = tmp.matches("\\w*"); +// if (b1 && b2) { +// return tmp + " = " + tmp + " - 1"; +// } +// } +// +// return modifyString(_input); +// } +// +// private String modifyString(String _input) { +// return Conversion.replaceAllChar(_input, '.', "__"); +// } + + // Issue #69: Moved to class ActivityDiagram2TMLTranslator +// private void generateTaskActivityDiagrams(TMLTask tmltask) throws MalformedTMLDesignException { +// TMLActivity activity = tmltask.getActivityDiagram(); +// TMLActivityDiagramPanel tadp = (TMLActivityDiagramPanel) (activity.getReferenceObject()); +// +// //TraceManager.addDev("Generating activity diagram of:" + tmltask.getName()); +// +// // search for start state +// List<TGComponent> list = tadp.getComponentList(); +// Iterator<TGComponent> iterator = list.listIterator(); +// TGComponent tgc; +// TMLADStartState tss = null; +// int cptStart = 0; +// // boolean rndAdded = false; +// +// while (iterator.hasNext()) { +// tgc = iterator.next(); +// +// if (tgc instanceof TMLADStartState) { +// tss = (TMLADStartState) tgc; +// cptStart++; +// } +// } +// +// if (tss == null) { +// TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "No start state in the TML activity diagram of " + tmltask.getName()); +// ce.setTMLTask(tmltask); +// checkingErrors.add(ce); +// return; +// } +// +// if (cptStart > 1) { +// TMLCheckingError ce = new TMLCheckingError(CheckingError.BEHAVIOR_ERROR, "More than one start state in the TML activity diagram of " + tmltask.getName()); +// ce.setTMLTask(tmltask); +// checkingErrors.add(ce); +// return; +// } +// +// // Adding start state +// TMLStartState tmlss = new TMLStartState("start", tss); +// listE.addCor(tmlss, tss); +// activity.setFirst(tmlss); +// +// // Creation of other elements +// TMLChannel channel; +// String[] channels; +// TMLEvent event; +// TMLRequest request; +// +// TMLADRandom tmladrandom; +// TMLRandom tmlrandom; +// TMLActionState tmlaction; +// TMLChoice tmlchoice; +// TMLExecI tmlexeci; +// TMLExecIInterval tmlexecii; +// TMLExecC tmlexecc; +// TMLExecCInterval tmlexecci; +// TMLForLoop tmlforloop; +// TMLReadChannel tmlreadchannel; +// TMLSendEvent tmlsendevent; +// TMLSendRequest tmlsendrequest; +// TMLStopState tmlstopstate; +// TMLWaitEvent tmlwaitevent; +// TMLNotifiedEvent tmlnotifiedevent; +// TMLWriteChannel tmlwritechannel; +// TMLSequence tmlsequence; +// TMLRandomSequence tmlrsequence; +// TMLSelectEvt tmlselectevt; +// TMLDelay tmldelay; +// int staticLoopIndex = 0; +// String sl = "", tmp; +// TMLType tt; +// TMLAttribute tmlt; +// +// iterator = list.listIterator(); +// while (iterator.hasNext()) { +// tgc = iterator.next(); +// if (tgc.getCheckLatency()) { +// String name = tmltask.getName() + ":" + tgc.getName(); +// name = name.replaceAll(" ", ""); +// //TraceManager.addDev("To check " + name); +// if (tgc.getValue().contains("(")) { +// tmlm.addCheckedActivity(tgc, name + ":" + tgc.getValue().split("\\(")[0]); +// } else { +// if (tgc instanceof TMLADExecI) { +// tmlm.addCheckedActivity(tgc, ((TMLADExecI) tgc).getDelayValue()); +// } +// } +// } +// if (tgc instanceof TMLADActionState) { +// tmlaction = new TMLActionState("action", tgc); +// tmp = ((TMLADActionState) (tgc)).getAction(); +// tmp = modifyActionString(tmp); +// tmlaction.setAction(tmp); +// activity.addElement(tmlaction); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlaction, tgc); +// +// } else if (tgc instanceof TMLADRandom) { +// tmladrandom = (TMLADRandom) tgc; +// tmlrandom = new TMLRandom("random" + tmladrandom.getValue(), tgc); +// tmp = tmladrandom.getVariable(); +// tmp = modifyActionString(tmp); +// tmlrandom.setVariable(tmp); +// tmp = tmladrandom.getMinValue(); +// tmp = modifyActionString(tmp); +// tmlrandom.setMinValue(tmp); +// tmp = tmladrandom.getMaxValue(); +// tmp = modifyActionString(tmp); +// tmlrandom.setMaxValue(tmp); +// tmlrandom.setFunctionId(tmladrandom.getFunctionId()); +// activity.addElement(tmlrandom); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlrandom, tgc); +// +// } else if (tgc instanceof TMLADChoice) { +// tmlchoice = new TMLChoice("choice", tgc); +// // Guards are added at the same time as next activities +// activity.addElement(tmlchoice); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlchoice, tgc); +// +// } else if (tgc instanceof TMLADSelectEvt) { +// tmlselectevt = new TMLSelectEvt("select", tgc); +// activity.addElement(tmlselectevt); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlselectevt, tgc); +// +// } else if (tgc instanceof TMLADExecI) { +// tmlexeci = new TMLExecI("execi", tgc); +// tmlexeci.setAction(modifyString(((TMLADExecI) tgc).getDelayValue())); +// tmlexeci.setValue(((TMLADExecI) tgc).getDelayValue()); +// activity.addElement(tmlexeci); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlexeci, tgc); +// +// } else if (tgc instanceof TMLADExecIInterval) { +// tmlexecii = new TMLExecIInterval("execi", tgc); +// tmlexecii.setValue(tgc.getValue()); +// tmlexecii.setMinDelay(modifyString(((TMLADExecIInterval) tgc).getMinDelayValue())); +// tmlexecii.setMaxDelay(modifyString(((TMLADExecIInterval) tgc).getMaxDelayValue())); +// activity.addElement(tmlexecii); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlexecii, tgc); +// +// } else if (tgc instanceof TMLADEncrypt) { +// tmlexecc = new TMLExecC("encrypt_" + ((TMLADEncrypt) tgc).securityContext, tgc); +// activity.addElement(tmlexecc); +// SecurityPattern sp = securityPatterns.get(((TMLADEncrypt) tgc).securityContext); +// if (sp == null) { +// //Throw error for missing security pattern +// UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADEncrypt) tgc).securityContext + " not found"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } else { +// tmlexecc.securityPattern = sp; +// tmlexecc.setAction(Integer.toString(sp.encTime)); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// tmlm.securityTaskMap.get(sp).add(tmltask); +// listE.addCor(tmlexecc, tgc); +// } +// } else if (tgc instanceof TMLADDecrypt) { +// tmlexecc = new TMLExecC("decrypt_" + ((TMLADDecrypt) tgc).securityContext, tgc); +// activity.addElement(tmlexecc); +// SecurityPattern sp = securityPatterns.get(((TMLADDecrypt) tgc).securityContext); +// if (sp == null) { +// //Throw error for missing security pattern +// UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADDecrypt) tgc).securityContext + " not found"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } else { +// tmlexecc.securityPattern = sp; +// tmlexecc.setAction(Integer.toString(sp.decTime)); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlexecc, tgc); +// tmlm.securityTaskMap.get(sp).add(tmltask); +// } +// +// } else if (tgc instanceof TMLADExecC) { +// tmlexecc = new TMLExecC("execc", tgc); +// tmlexecc.setValue(((TMLADExecC) tgc).getDelayValue()); +// tmlexecc.setAction(modifyString(((TMLADExecC) tgc).getDelayValue())); +// activity.addElement(tmlexecc); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlexecc, tgc); +// +// } else if (tgc instanceof TMLADExecCInterval) { +// tmlexecci = new TMLExecCInterval("execci", tgc); +// tmlexecci.setMinDelay(modifyString(((TMLADExecCInterval) tgc).getMinDelayValue())); +// tmlexecci.setMaxDelay(modifyString(((TMLADExecCInterval) tgc).getMaxDelayValue())); +// activity.addElement(tmlexecci); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlexecci, tgc); +// +// } else if (tgc instanceof TMLADDelay) { +// tmldelay = new TMLDelay("d-delay", tgc); +// tmldelay.setMinDelay(modifyString(((TMLADDelay) tgc).getDelayValue())); +// tmldelay.setMaxDelay(modifyString(((TMLADDelay) tgc).getDelayValue())); +// tmldelay.setUnit(((TMLADDelay) tgc).getUnit()); +// activity.addElement(tmldelay); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmldelay, tgc); +// +// } else if (tgc instanceof TMLADDelayInterval) { +// tmldelay = new TMLDelay("nd-delay", tgc); +// tmldelay.setMinDelay(modifyString(((TMLADDelayInterval) tgc).getMinDelayValue())); +// tmldelay.setMaxDelay(modifyString(((TMLADDelayInterval) tgc).getMaxDelayValue())); +// tmldelay.setUnit(((TMLADDelayInterval) tgc).getUnit()); +// activity.addElement(tmldelay); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmldelay, tgc); +// +// } else if (tgc instanceof TMLADForLoop) { +// tmlforloop = new TMLForLoop("loop", tgc); +// tmlforloop.setInit(modifyString(((TMLADForLoop) tgc).getInit())); +// tmp = ((TMLADForLoop) tgc).getCondition(); +// /*if (tmp.trim().length() == 0) { +// tmp = "true"; +// }*/ +// tmlforloop.setCondition(modifyString(tmp)); +// tmlforloop.setIncrement(modifyActionString(((TMLADForLoop) tgc).getIncrement())); +// +// activity.addElement(tmlforloop); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlforloop, tgc); +// +// } else if (tgc instanceof TMLADForStaticLoop) { +// sl = "loop__" + staticLoopIndex; +// tt = new TMLType(TMLType.NATURAL); +// tmlt = new TMLAttribute(sl, tt); +// tmlt.initialValue = "0"; +// tmltask.addAttribute(tmlt); +// tmlforloop = new TMLForLoop(sl, tgc); +// tmlforloop.setInit(sl + " = 0"); +// tmlforloop.setCondition(sl + "<" + modifyString(tgc.getValue())); +// tmlforloop.setIncrement(sl + " = " + sl + " + 1"); +// activity.addElement(tmlforloop); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlforloop, tgc); +// staticLoopIndex++; +// +// } else if (tgc instanceof TMLADForEverLoop) { +// /*sl = "loop__" + staticLoopIndex; +// tt = new TMLType(TMLType.NATURAL); +// tmlt = new TMLAttribute(sl, tt); +// tmlt.initialValue = "0"; +// tmltask.addAttribute(tmlt);*/ +// tmlforloop = new TMLForLoop("infiniteloop", tgc); +// tmlforloop.setInit(""); +// tmlforloop.setCondition(""); +// tmlforloop.setIncrement(""); +// tmlforloop.setInfinite(true); +// activity.addElement(tmlforloop); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlforloop, tgc); +// staticLoopIndex++; +// +// tmlstopstate = new TMLStopState("Stop after infinite loop", null); +// activity.addElement(tmlstopstate); +// tmlforloop.addNext(tmlstopstate); +// +// } else if (tgc instanceof TMLADSequence) { +// tmlsequence = new TMLSequence("seq", tgc); +// activity.addElement(tmlsequence); +// listE.addCor(tmlsequence, tgc); +// +// } else if (tgc instanceof TMLADUnorderedSequence) { +// tmlrsequence = new TMLRandomSequence("rseq", tgc); +// activity.addElement(tmlrsequence); +// listE.addCor(tmlrsequence, tgc); +// +// } else if (tgc instanceof TMLADReadChannel) { +// // Get the channel +// //TMLADReadChannel rd = (TMLADReadChannel) tgc; +// channel = tmlm.getChannelByName(getFromTable(tmltask, ((TMLADReadChannel) tgc).getChannelName())); +// /*if (rd.isAttacker()){ +// channel = tmlm.getChannelByName(getAttackerChannel(((TMLADReadChannel)tgc).getChannelName())); +// }*/ +// if (channel == null) { +// if (Conversion.containsStringInList(removedChannels, ((TMLADReadChannel) tgc).getChannelName())) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADReadChannel) tgc).getChannelName() + " has been removed because the corresponding channel is not taken into account"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// warnings.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// activity.addElement(new TMLJunction("void junction", tgc)); +// } else { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADReadChannel) tgc).getChannelName() + " is an unknown channel"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// checkingErrors.add(ce); +// } +// +// } else { +// tmlreadchannel = new TMLReadChannel("read channel", tgc); +// tmlreadchannel.setNbOfSamples(modifyString(((TMLADReadChannel) tgc).getSamplesValue())); +// tmlreadchannel.setEncForm(((TMLADReadChannel) tgc).getEncForm()); +// tmlreadchannel.addChannel(channel); +// //security pattern +// if (securityPatterns.get(((TMLADReadChannel) tgc).getSecurityContext()) != null) { +// tmlreadchannel.securityPattern = securityPatterns.get(((TMLADReadChannel) tgc).getSecurityContext()); +// //NbOfSamples will increase due to extra overhead from MAC +// int cur = 1; +// try { +// cur = Integer.valueOf(modifyString(((TMLADReadChannel) tgc).getSamplesValue())); +// } catch (NumberFormatException e) { +// } catch (NullPointerException e) { +// } +// int add = Integer.valueOf(tmlreadchannel.securityPattern.overhead); +// if (!tmlreadchannel.securityPattern.nonce.equals("")) { +// SecurityPattern nonce = securityPatterns.get(tmlreadchannel.securityPattern.nonce); +// if (nonce != null) { +// add = Integer.valueOf(nonce.overhead); +// } +// } +// cur = cur + add; +// tmlreadchannel.setNbOfSamples(Integer.toString(cur)); +// } else if (!((TMLADReadChannel) tgc).getSecurityContext().isEmpty()) { +// //Throw error for missing security pattern +// UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADReadChannel) tgc).getSecurityContext() + " not found"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } +// if (tmltask.isAttacker()) { +// tmlreadchannel.setAttacker(true); +// } +// activity.addElement(tmlreadchannel); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlreadchannel, tgc); +// } +// } else if (tgc instanceof TMLADSendEvent) { +// event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADSendEvent) tgc).getEventName())); +// if (event == null) { +// if (Conversion.containsStringInList(removedEvents, ((TMLADSendEvent) tgc).getEventName())) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// warnings.add(ce); +// activity.addElement(new TMLJunction("void junction", tgc)); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } else { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent) tgc).getEventName() + " is an unknown event"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } +// } else { +// tmlsendevent = new TMLSendEvent("send event", tgc); +// tmlsendevent.setEvent(event); +// +// for (int i = 0; i < ((TMLADSendEvent) tgc).realNbOfParams(); i++) { +// tmp = modifyString(((TMLADSendEvent) tgc).getRealParamValue(i)); +// Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); +// if (allVariables.size() > 0) { +// for (int k = 0; k < allVariables.size(); k++) { +// //TraceManager.addDev("Adding record: " + allVariables.get(k)); +// tmlsendevent.addParam(allVariables.get(k)); +// } +// } else { +// //TraceManager.addDev("Adding param: " + tmp); +// tmlsendevent.addParam(tmp); +// } +// } +// if (event.getNbOfParams() != tmlsendevent.getNbOfParams()) { +// //TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " sendevent#:" + tmlsendevent.getNbOfParams()); +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendEvent) tgc).getEventName() + ": wrong number of parameters"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } else { +// activity.addElement(tmlsendevent); +// listE.addCor(tmlsendevent, tgc); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// } +// } +// +// } else if (tgc instanceof TMLADSendRequest) { +// request = tmlm.getRequestByName(getFromTable(tmltask, ((TMLADSendRequest) tgc).getRequestName())); +// if (request == null) { +// if (Conversion.containsStringInList(removedRequests, ((TMLADSendRequest) tgc).getRequestName())) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADSendRequest) tgc).getRequestName() + " has been removed because the corresponding request is not taken into account"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// warnings.add(ce); +// activity.addElement(new TMLJunction("void junction", tgc)); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } else { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest) tgc).getRequestName() + " is an unknown request"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } +// } else { +// tmlsendrequest = new TMLSendRequest("send request", tgc); +// tmlsendrequest.setRequest(request); +// for (int i = 0; i < ((TMLADSendRequest) tgc).realNbOfParams(); i++) { +// tmp = modifyString(((TMLADSendRequest) tgc).getRealParamValue(i)); +// Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); +// if (allVariables.size() > 0) { +// for (int k = 0; k < allVariables.size(); k++) { +// TraceManager.addDev("Adding record: " + allVariables.get(k)); +// tmlsendrequest.addParam(allVariables.get(k)); +// request.addParamName(allVariables.get(k)); +// } +// } else { +// //TraceManager.addDev("Adding param: " + tmp); +// tmlsendrequest.addParam(tmp); +// request.addParamName(tmp); +// } +// } +// if (request.getNbOfParams() != tmlsendrequest.getNbOfParams()) { +// //TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " sendrequest#:" + tmlsendrequest.getNbOfParams()); +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADSendRequest) tgc).getRequestName() + ": wrong number of parameters"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } else { +// activity.addElement(tmlsendrequest); +// listE.addCor(tmlsendrequest, tgc); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// } +// } +// +// } else if (tgc instanceof TMLADReadRequestArg) { +// request = tmlm.getRequestToMe(tmltask); +// if (request == null) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "This task is not requested: cannot use \"reading request arg\" operator"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } else { +// tmlaction = new TMLActionState("action reading args", tgc); +// String act = ""; +// int cpt = 1; +// for (int i = 0; i < ((TMLADReadRequestArg) tgc).realNbOfParams(); i++) { +// tmp = modifyString(((TMLADReadRequestArg) tgc).getRealParamValue(i)); +// Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); +// +// if (allVariables.size() > 0) { +// for (int k = 0; k < allVariables.size(); k++) { +// //TraceManager.addDev("Adding record: " + allVariables.get(k)); +// if (cpt != 1) { +// act += "$"; +// } +// act += allVariables.get(k) + " = arg" + cpt + "__req"; +// cpt++; +// } +// } else { +// //TraceManager.addDev("Adding param: " + tmp); +// if (cpt != 1) { +// act += "$"; +// } +// act += tmp + " = arg" + cpt + "__req"; +// cpt++; +// } +// } +// if (request.getNbOfParams() != (cpt - 1)) { +// //TraceManager.addDev("ERROR : request#:" + request.getNbOfParams() + " read request arg#:" + (cpt-1)); +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Wrong number of parameters in \"reading request arg\" operator"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } else { +// //TraceManager.addDev("Adding action = " + act); +// tmlaction.setAction(act); +// activity.addElement(tmlaction); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlaction, tgc); +// } +// +// +// } +// +// } else if (tgc instanceof TMLADStopState) { +// tmlstopstate = new TMLStopState("stop state", tgc); +// activity.addElement(tmlstopstate); +// listE.addCor(tmlstopstate, tgc); +// +// } else if (tgc instanceof TMLADNotifiedEvent) { +// event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADNotifiedEvent) tgc).getEventName())); +// if (event == null) { +// if (removedEvents.size() > 0) { +// if (Conversion.containsStringInList(removedEvents, ((TMLADNotifiedEvent) tgc).getEventName())) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADNotifiedEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// warnings.add(ce); +// activity.addElement(new TMLJunction("void junction", tgc)); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } else { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent) tgc).getEventName() + " is an unknown event"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } +// } else { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADNotifiedEvent) tgc).getEventName() + " is an unknown event"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } +// } else { +// event.setNotified(true); +// tmlnotifiedevent = new TMLNotifiedEvent("notified event", tgc); +// tmlnotifiedevent.setEvent(event); +// tmlnotifiedevent.setVariable(modifyString(((TMLADNotifiedEvent) tgc).getVariable())); +// activity.addElement(tmlnotifiedevent); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlnotifiedevent, tgc); +// } +// +// } else if (tgc instanceof TMLADWaitEvent) { +// event = tmlm.getEventByName(getFromTable(tmltask, ((TMLADWaitEvent) tgc).getEventName())); +// if (event == null) { +// if (removedEvents.size() > 0) { +// if (Conversion.containsStringInList(removedEvents, ((TMLADWaitEvent) tgc).getEventName())) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWaitEvent) tgc).getEventName() + " has been removed because the corresponding event is not taken into account"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// warnings.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// activity.addElement(new TMLJunction("void junction", tgc)); +// } else { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + " is an unknown event"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// checkingErrors.add(ce); +// } +// } else { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + " is an unknown event"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// checkingErrors.add(ce); +// } +// } else { +// //TraceManager.addDev("Nb of param of event:" + event.getNbOfParams()); +// tmlwaitevent = new TMLWaitEvent("wait event", tgc); +// tmlwaitevent.setEvent(event); +// for (int i = 0; i < ((TMLADWaitEvent) tgc).realNbOfParams(); i++) { +// tmp = modifyString(((TMLADWaitEvent) tgc).getRealParamValue(i)); +// Vector<String> allVariables = tmltask.getAllAttributesStartingWith(tmp + "__"); +// if (allVariables.size() > 0) { +// for (int k = 0; k < allVariables.size(); k++) { +// //TraceManager.addDev("Adding record: " + allVariables.get(k)); +// tmlwaitevent.addParam(allVariables.get(k)); +// } +// } else { +// //TraceManager.addDev("Adding param: " + tmp); +// tmlwaitevent.addParam(tmp); +// } +// } +// if (event.getNbOfParams() != tmlwaitevent.getNbOfParams()) { +// //TraceManager.addDev("ERROR : event#:" + event.getNbOfParams() + " waitevent#:" + tmlwaitevent.getNbOfParams()); +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWaitEvent) tgc).getEventName() + ": wrong number of parameters"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// } else { +// activity.addElement(tmlwaitevent); +// listE.addCor(tmlwaitevent, tgc); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// } +// +// } +// +// } else if (tgc instanceof TMLADWriteChannel) { +// // Get channels +// //TMLADWriteChannel wr = (TMLADWriteChannel) tgc; +// channels = ((TMLADWriteChannel) tgc).getChannelsByName(); +// boolean error = false; +// for (int i = 0; i < channels.length; i++) { +// //TraceManager.addDev("Getting from table " + tmltask.getName() + "/" +channels[i]); +// channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i])); +// if (channel == null) { +// if (Conversion.containsStringInList(removedChannels, ((TMLADWriteChannel) tgc).getChannelName(i))) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "A call to " + ((TMLADWriteChannel) tgc).getChannelName(i) + " has been removed because the corresponding channel is not taken into account"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// warnings.add(ce); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// activity.addElement(new TMLJunction("void junction", tgc)); +// } else { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, ((TMLADWriteChannel) tgc).getChannelName(i) + " is an unknown channel"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.UNKNOWN); +// checkingErrors.add(ce); +// } +// error = true; +// +// } +// } +// if (!error) { +// tmlwritechannel = new TMLWriteChannel("write channel", tgc); +// tmlwritechannel.setNbOfSamples(modifyString(((TMLADWriteChannel) tgc).getSamplesValue())); +// tmlwritechannel.setEncForm(((TMLADWriteChannel) tgc).getEncForm()); +// for (int i = 0; i < channels.length; i++) { +// channel = tmlm.getChannelByName(getFromTable(tmltask, channels[i])); +// tmlwritechannel.addChannel(channel); +// } +// //if (wr.isAttacker()){ +// //channel = tmlm.getChannelByName(getAttackerChannel(channels[0])); +// //tmlwritechannel.addChannel(channel); +// //} +// //add sec pattern +// if (securityPatterns.get(((TMLADWriteChannel) tgc).getSecurityContext()) != null) { +// tmlwritechannel.securityPattern = securityPatterns.get(((TMLADWriteChannel) tgc).getSecurityContext()); +// int cur = Integer.valueOf(modifyString(((TMLADWriteChannel) tgc).getSamplesValue())); +// int add = Integer.valueOf(tmlwritechannel.securityPattern.overhead); +// if (!tmlwritechannel.securityPattern.nonce.equals("")) { +// SecurityPattern nonce = securityPatterns.get(tmlwritechannel.securityPattern.nonce); +// if (nonce != null) { +// add = Integer.valueOf(nonce.overhead); +// } +// } +// cur = cur + add; +// tmlwritechannel.setNbOfSamples(Integer.toString(cur)); +// } else if (!((TMLADWriteChannel) tgc).getSecurityContext().isEmpty()) { +// //Throw error for missing security pattern +// UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Security Pattern " + ((TMLADWriteChannel) tgc).getSecurityContext() + " not found"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } +// if (tmltask.isAttacker()) { +// tmlwritechannel.setAttacker(true); +// } +// activity.addElement(tmlwritechannel); +// ((BasicErrorHighlight) tgc).setStateAction(ErrorHighlight.OK); +// listE.addCor(tmlwritechannel, tgc); +// } +// } +// } +// +// // Interconnection between elements +// TGConnectorTMLAD tgco; +// TGConnectingPoint p1, p2; +// TMLActivityElement ae1, ae2; +// TGComponent tgc1, tgc2, tgc3; +// int j, index; +// +// iterator = list.listIterator(); +// while (iterator.hasNext()) { +// tgc = iterator.next(); +// if (tgc instanceof TGConnectorTMLAD) { +// tgco = (TGConnectorTMLAD) tgc; +// p1 = tgco.getTGConnectingPointP1(); +// p2 = tgco.getTGConnectingPointP2(); +// +// // Identification of connected components +// tgc1 = null; +// tgc2 = null; +// for (j = 0; j < list.size(); j++) { +// tgc3 = list.get(j); +// if (tgc3.belongsToMe(p1)) { +// tgc1 = tgc3; +// } +// if (tgc3.belongsToMe(p2)) { +// tgc2 = tgc3; +// } +// } +// +// // Connecting tml modeling components +// if ((tgc1 != null) && (tgc2 != null)) { +// //ADComponent ad1, ad2; +// ae1 = activity.findReferenceElement(tgc1); +// ae2 = activity.findReferenceElement(tgc2); +// +// if ((ae1 != null) && (ae2 != null)) { +// //Special case if "for loop" or if "choice" +// +// if (ae1 instanceof TMLForLoop) { +// index = tgc1.indexOf(p1) - 1; +// if (index == 0) { +// ae1.addNext(0, ae2); +// } else { +// ae1.addNext(ae2); +// } +// +// } else if (ae1 instanceof TMLChoice) { +// index = tgc1.indexOf(p1) - 1; +// //TraceManager.addDev("Adding next:" + ae2); +// ae1.addNext(ae2); +// //TraceManager.addDev("Adding guard:" + ((TMLADChoice)tgc1).getGuard(index)); +// ((TMLChoice) ae1).addGuard(modifyString(((TMLADChoice) tgc1).getGuard(index))); +// +// } else if (ae1 instanceof TMLSequence) { +// index = tgc1.indexOf(p1) - 1; +// ((TMLSequence) ae1).addIndex(index); +// ae1.addNext(ae2); +// //TraceManager.addDev("Adding " + ae2 + " at index " + index); +// +// } else if (ae1 instanceof TMLRandomSequence) { +// index = tgc1.indexOf(p1) - 1; +// ((TMLRandomSequence) ae1).addIndex(index); +// ae1.addNext(ae2); +// //TraceManager.addDev("Adding " + ae2 + " at index " + index); +// +// } else { +// ae1.addNext(ae2); +// } +// } +// } +// } +// } +// +// +// // Check that each "for" has two nexts +// // Check that TMLChoice have compatible guards +// // Check TML select evts +// iterator = list.listIterator(); +// while (iterator.hasNext()) { +// tgc = iterator.next(); +// +// if ((tgc instanceof TMLADForLoop) || (tgc instanceof TMLADForStaticLoop)) { +// ae1 = activity.findReferenceElement(tgc); +// if (ae1 != null) { +// if (ae1.getNbNext() != 2) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted for loop: a loop must have an internal behavior, and an exit behavior "); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } +// } +// } else if (tgc instanceof TMLADChoice) { +// tmlchoice = (TMLChoice) (activity.findReferenceElement(tgc)); +// tmlchoice.orderGuards(); +// +// int nbNonDeter = tmlchoice.nbOfNonDeterministicGuard(); +// int nbStocha = tmlchoice.nbOfStochasticGuard(); +// if ((nbNonDeter > 0) && (nbStocha > 0)) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic and stochastic guards"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } +// int nb = Math.max(nbNonDeter, nbStocha); +// if (nb > 0) { +// nb = nb + tmlchoice.nbOfElseAndAfterGuards(); +// if (nb != tmlchoice.getNbGuard()) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Badly formatted choice: it has both non-determinitic/ stochastic and regular guards)"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } +// } +// +// if (tmlchoice.nbOfNonDeterministicGuard() > 0) { +// /*if (!rndAdded) { +// TMLAttribute tmlt = new TMLAttribute("rnd__0", new TMLType(TMLType.NATURAL)); +// tmlt.initialValue = ""; +// tmltask.addAttribute(tmlt); +// rndAdded = true; +// }*/ +// } +// if (tmlchoice.hasMoreThanOneElse()) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [else] guard"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } else if ((index = tmlchoice.getElseGuard()) > -1) { +// index = tmlchoice.getElseGuard(); +// if (index == 0) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have a regular guard"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } +// } +// if (tmlchoice.hasMoreThanOneAfter()) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "Choice should have only one [after] guard"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } +// } +// if (tgc instanceof TMLADSelectEvt) { +// tmlselectevt = (TMLSelectEvt) (activity.findReferenceElement(tgc)); +// if (!tmlselectevt.isARealSelectEvt()) { +// UICheckingError ce = new UICheckingError(CheckingError.BEHAVIOR_ERROR, "'Select events' should be followed by only event receiving operators"); +// ce.setTDiagramPanel(tadp); +// ce.setTGComponent(tgc); +// checkingErrors.add(ce); +// } +// } +// +// } +// +// // Sorting nexts elements of Sequence +// for (j = 0; j < activity.nElements(); j++) { +// ae1 = activity.get(j); +// if (ae1 instanceof TMLSequence) { +// ((TMLSequence) ae1).sortNexts(); +// } +// if (ae1 instanceof TMLRandomSequence) { +// ((TMLRandomSequence) ae1).sortNexts(); +// } +// } +// } public TMLMapping<TGComponent> translateToTMLMapping() { tmlm = new TMLModeling<>(true); @@ -3850,23 +3931,23 @@ public class GTMLModeling { } return ""; } - - public String getFromTable(TMLTask task, String s) { - //TraceManager.addDev("TABLE GET: Getting from task=" + task.getName() + " element=" + s); - - if (table == null) { - return s; - } - - String ret = table.get(task.getName() + "/" + s); - //TraceManager.addDev("Returning=" + ret); - - if (ret == null) { - return s; - } - - return ret; - } +// +// public String getFromTable(TMLTask task, String s) { +// //TraceManager.addDev("TABLE GET: Getting from task=" + task.getName() + " element=" + s); +// +// if (table == null) { +// return s; +// } +// +// String ret = table.get(task.getName() + "/" + s); +// //TraceManager.addDev("Returning=" + ret); +// +// if (ret == null) { +// return s; +// } +// +// return ret; +// } public void removeActionsWithRecords() { //TraceManager.addDev("Reworking actions with records"); diff --git a/src/main/java/ui/ICDElementVisitor.java b/src/main/java/ui/ICDElementVisitor.java new file mode 100644 index 0000000000000000000000000000000000000000..2ccfa5f361707c74a7df2c923b162cf5d4c8e332 --- /dev/null +++ b/src/main/java/ui/ICDElementVisitor.java @@ -0,0 +1,6 @@ +package ui; + +public interface ICDElementVisitor { + + boolean visit( CDElement element ); +} diff --git a/src/main/java/ui/MainGUI.java b/src/main/java/ui/MainGUI.java index 1024449f09b86cfb08cab17ffc4e669b6f32dd22..86f669307489ba4789cce0fe8d35032fd349bddb 100644 --- a/src/main/java/ui/MainGUI.java +++ b/src/main/java/ui/MainGUI.java @@ -8054,7 +8054,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per return false; } - public boolean newSysCAMSComponentTaskName(TURTLEPanel tp, String old, String niou) { + public boolean newSysCAMSComponentTaskName(TURTLEPanel tp, String old, String niou) { JTabbedPane jtp = tp.tabbedPane; for (int i = 0; i < jtp.getTabCount(); i++) { if (jtp.getTitleAt(i).equals(niou)) { @@ -8075,7 +8075,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per tdp.setName(niou); } } - + return true; } } @@ -8439,33 +8439,33 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per //tofile.extracParamToFile(); } - public void avatarToSoclib() { - //DG 6.2. appelee nulle part? - - ADDDiagramPanel deploymentDiagramPanel = getDeploymentPanel(); - AvatarDesignPanel designDiagramPanel = getFirstAvatarDesignPanelFound(); - - AvatarDeploymentPanelTranslator avdeploymenttranslator = new AvatarDeploymentPanelTranslator(deploymentDiagramPanel); - AvatarddSpecification avddspec = avdeploymenttranslator.getAvatarddSpecification(); - - - AvatarDesignPanelTranslator avdesigntranslator = new AvatarDesignPanelTranslator(designDiagramPanel); - - List<AvatarBDStateMachineOwner> adp = designDiagramPanel.getAvatarBDPanel().getFullStateMachineOwnerList(); - AvatarSpecification avaspec = avdesigntranslator.generateAvatarSpecification(adp); - - // Generator for block tasks and application main file - - TasksAndMainGenerator gene = new TasksAndMainGenerator(avddspec, avaspec); - gene.generateSoclib(false, false); - try { - //System.err.println("ok"); - gene.saveInFiles(TasksAndMainGenerator.getGeneratedPath()); - } catch (FileException e) { - System.err.println("FileException : MainGUI.avatarToSoclib()"); - } - - } +// public void avatarToSoclib() { +// //DG 6.2. appelee nulle part? +// +// ADDDiagramPanel deploymentDiagramPanel = getDeploymentPanel(); +// AvatarDesignPanel designDiagramPanel = getFirstAvatarDesignPanelFound(); +// +// AvatarDeploymentPanelTranslator avdeploymenttranslator = new AvatarDeploymentPanelTranslator(deploymentDiagramPanel); +// AvatarddSpecification avddspec = avdeploymenttranslator.getAvatarddSpecification(); +// +// +// AvatarDesignPanelTranslator avdesigntranslator = new AvatarDesignPanelTranslator(designDiagramPanel); +// +// List<AvatarBDStateMachineOwner> adp = designDiagramPanel.getAvatarBDPanel().getFullStateMachineOwnerList(); +// AvatarSpecification avaspec = avdesigntranslator.generateAvatarSpecification(adp); +// +// // Generator for block tasks and application main file +// +// TasksAndMainGenerator gene = new TasksAndMainGenerator(avddspec, avaspec); +// gene.generateSoclib(false, false); +// try { +// //System.err.println("ok"); +// gene.saveInFiles(TasksAndMainGenerator.getGeneratedPath()); +// } catch (FileException e) { +// System.err.println("FileException : MainGUI.avatarToSoclib()"); +// } +// +// } //--------------------end DDD------------------------------------------------ public Vector<SysCAMSComponentTaskDiagramPanel> getListSysCAMSPanel() { diff --git a/src/main/java/ui/MalformedModelingException.java b/src/main/java/ui/MalformedModelingException.java index c656bb59ba229eb6908d1fe044cec61d58cd9110..809732ad480a013cba12796fab8ebe4bea32212a 100755 --- a/src/main/java/ui/MalformedModelingException.java +++ b/src/main/java/ui/MalformedModelingException.java @@ -36,12 +36,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; - /** * Class MalformedModelingException * Creation: 15/12/2003 @@ -50,10 +46,22 @@ package ui; */ public class MalformedModelingException extends Exception { + /** + * + */ + private static final long serialVersionUID = 7411903139644480309L; + public MalformedModelingException() { - super("Modeling does not follows the TTool format"); + this( (Throwable) null ); + } + + public MalformedModelingException( final String message ) { + super( message ); + } + + public MalformedModelingException( final Throwable th ) { + super( "Modeling does not follow the TTool format", th ); } - } // Class \ No newline at end of file diff --git a/src/main/java/ui/MalformedTMLDesignException.java b/src/main/java/ui/MalformedTMLDesignException.java index 45952af48e7ebaeae8f33a61f2fd5c2fc6aa38c9..725d68f6eb5d105ba5edb75292c7076a319ed860 100755 --- a/src/main/java/ui/MalformedTMLDesignException.java +++ b/src/main/java/ui/MalformedTMLDesignException.java @@ -36,11 +36,12 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; +import java.util.ArrayList; +import java.util.List; + +import translator.CheckingError; /** * Class MalformedTMLDesigngException @@ -50,10 +51,43 @@ package ui; */ public class MalformedTMLDesignException extends Exception { + /** + * + */ + private static final long serialVersionUID = -379782523139636075L; + + private final List<CheckingError> errors; + public MalformedTMLDesignException(String msg) { - super(msg); + this( msg, new ArrayList<CheckingError>() ); } + public MalformedTMLDesignException( final String msg, + final List<CheckingError> errors ) { + super( msg ); + + this.errors = errors; + } + + public List<CheckingError> getErrors() { + return errors; + } + + @Override + public String toString() { + final StringBuilder message = new StringBuilder( super.toString() ); + + if ( !getErrors().isEmpty() ) { + message.append( "Errors are:" ); + } + + for ( final CheckingError error : getErrors() ) { + message.append( System.lineSeparator() + error ); + } + + return message.toString(); + } + } // Class \ No newline at end of file diff --git a/src/main/java/ui/RangeExpression.java b/src/main/java/ui/RangeExpression.java new file mode 100644 index 0000000000000000000000000000000000000000..58ee809adaaee21d80ca96c88a06621afa482d37 --- /dev/null +++ b/src/main/java/ui/RangeExpression.java @@ -0,0 +1,56 @@ +package ui; + +public class RangeExpression extends Expression { + + private final Expression minExpression; + + private final Expression maxExpression; + + + public RangeExpression( final String minExpressionText, + final String maxExpressionText, + final String nullText, + final String labelGlobal, + final String labelValues ) { + super( null, nullText, labelGlobal ); + + + minExpression = new Expression( minExpressionText, nullText, labelValues ); + maxExpression = new Expression( maxExpressionText, nullText, labelValues ); + } + + public Expression getMinExpression() { + return minExpression; + } + + public Expression getMaxExpression() { + return maxExpression; + } + + @Override + public void setEnabled( final boolean enabled ) { + getMinExpression().setEnabled( enabled ); + getMaxExpression().setEnabled( enabled ); + } + + @Override + public boolean isEnabled() { + return minExpression.isEnabled() || maxExpression.isEnabled(); + } + + @Override + public boolean isNull() { + return minExpression.isNull() && maxExpression.isNull(); + } + + @Override + public String toString() { + if ( getLabel() == null ) { + return "[" + getMinExpression().toString() + ", " + getMaxExpression().toString() + "]"; + } + + final Object[] values = new String[] { getMinExpression().toString(), getMaxExpression().toString() }; + + return String.format( getLabel(), values ); + } +} diff --git a/src/main/java/ui/TDiagramMouseManager.java b/src/main/java/ui/TDiagramMouseManager.java index 0f589acc1533a1e1e8a04f9c7a5a48fae811dda3..48895b01a38191f457baacc394546954010c1256 100755 --- a/src/main/java/ui/TDiagramMouseManager.java +++ b/src/main/java/ui/TDiagramMouseManager.java @@ -38,13 +38,13 @@ package ui; -import ui.window.JDialogSearchBox; - -import java.awt.*; +import java.awt.Cursor; +import java.awt.Point; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.util.ArrayList; -import myutil.*; + +import ui.window.JDialogSearchBox; /** * Class TDiagramMouseManager @@ -58,7 +58,7 @@ public class TDiagramMouseManager extends MouseAdapter {//implements MouseListen private TDiagramPanel tdp; private TGComponent tgc; - private TGComponent lastSelectedComponent = null; + // private TGComponent lastSelectedComponent = null; private int oldx; private int oldy; @@ -75,7 +75,7 @@ public class TDiagramMouseManager extends MouseAdapter {//implements MouseListen private int resizeInfo; - private boolean selectedComponent = false; + // private boolean selectedComponent = false; //private Point p; private TGConnectingPoint cp; @@ -496,14 +496,14 @@ public class TDiagramMouseManager extends MouseAdapter {//implements MouseListen else tdp.getGUI().setMode(MainGUI.OPENED); - lastSelectedComponent = tgc; + //lastSelectedComponent = tgc; tdp.setSelect(true); tgc.singleClick(tdp.getGUI().getFrame(), x, y); } else { tdp.getGUI().setMode(MainGUI.OPENED); tdp.setSelect(false); - lastSelectedComponent = null; + // lastSelectedComponent = null; tdp.componentPointed = null; } tdp.getGUI().changeMade(tdp, TDiagramPanel.CHANGE_VALUE_COMPONENT); @@ -581,19 +581,22 @@ public class TDiagramMouseManager extends MouseAdapter {//implements MouseListen tdp.repaint(); } } + + // Issue #69 Always repaint. Needed for displaying the transition element in Avatar state machine diagram +// +// if ((selected == TGComponentManager.CONNECTOR) && (tdp.mode == TDiagramPanel.NORMAL)) { // is connectingPointShow selected +// if(tdp.highlightOutAndFreeConnectingPoint(e.getX(), e.getY(), tdp.getMGUI().getIdButtonSelected())) { +// tdp.repaint(); +// } +// } +// +// if ((selected == TGComponentManager.CONNECTOR) && (tdp.mode == TDiagramPanel.ADDING_CONNECTOR)) { +// tdp.highlightInAndFreeConnectingPoint(e.getX(), e.getY(), tdp.getMGUI().getIdButtonSelected()); +// tdp.setAddingTGConnector(e.getX(), e.getY()); +// tdp.repaint(); +// } - if ((selected == TGComponentManager.CONNECTOR) && (tdp.mode == TDiagramPanel.NORMAL)) { // is connectingPointShow selected - if(tdp.highlightOutAndFreeConnectingPoint(e.getX(), e.getY(), tdp.getMGUI().getIdButtonSelected())) { - tdp.repaint(); - } - } - - if ((selected == TGComponentManager.CONNECTOR) && (tdp.mode == TDiagramPanel.ADDING_CONNECTOR)) { - tdp.highlightInAndFreeConnectingPoint(e.getX(), e.getY(), tdp.getMGUI().getIdButtonSelected()); - tdp.setAddingTGConnector(e.getX(), e.getY()); - tdp.repaint(); - } - + tdp.repaint(); } @Override diff --git a/src/main/java/ui/TDiagramPanel.java b/src/main/java/ui/TDiagramPanel.java index 02ae7c410e61c75e08d2e1ea2a902a8770d1b205..fcb27f31919baf038bc7ba4881c16f760b4c1452 100755 --- a/src/main/java/ui/TDiagramPanel.java +++ b/src/main/java/ui/TDiagramPanel.java @@ -1701,7 +1701,10 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { } if (e.getSource() == enableDisable) { - componentPopup.setEnabled(!componentPopup.isEnabled()); + + // Issue #69 + componentPopup.setEnabled( !componentPopup.isEnabled( true ) ); +// componentPopup.setEnabled(!componentPopup.isEnabled()); getGUI().changeMade(this, CHANGE_VALUE_COMPONENT); repaint(); return; @@ -2031,15 +2034,17 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { clone.setEnabled(false); } - if (componentPointed instanceof CanBeDisabled) { - /*if (componentPointed.hasFather()) { - clone.setEnabled(false); - } else {*/ - enableDisable.setEnabled(true); - //} - } else { - enableDisable.setEnabled(false); - } + // Issue #69 + enableDisable.setEnabled( componentPointed.canBeDisabled() ); +// if (componentPointed instanceof CanBeDisabled) { +// /*if (componentPointed.hasFather()) { +// clone.setEnabled(false); +// } else {*/ +// enableDisable.setEnabled(true); +// //} +// } else { +// enableDisable.setEnabled(false); +// } if (componentPointed instanceof SwallowedTGComponent) { if (componentPointed.getFather() == null) { @@ -2548,6 +2553,18 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { } return null; } + + public List<TGConnector> getConnectors() { + final List<TGConnector> connectors = new ArrayList<TGConnector>(); + + for( final TGComponent compo : componentList ) { + if ( compo instanceof TGConnector ) { + connectors.add( (TGConnector) compo ); + } + } + + return connectors; + } public TGComponent getComponentToWhichBelongs(TGConnectingPoint p) { for (TGComponent tgc1 : this.componentList) { @@ -2569,7 +2586,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { return null; } - public void getAllLatencyChecks(ArrayList<TGComponent> _list) { + public void getAllLatencyChecks(List<TGComponent> _list) { for (TGComponent tgc : this.componentList) { if (tgc.getCheckLatency()) { _list.add(tgc); @@ -2577,13 +2594,13 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { } } - public void getAllCheckedTGComponent(ArrayList<TGComponent> _list) { + public void getAllCheckedTGComponent( List<TGComponent> _list) { for (TGComponent tgc : this.componentList) if (tgc.hasCheckedAccessibility()) _list.addAll(tgc.getAllCheckedAccessibility()); } - public void getAllCheckableTGComponent(ArrayList<TGComponent> _list) { + public void getAllCheckableTGComponent(List<TGComponent> _list) { for (TGComponent tgc : this.componentList) { //if (tgc instanceof CheckableAccessibility) { _list.addAll(tgc.getAllCheckableAccessibility()); @@ -2594,7 +2611,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { } - public void getAllCheckableInvariantTGComponent(ArrayList<TGComponent> _list) { + public void getAllCheckableInvariantTGComponent(List<TGComponent> _list) { for (TGComponent tgc : this.componentList) if (tgc.hasCheckableInvariant()) _list.addAll(tgc.getAllCheckableInvariant()); @@ -3702,8 +3719,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { ; } - - public void getListOfBreakPoints(java.util.List<Point> points, int taskID) { + public void getListOfBreakPoints(List<Point> points, int taskID) { for (TGComponent tgc : this.componentList) if (tgc.getBreakpoint() && (tgc.getDIPLOID() != -1)) { boolean found = false; @@ -3863,7 +3879,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { select = b; } - public void upComponent() { + protected void upComponent() { TGComponent tgc = componentPointed; if (tgc != null && tgc.moveable) { tgc.setMoveCd(tgc.x, tgc.y - MOVE_SPEED); @@ -3871,7 +3887,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { } } - public void downComponent() { + protected void downComponent() { TGComponent tgc = componentPointed; if (tgc != null && tgc.moveable) { tgc.setMoveCd(tgc.x, tgc.y + MOVE_SPEED); @@ -3879,7 +3895,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { } } - public void leftComponent() { + protected void leftComponent() { TGComponent tgc = componentPointed; if (tgc != null && tgc.moveable) { tgc.setMoveCd(tgc.x - MOVE_SPEED, tgc.y); @@ -3887,7 +3903,7 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { } } - public void rightComponent() { + protected void rightComponent() { TGComponent tgc = componentPointed; if (tgc != null && tgc.moveable) { tgc.setMoveCd(tgc.x + MOVE_SPEED, tgc.y); @@ -3895,22 +3911,22 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { } } - public void upComponents() { + protected void upComponents() { moveSelected(xSel, ySel - MOVE_SPEED); repaint(); } - public void downComponents() { + protected void downComponents() { moveSelected(xSel, ySel + MOVE_SPEED); repaint(); } - public void leftComponents() { + protected void leftComponents() { moveSelected(xSel - MOVE_SPEED, ySel); repaint(); } - public void rightComponents() { + protected void rightComponents() { moveSelected(xSel + MOVE_SPEED, ySel); repaint(); } @@ -3922,6 +3938,21 @@ public abstract class TDiagramPanel extends JPanel implements GenericTree { public TDiagramMouseManager getMouseManager() { return tdmm; } + + /** + * Check if newvalue is already a name of a component. + * + * @param newvalue + * @return true if the name is used + * @author Fabien Tessier + */ + public boolean isCompositeNameUsed(String newvalue) { + for (TGComponent tgc : this.componentList) { + if (tgc.getValue().equals(newvalue)) + return true; + } + return false; + } } diff --git a/src/main/java/ui/TGCNote.java b/src/main/java/ui/TGCNote.java index 069995457ba1bc1483d86c44a448f1b89eeef893..0cb5986d14fc39d7d08d862585d1983fdafe5570 100755 --- a/src/main/java/ui/TGCNote.java +++ b/src/main/java/ui/TGCNote.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui; import myutil.*; @@ -119,7 +118,7 @@ public class TGCNote extends TGCScalableWithoutInternalComponent { return this.values; } - + @Override public void internalDrawing(Graphics graph) { if (this.rescaled && !this.tdp.isScaled()) { this.rescaled = false; @@ -178,10 +177,10 @@ public class TGCNote extends TGCScalableWithoutInternalComponent { graph.fillPolygon(px, py, 4); graph.setColor(c); - Graphics2D g2 = (Graphics2D)graph; + // Graphics2D g2 = (Graphics2D)graph; for (int i = 0; i < this.values.length; i++) { //TraceManager.addDev("Value #" + i + " = " + this.values[i]); - g2.drawString(this.values[i], this.x + this.textX, this.y + this.textY + (i + 1) * this.currentFontSize); + graph.drawString(this.values[i], this.x + this.textX, this.y + this.textY + (i + 1) * this.currentFontSize); } } @@ -189,6 +188,7 @@ public class TGCNote extends TGCScalableWithoutInternalComponent { values = Conversion.wrapText(value); } + @Override public boolean editOndoubleClick(JFrame frame) { String oldValue = this.value; @@ -205,6 +205,7 @@ public class TGCNote extends TGCScalableWithoutInternalComponent { return false; } + @Override public TGComponent isOnMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -212,6 +213,7 @@ public class TGCNote extends TGCScalableWithoutInternalComponent { return null; } + @Override public void rescale(double scaleFactor) { /*dlineHeight = (lineHeight + dlineHeight) / oldScaleFactor * scaleFactor; lineHeight = (int)(dlineHeight); @@ -223,10 +225,12 @@ public class TGCNote extends TGCScalableWithoutInternalComponent { super.rescale(scaleFactor); } + @Override public int getType() { return TGComponentManager.UML_NOTE; } + @Override protected String translateExtraParam() { if (values == null) this.makeValue(); diff --git a/src/main/java/ui/TGCOneLineText.java b/src/main/java/ui/TGCOneLineText.java index 26ee5a0803b073d4823ab54ac9281e78def16097..d9db3c656949ab3c9baec22b5a700c60a720f2dd 100755 --- a/src/main/java/ui/TGCOneLineText.java +++ b/src/main/java/ui/TGCOneLineText.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; import myutil.Conversion; @@ -48,8 +45,6 @@ import ui.util.IconManager; import javax.swing.*; import java.awt.*; -//import java.awt.geom.*; - /** * Class TGCOneLineText * Internal component that is a onle line text @@ -58,8 +53,8 @@ import java.awt.*; * @author Ludovic APVRILLE */ public class TGCOneLineText extends TGCWithoutInternalComponent{ - protected boolean emptyText; + protected boolean emptyText; public TGCOneLineText(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -79,6 +74,7 @@ public class TGCOneLineText extends TGCWithoutInternalComponent{ myImageIcon = IconManager.imgic302; } + @Override public void internalDrawing(Graphics g) { if (!tdp.isScaled()) { width = g.getFontMetrics().stringWidth(value); @@ -90,6 +86,7 @@ public class TGCOneLineText extends TGCWithoutInternalComponent{ } } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y - height, Math.max(width, minWidth), height)) { return this; @@ -97,6 +94,7 @@ public class TGCOneLineText extends TGCWithoutInternalComponent{ return null; } + @Override public boolean editOndoubleClick(JFrame frame) { String oldValue = value; String text = getName() + ": "; @@ -124,21 +122,12 @@ public class TGCOneLineText extends TGCWithoutInternalComponent{ return false; } - public void renameTab(String s) { - TURTLEPanel tp = this.tdp.tp; - for (TDiagramPanel tdpTmp: tp.panels) { - if (tdpTmp.name.equals(name)) { - if (!tp.nameInUse(s)) { - tp.tabbedPane.setTitleAt(tp.getIndexOfChild(tdpTmp), s); - tp.panels.elementAt(tp.getIndexOfChild(tdpTmp)).setName(s); - tp.mgui.changeMade(null, -1); - } - break; - } - } + /* Issue #69 + * (non-Javadoc) + * @see ui.TGComponent#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + return getFather() != null && getFather().canLabelBeDisabled( this ); } - - public boolean nameUsed(String s) { - return this.tdp.tp.refNameUsed(s); - } } diff --git a/src/main/java/ui/TGCPointOfConnector.java b/src/main/java/ui/TGCPointOfConnector.java index 253517696f2ad867a1931f6acdd6260399fa1bdf..5d8608d4fb2d66b902606c478f4159d81c39867e 100755 --- a/src/main/java/ui/TGCPointOfConnector.java +++ b/src/main/java/ui/TGCPointOfConnector.java @@ -109,4 +109,13 @@ public class TGCPointOfConnector extends TGCScalableWithoutInternalComponent { public int getCurrentMaxY() { return getY() + getHeight(); } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + return false; + } } diff --git a/src/main/java/ui/TGCScalableWithInternalComponent.java b/src/main/java/ui/TGCScalableWithInternalComponent.java index a5c9f992f7723cb82392d62b87f1f36ea85f4d40..e292b8944c2010235867f686897fc8905e6ab373 100755 --- a/src/main/java/ui/TGCScalableWithInternalComponent.java +++ b/src/main/java/ui/TGCScalableWithInternalComponent.java @@ -38,8 +38,6 @@ package ui; -import myutil.TraceManager; - /** * Class TGCScalableWithInternalComponent * Graphical component that contains one or more internal components, and which is scalable @@ -48,8 +46,10 @@ import myutil.TraceManager; * @author Ludovic APVRILLE */ public abstract class TGCScalableWithInternalComponent extends TGCWithInternalComponent implements ScalableTGComponent { - protected boolean rescaled = false; - protected double oldScaleFactor; + + protected boolean rescaled = false; + + protected double oldScaleFactor; public TGCScalableWithInternalComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -114,7 +114,7 @@ public abstract class TGCScalableWithInternalComponent extends TGCWithInternalCo hasBeenResized(); } - public void initScaling(int w, int h) { + protected void initScaling(int w, int h) { oldScaleFactor = tdp.getZoom(); dx = 0; @@ -139,5 +139,4 @@ public abstract class TGCScalableWithInternalComponent extends TGCWithInternalCo rescaled = true; } - } diff --git a/src/main/java/ui/TGCWithInternalComponent.java b/src/main/java/ui/TGCWithInternalComponent.java index 1b2d6e71a192ec96a0abb56b59dcdb8d8c620fb0..833bc50b1d75cce2f7893fc8197b17304c4e411f 100755 --- a/src/main/java/ui/TGCWithInternalComponent.java +++ b/src/main/java/ui/TGCWithInternalComponent.java @@ -36,13 +36,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; -//import java.awt.*; - /** * Class TGCWithInternalComponent * Graphical component that contains one or more internal components @@ -50,13 +45,13 @@ package ui; * @version 1.0 22/12/2003 * @author Ludovic APVRILLE */ -public abstract class TGCWithInternalComponent extends TGComponent{ - +public abstract class TGCWithInternalComponent extends TGComponent { public TGCWithInternalComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); } + @Override public void setState(int s) { state = s; if (s != TGState.POINTER_ON_ME) { @@ -76,6 +71,7 @@ public abstract class TGCWithInternalComponent extends TGComponent{ } } + @Override public final TGComponent isOnMe(int x1, int y1) { selectedInternalComponent = isOnAnInternalTGComponent(x1, y1); @@ -87,5 +83,4 @@ public abstract class TGCWithInternalComponent extends TGComponent{ } public abstract TGComponent isOnOnlyMe(int x1, int y1); - } diff --git a/src/main/java/ui/TGCWithoutInternalComponent.java b/src/main/java/ui/TGCWithoutInternalComponent.java index cfbf1548aeadae10870aebc17032143dcb230ce2..8689b451937bd35e3a17fb4495a24b6019c4226e 100755 --- a/src/main/java/ui/TGCWithoutInternalComponent.java +++ b/src/main/java/ui/TGCWithoutInternalComponent.java @@ -36,13 +36,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; -//import java.awt.*; - /** * Class TGCWithoutInternalComponent * Graphical component which contains no internal component @@ -59,6 +54,7 @@ public abstract class TGCWithoutInternalComponent extends TGComponent{ nbInternalTGComponent = 0; } + @Override public void setState(int s) { if ((s == TGState.POINTED) && (father == null)) { state = TGState.POINTER_ON_ME; diff --git a/src/main/java/ui/TGComponent.java b/src/main/java/ui/TGComponent.java index 3d48762e9b1ee42229a55734f072450b44d73dbd..644262db990ae7b22aff56c67a9942604c221889 100755 --- a/src/main/java/ui/TGComponent.java +++ b/src/main/java/ui/TGComponent.java @@ -68,6 +68,7 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.geom.Point2D; import java.util.ArrayList; +import java.util.Arrays; import java.util.LinkedList; import java.util.List; import java.util.Vector; @@ -81,7 +82,7 @@ import java.util.Vector; * @version 1.0 21/12/2003 */ -public abstract class TGComponent implements CDElement, GenericTree { +public abstract class TGComponent extends AbstractCDElement implements /*CDElement,*/ GenericTree { protected final static String XML_HEAD = "<COMPONENT type=\""; protected final static String XML_ID = "\" id=\""; @@ -156,7 +157,7 @@ public abstract class TGComponent implements CDElement, GenericTree { protected TGComponent selectedInternalComponent; // characteristics - protected boolean enabled = true; + //protected boolean enabled = true; protected boolean moveable; protected boolean removable; protected boolean multieditable = false; @@ -168,7 +169,7 @@ public abstract class TGComponent implements CDElement, GenericTree { //Associated transactions public String transaction = ""; - public java.util.List<SimulationTransaction> transactions = new ArrayList<SimulationTransaction>(); + public List<SimulationTransaction> transactions = new ArrayList<SimulationTransaction>(); //If task public String runningStatus = ""; @@ -245,14 +246,14 @@ public abstract class TGComponent implements CDElement, GenericTree { public abstract void setState(int s); - - public void setEnabled(boolean _enabled) { - enabled = _enabled; - } - - public boolean isEnabled() { - return enabled; - } +// +// public void setEnabled(boolean _enabled) { +// enabled = _enabled; +// } +// +// public boolean isEnabled() { +// return enabled; +// } // Internal component operations public void setFather(TGComponent _father) { @@ -387,14 +388,14 @@ public abstract class TGComponent implements CDElement, GenericTree { return false; } - public java.util.List<TGComponent> getAllCheckedAccessibility() { - java.util.List<TGComponent> list = new LinkedList<TGComponent>(); + public List<TGComponent> getAllCheckedAccessibility() { + List<TGComponent> list = new LinkedList<TGComponent>(); getAllCheckedAccessibility(list); return list; } - public void getAllCheckedAccessibility(java.util.List<TGComponent> _list) { + public void getAllCheckedAccessibility(List<TGComponent> _list) { if (accessibility) { _list.add(this); } @@ -406,14 +407,14 @@ public abstract class TGComponent implements CDElement, GenericTree { } } - public java.util.List<TGComponent> getAllCheckableAccessibility() { - java.util.List<TGComponent> list = new LinkedList<TGComponent>(); + public List<TGComponent> getAllCheckableAccessibility() { + List<TGComponent> list = new LinkedList<TGComponent>(); getAllCheckableAccessibility(list); return list; } - public void getAllCheckableAccessibility(java.util.List<TGComponent> _list) { + public void getAllCheckableAccessibility(List<TGComponent> _list) { TraceManager.addDev("Investigating accessibility of " + this); if (this instanceof CheckableAccessibility) { _list.add(this); @@ -612,7 +613,7 @@ public abstract class TGComponent implements CDElement, GenericTree { GraphicLib.dashedRect(g, x + width + s2 + s3, y + s3, w + 15, h - 12); } - public void drawAttributes(Graphics g, String attr) { + protected void drawAttributes(Graphics g, String attr) { if (attr == null) { return; } @@ -630,11 +631,9 @@ public abstract class TGComponent implements CDElement, GenericTree { int w = p1.x; int h = p1.y - y + s3; GraphicLib.dashedRect(g, x + width + s2 + s3, y + s3, w + 15, h - 12); - } - public Point drawCode(Graphics g, String s, int x1, int y1, boolean pre, boolean java, int dec) { - + protected Point drawCode(Graphics g, String s, int x1, int y1, boolean pre, boolean java, int dec) { Point p = new Point(0, y1); String info; @@ -1022,11 +1021,14 @@ public abstract class TGComponent implements CDElement, GenericTree { } - public void draw(Graphics g) { RunningInfo ri; LoadInfo li; - ColorManager.setColor(g, state, 0); + + // Issue #69: Disabling of components + ColorManager.setColor(g, state, 0, isEnabled() ); +// ColorManager.setColor(g, state, 0); + Font font = new Font(Font.SANS_SERIF, Font.PLAIN, this.tdp.getFontSize()); g.setFont(font); internalDrawing(g); @@ -1153,7 +1155,7 @@ public abstract class TGComponent implements CDElement, GenericTree { if (li != null) { drawLoadDiploID(g, li); } - java.util.List<SimulationTransaction> ts = tdp.getMGUI().getTransactions(getDIPLOID()); + List<SimulationTransaction> ts = tdp.getMGUI().getTransactions(getDIPLOID()); if (ts != null && ts.size() > 0) { transactions = new ArrayList<SimulationTransaction>(ts); transaction = transactions.get(transactions.size() - 1).taskName + ":" + transactions.get(transactions.size() - 1).command; @@ -1627,8 +1629,8 @@ public abstract class TGComponent implements CDElement, GenericTree { return tgcomponent[index]; } - public LinkedList<TGComponent> getRecursiveAllInternalComponent() { - LinkedList<TGComponent> ll = new LinkedList<TGComponent>(); + public List<TGComponent> getRecursiveAllInternalComponent() { + List<TGComponent> ll = new LinkedList<TGComponent>(); for (int i = 0; i < nbInternalTGComponent; i++) { ll.add(tgcomponent[i]); @@ -3047,7 +3049,7 @@ public abstract class TGComponent implements CDElement, GenericTree { return saveInXML(true); } - public StringBuffer saveInXML(boolean saveSubComponents) { + protected StringBuffer saveInXML(boolean saveSubComponents) { StringBuffer sb = null; boolean b = (father == null); if (b) { @@ -3068,7 +3070,10 @@ public abstract class TGComponent implements CDElement, GenericTree { sb.append(translateCDParam()); sb.append(translateSizeParam()); sb.append(translateHidden()); - if (this instanceof CanBeDisabled) { + + // Issue #69 + if ( canBeDisabled() ) { + //if (this instanceof CanBeDisabled) { sb.append(translateEnabled()); } sb.append(translateCDRectangleParam()); @@ -3119,7 +3124,7 @@ public abstract class TGComponent implements CDElement, GenericTree { } protected String translateEnabled() { - return "<enabled value=\"" + enabled + "\" />\n"; + return "<enabled value=\"" + isEnabled() + "\" />\n"; } protected String translateHidden() { @@ -3279,6 +3284,7 @@ public abstract class TGComponent implements CDElement, GenericTree { public void postLoading(int decId) throws MalformedModelingException { } + @Override public String toString() { String s1 = getName(); String s2 = getValue(); @@ -3341,4 +3347,131 @@ public abstract class TGComponent implements CDElement, GenericTree { public void clickSelect(boolean b) { isSelect = b; } + + /** + * Issue #69 + * @param point + * @return + */ + public TGConnector getConnectorConnectedTo( final TGConnectingPoint point ) { + return tdp.getConnectorConnectedTo( point ); + } + + /** + * Issue #69 + * @return + */ + public List<TGConnector> getConnectors() { + return tdp.getConnectors(); + } + + /** + * Issue #69 + * @return + */ + public List<TGConnector> getInputConnectors() { + final List<TGConnector> connectors = new ArrayList<TGConnector>(); + final List<TGConnectingPoint> points = Arrays.asList( getConnectingPoints() ); + + for ( final TGConnector connector : getConnectors() ) { + if ( points.contains( connector.getTGConnectingPointP2() ) ) { + connectors.add( connector ); + } + } + + return connectors; + } + + /** + * Issue #69 + * @return + */ + public List<TGConnector> getOutputConnectors() { + final List<TGConnector> connectors = new ArrayList<TGConnector>(); + final List<TGConnectingPoint> points = Arrays.asList( getConnectingPoints() ); + + for ( final TGConnector connector : getConnectors() ) { + if ( points.contains( connector.getTGConnectingPointP1() ) ) { + connectors.add( connector ); + } + } + + return connectors; + } + + /** + * Issue #69 + * @return + */ + public TGConnectingPoint[] getConnectingPoints() { + return connectingPoint; + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#acceptForward(ui.ICDElementVisitor) + */ + @Override + public void acceptForward( final ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + if ( tgcomponent != null ) { + for ( final TGComponent subCompo : tgcomponent ) { + subCompo.acceptForward( visitor ); + } + } + + if ( connectingPoint != null ) { + for ( final TGConnectingPoint point : connectingPoint ) { + final TGConnector connector = getConnectorConnectedTo( point ); + + if ( connector != null && point == connector.getTGConnectingPointP1() ) { + point.acceptForward( visitor ); + } + } + } + } + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#acceptBackward(ui.ICDElementVisitor) + */ + @Override + public void acceptBackward( final ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + if ( tgcomponent != null ) { + for ( final TGComponent subCompo : tgcomponent ) { + subCompo.acceptBackward( visitor ); + } + } + + if ( connectingPoint != null ) { + for ( final TGConnectingPoint point : connectingPoint ) { + final TGConnector connector = getConnectorConnectedTo( point ); + + if ( connector != null && point == connector.getTGConnectingPointP2() ) { + point.acceptBackward( visitor ); + } + } + } + } + } + + public void renameTab(String s) { + TURTLEPanel tp = this.tdp.tp; + for (TDiagramPanel tdpTmp: tp.panels) { + if (tdpTmp.name.equals(name)) { + if (!tp.nameInUse(s)) { + tp.tabbedPane.setTitleAt(tp.getIndexOfChild(tdpTmp), s); + tp.panels.elementAt(tp.getIndexOfChild(tdpTmp)).setName(s); + tp.mgui.changeMade(null, -1); + } + break; + } + } + } + + public boolean nameUsed(String s) { + return this.tdp.tp.refNameUsed(s); + } } diff --git a/src/main/java/ui/TGComponentManager.java b/src/main/java/ui/TGComponentManager.java index 95102882c9c655e806e1108ae6a1cd3e54377da4..6d5bd21e984f49e033e75a23715f313c0bfb2c61 100644 --- a/src/main/java/ui/TGComponentManager.java +++ b/src/main/java/ui/TGComponentManager.java @@ -37,11 +37,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui; -//import java.awt.*; - import ui.ad.*; import ui.atd.*; import ui.avatarad.*; @@ -327,7 +324,9 @@ public class TGComponentManager { public static final int TMLCP_REF_SD = 1505; public static final int TMLCP_START_STATE = 1506; public static final int TMLCP_STOP_STATE = 1507; - public static final int TMLCP_JUNCTION = 1508; + + // Issue #69 + // public static final int TMLCP_JUNCTION = 1508; public static final int TMLCP_FOR_LOOP = 1510; public static final int TMLSD_STORAGE_INSTANCE = 1520; @@ -428,7 +427,10 @@ public class TGComponentManager { public static final int AVATARSMD_CONNECTOR = 5102; public static final int AVATARSMD_SEND_SIGNAL = 5103; public static final int AVATARSMD_RECEIVE_SIGNAL = 5104; - public static final int AVATARSMD_PARALLEL = 5105; + + // Issue #69 + //public static final int AVATARSMD_PARALLEL = 5105; + public static final int AVATARSMD_STATE = 5106; public static final int AVATARSMD_CHOICE = 5107; public static final int AVATARSMD_RANDOM = 5108; @@ -597,9 +599,9 @@ public class TGComponentManager { case AVATARSMD_RECEIVE_SIGNAL: tgc = new AvatarSMDReceiveSignal(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp); break; - case AVATARSMD_PARALLEL: - tgc = new AvatarSMDParallel(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp); - break; +// case AVATARSMD_PARALLEL: Issue #69 +// tgc = new AvatarSMDParallel(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp); +// break; case AVATARSMD_STATE: tgc = new AvatarSMDState(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp); break; @@ -1385,9 +1387,9 @@ public class TGComponentManager { case TMLCP_STOP_STATE: tgc = new TMLCPStopState(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp); break; - case TMLCP_JUNCTION: - tgc = new TMLCPJunction(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp); - break; +// case TMLCP_JUNCTION: // Issue #69 +// tgc = new TMLCPJunction(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp); +// break; case TMLCP_FOR_LOOP: tgc = new TMLCPForLoop(x, y, tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY(), false, null, tdp); break; @@ -1540,8 +1542,8 @@ public class TGComponentManager { return AVATARSMD_RECEIVE_SIGNAL; } else if (tgc instanceof AvatarSMDLibraryFunctionCall) { return AVATARSMD_LIBRARY_FUNCTION_CALL; - } else if (tgc instanceof AvatarSMDParallel) { - return AVATARSMD_PARALLEL; +// } else if (tgc instanceof AvatarSMDParallel) { // Issue #69 +// return AVATARSMD_PARALLEL; } else if (tgc instanceof AvatarSMDState) { return AVATARSMD_STATE; } else if (tgc instanceof AvatarSMDChoice) { @@ -2175,8 +2177,8 @@ public class TGComponentManager { return TMLCP_START_STATE; } else if (tgc instanceof TMLCPStopState) { return TMLCP_STOP_STATE; - } else if (tgc instanceof TMLCPJunction) { - return TMLCP_JUNCTION; +// } else if (tgc instanceof TMLCPJunction) { Issue #69 +// return TMLCP_JUNCTION; } else if (tgc instanceof TMLCPForLoop) { return TMLCP_FOR_LOOP; } else if (tgc instanceof TGConnectorTMLCP) { diff --git a/src/main/java/ui/TGConnectingPoint.java b/src/main/java/ui/TGConnectingPoint.java index 8943e41030274945973435176c70f5af365bf21c..1ac1d98c38896be8c6410853863030f12c7cd896 100755 --- a/src/main/java/ui/TGConnectingPoint.java +++ b/src/main/java/ui/TGConnectingPoint.java @@ -37,9 +37,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; import myutil.GraphicLib; @@ -53,9 +50,9 @@ import java.awt.*; * @version 1.0 22/12/2003 * @author Ludovic APVRILLE, Andrea Enrici */ -public class TGConnectingPoint implements CDElement { +public class TGConnectingPoint extends AbstractCDElement /*implements CDElement*/ { - protected TGComponent father; + //protected TGComponent father; //private static int ID = 0; @@ -123,6 +120,7 @@ public class TGConnectingPoint implements CDElement { public void draw(Graphics g) { int mx = getX(); int my = getY(); + if (state == SELECTED) { mx = mx - width / 2; my = my - height / 2; @@ -133,7 +131,6 @@ public class TGConnectingPoint implements CDElement { g.setColor(myColor); g.fillRect(mx - width/4, my - width/4, width/2, height/2); GraphicLib.doubleColorRect(g, mx - width/4, my - width/4, width/2, height/2, Color.lightGray, Color.black); - } } @@ -220,8 +217,6 @@ public class TGConnectingPoint implements CDElement { TGComponent.setGeneralId(id + 1); } - - // return true if state _s is different from the previous one public boolean setState(int _s){ boolean b = false; @@ -296,9 +291,9 @@ public class TGConnectingPoint implements CDElement { }*/ //DG 27.02. - public TGComponent getOwner() { - return father; - } +// public TGComponent getOwner() { +// return father; +// } //fin DG public void setReferenceToConnector( TGConnector _ref ) { @@ -325,4 +320,70 @@ public class TGConnectingPoint implements CDElement { public int getCurrentMaxY() { return getY() + getHeight(); } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + return false; + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#isEnabled() + */ + @Override + public boolean isEnabled() { + return true; + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#acceptForward(ui.ICDElementVisitor) + */ + @Override + public void acceptForward( final ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + if ( getFather() instanceof TGComponent ) { + final TGConnector connector = ( (TGComponent) getFather() ).getConnectorConnectedTo( this ); + + if ( connector != null ) { + + // Traverse the graph in its direction + if ( this == connector.getTGConnectingPointP2() ) { + getFather().acceptForward( visitor ); + } + else { + connector.acceptForward( visitor ); + } + } + } + } + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#acceptBackward(ui.ICDElementVisitor) + */ + @Override + public void acceptBackward( final ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + if ( getFather() instanceof TGComponent ) { + final TGConnector connector = ( (TGComponent) getFather() ).getConnectorConnectedTo( this ); + + if ( connector != null ) { + + // Traverse the graph in its direction + if ( this == connector.getTGConnectingPointP1() ) { + getFather().acceptBackward( visitor ); + } + else { + connector.acceptBackward( visitor ); + } + } + } + } + } } diff --git a/src/main/java/ui/TGConnectingPointWidthHeight.java b/src/main/java/ui/TGConnectingPointWidthHeight.java index 2aa5eab134416a667546a6080ab652674c219fb0..46d95a7615f67802358c51f105fff164bc179615 100755 --- a/src/main/java/ui/TGConnectingPointWidthHeight.java +++ b/src/main/java/ui/TGConnectingPointWidthHeight.java @@ -36,13 +36,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; -//import java.awt.*; - /** * Class TGConnectingPointWidthHeight * Connecting points of TClasses @@ -51,8 +46,10 @@ package ui; * @author Ludovic APVRILLE */ public class TGConnectingPointWidthHeight extends TGConnectingPoint{ - protected double w; - protected double h; + + protected double w; + + protected double h; public TGConnectingPointWidthHeight(CDElement _container, int _x, int _y, boolean _in, boolean _out, double _w, double _h) { super(_container, _x, _y, _in, _out); @@ -60,10 +57,12 @@ public class TGConnectingPointWidthHeight extends TGConnectingPoint{ h = _h; } + @Override public int getX() { return x + container.getX() + (int)(container.getWidth() * w); } + @Override public int getY() { return y + container.getY() + (int)(container.getHeight() * h); } diff --git a/src/main/java/ui/TGConnector.java b/src/main/java/ui/TGConnector.java index 0166e22e6b7ebe458a025128f1d841d3ed3ea2af..c8cfd70edf52b13f7cb15d278905357e72a74686 100755 --- a/src/main/java/ui/TGConnector.java +++ b/src/main/java/ui/TGConnector.java @@ -37,9 +37,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; import myutil.*; @@ -59,7 +56,7 @@ import java.util.Vector; * @version 1.0 22/12/2003 * @author Ludovic APVRILLE, Andrea ENRICI */ -public abstract class TGConnector extends TGCScalableWithInternalComponent { +public abstract class TGConnector extends TGCScalableWithInternalComponent { protected final static String XML_CONNECTOR_HEAD = "<CONNECTOR type=\""; protected final static String XML_ID = "\" id=\""; @@ -188,10 +185,9 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent //TraceManager.addDev("Index=" + index); return index; } - public int getFirstIndexOfOtherInternalComponents() { - return getIndexOfLastTGCPointOfConnector() + 1; + return getIndexOfLastTGCPointOfConnector() + 1; } public boolean hasTGCPointOfConnector() { @@ -209,24 +205,25 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent return -1; }*/ + @Override public void internalDrawing(Graphics g) { - TGComponent p3, p4; - if (hasTGCPointOfConnector()) { p3 = tgcomponent[0]; p4 = tgcomponent[0]; //TraceManager.addDev("p3.x " + p3.getX() + " p3.y " + p3.getY()); //drawMiddleSegment(g, p1.getX(), p1.getY(), p3.getXZoom(), p3.getYZoom()); - drawMiddleSegment(g, p1.getX(), p1.getY(), p3.getX(), p3.getY()); + drawMiddleSegment(g, p1.getX(), p1.getY(), p3.getX(), p3.getY()); - TGCPointOfConnector[] pts = listOfPointsToArray(); + TGCPointOfConnector[] pts = listOfPointsToArray(); + for(int i=0; i<pts.length-1; i++) { p3 = tgcomponent[i]; p4 = tgcomponent[i+1]; drawMiddleSegment(g, p3.getX(), p3.getY(), p4.getX(), p4.getY()); } + drawLastSegment(g, p4.getX(), p4.getY(), p2.getX(), p2.getY()); } else { drawLastSegment(g, p1.getX(), p1.getY(), p2.getX(), p2.getY()); @@ -447,12 +444,12 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent } private int indexOf(TGComponent pt) { - for(int i=0; i<tgcomponent.length; i++) { - if (tgcomponent[i] == pt) { - return i; - } - } - return -1; + for(int i=0; i<tgcomponent.length; i++) { + if (tgcomponent[i] == pt) { + return i; + } + } + return -1; } public int indexPointedSegment(int x1, int y1) { @@ -465,7 +462,7 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent return 0; } - TGCPointOfConnector []points = listOfPointsToArray(); + TGCPointOfConnector []points = listOfPointsToArray(); for(int i=0; i<points.length-1; i++) { p3 = points[i]; p4 = points[i+1]; @@ -621,6 +618,7 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent return true; } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { TGComponent p3, p4; int i; @@ -774,6 +772,7 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent } + @Override public StringBuffer saveInXML() { StringBuffer sb = new StringBuffer(XML_CONNECTOR_HEAD); sb.append(getType()); @@ -828,6 +827,7 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent } } + @Override public void addActionToPopupMenu(JPopupMenu componentMenu, ActionListener menuAL, int x, int y) { popupx = x; popupy = y; @@ -863,6 +863,7 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent } } + @Override public boolean eventOnPopup(ActionEvent e) { if (e.getActionCommand().equals("Add Point")) { return addTGCPointOfConnector(popupx, popupy); @@ -908,8 +909,8 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent tgcomponent = tgcomponentnew; } - // Middle of the last segment + @Override public void drawAttributes(Graphics g, String attr) { int s0=4, s1=9, s2=30, s3=10; int x1, y1; @@ -975,4 +976,46 @@ public abstract class TGConnector extends TGCScalableWithInternalComponent return maxValue; } + + /* Issue #69 + * (non-Javadoc) + * @see ui.TGComponent#acceptForward(ui.ICDElementVisitor) + */ + @Override + public void acceptForward( ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + + // Traverse the graph in the direction of the connector + getTGConnectingPointP2().acceptForward( visitor ); + } + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.TGComponent#acceptBackward(ui.ICDElementVisitor) + */ + @Override + public void acceptBackward( ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + + // Traverse the graph in the direction of the connector + getTGConnectingPointP1().acceptBackward( visitor ); + } + } + + public boolean isContainedBy( final TGComponent component ) { + if ( p2 != null ) { + if ( p2.getFather() instanceof TGComponent && ( (TGComponent) p2.getFather() ).getFather() == component ) { + return true; + } + } + + if ( p1 != null ) { + if ( p1.getFather() instanceof TGComponent && ( (TGComponent) p1.getFather() ).getFather() == component ) { + return true; + } + } + + return false; + } }//End of class diff --git a/src/main/java/ui/TGConnectorComment.java b/src/main/java/ui/TGConnectorComment.java index 9f17561d418df2dd5f5f892d90fb1e4c65969607..dc15f63d6e9db8c0b2f4ad4dae98bffaebe2e320 100755 --- a/src/main/java/ui/TGConnectorComment.java +++ b/src/main/java/ui/TGConnectorComment.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; import myutil.GraphicLib; @@ -47,8 +44,6 @@ import ui.util.IconManager; import java.awt.*; import java.util.Vector; -//import java.awt.geom.*; - /** * Class TGConnectorComment * Connects a UML note to a component @@ -60,21 +55,23 @@ public class TGConnectorComment extends TGConnector { public TGConnectorComment(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) { super(_x, _y, _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint); + myImageIcon = IconManager.imgic108; automaticDrawing = false; } + @Override protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ GraphicLib.dashedLine(g, x1, y1, x2, y2); - } + @Override protected void drawMiddleSegment(Graphics g, int x1, int y1, int x2, int y2) { GraphicLib.dashedLine(g, x1, y1, x2, y2); } + @Override public int getType() { return TGComponentManager.CONNECTOR_COMMENT; } - } diff --git a/src/main/java/ui/TGConnectorFullArrow.java b/src/main/java/ui/TGConnectorFullArrow.java index 3e95702904cca99f41b5e3c4e3a37c883a069ebb..4b356be0e5b8a66213fc25a35b7760b2178a3a6c 100755 --- a/src/main/java/ui/TGConnectorFullArrow.java +++ b/src/main/java/ui/TGConnectorFullArrow.java @@ -35,9 +35,6 @@ * The fact that you are presently reading this means that you have had * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui; @@ -56,13 +53,16 @@ import java.util.Vector; * @author Ludovic APVRILLE */ public class TGConnectorFullArrow extends TGConnector implements TGConnectorBetweenElementsInterface { + protected int arrowLength = 10; public TGConnectorFullArrow(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) { super(_x, _y, _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint); + myImageIcon = IconManager.imgic202; } + @Override protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) { g.drawLine(x1, y1, x2, y2); @@ -71,15 +71,8 @@ public class TGConnectorFullArrow extends TGConnector implements TGConnectorBet } } + @Override public int getType() { - // - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } } - - - - - - - diff --git a/src/main/java/ui/TGUIAction.java b/src/main/java/ui/TGUIAction.java index c06631ce49bb99c4a3fa2c9707440d13a936a839..65c1ad8f286366e989df5f5ccfacf4b30ab9785d 100644 --- a/src/main/java/ui/TGUIAction.java +++ b/src/main/java/ui/TGUIAction.java @@ -421,7 +421,7 @@ public class TGUIAction extends AbstractAction { public static final int ASMD_SEND_SIGNAL = 296; public static final int ASMD_RECEIVE_SIGNAL = 297; public static final int ASMD_LIBRARY_FUNCTION_CALL = 432; - public static final int ASMD_PARALLEL = 298; + //public static final int ASMD_PARALLEL = 298; Issue #69 public static final int ASMD_STATE = 299; public static final int ASMD_CHOICE = 325; public static final int ASMD_RANDOM = 326; @@ -1293,7 +1293,7 @@ public class TGUIAction extends AbstractAction { actions[ASMD_RECEIVE_SIGNAL] = new TAction("add-asmd-receivesignal", "Receive signal", IconManager.imgic2016, IconManager.imgic2016, "Receive signal", "Add a receive signal operator to the currently opened AVATAR state machine diagram", 0); // TODO: change icon actions[ASMD_LIBRARY_FUNCTION_CALL] = new TAction("add-asmd-libraryfunctioncall", "Library function call", IconManager.imgic2018, IconManager.imgic2018, "Library function call", "Add a library function call to the currently opened AVATAR state machine diagram", 0); - actions[ASMD_PARALLEL] = new TAction("add-asmd-parallel", "Parallel", IconManager.imgic206, IconManager.imgic206, "Parallel", "Add a parallel operator to the currently opened AVATAR state machine diagram", 0); + //actions[ASMD_PARALLEL] = new TAction("add-asmd-parallel", "Parallel", IconManager.imgic206, IconManager.imgic206, "Parallel", "Add a parallel operator to the currently opened AVATAR state machine diagram", 0); actions[ASMD_STATE] = new TAction("add-asmd-state", "State", IconManager.imgic5036, IconManager.imgic5036, "State", "Add a new state to the currently opened AVATAR state machine diagram", 0); actions[ASMD_CHOICE] = new TAction("add-asmd-choice", "Add Choice", IconManager.imgic208, IconManager.imgic208, "Choice", "Add a choice - non-deterministic or guarded - to the currently opened AVATAR state machine diagram", 0); actions[ASMD_RANDOM] = new TAction("add-asmd-random", "Add random", IconManager.imgic924, IconManager.imgic924, "Select random", "Add a random operator to the currently opened AVATAR State Machine diagram", 0); @@ -1374,10 +1374,9 @@ public class TGUIAction extends AbstractAction { actions[ACT_GENERATE_ONTOLOGIES_ALL_DIAGRAMS] = new TAction("generate-ontology-all-diagrams", "Generate ontology (all diagrams)", IconManager.imgic338, IconManager.imgic339, "Generate ontology (all diagrams)", "Generate the ontology for the diagrams under edition", 0); actions[MOVE_ENABLED] = new TAction("Move", "Move enabled", IconManager.imgic780, IconManager.imgic780, "Move enabled (shift + arrow)", "Move", 0); - actions[FIRST_DIAGRAM] = new TAction("FirstDiagram", "First Diagram", IconManager.imgic142, IconManager.imgic142, "Switch the the first diagram", "Switch to the first diagram", 0); + actions[FIRST_DIAGRAM] = new TAction("FirstDiagram", "First Diagram", IconManager.imgic142, IconManager.imgic142, "Switch the the first diagram", "Switch to the first diagram", 0); } - public String getActionCommand() { return (String)getValue(Action.ACTION_COMMAND_KEY); } @@ -1390,6 +1389,7 @@ public class TGUIAction extends AbstractAction { return (String)getValue(Action.LONG_DESCRIPTION); } + @Override public void actionPerformed(ActionEvent evt) { if (listeners != null) { Object[] listenerList = listeners.getListenerList(); diff --git a/src/main/java/ui/TrackingCDElementVisitor.java b/src/main/java/ui/TrackingCDElementVisitor.java new file mode 100644 index 0000000000000000000000000000000000000000..5dbfd6a684deb5a207329c38a2572e7d960ee6ab --- /dev/null +++ b/src/main/java/ui/TrackingCDElementVisitor.java @@ -0,0 +1,18 @@ +package ui; + +import java.util.HashSet; +import java.util.Set; + +public abstract class TrackingCDElementVisitor implements ICDElementVisitor { + + private final Set<CDElement> visitedElements; + + protected TrackingCDElementVisitor() { + visitedElements = new HashSet<CDElement>(); + } + + @Override + public boolean visit(CDElement element) { + return visitedElements.add( element ); + } +} diff --git a/src/main/java/ui/UICheckingError.java b/src/main/java/ui/UICheckingError.java index bbbb281e7e56998126685e030bd9ef4ba0dac48d..b03b7feeba0e8b516c7e27b03e7734fffbce8911 100755 --- a/src/main/java/ui/UICheckingError.java +++ b/src/main/java/ui/UICheckingError.java @@ -36,16 +36,10 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - - package ui; import translator.CheckingError; - - /** * Class UICheckingError * Creation: 07/06/2017 @@ -54,7 +48,14 @@ import translator.CheckingError; */ public class UICheckingError extends CheckingError { - private TDiagramPanel tdp; + /** + * + */ + private static final long serialVersionUID = -6532490783339577084L; + + public static final String MESSAGE_CHOICE_BOTH_STOCHASTIC_DETERMINISTIC = "Badly formatted choice: it has both non-determinitic/ stochastic and regular guards"; + + private TDiagramPanel tdp; private TGComponent tgc; public UICheckingError(int _type, String _message) { diff --git a/src/main/java/ui/ad/CanBeDisabledADElementVisitor.java b/src/main/java/ui/ad/CanBeDisabledADElementVisitor.java new file mode 100644 index 0000000000000000000000000000000000000000..19c917284485eff8540a826c529ee02b7d3d226a --- /dev/null +++ b/src/main/java/ui/ad/CanBeDisabledADElementVisitor.java @@ -0,0 +1,53 @@ +package ui.ad; + +import ui.TrackingCDElementVisitor; +import ui.CDElement; +import ui.TGConnectingPoint; + +public class CanBeDisabledADElementVisitor extends TrackingCDElementVisitor { + + private boolean canBeDisabled; + + public CanBeDisabledADElementVisitor() { + super(); + + canBeDisabled = true; + } + + /* Check that the element is not part of the inside loop of a for loop + * (non-Javadoc) + * @see ui.ICDElementVisitor#visit(ui.CDElement) + */ + @Override + public boolean visit( final CDElement element ) { + if ( !super.visit( element ) ) { + return false; + } + + if ( element instanceof TGConnectingPoint ) { + final CDElement father = ( (TGConnectingPoint) element ).getFather(); + + if ( father instanceof TADForLoop ) { + if ( element == ( (TADForLoop) father ).getInsideLoopConnectingPoint() && !father.isEnabled() ) { + canBeDisabled = false; + + return false; + } + } + +// if ( father instanceof TADSequence ) { +// if ( element != ( (TADSequence) father ).getEnterSequenceConnectionPoint() && !father.isEnabled() ) { +// canBeDisabled = false; +// +// return false; +// } +// } + } + + return true; + } + + public boolean isCanBeDisabled() { + return canBeDisabled; + } +} diff --git a/src/main/java/ui/ad/EnablingADBranchVisitor.java b/src/main/java/ui/ad/EnablingADBranchVisitor.java new file mode 100644 index 0000000000000000000000000000000000000000..592367a6845dd8631968d4a8d777836a0be446ff --- /dev/null +++ b/src/main/java/ui/ad/EnablingADBranchVisitor.java @@ -0,0 +1,30 @@ +package ui.ad; + +import ui.CDElement; +import ui.TrackingCDElementVisitor; + +public class EnablingADBranchVisitor extends TrackingCDElementVisitor { + + private final boolean enabled; + + public EnablingADBranchVisitor( final boolean enabled ) { + super(); + + this.enabled = enabled; + } + + /* Disable everything of the branch + * (non-Javadoc) + * @see ui.ICDElementVisitor#visit(ui.CDElement) + */ + @Override + public boolean visit( final CDElement element ) { + if ( !super.visit( element ) ) { + return false; + } + + element.doSetEnabled( enabled ); + + return true; + } +} diff --git a/src/main/java/ui/ad/EnablingADConnectorVisitor.java b/src/main/java/ui/ad/EnablingADConnectorVisitor.java new file mode 100644 index 0000000000000000000000000000000000000000..60a190a3501038aa1684ad691b32976d36ecdf9c --- /dev/null +++ b/src/main/java/ui/ad/EnablingADConnectorVisitor.java @@ -0,0 +1,51 @@ +package ui.ad; + +import ui.CDElement; +import ui.TGConnectingPoint; +import ui.TGConnector; +import ui.TrackingCDElementVisitor; + +public class EnablingADConnectorVisitor extends TrackingCDElementVisitor { + + private final boolean enabled; + + public EnablingADConnectorVisitor( final boolean enabled ) { + super(); + + this.enabled = enabled; + } + + @Override + public boolean visit( final CDElement element ) { + if ( !super.visit( element ) ) { + return false; + } + + // Do not disable the stop + if ( element instanceof TADStopState ) { + return false; + } + + if ( element.canBeDisabled() && !( element instanceof TGConnector ) ) { + element.setEnabled( enabled ); + } + + if ( element instanceof TGConnectingPoint ) { + final TGConnectingPoint point = (TGConnectingPoint) element; + final CDElement father = point.getFather(); + + // Only continue if the point does not belongs to the inside of the loop because it is managed by + // the For itself + if ( father instanceof TADForLoop ) { + return point != ( (TADForLoop) father ).getInsideLoopConnectingPoint(); + } + + // Disabling a sequence results in disabling all its branches so only continue if we are at entrance +// if ( father instanceof TADSequence ) { +// return point == ( (TADSequence) father ).getEnterSequenceConnectionPoint(); +// } + } + + return true; + } +} diff --git a/src/main/java/ui/ad/TADActionState.java b/src/main/java/ui/ad/TADActionState.java index 6188b2dcd4b27720e1b06adc48d5b987e3fbdba9..a99752dca2228217c788dc40d6377af4674ec437 100755 --- a/src/main/java/ui/ad/TADActionState.java +++ b/src/main/java/ui/ad/TADActionState.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -55,7 +52,7 @@ import java.awt.geom.Line2D; * @version 1.0 12/08/2003 * @author Ludovic APVRILLE */ -public class TADActionState extends TGCOneLineText implements PreJavaCode, PostJavaCode, CheckableAccessibility, ActionStateErrorHighlight { +public class TADActionState extends TADOneLineText/* Issue #69 TGCOneLineText*/ implements PreJavaCode, PostJavaCode, CheckableAccessibility, ActionStateErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -71,11 +68,12 @@ public class TADActionState extends TGCOneLineText implements PreJavaCode, PostJ height = 20; minWidth = 30; - nbConnectingPoint = 2; - connectingPoint = new TGConnectingPoint[2]; - connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0); - addTGConnectingPointsComment(); + createConnectingPoints(); +// nbConnectingPoint = 2; +// connectingPoint = new TGConnectingPoint[2]; +// connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); +// connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0); +// addTGConnectingPointsComment(); moveable = true; editable = true; @@ -87,6 +85,16 @@ public class TADActionState extends TGCOneLineText implements PreJavaCode, PostJ myImageIcon = IconManager.imgic204; } + protected void createConnectingPoints() { + nbConnectingPoint = 2; + connectingPoint = new TGConnectingPoint[ nbConnectingPoint ]; + connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); + connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0); + + addTGConnectingPointsComment(); + } + + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -127,6 +135,7 @@ public class TADActionState extends TGCOneLineText implements PreJavaCode, PostJ } } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -175,19 +184,18 @@ public class TADActionState extends TGCOneLineText implements PreJavaCode, PostJ return ret; } + @Override public int getType() { return TGComponentManager.TAD_ACTION_STATE; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_AD_DIAGRAM; } + @Override public void setStateAction(int _stateAction) { stateAction = _stateAction; } - - - - } diff --git a/src/main/java/ui/ad/TADArrayGetState.java b/src/main/java/ui/ad/TADArrayGetState.java index 96138a63e5ab255b858990d9200648ec3edd4c98..47e708e4ac03371051471f2ac5a32b0f59b28000 100755 --- a/src/main/java/ui/ad/TADArrayGetState.java +++ b/src/main/java/ui/ad/TADArrayGetState.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -60,7 +57,7 @@ import java.awt.geom.Line2D; * @version 1.0 20/03/2009 * @author Ludovic APVRILLE */ -public class TADArrayGetState extends TGCWithoutInternalComponent implements BasicErrorHighlight { +public class TADArrayGetState extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -98,8 +95,7 @@ public class TADArrayGetState extends TGCWithoutInternalComponent implements Bas myImageIcon = IconManager.imgic230; } - - + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -136,8 +132,8 @@ public class TADArrayGetState extends TGCWithoutInternalComponent implements Bas }*/ } + @Override public boolean editOndoubleClick(JFrame frame) { - String oldValue = value; JDialogArrayGet jdag = new JDialogArrayGet(frame, variable, array, index, "Getting value from an array"); @@ -161,6 +157,7 @@ public class TADArrayGetState extends TGCWithoutInternalComponent implements Bas value = variable + " = " + array + "[" + index + "]"; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Prop variable=\""); @@ -213,6 +210,7 @@ public class TADArrayGetState extends TGCWithoutInternalComponent implements Bas makeValue(); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -242,17 +240,18 @@ public class TADArrayGetState extends TGCWithoutInternalComponent implements Bas return index; } + @Override public int getType() { return TGComponentManager.TAD_ARRAY_GET; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_AD_DIAGRAM; } + @Override public void setStateAction(int _stateAction) { stateAction = _stateAction; } - - } diff --git a/src/main/java/ui/ad/TADArraySetState.java b/src/main/java/ui/ad/TADArraySetState.java index 80517ed993c7f5068d46264f5903b37170c069f7..4e0060f2fc1db93fc6c34b44c2d523b670654ae8 100755 --- a/src/main/java/ui/ad/TADArraySetState.java +++ b/src/main/java/ui/ad/TADArraySetState.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -60,7 +57,7 @@ import java.awt.geom.Line2D; * @version 1.0 20/03/2009 * @author Ludovic APVRILLE */ -public class TADArraySetState extends TGCWithoutInternalComponent implements BasicErrorHighlight { +public class TADArraySetState extends TADComponentWithoutSubcomponents/* Issue #69TGCWithoutInternalComponent */ implements BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -72,7 +69,6 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas protected String expr = "x"; protected int stateAction = 0; // 0: unchecked 1: ok; 2:unknown - public TADArraySetState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -97,8 +93,7 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas myImageIcon = IconManager.imgic232; } - - + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -126,11 +121,10 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); g.drawString(value, x + (width - w) / 2 , y + textY); - } - + + @Override public boolean editOndoubleClick(JFrame frame) { - String oldValue = value; JDialogArraySet jdas = new JDialogArraySet(frame, array, index, expr, "Setting value of an array location"); @@ -154,6 +148,7 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas value = array + "[" + index + "] = " + expr; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Prop expr=\""); @@ -206,6 +201,7 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas makeValue(); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -235,17 +231,18 @@ public class TADArraySetState extends TGCWithoutInternalComponent implements Bas return index; } + @Override public int getType() { return TGComponentManager.TAD_ARRAY_SET; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } + @Override public void setStateAction(int _stateAction) { stateAction = _stateAction; } - - } diff --git a/src/main/java/ui/ad/TADChoice.java b/src/main/java/ui/ad/TADChoice.java index ab65e5b2111e537eaf38082eb68dae968dbb2c6c..67361b576a6755f4468f09759461bf9f01a61950 100755 --- a/src/main/java/ui/ad/TADChoice.java +++ b/src/main/java/ui/ad/TADChoice.java @@ -36,18 +36,18 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; import ui.*; import ui.util.IconManager; -import java.awt.*; +import java.awt.Color; +import java.awt.Graphics; import java.awt.geom.Line2D; - +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; /** * Class TADChoice @@ -56,11 +56,19 @@ import java.awt.geom.Line2D; * @version 1.0 21/12/2003 * @author Ludovic APVRILLE */ -public class TADChoice extends TGCWithInternalComponent { - private int lineLength = 10; - private int lineOutLength = 25; - private int textX1, textY1, textX2, textY2, textX3, textY3; +public class TADChoice extends TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent */ { + + public static final String EMPTY_GUARD_TEXT = "[ ]"; + + private static final String TRUE_GUARD_TEXT = "[ true ]"; + + protected int lineLength = 10; + + protected int lineOutLength = 25; + private int textX1, textY1, textX2, textY2, textX3, textY3; + + protected int stateOfError = 0; public TADChoice(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -74,31 +82,34 @@ public class TADChoice extends TGCWithInternalComponent { textX3 = width /2 + 5; textY3 = height + 15; - nbConnectingPoint = 4; - connectingPoint = new TGConnectingPoint[nbConnectingPoint]; - connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointAD(this, -lineOutLength, 0, false, true, 0.0, 0.5); - connectingPoint[2] = new TGConnectingPointAD(this, lineOutLength, 0, false, true, 1.0, 0.5); - connectingPoint[3] = new TGConnectingPointAD(this, 0, lineOutLength, false, true, 0.5, 1.0); - addTGConnectingPointsComment(); + createConnectingPoints(); +// nbConnectingPoint = 4; +// connectingPoint = new TGConnectingPoint[nbConnectingPoint]; +// connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); +// connectingPoint[1] = new TGConnectingPointAD(this, -lineOutLength, 0, false, true, 0.0, 0.5); +// connectingPoint[2] = new TGConnectingPointAD(this, lineOutLength, 0, false, true, 1.0, 0.5); +// connectingPoint[3] = new TGConnectingPointAD(this, 0, lineOutLength, false, true, 0.5, 1.0); +// addTGConnectingPointsComment(); nbInternalTGComponent = 3; tgcomponent = new TGComponent[nbInternalTGComponent]; + + createGuards(); - TGCOneLineText tgc = new TGCOneLineText(x+textX1-50, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 1"); - tgcomponent[0] = tgc; - - tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 2"); - tgcomponent[1] = tgc; - - tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 3"); - tgcomponent[2] = tgc; +// TGCOneLineText tgc = new TGCOneLineText(x+textX1-50, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 1"); +// tgcomponent[0] = tgc; +// +// tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 2"); +// tgcomponent[1] = tgc; +// +// tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 3"); +// tgcomponent[2] = tgc; moveable = true; editable = false; @@ -108,9 +119,53 @@ public class TADChoice extends TGCWithInternalComponent { myImageIcon = IconManager.imgic208; } + + protected void createConnectingPoints() { + nbConnectingPoint = 4; + connectingPoint = new TGConnectingPoint[nbConnectingPoint]; + connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); + connectingPoint[1] = new TGConnectingPointAD(this, -lineOutLength, 0, false, true, 0.0, 0.5); + connectingPoint[2] = new TGConnectingPointAD(this, lineOutLength, 0, false, true, 1.0, 0.5); + connectingPoint[3] = new TGConnectingPointAD(this, 0, lineOutLength, false, true, 0.5, 1.0); + addTGConnectingPointsComment(); + } + protected void createGuards() { + TGCOneLineText tgc = new TGCOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, tdp); + tgc.setValue( EMPTY_GUARD_TEXT ); + tgc.setName("guard 1"); + tgcomponent[ 0 ] = tgc; + + tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, tdp); + tgc.setValue( EMPTY_GUARD_TEXT ); + tgc.setName("guard 2"); + tgcomponent[ 1 ] = tgc; + + tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, tdp); + tgc.setValue( EMPTY_GUARD_TEXT ); + tgc.setName("guard 3"); + tgcomponent[ 2 ] = tgc; + } + + @Override public void internalDrawing(Graphics g) { - g.drawLine(x+(width/2), y, x+width, y + height/2); + if (stateOfError > 0) { + Color c = g.getColor(); + switch(stateOfError) { + case ErrorHighlight.OK: + g.setColor(ColorManager.CHOICE); + break; + default: + g.setColor(ColorManager.UNKNOWN_BOX_ACTION); + } + // Making the polygon + int [] px1 = {x+(width/2), x+width+2, x + (width/2), x}; + int [] py1 = {y, y + height/2, y+height+2, y+height/2}; + g.fillPolygon(px1, py1, 4); + g.setColor(c); + } + + g.drawLine(x+(width/2), y, x+width, y + height/2); g.drawLine(x, y + height / 2, x+width/2, y + height); g.drawLine(x + width/2, y, x, y + height/2); g.drawLine(x + width, y + height/2, x + width/2, y + height); @@ -121,6 +176,7 @@ public class TADChoice extends TGCWithInternalComponent { g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength); } + @Override public TGComponent isOnOnlyMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -158,20 +214,72 @@ public class TADChoice extends TGCWithInternalComponent { tgcomponent[i].setValue(guard); } } - + + public List<String> getGuards() { + List<String> guards = new ArrayList<String>(); + for( int i = 0; i < nbInternalTGComponent; i++ ) { + guards.add( getGuard(i) ); + } + return guards; + } + + /** + * Issue #69 + * @param point + * @return + */ + public TGCOneLineText getGuardForConnectingPoint( final TGConnectingPoint point ) { + final int index = Arrays.asList( connectingPoint ).indexOf( point ); + + if ( index < 0 ) { + throw new IllegalArgumentException( "No guard found for connecting point " + point ); + } + + return (TGCOneLineText) tgcomponent[ index - 1 ]; + } + + @Override public int getType() { return TGComponentManager.TAD_CHOICE; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_AD_DIAGRAM; } + + public void setStateAction(int _stateAction) { + stateOfError = _stateAction; + } -} - - - - - - + /* Issue #69 + * (non-Javadoc) + * @see ui.AbstractCDElement#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + return false; + } + + /** + * Issue #69 + * @return + */ + @Override + public boolean canLabelBeDisabled( final TGCOneLineText label ) { + return label.getValue() != null && !label.getValue().isEmpty() && !EMPTY_GUARD_TEXT.equals( label.getValue() ); + } + + /** + * Issue #69 + * @param guard + * @return + */ + public String getEffectiveCondition( final TGCOneLineText guard ) { + if ( guard.isEnabled() ) { + return guard.getValue(); + } + return TRUE_GUARD_TEXT; + } +} diff --git a/src/main/java/ui/ad/TADComponentWithSubcomponents.java b/src/main/java/ui/ad/TADComponentWithSubcomponents.java new file mode 100644 index 0000000000000000000000000000000000000000..7faa2ecd2c04d57e79a02bc5b2ecb53a85072b2f --- /dev/null +++ b/src/main/java/ui/ad/TADComponentWithSubcomponents.java @@ -0,0 +1,30 @@ +package ui.ad; + +import ui.TDiagramPanel; +import ui.TGCScalableWithInternalComponent; +import ui.TGComponent; + +/** + * Issue #69 + * @author dblouin + * + */ +public abstract class TADComponentWithSubcomponents extends TGCScalableWithInternalComponent /*TGCWithInternalComponent*/ { + + public TADComponentWithSubcomponents(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, + boolean _pos, TGComponent _father, TDiagramPanel _tdp) { + super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); + } + + /** + * Issue #69 + * @return + */ + @Override + public boolean canBeDisabled() { + final CanBeDisabledADElementVisitor visitor = new CanBeDisabledADElementVisitor(); + acceptBackward( visitor ); + + return visitor.isCanBeDisabled(); + } +} diff --git a/src/main/java/ui/ad/TADComponentWithoutSubcomponents.java b/src/main/java/ui/ad/TADComponentWithoutSubcomponents.java new file mode 100644 index 0000000000000000000000000000000000000000..2317c348b68cf09cd9838446ae4956b3ad7342e5 --- /dev/null +++ b/src/main/java/ui/ad/TADComponentWithoutSubcomponents.java @@ -0,0 +1,30 @@ +package ui.ad; + +import ui.TDiagramPanel; +import ui.TGCWithoutInternalComponent; +import ui.TGComponent; + +/** + * Issue #69 + * @author dblouin + * + */ +public abstract class TADComponentWithoutSubcomponents extends TGCWithoutInternalComponent { + + public TADComponentWithoutSubcomponents(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, + boolean _pos, TGComponent _father, TDiagramPanel _tdp) { + super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); + } + + /** + * Issue #69 + * @return + */ + @Override + public boolean canBeDisabled() { + final CanBeDisabledADElementVisitor visitor = new CanBeDisabledADElementVisitor(); + acceptBackward( visitor ); + + return visitor.isCanBeDisabled(); + } +} diff --git a/src/main/java/ui/ad/TADConnector.java b/src/main/java/ui/ad/TADConnector.java new file mode 100644 index 0000000000000000000000000000000000000000..8fc2736a95b9069d0a24af1c9345c50026dcb171 --- /dev/null +++ b/src/main/java/ui/ad/TADConnector.java @@ -0,0 +1,74 @@ +package ui.ad; + +import java.awt.Point; +import java.util.Vector; + +import ui.ForwardComponentsEnabledVisitor; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGConnectingPoint; +import ui.TGConnector; + +/** + * Issue #69 + * @author dblouin + * + */ +public abstract class TADConnector extends TGConnector { + + public TADConnector( int _x, + int _y, + int _minX, + int _maxX, + int _minY, + int _maxY, + boolean _pos, + TGComponent _father, + TDiagramPanel _tdp, + TGConnectingPoint _p1, + TGConnectingPoint _p2, + Vector<Point> _listPoint ) { + super( _x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint ); + } + + /** + * Issue #69 + * @param _enabled + */ + @Override + public void setEnabled( final boolean _enabled ) { + if ( p2 != null ) { + p2.acceptForward( new EnablingADConnectorVisitor( _enabled ) ); + } + } + + /** + * Issue #69 + * @return + */ + @Override + public boolean canBeDisabled() { + if ( p2 != null && p2.getFather() instanceof TADStopState ) { + return false; + } + + final CanBeDisabledADElementVisitor visitor = new CanBeDisabledADElementVisitor(); + acceptBackward( visitor ); + + return visitor.isCanBeDisabled(); + } + + /** Issue #69 + * @return + */ + public boolean isEnabled( boolean checkBranch ) { + if ( checkBranch && p2 != null ) { + final ForwardComponentsEnabledVisitor visitor = new ForwardComponentsEnabledVisitor(); + p2.acceptForward( visitor ); + + return visitor.isEnabled(); + } + + return super.isEnabled(); + } +} diff --git a/src/main/java/ui/ad/TADDeterministicDelay.java b/src/main/java/ui/ad/TADDeterministicDelay.java index f37a5a603d1227eeba7b253243a9d3fece2ad0c2..a326f06ad75e2c35d8b44823f2071bc6642bafce 100755 --- a/src/main/java/ui/ad/TADDeterministicDelay.java +++ b/src/main/java/ui/ad/TADDeterministicDelay.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -55,9 +52,11 @@ import java.awt.geom.Line2D; * @version 1.0 21/12/2003 * @author Ludovic APVRILLE */ -public class TADDeterministicDelay extends TGCWithInternalComponent { - private int lineLength = 5; - private int textX, textY; +public class TADDeterministicDelay extends TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent */{ + + private int lineLength = 5; + + private int textX, textY; public TADDeterministicDelay(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -90,12 +89,14 @@ public class TADDeterministicDelay extends TGCWithInternalComponent { myImageIcon = IconManager.imgic214; } + @Override public void internalDrawing(Graphics g) { g.drawRect(x, y, width, height); g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -116,13 +117,13 @@ public class TADDeterministicDelay extends TGCWithInternalComponent { tgcomponent[0].setValue(value); } + @Override public int getType() { return TGComponentManager.TAD_DETERMINISTIC_DELAY; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_AD_DIAGRAM; } - } - diff --git a/src/main/java/ui/ad/TADForLoop.java b/src/main/java/ui/ad/TADForLoop.java new file mode 100644 index 0000000000000000000000000000000000000000..ebb66cde885f9c71fc3441933d1b03c95bd23846 --- /dev/null +++ b/src/main/java/ui/ad/TADForLoop.java @@ -0,0 +1,138 @@ +package ui.ad; + +import java.awt.geom.Line2D; + +import myutil.GraphicLib; +import ui.BasicErrorHighlight; +import ui.EmbeddedComment; +import ui.ICDElementVisitor; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGConnectingPoint; +import ui.util.IconManager; + +/** + * Issue #69 + * @author dblouin + * + */ +public abstract class TADForLoop extends TADComponentWithoutSubcomponents implements EmbeddedComment, BasicErrorHighlight { + + protected final static String IN_LOOP = "inside loop"; + protected final static String EXIT_LOOP = "exit loop"; + + protected static final int INDEX_ENTER_LOOP = 0; + protected static final int INDEX_INSIDE_LOOP = 1; + protected static final int INDEX_EXIT_LOOP = 2; + + protected int lineLength = 5; + protected int textX = 5; + protected int textY = 15; + protected int arc = 5; + + protected int stateOfError = 0; + + public TADForLoop( int _x, + int _y, + int _minX, + int _maxX, + int _minY, + int _maxY, + boolean _pos, + TGComponent _father, + TDiagramPanel _tdp ) { + super( _x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp ); + + width = 30; + height = 20; + minWidth = 30; + + moveable = true; + editable = true; + removable = true; + + myImageIcon = IconManager.imgic912; + } + + @Override + public TGComponent isOnMe(int _x, int _y) { + if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { + return this; + } + + if ((int)(Line2D.ptSegDistSq(x+(width/2), y-lineLength, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) { + return this; + } + + if ((int)(Line2D.ptSegDistSq(x+width, y+height/2, x+width +lineLength, y+height/2, _x, _y)) < distanceSelected) { + return this; + } + + return null; + } + + @Override + public void setStateAction(int _stateAction) { + stateOfError = _stateAction; + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.TGComponent#acceptForward(ui.ICDElementVisitor) + */ + @Override + public void acceptForward( ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + final TGConnectingPoint insideLoopPoint = getInsideLoopConnectingPoint(); + + if ( insideLoopPoint != null ) { + insideLoopPoint.acceptForward( visitor ); + } + + final TGConnectingPoint exitPoint = getExitLoopConnectingPoint(); + + if ( exitPoint != null ) { + exitPoint.acceptForward( visitor ); + } + } + } + + + /* Issue #69 + * (non-Javadoc) + * @see ui.TGComponent#acceptBackward(ui.ICDElementVisitor) + */ + @Override + public void acceptBackward( ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + final TGConnectingPoint enterLoopPoint = getEnterLoopConnectingPoint(); + + if ( enterLoopPoint != null ) { + enterLoopPoint.acceptBackward( visitor ); + } + } + } + + /** + * Issue #69 + * @param _enabled + */ + @Override + public void setEnabled( final boolean _enabled ) { + super.setEnabled( _enabled ); + + getInsideLoopConnectingPoint().acceptForward( new EnablingADBranchVisitor( _enabled ) ); + } + + public TGConnectingPoint getEnterLoopConnectingPoint() { + return connectingPoint[ INDEX_ENTER_LOOP ]; + } + + public TGConnectingPoint getInsideLoopConnectingPoint() { + return connectingPoint[ INDEX_INSIDE_LOOP ]; + } + + public TGConnectingPoint getExitLoopConnectingPoint() { + return connectingPoint[ INDEX_EXIT_LOOP ]; + } +} diff --git a/src/main/java/ui/ad/TADJunction.java b/src/main/java/ui/ad/TADJunction.java index 7990e48101933677625f4ab6520a92f27b3922a4..7fed85cbf3663c602acf04ecee2adcefeb90d9c7 100755 --- a/src/main/java/ui/ad/TADJunction.java +++ b/src/main/java/ui/ad/TADJunction.java @@ -35,9 +35,6 @@ * The fact that you are presently reading this means that you have had * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; @@ -47,7 +44,6 @@ import ui.util.IconManager; import java.awt.*; import java.awt.geom.Line2D; - /** * Class TADJunction * Junction between several activities, without any synchronization. To be used in activity diagrams @@ -55,7 +51,7 @@ import java.awt.geom.Line2D; * @version 1.0 28/12/2003 * @author Ludovic APVRILLE */ -public class TADJunction extends TGCWithoutInternalComponent { +public class TADJunction extends TADComponentWithoutSubcomponents /* Issue #69 TGCWithoutInternalComponent*/ { protected int range = 5; @@ -108,6 +104,7 @@ public class TADJunction extends TGCWithoutInternalComponent { myImageIcon = IconManager.imgic212; } + @Override public void internalDrawing(Graphics g) { //g.drawLine(x +width/2, y, x+width/2, y + height); //g.drawLine(x, y + (height/2), x+width, y + (height/2)); @@ -123,6 +120,7 @@ public class TADJunction extends TGCWithoutInternalComponent { g.drawLine(x+width/2+range, y + height / 2, x+width/2, y+height/2+range); } + @Override public TGComponent isOnMe(int _x, int _y) { // vertical line if ((int)(Line2D.ptSegDistSq(x +width/2, y, x+width/2, y + height, _x, _y)) < distanceSelected) { @@ -135,19 +133,13 @@ public class TADJunction extends TGCWithoutInternalComponent { return null; } + @Override public int getType() { return TGComponentManager.TAD_JUNCTION; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } - } - - - - - - - diff --git a/src/main/java/ui/ad/TADNonDeterministicDelay.java b/src/main/java/ui/ad/TADNonDeterministicDelay.java index 89b4f98895ff3037c570c3df8e2abaee0d59adaf..6eff783dcd5f1e0ac2c42ccba137630c485eea92 100755 --- a/src/main/java/ui/ad/TADNonDeterministicDelay.java +++ b/src/main/java/ui/ad/TADNonDeterministicDelay.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -55,7 +52,7 @@ import java.awt.geom.Line2D; * @version 1.0 10/12/2003 * @author Ludovic APVRILLE */ -public class TADNonDeterministicDelay extends TGCWithInternalComponent{ +public class TADNonDeterministicDelay extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ { private int lineLength = 5; private int textX = 5; private int textY = 5; @@ -91,6 +88,7 @@ public class TADNonDeterministicDelay extends TGCWithInternalComponent{ myImageIcon = IconManager.imgic216; } + @Override public void internalDrawing(Graphics g) { int y1 = y; @@ -108,6 +106,7 @@ public class TADNonDeterministicDelay extends TGCWithInternalComponent{ } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -128,18 +127,13 @@ public class TADNonDeterministicDelay extends TGCWithInternalComponent{ tgcomponent[0].setValue(value); } + @Override public int getType() { return TGComponentManager.TAD_NON_DETERMINISTIC_DELAY; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } } - - - - - - - diff --git a/src/main/java/ui/ad/TADOneLineText.java b/src/main/java/ui/ad/TADOneLineText.java new file mode 100644 index 0000000000000000000000000000000000000000..ffdc4a483f4caa2e5110ce13cf0ffc1e32d93189 --- /dev/null +++ b/src/main/java/ui/ad/TADOneLineText.java @@ -0,0 +1,25 @@ +package ui.ad; + +import ui.TDiagramPanel; +import ui.TGCOneLineText; +import ui.TGComponent; + +public abstract class TADOneLineText extends TGCOneLineText { + + public TADOneLineText(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, + TDiagramPanel _tdp) { + super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); + } + + /** + * Issue #69 + * @return + */ + @Override + public boolean canBeDisabled() { + final CanBeDisabledADElementVisitor visitor = new CanBeDisabledADElementVisitor(); + acceptBackward( visitor ); + + return visitor.isCanBeDisabled(); + } +} diff --git a/src/main/java/ui/ad/TADParallel.java b/src/main/java/ui/ad/TADParallel.java index 7ab9862e2433660797069d6a615e5607eff80127..530ebc3c7adc5e5fcacff722dd1496d79d074a09 100755 --- a/src/main/java/ui/ad/TADParallel.java +++ b/src/main/java/ui/ad/TADParallel.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -55,9 +52,11 @@ import java.awt.*; * @version 1.0 12/12/2003 * @author Ludovic APVRILLE */ -public class TADParallel extends TGCWithInternalComponent{ - private int lineLength = 0; - private int textX, textY; +public class TADParallel extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ { + + private int lineLength = 0; + + private int textX, textY; public TADParallel(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -100,11 +99,13 @@ public class TADParallel extends TGCWithInternalComponent{ myImageIcon = IconManager.imgic206; } + @Override public void internalDrawing(Graphics g) { g.drawRect(x, y, width, height); g.fillRect(x, y, width, height); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -120,18 +121,13 @@ public class TADParallel extends TGCWithInternalComponent{ tgcomponent[0].setValue(val); } + @Override public int getType() { return TGComponentManager.TAD_PARALLEL; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } } - - - - - - - diff --git a/src/main/java/ui/ad/TADPreemption.java b/src/main/java/ui/ad/TADPreemption.java index c38308f22597af184fa3489d375b6fb053ff1f94..8f601cb48463b80b7fb7cd1fd0672547840b412b 100755 --- a/src/main/java/ui/ad/TADPreemption.java +++ b/src/main/java/ui/ad/TADPreemption.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -55,9 +52,11 @@ import java.awt.*; * @version 1.0 12/12/2003 * @author Ludovic APVRILLE */ -public class TADPreemption extends TGCWithInternalComponent{ - private int lineLength = 0; - private int textX, textY; +public class TADPreemption extends TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent*/ { + + private int lineLength = 0; + + private int textX, textY; public TADPreemption(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -98,11 +97,13 @@ public class TADPreemption extends TGCWithInternalComponent{ myImageIcon = IconManager.imgic206; } + @Override public void internalDrawing(Graphics g) { g.drawRect(x, y, width, height); g.fillRect(x, y, width, height); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -110,11 +111,13 @@ public class TADPreemption extends TGCWithInternalComponent{ return null; } + @Override public int getType() { return TGComponentManager.TAD_PREEMPTION; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } -} \ No newline at end of file +} diff --git a/src/main/java/ui/ad/TADSequence.java b/src/main/java/ui/ad/TADSequence.java index 99eabaf2fd2c0ba804a7863f2b2ad15b7ddbf0ae..158a67935d557e89291ab82984b06b67532a8583 100755 --- a/src/main/java/ui/ad/TADSequence.java +++ b/src/main/java/ui/ad/TADSequence.java @@ -36,17 +36,16 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; +import java.awt.Graphics; +import java.util.Arrays; +import java.util.List; + import myutil.GraphicLib; import ui.*; import ui.util.IconManager; -import java.awt.*; - /** * Class TADSequence * Sequence operator. Activities are executed in sequence from left to right @@ -55,9 +54,11 @@ import java.awt.*; * @version 1.0 12/12/2003 * @author Ludovic APVRILLE */ -public class TADSequence extends TGCWithInternalComponent{ - private int lineLength = 0; - private int textX, textY; +public class TADSequence extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ { + + protected int lineLength = 0; + + private int textX, textY; public TADSequence(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -69,15 +70,16 @@ public class TADSequence extends TGCWithInternalComponent{ textX = width - 6; textY = height + 2; - nbConnectingPoint = 6; - connectingPoint = new TGConnectingPoint[6]; - connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.167, 1.0); - connectingPoint[2] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.333, 1.0); - connectingPoint[3] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0); - connectingPoint[4] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.667, 1.0); - connectingPoint[5] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.833, 1.0); - addTGConnectingPointsCommentCorner(); + createConnectingPoints(); +// nbConnectingPoint = 6; +// connectingPoint = new TGConnectingPoint[6]; +// connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); +// connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.167, 1.0); +// connectingPoint[2] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.333, 1.0); +// connectingPoint[3] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0); +// connectingPoint[4] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.667, 1.0); +// connectingPoint[5] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.833, 1.0); +// addTGConnectingPointsCommentCorner(); nbInternalTGComponent = 1; tgcomponent = new TGComponent[nbInternalTGComponent]; @@ -98,11 +100,25 @@ public class TADSequence extends TGCWithInternalComponent{ myImageIcon = IconManager.imgic206; } + protected void createConnectingPoints() { + nbConnectingPoint = 6; + connectingPoint = new TGConnectingPoint[6]; + connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); + connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.167, 1.0); + connectingPoint[2] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.333, 1.0); + connectingPoint[3] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0); + connectingPoint[4] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.667, 1.0); + connectingPoint[5] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.833, 1.0); + addTGConnectingPointsCommentCorner(); + } + + @Override public void internalDrawing(Graphics g) { g.drawRect(x, y, width, height); g.fillRect(x, y, width, height); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -110,11 +126,36 @@ public class TADSequence extends TGCWithInternalComponent{ return null; } + @Override public int getType() { return TGComponentManager.TAD_SEQUENCE; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; + } + + public TGConnectingPoint getEnterConnectingPoint() { + return connectingPoint[ 0 ]; + } + + public List<TGConnectingPoint> getExitConnectingPoints() { + return Arrays.asList( Arrays.copyOfRange( connectingPoint, 1, connectingPoint.length ) ); + } + + /** + * Issue #69 + * @param _enabled + */ + @Override + public void setEnabled( final boolean _enabled ) { + super.setEnabled( _enabled ); + + for ( final TGConnectingPoint point : connectingPoint ) { + if ( point != getEnterConnectingPoint() ) { + point.acceptForward( new EnablingADConnectorVisitor( _enabled ) ); + } + } } } diff --git a/src/main/java/ui/ad/TADStartState.java b/src/main/java/ui/ad/TADStartState.java index 0bf11c61a634b6c82cfefb012a4f6da185d47105..b4d21f778eae2d336594cca6ffb956005f9f68dc 100755 --- a/src/main/java/ui/ad/TADStartState.java +++ b/src/main/java/ui/ad/TADStartState.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -55,8 +52,9 @@ import java.awt.geom.Line2D; * @version 1.0 12/12/2003 * @author Ludovic APVRILLE */ -public class TADStartState extends TGCWithoutInternalComponent{ - private int lineLength = 5; +public class TADStartState extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ { + + protected int lineLength = 5; public TADStartState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -64,9 +62,10 @@ public class TADStartState extends TGCWithoutInternalComponent{ width = 15; height = 15; - nbConnectingPoint = 1; - connectingPoint = new TGConnectingPoint[1]; - connectingPoint[0] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0); + createConnectingPoints(); +// nbConnectingPoint = 1; +// connectingPoint = new TGConnectingPoint[1]; +// connectingPoint[0] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0); nbInternalTGComponent = 0; @@ -79,11 +78,19 @@ public class TADStartState extends TGCWithoutInternalComponent{ myImageIcon = IconManager.imgic222; } + protected void createConnectingPoints() { + nbConnectingPoint = 1; + connectingPoint = new TGConnectingPoint[1]; + connectingPoint[0] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0); + } + + @Override public void internalDrawing(Graphics g) { g.fillOval(x, y, width, height); g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -93,19 +100,25 @@ public class TADStartState extends TGCWithoutInternalComponent{ return this; } - - return null; } + @Override public int getType() { return TGComponentManager.TAD_START_STATE; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.AbstractCDElement#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + return false; } - } - - diff --git a/src/main/java/ui/ad/TADStopState.java b/src/main/java/ui/ad/TADStopState.java index a92f665a912de31efc0176a0e5ab934453860bbd..04dc7556e0493784bdcc0b6d14dcaa5137e9c0e0 100755 --- a/src/main/java/ui/ad/TADStopState.java +++ b/src/main/java/ui/ad/TADStopState.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -54,9 +51,11 @@ import java.awt.*; * @version 1.0 12/12/2003 * @author Ludovic APVRILLE */ -public class TADStopState extends TGCWithoutInternalComponent{ +public class TADStopState extends TADComponentWithoutSubcomponents /* Issue #69 TGCWithoutInternalComponent*/ { + private int internalCircleSize = 16; - private int lineLength = 5; + + protected int lineLength = 5; public TADStopState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -64,9 +63,10 @@ public class TADStopState extends TGCWithoutInternalComponent{ width = 20; height = 20; - nbConnectingPoint = 1; - connectingPoint = new TGConnectingPoint[1]; - connectingPoint[0] = new TGConnectingPointAD(this, 0, - lineLength, true, false, 0.5, 0.0); + createConnectingPoints(); +// nbConnectingPoint = 1; +// connectingPoint = new TGConnectingPoint[1]; +// connectingPoint[0] = new TGConnectingPointAD(this, 0, - lineLength, true, false, 0.5, 0.0); nbInternalTGComponent = 0; @@ -79,14 +79,24 @@ public class TADStopState extends TGCWithoutInternalComponent{ myImageIcon = IconManager.imgic210; } + protected void createConnectingPoints() { + nbConnectingPoint = 1; + connectingPoint = new TGConnectingPoint[1]; + connectingPoint[0] = new TGConnectingPointAD(this, 0, - lineLength, true, false, 0.5, 0.0); + } + + @Override public void internalDrawing(Graphics g) { - ColorManager.setColor(g, state, 0); + + // Issue #69 + ColorManager.setColor( g, state, 0, isEnabled() ); +// ColorManager.setColor(g, state, 0); g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize); g.drawOval(x, y, width, height); g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); } - + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -94,19 +104,22 @@ public class TADStopState extends TGCWithoutInternalComponent{ return null; } + @Override public int getType() { return TGComponentManager.TAD_STOP_STATE; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } - -} - - - - - - + /* Issue #69 + * (non-Javadoc) + * @see ui.AbstractCDElement#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + return false; + } +} diff --git a/src/main/java/ui/ad/TADTimeCapture.java b/src/main/java/ui/ad/TADTimeCapture.java index 128a81da1ae89291aa99b343b0a6e92221f49e6c..5197e735757c8534ad221167e38044a352f546b3 100755 --- a/src/main/java/ui/ad/TADTimeCapture.java +++ b/src/main/java/ui/ad/TADTimeCapture.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -55,14 +52,13 @@ import java.awt.geom.Line2D; * @version 1.0 23/07/2009 * @author Ludovic APVRILLE */ -public class TADTimeCapture extends TGCOneLineText implements ActionStateErrorHighlight { +public class TADTimeCapture extends TADOneLineText/* Issue #69 TGCOneLineText*/ implements ActionStateErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; protected int arc = 5; protected int stateAction = 0; // 0: unchecked 1: attribute; 3:unknown - public TADTimeCapture(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -87,6 +83,7 @@ public class TADTimeCapture extends TGCOneLineText implements ActionStateErrorHi myImageIcon = IconManager.imgic204; } + @Override public void internalDrawing(Graphics g) { String myVal = "time -> " + value; int w = g.getFontMetrics().stringWidth(myVal); @@ -110,15 +107,16 @@ public class TADTimeCapture extends TGCOneLineText implements ActionStateErrorHi g.fillRoundRect(x, y, width, height, arc, arc); g.setColor(c); } - g.drawRoundRect(x, y, width, height, arc, arc); + + g.drawRoundRect(x, y, width, height, arc, arc); g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); g.drawString(myVal, x + (width - w) / 2 , y + textY); - } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -127,22 +125,22 @@ public class TADTimeCapture extends TGCOneLineText implements ActionStateErrorHi if ((int)(Line2D.ptSegDistSq(x +width/2, y- lineLength, x+width/2, y + lineLength + height, _x, _y)) < distanceSelected) { return this; } - return null; } - + @Override public int getType() { return TGComponentManager.TAD_TIME_CAPTURE; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } + @Override public void setStateAction(int _stateAction) { stateAction = _stateAction; } - } diff --git a/src/main/java/ui/ad/TADTimeInterval.java b/src/main/java/ui/ad/TADTimeInterval.java index 2b87cea962598cac2f171a1b8cbd284c8f1c75cc..fea95ac151e9b9e6f64548a7dcd8e1c7fdd2da1c 100755 --- a/src/main/java/ui/ad/TADTimeInterval.java +++ b/src/main/java/ui/ad/TADTimeInterval.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -55,7 +52,7 @@ import java.awt.geom.Line2D; * @version 1.0 12/12/2003 * @author Ludovic APVRILLE */ -public class TADTimeInterval extends TGCWithInternalComponent{ +public class TADTimeInterval extends TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent */{ private int lineLength = 5; private int textX, textY; private int incrementY = 3; @@ -70,7 +67,7 @@ public class TADTimeInterval extends TGCWithInternalComponent{ textY = height/2 + 5; nbConnectingPoint = 2; - connectingPoint = new TGConnectingPoint[2]; + connectingPoint = new TGConnectingPoint[ nbConnectingPoint ]; connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); connectingPoint[1] = new TGConnectingPointAD(this, 0, + lineLength, false, true, 0.5, 1.0); addTGConnectingPointsComment(); @@ -92,6 +89,7 @@ public class TADTimeInterval extends TGCWithInternalComponent{ myImageIcon = IconManager.imgic224; } + @Override public void internalDrawing(Graphics g) { g.drawRect(x, y, width, height); g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); @@ -109,6 +107,7 @@ public class TADTimeInterval extends TGCWithInternalComponent{ } } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -137,19 +136,13 @@ public class TADTimeInterval extends TGCWithInternalComponent{ ((TGCTimeInterval)(tgcomponent[0])).setMaxDelay(val); } + @Override public int getType() { return TGComponentManager.TAD_DELAY_NON_DETERMINISTIC_DELAY; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } - } - - - - - - - diff --git a/src/main/java/ui/ad/TADTimeLimitedOffer.java b/src/main/java/ui/ad/TADTimeLimitedOffer.java index 02785ec46b29070c66d5eaef01030dc62961eeb0..1298580e5d31a64031060697a3fc2edab6e294e7 100755 --- a/src/main/java/ui/ad/TADTimeLimitedOffer.java +++ b/src/main/java/ui/ad/TADTimeLimitedOffer.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -57,7 +54,7 @@ import java.awt.geom.Line2D; * @version 1.0 12/12/2003 * @author Ludovic APVRILLE */ -public class TADTimeLimitedOffer extends TGCWithInternalComponent implements ActionStateErrorHighlight { +public class TADTimeLimitedOffer extends TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent*/ implements ActionStateErrorHighlight { protected int lineLength = 25; protected int lineDistance = 10; protected int textX = 5; @@ -81,7 +78,7 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act connectingPoint[0] = new TGConnectingPointAD(this, 0, -lineLength, true, false, 0.5, 0.0); connectingPoint[1] = new TGConnectingPointAD(this, 0, lineLength, false, true, 0.5, 1.0); connectingPoint[2] = new TGConnectingPointAD(this, distanceTwoLines, lineLength, false, true, 0.5, 1.0); - addTGConnectingPointsComment(); + addTGConnectingPointsComment(); nbInternalTGComponent = 1; tgcomponent = new TGComponent[nbInternalTGComponent]; @@ -101,6 +98,7 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act myImageIcon = IconManager.imgic218; } + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -142,6 +140,7 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -175,7 +174,7 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act connectingPoint[2].setCdX(width / 2 + distanceTwoLines); }*/ - public void updateInternalComponents(int diffWidth, int diffX) { + protected void updateInternalComponents(int diffWidth, int diffX) { int x1 = tgcomponent[0].getX(); int y1 = tgcomponent[0].getY(); tgcomponent[0].setCdRectangle(width + distanceStateLine + 2, width + distanceStateLine + 10, textY - 10, textY + 10); @@ -184,6 +183,7 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act // } + @Override public boolean editOndoubleClick(JFrame frame) { String oldValue = value; String text = getName() + ": "; @@ -209,23 +209,18 @@ public class TADTimeLimitedOffer extends TGCWithInternalComponent implements Act return tgcomponent[0].getValue(); } + @Override public int getType() { return TGComponentManager.TAD_TIME_LIMITED_OFFER; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } + @Override public void setStateAction(int _stateAction) { stateAction = _stateAction; } - } - - - - - - - diff --git a/src/main/java/ui/ad/TADTimeLimitedOfferWithLatency.java b/src/main/java/ui/ad/TADTimeLimitedOfferWithLatency.java index bc0cb533f7471cc138060256c27605118fd97343..c775d61df261687c5bec8f90e911311b190bcb2b 100755 --- a/src/main/java/ui/ad/TADTimeLimitedOfferWithLatency.java +++ b/src/main/java/ui/ad/TADTimeLimitedOfferWithLatency.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import myutil.GraphicLib; @@ -57,7 +54,7 @@ import java.awt.geom.Line2D; * @version 1.0 12/12/2003 * @author Ludovic APVRILLE */ -public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent implements ActionStateErrorHighlight { +public class TADTimeLimitedOfferWithLatency extends TADComponentWithSubcomponents/* Issue #69 TGCWithInternalComponent*/ implements ActionStateErrorHighlight { protected int lineLength = 25; protected int lineLengthLatency = 5; protected int lineDistance = 10; @@ -116,9 +113,9 @@ public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent imp minWidth = 30; myImageIcon = IconManager.imgic220; - } + @Override public void internalDrawing(Graphics g) { // int w = g.getFontMetrics().stringWidth(value); @@ -170,6 +167,7 @@ public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent imp } } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { // state if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { @@ -210,7 +208,7 @@ public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent imp connectingPoint[2].setCdX(width / 2 + distanceTwoLines); }*/ - public void updateInternalComponents(int diffWidth, int diffX) { + protected void updateInternalComponents(int diffWidth, int diffX) { int x1 = tgcomponent[0].getX(); int y1 = tgcomponent[0].getY(); @@ -223,6 +221,7 @@ public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent imp tgcomponent[1].setCdRectangle(posx, posx+10, posy - 10, posy + 10); } + @Override public boolean editOndoubleClick(JFrame frame) { String oldValue = value; String text = getName() + ": "; @@ -264,16 +263,18 @@ public class TADTimeLimitedOfferWithLatency extends TGCWithInternalComponent imp tgcomponent[0].setValue(delay); } + @Override public int getType() { return TGComponentManager.TAD_TIME_LIMITED_OFFER_WITH_LATENCY; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_AD_DIAGRAM; + return TGComponentManager.CONNECTOR_AD_DIAGRAM; } + @Override public void setStateAction(int _stateAction) { stateAction = _stateAction; } - -} + } diff --git a/src/main/java/ui/ad/TActivityDiagramToolBar.java b/src/main/java/ui/ad/TActivityDiagramToolBar.java index 5f84487b9c81deef28fc33c417b96ba421ab7703..02d83a32ba40d2454e58008d3b61263b3b47672a 100755 --- a/src/main/java/ui/ad/TActivityDiagramToolBar.java +++ b/src/main/java/ui/ad/TActivityDiagramToolBar.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; import ui.MainGUI; @@ -47,9 +44,6 @@ import ui.TToolBar; import javax.swing.*; -//import java.awt.*; -//import java.awt.event.*; - /** * Class TActivityDiagramToolBar * Toolbar associated with activity diagrams @@ -59,7 +53,6 @@ import javax.swing.*; */ public class TActivityDiagramToolBar extends TToolBar { - public TActivityDiagramToolBar(MainGUI _mgui) { super(_mgui); } @@ -185,8 +178,3 @@ public class TActivityDiagramToolBar extends TToolBar { button.addMouseListener(mgui.mouseHandler); } } // Class - - - - - diff --git a/src/main/java/ui/ad/TGConnectingPointAD.java b/src/main/java/ui/ad/TGConnectingPointAD.java index bffd4f96631badb05b301211e4fc9509e19c3da1..df8f136712d9297ab99e3631732a41eb7cc37cab 100755 --- a/src/main/java/ui/ad/TGConnectingPointAD.java +++ b/src/main/java/ui/ad/TGConnectingPointAD.java @@ -35,9 +35,6 @@ * The fact that you are presently reading this means that you have had * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ad; @@ -52,21 +49,14 @@ import ui.TGConnectingPointWidthHeight; * @version 1.0 12/12/2003 * @author Ludovic APVRILLE */ -public class TGConnectingPointAD extends TGConnectingPointWidthHeight{ +public class TGConnectingPointAD extends TGConnectingPointWidthHeight{ public TGConnectingPointAD(CDElement _container, int _x, int _y, boolean _in, boolean _out, double _w, double _h) { super(_container, _x, _y, _in, _out, _w, _h); } + @Override public boolean isCompatibleWith(int type) { return type == TGComponentManager.CONNECTOR_AD_DIAGRAM; } - } - - - - - - - diff --git a/src/main/java/ui/atd/ATDAttack.java b/src/main/java/ui/atd/ATDAttack.java index e81ba2822b66199a8dd60965392b4febcdf1cb4e..ab9cc1a828da05e77f7a4ab4073046a9200fe309 100644 --- a/src/main/java/ui/atd/ATDAttack.java +++ b/src/main/java/ui/atd/ATDAttack.java @@ -59,7 +59,7 @@ import java.awt.*; * @author Ludovic APVRILLE * @version 1.0 09/12/2009 */ -public class ATDAttack extends TGCScalableWithInternalComponent implements SwallowedTGComponent, WithAttributes, CheckableAccessibility, CanBeDisabled { +public class ATDAttack extends TGCScalableWithInternalComponent implements SwallowedTGComponent, WithAttributes, CheckableAccessibility/*, CanBeDisabled*/ { private int textY1 = 3; // private int textY2 = 3; @@ -127,6 +127,7 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall myImageIcon = IconManager.imgic702; } + @Override public void internalDrawing(Graphics g) { String ster; if (isRootAttack) { @@ -196,14 +197,20 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall // Core of the attack Color c = g.getColor(); g.draw3DRect(x, y, width, height, true); + if (isEnabled()) { if (isRootAttack) { g.setColor(ColorManager.ATD_ROOT_ATTACK); } else { g.setColor(ColorManager.ATD_ATTACK); } - } else { - g.setColor(ColorManager.ATD_ATTACK_DISABLED); + } + else { + // Issue #69: Disabled color now managed in TGComponent / ColorManager + // For filled shapes ensure background color is white so that text is + // readable + g.setColor( ColorManager.DISABLED_FILLING ); +// g.setColor(ColorManager.ATD_ATTACK_DISABLED); } g.fill3DRect(x + 1, y + 1, width - 1, height - 1, true); @@ -254,13 +261,14 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall } } - if (!isEnabled()) { - String val = "disabled"; - w = g.getFontMetrics().stringWidth(val); - //int h = currentFontSize + (int)(textY1 * tdp.getZoom()); - g.setFont(f.deriveFont(Font.ITALIC)); - g.drawString(val, x + (width - w - 5), y + height - 2); - } + // Issue #69: Use the same disabling UI as other components +// if (!isEnabled()) { +// String val = "disabled"; +// w = g.getFontMetrics().stringWidth(val); +// //int h = currentFontSize + (int)(textY1 * tdp.getZoom()); +// g.setFont(f.deriveFont(Font.ITALIC)); +// g.drawString(val, x + (width - w - 5), y + height - 2); +// } } else { @@ -271,7 +279,7 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall } - public void setValue(String val, Graphics g) { + private void setValue(String val, Graphics g) { oldValue = value; String ster; if (isRootAttack) { @@ -299,10 +307,9 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall g.setFont(f0); - - // } + @Override public void resizeWithFather() { if ((father != null) && (father instanceof ATDBlock)) { // @@ -312,7 +319,7 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall } } - + @Override public boolean editOndoubleClick(JFrame frame) { String tmp; boolean error = false; @@ -356,6 +363,7 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall return !error; } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { @@ -364,10 +372,12 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall return null; } + @Override public int getType() { return TGComponentManager.ATD_ATTACK; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<info description=\"" + description); @@ -379,9 +389,7 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException { - // try { - NodeList nli; Node n1, n2; Element elt; @@ -420,7 +428,6 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall } } - public String getDescription() { return description; } @@ -439,7 +446,6 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall return s; } - public boolean isRootAttack() { return isRootAttack; } @@ -448,8 +454,14 @@ public class ATDAttack extends TGCScalableWithInternalComponent implements Swall setFather(null); TDiagramPanel tdp = getTDiagramPanel(); setCdRectangle(tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY()); - } - - + + /** + * Issue #69 + * @return + */ + @Override + public boolean canBeDisabled() { + return true; + } } diff --git a/src/main/java/ui/atd/ATDAttackConnector.java b/src/main/java/ui/atd/ATDAttackConnector.java index 7590b0414bd785dff05f6dd827d8d0d121630fc9..300ce4ea0e2b3f4b20046ae6fca522d34ff084f6 100644 --- a/src/main/java/ui/atd/ATDAttackConnector.java +++ b/src/main/java/ui/atd/ATDAttackConnector.java @@ -36,12 +36,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.atd; - import myutil.Conversion; import myutil.GraphicLib; import ui.*; @@ -66,7 +62,6 @@ public class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints protected double oldScaleFactor; protected int fontSize = 12; - public ATDAttackConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) { super(_x, _y, _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint); myImageIcon = IconManager.imgic202; @@ -75,6 +70,7 @@ public class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints oldScaleFactor = tdp.getZoom(); } + @Override protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ /*if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) { g.drawLine(x1, y1, x2, y2); @@ -137,19 +133,19 @@ public class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints g.fillRect(p1.getX()-(cz/2), p1.getY()-(cz/2), cz, cz);*/ Point p = new Point(x2, y2); - if (p == null) { +// if (p == null) { +// // +// } else { + if (Point2D.distance(x1, y1, p.x, p.y) < GraphicLib.longueur * 1.5) { // - } else { - if (Point2D.distance(x1, y1, p.x, p.y) < GraphicLib.longueur * 1.5) { + if ((p.x != x1) || (p.y != y1)) { + g.drawLine(x1, y1, p.x, p.y); // - if ((p.x != x1) || (p.y != y1)) { - g.drawLine(x1, y1, p.x, p.y); - // - } - } else { - GraphicLib.arrowWithLine(g, 1, 0, 10, x1, y1, p.x, p.y, true); } + } else { + GraphicLib.arrowWithLine(g, 1, 0, 10, x1, y1, p.x, p.y, true); } + // } if (value.length() > 0) { Font f = g.getFont(); @@ -160,9 +156,9 @@ public class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints g.drawString(value, x2+(cz/2)+1, y2); g.setFont(f); } - } + @Override public boolean editOndoubleClick(JFrame frame) { String oldValue = value; String text = getName() + "Connector"; @@ -175,8 +171,6 @@ public class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints s = Conversion.removeFirstSpaces(s); } - // - if ((s != null) && (!s.equals(oldValue))) { setValue(s); return true; @@ -185,11 +179,12 @@ public class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints return false; } - + @Override public int getType() { return TGComponentManager.ATD_ATTACK_CONNECTOR; } + @Override public void rescale(double scaleFactor){ // int xx, yy; @@ -212,9 +207,4 @@ public class ATDAttackConnector extends TGConnectorWithCommentConnectionPoints oldScaleFactor = scaleFactor; } - - - - - } diff --git a/src/main/java/ui/atd/ATDCompositionConnector.java b/src/main/java/ui/atd/ATDCompositionConnector.java index daa43954f2e0809bb4d9a4ab1412dac4f5acd591..52ee0ddb63974d72bb3740fd9898932473107cec 100644 --- a/src/main/java/ui/atd/ATDCompositionConnector.java +++ b/src/main/java/ui/atd/ATDCompositionConnector.java @@ -36,12 +36,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.atd; - import ui.*; import ui.util.IconManager; @@ -63,8 +59,7 @@ public class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo protected int xp1, xp2, yp1, yp2; protected double oldScaleFactor; protected boolean rescaled; - - + public ATDCompositionConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) { super(_x, _y, _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint); myImageIcon = IconManager.imgic202; @@ -74,6 +69,7 @@ public class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo rescaled = true; } + @Override protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ /*if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) { g.drawLine(x1, y1, x2, y2); @@ -86,7 +82,7 @@ public class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo xp2 = x2; yp1 = y1; yp2 = y2; - Double alpha; + //Double alpha; int dd = (int)(d*tdp.getZoom()); int DD = (int)(D*tdp.getZoom()); @@ -169,6 +165,7 @@ public class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo rescaled = false; } + @Override public TGComponent extraIsOnOnlyMe(int x1, int y1) { if (p != null) { if (p.contains(x1, y1)) { @@ -179,6 +176,7 @@ public class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo return null; } + @Override public void rescale(double scaleFactor){ // int xx, yy; @@ -203,11 +201,8 @@ public class ATDCompositionConnector extends TGConnectorWithCommentConnectionPo rescaled = true; } - + @Override public int getType() { return TGComponentManager.ATD_COMPOSITION_CONNECTOR; } - - - } diff --git a/src/main/java/ui/avatarad/AvatarADAcceptEventAction.java b/src/main/java/ui/avatarad/AvatarADAcceptEventAction.java index 34987e1a285ba75f7b568c022cc95fb4d967a892..4c2cb5c0647315cbd26be50c6ed5c5b9ef672976 100755 --- a/src/main/java/ui/avatarad/AvatarADAcceptEventAction.java +++ b/src/main/java/ui/avatarad/AvatarADAcceptEventAction.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; import myutil.GraphicLib; @@ -56,7 +53,7 @@ import java.awt.geom.Line2D; * @version 1.0 02/09/2011 * @author Ludovic APVRILLE */ -public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements EmbeddedComment, BasicErrorHighlight { +public class AvatarADAcceptEventAction extends AvatarADBasicCanBeDisabledComponent/* Issue #69 AvatarADBasicComponent*/ implements EmbeddedComment, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 6; protected int textY = 15; @@ -69,8 +66,8 @@ public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements public AvatarADAcceptEventAction(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - initScaling(30, 20); - minWidth = (int)(30* tdp.getZoom()); + initScaling(30, 20); + minWidth = (int)(30* tdp.getZoom()); oldScaleFactor = tdp.getZoom(); nbConnectingPoint = 2; @@ -89,6 +86,7 @@ public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements myImageIcon = IconManager.imgic904; } + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -142,6 +140,7 @@ public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -154,15 +153,11 @@ public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements return null; } - - public String getEventName() { return value; } - - - + @Override public boolean editOndoubleClick(JFrame frame) { String oldValue = value; @@ -182,15 +177,13 @@ public class AvatarADAcceptEventAction extends AvatarADBasicComponent implements } - - + @Override public int getType() { return TGComponentManager.AAD_ACCEPT_EVENT_ACTION; } - + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - } diff --git a/src/main/java/ui/avatarad/AvatarADAction.java b/src/main/java/ui/avatarad/AvatarADAction.java index aef9de2da3743eafa3d042f7f52d78f2bb74e4b5..3d0e619b91a3c5eb614519cad869b7870684915a 100755 --- a/src/main/java/ui/avatarad/AvatarADAction.java +++ b/src/main/java/ui/avatarad/AvatarADAction.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; import myutil.GraphicLib; @@ -56,7 +53,7 @@ import java.awt.geom.Line2D; * @version 1.0 02/09/2011 * @author Ludovic APVRILLE */ -public class AvatarADAction extends AvatarADBasicComponent implements EmbeddedComment, BasicErrorHighlight { +public class AvatarADAction extends AvatarADBasicCanBeDisabledComponent/* Issue #69 AvatarADBasicComponent*/ implements EmbeddedComment, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -88,6 +85,7 @@ public class AvatarADAction extends AvatarADBasicComponent implements EmbeddedCo myImageIcon = IconManager.imgic204; } + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -118,6 +116,7 @@ public class AvatarADAction extends AvatarADBasicComponent implements EmbeddedCo } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -130,6 +129,7 @@ public class AvatarADAction extends AvatarADBasicComponent implements EmbeddedCo return null; } + @Override public boolean editOndoubleClick(JFrame frame) { oldValue = value; @@ -177,13 +177,13 @@ public class AvatarADAction extends AvatarADBasicComponent implements EmbeddedCo return ret; } + @Override public int getType() { return TGComponentManager.AAD_ACTION; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - - } diff --git a/src/main/java/ui/avatarad/AvatarADActivity.java b/src/main/java/ui/avatarad/AvatarADActivity.java index b8c4cc814ecd0c6d13f46a347e35e46414178e33..ad62604325f848346d9291e7a5dab126c6d741c5 100644 --- a/src/main/java/ui/avatarad/AvatarADActivity.java +++ b/src/main/java/ui/avatarad/AvatarADActivity.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; import myutil.GraphicLib; @@ -46,9 +43,11 @@ import ui.*; import ui.util.IconManager; import javax.swing.*; -import java.awt.*; -import java.util.LinkedList; +import java.awt.Font; +import java.awt.Graphics; +import java.util.LinkedList; +import java.util.List; /** * Class AvatarADActivity @@ -58,23 +57,22 @@ import java.util.LinkedList; * @author Ludovic APVRILLE */ public class AvatarADActivity extends TGCScalableWithInternalComponent implements SwallowTGComponent, SwallowedTGComponent { - private int textY1 = 3; +// private int textY1 = 3; - private int maxFontSize = 12; - private int minFontSize = 4; - private int currentFontSize = -1; + //private int maxFontSize = 12; + // private int minFontSize = 4; + //private int currentFontSize = -1; private boolean displayText = true; private int textX = 7; - public String oldValue; public AvatarADActivity(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - initScaling(100, 50); - minWidth = (int)(40* tdp.getZoom()); - minHeight = (int)(30* tdp.getZoom()); + initScaling(100, 50); + minWidth = (int)(40* tdp.getZoom()); + minHeight = (int)(30* tdp.getZoom()); oldScaleFactor = tdp.getZoom(); nbConnectingPoint = 32; @@ -137,7 +135,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement setValue(name); oldValue = value; - currentFontSize = maxFontSize; + //currentFontSize = maxFontSize; oldScaleFactor = tdp.getZoom(); myImageIcon = IconManager.imgic700; @@ -145,6 +143,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement //actionOnAdd(); } + @Override public void internalDrawing(Graphics g) { Font f = g.getFont(); Font fold = f; @@ -200,7 +199,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement g.drawRect(x, y, width, height); int decY = (int)(15 * tdp.getZoom()); int decX = (int)(20 * tdp.getZoom()); - int h = g.getFontMetrics().getHeight(); + int h = g.getFontMetrics().getHeight(); if ((height > decY) && (width > decX)) { g.drawLine(x, y+decY, x+decY, y+decY); g.drawLine(x+decY, y+decY, x+decX, y+decY-5); @@ -230,7 +229,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement g.setFont(fold); } - + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { @@ -244,8 +243,8 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement return value; } + @Override public boolean editOndoubleClick(JFrame frame, int _x, int _y) { - oldValue = value; //String text = getName() + ": "; @@ -272,11 +271,12 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement } - + @Override public int getType() { return TGComponentManager.AAD_ACTIVITY; } + @Override public boolean acceptSwallowedTGComponent(TGComponent tgc) { if (tgc instanceof AvatarADBasicComponent) { return true; @@ -290,6 +290,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement } + @Override public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) { boolean swallowed = false; @@ -340,6 +341,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement return true; } + @Override public void removeSwallowedTGComponent(TGComponent tgc) { removeMyInternalComponent(tgc, false); } @@ -379,7 +381,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement return false; } - + @Override public void hasBeenResized() { for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof AvatarADBasicComponent) { @@ -399,8 +401,8 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement } + @Override public void resizeWithFather() { - if ((father != null) && (father instanceof AvatarADActivity)) { // Too large to fit in the father? -> resize it! resizeToFatherSize(); @@ -410,8 +412,8 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement } } - public LinkedList<AvatarADActivity> getActivityList() { - LinkedList<AvatarADActivity> list = new LinkedList<AvatarADActivity>(); + public List<AvatarADActivity> getActivityList() { + List<AvatarADActivity> list = new LinkedList<AvatarADActivity>(); for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof AvatarADActivity) { list.add((AvatarADActivity)(tgcomponent[i])); @@ -420,8 +422,8 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement return list; } - public LinkedList<AvatarADActivity> getFullActivityList() { - LinkedList<AvatarADActivity> list = new LinkedList<AvatarADActivity>(); + public List<AvatarADActivity> getFullActivityList() { + List<AvatarADActivity> list = new LinkedList<AvatarADActivity>(); for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof AvatarADActivity) { list.add((AvatarADActivity)(tgcomponent[i])); @@ -432,7 +434,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement } public boolean hasInternalActivityWithName(String name) { - LinkedList<AvatarADActivity> list = getFullActivityList(); + List<AvatarADActivity> list = getFullActivityList(); for(AvatarADActivity s: list) { if (s.getValue().compareTo(name) ==0) { return true; @@ -441,6 +443,7 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement return false; } + @Override public int getDefaultConnector() { return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; } @@ -471,6 +474,13 @@ public class AvatarADActivity extends TGCScalableWithInternalComponent implement public boolean isACompositeActivity() { return (nbInternalTGComponent > 0); } - - + + /* Issue #69 + * (non-Javadoc) + * @see ui.AbstractCDElement#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + return true; + } } diff --git a/src/main/java/ui/avatarad/AvatarADAssociationConnector.java b/src/main/java/ui/avatarad/AvatarADAssociationConnector.java index e0944602b82b1b7b559e3d99b41d6f4d08cd5cdc..56b3f58357b1cd738545ee55d39677f0e5b6f9f8 100755 --- a/src/main/java/ui/avatarad/AvatarADAssociationConnector.java +++ b/src/main/java/ui/avatarad/AvatarADAssociationConnector.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; import myutil.GraphicLib; import ui.*; +import ui.ad.TADConnector; import java.awt.*; import java.awt.geom.Point2D; @@ -55,14 +53,14 @@ import java.util.Vector; * @version 1.0 01/09/2011 * @author Ludovic APVRILLE */ -public class AvatarADAssociationConnector extends TGConnector { +public class AvatarADAssociationConnector extends TADConnector/* Issue #69 TGConnector*/ { int w, h; public AvatarADAssociationConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) { super(_x, _y, _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint); } - + @Override protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) { g.drawLine(x1, y1, x2, y2); @@ -75,6 +73,7 @@ public class AvatarADAssociationConnector extends TGConnector { GraphicLib.dashedLine(g, x1, y1, x2, y2); }*/ + @Override public TGComponent extraIsOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) { return this; @@ -82,15 +81,21 @@ public class AvatarADAssociationConnector extends TGConnector { return null; } + @Override public int getType() { return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; } + /** + * Issue #69 + * @return + */ + @Override + public boolean canBeDisabled() { + if ( p2 != null && ( p2.getFather() instanceof AvatarADStopState || p2.getFather() instanceof AvatarADStopFlow ) ) { + return false; + } + + return super.canBeDisabled(); + } } - - - - - - - diff --git a/src/main/java/ui/avatarad/AvatarADBasicCanBeDisabledComponent.java b/src/main/java/ui/avatarad/AvatarADBasicCanBeDisabledComponent.java new file mode 100644 index 0000000000000000000000000000000000000000..3465351a35fd8d8b989cd9dba0d3d7b8ff3c58f4 --- /dev/null +++ b/src/main/java/ui/avatarad/AvatarADBasicCanBeDisabledComponent.java @@ -0,0 +1,17 @@ +package ui.avatarad; + +import ui.TDiagramPanel; +import ui.TGComponent; + +public abstract class AvatarADBasicCanBeDisabledComponent extends AvatarADBasicComponent { + + public AvatarADBasicCanBeDisabledComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, + TGComponent _father, TDiagramPanel _tdp) { + super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); + } + + @Override + public boolean canBeDisabled() { + return true; + } +} diff --git a/src/main/java/ui/avatarad/AvatarADBasicComponent.java b/src/main/java/ui/avatarad/AvatarADBasicComponent.java index 3721dec6eb48bca9156d717f45c839ab9a869360..8dc5982201fc7ef212c8ad9df97a754425d6f725 100644 --- a/src/main/java/ui/avatarad/AvatarADBasicComponent.java +++ b/src/main/java/ui/avatarad/AvatarADBasicComponent.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; import ui.*; @@ -51,16 +48,18 @@ import ui.*; * @author Ludovic APVRILLE */ public abstract class AvatarADBasicComponent extends TGCScalableWithoutInternalComponent implements SwallowedTGComponent { - private int lineLength = 5; + // private int lineLength = 5; public AvatarADBasicComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); } + @Override public int getDefaultConnector() { return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; } + @Override public void resizeWithFather() { if ((father != null) && (father instanceof AvatarADActivity)) { // Too large to fit in the father? -> resize it! @@ -70,5 +69,4 @@ public abstract class AvatarADBasicComponent extends TGCScalableWithoutInternalC setMoveCd(x, y); } } - } diff --git a/src/main/java/ui/avatarad/AvatarADChoice.java b/src/main/java/ui/avatarad/AvatarADChoice.java index 7830ed0ca7308baa6bd7ad3ee2d7c1ba32901121..b261c689a536b2cd5b9a24190771f5bf4b004693 100755 --- a/src/main/java/ui/avatarad/AvatarADChoice.java +++ b/src/main/java/ui/avatarad/AvatarADChoice.java @@ -36,17 +36,15 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; -import java.awt.geom.Line2D; +import ui.EmbeddedComment; +import ui.SwallowedTGComponent; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADChoice; /** * Class AvatarADChoice @@ -55,125 +53,138 @@ import java.awt.geom.Line2D; * @version 1.0 01/09/2011 * @author Ludovic APVRILLE */ -public class AvatarADChoice extends TGCScalableWithInternalComponent implements SwallowedTGComponent, EmbeddedComment, BasicErrorHighlight { - private int lineLength = 10; - private int lineOutLength = 25; - private int textX1, textY1, textX2, textY2, textX3, textY3; +public class AvatarADChoice extends TADChoice /* Issue #69 TGCScalableWithInternalComponent*/ implements SwallowedTGComponent, EmbeddedComment/*, BasicErrorHighlight*/ { +// private int lineLength = 10; +// private int lineOutLength = 25; +// private int textX1, textY1, textX2, textY2, textX3, textY3; protected int stateOfError = 0; // Not yet checked public AvatarADChoice(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - - initScaling(30, 30); - oldScaleFactor = tdp.getZoom(); - - textX1 = -lineOutLength; - textY1 = height/2 - 5; - textX2 = width + 5; - textY2 = height/2 - 5; - textX3 = width /2 + 5; - textY3 = height + 15; - +// +// initScaling(30, 30); +// oldScaleFactor = tdp.getZoom(); +// +// textX1 = -lineOutLength; +// textY1 = height/2 - 5; +// textX2 = width + 5; +// textY2 = height/2 - 5; +// textX3 = width /2 + 5; +// textY3 = height + 15; +// +// nbConnectingPoint = 4; +// connectingPoint = new TGConnectingPoint[nbConnectingPoint]; +// connectingPoint[0] = new AvatarADConnectingPoint(this, 0, -lineLength, true, false, 0.5, 0.0); +// connectingPoint[1] = new AvatarADConnectingPoint(this, -lineOutLength, 0, false, true, 0.0, 0.5); +// connectingPoint[2] = new AvatarADConnectingPoint(this, lineOutLength, 0, false, true, 1.0, 0.5); +// connectingPoint[3] = new AvatarADConnectingPoint(this, 0, lineOutLength, false, true, 0.5, 1.0); +// +// nbInternalTGComponent = 3; +// tgcomponent = new TGComponent[nbInternalTGComponent]; +// +// TGCScalableOneLineText tgc = new TGCScalableOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 1"); +// tgcomponent[0] = tgc; +// +// tgc = new TGCScalableOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 2"); +// tgcomponent[1] = tgc; +// +// tgc = new TGCScalableOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 3"); +// tgcomponent[2] = tgc; +// +// moveable = true; +// editable = false; +// removable = true; +// +// name = "choice"; +// +// myImageIcon = IconManager.imgic208; + } + + @Override + protected void createConnectingPoints() { nbConnectingPoint = 4; connectingPoint = new TGConnectingPoint[nbConnectingPoint]; connectingPoint[0] = new AvatarADConnectingPoint(this, 0, -lineLength, true, false, 0.5, 0.0); connectingPoint[1] = new AvatarADConnectingPoint(this, -lineOutLength, 0, false, true, 0.0, 0.5); connectingPoint[2] = new AvatarADConnectingPoint(this, lineOutLength, 0, false, true, 1.0, 0.5); connectingPoint[3] = new AvatarADConnectingPoint(this, 0, lineOutLength, false, true, 0.5, 1.0); - - nbInternalTGComponent = 3; - tgcomponent = new TGComponent[nbInternalTGComponent]; - - TGCScalableOneLineText tgc = new TGCScalableOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 1"); - tgcomponent[0] = tgc; - - tgc = new TGCScalableOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 2"); - tgcomponent[1] = tgc; - - tgc = new TGCScalableOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 3"); - tgcomponent[2] = tgc; - - moveable = true; - editable = false; - removable = true; - - name = "choice"; - - myImageIcon = IconManager.imgic208; - } - - public void internalDrawing(Graphics g) { - if (stateOfError > 0) { - Color c = g.getColor(); - switch(stateOfError) { - case ErrorHighlight.OK: - g.setColor(ColorManager.CHOICE); - break; - default: - g.setColor(ColorManager.UNKNOWN_BOX_ACTION); - } - // Making the polygon - int [] px1 = {x+(width/2), x+width+2, x + (width/2), x}; - int [] py1 = {y, y + height/2, y+height+2, y+height/2}; - g.fillPolygon(px1, py1, 4); - g.setColor(c); - } - - g.drawLine(x+(width/2), y, x+width, y + height/2); - g.drawLine(x, y + height / 2, x+width/2, y + height); - g.drawLine(x + width/2, y, x, y + height/2); - g.drawLine(x + width, y + height/2, x + width/2, y + height); - - g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); - g.drawLine(x, y + height/2, x-lineOutLength, y + height/2); - g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2); - g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength); - } - - public TGComponent isOnOnlyMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) { - return this; - } - - return null; } - - public String getGuard(int i) { - if ((i>=0) && (i<nbInternalTGComponent)) { - return tgcomponent[i].getValue(); - } - return ""; - } - - public void setGuard(String guard, int i) { - if ((i>=0) && (i<nbInternalTGComponent)) { - tgcomponent[i].setValue(guard); - } - } - +// +// @Override +// public void internalDrawing(Graphics g) { +// if (stateOfError > 0) { +// Color c = g.getColor(); +// switch(stateOfError) { +// case ErrorHighlight.OK: +// g.setColor(ColorManager.CHOICE); +// break; +// default: +// g.setColor(ColorManager.UNKNOWN_BOX_ACTION); +// } +// // Making the polygon +// int [] px1 = {x+(width/2), x+width+2, x + (width/2), x}; +// int [] py1 = {y, y + height/2, y+height+2, y+height/2}; +// g.fillPolygon(px1, py1, 4); +// g.setColor(c); +// } +// +// g.drawLine(x+(width/2), y, x+width, y + height/2); +// g.drawLine(x, y + height / 2, x+width/2, y + height); +// g.drawLine(x + width/2, y, x, y + height/2); +// g.drawLine(x + width, y + height/2, x + width/2, y + height); +// +// g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); +// g.drawLine(x, y + height/2, x-lineOutLength, y + height/2); +// g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2); +// g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength); +// } +// +// @Override +// public TGComponent isOnOnlyMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) { +// return this; +// } +// +// return null; +// } +// +// public String getGuard(int i) { +// if ((i>=0) && (i<nbInternalTGComponent)) { +// return tgcomponent[i].getValue(); +// } +// return ""; +// } +// +// public void setGuard(String guard, int i) { +// if ((i>=0) && (i<nbInternalTGComponent)) { +// tgcomponent[i].setValue(guard); +// } +// } + + @Override public void resizeWithFather() { if ((father != null) && (father instanceof AvatarADActivity)) { // Too large to fit in the father? -> resize it! @@ -184,16 +195,17 @@ public class AvatarADChoice extends TGCScalableWithInternalComponent implements } } + @Override public int getType() { return TGComponentManager.AAD_CHOICE; } + @Override public int getDefaultConnector() { return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; } - - public void setStateAction(int _stateAction) { - stateOfError = _stateAction; - } - +// +// public void setStateAction(int _stateAction) { +// stateOfError = _stateAction; +// } } diff --git a/src/main/java/ui/avatarad/AvatarADConnectingPoint.java b/src/main/java/ui/avatarad/AvatarADConnectingPoint.java index 655f69cda3e4c7caa38512a1da0612ec3f911cdc..607ee7b091f836835dce051d07551b1d627140ec 100644 --- a/src/main/java/ui/avatarad/AvatarADConnectingPoint.java +++ b/src/main/java/ui/avatarad/AvatarADConnectingPoint.java @@ -36,12 +36,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; - import ui.CDElement; import ui.TGComponentManager; import ui.TGConnectingPointWidthHeight; @@ -53,14 +49,14 @@ import ui.TGConnectingPointWidthHeight; * @version 1.0 01/09/2011 * @author Ludovic APVRILLE */ -public class AvatarADConnectingPoint extends TGConnectingPointWidthHeight { +public class AvatarADConnectingPoint extends TGConnectingPointWidthHeight { public AvatarADConnectingPoint(CDElement _container, int _x, int _y, boolean _in, boolean _out, double _w, double _h) { super(_container, _x, _y, _in, _out, _w, _h); } + @Override public boolean isCompatibleWith(int type) { return type == TGComponentManager.AAD_ASSOCIATION_CONNECTOR; } - } diff --git a/src/main/java/ui/avatarad/AvatarADJunction.java b/src/main/java/ui/avatarad/AvatarADJunction.java index da184855f6160a4612d9c4756e472263fc8d1cca..31af72842d15137bd73303c2d5ce0d136aaee6ea 100755 --- a/src/main/java/ui/avatarad/AvatarADJunction.java +++ b/src/main/java/ui/avatarad/AvatarADJunction.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.avatarad; import ui.TDiagramPanel; @@ -48,7 +47,6 @@ import ui.util.IconManager; import java.awt.*; import java.awt.geom.Line2D; - /** * Class AvatarADJunction * Junction between several activities, without any synchronization. To be used in avatar activity diagrams @@ -102,7 +100,7 @@ public class AvatarADJunction extends AvatarADBasicComponent { myImageIcon = IconManager.imgic212; } - + @Override public void internalDrawing(Graphics g) { //g.drawLine(x +width/2, y, x+width/2, y + height); //g.drawLine(x, y + (height/2), x+width, y + (height/2)); @@ -118,6 +116,7 @@ public class AvatarADJunction extends AvatarADBasicComponent { g.drawLine(x + width / 2 + range, y + height / 2, x + width / 2, y + height / 2 + range); } + @Override public TGComponent isOnMe(int _x, int _y) { // vertical line if ((int) (Line2D.ptSegDistSq(x + width / 2, y, x + width / 2, y + height, _x, _y)) < distanceSelected) { @@ -130,12 +129,12 @@ public class AvatarADJunction extends AvatarADBasicComponent { return null; } + @Override public int getType() { return TGComponentManager.AAD_JUNCTION; } - public int getDefaultConnector() { - return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; - } - +// public int getDefaultConnector() { +// return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; +// } } diff --git a/src/main/java/ui/avatarad/AvatarADPanel.java b/src/main/java/ui/avatarad/AvatarADPanel.java index 8681fecd95e2140d52642c9042d56ce1298f56ed..a45b09bfcc201193d63fa4277fbe1a2dcbc733f8 100644 --- a/src/main/java/ui/avatarad/AvatarADPanel.java +++ b/src/main/java/ui/avatarad/AvatarADPanel.java @@ -36,21 +36,13 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; -//import java.awt.*; - import ui.*; import java.util.ArrayList; import java.util.Iterator; - -//import org.w3c.dom.*; -//import org.xml.sax.*; -//import javax.xml.parsers.*; +import java.util.List; /** * Class AvatarADPanel @@ -71,41 +63,52 @@ public class AvatarADPanel extends TDiagramPanel implements TDPWithAttributes{ addMouseMotionListener(tdmm);*/ } + @Override public boolean actionOnDoubleClick(TGComponent tgc) { return true; } + @Override public boolean actionOnAdd(TGComponent tgc) { return false; } + + @Override public boolean actionOnValueChanged(TGComponent tgc) { return false; } + @Override public boolean actionOnRemove(TGComponent tgc) { return false; } + @Override public String getXMLHead() { return "<AvatarADPanel name=\"" + name + "\"" + sizeParam() + zoomParam() + " >"; } + @Override public String getXMLTail() { return "</AvatarADPanel>"; } + @Override public String getXMLSelectedHead() { return "<AvatarADPanelCopy name=\"" + name + "\" xSel=\"" + xSel + "\" ySel=\"" + ySel + "\" widthSel=\"" + widthSel + "\" heightSel=\"" + heightSel + "\" >"; } + @Override public String getXMLSelectedTail() { return "</AvatarADPanelCopy>"; } + @Override public String getXMLCloneHead() { return "<AvatarADPanelCopy name=\"" + name + "\" xSel=\"" + 0 + "\" ySel=\"" + 0 + "\" widthSel=\"" + 0 + "\" heightSel=\"" + 0 + "\" >"; } + @Override public String getXMLCloneTail() { return "</AvatarADPanelCopy>"; } @@ -118,47 +121,41 @@ public class AvatarADPanel extends TDiagramPanel implements TDPWithAttributes{ // Position correctly guards of choice } - - + @Override public boolean hasAutoConnect() { return false; } public void setConnectorsToFront() { TGComponent tgc; - - // - - Iterator iterator = componentList.listIterator(); + Iterator<TGComponent> iterator = componentList.listIterator(); - ArrayList<TGComponent> list = new ArrayList<TGComponent>(); + List<TGComponent> list = new ArrayList<TGComponent>(); while(iterator.hasNext()) { - tgc = (TGComponent)(iterator.next()); + tgc = iterator.next(); if (!(tgc instanceof TGConnector)) { list.add(tgc); } } - // for(TGComponent tgc1: list) { - // componentList.remove(tgc1); componentList.add(tgc1); } } public void alignPartitions() { - AvatarADPartition ontheLeft = null, sdi; + AvatarADPartition ontheLeft = null;//, sdi; int x = getMaxX(),xtmp; int y; int i; TGComponent tgc; - Iterator iterator = componentList.listIterator(); + Iterator<TGComponent> iterator = componentList.listIterator(); // search for the instances which is the most on the left while(iterator.hasNext()) { - tgc = (TGComponent)(iterator.next()); + tgc = iterator.next(); if (tgc instanceof AvatarADPartition) { xtmp = tgc.getX(); if (xtmp < x) { @@ -180,7 +177,5 @@ public class AvatarADPanel extends TDiagramPanel implements TDPWithAttributes{ tgc.setCd(tgc.getX(), y); } } - } - } diff --git a/src/main/java/ui/avatarad/AvatarADParallel.java b/src/main/java/ui/avatarad/AvatarADParallel.java index 311bf463dc4decc522b57ec22daa145a0f039ed2..0a583b428351df3d88ac7321c0b8f2b91165fb69 100755 --- a/src/main/java/ui/avatarad/AvatarADParallel.java +++ b/src/main/java/ui/avatarad/AvatarADParallel.java @@ -36,17 +36,17 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; +import java.awt.Graphics; +import java.util.Arrays; +import java.util.List; + import myutil.GraphicLib; import ui.*; +import ui.ad.EnablingADConnectorVisitor; import ui.util.IconManager; -import java.awt.*; - /** * Class AvatarADParallel * Parallel operator. All activities start together @@ -55,9 +55,9 @@ import java.awt.*; * @version 1.0 02/09/2011 * @author Ludovic APVRILLE */ -public class AvatarADParallel extends AvatarADBasicComponent{ +public class AvatarADParallel extends AvatarADBasicCanBeDisabledComponent /* Issue #69 AvatarADBasicComponent*/ { private int lineLength = 0; - private int textX, textY; + // private int textX, textY; public AvatarADParallel(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -65,8 +65,8 @@ public class AvatarADParallel extends AvatarADBasicComponent{ initScaling(150, 5); oldScaleFactor = tdp.getZoom(); - textX = width - 10; - textY = height - 8; +// textX = width - 10; +// textY = height - 8; nbConnectingPoint = 10; connectingPoint = new TGConnectingPoint[10]; @@ -93,11 +93,13 @@ public class AvatarADParallel extends AvatarADBasicComponent{ myImageIcon = IconManager.imgic206; } + @Override public void internalDrawing(Graphics g) { g.drawRect(x, y, width, height); g.fillRect(x, y, width, height); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -113,18 +115,37 @@ public class AvatarADParallel extends AvatarADBasicComponent{ tgcomponent[0].setValue(val); } + @Override public int getType() { return TGComponentManager.AAD_PARALLEL; } +// +// public int getDefaultConnector() { +// return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; +// } + + public List<TGConnectingPoint> getEnterConnectingPoints() { + return Arrays.asList( Arrays.copyOfRange( connectingPoint, 0, 5 ) ); + } + + public List<TGConnectingPoint> getExitConnectingPoints() { + return Arrays.asList( Arrays.copyOfRange( connectingPoint, 5, connectingPoint.length ) ); + } - public int getDefaultConnector() { - return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; + /** + * Issue #69 + * @param _enabled + */ + @Override + public void setEnabled( final boolean _enabled ) { + super.setEnabled( _enabled ); + + final List<TGConnectingPoint> enterConPoints = getEnterConnectingPoints(); + + for ( final TGConnectingPoint point : connectingPoint ) { + if ( !enterConPoints.contains( point ) ) { + point.acceptForward( new EnablingADConnectorVisitor( _enabled ) ); + } + } } } - - - - - - - diff --git a/src/main/java/ui/avatarad/AvatarADPartition.java b/src/main/java/ui/avatarad/AvatarADPartition.java index 4719fb9847c0482ff66b05174577a7201285243f..7410edfa4fe4373a61b04cc8ed0c8bf987b15359 100755 --- a/src/main/java/ui/avatarad/AvatarADPartition.java +++ b/src/main/java/ui/avatarad/AvatarADPartition.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; import myutil.GraphicLib; @@ -55,18 +52,18 @@ import java.awt.*; * @author Ludovic APVRILLE */ public class AvatarADPartition extends AvatarADBasicComponent implements EmbeddedComment{ - private int lineLength = 5; + //private int lineLength = 5; public AvatarADPartition(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - initScaling(10, 500); - oldScaleFactor = tdp.getZoom(); - - minWidth = (int)(10* tdp.getZoom()); - maxWidth = (int)(30* tdp.getZoom()); - minHeight = (int)(250* tdp.getZoom()); - maxHeight = (int)(1500* tdp.getZoom()); + initScaling(10, 500); + oldScaleFactor = tdp.getZoom(); + + minWidth = (int)(10* tdp.getZoom()); + maxWidth = (int)(30* tdp.getZoom()); + minHeight = (int)(250* tdp.getZoom()); + maxHeight = (int)(1500* tdp.getZoom()); nbConnectingPoint = 0; @@ -81,11 +78,13 @@ public class AvatarADPartition extends AvatarADBasicComponent implements Embedde myImageIcon = IconManager.imgic222; } + @Override public void internalDrawing(Graphics g) { g.drawLine(x+(width/2), y, x+(width/2), y +height); g.drawLine(x+(width/2)+1, y, x+(width/2)+1, y +height); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -94,12 +93,12 @@ public class AvatarADPartition extends AvatarADBasicComponent implements Embedde return null; } + @Override public int getType() { return TGComponentManager.AAD_PARTITION; } - - public int getDefaultConnector() { - return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; - } - +// +// public int getDefaultConnector() { +// return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; +// } } diff --git a/src/main/java/ui/avatarad/AvatarADSendSignalAction.java b/src/main/java/ui/avatarad/AvatarADSendSignalAction.java index 6b48304f34acbff3edaaa46b7d60e39206c6c682..6c01f804d1f0ef66e6ab9c7633e580a3f2ce83e3 100755 --- a/src/main/java/ui/avatarad/AvatarADSendSignalAction.java +++ b/src/main/java/ui/avatarad/AvatarADSendSignalAction.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; import myutil.GraphicLib; @@ -56,7 +53,7 @@ import java.awt.geom.Line2D; * @version 1.0 02/09/2011 * @author Ludovic APVRILLE */ -public class AvatarADSendSignalAction extends AvatarADBasicComponent implements EmbeddedComment, BasicErrorHighlight { +public class AvatarADSendSignalAction extends AvatarADBasicCanBeDisabledComponent/* Issue #69 AvatarADBasicComponent*/ implements EmbeddedComment, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -72,7 +69,7 @@ public class AvatarADSendSignalAction extends AvatarADBasicComponent implements minWidth = (int)(30* tdp.getZoom()); oldScaleFactor = tdp.getZoom(); - nbConnectingPoint = 2; + nbConnectingPoint = 2; connectingPoint = new TGConnectingPoint[2]; connectingPoint[0] = new AvatarADConnectingPoint(this, 0, -lineLength, true, false, 0.5, 0.0); connectingPoint[1] = new AvatarADConnectingPoint(this, 0, lineLength, false, true, 0.5, 1.0); @@ -87,8 +84,8 @@ public class AvatarADSendSignalAction extends AvatarADBasicComponent implements myImageIcon = IconManager.imgic904; } + @Override public void internalDrawing(Graphics g) { - int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); if ((w1 != width) & (!tdp.isScaled())) { @@ -142,14 +139,11 @@ public class AvatarADSendSignalAction extends AvatarADBasicComponent implements g.drawLine(x+width-linebreak, y, x+width, y+height/2); g.drawLine(x+width-linebreak, y+height, x+width, y+height/2); - - g.drawString("sig", x+(width-w) / 2, y); g.drawString(value, x + (width - w) / 2 , y + (int)((textY*tdp.getZoom()))); - - } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -166,6 +160,7 @@ public class AvatarADSendSignalAction extends AvatarADBasicComponent implements return value; } + @Override public boolean editOndoubleClick(JFrame frame) { String oldValue = value; @@ -185,12 +180,12 @@ public class AvatarADSendSignalAction extends AvatarADBasicComponent implements } + @Override public int getType() { return TGComponentManager.AAD_SEND_SIGNAL_ACTION; } - - + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } diff --git a/src/main/java/ui/avatarad/AvatarADStartState.java b/src/main/java/ui/avatarad/AvatarADStartState.java index f24098652cec127dcd02f5f17817c18d880018d5..4bbe93d0e61fbc5430960480516e552317f1404e 100755 --- a/src/main/java/ui/avatarad/AvatarADStartState.java +++ b/src/main/java/ui/avatarad/AvatarADStartState.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; import myutil.GraphicLib; @@ -55,13 +52,13 @@ import java.awt.geom.Line2D; * @version 1.0 01/09/2011 * @author Ludovic APVRILLE */ -public class AvatarADStartState extends AvatarADBasicComponent implements EmbeddedComment{ +public class AvatarADStartState extends AvatarADBasicComponent implements EmbeddedComment { private int lineLength = 5; public AvatarADStartState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - initScaling(15, 15); + initScaling(15, 15); oldScaleFactor = tdp.getZoom(); nbConnectingPoint = 1; @@ -79,11 +76,13 @@ public class AvatarADStartState extends AvatarADBasicComponent implements Embedd myImageIcon = IconManager.imgic222; } + @Override public void internalDrawing(Graphics g) { g.fillOval(x, y, width, height); g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -96,12 +95,13 @@ public class AvatarADStartState extends AvatarADBasicComponent implements Embedd return null; } + @Override public int getType() { return TGComponentManager.AAD_START_STATE; } - - public int getDefaultConnector() { - return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; - } +// +// public int getDefaultConnector() { +// return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; +// } } diff --git a/src/main/java/ui/avatarad/AvatarADStopFlow.java b/src/main/java/ui/avatarad/AvatarADStopFlow.java index a3bbdfb88d77142023f144e635a80517d215cf06..be3ca80a2346c96112430d54a94e4a4312b3a525 100755 --- a/src/main/java/ui/avatarad/AvatarADStopFlow.java +++ b/src/main/java/ui/avatarad/AvatarADStopFlow.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; import myutil.GraphicLib; @@ -55,7 +52,7 @@ import java.awt.*; * @author Ludovic APVRILLE */ public class AvatarADStopFlow extends AvatarADBasicComponent implements EmbeddedComment, AllowedBreakpoint { - private int internalCircleSize = 16; +// private int internalCircleSize = 16; private int lineLength = 5; public AvatarADStopFlow(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { @@ -79,6 +76,7 @@ public class AvatarADStopFlow extends AvatarADBasicComponent implements Embedded myImageIcon = IconManager.imgic210; } + @Override public void internalDrawing(Graphics g) { ColorManager.setColor(g, state, 0); //g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize); @@ -88,6 +86,7 @@ public class AvatarADStopFlow extends AvatarADBasicComponent implements Embedded g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -95,12 +94,12 @@ public class AvatarADStopFlow extends AvatarADBasicComponent implements Embedded return null; } + @Override public int getType() { return TGComponentManager.AAD_STOP_FLOW; } - - public int getDefaultConnector() { - return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; - } - +// +// public int getDefaultConnector() { +// return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; +// } } diff --git a/src/main/java/ui/avatarad/AvatarADStopState.java b/src/main/java/ui/avatarad/AvatarADStopState.java index 875892b8efc6209b852efa54df0bbf0342b7a59a..e3f1e919f418aef0ab767360d4ae4c034d8fe472 100755 --- a/src/main/java/ui/avatarad/AvatarADStopState.java +++ b/src/main/java/ui/avatarad/AvatarADStopState.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarad; import myutil.GraphicLib; @@ -79,6 +76,7 @@ public class AvatarADStopState extends AvatarADBasicComponent implements Embedde myImageIcon = IconManager.imgic210; } + @Override public void internalDrawing(Graphics g) { ColorManager.setColor(g, state, 0); g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize); @@ -86,7 +84,7 @@ public class AvatarADStopState extends AvatarADBasicComponent implements Embedde g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); } - + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -94,12 +92,12 @@ public class AvatarADStopState extends AvatarADBasicComponent implements Embedde return null; } + @Override public int getType() { return TGComponentManager.AAD_STOP_STATE; } - - public int getDefaultConnector() { - return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; - } - +// +// public int getDefaultConnector() { +// return TGComponentManager.AAD_ASSOCIATION_CONNECTOR; +// } } diff --git a/src/main/java/ui/avatarad/AvatarADToolBar.java b/src/main/java/ui/avatarad/AvatarADToolBar.java index f491f119af557e68cd28ca8bf28f2b94e23632e9..b1ba6354ffc0924c3f5b0bee4f23f5e6a1ebe3c2 100644 --- a/src/main/java/ui/avatarad/AvatarADToolBar.java +++ b/src/main/java/ui/avatarad/AvatarADToolBar.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.avatarad; import ui.MainGUI; @@ -45,9 +44,6 @@ import ui.TToolBar; import javax.swing.*; -//import java.awt.*; -//import java.awt.event.*; - /** * Class AvatarADToolBar * Implements the toolbar to be used in conjunction with the panel of @@ -62,7 +58,6 @@ public class AvatarADToolBar extends TToolBar { public AvatarADToolBar(MainGUI _mgui) { super(_mgui); - } protected void setActive(boolean b) { @@ -162,14 +157,10 @@ public class AvatarADToolBar extends TToolBar { button = this.add(mgui.actions[TGUIAction.AAD_ALIGN_PARTITION]); button.addMouseListener(mgui.mouseHandler); - /*this.addSeparator(); this.addSeparator(); button = this.add(mgui.actions[TGUIAction.ACT_TOGGLE_ATTR]); button.addMouseListener(mgui.mouseHandler);*/ - - } - } // Class diff --git a/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java b/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java index e1b2a7f95f8f55e5f137fe0342a66941900958e8..af0b233b441903894c56236056d24aebb30e2c97 100644 --- a/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java +++ b/src/main/java/ui/avatarbd/AvatarBDPerformancePragma.java @@ -227,7 +227,7 @@ public class AvatarBDPerformancePragma extends TGCScalableWithoutInternalCompone } - public void makeValue() { + private void makeValue() { values = Conversion.wrapText(value); properties.clear(); for (String s : values) { diff --git a/src/main/java/ui/avatarbd/AvatarBDPragma.java b/src/main/java/ui/avatarbd/AvatarBDPragma.java index f3b9419132506fd08616b09c0b3bf13eda6e166e..1fbb30ab86e9b7ea47d9908c5a70732c0c5c18d5 100755 --- a/src/main/java/ui/avatarbd/AvatarBDPragma.java +++ b/src/main/java/ui/avatarbd/AvatarBDPragma.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.avatarbd; import myutil.Conversion; @@ -55,6 +54,9 @@ import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PipedInputStream; import java.io.PipedOutputStream; +import java.awt.Color; +import java.awt.Font; +import java.awt.Graphics; import java.io.BufferedReader; import java.io.BufferedWriter; @@ -67,11 +69,11 @@ import proverifspec.ProVerifResultTraceStep; import ui.interactivesimulation.JFrameSimulationSDPanel; import javax.swing.*; -import java.awt.*; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.LinkedList; +import java.util.List; /** * Class Pragma @@ -84,9 +86,9 @@ import java.util.LinkedList; public class AvatarBDPragma extends TGCScalableWithoutInternalComponent { protected String[] values; - protected LinkedList<String> models; - protected LinkedList<String> properties; - public ArrayList<String> syntaxErrors; + protected List<String> models; + protected List<String> properties; + public List<String> syntaxErrors; protected int textX = 25; protected int textY = 5; protected int marginY = 20; @@ -165,14 +167,15 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent { makeValue(); } - public LinkedList<String> getProperties() { + public List<String> getProperties() { return properties; } - public LinkedList<String> getModels() { + public List<String> getModels() { return this.models; } + @Override public void internalDrawing(Graphics g) { Font f = g.getFont(); Font fold = f; @@ -299,7 +302,6 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent { } */ g.setColor(c); - } public void makeValue() { @@ -402,7 +404,6 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent { // if (c1==Color.gray){ // g.drawString("?", _x+4, _y+2); // } - } @Override @@ -419,7 +420,7 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent { String s = jdn.getText(); if ((s != null) && (s.length() > 0) && (!s.equals(oldValue))) { - String tmp = s; + // String tmp = s; setValue(s); makeValue(); return true; @@ -427,6 +428,7 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent { return false; } + @Override public TGComponent isOnMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -434,10 +436,12 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent { return null; } + @Override public String getToolTipText() { return "The lock shows status of weak and strong authenticity. Green: Proved True, Red: Proved False, Grey: Cannot be proved"; } + @Override public void rescale(double scaleFactor) { //TraceManager.addDev("Rescaling BD Pragma"); /*dlineHeight = (lineHeight + dlineHeight) / oldScaleFactor * scaleFactor; @@ -450,10 +454,12 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent { super.rescale(scaleFactor); } + @Override public int getType() { return TGComponentManager.PRAGMA; } + @Override protected String translateExtraParam() { if (values == null) { makeValue(); @@ -541,10 +547,9 @@ public class AvatarBDPragma extends TGCScalableWithoutInternalComponent { } catch (IOException ignored) { } } - break; + break; } } - // } } diff --git a/src/main/java/ui/avatarbd/AvatarBDSafetyPragma.java b/src/main/java/ui/avatarbd/AvatarBDSafetyPragma.java index 1e9e99b5387549f7d1e57ec4b6294b0fe956d8b3..bbf87cdbbb7a6628aeaf3b688d51e9baa038f7e6 100644 --- a/src/main/java/ui/avatarbd/AvatarBDSafetyPragma.java +++ b/src/main/java/ui/avatarbd/AvatarBDSafetyPragma.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.avatarbd; import myutil.Conversion; @@ -49,7 +48,10 @@ import ui.util.IconManager; import ui.window.JDialogSafetyPragma; import javax.swing.*; -import java.awt.*; + +import java.awt.Color; +import java.awt.Font; +import java.awt.Graphics; import java.util.*; /** @@ -63,7 +65,7 @@ import java.util.*; public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent { protected String[] values; - protected LinkedList<String> properties; + protected List<String> properties; protected int textX = 25; protected int textY = 5; protected int marginY = 20; @@ -72,7 +74,7 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent { protected int lockX = 1; protected int lockY = 5; protected Graphics myg; - public ArrayList<String> syntaxErrors; + public List<String> syntaxErrors; protected Color myColor; private Font myFont;//, myFontB; @@ -127,10 +129,11 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent { return values; } - public LinkedList<String> getProperties() { + public List<String> getProperties() { return properties; } + @Override public void internalDrawing(Graphics g) { Font f = g.getFont(); Font fold = f; @@ -221,8 +224,7 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent { } - public void makeValue() { - + private void makeValue() { values = Conversion.wrapText(value); properties.clear(); for (String s : values) { @@ -258,7 +260,7 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent { } }*/ - + @Override public boolean editOndoubleClick(JFrame frame) { String oldValue = value; @@ -279,6 +281,7 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent { return false; } + @Override public TGComponent isOnMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -286,6 +289,7 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent { return null; } + @Override public void rescale(double scaleFactor) { /*dlineHeight = (lineHeight + dlineHeight) / oldScaleFactor * scaleFactor; lineHeight = (int)(dlineHeight); @@ -297,10 +301,12 @@ public class AvatarBDSafetyPragma extends TGCScalableWithoutInternalComponent { super.rescale(scaleFactor); } + @Override public int getType() { return TGComponentManager.SAFETY_PRAGMA; } + @Override protected String translateExtraParam() { if (values == null) { makeValue(); diff --git a/src/main/java/ui/avatardd/ADDArtifact.java b/src/main/java/ui/avatardd/ADDArtifact.java index 2570aa5fcee02688695a0867918c0d4517cd2a69..168176f98ae540799e9edccb7271b88f60ae759b 100755 --- a/src/main/java/ui/avatardd/ADDArtifact.java +++ b/src/main/java/ui/avatardd/ADDArtifact.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatardd; import myutil.GraphicLib; @@ -95,9 +92,8 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe myImageIcon = IconManager.imgic702; } - + @Override public void internalDrawing(Graphics g) { - if (oldValue.compareTo(value) != 0) { setValue(value, g); } @@ -136,6 +132,7 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe // } + @Override public void resizeWithFather() { if ((father != null) && ((father instanceof ADDCPUNode))) { // @@ -145,9 +142,9 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe } } - + @Override public boolean editOndoubleClick(JFrame frame) { - String tmp; +// String tmp; boolean error = false; /*JDialogTMLTaskArtifact dialog = new JDialogTMLTaskArtifact(frame, "Setting artifact attributes", this); @@ -199,6 +196,7 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe value = referenceTaskName + "::" + taskName; } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -206,10 +204,12 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe return null; } + @Override public int getType() { return TGComponentManager.ADD_ARTIFACT; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<info value=\"" + value + "\" taskName=\"" + taskName + "\" referenceTaskName=\""); @@ -263,7 +263,7 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeFullValue(); } @@ -291,8 +291,4 @@ public class ADDArtifact extends TGCWithoutInternalComponent implements Swallowe public String getAttributesToFile() { return ""; } - - - - } diff --git a/src/main/java/ui/avatardd/ADDBlockArtifact.java b/src/main/java/ui/avatardd/ADDBlockArtifact.java index c5ca6a3cf1aca61d08ad2532be7f4e80fbd97031..bdca0ae1e8c6fa41e35b5d6ec5f3b63deb667c2a 100755 --- a/src/main/java/ui/avatardd/ADDBlockArtifact.java +++ b/src/main/java/ui/avatardd/ADDBlockArtifact.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatardd; import myutil.GraphicLib; @@ -96,9 +93,8 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa myImageIcon = IconManager.imgic702; } - + @Override public void internalDrawing(Graphics g) { - if (oldValue.compareTo(value) != 0) { setValue(value, g); } @@ -137,6 +133,7 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa // } + @Override public void resizeWithFather() { if ((father != null) && ((father instanceof ADDCPUNode))) { // @@ -146,8 +143,8 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa } } - - public boolean editOndoubleClick(JFrame frame) { + @Override + public boolean editOndoubleClick(JFrame frame) { String tmp; boolean error = false; @@ -191,15 +188,14 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa makeFullValue(); - return !error; - } private void makeFullValue() { value = referenceTaskName + "::" + taskName; } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -207,10 +203,12 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa return null; } + @Override public int getType() { return TGComponentManager.ADD_ARTIFACT; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<info value=\"" + value + "\" taskName=\"" + taskName + "\" referenceTaskName=\""); @@ -224,7 +222,6 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{ // try { - NodeList nli; Node n1, n2; Element elt; @@ -263,7 +260,7 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeFullValue(); } @@ -284,5 +281,4 @@ public class ADDBlockArtifact extends TGCWithoutInternalComponent implements Swa public String getTaskName() { return taskName; } - } diff --git a/src/main/java/ui/avatardd/ADDBridgeNode.java b/src/main/java/ui/avatardd/ADDBridgeNode.java index 9961306d2b417f24695064140932154327ec384c..197ddca0fd89d31d204bc0de7a0e641d898806b6 100755 --- a/src/main/java/ui/avatardd/ADDBridgeNode.java +++ b/src/main/java/ui/avatardd/ADDBridgeNode.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatardd; import org.w3c.dom.Element; @@ -65,7 +62,6 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute private int derivationy = 3; private String stereotype = "BRIDGE"; - public ADDBridgeNode(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -110,6 +106,7 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute myImageIcon = IconManager.imgic700; } + @Override public void internalDrawing(Graphics g) { Color c = g.getColor(); g.draw3DRect(x, y, width, height, true); @@ -141,8 +138,8 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute g.drawImage(IconManager.img9, x + width - 20, y + 4, null); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { - Polygon pol = new Polygon(); pol.addPoint(x, y); pol.addPoint(x + derivationx, y - derivationy); @@ -166,6 +163,7 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute return name; } + @Override public boolean editOndoubleClick(JFrame frame) { // boolean error = false; //String errors = ""; @@ -234,11 +232,12 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute return true; } - + @Override public int getType() { return TGComponentManager.ADD_BRIDGENODE; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<info stereotype=\"" + stereotype + "\" nodeName=\"" + name); @@ -295,17 +294,14 @@ public class ADDBridgeNode extends ADDCommunicationNode implements WithAttribute } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } } - - - public String getAttributes() { - String attr = ""; - //attr += "Buffer size (in byte) = " + bufferByteDataSize + "\n"; - //attr += "Clock ratio = " + clockRatio + "\n"; - return attr; - } - - + + public String getAttributes() { + String attr = ""; + //attr += "Buffer size (in byte) = " + bufferByteDataSize + "\n"; + //attr += "Clock ratio = " + clockRatio + "\n"; + return attr; + } } diff --git a/src/main/java/ui/avatardd/ADDBusNode.java b/src/main/java/ui/avatardd/ADDBusNode.java index 131b8d89a0833d7e893891a811d3abd7217b6d75..d01b97c8c5104fe52c161d2c7c80a22b2a2713c9 100755 --- a/src/main/java/ui/avatardd/ADDBusNode.java +++ b/src/main/java/ui/avatardd/ADDBusNode.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatardd; import myutil.GraphicLib; @@ -72,8 +69,6 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes { private int fifoDepth = 0; private int minLatency = 0; - - public ADDBusNode(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -118,6 +113,7 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes { myImageIcon = IconManager.imgic700; } + @Override public void internalDrawing(Graphics g) { Color c = g.getColor(); g.draw3DRect(x, y, width, height, true); @@ -153,8 +149,8 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes { g.drawImage(IconManager.img9, x + width - 20, y + 4, null); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { - Polygon pol = new Polygon(); pol.addPoint(x, y); pol.addPoint(x + derivationx, y - derivationy); @@ -178,6 +174,7 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes { return name; } + @Override public boolean editOndoubleClick(JFrame frame) { boolean error = false; String errors = ""; @@ -204,8 +201,6 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes { } } - - if (dialog.getIndex().length() != 0) { try { tmp = index; @@ -236,7 +231,6 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes { } } - if (dialog.getNbOfAttachedTargets().length() != 0) { try { tmp = nbOfAttachedTargets; @@ -294,11 +288,12 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes { return true; } - + @Override public int getType() { return TGComponentManager.ADD_BUSNODE; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<info stereotype=\"" + stereotype + "\" nodeName=\"" + name); @@ -315,9 +310,7 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes { @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{ - // try { - NodeList nli; Node n1, n2; Element elt; @@ -363,13 +356,10 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes { } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } } - - - public String getAttributes() { String attr = ""; attr += "index = " + index + "\n"; @@ -396,8 +386,8 @@ public class ADDBusNode extends ADDCommunicationNode implements WithAttributes { public int getFifoDepth() { return fifoDepth;} public int getMinLatency() { return minLatency;} + @Override public String toString(){ return "Bus"; } - } diff --git a/src/main/java/ui/avatardd/ADDCPUNode.java b/src/main/java/ui/avatardd/ADDCPUNode.java index 4993a955f80b3c05b51cbebe047a9b38c822f19e..7294aa44f7ab473ce3b089198bee6f430a58d19a 100755 --- a/src/main/java/ui/avatardd/ADDCPUNode.java +++ b/src/main/java/ui/avatardd/ADDCPUNode.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatardd; import myutil.GraphicLib; @@ -79,7 +76,6 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri protected int cluster_index = 0; protected int monitored = 0; - public ADDCPUNode(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -124,11 +120,11 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri myImageIcon = IconManager.imgic700; } + @Override public void internalDrawing(Graphics g) { Color c = g.getColor(); g.draw3DRect(x, y, width, height, true); - // Top lines g.drawLine(x, y, x + derivationx, y - derivationy); g.drawLine(x + width, y, x + width + derivationx, y - derivationy); @@ -158,6 +154,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri g.drawImage(IconManager.img9, x + width - 20, y + 4, null); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { Polygon pol = new Polygon(); @@ -183,6 +180,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri return name; } + @Override public boolean editOndoubleClick(JFrame frame) { boolean error = false; String errors = ""; @@ -209,7 +207,6 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri } } - if (dialog.getNbOFIRQ().length() != 0) { try { tmp = nbOfIrq; @@ -315,8 +312,6 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri } } - - /*if (dialog.getClockRatio().length() != 0) { try { tmp = clockRatio; @@ -332,7 +327,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri } }*/ - if (dialog.getIndex().length() != 0) { + if (dialog.getIndex().length() != 0) { try { tmp = index; index = Integer.decode(dialog.getIndex()).intValue(); @@ -391,17 +386,19 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri return true; } - + @Override public int getType() { return TGComponentManager.ADD_CPUNODE; } + @Override public boolean acceptSwallowedTGComponent(TGComponent tgc) { //TraceManager.addDev("Accept swallowed?"); return tgc instanceof ADDBlockArtifact; } + @Override public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) { //TraceManager.addDev("Add swallowed?"); //Set its coordinates @@ -418,6 +415,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri } + @Override public void removeSwallowedTGComponent(TGComponent tgc) { removeInternalComponent(tgc); } @@ -435,6 +433,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri return v; } + @Override public void hasBeenResized() { for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof ADDBlockArtifact) { @@ -444,6 +443,7 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<info stereotype=\"" + stereotype + "\" nodeName=\"" + name); @@ -510,15 +510,15 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } } + @Override public int getDefaultConnector() { return TGComponentManager.ADD_CONNECTOR; } - public String getAttributes() { String attr = ""; attr += "Nb of irq = " + nbOfIrq + "\n"; @@ -573,7 +573,6 @@ public class ADDCPUNode extends ADDNode implements SwallowTGComponent, WithAttri } public void setMonitored(int _monitored){ - monitored = _monitored; + monitored = _monitored; } - } diff --git a/src/main/java/ui/avatardd/ADDChannelArtifact.java b/src/main/java/ui/avatardd/ADDChannelArtifact.java index 4048be6ee3071dfc01d9ed6824aa4d2fda6095a9..7d5944d04d35fd29c1c731435c290dad1ea62a7c 100755 --- a/src/main/java/ui/avatardd/ADDChannelArtifact.java +++ b/src/main/java/ui/avatardd/ADDChannelArtifact.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatardd; import myutil.GraphicLib; @@ -97,9 +94,8 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S myImageIcon = IconManager.imgic702; } - + @Override public void internalDrawing(Graphics g) { - if (oldValue.compareTo(value) != 0) { setValue(value, g); } @@ -122,7 +118,6 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S g.drawImage(IconManager.img9, x+width-space-fileX + 3, y + space + 7, null); g.drawString(value, x + textX , y + textY); - } public void setValue(String val, Graphics g) { @@ -138,6 +133,7 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S // } + @Override public void resizeWithFather() { if ((father != null) && ((father instanceof ADDRAMNode))) { // @@ -147,7 +143,7 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S } } - + @Override public boolean editOndoubleClick(JFrame frame) { String tmp; boolean error = false; @@ -204,6 +200,7 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S value = referenceDiagram + "::" + channelName; }*/ + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -215,6 +212,7 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S return TGComponentManager.ADD_CHANNELARTIFACT; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<info value=\"" + value + "\" channelName=\"" + channelName + "\" fullChannelName=\"" + fullChannelName + "\" referenceDiagram=\""); @@ -274,7 +272,7 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeFullValue(); } @@ -301,7 +299,6 @@ public class ADDChannelArtifact extends TGCWithoutInternalComponent implements S } public String getStatusInformation() { - return "Name of the channel: " + fullChannelName; + return "Name of the channel: " + fullChannelName; } - } diff --git a/src/main/java/ui/avatarmad/AvatarMADCompositionConnector.java b/src/main/java/ui/avatarmad/AvatarMADCompositionConnector.java index f4f325f904ea778edfefd46cfd3e987291874186..8708601a6cc7f820504486cafd4eacddab941feb 100644 --- a/src/main/java/ui/avatarmad/AvatarMADCompositionConnector.java +++ b/src/main/java/ui/avatarmad/AvatarMADCompositionConnector.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarmad; import ui.*; @@ -47,8 +44,6 @@ import ui.util.IconManager; import java.awt.*; import java.util.Vector; -//import java.awt.geom.*; - /** * Class AvatarMADCompositionConnector * Connector to be used in Avatar MAD. Connects two assumptions @@ -57,7 +52,7 @@ import java.util.Vector; * @author Ludovic APVRILLE */ public class AvatarMADCompositionConnector extends TGConnectorWithCommentConnectionPoints { - int w, h; + // int w, h; private int radius = 5; public AvatarMADCompositionConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) { @@ -67,7 +62,7 @@ public class AvatarMADCompositionConnector extends TGConnectorWithCommentConnec myImageIcon = IconManager.imgic1012; } - + @Override protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ //g.drawLine(x1, y1, x2, y2); diff --git a/src/main/java/ui/avatarmad/AvatarMADConnector.java b/src/main/java/ui/avatarmad/AvatarMADConnector.java new file mode 100644 index 0000000000000000000000000000000000000000..421f6b4f825e8c5f40d717fdac177fd3b2b10a5b --- /dev/null +++ b/src/main/java/ui/avatarmad/AvatarMADConnector.java @@ -0,0 +1,84 @@ +package ui.avatarmad; + +import java.awt.Font; +import java.awt.Graphics; +import java.awt.Point; +import java.util.Vector; + +import myutil.GraphicLib; +import ui.ForwardComponentsEnabledVisitor; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGConnectingPoint; +import ui.TGConnectorWithCommentConnectionPoints; +import ui.ad.CanBeDisabledADElementVisitor; + +public abstract class AvatarMADConnector extends TGConnectorWithCommentConnectionPoints { + + int w, h; + + public AvatarMADConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, + TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, + Vector<Point> _listPoint) { + super(_x, _y, _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint); + } + + @Override + protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ + + //g.drawLine(x1, y1, x2, y2); + GraphicLib.dashedArrowWithLine(g, 1, 1, 0, x1, y1, x2, y2, false); + + // Indicate semantics + + Font f = g.getFont(); + Font old = f; + if (f.getSize() != tdp.getFontSize()) { + f = f.deriveFont((float)tdp.getFontSize()); + g.setFont(f); + } + + w = g.getFontMetrics().stringWidth(value); + h = g.getFontMetrics().getHeight(); + g.drawString(value, (x1 + x2 - w) / 2, (y1 + y2)/2); + g.setFont(old); + } + + @Override + public TGComponent extraIsOnOnlyMe(int x1, int y1) { + if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) { + return this; + } + return null; + } + + /** + * Issue #69 + * @return + */ + @Override + public boolean canBeDisabled() { +// if ( p2 != null && p2.getFather() instanceof AvatarSMDStopState ) { +// return false; +// } + + final CanBeDisabledADElementVisitor visitor = new CanBeDisabledADElementVisitor(); + acceptBackward( visitor ); + + return visitor.isCanBeDisabled(); + } + + /** Issue #69 + * @return + */ + public boolean isEnabled( boolean checkBranch ) { + if ( checkBranch && p2 != null ) { + final ForwardComponentsEnabledVisitor visitor = new ForwardComponentsEnabledVisitor(); + p2.acceptForward( visitor ); + + return visitor.isEnabled(); + } + + return super.isEnabled(); + } +} diff --git a/src/main/java/ui/avatarmad/AvatarMADImpactConnector.java b/src/main/java/ui/avatarmad/AvatarMADImpactConnector.java index ae483cb1034f4011bb1b875c71d78476c956ecaf..9be09e1278fab21aa88b548e527378022b773ad0 100644 --- a/src/main/java/ui/avatarmad/AvatarMADImpactConnector.java +++ b/src/main/java/ui/avatarmad/AvatarMADImpactConnector.java @@ -36,19 +36,16 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarmad; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; +import java.awt.Point; import java.util.Vector; -//import java.awt.geom.*; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.util.IconManager; /** * Class AvatarMADImpactConnector @@ -57,8 +54,8 @@ import java.util.Vector; * @version 1.0 27/08/2013 * @author Ludovic APVRILLE */ -public class AvatarMADImpactConnector extends TGConnectorWithCommentConnectionPoints { - int w, h; +public class AvatarMADImpactConnector extends AvatarMADConnector /* Issue #69 TGConnectorWithCommentConnectionPoints*/ { + // int w, h; public AvatarMADImpactConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) { super(_x, _y, _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint); @@ -67,36 +64,35 @@ public class AvatarMADImpactConnector extends TGConnectorWithCommentConnectionP myImageIcon = IconManager.imgic1008; } - - protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ - - //g.drawLine(x1, y1, x2, y2); - GraphicLib.dashedArrowWithLine(g, 1, 1, 0, x1, y1, x2, y2, false); - - // Indicate semantics - - Font f = g.getFont(); - Font old = f; - if (f.getSize() != tdp.getFontSize()) { - f = f.deriveFont((float)tdp.getFontSize()); - g.setFont(f); - } - - w = g.getFontMetrics().stringWidth(value); - h = g.getFontMetrics().getHeight(); - g.drawString(value, (x1 + x2 - w) / 2, (y1 + y2)/2); - g.setFont(old); - } - - public TGComponent extraIsOnOnlyMe(int x1, int y1) { - if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) { - return this; - } - return null; - } - +// protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ +// +// //g.drawLine(x1, y1, x2, y2); +// GraphicLib.dashedArrowWithLine(g, 1, 1, 0, x1, y1, x2, y2, false); +// +// // Indicate semantics +// +// Font f = g.getFont(); +// Font old = f; +// if (f.getSize() != tdp.getFontSize()) { +// f = f.deriveFont((float)tdp.getFontSize()); +// g.setFont(f); +// } +// +// w = g.getFontMetrics().stringWidth(value); +// h = g.getFontMetrics().getHeight(); +// g.drawString(value, (x1 + x2 - w) / 2, (y1 + y2)/2); +// g.setFont(old); +// } +// +// public TGComponent extraIsOnOnlyMe(int x1, int y1) { +// if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) { +// return this; +// } +// return null; +// } + + @Override public int getType() { return TGComponentManager.AVATARMAD_IMPACT_CONNECTOR; } - } diff --git a/src/main/java/ui/avatarmad/AvatarMADMeetConnector.java b/src/main/java/ui/avatarmad/AvatarMADMeetConnector.java index 097ea94ff1a8271caeb929987343586731180076..f1b8e739b6cf6ff1319730b55702d77e11d37d24 100644 --- a/src/main/java/ui/avatarmad/AvatarMADMeetConnector.java +++ b/src/main/java/ui/avatarmad/AvatarMADMeetConnector.java @@ -36,19 +36,16 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarmad; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; +import java.awt.Point; import java.util.Vector; -//import java.awt.geom.*; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.util.IconManager; /** * Class AvatarMADMeetConnector @@ -57,8 +54,8 @@ import java.util.Vector; * @version 1.0 05/02/2014 * @author Ludovic APVRILLE */ -public class AvatarMADMeetConnector extends TGConnectorWithCommentConnectionPoints { - int w, h; +public class AvatarMADMeetConnector extends AvatarMADConnector /* Issue #69 TGConnectorWithCommentConnectionPoints*/ { + // int w, h; public AvatarMADMeetConnector(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) { super(_x, _y, _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint); @@ -67,36 +64,34 @@ public class AvatarMADMeetConnector extends TGConnectorWithCommentConnectionPoi myImageIcon = IconManager.imgic1008; } - - protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ - - //g.drawLine(x1, y1, x2, y2); - GraphicLib.dashedArrowWithLine(g, 1, 1, 0, x1, y1, x2, y2, false); - - // Indicate semantics - - Font f = g.getFont(); - Font old = f; - if (f.getSize() != tdp.getFontSize()) { - f = f.deriveFont((float)tdp.getFontSize()); - g.setFont(f); - } - - w = g.getFontMetrics().stringWidth(value); - h = g.getFontMetrics().getHeight(); - g.drawString(value, (x1 + x2 - w) / 2, (y1 + y2)/2); - g.setFont(old); - } - - public TGComponent extraIsOnOnlyMe(int x1, int y1) { - if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) { - return this; - } - return null; - } +// protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ +// +// //g.drawLine(x1, y1, x2, y2); +// GraphicLib.dashedArrowWithLine(g, 1, 1, 0, x1, y1, x2, y2, false); +// +// // Indicate semantics +// +// Font f = g.getFont(); +// Font old = f; +// if (f.getSize() != tdp.getFontSize()) { +// f = f.deriveFont((float)tdp.getFontSize()); +// g.setFont(f); +// } +// +// w = g.getFontMetrics().stringWidth(value); +// h = g.getFontMetrics().getHeight(); +// g.drawString(value, (x1 + x2 - w) / 2, (y1 + y2)/2); +// g.setFont(old); +// } +// +// public TGComponent extraIsOnOnlyMe(int x1, int y1) { +// if (GraphicLib.isInRectangle(x1, y1, (p1.getX() + p2.getX() - w) / 2, (p1.getY() + p2.getY())/2 - h, w, h)) { +// return this; +// } +// return null; +// } public int getType() { return TGComponentManager.AVATARMAD_MEET_CONNECTOR; } - } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDBasicCanBeDisabledComponent.java b/src/main/java/ui/avatarsmd/AvatarSMDBasicCanBeDisabledComponent.java new file mode 100644 index 0000000000000000000000000000000000000000..2c6e38b07e0aa61bd520209b03a93835e78c6b8b --- /dev/null +++ b/src/main/java/ui/avatarsmd/AvatarSMDBasicCanBeDisabledComponent.java @@ -0,0 +1,25 @@ +package ui.avatarsmd; + +import ui.TDiagramPanel; +import ui.TGComponent; + +public abstract class AvatarSMDBasicCanBeDisabledComponent extends AvatarSMDBasicComponent { + + public AvatarSMDBasicCanBeDisabledComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, + boolean _pos, TGComponent _father, TDiagramPanel _tdp) { + super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.AbstractCDElement#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + if ( getFather() instanceof AvatarSMDState ) { + return getFather().isEnabled(); + } + + return true; + } +} diff --git a/src/main/java/ui/avatarsmd/AvatarSMDBasicComponent.java b/src/main/java/ui/avatarsmd/AvatarSMDBasicComponent.java index fa760549d9ed74ea867c974a66f227cd73fd69f8..3a80d4a6df0e8a5cd76d3ed91b112454339d5e2b 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDBasicComponent.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDBasicComponent.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarsmd; import ui.*; @@ -51,16 +48,18 @@ import ui.*; * @author Ludovic APVRILLE */ public abstract class AvatarSMDBasicComponent extends TGCWithoutInternalComponent implements SwallowedTGComponent { - private int lineLength = 5; + //private int lineLength = 5; public AvatarSMDBasicComponent(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); } + @Override public int getDefaultConnector() { - return TGComponentManager.AVATARSMD_CONNECTOR; + return TGComponentManager.AVATARSMD_CONNECTOR; } + @Override public void resizeWithFather() { if ((father != null) && (father instanceof AvatarSMDState)) { // Too large to fit in the father? -> resize it! @@ -70,5 +69,8 @@ public abstract class AvatarSMDBasicComponent extends TGCWithoutInternalComponen setMoveCd(x, y); } } - + + protected boolean isContainedInEnabledState() { + return getFather() instanceof AvatarSMDState && getFather().isEnabled(); + } } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDChoice.java b/src/main/java/ui/avatarsmd/AvatarSMDChoice.java index 8e7c4bf1d20027523ab21ee1a61216fe76e310c1..df16dedae65755a98a5fa4e63acacd5e3561a3b0 100755 --- a/src/main/java/ui/avatarsmd/AvatarSMDChoice.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDChoice.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarsmd; import myutil.GraphicLib; @@ -58,21 +55,21 @@ import java.awt.geom.Line2D; public class AvatarSMDChoice extends AvatarSMDBasicComponent implements EmbeddedComment, BasicErrorHighlight, PartOfInvariant { private int lineLength = 10; private int lineOutLength = 10; - private int textX1, textY1, textX2, textY2, textX3, textY3; +// private int textX1, textY1, textX2, textY2, textX3, textY3; - protected int stateOfError = 0; // Not yet checked + protected int stateOfError = 0; // Not yet checked public AvatarSMDChoice(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); width = 30; height = 30; - textX1 = -lineOutLength; - textY1 = height/2 - 5; - textX2 = width + 5; - textY2 = height/2 - 5; - textX3 = width /2 + 5; - textY3 = height + 15; +// textX1 = -lineOutLength; +// textY1 = height/2 - 5; +// textX2 = width + 5; +// textY2 = height/2 - 5; +// textX3 = width /2 + 5; +// textY3 = height + 15; nbConnectingPoint = 7; connectingPoint = new TGConnectingPoint[nbConnectingPoint]; @@ -98,6 +95,7 @@ public class AvatarSMDChoice extends AvatarSMDBasicComponent implements Embedded myImageIcon = IconManager.imgic208; } + @Override public void internalDrawing(Graphics g) { if (stateOfError > 0) { Color c = g.getColor(); @@ -126,6 +124,7 @@ public class AvatarSMDChoice extends AvatarSMDBasicComponent implements Embedded g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -150,18 +149,18 @@ public class AvatarSMDChoice extends AvatarSMDBasicComponent implements Embedded return null; } - + @Override public int getType() { return TGComponentManager.AVATARSMD_CHOICE; } + @Override public int getDefaultConnector() { - return TGComponentManager.AVATARSMD_CONNECTOR; + return TGComponentManager.AVATARSMD_CONNECTOR; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - - } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDConnector.java b/src/main/java/ui/avatarsmd/AvatarSMDConnector.java index 127a1e7912df018c2295369764a8ba89dbaa9633..220f2703531b9c4ca34b3c40dded44e3129e4de4 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDConnector.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDConnector.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.avatarsmd; import myutil.GraphicLib; @@ -124,6 +123,7 @@ public class AvatarSMDConnector extends TGConnectorWithCommentConnectionPoints i tgc.setTimes(minDelay, maxDelay, minCompute, maxCompute); } + @Override protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2) { if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) { g.drawLine(x1, y1, x2, y2); @@ -132,6 +132,7 @@ public class AvatarSMDConnector extends TGConnectorWithCommentConnectionPoints i } } + @Override public boolean editOndoubleClick(JFrame frame) { AvatarSMDTransitionInfo info = getAvatarSMDTransitionInfo(); if (info == null) { @@ -140,6 +141,7 @@ public class AvatarSMDConnector extends TGConnectorWithCommentConnectionPoints i return info.editOndoubleClick(frame); } + @Override public int getType() { return TGComponentManager.AVATARSMD_CONNECTOR; } @@ -157,66 +159,191 @@ public class AvatarSMDConnector extends TGConnectorWithCommentConnectionPoints i return getAvatarSMDTransitionInfo().getGuard(); } - public String getTotalMinDelay() { - String s1 = getAvatarSMDTransitionInfo().getAfterMinDelay(); - String s2 = getAvatarSMDTransitionInfo().getComputeMinDelay(); - return addedDelays(s1, s2); - } - - public String getTotalMaxDelay() { - String s1 = getAvatarSMDTransitionInfo().getAfterMaxDelay(); - String s2 = getAvatarSMDTransitionInfo().getComputeMaxDelay(); - return addedDelays(s1, s2); - } - - public String addedDelays(String s1, String s2) { - if (s1.trim().length() == 0) { - return s2.trim(); - } else { - if (s2.trim().length() == 0) { - return s1; - } else { - return "(" + s1 + ") + (" + s2 + ")"; - } - } + public String getEffectiveGuard() { + return getAvatarSMDTransitionInfo().getEffectiveGuard(); } +// +// public String getTotalMinDelay() { +// String s1 = getAvatarSMDTransitionInfo().getAfterMinDelay(); +// String s2 = getAvatarSMDTransitionInfo().getComputeMinDelay(); +// return addedDelays(s1, s2); +// } +// +// public String getTotalMaxDelay() { +// String s1 = getAvatarSMDTransitionInfo().getAfterMaxDelay(); +// String s2 = getAvatarSMDTransitionInfo().getComputeMaxDelay(); +// return addedDelays(s1, s2); +// } +// +// public String addedDelays(String s1, String s2) { +// if (s1.trim().length() == 0) { +// return s2.trim(); +// } else { +// if (s2.trim().length() == 0) { +// return s1; +// } else { +// return "(" + s1 + ") + (" + s2 + ")"; +// } +// } +// } public Vector<String> getActions() { return getAvatarSMDTransitionInfo().getActions(); } + + public Vector<String> getEffectiveActions() { + return getAvatarSMDTransitionInfo().getEffectiveActions(); + } public String getAfterMinDelay() { return getAvatarSMDTransitionInfo().getAfterMinDelay(); } + + public String getEffectiveAfterMinDelay() { + return getAvatarSMDTransitionInfo().getEffectiveAfterMinDelay(); + } public String getAfterMaxDelay() { return getAvatarSMDTransitionInfo().getAfterMaxDelay(); } + public String getEffectiveAfterMaxDelay() { + return getAvatarSMDTransitionInfo().getEffectiveAfterMaxDelay(); + } public String getComputeMinDelay() { return getAvatarSMDTransitionInfo().getComputeMinDelay(); } + + public String getEffectiveComputeMinDelay() { + return getAvatarSMDTransitionInfo().getEffectiveComputeMinDelay(); + } public String getComputeMaxDelay() { return getAvatarSMDTransitionInfo().getComputeMaxDelay(); } - public String getProbability() { - return getAvatarSMDTransitionInfo().getProbability(); + public String getEffectiveComputeMaxDelay() { + return getAvatarSMDTransitionInfo().getEffectiveComputeMaxDelay(); } - - - - public String getFilesToInclude() { - return getAvatarSMDTransitionInfo().getFilesToInclude(); + public String getProbability() { + return getAvatarSMDTransitionInfo().getProbability(); } - public String getCodeToInclude() { - return getAvatarSMDTransitionInfo().getCodeToInclude(); + public String getEffectiveProbability() { + return getAvatarSMDTransitionInfo().getEffectiveProbability(); } +// +// public String getFilesToInclude() { +// return getAvatarSMDTransitionInfo().getFilesToInclude(); +// } +// +// public String getCodeToInclude() { +// return getAvatarSMDTransitionInfo().getCodeToInclude(); +// } public String getAttributes() { return getAvatarSMDTransitionInfo().getAttributes(); } + + /** + * Issue #69 + * @param _enabled + */ + @Override + public void setEnabled( final boolean _enabled ) { + if ( p2 != null ) { + p2.acceptForward( new EnablingAvatarSMDConnectorVisitor( _enabled ) ); + } + } + + /** + * Issue #69 + * @return + */ + @Override + public boolean canBeDisabled() { + if ( p2 != null ) { + if ( p2.getFather() instanceof AvatarSMDStopState ) { + return false; + } + } + + return canBeDisabledContainer(); + } + + public boolean canBeDisabledContainer() { + if ( p2 != null ) { + if ( p2.getFather() instanceof TGComponent && ( (TGComponent) p2.getFather() ).getFather() instanceof AvatarSMDState ) { + if ( !( (TGComponent) p2.getFather() ).getFather().isEnabled() ) { + return false; + } + } + } + + if ( p1 != null ) { + if ( p1.getFather() instanceof TGComponent && ( (TGComponent) p1.getFather() ).getFather() instanceof AvatarSMDState ) { + if ( !( (TGComponent) p1.getFather() ).getFather().isEnabled() ) { + return false; + } + } + } + + return true; + } + + public boolean isContainedInEnabledState() { + final AvatarSMDState sourceContainingState = getContainingState( p1 ); + + if ( sourceContainingState != null && sourceContainingState.isEnabled() ) { + return true; + } + + final AvatarSMDState targetContainingState = getContainingState( p2 ); + + return targetContainingState != null && targetContainingState.isEnabled(); + } + + public AvatarSMDState getContainingState() { + final AvatarSMDState sourceContainingState = getContainingState( p1 ); + + final AvatarSMDState targetContainingState = getContainingState( p2 ); + + if ( sourceContainingState == targetContainingState ) { + return sourceContainingState; + } + + return null; + } + + private AvatarSMDState getContainingState( final TGConnectingPoint point ) { + if ( p1 == null ) { + return null; + } + + if ( point.getFather() instanceof TGComponent ) { + final TGComponent sourceComponent = (TGComponent) point.getFather(); + + if ( sourceComponent.getFather() instanceof AvatarSMDState ) { + return (AvatarSMDState) sourceComponent.getFather(); + } + } + + return null; + } + + + /** Issue #69 + * @return + */ + public boolean isEnabled( boolean checkBranch ) { + if ( checkBranch && p2 != null ) { + final ForwardComponentsEnabledVisitor visitor = new ForwardComponentsEnabledVisitor(); + p2.acceptForward( visitor ); + + return visitor.isEnabled(); + } + + return super.isEnabled(); + } } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java index c4e16b68cd489248aa8f6c8b655aa8559586e5c8..da260e9cb69575c3359a7b772615b57eb6419349 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDExpireTimer.java @@ -40,6 +40,7 @@ package ui.avatarsmd; import java.awt.Color; import java.awt.Graphics; +import java.awt.Polygon; import java.awt.geom.Line2D; import java.util.List; @@ -67,17 +68,22 @@ import ui.window.JDialogAvatarTimer; * @version 1.0 15/07/2010 * @author Ludovic APVRILLE */ -public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements BasicErrorHighlight, PartOfInvariant { - protected int lineLength = 5; - protected int textX = 5; - protected int textY = 15; - protected int arc = 5; - protected int linebreak = 10; +public class AvatarSMDExpireTimer extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements BasicErrorHighlight, PartOfInvariant { + + protected int lineLength = 5; + + protected int textX = 5; + + protected int textY = 15; + + protected int arc = 5; + + protected int linebreak = 10; protected int hourglassWidth = 10; + protected int hourglassSpace = 2; - protected int stateOfError = 0; // Not yet checked public AvatarSMDExpireTimer(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { @@ -153,13 +159,27 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas g.drawLine(x1, y1+height1, x1+linebreak, y1+height1/2); g.setColor(c); - g.drawLine(x, y, x+width, y); - g.drawLine(x+width, y, x+width, y+height); - g.drawLine(x, y+height, x+width, y+height); - g.drawLine(x, y, x+linebreak, y+height/2); - g.drawLine(x, y+height, x+linebreak, y+height/2); - - // hourglass + final Polygon shape = new Polygon(); + shape.addPoint( x, y ); + shape.addPoint( x + width, y ); + shape.addPoint( x + width, y + height ); + shape.addPoint( x, y + height ); + shape.addPoint( x + linebreak, y + height / 2 ); + g.drawPolygon( shape ); +// g.drawLine(x, y, x+width, y); +// g.drawLine(x+width, y, x+width, y+height); +// g.drawLine(x, y+height, x+width, y+height); +// g.drawLine(x, y, x+linebreak, y+height/2); +// g.drawLine(x, y+height, x+linebreak, y+height/2); + + // Issue #69 + if ( !isEnabled() && isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillPolygon( shape ); + g.setColor( c ); + } + + // hourglass g.setColor(ColorManager.AVATAR_SET_TIMER); g.drawLine(x+width+hourglassSpace+1, y+1, x+width+hourglassSpace + hourglassWidth+1, y+1); g.drawLine(x+width+hourglassSpace+1, y+height+1, x+width+hourglassSpace + hourglassWidth+1, y+height+1); @@ -173,8 +193,6 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas //g.drawString("sig()", x+(width-w) / 2, y); g.drawString(value, x + (width - w) / 2 + textX, y + textY); - - } @Override @@ -225,20 +243,19 @@ public class AvatarSMDExpireTimer extends AvatarSMDBasicComponent implements Bas value = "expire(" + val0 + ")"; return true; - } - - - + @Override public int getType() { return TGComponentManager.AVATARSMD_EXPIRE_TIMER; } + @Override public int getDefaultConnector() { return TGComponentManager.AVATARSMD_CONNECTOR; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDLibraryFunctionCall.java b/src/main/java/ui/avatarsmd/AvatarSMDLibraryFunctionCall.java index 97ee9c8ee5a6e585eb8239de40ec8fd8d91cae89..289727f7299a19725103e6378669b3cd4297d937 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDLibraryFunctionCall.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDLibraryFunctionCall.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarsmd; import myutil.GraphicLib; @@ -51,18 +48,23 @@ import ui.util.IconManager; import ui.window.JDialogSMDLibraryFunctionCall; import javax.swing.*; -import java.awt.*; -import java.util.LinkedList; +import java.awt.Color; +import java.awt.Graphics; +import java.util.LinkedList; +import java.util.List; /** * @version 1.0 04.18.2016 * @author Florian LUGOU */ -public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComponent implements BasicErrorHighlight { - private LinkedList<TAttribute> parameters; - private LinkedList<AvatarSignal> signals; - private LinkedList<TAttribute> returnAttributes; +public class AvatarSMDLibraryFunctionCall extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 TGCScalableWithoutInternalComponent*/ implements BasicErrorHighlight { + + private List<TAttribute> parameters; + + private List<AvatarSignal> signals; + + private List<TAttribute> returnAttributes; private AvatarBDLibraryFunction libraryFunction; @@ -104,8 +106,8 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp this.myImageIcon = IconManager.imgic904; } + @Override public void internalDrawing(Graphics graph) { - this.value = this.prettyPrint (); int [] px1 = {this.x, this.x+this.width-AvatarSMDLibraryFunctionCall.linebreak, this.x+this.width, this.x+this.width-AvatarSMDLibraryFunctionCall.linebreak, this.x, this.x+AvatarSMDLibraryFunctionCall.linebreak}; @@ -128,6 +130,13 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp graph.drawPolygon (px1, py1, 6); + // Issue #69 + if ( !isEnabled() && isContainedInEnabledState() ) { + graph.setColor( ColorManager.DISABLED_FILLING ); + graph.fillPolygon( px1, py1, 6 ); + graph.setColor( c ); + } + graph.drawLine (this.x+this.width/2, this.y, this.x+this.width/2, this.y - AvatarSMDLibraryFunctionCall.lineLength); graph.drawLine (this.x+this.width/2, this.y+this.height, this.x+this.width/2, this.y + AvatarSMDLibraryFunctionCall.lineLength + this.height); @@ -149,6 +158,7 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp graph.drawString (this.value, this.x + (this.width - stringWidth) / 2 , this.y + (this.height+h)/2); } + @Override public TGComponent isOnMe(int _x, int _y) { if (_x < this.x || _x > this.x + this.width || _y > this.y + this.height || _y < this.y) return null; @@ -175,6 +185,7 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp return this; } + @Override public boolean editOndoubleClick(JFrame frame) { JDialogSMDLibraryFunctionCall dialog = new JDialogSMDLibraryFunctionCall ( this, @@ -196,27 +207,27 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp this.libraryFunction = libraryFunction; } - public LinkedList<TAttribute> getParameters () { + public List<TAttribute> getParameters () { return this.parameters; } - public void setParameters (LinkedList<TAttribute> parameters) { + public void setParameters( List<TAttribute> parameters) { this.parameters = parameters; } - public LinkedList<AvatarSignal> getSignals () { + public List<AvatarSignal> getSignals () { return this.signals; } - public void setSignals (LinkedList<AvatarSignal> signals) { + public void setSignals( List<AvatarSignal> signals) { this.signals = signals; } - public LinkedList<TAttribute> getReturnAttributes () { + public List<TAttribute> getReturnAttributes () { return this.returnAttributes; } - public void setReturnAttributes (LinkedList<TAttribute> returnAttributes) { + public void setReturnAttributes( List<TAttribute> returnAttributes) { this.returnAttributes = returnAttributes; } @@ -264,10 +275,12 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp return builder.toString (); } + @Override public int getDefaultConnector() { return TGComponentManager.AVATARSMD_CONNECTOR; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } @@ -426,7 +439,7 @@ public class AvatarSMDLibraryFunctionCall extends TGCScalableWithoutInternalComp } catch (MalformedModelingException e) { throw e; } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } if (this.libraryFunction != null && diff --git a/src/main/java/ui/avatarsmd/AvatarSMDParallel.java b/src/main/java/ui/avatarsmd/AvatarSMDParallel.java deleted file mode 100755 index f36631d091a3d77e5a97cf692f414cb218ee8a05..0000000000000000000000000000000000000000 --- a/src/main/java/ui/avatarsmd/AvatarSMDParallel.java +++ /dev/null @@ -1,123 +0,0 @@ -/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille - * - * ludovic.apvrille AT enst.fr - * - * This software is a computer program whose purpose is to allow the - * edition of TURTLE analysis, design and deployment diagrams, to - * allow the generation of RT-LOTOS or Java code from this diagram, - * and at last to allow the analysis of formal validation traces - * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP - * from INRIA Rhone-Alpes. - * - * This software is governed by the CeCILL license under French law and - * abiding by the rules of distribution of free software. You can use, - * modify and/ or redistribute the software under the terms of the CeCILL - * license as circulated by CEA, CNRS and INRIA at the following URL - * "http://www.cecill.info". - * - * As a counterpart to the access to the source code and rights to copy, - * modify and redistribute granted by the license, users are provided only - * with a limited warranty and the software's author, the holder of the - * economic rights, and the successive licensors have only limited - * liability. - * - * In this respect, the user's attention is drawn to the risks associated - * with loading, using, modifying and/or developing or reproducing the - * software by the user in light of its specific status of free software, - * that may mean that it is complicated to manipulate, and that also - * therefore means that it is reserved for developers and experienced - * professionals having in-depth computer knowledge. Users are therefore - * encouraged to load and test the software's suitability as regards their - * requirements in conditions enabling the security of their systems and/or - * data to be ensured and, more generally, to use and operate it in the - * same conditions as regards security. - * - * The fact that you are presently reading this means that you have had - * knowledge of the CeCILL license and that you accept its terms. - */ - - - - -package ui.avatarsmd; - -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; - -/** - * Class AvatarSMDParallel - * Parallel operator. - * To be used in Avatar State Machine Diagrams - * Creation: 13/04/2010 - * @version 1.0 13/04/2010 - * @author Ludovic APVRILLE - */ -public class AvatarSMDParallel extends AvatarSMDBasicComponent{ - private int lineLength = 0; - private int textX, textY; - - public AvatarSMDParallel(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { - super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - - - width = 150; - height = 5; - - textX = width - 10; - textY = height - 8; - - nbConnectingPoint = 10; - connectingPoint = new TGConnectingPoint[10]; - connectingPoint[0] = new AvatarSMDConnectingPoint(this, 0, -lineLength, true, false, 0.167, 0.0); - connectingPoint[1] = new AvatarSMDConnectingPoint(this, 0, -lineLength, true, false, 0.333, 0.0); - connectingPoint[2] = new AvatarSMDConnectingPoint(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[3] = new AvatarSMDConnectingPoint(this, 0, -lineLength, true, false, 0.667, 0.0); - connectingPoint[4] = new AvatarSMDConnectingPoint(this, 0, -lineLength, true, false, 0.833, 0.0); - connectingPoint[5] = new AvatarSMDConnectingPoint(this, 0, lineLength, false, true, 0.167, 1.0); - connectingPoint[6] = new AvatarSMDConnectingPoint(this, 0, lineLength, false, true, 0.333, 1.0); - connectingPoint[7] = new AvatarSMDConnectingPoint(this, 0, lineLength, false, true, 0.5, 1.0); - connectingPoint[8] = new AvatarSMDConnectingPoint(this, 0, lineLength, false, true, 0.667, 1.0); - connectingPoint[9] = new AvatarSMDConnectingPoint(this, 0, lineLength, false, true, 0.833, 1.0); - addTGConnectingPointsCommentCorner(); - - nbInternalTGComponent = 0; - - moveable = true; - editable = false; - removable = true; - - name = "parallel / synchro"; - - myImageIcon = IconManager.imgic206; - } - - public void internalDrawing(Graphics g) { - g.drawRect(x, y, width, height); - g.fillRect(x, y, width, height); - } - - public TGComponent isOnMe(int x1, int y1) { - if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { - return this; - } - return null; - } - - public int getType() { - return TGComponentManager.AVATARSMD_PARALLEL; - } - - public int getDefaultConnector() { - return TGComponentManager.AVATARSMD_CONNECTOR; - } -} - - - - - - - diff --git a/src/main/java/ui/avatarsmd/AvatarSMDRandom.java b/src/main/java/ui/avatarsmd/AvatarSMDRandom.java index 79528c6ccbbef9c1f5d8f958a55f637870fa969a..2b4fce07b79bbefeb1018bcb81454528d3f1928d 100755 --- a/src/main/java/ui/avatarsmd/AvatarSMDRandom.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDRandom.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarsmd; import myutil.GraphicLib; @@ -60,7 +57,7 @@ import java.awt.geom.Line2D; * @version 1.0 12/07/2010 * @author Ludovic APVRILLE */ -public class AvatarSMDRandom extends AvatarSMDBasicComponent implements EmbeddedComment, BasicErrorHighlight { +public class AvatarSMDRandom extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements EmbeddedComment, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -97,15 +94,16 @@ public class AvatarSMDRandom extends AvatarSMDBasicComponent implements Embedde myImageIcon = IconManager.imgic912; } - public void makeValue() { + private void makeValue() { valueRandom = variable + " = RANDOM" + functionId + "[" + minValue + ", " + maxValue + "]"; } public void setVariable(String v){ variable=v; } - public void internalDrawing(Graphics g) { + @Override + public void internalDrawing(Graphics g) { if (valueRandom.length() == 0) { makeValue(); } @@ -118,8 +116,9 @@ public class AvatarSMDRandom extends AvatarSMDBasicComponent implements Embedde //updateConnectingPoints(); } + Color c = g.getColor(); + if (stateOfError > 0) { - Color c = g.getColor(); switch(stateOfError) { case ErrorHighlight.OK: g.setColor(ColorManager.RANDOM); @@ -132,13 +131,22 @@ public class AvatarSMDRandom extends AvatarSMDBasicComponent implements Embedde } g.drawRoundRect(x, y, width, height, arc, arc); - g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); + + // Issue #69 + if ( !isEnabled() && isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillRoundRect(x, y, width, height, arc, arc); + g.setColor( c ); + } + + g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); //g.drawLine(x+width, y+height/2, x+width +lineLength, y+height/2); g.drawString(valueRandom, x + (width - w) / 2 , y + textY); } + @Override public boolean editOndoubleClick(JFrame frame) { boolean error = false; String errors = ""; @@ -194,6 +202,7 @@ public class AvatarSMDRandom extends AvatarSMDBasicComponent implements Embedde return true; } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -226,6 +235,7 @@ public class AvatarSMDRandom extends AvatarSMDBasicComponent implements Embedde return functionId; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data variable=\""); @@ -243,18 +253,13 @@ public class AvatarSMDRandom extends AvatarSMDBasicComponent implements Embedde @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{ - // try { - NodeList nli; Node n1, n2; Element elt; // int k; String s; - // - // - for(int i=0; i<nl.getLength(); i++) { n1 = nl.item(i); // @@ -284,19 +289,18 @@ public class AvatarSMDRandom extends AvatarSMDBasicComponent implements Embedde } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeValue(); } - + @Override public int getType() { return TGComponentManager.AVATARSMD_RANDOM; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - - } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java b/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java index 97637c476049338a64d8c0ad4dda966fccab62ad..b705e2a4c382fc40585864f40aa41471df5dc4d0 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDReceiveSignal.java @@ -40,8 +40,10 @@ package ui.avatarsmd; import java.awt.Color; import java.awt.Graphics; +import java.awt.Polygon; import java.awt.geom.Line2D; import java.util.List; +import java.util.Map; import java.util.Vector; import java.util.concurrent.ConcurrentHashMap; @@ -73,7 +75,7 @@ import ui.window.JDialogAvatarSignal; * @version 1.0 12/04/2010 * @author Ludovic APVRILLE */ -public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements CheckableAccessibility, LinkedReference, CheckableLatency, BasicErrorHighlight, PartOfInvariant { +public class AvatarSMDReceiveSignal extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements CheckableAccessibility, LinkedReference, CheckableLatency, BasicErrorHighlight, PartOfInvariant { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -81,14 +83,12 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C protected int linebreak = 10; protected int textX1 = 2; - private ConcurrentHashMap<String, String> latencyVals; - + private Map<String, String> latencyVals; protected int latencyX=30; protected int latencyY=25; protected int textWidth=10; protected int textHeight=20; - protected int stateOfError = 0; // Not yet checked @@ -125,7 +125,6 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C @Override public void internalDrawing(Graphics g) { - int w = g.getFontMetrics().stringWidth(value + textX1); int w1 = Math.max(minWidth, w + 2 * textX); if ((w1 != width) & (!tdp.isScaled())) { @@ -134,7 +133,6 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C //updateConnectingPoints(); } - if (stateOfError > 0) { Color c = g.getColor(); switch(stateOfError) { @@ -173,13 +171,27 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C g.drawLine(x1, y1, x1+linebreak, y1+height1/2); g.drawLine(x1, y1+height1, x1+linebreak, y1+height1/2); g.setColor(c); + + final Polygon shape = new Polygon(); + shape.addPoint( x, y ); + shape.addPoint( x + width, y ); + shape.addPoint( x + width, y + height ); + shape.addPoint( x, y + height ); + shape.addPoint( x + linebreak, y + height / 2 ); + g.drawPolygon( shape ); - g.drawLine(x, y, x+width, y); - g.drawLine(x+width, y, x+width, y+height); - g.drawLine(x, y+height, x+width, y+height); - g.drawLine(x, y, x+linebreak, y+height/2); - g.drawLine(x, y+height, x+linebreak, y+height/2); +// g.drawLine(x, y, x+width, y); +// g.drawLine(x+width, y, x+width, y+height); +// g.drawLine(x, y+height, x+width, y+height); +// g.drawLine(x, y, x+linebreak, y+height/2); +// g.drawLine(x, y+height, x+linebreak, y+height/2); + // Issue #69 + if ( !isEnabled() && isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillPolygon( shape ); + g.setColor( c ); + } //g.drawString("sig()", x+(width-w) / 2, y); g.drawString(value, x + linebreak + textX1, y + textY); @@ -191,6 +203,7 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C drawLatencyInformation(g); } } + if (reference!=null){ if (reference instanceof AvatarRDRequirement){ AvatarRDRequirement refReq = (AvatarRDRequirement) reference; @@ -198,7 +211,8 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C } } } - public void drawLatencyInformation(Graphics g){ + + private void drawLatencyInformation(Graphics g){ int index=1; for (String s:latencyVals.keySet()){ int w = g.getFontMetrics().stringWidth(s); @@ -278,9 +292,8 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C } } if (reference instanceof TMLADReadChannel){ - // TMLADReadChannel rc = (TMLADReadChannel) reference; - ConcurrentHashMap<String, String> refLats =rc.getLatencyMap(); + Map<String, String> refLats =rc.getLatencyMap(); // for (String checkpoint:refLats.keySet()){ if (s.split("\\-")[1].split(":")[0].equals(checkpoint.split("channel:")[1].split(" ")[0])){ @@ -304,6 +317,7 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C } } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -316,7 +330,7 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C return null; } - public void makeValue() { + //public void makeValue() { /*boolean first = true; value = eventName + "("; for(int i=0; i<nParam; i++) { @@ -332,7 +346,7 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C } value += ")";*/ - } + // } public String getSignalName() { if (value == null) { @@ -420,15 +434,17 @@ public class AvatarSMDReceiveSignal extends AvatarSMDBasicComponent implements C } - + @Override public int getType() { return TGComponentManager.AVATARSMD_RECEIVE_SIGNAL; } - public int getDefaultConnector() { - return TGComponentManager.AVATARSMD_CONNECTOR; + @Override + public int getDefaultConnector() { + return TGComponentManager.AVATARSMD_CONNECTOR; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java index a65555c45fd797ff542ecf7cc4cf58f125113892..6eab76979e64f20b527b7d8fa475bd9095d2c9f3 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDResetTimer.java @@ -40,6 +40,7 @@ package ui.avatarsmd; import java.awt.Color; import java.awt.Graphics; +import java.awt.Polygon; import java.awt.geom.Line2D; import java.util.List; @@ -67,7 +68,7 @@ import ui.window.JDialogAvatarTimer; * @version 1.0 15/07/2010 * @author Ludovic APVRILLE */ -public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements BasicErrorHighlight, PartOfInvariant { +public class AvatarSMDResetTimer extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements BasicErrorHighlight, PartOfInvariant { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -105,8 +106,8 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi myImageIcon = IconManager.imgic904; } + @Override public void internalDrawing(Graphics g) { - int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); if ((w1 != width) & (!tdp.isScaled())) { @@ -150,11 +151,26 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi g.drawLine(x1+width1-linebreak, y1+height1, x1+width1, y1+height1/2); g.setColor(c); - g.drawLine(x, y, x+width-linebreak, y); - g.drawLine(x, y+height, x+width-linebreak, y+height); - g.drawLine(x, y, x, y+height); - g.drawLine(x+width-linebreak, y, x+width, y+height/2); - g.drawLine(x+width-linebreak, y+height, x+width, y+height/2); + final Polygon shape = new Polygon(); + shape.addPoint( x, y ); + shape.addPoint( x + width - linebreak, y ); + shape.addPoint( x + width, y + height / 2 ); + shape.addPoint( x + width - linebreak, y + height ); + shape.addPoint(x, y + height ); + + g.drawPolygon( shape ); +// g.drawLine(x, y, x+width-linebreak, y); +// g.drawLine(x, y+height, x+width-linebreak, y+height); +// g.drawLine(x, y, x, y+height); +// g.drawLine(x+width-linebreak, y, x+width, y+height/2); +// g.drawLine(x+width-linebreak, y+height, x+width, y+height/2); + + // Issue #69 + if ( !isEnabled() && isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillPolygon( shape ); + g.setColor( c ); + } // hourglass g.setColor(ColorManager.AVATAR_SET_TIMER); @@ -170,8 +186,6 @@ public class AvatarSMDResetTimer extends AvatarSMDBasicComponent implements Basi //g.drawString("sig()", x+(width-w) / 2, y); g.drawString(value, x + (width - w) / 2 , y + textY); - - } @Override diff --git a/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java b/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java index 55fd6ffca7a87bdaea11567e708ca8a9bf6eb834..aefcf54dface93a33001f78b6cf39474a4137f4d 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDSendSignal.java @@ -40,8 +40,10 @@ package ui.avatarsmd; import java.awt.Color; import java.awt.Graphics; +import java.awt.Polygon; import java.awt.geom.Line2D; import java.util.List; +import java.util.Map; import java.util.Vector; import java.util.concurrent.ConcurrentHashMap; @@ -72,7 +74,7 @@ import ui.window.JDialogAvatarSignal; * @version 1.0 12/04/2010 * @author Ludovic APVRILLE */ -public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements CheckableAccessibility, LinkedReference, CheckableLatency, BasicErrorHighlight, PartOfInvariant { +public class AvatarSMDSendSignal extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements CheckableAccessibility, LinkedReference, CheckableLatency, BasicErrorHighlight, PartOfInvariant { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -127,7 +129,6 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec width = w1; //updateConnectingPoints(); } - if (stateOfError > 0) { Color c = g.getColor(); switch(stateOfError) { @@ -167,17 +168,33 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec g.drawLine(x1+width1-linebreak, y1+height1, x1+width1, y1+height1/2); g.setColor(c); - g.drawLine(x, y, x+width-linebreak, y); - g.drawLine(x, y+height, x+width-linebreak, y+height); - g.drawLine(x, y, x, y+height); - g.drawLine(x+width-linebreak, y, x+width, y+height/2); - g.drawLine(x+width-linebreak, y+height, x+width, y+height/2); + final Polygon shape = new Polygon(); + shape.addPoint( x, y ); + shape.addPoint( x + width - linebreak, y ); + shape.addPoint( x + width, y + height / 2 ); + shape.addPoint( x + width - linebreak, y + height ); + shape.addPoint( x, y + height ); + + g.drawPolygon( shape ); + + // Issue #69 + if ( !isEnabled() && isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillPolygon( shape ); + g.setColor( c ); + } +// g.drawLine(x, y, x+width-linebreak, y); +// g.drawLine(x, y+height, x+width-linebreak, y+height); +// g.drawLine(x, y, x, y+height); +// g.drawLine(x+width-linebreak, y, x+width, y+height/2); +// g.drawLine(x+width-linebreak, y+height, x+width, y+height/2); //g.drawString("sig()", x+(width-w) / 2, y); g.drawString(value, x + (width - w) / 2 , y + textY); //g.drawString("Reference " + reference, x-latencyX/2, y+latencyY/2); - if (getCheckLatency()){ + + if (getCheckLatency()){ ConcurrentHashMap<String, String> latency =tdp.getMGUI().getLatencyVals(getAVATARID()); if (latency!=null){ latencyVals=latency; @@ -192,7 +209,7 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec } } - public void drawLatencyInformation(Graphics g){ + private void drawLatencyInformation(Graphics g){ int index=1; for (String s:latencyVals.keySet()){ int w = g.getFontMetrics().stringWidth(s); @@ -274,7 +291,7 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec if (reference instanceof TMLADWriteChannel){ // TMLADWriteChannel rc = (TMLADWriteChannel) reference; - ConcurrentHashMap<String, String> refLats =rc.getLatencyMap(); + Map<String, String> refLats =rc.getLatencyMap(); // for (String checkpoint:refLats.keySet()){ if (s.split("\\-")[1].split(":")[0].equals(checkpoint.split(":")[1].split(" ")[0])){ @@ -292,7 +309,6 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec } } - g.drawString(latencyVals.get(s), x-latencyX/2, y-latencyY*index/2); g.setColor(c); index++; @@ -312,23 +328,23 @@ public class AvatarSMDSendSignal extends AvatarSMDBasicComponent implements Chec return null; } - public void makeValue() { - /*boolean first = true; - value = eventName + "("; - for(int i=0; i<nParam; i++) { - if (params[i].length() > 0) { - if (!first) { - value += ", " + params[i]; - } else { - first = false; - value += params[i]; - } - - } - } - value += ")";*/ - - } +// public void makeValue() { +// /*boolean first = true; +// value = eventName + "("; +// for(int i=0; i<nParam; i++) { +// if (params[i].length() > 0) { +// if (!first) { +// value += ", " + params[i]; +// } else { +// first = false; +// value += params[i]; +// } +// +// } +// } +// value += ")";*/ +// +// } public String getSignalName() { if (value == null) { diff --git a/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java b/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java index 952f1039cc9a7b8a54e77d55bb4c820ed35f50c1..d5915ffa4f2ec4fd11e375d407685bcede6759a0 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDSetTimer.java @@ -40,6 +40,7 @@ package ui.avatarsmd; import java.awt.Color; import java.awt.Graphics; +import java.awt.Polygon; import java.awt.geom.Line2D; import java.util.List; @@ -67,7 +68,7 @@ import ui.window.JDialogAvatarTimer; * @version 1.0 15/07/2010 * @author Ludovic APVRILLE */ -public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicErrorHighlight, PartOfInvariant { +public class AvatarSMDSetTimer extends AvatarSMDBasicCanBeDisabledComponent /* Issue #69 AvatarSMDBasicComponent*/ implements BasicErrorHighlight, PartOfInvariant { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -149,14 +150,30 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE g.drawLine(x1+width1-linebreak, y1, x1+width1, y1+height1/2); g.drawLine(x1+width1-linebreak, y1+height1, x1+width1, y1+height1/2); g.setColor(c); + + final Polygon shape = new Polygon(); + shape.addPoint( x, y ); + shape.addPoint( x + width - linebreak, y ); + shape.addPoint( x + width, y + height / 2 ); + shape.addPoint( x + width - linebreak, y + height ); + shape.addPoint(x, y + height ); - g.drawLine(x, y, x+width-linebreak, y); - g.drawLine(x, y+height, x+width-linebreak, y+height); - g.drawLine(x, y, x, y+height); - g.drawLine(x+width-linebreak, y, x+width, y+height/2); - g.drawLine(x+width-linebreak, y+height, x+width, y+height/2); + g.drawPolygon( shape ); +// +// g.drawLine(x, y, x+width-linebreak, y); +// g.drawLine(x, y+height, x+width-linebreak, y+height); +// g.drawLine(x, y, x, y+height); +// g.drawLine(x+width-linebreak, y, x+width, y+height/2); +// g.drawLine(x+width-linebreak, y+height, x+width, y+height/2); - // hourglass + // Issue #69 + if ( !isEnabled() && isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillPolygon( shape ); + g.setColor( c ); + } + + // hourglass g.setColor(ColorManager.AVATAR_SET_TIMER); g.drawLine(x+width+hourglassSpace+1, y+1, x+width+hourglassSpace + hourglassWidth+1, y+1); g.drawLine(x+width+hourglassSpace+1, y+height+1, x+width+hourglassSpace + hourglassWidth+1, y+height+1); @@ -168,12 +185,8 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE g.drawLine(x+width+hourglassSpace, y, x+width+hourglassSpace + hourglassWidth, y+height); g.drawLine(x+width+hourglassSpace, y+height, x+width+hourglassSpace + hourglassWidth, y); - - //g.drawString("sig()", x+(width-w) / 2, y); g.drawString(value, x + (width - w) / 2 , y + textY); - - } @Override @@ -239,18 +252,18 @@ public class AvatarSMDSetTimer extends AvatarSMDBasicComponent implements BasicE return true; } - - - + @Override public int getType() { return TGComponentManager.AVATARSMD_SET_TIMER; } - public int getDefaultConnector() { - return TGComponentManager.AVATARSMD_CONNECTOR; + @Override + public int getDefaultConnector() { + return TGComponentManager.AVATARSMD_CONNECTOR; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDStartState.java b/src/main/java/ui/avatarsmd/AvatarSMDStartState.java index a3b25ceca27d64caa1e730925bb8a2b5e9f50327..b815131fe67c80b6c8df60d045fa51279bbe0f27 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDStartState.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDStartState.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarsmd; import myutil.GraphicLib; @@ -56,7 +53,8 @@ import java.awt.geom.Line2D; * @author Ludovic APVRILLE */ public class AvatarSMDStartState extends AvatarSMDBasicComponent implements EmbeddedComment, PartOfInvariant{ - private int lineLength = 5; + + private int lineLength = 5; public AvatarSMDStartState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); @@ -79,11 +77,13 @@ public class AvatarSMDStartState extends AvatarSMDBasicComponent implements Embe myImageIcon = IconManager.imgic222; } + @Override public void internalDrawing(Graphics g) { g.fillOval(x, y, width, height); g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -96,12 +96,28 @@ public class AvatarSMDStartState extends AvatarSMDBasicComponent implements Embe return null; } + @Override public int getType() { return TGComponentManager.AVATARSMD_START_STATE; } + @Override public int getDefaultConnector() { - return TGComponentManager.AVATARSMD_CONNECTOR; + return TGComponentManager.AVATARSMD_CONNECTOR; } - + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#acceptBackward(ui.ICDElementVisitor) + */ + @Override + public void acceptBackward( final ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + + // Needed to escape containing composite state machine + if ( getFather() instanceof AvatarSMDState ) { + getFather().acceptBackward( visitor ); + } + } + } } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDState.java b/src/main/java/ui/avatarsmd/AvatarSMDState.java index 790ac83d49be67a6f3ff6ca6227ad4672146a39a..3f3d3415bdbf8e5fffc4f1da49bf038739d9068e 100644 --- a/src/main/java/ui/avatarsmd/AvatarSMDState.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDState.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarsmd; import myutil.Conversion; @@ -51,11 +48,15 @@ import ui.util.IconManager; import ui.window.JDialogAvatarState; import javax.swing.*; -import java.awt.*; + +import java.awt.Color; +import java.awt.Font; +import java.awt.Graphics; +import java.util.ArrayList; import java.util.LinkedList; +import java.util.List; import java.util.Vector; - /** * Class AvatarSMDState * State. To be used in AVATAR State Machine Diagrams @@ -156,7 +157,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements name = tdp.findAvatarSMDStateName("state"); setValue(name); - name = "State"; + name = "State"; oldValue = value; currentFontSize = maxFontSize; @@ -190,6 +191,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements mutexStates = null; } + @Override public void internalDrawing(Graphics g) { Font f = g.getFont(); Font fold = f; @@ -235,18 +237,22 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements } - // - Color c = g.getColor(); //g.setColor(ColorManager.AVATAR_STATE); - Color avat = ColorManager.AVATAR_STATE; - g.setColor(new Color(avat.getRed(), avat.getGreen(), Math.min(255, avat.getBlue() + (getMyDepth() * 10)))); + + // Issue #69 + if ( isEnabled() ) { + Color avat = ColorManager.AVATAR_STATE; + g.setColor(new Color(avat.getRed(), avat.getGreen(), Math.min(255, avat.getBlue() + (getMyDepth() * 10)))); + } + else { + g.setColor( ColorManager.DISABLED_FILLING ); + } + g.fillRoundRect(x, y, width, height, 5, 5); g.setColor(c); g.drawRoundRect(x, y, width, height, 5, 5); - - // Strings int w; int h = 0; @@ -306,7 +312,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements drawSecurityInformation(g); } - public void drawSecurityInformation(Graphics g) { + private void drawSecurityInformation(Graphics g) { if (securityInformation > 0) { Color c = g.getColor(); @@ -330,10 +336,9 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements g.drawRect(x-12, y, 9, 7); } - } - + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { @@ -342,13 +347,12 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements return null; } - public String getStateName() { return value; } + @Override public boolean editOndoubleClick(JFrame frame, int _x, int _y) { - oldValue = value; //String text = getName() + ": "; @@ -357,7 +361,6 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements null, getValue());*/ - JDialogAvatarState jdas = new JDialogAvatarState(frame, "Setting state parameters", value, entryCode); // jdas.setSize(600, 550); GraphicLib.centerOnParent(jdas, 600, 550 ); @@ -370,7 +373,6 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements String s = jdas.getStateName(); - if ((s != null) && (s.length() > 0) && (!s.equals(oldValue))) { //boolean b; if (!TAttribute.isAValidId(s, false, false)) { @@ -407,19 +409,19 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements entryCode = jdas.getEntryCode(); return true; - - } + @Override public void recalculateSize() { width = Math.max(width, value.length()*11); } - + @Override public int getType() { return TGComponentManager.AVATARSMD_STATE; } + @Override public boolean acceptSwallowedTGComponent(TGComponent tgc) { if (tgc instanceof AvatarSMDBasicComponent) { return true; @@ -429,6 +431,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements } + @Override public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) { boolean swallowed = false; @@ -475,6 +478,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements return true; } + @Override public void removeSwallowedTGComponent(TGComponent tgc) { removeMyInternalComponent(tgc, false); } @@ -514,7 +518,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements return false; } - + @Override public void hasBeenResized() { for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof AvatarSMDBasicComponent) { @@ -531,6 +535,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements } + @Override public void resizeWithFather() { if ((father != null) && (father instanceof AvatarSMDState)) { @@ -542,8 +547,8 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements } } - public LinkedList<AvatarSMDState> getStateList() { - LinkedList<AvatarSMDState> list = new LinkedList<AvatarSMDState>(); + public List<AvatarSMDState> getStateList() { + List<AvatarSMDState> list = new LinkedList<AvatarSMDState>(); for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof AvatarSMDState) { list.add((AvatarSMDState)(tgcomponent[i])); @@ -552,8 +557,8 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements return list; } - public LinkedList<AvatarSMDState> getFullStateList() { - LinkedList<AvatarSMDState> list = new LinkedList<AvatarSMDState>(); + public List<AvatarSMDState> getFullStateList() { + List<AvatarSMDState> list = new LinkedList<AvatarSMDState>(); for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof AvatarSMDState) { list.add((AvatarSMDState)(tgcomponent[i])); @@ -564,7 +569,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements } public boolean hasInternalStateWithName(String name) { - LinkedList<AvatarSMDState> list = getFullStateList(); + List<AvatarSMDState> list = getFullStateList(); for(AvatarSMDState s: list) { if (s.getValue().compareTo(name) ==0) { return true; @@ -573,13 +578,14 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements return false; } + @Override public int getDefaultConnector() { return TGComponentManager.AVATARSMD_CONNECTOR; } public AvatarSMDState checkForStartStateOfCompositeStates() { AvatarSMDState tgc; - LinkedList<AvatarSMDState> list = getFullStateList(); + List<AvatarSMDState> list = getFullStateList(); for(AvatarSMDState s: list) { tgc = s.checkForStartStateOfCompositeStates(); if (tgc != null) { @@ -597,6 +603,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements if (cpt > 1) { return this; } + return null; } @@ -617,6 +624,7 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements return s; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); @@ -689,10 +697,9 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } - /*if (tmpGlobalCode.trim().length() == 0) { globalCode = null; } else { @@ -704,8 +711,6 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements entryCode = Conversion.wrapText(tmpEntryCode); //TraceManager.addDev("Entry code = " + entryCode); } - - } /*public boolean hasGlobalCode() { @@ -774,7 +779,6 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements return ret; } - public void resetSecurityInfo() { securityInformation = NOT_VERIFIED; for(int i=0; i<nbInternalTGComponent; i++) { @@ -797,8 +801,146 @@ public class AvatarSMDState extends TGCScalableWithInternalComponent implements ((AvatarSMDState)tgcomponent[i]).setSecurityInfo(_info, _name); } } - } - + /* Issue #69 + * (non-Javadoc) + * @see ui.AbstractCDElement#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + if ( getFather() instanceof AvatarSMDState ) { + return getFather().isEnabled(); + } + + return true; + } + + private List<AvatarSMDConnector> getContainedConnectors() { + final List<AvatarSMDConnector> connectors = new ArrayList<AvatarSMDConnector>(); + + for ( final TGComponent component : tdp.getComponentList() ) { + if ( component instanceof AvatarSMDConnector ) { + final AvatarSMDConnector smdCon = (AvatarSMDConnector) component; + + if ( smdCon.isContainedBy( this ) ) { + connectors.add( smdCon ); + } + } + } + + return connectors; + } + + /** + * Issue #69 + * @param _enabled + */ + @Override + public void setEnabled( final boolean _enabled ) { + if ( _enabled ) { + super.setEnabled( _enabled ); + } + + // Enabling for composite states + for ( final TGComponent component : tgcomponent ) { + if ( component.canBeDisabled() ) { + component.setEnabled( _enabled ); + } + } + + for ( final AvatarSMDConnector containedConnector : getContainedConnectors() ) { + containedConnector.getAvatarSMDTransitionInfo().setEnabled( _enabled ); + } + + if ( !_enabled ) { + super.setEnabled( _enabled ); + } + + // Enabling of states with the same name + for ( final AvatarSMDState sameState : getSameStates() ) { + sameState.doSetEnabled( _enabled ); + } + } + + public List<AvatarSMDState> getSameStates() { + final List<AvatarSMDState> states = new ArrayList<AvatarSMDState>(); + + for ( final TGComponent component : tdp.getComponentList() ) { + if ( component != this && getValue() != null && component instanceof AvatarSMDState && + getFather() == component.getFather() && getValue().equals( component.getValue() ) ) { + states.add( (AvatarSMDState) component ); + } + } + + return states; + } + + public AvatarSMDStartState getCompositeStartState() { + if ( tgcomponent == null ) { + return null; + } + + for ( final TGComponent subCompo : tgcomponent ) { + if ( subCompo instanceof AvatarSMDStartState ) { + return (AvatarSMDStartState) subCompo; + } + } + + return null; + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#acceptForward(ui.ICDElementVisitor) + */ + @Override + public void acceptForward( final ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + final AvatarSMDStartState subStartElement = getCompositeStartState(); + + if ( subStartElement != null ) { + subStartElement.acceptForward( visitor ); + } + + if ( connectingPoint != null ) { + for ( final TGConnectingPoint point : connectingPoint ) { + final TGConnector connector = getConnectorConnectedTo( point ); + + if ( connector != null && point == connector.getTGConnectingPointP1() ) { + point.acceptForward( visitor ); + } + } + } + + // Also visit the states with the same name + for ( final AvatarSMDState state : getSameStates() ) { + state.acceptForward( visitor ); + } + } + } + + /* Issue #69 + * (non-Javadoc) + * @see ui.CDElement#acceptBackward(ui.ICDElementVisitor) + */ + @Override + public void acceptBackward( final ICDElementVisitor visitor ) { + if ( visitor.visit( this ) ) { + if ( connectingPoint != null ) { + for ( final TGConnectingPoint point : connectingPoint ) { + final TGConnector connector = getConnectorConnectedTo( point ); + + if ( connector != null && point == connector.getTGConnectingPointP2() ) { + point.acceptBackward( visitor ); + } + } + } + } + + // Also visit the states with the same name + for ( final AvatarSMDState state : getSameStates() ) { + state.acceptBackward( visitor ); + } + } } diff --git a/src/main/java/ui/avatarsmd/AvatarSMDToolBar.java b/src/main/java/ui/avatarsmd/AvatarSMDToolBar.java index 356cdb74c871550dc43e93f12bbfe659e404e9e2..e774c907fe4baafaf95335efd483724872be494c 100755 --- a/src/main/java/ui/avatarsmd/AvatarSMDToolBar.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDToolBar.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.avatarsmd; import ui.MainGUI; @@ -47,9 +44,6 @@ import ui.TToolBar; import javax.swing.*; -//import java.awt.*; -//import java.awt.event.*; - /** * Class AvatarSMDToolBar * Toolbar associated with AVATAR state Machines @@ -59,11 +53,11 @@ import javax.swing.*; */ public class AvatarSMDToolBar extends TToolBar { - public AvatarSMDToolBar(MainGUI _mgui) { super(_mgui); } + @Override protected void setActive(boolean b) { mgui.actions[TGUIAction.ASMD_EDIT].setEnabled(b); mgui.actions[TGUIAction.UML_NOTE].setEnabled(b); @@ -75,7 +69,7 @@ public class AvatarSMDToolBar extends TToolBar { mgui.actions[TGUIAction.ASMD_SEND_SIGNAL].setEnabled(b); mgui.actions[TGUIAction.ASMD_RECEIVE_SIGNAL].setEnabled(b); mgui.actions[TGUIAction.ASMD_LIBRARY_FUNCTION_CALL].setEnabled(b); - mgui.actions[TGUIAction.ASMD_PARALLEL].setEnabled(b); + //mgui.actions[TGUIAction.ASMD_PARALLEL].setEnabled(b); mgui.actions[TGUIAction.ASMD_STATE].setEnabled(b); mgui.actions[TGUIAction.ASMD_CHOICE].setEnabled(b); mgui.actions[TGUIAction.ASMD_RANDOM].setEnabled(b); @@ -97,6 +91,7 @@ public class AvatarSMDToolBar extends TToolBar { mgui.updateZoomInfo(); } + @Override protected void setButtons() { JButton button; @@ -111,12 +106,10 @@ public class AvatarSMDToolBar extends TToolBar { button = this.add(mgui.actions[TGUIAction.CONNECTOR_COMMENT]); button.addMouseListener(mgui.mouseHandler); - this.addSeparator(); button = this.add(mgui.actions[TGUIAction.ASMD_CONNECTOR]); button.addMouseListener(mgui.mouseHandler); - this.addSeparator(); @@ -185,7 +178,6 @@ public class AvatarSMDToolBar extends TToolBar { button = this.add(mgui.actions[TGUIAction.ACT_TOGGLE_AVATAR_ID]); button.addMouseListener(mgui.mouseHandler); - } } // Class diff --git a/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java b/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java index 2b06c17854421475e1f395acda02505c9a1b3264..bf7ff92a96d004e066f8be9cccd29dcfa8eb3bd4 100755 --- a/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java +++ b/src/main/java/ui/avatarsmd/AvatarSMDTransitionInfo.java @@ -36,24 +36,38 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.avatarsmd; -import myutil.Conversion; -import myutil.GraphicLib; +import java.awt.Graphics; +import java.awt.Rectangle; +import java.util.ArrayList; +import java.util.List; +import java.util.Vector; + +import javax.swing.JFrame; + import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; -import ui.*; + +import myutil.GraphicLib; +import ui.AvatarMethod; +import ui.ColorManager; +import ui.Expression; +import ui.GTURTLEModeling; +import ui.MalformedModelingException; +import ui.RangeExpression; +import ui.TAttribute; +import ui.TDiagramPanel; +import ui.TGCWithoutInternalComponent; +import ui.TGComponent; +import ui.TGConnectingPoint; +import ui.TGConnectingPointComment; +import ui.TGState; +import ui.WithAttributes; import ui.util.IconManager; import ui.window.JDialogAvatarTransition; -import javax.swing.*; - -import java.awt.Graphics; -import java.util.List; -import java.util.Vector; - /** * Class AvatarSMDTransitionInfo * Internal component that represents a set of parameter for a transition @@ -65,19 +79,37 @@ import java.util.Vector; */ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent implements WithAttributes { + private static final String NULL_EXPR = ""; + + private static final String NULL_GUARD_EXPR = "[ ]"; + + static final String DISABLED_GUARD_EXPR = NULL_GUARD_EXPR; + + static final String DISABLED_DELAY_EXPR = NULL_EXPR; + + static final String DISABLED_PROBABILITY_EXPR = NULL_EXPR; + + static final String DISABLED_ACTION_EXPR = NULL_EXPR; // private static String FILE_INFO = "(user files specified)"; // private static String CODE_INFO = "(user code specified)"; - protected String guard; - protected String afterMin; - protected String afterMax; - protected String computeMin; - protected String computeMax; - protected String probability = ""; - protected Vector<String> listOfActions; + private final Expression guard; + + private final RangeExpression afterDelay; + + private final RangeExpression computeDelay; +// protected String guard; +// protected String afterMin; +// protected String afterMax; +// protected String computeMin; +// protected String computeMax; + private final Expression probability; + + private Vector<Expression> listOfActions; + // protected Vector<String> listOfActions; - protected String[] filesToInclude; - protected String[] codeToInclude; +// protected String[] filesToInclude; +// protected String[] codeToInclude; protected int minWidth = 10; protected int minHeight = 15; @@ -92,13 +124,18 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme editable = true; removable = false; - guard = "[ ]"; - afterMin = ""; - afterMax = ""; - computeMin = ""; - computeMax = ""; - filesToInclude = null; - codeToInclude = null; + guard = new Expression( NULL_GUARD_EXPR, NULL_GUARD_EXPR, null ); + afterDelay = new RangeExpression( NULL_EXPR, NULL_EXPR, NULL_EXPR, "after (%s, %s)", null ); + computeDelay = new RangeExpression( NULL_EXPR, NULL_EXPR, NULL_EXPR, "computeFor (%s, %s)", null ); + probability = new Expression( NULL_EXPR, NULL_EXPR, "weight=%s" ); + +// guard = "[ ]"; +// afterMin = ""; +// afterMax = ""; +// computeMin = ""; +// computeMax = ""; +// filesToInclude = null; +// codeToInclude = null; nbConnectingPoint = 4; @@ -108,129 +145,205 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme connectingPoint[2] = new TGConnectingPointComment(this, 0, 0, true, true, 1.0, 0.5); connectingPoint[3] = new TGConnectingPointComment(this, 0, 0, true, true, 0.0, 0.5); - listOfActions = new Vector<String>(); + listOfActions = new Vector<Expression>(); + //listOfActions = new Vector<String>(); myImageIcon = IconManager.imgic302; } public Vector<String> getListOfActions() { - return listOfActions; + final Vector<String> actions = new Vector<String>( listOfActions.size() ); + + for ( final Expression action : listOfActions ) { + actions.add( action.getText() ); + } + + return actions; +// return listOfActions; } - - public void setGuard(String s) { - guard = s; + + public void setGuard(String s){ + guard.setText( s ); } public void setProbability(String s) { - probability = s; + probability.setText( s ); } - - public void addAction(String s) { - listOfActions.add(s); + + public void addAction(String s){ + listOfActions.add( new Expression( s ) ); +// listOfActions.add(s); } + @Override public void internalDrawing(Graphics g) { int step = 0; - String s; + // String s; h = g.getFontMetrics().getHeight(); for (int j = 0; j < nbConnectingPoint; j++) { connectingPoint[j].setCdY(-h + 1); } - ColorManager.setColor(g, getState(), 0); - int inc = h; +// ColorManager.setColor(g, getState(), 0); + // Issue #69 + final int inc = getExpressionTextHight(); +// int inc = h; + boolean atLeastOneThing = false; - g.setColor(ColorManager.AVATAR_GUARD); + if ( !guard.isNull() ) { + atLeastOneThing = true; - if (tdp.isDrawingMain()) { - width = minWidth; - } + final String formattedExpr = guard.toString(); + final int textWidth = g.getFontMetrics().stringWidth( formattedExpr ); + + if (tdp.isDrawingMain()) { + width = Math.max( textWidth, width ); + width = Math.max(minWidth, width); + } - if (guard.length() > 0) { - if (guard.replaceAll("\\s+", "").compareTo("[]") != 0) { - g.drawString(guard, x, y + step); - atLeastOneThing = true; - if (tdp.isDrawingMain()) { - width = Math.max(g.getFontMetrics().stringWidth(guard), width); - width = Math.max(minWidth, width); - } - step += inc; + // Issue #69 + if ( !guard.isEnabled() && getFather().isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillRoundRect( x, y + step - inc + 2, textWidth + 2, inc + 2, 5, 5 ); } + + g.setColor( guard.isEnabled() ? ColorManager.AVATAR_GUARD : ColorManager.DISABLED ); + g.drawString( formattedExpr, x, y + step) ; + + step += inc; } - g.setColor(ColorManager.AVATAR_TIME); + if ( !afterDelay.isNull() ) { + atLeastOneThing = true; - if (afterMin.length() > 0) { - if (afterMax.length() > 0) { - s = "after (" + afterMin + "," + afterMax + ")"; - g.drawString(s, x, y + step); - atLeastOneThing = true; - if (tdp.isDrawingMain()) { - width = Math.max(g.getFontMetrics().stringWidth(s), width); - width = Math.max(minWidth, width); - } - step += inc; - } else { - s = "after (" + afterMin + ")"; - g.drawString(s, x, y + step); - atLeastOneThing = true; - if (tdp.isDrawingMain()) { - width = Math.max(g.getFontMetrics().stringWidth(s), width); - width = Math.max(minWidth, width); - } - step += inc; + final String formattedExpr = afterDelay.toString(); + final int textWidth = g.getFontMetrics().stringWidth( formattedExpr ); + + if (tdp.isDrawingMain()) { + width = Math.max( textWidth, width ); + width = Math.max(minWidth, width); + } + + // Issue #69 + if ( !afterDelay.isEnabled() && getFather().isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillRoundRect( x, y + step - inc + 2, textWidth + 2, inc + 2, 5, 5 ); } + + g.setColor( afterDelay.isEnabled() ? ColorManager.AVATAR_TIME : ColorManager.DISABLED ); + g.drawString( formattedExpr, x, y + step ); + + step += inc; +// } +// else { +// final String s = "after (" + afterMinDelayExp + ")"; +// +// g.drawString(s, x, y + step); +// +// atLeastOneThing = true; +// +// if (tdp.isDrawingMain()) { +// width = Math.max(g.getFontMetrics().stringWidth(s), width); +// width = Math.max(minWidth, width); +// } +// +// step += inc; +// } } - if (computeMin.length() > 0) { - if (computeMax.length() > 0) { - s = "computeFor (" + computeMin + "," + computeMax + ")"; - g.drawString(s, x, y + step); - atLeastOneThing = true; - if (tdp.isDrawingMain()) { - width = Math.max(g.getFontMetrics().stringWidth(s), width); - width = Math.max(minWidth, width); - } - step += inc; - } else { - s = "computeFor (" + computeMin + ")"; - g.drawString(s, x, y + step); - atLeastOneThing = true; - if (tdp.isDrawingMain()) { - width = Math.max(g.getFontMetrics().stringWidth(s), width); - width = Math.max(minWidth, width); - } - step += inc; + if ( !computeDelay.isNull() ) { + atLeastOneThing = true; + + final String formattedExpr = computeDelay.toString(); + final int textWidth = g.getFontMetrics().stringWidth( formattedExpr ); + + if (tdp.isDrawingMain()) { + width = Math.max( textWidth, width ); + width = Math.max(minWidth, width); } + + // Issue #69 + if ( !computeDelay.isEnabled() && getFather().isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillRoundRect( x, y + step - inc + 2, textWidth + 2, inc + 2, 5, 5 ); + } + + g.setColor( computeDelay.isEnabled() ? ColorManager.AVATAR_TIME : ColorManager.DISABLED ); + g.drawString( formattedExpr, x, y + step ); + + step += inc; } - if ((probability != null) && (probability.length() > 0)) { - s = "weight=" + probability; - g.drawString(s, x, y + step); - atLeastOneThing = true; + if ( !probability.isNull() ) { + atLeastOneThing = true; + final String formattedExpr = probability.toString(); + final int textWidth = g.getFontMetrics().stringWidth( formattedExpr ); + if (tdp.isDrawingMain()) { - width = Math.max(g.getFontMetrics().stringWidth(s), width); + width = Math.max( textWidth, width ); width = Math.max(minWidth, width); } - step += inc; - } - g.setColor(ColorManager.AVATAR_ACTION); + // Issue #69 + if ( !probability.isEnabled() && getFather().isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillRoundRect( x, y + step - inc + 2, textWidth + 2, inc + 2, 5, 5 ); + } + + g.setColor( probability.isEnabled() ? ColorManager.AVATAR_GUARD : ColorManager.DISABLED ); + g.drawString( formattedExpr, x, y + step) ; + + step += inc; +// s = "weight=" + probability; +// g.drawString(s, x, y + step); +// atLeastOneThing = true; +// if (tdp.isDrawingMain()) { +// width = Math.max(g.getFontMetrics().stringWidth(s), width); +// width = Math.max(minWidth, width); +// } +// step += inc; + } - for (int i = 0; i < listOfActions.size(); i++) { - s = listOfActions.get(i); - if (s.length() > 0) { - g.drawString(s, x, y + step); - atLeastOneThing = true; - if (tdp.isDrawingMain()) { - width = Math.max(g.getFontMetrics().stringWidth(s), width); - width = Math.max(minWidth, width); - } - step += inc; + // g.setColor(ColorManager.AVATAR_ACTION); + + for( final Expression action : listOfActions ) { + if ( !action.isNull() ) { + atLeastOneThing = true; + + final String formattedExpr = action.toString(); + final int textWidth = g.getFontMetrics().stringWidth( formattedExpr ); + + if (tdp.isDrawingMain()) { + width = Math.max( textWidth, width ); + width = Math.max( minWidth, width); + } + + // Issue #69 + if ( !action.isEnabled() && getFather().isContainedInEnabledState() ) { + g.setColor( ColorManager.DISABLED_FILLING ); + g.fillRoundRect( x, y + step - inc + 2, textWidth + 2, inc + 2, 5, 5 ); + } + + g.setColor( action.isEnabled() ? ColorManager.AVATAR_ACTION : ColorManager.DISABLED ); + g.drawString( formattedExpr, x, y + step ); + + step += inc; } } +// for (int i = 0; i < listOfActions.size(); i++) { +// s = listOfActions.get(i); +// if (s.length() > 0) { +// g.drawString(s, x, y + step); +// atLeastOneThing = true; +// if (tdp.isDrawingMain()) { +// width = Math.max(g.getFontMetrics().stringWidth(s), width); +// width = Math.max(minWidth, width); +// } +// step += inc; +// } +// } /*g.setColor(ColorManager.AVATAR_CODE); @@ -263,13 +376,51 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme width = minWidth; } - ColorManager.setColor(g, state, 0); + //ColorManager.setColor(g, state, 0); if ((getState() == TGState.POINTER_ON_ME) || (getState() == TGState.POINTED) || (getState() == TGState.MOVING)) { - g.drawRoundRect(x - 1, y - h + 2, width + 2, height + 2, 5, 5); + ColorManager.setColor( g, state, 0, isEnabled() ); + + final Rectangle rectangle = new Rectangle( x - 1, y - h + 2, width + 2, height + 2 ); + + if ( inc != 0 && isOnMe( tdp.currentX, tdp.currentY ) == this ) { + + // Issue #69: Draw rectangle only around the pointed line + final Expression selExpr = getSelectedExpression(); + final int exprWidth; + + if ( selExpr == null ) { + exprWidth = width; + } + else { + exprWidth = g.getFontMetrics().stringWidth( selExpr.toString() ); + ColorManager.setColor( g, state, 0, selExpr.isEnabled() ); + } + + final int pointedExpOrder = getPointedExpressionOrder() - 1; + + rectangle.y = y + pointedExpOrder * inc + 2; + rectangle.width = exprWidth + 2; + rectangle.height = inc + 2; + } + + g.drawRoundRect( rectangle.x, rectangle.y, rectangle.width, rectangle.height, 5, 5 ); + // g.drawRoundRect(x - 1, y - h + 2, width + 2, height + 2, 5, 5); } } + private int getExpressionTextHight() { + return h; + } + + private Integer getPointedExpressionOrder() { + if ( getExpressionTextHight() != 0 ) { + return ( tdp.currentY + 10 - y ) / getExpressionTextHight(); + } + + return null; + } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y - h + 2, width, height)) { return this; @@ -286,7 +437,18 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme public boolean editOndoubleClick(JFrame frame) { List<TAttribute> attributes = tdp.getMGUI().getAllAttributes(); List<AvatarMethod> methods = tdp.getMGUI().getAllMethods(); - JDialogAvatarTransition jdat = new JDialogAvatarTransition(frame, "Setting transition parameters", guard, afterMin, afterMax, computeMin, computeMax, listOfActions, attributes, methods, filesToInclude, codeToInclude, probability); + JDialogAvatarTransition jdat = new JDialogAvatarTransition( frame, + "Setting transition parameters", + getGuard(), + getAfterMinDelay(), + getAfterMaxDelay(), +// getComputeMinDelay(), +// getComputeMaxDelay(), + listOfActions, + attributes, + methods, + getProbability() ); + //JDialogAvatarTransition jdat = new JDialogAvatarTransition(frame, "Setting transition parameters", guard, afterMin, afterMax, computeMin, computeMax, listOfActions, attributes, methods, filesToInclude, codeToInclude, probability); // jdat.setSize(600, 550); GraphicLib.centerOnParent(jdat, 600, 550); jdat.setVisible(true); // blocked until dialog has been closed @@ -296,84 +458,115 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme return false; } - guard = jdat.getGuard().trim(); + guard.setText( jdat.getGuard().trim() ); - int index = guard.indexOf('['); + int index = getGuard().indexOf('['); if (index == -1) { - guard = "[ " + guard + " ]"; + guard.setText( "[ " + guard + " ]" ); } - afterMin = jdat.getAfterMin().trim(); - afterMax = jdat.getAfterMax().trim(); - computeMin = jdat.getComputeMin().trim(); - computeMax = jdat.getComputeMax().trim(); - filesToInclude = jdat.getFilesToInclude(); - codeToInclude = jdat.getCodeToInclude(); - probability = jdat.getProbability(); + afterDelay.getMinExpression().setText( jdat.getAfterMin().trim() ); + afterDelay.getMaxExpression().setText( jdat.getAfterMax().trim() ); +// computeDelay.getMinExpression().setText( jdat.getComputeMin().trim() ); +// computeDelay.getMaxExpression().setText( jdat.getComputeMax().trim() ); + listOfActions.clear(); + listOfActions.addAll( jdat.getActions() ); +// guard = jdat.getGuard().trim(); +// +// int index = guard.indexOf('['); +// if (index == -1) { +// guard = "[ " + guard + " ]"; +// } +// +// afterMin = jdat.getAfterMin().trim(); +// afterMax = jdat.getAfterMax().trim(); +// computeMin = jdat.getComputeMin().trim(); +// computeMax = jdat.getComputeMax().trim(); +// filesToInclude = jdat.getFilesToInclude(); +// codeToInclude = jdat.getCodeToInclude(); + probability.setText( jdat.getProbability().trim() ); + return true; } + + private String toXML( final String tag, + final Expression expression ) { + return "<" + tag + " value=\"" + GTURTLEModeling.transformString( expression.getText() ) + "\" enabled=\"" + expression.isEnabled() + "\"/>" + System.lineSeparator(); + } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); - sb.append("<guard value=\""); - sb.append(GTURTLEModeling.transformString(guard)); - sb.append("\" />\n"); - - sb.append("<afterMin value=\""); - sb.append(GTURTLEModeling.transformString(afterMin)); - sb.append("\" />\n"); - - sb.append("<afterMax value=\""); - sb.append(GTURTLEModeling.transformString(afterMax)); - sb.append("\" />\n"); - - sb.append("<computeMin value=\""); - sb.append(GTURTLEModeling.transformString(computeMin)); - sb.append("\" />\n"); - - sb.append("<computeMax value=\""); - sb.append(GTURTLEModeling.transformString(computeMax)); - sb.append("\" />\n"); - - sb.append("<probability value=\""); - sb.append(GTURTLEModeling.transformString(probability)); - sb.append("\" />\n"); - - for (int i = 0; i < listOfActions.size(); i++) { - sb.append("<actions value=\""); - sb.append(GTURTLEModeling.transformString(listOfActions.get(i))); - sb.append("\" />\n"); - } - - if (filesToInclude != null) { - for (int i = 0; i < filesToInclude.length; i++) { - sb.append("<filesToIncludeLine value=\""); - sb.append(GTURTLEModeling.transformString(filesToInclude[i])); - sb.append("\" />\n"); - } - } - - if (codeToInclude != null) { - for (int i = 0; i < codeToInclude.length; i++) { - sb.append("<codeToIncludeLine value=\""); - sb.append(GTURTLEModeling.transformString(codeToInclude[i])); - sb.append("\" />\n"); - } + sb.append( toXML( "guard", guard ) ); + sb.append( toXML( "afterMin", afterDelay.getMinExpression() ) ); + sb.append( toXML( "afterMax", afterDelay.getMaxExpression() ) ); + sb.append( toXML( "computeMin", computeDelay.getMinExpression() ) ); + sb.append( toXML( "computeMax", computeDelay.getMaxExpression() ) ); + sb.append( toXML( "probability", probability ) ); +// sb.append("<guard value=\""); +// sb.append(GTURTLEModeling.transformString(guard)); +// sb.append("\" />\n"); +// +// sb.append("<afterMin value=\""); +// sb.append(GTURTLEModeling.transformString(afterMin)); +// sb.append("\" />\n"); +// +// sb.append("<afterMax value=\""); +// sb.append(GTURTLEModeling.transformString(afterMax)); +// sb.append("\" />\n"); +// +// sb.append("<computeMin value=\""); +// sb.append(GTURTLEModeling.transformString(computeMin)); +// sb.append("\" />\n"); +// +// sb.append("<computeMax value=\""); +// sb.append(GTURTLEModeling.transformString(computeMax)); +// sb.append("\" />\n"); + +// sb.append("<probability value=\""); +// sb.append(GTURTLEModeling.transformString(probability)); +// sb.append("\" />\n"); + + for( final Expression action : listOfActions ) { + sb.append( toXML( "actions", action ) ); } +// +// for (int i = 0; i < listOfActions.size(); i++) { +// sb.append("<actions value=\""); +// sb.append(GTURTLEModeling.transformString(listOfActions.get(i))); +// sb.append("\" />\n"); +// } +// +// if (filesToInclude != null) { +// for (int i = 0; i < filesToInclude.length; i++) { +// sb.append("<filesToIncludeLine value=\""); +// sb.append(GTURTLEModeling.transformString(filesToInclude[i])); +// sb.append("\" />\n"); +// } +// } +// +// if (codeToInclude != null) { +// for (int i = 0; i < codeToInclude.length; i++) { +// sb.append("<codeToIncludeLine value=\""); +// sb.append(GTURTLEModeling.transformString(codeToInclude[i])); +// sb.append("\" />\n"); +// } +// } sb.append("</extraparam>\n"); + return new String(sb); } @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException { // - String tmpFilesToInclude = ""; - String tmpCodeToInclude = ""; +// String tmpFilesToInclude = ""; +// String tmpCodeToInclude = ""; try { - listOfActions = new Vector<String>(); - + listOfActions = new Vector<Expression>(); +// listOfActions = new Vector<String>(); NodeList nli; Node n1, n2; Element elt; @@ -393,43 +586,100 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme if (elt.getTagName().equals("guard")) { s = elt.getAttribute("value"); if (s != null) { - guard = s; + guard.setText( s ); + + // Issue #69 loading enabling parameters + s = elt.getAttribute("enabled"); + + if ( s != null && !s.isEmpty() ) { + guard.setEnabled( Boolean.parseBoolean( s ) ); + } +// guard = s; } } if (elt.getTagName().equals("afterMin")) { s = elt.getAttribute("value"); if (s != null) { - afterMin = s; + afterDelay.getMinExpression().setText( s ); + + // Issue #69 loading enabling parameters + s = elt.getAttribute( "enabled" ); + + if ( s != null && !s.isEmpty() ) { + afterDelay.getMinExpression().setEnabled( Boolean.parseBoolean( s ) ); + } +// afterMin = s; } } if (elt.getTagName().equals("afterMax")) { s = elt.getAttribute("value"); if (s != null) { - afterMax = s; + afterDelay.getMaxExpression().setText( s ); + + // Issue #69 loading enabling parameters + s = elt.getAttribute("enabled"); + + if ( s != null && !s.isEmpty() ) { + afterDelay.getMaxExpression().setEnabled( Boolean.parseBoolean( s ) ); + } +// afterMax = s; } } if (elt.getTagName().equals("computeMin")) { s = elt.getAttribute("value"); if (s != null) { - computeMin = s; + computeDelay.getMinExpression().setText( s ); + + // Issue #69 loading enabling parameters + s = elt.getAttribute("enabled"); + + if ( s != null && !s.isEmpty() ) { + computeDelay.getMinExpression().setEnabled( Boolean.parseBoolean( s ) ); + } + //computeMin = s; } } if (elt.getTagName().equals("computeMax")) { s = elt.getAttribute("value"); if (s != null) { - computeMax = s; + computeDelay.getMaxExpression().setText( s ); + + // Issue #69 loading enabling parameters + s = elt.getAttribute("enabled"); + + if ( s != null && !s.isEmpty() ) { + computeDelay.getMaxExpression().setEnabled( Boolean.parseBoolean( s ) ); + } + //computeMax = s; } } if (elt.getTagName().equals("probability")) { s = elt.getAttribute("value"); if (s != null) { - probability = s; + probability.setText( s ); + + // Issue #69 loading enabling parameters + s = elt.getAttribute("enabled"); + + if ( s != null && !s.isEmpty() ) { + probability.setEnabled( Boolean.parseBoolean( s ) ); + } +// probability = s; } } if (elt.getTagName().equals("actions")) { s = elt.getAttribute("value"); if (s != null) { - listOfActions.add(s); + final Expression action = new Expression( s ); + listOfActions.add( action ); + + // Issue #69 loading enabling parameters + s = elt.getAttribute("enabled"); + + if ( s != null && !s.isEmpty() ) { + action.setEnabled( Boolean.parseBoolean( s ) ); + } + //listOfActions.add(s); } } @@ -456,100 +706,306 @@ public class AvatarSMDTransitionInfo extends TGCWithoutInternalComponent impleme } } catch (Exception e) { - throw new MalformedModelingException(); - } - - - if (tmpFilesToInclude.trim().length() == 0) { - filesToInclude = null; - } else { - filesToInclude = Conversion.wrapText(tmpFilesToInclude); - } - if (tmpCodeToInclude.trim().length() == 0) { - codeToInclude = null; - } else { - codeToInclude = Conversion.wrapText(tmpCodeToInclude); + throw new MalformedModelingException( e ); } +// +// +// if (tmpFilesToInclude.trim().length() == 0) { +// filesToInclude = null; +// } else { +// filesToInclude = Conversion.wrapText(tmpFilesToInclude); +// } +// if (tmpCodeToInclude.trim().length() == 0) { +// codeToInclude = null; +// } else { +// codeToInclude = Conversion.wrapText(tmpCodeToInclude); +// } } public String getGuard() { - return guard; + return guard.getText(); +// return guard; + } + + /** + * Issue #69 + * @return + */ + public String getEffectiveGuard() { + return guard.getEffectiveExpression( DISABLED_GUARD_EXPR ); } public String getAfterMinDelay() { - return afterMin; + return afterDelay.getMinExpression().getText(); +// return afterMin; + } + + /** + * Issue #69 + * @return + */ + public String getEffectiveAfterMinDelay() { + return afterDelay.getMinExpression().getEffectiveExpression( DISABLED_DELAY_EXPR ); } public String getAfterMaxDelay() { - return afterMax; + return afterDelay.getMaxExpression().getText(); + //return afterMax; + } + + /** + * Issue #69 + * @return + */ + public String getEffectiveAfterMaxDelay() { + return afterDelay.getMaxExpression().getEffectiveExpression( DISABLED_DELAY_EXPR ); } public String getComputeMinDelay() { - return computeMin; + return computeDelay.getMinExpression().getText(); + //return computeMin; } - public String getComputeMaxDelay() { - return computeMax; + /** + * Issue #69 + * @return + */ + public String getEffectiveComputeMinDelay() { + return computeDelay.getMinExpression().getEffectiveExpression( DISABLED_DELAY_EXPR ); } - public String getProbability() { - return probability; + public String getComputeMaxDelay() { + return computeDelay.getMaxExpression().getText(); + //return computeMax; } - public void setTimes(String minDelay, String maxDelay, String minCompute, String maxCompute) { - computeMin = minCompute; - computeMax = maxCompute; - afterMin = minDelay; - afterMax = maxDelay; + /** + * Issue #69 + * @return + */ + public String getEffectiveComputeMaxDelay() { + return computeDelay.getMaxExpression().getEffectiveExpression( DISABLED_DELAY_EXPR ); } - public Vector<String> getActions() { - return listOfActions; + public String getProbability() { + return probability.getText(); } - public boolean hasFilesToInclude() { - return ((filesToInclude != null) && (filesToInclude.length > 0)); + public String getEffectiveProbability() { + return probability.getEffectiveExpression( DISABLED_PROBABILITY_EXPR ); } - public boolean hasCodeToInclude() { - return ((codeToInclude != null) && (codeToInclude.length > 0)); + public void setTimes(String minDelay, String maxDelay, String minCompute, String maxCompute) { + computeDelay.getMinExpression().setText( minCompute ); + computeDelay.getMaxExpression().setText( maxCompute ); + afterDelay.getMinExpression().setText( minDelay ); + afterDelay.getMaxExpression().setText(maxDelay ); +// computeMin = minCompute; +// computeMax = maxCompute; +// afterMin = minDelay; +// afterMax = maxDelay; } - public String getFilesToInclude() { - if (filesToInclude == null) { - return null; - } - String ret = ""; - for (int i = 0; i < filesToInclude.length; i++) { - ret += filesToInclude[i] + "\n"; - } - return ret; + public Vector<String> getActions() { + final Vector<String> actionExpressions = new Vector<String>( listOfActions.size() ); + + for ( final Expression action : listOfActions ) { + actionExpressions.add( action.getText() ); + } + + return actionExpressions; +// return listOfActions; } - public String getCodeToInclude() { - if (codeToInclude == null) { - return null; - } - String ret = ""; - for (int i = 0; i < codeToInclude.length; i++) { - ret += codeToInclude[i] + "\n"; - } - return ret; + /** + * Issue #69 + * @return + */ + public Vector<String> getEffectiveActions() { + final Vector<String> actionExpressions = new Vector<String>( listOfActions.size() ); + + for ( final Expression action : listOfActions ) { + actionExpressions.add( action.getEffectiveExpression( DISABLED_ACTION_EXPR ) ); + } + + return actionExpressions; } +// +// public boolean hasFilesToInclude() { +// return ((filesToInclude != null) && (filesToInclude.length > 0)); +// } +// +// public boolean hasCodeToInclude() { +// return ((codeToInclude != null) && (codeToInclude.length > 0)); +// } +// +// public String getFilesToInclude() { +// if (filesToInclude == null) { +// return null; +// } +// String ret = ""; +// for (int i = 0; i < filesToInclude.length; i++) { +// ret += filesToInclude[i] + "\n"; +// } +// return ret; +// } +// +// public String getCodeToInclude() { +// if (codeToInclude == null) { +// return null; +// } +// String ret = ""; +// for (int i = 0; i < codeToInclude.length; i++) { +// ret += codeToInclude[i] + "\n"; +// } +// return ret; +// } public String getAttributes() { String attr = ""; - if (guard.length() > 0) + if ( !guard.isNull()) attr += " guard: " + getGuard(); - if (afterMin.length() > 0 || afterMax.length()>0) - attr += " delay: [" + afterMin + "," + afterMax + "] "; - if (probability.length() > 0) - attr += " weight:" + probability; + if (!afterDelay.isNull() ) + attr += " delay: [" + afterDelay.getMinExpression().getText() + "," + afterDelay.getMaxExpression().getText() + "] "; + if ( !probability.isNull() ) + attr += " weight:" + getProbability(); - for(String s: listOfActions) - attr += " / " + s; + for(final Expression action : listOfActions) { + attr += " / " + action.getText(); + } return attr; + } + + @Override + public AvatarSMDConnector getFather() { + return (AvatarSMDConnector) super.getFather(); + } + + @Override + public void setFather( final TGComponent _father ) { + if ( _father != null && !( _father instanceof AvatarSMDConnector ) ) { + throw new IllegalArgumentException( "Father should be an instance of '" + AvatarSMDConnector.class.getName() + "'." ); + } + + super.setFather( _father ); + } + /* Issue #69 + * (non-Javadoc) + * @see ui.AbstractCDElement#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + final AvatarSMDConnector transitionCon = getFather(); + + if ( transitionCon == null ) { + return false; + } + + return transitionCon.canBeDisabledContainer(); } + + @Override + public void setEnabled( final boolean enabled ) { + final Expression selExpr = getSelectedExpression(); + + if ( selExpr == null ) { + guard.setEnabled( enabled ); + afterDelay.setEnabled( enabled ); + computeDelay.setEnabled( enabled ); + probability.setEnabled( enabled ); + + for ( final Expression actionExpr : listOfActions ) { + actionExpr.setEnabled( enabled ); + } + } + else { + selExpr.setEnabled( enabled ); + } + } + + @Override + public boolean isEnabled() { + return isEnabledCheckNull( false ); + } + + public boolean isEnabledNotNull() { + return isEnabledCheckNull( true ); + } + + private boolean isEnabledCheckNull( final boolean checkNull ) { + + // Used by the UI to toggle enabled + final Expression selExpr = getSelectedExpression(); + + if ( selExpr != null ) { + return selExpr.isEnabled(); + } + + for ( final Expression actExpr : listOfActions ) { + if ( actExpr.isEnabled() ) { + return true; + } + } + + return ( guard.isEnabled() && ( !checkNull || !guard.isNull() ) ) || + ( afterDelay.isEnabled() && ( !checkNull || !afterDelay.isNull() ) ) || + ( computeDelay.isEnabled() && ( !checkNull || !computeDelay.isNull() ) ) || + ( probability.isEnabled() && ( !checkNull || !probability.isNull() ) ); + } + + public boolean isNull() { + for ( final Expression actExpr : listOfActions ) { + if ( !actExpr.isNull() ) { + return false; + } + } + + return guard.isNull() && afterDelay.isNull() && computeDelay.isNull() && probability.isNull(); + } + + private List<Expression> getNonNullExpressions() { + final List<Expression> expressions = new ArrayList<Expression>(); + + if ( !guard.isNull() ) { + expressions.add( guard ); + } + + if ( !afterDelay.isNull() ) { + expressions.add( afterDelay ); + } + + if ( !computeDelay.isNull() ) { + expressions.add( computeDelay ); + } + + if ( !probability.isNull() ) { + expressions.add( probability ); + } + + for ( final Expression expr : listOfActions ) { + if ( !expr.isNull() ) { + expressions.add( expr ); + } + } + + return expressions; + } + + private Expression getSelectedExpression() { + final Integer selectedExpressionIndex = getPointedExpressionOrder(); + + if ( selectedExpressionIndex == null || selectedExpressionIndex < 0 ) { + return null; + } + + final List<Expression> expressions = getNonNullExpressions(); + + if ( selectedExpressionIndex >= expressions.size() ) { + return null; + } + + return expressions.get( selectedExpressionIndex ); + } } diff --git a/src/main/java/ui/avatarsmd/EnablingAvatarSMDConnectorVisitor.java b/src/main/java/ui/avatarsmd/EnablingAvatarSMDConnectorVisitor.java new file mode 100644 index 0000000000000000000000000000000000000000..a528ab7029f01f90d1edc9b217ef059f3e3bb630 --- /dev/null +++ b/src/main/java/ui/avatarsmd/EnablingAvatarSMDConnectorVisitor.java @@ -0,0 +1,31 @@ +package ui.avatarsmd; + +import ui.CDElement; +import ui.TrackingCDElementVisitor; + +public class EnablingAvatarSMDConnectorVisitor extends TrackingCDElementVisitor { + + private final boolean enabled; + + public EnablingAvatarSMDConnectorVisitor( final boolean enabled ) { + super(); + + this.enabled = enabled; + } + + @Override + public boolean visit( final CDElement element ) { + if ( !super.visit( element ) ) { + return false; + } + + if ( element instanceof AvatarSMDConnector ) { + ( (AvatarSMDConnector) element ).getAvatarSMDTransitionInfo().setEnabled( enabled ); + } + else if ( element.canBeDisabled() ) { + element.setEnabled( enabled ); + } + + return true; + } +} diff --git a/src/main/java/ui/avatarsmd/FindAvatarSMDComponentsToBeTranslatedVisitor.java b/src/main/java/ui/avatarsmd/FindAvatarSMDComponentsToBeTranslatedVisitor.java new file mode 100644 index 0000000000000000000000000000000000000000..7a1877ad55238b4f8846ebfe463f2d2b2dc2c49c --- /dev/null +++ b/src/main/java/ui/avatarsmd/FindAvatarSMDComponentsToBeTranslatedVisitor.java @@ -0,0 +1,105 @@ +package ui.avatarsmd; + +import java.util.LinkedHashSet; +import java.util.Set; + +import ui.CDElement; +import ui.TGComponent; +import ui.TGConnector; +import ui.TrackingCDElementVisitor; + +public class FindAvatarSMDComponentsToBeTranslatedVisitor extends TrackingCDElementVisitor { + + private final Set<TGComponent> componentsToBeTranslated; + + private final Set<TGConnector> prunedConnectors; + + public FindAvatarSMDComponentsToBeTranslatedVisitor() { + componentsToBeTranslated = new LinkedHashSet<TGComponent>(); + prunedConnectors = new LinkedHashSet<TGConnector>(); + } + + @Override + public boolean visit( final CDElement element ) { + if ( !super.visit( element ) ) { + return false; + } + + if ( element instanceof TGComponent && !( element instanceof TGConnector ) ) { + final TGComponent component = (TGComponent) element; + + if ( shouldBeTranslated( component ) ) { + componentsToBeTranslated.add( (TGComponent) element ); + } + } + + return true; + } + + public Set<TGComponent> getComponentsToBeTranslated() { + return componentsToBeTranslated; + } + + private boolean shouldBeTranslated( final TGComponent diagramCompo ) { + + // Do not translate components contained in disabled components (e.g. composite state machines) + if ( diagramCompo.getFather() != null && !diagramCompo.getFather().isEnabled() ) { + return false; + } + + if ( diagramCompo.isEnabled() ) { + return true; + } + + // We don't know if the target component can accept more than one input connections so we keep the node + if ( diagramCompo.getInputConnectors().size() > 1 ) { + return true; + } + + // We don't know if the source component can accept more than one output connections so we keep the node + if ( diagramCompo.getOutputConnectors().size() > 1 ) { + return true; + } + + final AvatarSMDConnector inputConnector = (AvatarSMDConnector) diagramCompo.getInputConnectors().get( 0 ); + final TGComponent previousCompo = (TGComponent) inputConnector.getTGConnectingPointP1().getFather(); + + // The previous component in the graph is not translated so we don't know if the new input edge will be + // null or enabled so we translate the component + if ( !componentsToBeTranslated.contains( previousCompo ) ) { + return true; + } + + final AvatarSMDTransitionInfo inputTransInfo = inputConnector.getAvatarSMDTransitionInfo(); + + // The input transition is null or disabled so the component does not need to be translated and the transition + // can be merged with the output transition + if ( inputTransInfo.isNull() || !inputTransInfo.isEnabledNotNull() ) { + prunedConnectors.add( inputConnector ); + + return false; + } + + if ( diagramCompo.getOutputConnectors().isEmpty() ) { + return true; + } + + final AvatarSMDConnector outputConnector = (AvatarSMDConnector) diagramCompo.getOutputConnectors().get( 0 ); + + final AvatarSMDTransitionInfo outputTransInfo = outputConnector.getAvatarSMDTransitionInfo(); + + // The output transition is null or disabled so the component does not need to be translated and the transition + // can be merged with the input transition + if ( outputTransInfo.isNull() || !inputTransInfo.isEnabledNotNull() ) { + prunedConnectors.add( outputConnector ); + + return false; + } + + return true; + } + + public Set<TGConnector> getPrunedConnectors() { + return prunedConnectors; + } +} diff --git a/src/main/java/ui/avatarsmd/FindNextEnabledAvatarSMDConnectingPointVisitor.java b/src/main/java/ui/avatarsmd/FindNextEnabledAvatarSMDConnectingPointVisitor.java new file mode 100644 index 0000000000000000000000000000000000000000..004dd4746d65faf915b16bc1404d8617ea151911 --- /dev/null +++ b/src/main/java/ui/avatarsmd/FindNextEnabledAvatarSMDConnectingPointVisitor.java @@ -0,0 +1,43 @@ +package ui.avatarsmd; + +import java.util.HashSet; +import java.util.Set; + +import ui.CDElement; +import ui.FindNextEnabledConnectingPointVisitor; +import ui.TGComponent; +import ui.TGConnector; + +public class FindNextEnabledAvatarSMDConnectingPointVisitor extends FindNextEnabledConnectingPointVisitor { + + private final Set<TGComponent> componentsToBeTranslated; + + public FindNextEnabledAvatarSMDConnectingPointVisitor( final Set<TGConnector> disabledConnectors, + final Set<TGComponent> componentsToBeTranslated ) { + super( disabledConnectors ); + + this.componentsToBeTranslated = new HashSet<TGComponent>(); + this.componentsToBeTranslated.addAll( componentsToBeTranslated ); + } + + @Override + protected boolean pruneConnector( final TGConnector connector ) { + final AvatarSMDConnector smdCon = (AvatarSMDConnector) connector; + + final AvatarSMDState containingState = smdCon.getContainingState(); + + // Do not translate connectors that connect two component contained in a disabled state machine + if ( containingState != null && !containingState.isEnabled() ) { + return true; + } + + final AvatarSMDTransitionInfo transInfo = smdCon.getAvatarSMDTransitionInfo(); + + return !transInfo.isEnabledNotNull() || transInfo.isNull(); + } + + @Override + protected boolean pruneElement( final CDElement diagramElement ) { + return !componentsToBeTranslated.contains( diagramElement ); + } +} diff --git a/src/main/java/ui/ftd/FTDFault.java b/src/main/java/ui/ftd/FTDFault.java index e14ba3352c50b5d268175d7a2998aa1a24393dff..f4862392ae7491656f6c2fe9e1914f8feb1ce1d6 100644 --- a/src/main/java/ui/ftd/FTDFault.java +++ b/src/main/java/ui/ftd/FTDFault.java @@ -36,12 +36,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ftd; - import myutil.GraphicLib; import myutil.TraceManager; import org.w3c.dom.Element; @@ -54,11 +50,6 @@ import ui.window.JDialogFault; import javax.swing.*; import java.awt.*; - -//import org.w3c.dom.*; -//import org.xml.sax.*; -//import javax.xml.parsers.*; - /** * Class FTDFault * Panel used for drawing fault trees @@ -67,7 +58,7 @@ import java.awt.*; * @author Ludovic APVRILLE */ -public class FTDFault extends TGCScalableWithInternalComponent implements SwallowedTGComponent, WithAttributes, CheckableAccessibility, CanBeDisabled { +public class FTDFault extends TGCScalableWithInternalComponent implements SwallowedTGComponent, WithAttributes, CheckableAccessibility/*, Issue #69 CanBeDisabled*/ { public static double DEFAULT_PROBABILITY = 0.5; private int textY1 = 3; @@ -139,6 +130,7 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo myImageIcon = IconManager.imgic702; } + @Override public void internalDrawing(Graphics g) { String ster; if (isRootFault) { @@ -183,7 +175,11 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo g.setColor(ColorManager.FTD_FAULT); } } else { - g.setColor(ColorManager.FTD_FAULT_DISABLED); + // Issue #69: Disabled color now managed in TGComponent / ColorManager + // For filled shapes ensure background color is white so that text is + // readable + g.setColor( ColorManager.DISABLED_FILLING ); + //g.setColor(ColorManager.FTD_FAULT_DISABLED); } g.fill3DRect(x+1, y+1, width-1, height-1, true); @@ -234,25 +230,22 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo } } - if (!isEnabled()) { - String val = "disabled"; - w = g.getFontMetrics().stringWidth(val); - //int h = currentFontSize + (int)(textY1 * tdp.getZoom()); - g.setFont(f.deriveFont(Font.ITALIC)); - g.drawString(val, x + (width - w - 5), y + height - 2); - } - - - + // Issue #69 +// if (!isEnabled()) { +// String val = "disabled"; +// w = g.getFontMetrics().stringWidth(val); +// //int h = currentFontSize + (int)(textY1 * tdp.getZoom()); +// g.setFont(f.deriveFont(Font.ITALIC)); +// g.drawString(val, x + (width - w - 5), y + height - 2); +// } } else { TraceManager.addDev("-------------------------------------------------- Cannot display text of attack"); } g.setFont(fold); - } - public void setValue(String val, Graphics g) { + private void setValue(String val, Graphics g) { oldValue = value; String ster; if (isRootFault) { @@ -278,12 +271,10 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo resizeWithFather(); } - g.setFont(f0); - - // } + @Override public void resizeWithFather() { if ((father != null) && (father instanceof FTDBlock)) { // @@ -293,7 +284,7 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo } } - + @Override public boolean editOndoubleClick(JFrame frame) { String tmp; boolean error = false; @@ -328,8 +319,6 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo probability = new Double(dialog.getProbability()).doubleValue(); } - - isRootFault = dialog.isRootFault(); if (error) { @@ -342,18 +331,20 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo return !error; } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { - if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; } return null; } + @Override public int getType() { return TGComponentManager.FTD_FAULT; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<info description=\"" + description); @@ -361,14 +352,13 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo sb.append("\" probability=\"" + probability); sb.append("\" />\n"); sb.append("</extraparam>\n"); + return new String(sb); } @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{ - // try { - NodeList nli; Node n1, n2; Element elt; @@ -418,11 +408,10 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } } - public double getProbability() { return probability; } @@ -445,7 +434,6 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo return s; } - public boolean isRootFault() { return isRootFault; } @@ -456,6 +444,13 @@ public class FTDFault extends TGCScalableWithInternalComponent implements Swallo setCdRectangle(tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY()); } - - + + /** + * Issue #69 + * @return + */ + @Override + public boolean canBeDisabled() { + return true; + } } diff --git a/src/main/java/ui/ncdd/NCDiagramPanel.java b/src/main/java/ui/ncdd/NCDiagramPanel.java index 87f1f197fcf1e938392137896550f04341f55a66..19a5228ee27f6be872053612dab0b551aac9f27f 100755 --- a/src/main/java/ui/ncdd/NCDiagramPanel.java +++ b/src/main/java/ui/ncdd/NCDiagramPanel.java @@ -36,20 +36,22 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ncdd; - -import org.w3c.dom.Element; -import ui.*; - import java.util.ArrayList; -import java.util.Iterator; import java.util.LinkedList; +import java.util.List; import java.util.ListIterator; +import org.w3c.dom.Element; + +import ui.MainGUI; +import ui.TDPWithAttributes; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGConnectingPoint; +import ui.TToolBar; + /** * Class NCDiagramPanel * Panel for drawing an NC diagram @@ -66,6 +68,7 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { addMouseMotionListener(tdmm);*/ } + @Override public boolean actionOnDoubleClick(TGComponent tgc) { // /*if (tgc instanceof TCDTClass) { @@ -86,6 +89,7 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return false; } + @Override public boolean actionOnAdd(TGComponent tgc) { /*if (tgc instanceof TCDTClass) { TCDTClass tgcc = (TCDTClass)(tgc); @@ -96,6 +100,7 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return false; } + @Override public boolean actionOnRemove(TGComponent tgc) { /*if (tgc instanceof TCDTClass) { TCDTClass tgcc = (TCDTClass)(tgc); @@ -106,6 +111,7 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return false; } + @Override public boolean actionOnValueChanged(TGComponent tgc) { /*if (tgc instanceof TCDTClass) { return actionOnDoubleClick(tgc); @@ -113,26 +119,32 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return false; } + @Override public String getXMLHead() { return "<NCDiagramPanel name=\"" + name + "\"" + sizeParam() + displayParam() + " >"; } + @Override public String getXMLTail() { return "</NCDiagramPanel>"; } + @Override public String getXMLSelectedHead() { return "<NCDiagramPanelCopy name=\"" + name + "\" xSel=\"" + xSel + "\" ySel=\"" + ySel + "\" widthSel=\"" + widthSel + "\" heightSel=\"" + heightSel + "\" >"; } + @Override public String getXMLSelectedTail() { return "</NCDiagramPanelCopy>"; } + @Override public String getXMLCloneHead() { return "<NCDiagramPanelCopy name=\"" + name + "\" xSel=\"" + 0 + "\" ySel=\"" + 0 + "\" widthSel=\"" + 0 + "\" heightSel=\"" + 0 + "\" >"; } + @Override public String getXMLCloneTail() { return "</NCDiagramPanelCopy>"; } @@ -177,8 +189,8 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return true; }*/ - public LinkedList<TGComponent> getListOfNodes() { - LinkedList<TGComponent> ll = new LinkedList<>(); + public List<TGComponent> getListOfNodes() { + List<TGComponent> ll = new LinkedList<>(); for (TGComponent tgc : componentList) { if (tgc instanceof NCEqNode) { @@ -194,8 +206,8 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return ll; } - public LinkedList<NCEqNode> getListOfEqNode() { - LinkedList<NCEqNode> ll = new LinkedList<>(); + public List<NCEqNode> getListOfEqNode() { + List<NCEqNode> ll = new LinkedList<>(); for (TGComponent tgc : this.componentList) { if (tgc instanceof NCEqNode) { @@ -218,8 +230,8 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return null; } - public LinkedList<NCSwitchNode> getListOfSwitchNode() { - LinkedList<NCSwitchNode> ll = new LinkedList<>(); + public List<NCSwitchNode> getListOfSwitchNode() { + List<NCSwitchNode> ll = new LinkedList<>(); for (TGComponent tgc : this.componentList) { if (tgc instanceof NCSwitchNode) { ll.add((NCSwitchNode) tgc); @@ -229,8 +241,8 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return ll; } - public LinkedList<NCConnectorNode> getListOfLinks() { - LinkedList<NCConnectorNode> ll = new LinkedList<>(); + public List<NCConnectorNode> getListOfLinks() { + List<NCConnectorNode> ll = new LinkedList<>(); for (TGComponent tgc : this.componentList) { if (tgc instanceof NCConnectorNode) { ll.add((NCConnectorNode) tgc); @@ -240,15 +252,15 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return ll; } - public ArrayList<String> getInterfaces(NCSwitchNode sw) { - ListIterator iterator = getListOfLinks().listIterator(); + public List<String> getInterfaces(NCSwitchNode sw) { + ListIterator<NCConnectorNode> iterator = getListOfLinks().listIterator(); NCConnectorNode lk; TGConnectingPoint p; - ArrayList<String> list = new ArrayList<String>(); + List<String> list = new ArrayList<String>(); while (iterator.hasNext()) { - lk = (NCConnectorNode) (iterator.next()); + lk = iterator.next(); p = lk.getTGConnectingPointP1(); if (sw.belongsToMe(p)) { list.add(lk.getInterfaceName()); @@ -263,10 +275,10 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return list; } - public ArrayList<NCRoute> getAllRoutesFor(NCSwitchNode sw, NCTrafficArtifact arti) { - ArrayList<NCRoute> list = sw.getRoutesList(); + public List<NCRoute> getAllRoutesFor(NCSwitchNode sw, NCTrafficArtifact arti) { + List<NCRoute> list = sw.getRoutesList(); - ArrayList<NCRoute> ret = new ArrayList<NCRoute>(); + List<NCRoute> ret = new ArrayList<NCRoute>(); for (NCRoute route : list) { if (route.traffic.equals(arti.getValue())) { @@ -277,15 +289,15 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return ret; } - public ArrayList<NCSwitchNode> getSwitchesOfEq(NCEqNode eq) { - ListIterator iterator = getListOfLinks().listIterator(); + public List<NCSwitchNode> getSwitchesOfEq(NCEqNode eq) { + ListIterator<NCConnectorNode> iterator = getListOfLinks().listIterator(); NCConnectorNode lk; TGConnectingPoint p; ArrayList<NCSwitchNode> list = new ArrayList<NCSwitchNode>(); while (iterator.hasNext()) { - lk = (NCConnectorNode) (iterator.next()); + lk = iterator.next(); p = lk.getTGConnectingPointP1(); if (eq.belongsToMe(p)) { list.add((NCSwitchNode) (getComponentToWhichBelongs(lk.getTGConnectingPointP2()))); @@ -300,15 +312,15 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return list; } - public ArrayList<NCConnectorNode> getConnectorOfEq(NCEqNode eq) { - ListIterator iterator = getListOfLinks().listIterator(); + public List<NCConnectorNode> getConnectorOfEq(NCEqNode eq) { + ListIterator<NCConnectorNode> iterator = getListOfLinks().listIterator(); NCConnectorNode lk; TGConnectingPoint p; - ArrayList<NCConnectorNode> list = new ArrayList<NCConnectorNode>(); + List<NCConnectorNode> list = new ArrayList<NCConnectorNode>(); while (iterator.hasNext()) { - lk = (NCConnectorNode) (iterator.next()); + lk = iterator.next(); p = lk.getTGConnectingPointP1(); if (eq.belongsToMe(p)) { list.add(lk); @@ -323,14 +335,14 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { return list; } - public ArrayList<NCTrafficArtifact> getTrafficArtifacts() { - ListIterator iterator = getListOfEqNode().listIterator(); + public List<NCTrafficArtifact> getTrafficArtifacts() { + ListIterator<NCEqNode> iterator = getListOfEqNode().listIterator(); NCEqNode eq; - ArrayList<NCTrafficArtifact> list = new ArrayList<NCTrafficArtifact>(); + List<NCTrafficArtifact> list = new ArrayList<NCTrafficArtifact>(); while (iterator.hasNext()) { - eq = (NCEqNode) (iterator.next()); + eq = iterator.next(); eq.addAllTrafficArtifacts(list); } @@ -338,11 +350,11 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { } public NCEqNode getNCEqNodeOf(NCTrafficArtifact arti) { - ListIterator iterator = getListOfEqNode().listIterator(); + ListIterator<NCEqNode> iterator = getListOfEqNode().listIterator(); NCEqNode eq; while (iterator.hasNext()) { - eq = (NCEqNode) (iterator.next()); + eq = iterator.next(); if (eq.hasTraffic(arti)) { return eq; } @@ -352,14 +364,14 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { } - public ArrayList<String> getTraffics() { - ListIterator iterator = getListOfEqNode().listIterator(); + public List<String> getTraffics() { + ListIterator<NCEqNode> iterator = getListOfEqNode().listIterator(); NCEqNode eq; - ArrayList<String> list = new ArrayList<String>(); + List<String> list = new ArrayList<String>(); while (iterator.hasNext()) { - eq = (NCEqNode) (iterator.next()); + eq = iterator.next(); eq.addAllTraffics(list); } @@ -399,7 +411,6 @@ public class NCDiagramPanel extends TDiagramPanel implements TDPWithAttributes { } public NCConnectorNode getLinkByName(String name) { - for (TGComponent tgc : this.componentList) { if (tgc instanceof NCConnectorNode) { NCConnectorNode link = (NCConnectorNode) tgc; diff --git a/src/main/java/ui/ncdd/NCEqNode.java b/src/main/java/ui/ncdd/NCEqNode.java index a92bfe543b96f483b8bdc444bc28ebab7022388d..563cde58463f45053563da8f32ae44610e99dd0e 100755 --- a/src/main/java/ui/ncdd/NCEqNode.java +++ b/src/main/java/ui/ncdd/NCEqNode.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ncdd; import myutil.GraphicLib; @@ -47,8 +44,13 @@ import ui.util.IconManager; import ui.window.JDialogNCEqNode; import javax.swing.*; -import java.awt.*; + +import java.awt.Color; +import java.awt.Font; +import java.awt.Graphics; +import java.awt.Polygon; import java.util.ArrayList; +import java.util.List; import java.util.Vector; @@ -113,6 +115,7 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo myImageIcon = IconManager.imgic700; } + @Override public void internalDrawing(Graphics g) { Color c = g.getColor(); g.draw3DRect(x, y, width, height, true); @@ -146,6 +149,7 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo g.drawImage(IconManager.imgic1100.getImage(), x + width - 20, y + 4, null); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { Polygon pol = new Polygon(); @@ -179,6 +183,7 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo return type; } + @Override public boolean editOndoubleClick(JFrame frame) { // String oldName = name; @@ -225,16 +230,18 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo return true; } - + @Override public int getType() { return TGComponentManager.NCDD_EQNODE; } + @Override public boolean acceptSwallowedTGComponent(TGComponent tgc) { return tgc instanceof NCTrafficArtifact; } + @Override public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) { if (tgc instanceof NCTrafficArtifact) { @@ -251,11 +258,11 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo } + @Override public void removeSwallowedTGComponent(TGComponent tgc) { removeInternalComponent(tgc); } - public Vector<NCTrafficArtifact> getArtifactList() { Vector<NCTrafficArtifact> v = new Vector<NCTrafficArtifact> (); for(int i=0; i<nbInternalTGComponent; i++) { @@ -266,13 +273,13 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo return v; } - public void addAllTraffics(ArrayList<String> list) { + public void addAllTraffics( List<String> list) { for(int i=0; i<nbInternalTGComponent; i++) { list.add(tgcomponent[i].getValue()); } } - public void addAllTrafficArtifacts(ArrayList<NCTrafficArtifact> list) { + public void addAllTrafficArtifacts( List<NCTrafficArtifact> list) { for(int i=0; i<nbInternalTGComponent; i++) { list.add((NCTrafficArtifact)(tgcomponent[i])); } @@ -296,14 +303,13 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo } - - + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_NODE_NC; } - public String getAttributes() { - String attr = "Type: "; + public String getAttributes() { + String attr = "Type: "; if (type == 0) { attr += "Standard\n"; } else { @@ -316,8 +322,7 @@ public class NCEqNode extends TGCWithInternalComponent implements SwallowTGCompo pol = "SP"; } attr += "Scheduling policy = " + pol + "\n"; - return attr; + return attr; } - } diff --git a/src/main/java/ui/ncdd/NCRouteArtifact.java b/src/main/java/ui/ncdd/NCRouteArtifact.java index 5254257b7a49d03a6880b0fbe2154233745bc629..3f5e3c2bfe8b6c177bc9382b1e7109af235afb50 100755 --- a/src/main/java/ui/ncdd/NCRouteArtifact.java +++ b/src/main/java/ui/ncdd/NCRouteArtifact.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.ncdd; import myutil.GraphicLib; @@ -50,8 +47,11 @@ import ui.util.IconManager; import ui.window.JDialogNCRoute; import javax.swing.*; -import java.awt.*; + +import java.awt.Color; +import java.awt.Graphics; import java.util.ArrayList; +import java.util.List; import java.util.Vector; /** @@ -95,8 +95,8 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal myImageIcon = IconManager.imgic702; } + @Override public void internalDrawing(Graphics g) { - if (oldValue.compareTo(value) != 0) { setValue(value, g); } @@ -117,10 +117,9 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal g.drawLine(x+width-space-cran, y+space+cran, x + width-space, y+space+cran); g.drawString(value, x + textX , y + textY); - } - public void setValue(String val, Graphics g) { + private void setValue(String val, Graphics g) { oldValue = value; int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX + fileX + space); @@ -130,9 +129,9 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal width = w1; resizeWithFather(); } - // } + @Override public void resizeWithFather() { if ((father != null) && ((father instanceof NCEqNode) || (father instanceof NCSwitchNode))) { // @@ -142,15 +141,16 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal } } + @Override public boolean editOndoubleClick(JFrame frame) { String tmp; boolean error = false; Vector<NCRoute> vroutes = new Vector<NCRoute>(routes); - ArrayList<String> inputInterfaces = ((NCDiagramPanel)tdp).getInterfaces((NCSwitchNode)(getFather())); - ArrayList<String> traffics = ((NCDiagramPanel)tdp).getTraffics(); - ArrayList<String> outputInterfaces = new ArrayList<>(inputInterfaces); + List<String> inputInterfaces = ((NCDiagramPanel)tdp).getInterfaces((NCSwitchNode)(getFather())); + List<String> traffics = ((NCDiagramPanel)tdp).getTraffics(); + List<String> outputInterfaces = new ArrayList<>(inputInterfaces); JDialogNCRoute dialog = new JDialogNCRoute(frame, "Setting route attributes", value, vroutes, inputInterfaces, traffics, outputInterfaces); // dialog.setSize(900, 500); @@ -196,6 +196,7 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -203,10 +204,12 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal return null; } + @Override public int getType() { return TGComponentManager.NCDD_ROUTE_ARTIFACT; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); for(NCRoute route: routes) { @@ -265,7 +268,7 @@ public class NCRouteArtifact extends TGCWithoutInternalComponent implements Swal //makeFullValue(); } - public java.util.List<NCRoute> getRoutes() { + public List<NCRoute> getRoutes() { return routes; } diff --git a/src/main/java/ui/tmlad/TGConnectingPointTMLAD.java b/src/main/java/ui/tmlad/TGConnectingPointTMLAD.java index a1f5ab090278a65ba89fe4397722fe2ea02150b9..a397a102bd7980d1f1f2be480f381e377249fe64 100755 --- a/src/main/java/ui/tmlad/TGConnectingPointTMLAD.java +++ b/src/main/java/ui/tmlad/TGConnectingPointTMLAD.java @@ -36,16 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; -//import java.awt.*; - import ui.CDElement; import ui.TGComponentManager; -import ui.TGConnectingPointWidthHeight; +import ui.ad.TGConnectingPointAD; /** * Class TGConnectingPointTMLAD @@ -54,21 +49,14 @@ import ui.TGConnectingPointWidthHeight; * @version 1.0 28/10/2005 * @author Ludovic APVRILLE */ -public class TGConnectingPointTMLAD extends TGConnectingPointWidthHeight{ +public class TGConnectingPointTMLAD extends TGConnectingPointAD /* Issue #69TGConnectingPoint*/ { public TGConnectingPointTMLAD(CDElement _container, int _x, int _y, boolean _in, boolean _out, double _w, double _h) { super(_container, _x, _y, _in, _out, _w, _h); } + @Override public boolean isCompatibleWith(int type) { return type == TGComponentManager.CONNECTOR_TMLAD; } - } - - - - - - - diff --git a/src/main/java/ui/tmlad/TGConnectorTMLAD.java b/src/main/java/ui/tmlad/TGConnectorTMLAD.java index c7943dd2e9293f4c44041a3306b7578016c8178c..35955d3d254f9431278c572aff4451a787b45746 100755 --- a/src/main/java/ui/tmlad/TGConnectorTMLAD.java +++ b/src/main/java/ui/tmlad/TGConnectorTMLAD.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; import ui.*; +import ui.ad.TADConnector; import ui.util.IconManager; import java.awt.*; @@ -56,8 +54,9 @@ import java.util.Vector; * @version 1.0 30/09/2004 * @author Ludovic APVRILLE */ -public class TGConnectorTMLAD extends TGConnector { - protected int arrowLength = 10; +public class TGConnectorTMLAD extends TADConnector /* Issue #69 TGConnector*/ { + + protected int arrowLength = 10; public TGConnectorTMLAD(int _x, int _y, int _minX, int _minY, int _maxX, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp, TGConnectingPoint _p1, TGConnectingPoint _p2, Vector<Point> _listPoint) { super(_x, _y, _minX, _minY, _maxX, _maxY, _pos, _father, _tdp, _p1, _p2, _listPoint); @@ -65,6 +64,7 @@ public class TGConnectorTMLAD extends TGConnector { myImageIcon = IconManager.imgic202; } + @Override protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) { g.drawLine(x1, y1, x2, y2); @@ -73,14 +73,8 @@ public class TGConnectorTMLAD extends TGConnector { } } + @Override public int getType() { return TGComponentManager.CONNECTOR_TMLAD; } } - - - - - - - diff --git a/src/main/java/ui/tmlad/TMLADActionState.java b/src/main/java/ui/tmlad/TMLADActionState.java index 75d464612c7a1a151e895f1d2d015f0b4b515c7f..a216f7d0454b47ce6a819814f67940bcfe3a7503 100755 --- a/src/main/java/ui/tmlad/TMLADActionState.java +++ b/src/main/java/ui/tmlad/TMLADActionState.java @@ -36,17 +36,25 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; +import java.awt.Color; +import java.awt.Graphics; -import java.awt.*; -import java.awt.geom.Line2D; +import ui.AllowedBreakpoint; +import ui.BasicErrorHighlight; +import ui.CheckableAccessibility; +import ui.CheckableLatency; +import ui.ColorManager; +import ui.EmbeddedComment; +import ui.ErrorHighlight; +import ui.PostJavaCode; +import ui.PreJavaCode; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADActionState; /** * Class TMLADActionState @@ -55,36 +63,45 @@ import java.awt.geom.Line2D; * @version 1.0 21/11/2005 * @author Ludovic APVRILLE */ -public class TMLADActionState extends TGCOneLineText implements PreJavaCode, PostJavaCode, CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { - protected int lineLength = 5; - protected int textX = 5; - protected int textY = 15; - protected int arc = 5; - - protected int stateOfError = 0; // Not yet checked +public class TMLADActionState extends TADActionState/* Issue #69 TGCOneLineText */implements PreJavaCode, PostJavaCode, CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +// protected int lineLength = 5; +// protected int textX = 5; +// protected int textY = 15; +// protected int arc = 5; +// +// protected int stateOfError = 0; // Not yet checked public TMLADActionState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - - width = 30; - height = 20; - minWidth = 30; - - nbConnectingPoint = 2; - connectingPoint = new TGConnectingPoint[2]; - connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); - - moveable = true; - editable = true; - removable = true; - - value = "action"; - name = "action state"; - - myImageIcon = IconManager.imgic204; +// +// width = 30; +// height = 20; +// minWidth = 30; +// +// nbConnectingPoint = 2; +// connectingPoint = new TGConnectingPoint[2]; +// connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); +// connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); +// +// moveable = true; +// editable = true; +// removable = true; +// +// value = "action"; +// name = "action state"; +// +// myImageIcon = IconManager.imgic204; } + @Override + protected void createConnectingPoints() { + nbConnectingPoint = 2; + connectingPoint = new TGConnectingPoint[ nbConnectingPoint ]; + connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); + connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); + } + + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -94,9 +111,9 @@ public class TMLADActionState extends TGCOneLineText implements PreJavaCode, Pos //updateConnectingPoints(); } - if (stateOfError > 0) { + if (stateAction > 0) { Color c = g.getColor(); - switch(stateOfError) { + switch(stateAction) { case ErrorHighlight.OK: g.setColor(ColorManager.ATTRIBUTE_BOX_ACTION); break; @@ -112,25 +129,25 @@ public class TMLADActionState extends TGCOneLineText implements PreJavaCode, Pos g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); g.drawString(value, x + (width - w) / 2 , y + textY); - - } - - public TGComponent isOnMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x +width/2, y- lineLength, x+width/2, y + lineLength + height, _x, _y)) < distanceSelected) { - return this; - } - - return null; } - public String getAction() { - return value; - } +// public TGComponent isOnMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x +width/2, y- lineLength, x+width/2, y + lineLength + height, _x, _y)) < distanceSelected) { +// return this; +// } +// +// return null; +// } +// +// public String getAction() { +// return value; +// } + @Override public String getAction(int cpt) { if (cpt <0) { return value; @@ -156,17 +173,17 @@ public class TMLADActionState extends TGCOneLineText implements PreJavaCode, Pos return ret; } + @Override public int getType() { return TGComponentManager.TMLAD_ACTION_STATE; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } - public void setStateAction(int _stateAction) { - stateOfError = _stateAction; - } - - +// public void setStateAction(int _stateAction) { +// stateOfError = _stateAction; +// } } diff --git a/src/main/java/ui/tmlad/TMLADChoice.java b/src/main/java/ui/tmlad/TMLADChoice.java index 6d054ed994d909f352f682fb856cdb00912c18fc..c2f1175b4bf8fe8966880b691ae749a43b9cfcce 100755 --- a/src/main/java/ui/tmlad/TMLADChoice.java +++ b/src/main/java/ui/tmlad/TMLADChoice.java @@ -36,17 +36,16 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; -import java.awt.geom.Line2D; +import ui.AllowedBreakpoint; +import ui.BasicErrorHighlight; +import ui.EmbeddedComment; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADChoice; /** * Class TMLADChoice @@ -55,13 +54,13 @@ import java.awt.geom.Line2D; * @version 1.0 21/11/2005 * @author Ludovic APVRILLE */ -public class TMLADChoice extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { - private int lineLength = 10; - private int lineOutLength = 25; - private int textX1, textY1, textX2, textY2, textX3, textY3; - - protected int stateOfError = 0; // Not yet checked - public final static int NOT_VERIFIED = 0; +public class TMLADChoice extends TADChoice /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +// private int lineLength = 10; +// private int lineOutLength = 25; +// private int textX1, textY1, textX2, textY2, textX3, textY3; +// +// protected int stateOfError = 0; // Not yet checked +// public final static int NOT_VERIFIED = 0; public final static int REACHABLE = 1; public final static int NOT_REACHABLE = 2; @@ -70,150 +69,161 @@ public class TMLADChoice extends TGCWithInternalComponent implements EmbeddedCom public TMLADChoice(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - width = 30; - height = 30; - textX1 = -lineOutLength; - textY1 = height/2 - 5; - textX2 = width + 5; - textY2 = height/2 - 5; - textX3 = width /2 + 5; - textY3 = height + 15; - - nbConnectingPoint = 4; - connectingPoint = new TGConnectingPoint[nbConnectingPoint]; - connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointTMLAD(this, -lineOutLength, 0, false, true, 0.0, 0.5); - connectingPoint[2] = new TGConnectingPointTMLAD(this, lineOutLength, 0, false, true, 1.0, 0.5); - connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineOutLength, false, true, 0.5, 1.0); - - nbInternalTGComponent = 3; - tgcomponent = new TGComponent[nbInternalTGComponent]; - - TGCOneLineText tgc = new TGCOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 1"); - tgcomponent[0] = tgc; - - tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 2"); - tgcomponent[1] = tgc; - - tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 3"); - tgcomponent[2] = tgc; - - moveable = true; - editable = false; - removable = true; - - name = "choice"; - - myImageIcon = IconManager.imgic208; - } - - public void internalDrawing(Graphics g) { - if (stateOfError > 0) { - Color c = g.getColor(); - switch(stateOfError) { - case ErrorHighlight.OK: - g.setColor(ColorManager.CHOICE); - break; - default: - g.setColor(ColorManager.UNKNOWN_BOX_ACTION); - } - // Making the polygon - int [] px1 = {x+(width/2), x+width+2, x + (width/2), x}; - int [] py1 = {y, y + height/2, y+height+2, y+height/2}; - g.fillPolygon(px1, py1, 4); - g.setColor(c); - } - - g.drawLine(x+(width/2), y, x+width, y + height/2); - g.drawLine(x, y + height / 2, x+width/2, y + height); - g.drawLine(x + width/2, y, x, y + height/2); - g.drawLine(x + width, y + height/2, x + width/2, y + height); - - g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); - g.drawLine(x, y + height/2, x-lineOutLength, y + height/2); - g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2); - g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength); - } - - public TGComponent isOnOnlyMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) { - return this; - } - - return null; - } - - public String getGuard(int i) { - if ((i>=0) && (i<nbInternalTGComponent)) { - return tgcomponent[i].getValue(); - } - return ""; +// width = 30; +// height = 30; +// textX1 = -lineOutLength; +// textY1 = height/2 - 5; +// textX2 = width + 5; +// textY2 = height/2 - 5; +// textX3 = width /2 + 5; +// textY3 = height + 15; +// +// nbConnectingPoint = 4; +// connectingPoint = new TGConnectingPoint[nbConnectingPoint]; +// connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); +// connectingPoint[1] = new TGConnectingPointTMLAD(this, -lineOutLength, 0, false, true, 0.0, 0.5); +// connectingPoint[2] = new TGConnectingPointTMLAD(this, lineOutLength, 0, false, true, 1.0, 0.5); +// connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineOutLength, false, true, 0.5, 1.0); +// +// nbInternalTGComponent = 3; +// tgcomponent = new TGComponent[nbInternalTGComponent]; +// +// TGCOneLineText tgc = new TGCOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 1"); +// tgcomponent[0] = tgc; +// +// tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 2"); +// tgcomponent[1] = tgc; +// +// tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 3"); +// tgcomponent[2] = tgc; +// +// moveable = true; +// editable = false; +// removable = true; +// +// name = "choice"; +// +// myImageIcon = IconManager.imgic208; } - public void drawSecurityInformation(Graphics g) { - if (securityInformation > 0) { - - Color c = g.getColor(); - Color c1; - switch(securityInformation) { - case REACHABLE: - c1 = Color.green; - break; - case NOT_REACHABLE: - c1 = Color.red; - break; - default: - return; - } - - GraphicLib.arrowWithLine(g, 1, 0, 10, x-30, y+4, x-15, y+4, true); - g.drawOval(x-11, y-3, 7, 9); - g.setColor(c1); - g.fillRect(x-12, y, 9, 7); - g.setColor(c); - g.drawRect(x-12, y, 9, 7); - - } + @Override + protected void createConnectingPoints() { + nbConnectingPoint = 4; + connectingPoint = new TGConnectingPoint[nbConnectingPoint]; + connectingPoint[ 0 ] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); + connectingPoint[ 1 ] = new TGConnectingPointTMLAD(this, -lineOutLength, 0, false, true, 0.0, 0.5); + connectingPoint[ 2 ] = new TGConnectingPointTMLAD(this, lineOutLength, 0, false, true, 1.0, 0.5); + connectingPoint[ 3 ] = new TGConnectingPointTMLAD(this, 0, lineOutLength, false, true, 0.5, 1.0); } - public void setGuard(String guard, int i) { - if ((i>=0) && (i<nbInternalTGComponent)) { - tgcomponent[i].setValue(guard); - } - } +// public void internalDrawing(Graphics g) { +// if (stateOfError > 0) { +// Color c = g.getColor(); +// switch(stateOfError) { +// case ErrorHighlight.OK: +// g.setColor(ColorManager.CHOICE); +// break; +// default: +// g.setColor(ColorManager.UNKNOWN_BOX_ACTION); +// } +// // Making the polygon +// int [] px1 = {x+(width/2), x+width+2, x + (width/2), x}; +// int [] py1 = {y, y + height/2, y+height+2, y+height/2}; +// g.fillPolygon(px1, py1, 4); +// g.setColor(c); +// } +// +// g.drawLine(x+(width/2), y, x+width, y + height/2); +// g.drawLine(x, y + height / 2, x+width/2, y + height); +// g.drawLine(x + width/2, y, x, y + height/2); +// g.drawLine(x + width, y + height/2, x + width/2, y + height); +// +// g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); +// g.drawLine(x, y + height/2, x-lineOutLength, y + height/2); +// g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2); +// g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength); +// } +// +// public TGComponent isOnOnlyMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) { +// return this; +// } +// +// return null; +// } + +// public String getGuard(int i) { +// if ((i>=0) && (i<nbInternalTGComponent)) { +// return tgcomponent[i].getValue(); +// } +// return ""; +// } +// public void drawSecurityInformation(Graphics g) { +// if (securityInformation > 0) { +// +// Color c = g.getColor(); +// Color c1; +// switch(securityInformation) { +// case REACHABLE: +// c1 = Color.green; +// break; +// case NOT_REACHABLE: +// c1 = Color.red; +// break; +// default: +// return; +// } +// +// GraphicLib.arrowWithLine(g, 1, 0, 10, x-30, y+4, x-15, y+4, true); +// g.drawOval(x-11, y-3, 7, 9); +// g.setColor(c1); +// g.fillRect(x-12, y, 9, 7); +// g.setColor(c); +// g.drawRect(x-12, y, 9, 7); +// +// } +// +// } +// +// public void setGuard(String guard, int i) { +// if ((i>=0) && (i<nbInternalTGComponent)) { +// tgcomponent[i].setValue(guard); +// } +// } + @Override public int getType() { return TGComponentManager.TMLAD_CHOICE; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } - - public void setStateAction(int _stateAction) { - stateOfError = _stateAction; - } - +// +// public void setStateAction(int _stateAction) { +// stateOfError = _stateAction; +// } } diff --git a/src/main/java/ui/tmlad/TMLADDecrypt.java b/src/main/java/ui/tmlad/TMLADDecrypt.java index 5c75a5f9554e6f2c88027b57d71a585fe8b57b29..09c37ac7b23a6c6bd2dd073b906f32bce059de58 100755 --- a/src/main/java/ui/tmlad/TMLADDecrypt.java +++ b/src/main/java/ui/tmlad/TMLADDecrypt.java @@ -44,6 +44,7 @@ import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import ui.*; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; import ui.window.JDialogMultiString; @@ -60,7 +61,7 @@ import java.util.ArrayList; * @author Ludovic APVRILLE * @version 1.0 21/11/2005 */ -public class TMLADDecrypt extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADDecrypt extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { private int lineLength = 5; // private int textX, textY; private int ilength = 20; @@ -92,6 +93,7 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde myImageIcon = IconManager.imgic214; } + @Override public void internalDrawing(Graphics g) { if (stateOfError > 0) { Color c = g.getColor(); @@ -131,6 +133,7 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde g.drawString("sec:" + securityContext, x + 3 * width / 2, y + height / 2); } + @Override public boolean editOndoubleClick(JFrame frame) { String[] labels = new String[1]; String[] values = new String[1]; @@ -151,9 +154,9 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde } return false; - } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -170,6 +173,7 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde return null; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data secPattern=\""); @@ -190,9 +194,6 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde // int k; // String s; - // - // - for (int i = 0; i < nl.getLength(); i++) { n1 = nl.item(i); // @@ -213,20 +214,22 @@ public class TMLADDecrypt extends TGCWithoutInternalComponent implements Embedde } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } } + @Override public int getType() { return TGComponentManager.TMLAD_DECRYPT; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } } - diff --git a/src/main/java/ui/tmlad/TMLADDelay.java b/src/main/java/ui/tmlad/TMLADDelay.java index fd017298059b4340999d9ad8f812843638defaf0..4a936c36df55a6a06b11f688590fb97b034b2eca 100755 --- a/src/main/java/ui/tmlad/TMLADDelay.java +++ b/src/main/java/ui/tmlad/TMLADDelay.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; import ui.*; +import ui.ad.TADComponentWithSubcomponents; import ui.util.IconManager; import java.awt.*; @@ -55,11 +53,11 @@ import java.awt.geom.Line2D; * @version 1.0 10/11/2008 * @author Ludovic APVRILLE */ -public class TMLADDelay extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADDelay extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { private int lineLength = 5; private int textX, textY; - private int ilength = 10; - private int lineLength1 = 2; +// private int ilength = 10; +// private int lineLength1 = 2; protected int stateOfError = 0; // Not yet checked @@ -97,6 +95,7 @@ public class TMLADDelay extends TGCWithInternalComponent implements EmbeddedComm myImageIcon = IconManager.imgic214; } + @Override public void internalDrawing(Graphics g) { if (stateOfError > 0) { Color c = g.getColor(); @@ -116,6 +115,7 @@ public class TMLADDelay extends TGCWithInternalComponent implements EmbeddedComm g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -140,17 +140,18 @@ public class TMLADDelay extends TGCWithInternalComponent implements EmbeddedComm return ((TGCTimeDelay)tgcomponent[0]).getUnit(); } + @Override public int getType() { return TGComponentManager.TMLAD_DELAY; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - } - diff --git a/src/main/java/ui/tmlad/TMLADDelayInterval.java b/src/main/java/ui/tmlad/TMLADDelayInterval.java index f7bb0e9277b593d72406f83cf2cc8102f504f46b..d7234a843973ff198f44154178de647737fcf1da 100755 --- a/src/main/java/ui/tmlad/TMLADDelayInterval.java +++ b/src/main/java/ui/tmlad/TMLADDelayInterval.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; import ui.*; +import ui.ad.TADComponentWithSubcomponents; import ui.util.IconManager; import java.awt.*; @@ -55,11 +53,11 @@ import java.awt.geom.Line2D; * @version 1.0 10/11/2008 * @author Ludovic APVRILLE */ -public class TMLADDelayInterval extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADDelayInterval extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { private int lineLength = 5; private int textX, textY; - private int ilength = 10; - private int lineLength1 = 2; +// private int ilength = 10; +// private int lineLength1 = 2; private int incrementY = 3; private int segment = 4; @@ -99,8 +97,8 @@ public class TMLADDelayInterval extends TGCWithInternalComponent implements Embe myImageIcon = IconManager.imgic214; } + @Override public void internalDrawing(Graphics g) { - if (stateOfError > 0) { Color c = g.getColor(); switch(stateOfError) { @@ -130,6 +128,7 @@ public class TMLADDelayInterval extends TGCWithInternalComponent implements Embe } } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -158,10 +157,12 @@ public class TMLADDelayInterval extends TGCWithInternalComponent implements Embe ((TGCTimeDelay)(tgcomponent[0])).setMaxDelay(val); } + @Override public int getType() { return TGComponentManager.TMLAD_INTERVAL_DELAY; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } @@ -170,8 +171,8 @@ public class TMLADDelayInterval extends TGCWithInternalComponent implements Embe return ((TGCTimeDelay)tgcomponent[0]).getUnit(); } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - } diff --git a/src/main/java/ui/tmlad/TMLADEncrypt.java b/src/main/java/ui/tmlad/TMLADEncrypt.java index 11ecb9a3809b83e37eac778954fbbea9b4afff1d..f3fac8dc34d48549623c0e285519c9390824ec0a 100755 --- a/src/main/java/ui/tmlad/TMLADEncrypt.java +++ b/src/main/java/ui/tmlad/TMLADEncrypt.java @@ -44,6 +44,7 @@ import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import ui.*; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; import ui.window.JDialogCryptographicConfiguration; @@ -59,7 +60,7 @@ import java.awt.geom.Line2D; * @author Ludovic APVRILLE * @version 1.0 21/11/2005 */ -public class TMLADEncrypt extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADEncrypt extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { private int lineLength = 5; // private int textX, textY; private int ex = 5; @@ -101,6 +102,7 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde myImageIcon = IconManager.imgic214; } + @Override public void internalDrawing(Graphics g) { if (stateOfError > 0) { Color c = g.getColor(); @@ -181,8 +183,8 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde g.drawImage(IconManager.imgic7000.getImage(), x - 22, y + height / 2, null); } + @Override public boolean editOndoubleClick(JFrame frame) { - //JDialogTwoString jdts = new JDialogTwoString(frame, "Setting channel's properties", "Channel name", channelName, "Nb of samples", nbOfSamples);] String[] values = new String[]{securityContext, type, message_overhead, encTime, size, nonce, formula, decTime, key, algorithm}; String[] nonces = tdp.getMGUI().getAllNonce(); @@ -209,6 +211,7 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde return false; } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -225,6 +228,7 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde return null; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data secContext=\""); @@ -252,18 +256,13 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException { - // try { - NodeList nli; Node n1, n2; Element elt; // int k; // String s; - // - // - for (int i = 0; i < nl.getLength(); i++) { n1 = nl.item(i); // @@ -292,20 +291,22 @@ public class TMLADEncrypt extends TGCWithoutInternalComponent implements Embedde } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } } + @Override public int getType() { return TGComponentManager.TMLAD_ENCRYPT; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } } - diff --git a/src/main/java/ui/tmlad/TMLADExecC.java b/src/main/java/ui/tmlad/TMLADExecC.java index e8df888ce212a9761a0063c8e4552d6ded723c7d..c7be2687dd657920ed6b6ac0e6c01318711eb433 100755 --- a/src/main/java/ui/tmlad/TMLADExecC.java +++ b/src/main/java/ui/tmlad/TMLADExecC.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; import ui.*; +import ui.ad.TADComponentWithSubcomponents; import ui.util.IconManager; import java.awt.*; @@ -55,7 +53,7 @@ import java.awt.geom.Line2D; * @version 1.0 21/05/2008 * @author Ludovic APVRILLE */ -public class TMLADExecC extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADExecC extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { private int lineLength = 5; private int textX, textY; private int ilength = 10; @@ -93,6 +91,7 @@ public class TMLADExecC extends TGCWithInternalComponent implements EmbeddedComm myImageIcon = IconManager.imgic214; } + @Override public void internalDrawing(Graphics g) { if (stateOfError > 0) { Color c = g.getColor(); @@ -114,6 +113,7 @@ public class TMLADExecC extends TGCWithInternalComponent implements EmbeddedComm g.drawLine(x + (width/2) - lineLength1, y+(height-ilength)/2, x + (width/2)- lineLength1, y+(height+ilength)/2); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -134,17 +134,18 @@ public class TMLADExecC extends TGCWithInternalComponent implements EmbeddedComm tgcomponent[0].setValue(value); } + @Override public int getType() { return TGComponentManager.TMLAD_EXECC; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - } - diff --git a/src/main/java/ui/tmlad/TMLADExecCInterval.java b/src/main/java/ui/tmlad/TMLADExecCInterval.java index 3ba864c72349c86ccff8559eb0a0144fadc007e8..bf07c7eafebfad4b5f9e7dbb541b9cb3b648fae4 100755 --- a/src/main/java/ui/tmlad/TMLADExecCInterval.java +++ b/src/main/java/ui/tmlad/TMLADExecCInterval.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; import ui.*; +import ui.ad.TADComponentWithSubcomponents; import ui.util.IconManager; import java.awt.*; @@ -55,7 +53,7 @@ import java.awt.geom.Line2D; * @version 1.0 21/05/2008 * @author Ludovic APVRILLE */ -public class TMLADExecCInterval extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADExecCInterval extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { private int lineLength = 5; private int textX, textY; private int ilength = 10; @@ -93,6 +91,7 @@ public class TMLADExecCInterval extends TGCWithInternalComponent implements Embe myImageIcon = IconManager.imgic214; } + @Override public void internalDrawing(Graphics g) { if (stateOfError > 0) { Color c = g.getColor(); @@ -114,6 +113,7 @@ public class TMLADExecCInterval extends TGCWithInternalComponent implements Embe g.drawLine(x + (width/2) - lineLength1, y+(height-ilength)/2, x + (width/2) - lineLength1, y+(height+ilength)/2); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -142,14 +142,17 @@ public class TMLADExecCInterval extends TGCWithInternalComponent implements Embe ((TGCTimeInterval)(tgcomponent[0])).setMaxDelay(val); } + @Override public int getType() { return TGComponentManager.TMLAD_EXECC_INTERVAL; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } diff --git a/src/main/java/ui/tmlad/TMLADExecI.java b/src/main/java/ui/tmlad/TMLADExecI.java index cac0941253553a4a66a28e5f02be97ca969f8d42..024b0c57605c721713c0afe1e10b36e62a3dc7f5 100755 --- a/src/main/java/ui/tmlad/TMLADExecI.java +++ b/src/main/java/ui/tmlad/TMLADExecI.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; import ui.*; +import ui.ad.TADComponentWithSubcomponents; import ui.util.IconManager; import java.awt.*; @@ -55,7 +53,7 @@ import java.awt.geom.Line2D; * @version 1.0 21/11/2005 * @author Ludovic APVRILLE */ -public class TMLADExecI extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, CheckableLatency, BasicErrorHighlight { +public class TMLADExecI extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, CheckableLatency, BasicErrorHighlight { private int lineLength = 5; private int textX, textY; private int ilength = 10; @@ -93,6 +91,7 @@ public class TMLADExecI extends TGCWithInternalComponent implements EmbeddedComm myImageIcon = IconManager.imgic214; } + @Override public void internalDrawing(Graphics g) { if (stateOfError > 0) { Color c = g.getColor(); @@ -114,6 +113,7 @@ public class TMLADExecI extends TGCWithInternalComponent implements EmbeddedComm g.drawLine(x + (width/2), y+(height-ilength)/2, x + (width/2), y+(height+ilength)/2); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -134,16 +134,18 @@ public class TMLADExecI extends TGCWithInternalComponent implements EmbeddedComm tgcomponent[0].setValue(value); } + @Override public int getType() { return TGComponentManager.TMLAD_EXECI; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } } - diff --git a/src/main/java/ui/tmlad/TMLADExecIInterval.java b/src/main/java/ui/tmlad/TMLADExecIInterval.java index 585478caeca499e4637deffb7518be25b0b6afcd..49c6b1546867e49a1c55c881509aec503ff0ddd9 100755 --- a/src/main/java/ui/tmlad/TMLADExecIInterval.java +++ b/src/main/java/ui/tmlad/TMLADExecIInterval.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; import ui.*; +import ui.ad.TADComponentWithSubcomponents; import ui.util.IconManager; import java.awt.*; @@ -55,7 +53,7 @@ import java.awt.geom.Line2D; * @version 1.0 02/12/2005 * @author Ludovic APVRILLE */ -public class TMLADExecIInterval extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADExecIInterval extends TADComponentWithSubcomponents /* Issue #69 TGCWithInternalComponent */ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { private int lineLength = 5; private int textX, textY; private int ilength = 10; @@ -93,6 +91,7 @@ public class TMLADExecIInterval extends TGCWithInternalComponent implements Embe myImageIcon = IconManager.imgic214; } + @Override public void internalDrawing(Graphics g) { if (stateOfError > 0) { Color c = g.getColor(); @@ -114,6 +113,7 @@ public class TMLADExecIInterval extends TGCWithInternalComponent implements Embe g.drawLine(x + (width/2), y+(height-ilength)/2, x + (width/2), y+(height+ilength)/2); } + @Override public TGComponent isOnOnlyMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -142,16 +142,18 @@ public class TMLADExecIInterval extends TGCWithInternalComponent implements Embe ((TGCTimeInterval)(tgcomponent[0])).setMaxDelay(val); } + @Override public int getType() { return TGComponentManager.TMLAD_EXECI_INTERVAL; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - } diff --git a/src/main/java/ui/tmlad/TMLADForEverLoop.java b/src/main/java/ui/tmlad/TMLADForEverLoop.java index 58cb33eb2e3adaf9e5b44f74782ab5115df4894b..a59a009886c6c686b298f12d51eb4b02e1b3ff7d 100755 --- a/src/main/java/ui/tmlad/TMLADForEverLoop.java +++ b/src/main/java/ui/tmlad/TMLADForEverLoop.java @@ -36,17 +36,21 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; +import java.awt.Color; +import java.awt.Graphics; -import java.awt.*; -import java.awt.geom.Line2D; +import ui.AllowedBreakpoint; +import ui.BasicErrorHighlight; +import ui.ColorManager; +import ui.EmbeddedComment; +import ui.ErrorHighlight; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADForLoop; /** * Class TMLADForEverLoop @@ -55,41 +59,39 @@ import java.awt.geom.Line2D; * @version 1.0 19/11/2008 * @author Ludovic APVRILLE */ -public class TMLADForEverLoop extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { - protected int lineLength = 5; - protected int textX = 5; - protected int textY = 15; - protected int arc = 5; - - protected int stateOfError = 0; // Not yet checked +public class TMLADForEverLoop extends TADForLoop /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +// protected int lineLength = 5; +// protected int textX = 5; +// protected int textY = 15; +// protected int arc = 5; +// +// protected int stateOfError = 0; // Not yet checked public TMLADForEverLoop(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - width = 30; - height = 20; - minWidth = 30; +// width = 30; +// height = 20; +// minWidth = 30; nbConnectingPoint = 2; connectingPoint = new TGConnectingPoint[2]; - connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop + connectingPoint[ INDEX_ENTER_LOOP ] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); + connectingPoint[ INDEX_INSIDE_LOOP ] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop //connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp - moveable = true; - editable = true; - removable = true; +// moveable = true; +// editable = true; +// removable = true; value = "Loop for ever"; name = "for ever loop"; - myImageIcon = IconManager.imgic912; + // myImageIcon = IconManager.imgic912; } - + @Override public void internalDrawing(Graphics g) { - - int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); if ((w1 != width) & (!tdp.isScaled())) { @@ -142,32 +144,33 @@ public class TMLADForEverLoop extends TGCWithoutInternalComponent implements Emb return false; }*/ - public TGComponent isOnMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+(width/2), y-lineLength, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+width, y+height/2, x+width +lineLength, y+height/2, _x, _y)) < distanceSelected) { - return this; - } - - return null; - } - +// public TGComponent isOnMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+(width/2), y-lineLength, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+width, y+height/2, x+width +lineLength, y+height/2, _x, _y)) < distanceSelected) { +// return this; +// } +// +// return null; +// } + @Override public int getType() { return TGComponentManager.TMLAD_FOR_EVER_LOOP; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } - - public void setStateAction(int _stateAction) { - stateOfError = _stateAction; - } +// +// public void setStateAction(int _stateAction) { +// stateOfError = _stateAction; +// } } diff --git a/src/main/java/ui/tmlad/TMLADForLoop.java b/src/main/java/ui/tmlad/TMLADForLoop.java index c214fd743cc6d7e5e576502a4401cf5e3e220306..75e89fcb6ccc172803358b7d42af2e7dedad1763 100755 --- a/src/main/java/ui/tmlad/TMLADForLoop.java +++ b/src/main/java/ui/tmlad/TMLADForLoop.java @@ -36,22 +36,31 @@ * knowledge of the CeCILL license and that you accept its terms. */ +package ui.tmlad; +import java.awt.Color; +import java.awt.Graphics; +import javax.swing.JFrame; -package ui.tmlad; - -import myutil.GraphicLib; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; -import ui.*; -import ui.util.IconManager; -import ui.window.JDialogMultiString; -import javax.swing.*; -import java.awt.*; -import java.awt.geom.Line2D; +import myutil.GraphicLib; +import ui.AllowedBreakpoint; +import ui.BasicErrorHighlight; +import ui.ColorManager; +import ui.EmbeddedComment; +import ui.ErrorHighlight; +import ui.GTURTLEModeling; +import ui.MalformedModelingException; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADForLoop; +import ui.window.JDialogMultiString; /** * Class TMLADForLoop @@ -60,47 +69,48 @@ import java.awt.geom.Line2D; * @version 1.0 21/11/2005 * @author Ludovic APVRILLE */ -public class TMLADForLoop extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { - - private final static String IN_LOOP = "inside loop"; - private final static String EXIT_LOOP = "exit loop"; +public class TMLADForLoop extends TADForLoop /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { - - protected int lineLength = 5; - protected int textX = 5; - protected int textY = 15; - protected int arc = 5; +// private final static String IN_LOOP = "inside loop"; +// private final static String EXIT_LOOP = "exit loop"; +// +// +// protected int lineLength = 5; +// protected int textX = 5; +// protected int textY = 15; +// protected int arc = 5; protected String init = "i=0"; protected String condition = "i<5"; protected String increment = "i = i+1"; - protected int stateOfError = 0; // Not yet checked + // protected int stateOfError = 0; // Not yet checked public TMLADForLoop(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - width = 30; - height = 20; - minWidth = 30; +// width = 30; +// height = 20; +// minWidth = 30; nbConnectingPoint = 3; connectingPoint = new TGConnectingPoint[3]; - connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop - connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp - - moveable = true; - editable = true; - removable = true; + connectingPoint[ INDEX_ENTER_LOOP ] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); + connectingPoint[ INDEX_INSIDE_LOOP ] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop + connectingPoint[ INDEX_EXIT_LOOP ] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp +// +// moveable = true; +// editable = true; +// removable = true; makeValue(); name = "for loop"; - myImageIcon = IconManager.imgic912; + // myImageIcon = IconManager.imgic912; } + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -110,7 +120,7 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde //updateConnectingPoints(); } - if (stateOfError > 0) { + if ( isEnabled() && stateOfError > 0 ) { Color c = g.getColor(); switch(stateOfError) { case ErrorHighlight.OK: @@ -130,13 +140,13 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde g.drawString(value, x + (width - w) / 2 , y + textY); - // Info on loops - g.drawString(IN_LOOP, x+width+2, y+height/2); - //int wTmp = g.getFontMetrics().stringWidth(EXIT_LOOP); - g.drawString(EXIT_LOOP, x+width/2+2, y+height+10); - + // Info on loops + g.drawString(IN_LOOP, x+width+2, y+height/2); + //int wTmp = g.getFontMetrics().stringWidth(EXIT_LOOP); + g.drawString(EXIT_LOOP, x+width/2+2, y+height+10); } + @Override public boolean editOndoubleClick(JFrame frame) { String [] labels = new String[3]; String [] values = new String[3]; @@ -163,26 +173,25 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde } return false; - - } - - public TGComponent isOnMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+(width/2), y-lineLength, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+width, y+height/2, x+width +lineLength, y+height/2, _x, _y)) < distanceSelected) { - return this; - } - - return null; } - public void makeValue() { +// public TGComponent isOnMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+(width/2), y-lineLength, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+width, y+height/2, x+width +lineLength, y+height/2, _x, _y)) < distanceSelected) { +// return this; +// } +// +// return null; +// } + + private void makeValue() { value = "for(" + init + ";" + condition + ";" + increment + ")"; } @@ -202,6 +211,7 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde return increment; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data init=\""); @@ -219,16 +229,12 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{ // try { - NodeList nli; Node n1, n2; Element elt; // int k; // String s; - // - // - for(int i=0; i<nl.getLength(); i++) { n1 = nl.item(i); // @@ -251,23 +257,22 @@ public class TMLADForLoop extends TGCWithoutInternalComponent implements Embedde } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeValue(); } - + @Override public int getType() { return TGComponentManager.TMLAD_FOR_LOOP; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } - - public void setStateAction(int _stateAction) { - stateOfError = _stateAction; - } - - +// +// public void setStateAction(int _stateAction) { +// stateOfError = _stateAction; +// } } diff --git a/src/main/java/ui/tmlad/TMLADForStaticLoop.java b/src/main/java/ui/tmlad/TMLADForStaticLoop.java index 1c85ff268f29ce7f136ba3de759bdffcab9fdc49..5f38637077528baa1aec8360ebf6aaf79672fcc0 100755 --- a/src/main/java/ui/tmlad/TMLADForStaticLoop.java +++ b/src/main/java/ui/tmlad/TMLADForStaticLoop.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; import ui.*; +import ui.ad.TADForLoop; import ui.util.IconManager; import javax.swing.*; @@ -56,50 +54,51 @@ import java.awt.geom.Line2D; * @version 1.0 21/11/2005 * @author Ludovic APVRILLE */ -public class TMLADForStaticLoop extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { - private final static String IN_LOOP = "inside loop"; - private final static String EXIT_LOOP = "exit loop"; - - protected int lineLength = 5; - protected int textX = 5; - protected int textY = 15; - protected int arc = 5; +public class TMLADForStaticLoop extends TADForLoop /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +// private final static String IN_LOOP = "inside loop"; +// private final static String EXIT_LOOP = "exit loop"; +// +// protected int lineLength = 5; +// protected int textX = 5; +// protected int textY = 15; +// protected int arc = 5; protected String valueLoop = ""; - protected int stateOfError = 0; // Not yet checked + //protected int stateOfError = 0; // Not yet checked public TMLADForStaticLoop(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - width = 30; - height = 20; - minWidth = 30; +// width = 30; +// height = 20; +// minWidth = 30; nbConnectingPoint = 3; connectingPoint = new TGConnectingPoint[3]; - connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop - connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp + connectingPoint[ INDEX_ENTER_LOOP ] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); + connectingPoint[ INDEX_INSIDE_LOOP ] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 1.0, 0.45); // loop + connectingPoint[ INDEX_EXIT_LOOP ] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp - moveable = true; - editable = true; - removable = true; +// moveable = true; +// editable = true; +// removable = true; value = "10"; name = "for loop"; - myImageIcon = IconManager.imgic912; +// myImageIcon = IconManager.imgic912; } - public void makeValueLoop() { + private void makeValueLoop() { valueLoop = "Loop " + value + " times"; } + @Override public void internalDrawing(Graphics g) { - if (valueLoop.length() == 0) { makeValueLoop(); } + int w = g.getFontMetrics().stringWidth(valueLoop); int w1 = Math.max(minWidth, w + 2 * textX); if ((w1 != width) & (!tdp.isScaled())) { @@ -134,6 +133,7 @@ public class TMLADForStaticLoop extends TGCWithoutInternalComponent implements E } + @Override public boolean editOndoubleClick(JFrame frame) { String text = "Static for loop : "; String s = (String)JOptionPane.showInputDialog(frame, text, @@ -145,8 +145,6 @@ public class TMLADForStaticLoop extends TGCWithoutInternalComponent implements E s = s.trim(); } - // - if ((s != null) && (s.length() > 0) && (s.matches("\\d*"))) { setValue(s); makeValueLoop(); @@ -157,6 +155,7 @@ public class TMLADForStaticLoop extends TGCWithoutInternalComponent implements E return false; } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -173,16 +172,17 @@ public class TMLADForStaticLoop extends TGCWithoutInternalComponent implements E return null; } - + @Override public int getType() { return TGComponentManager.TMLAD_FOR_STATIC_LOOP; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } - - public void setStateAction(int _stateAction) { - stateOfError = _stateAction; - } +// +// public void setStateAction(int _stateAction) { +// stateOfError = _stateAction; +// } } diff --git a/src/main/java/ui/tmlad/TMLADNotifiedEvent.java b/src/main/java/ui/tmlad/TMLADNotifiedEvent.java index c48a8ba84807206ab4fe9f10ec21b9400bb21719..174ae7f50293825ebb3c860cc224936ad96626a7 100755 --- a/src/main/java/ui/tmlad/TMLADNotifiedEvent.java +++ b/src/main/java/ui/tmlad/TMLADNotifiedEvent.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; @@ -46,6 +43,7 @@ import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import ui.*; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; import ui.window.JDialogMultiString; @@ -60,7 +58,7 @@ import java.awt.geom.Line2D; * @version 1.0 27/10/2006 * @author Ludovic APVRILLE */ -public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADNotifiedEvent extends TADComponentWithoutSubcomponents/* Issue #69TGCWithoutInternalComponent */ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -94,6 +92,7 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E myImageIcon = IconManager.imgic904; } + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 3 * textX); @@ -147,6 +146,7 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E g.drawString(value, x + linebreak + textX1, y + textY); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -159,7 +159,7 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E return null; } - public void makeValue() { + private void makeValue() { value = result + "=?" + eventName + "()"; } @@ -180,6 +180,7 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E return value; } + @Override public boolean editOndoubleClick(JFrame frame) { String [] labels = new String[2]; String [] values = new String[2]; @@ -205,6 +206,7 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data eventName=\""); @@ -218,18 +220,13 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{ - // try { - NodeList nli; Node n1, n2; Element elt; // int k; // String s; - // - // - for(int i=0; i<nl.getLength(); i++) { n1 = nl.item(i); // @@ -251,23 +248,22 @@ public class TMLADNotifiedEvent extends TGCWithoutInternalComponent implements E } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeValue(); } - + @Override public int getType() { return TGComponentManager.TMLAD_NOTIFIED_EVENT; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - - } diff --git a/src/main/java/ui/tmlad/TMLADRandom.java b/src/main/java/ui/tmlad/TMLADRandom.java index 50879302ac79cdb469c0bc0b4f15f81fb558ae1c..45e41fe525452fe78f1469450f236f90cb7ad5ec 100755 --- a/src/main/java/ui/tmlad/TMLADRandom.java +++ b/src/main/java/ui/tmlad/TMLADRandom.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; @@ -46,6 +43,7 @@ import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import ui.*; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; import ui.window.JDialogTMLADRandom; @@ -60,7 +58,7 @@ import java.awt.geom.Line2D; * @version 1.0 10/06/2008 * @author Ludovic APVRILLE */ -public class TMLADRandom extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADRandom extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent */implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -97,12 +95,12 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded myImageIcon = IconManager.imgic912; } - public void makeValue() { + private void makeValue() { valueRandom = variable + " = RANDOM" + functionId + "(" + minValue + ", " + maxValue + ")"; } + @Override public void internalDrawing(Graphics g) { - if (valueRandom.length() == 0) { makeValue(); } @@ -136,6 +134,7 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded g.drawString(valueRandom, x + (width - w) / 2 , y + textY); } + @Override public boolean editOndoubleClick(JFrame frame) { boolean error = false; String errors = ""; @@ -191,6 +190,7 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded return true; } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -223,6 +223,7 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded return functionId; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data variable=\""); @@ -240,18 +241,13 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{ - // try { - NodeList nli; Node n1, n2; Element elt; // int k; String s; - // - // - for(int i=0; i<nl.getLength(); i++) { n1 = nl.item(i); // @@ -281,23 +277,23 @@ public class TMLADRandom extends TGCWithoutInternalComponent implements Embedded } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeValue(); } - + @Override public int getType() { return TGComponentManager.TMLAD_RANDOM; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - - } diff --git a/src/main/java/ui/tmlad/TMLADReadChannel.java b/src/main/java/ui/tmlad/TMLADReadChannel.java index 97b2a4358cde48b05e00ece0fbda06432b9d9e4d..0e4ec24024cbc7581e7e30876891dc4e86e2189f 100755 --- a/src/main/java/ui/tmlad/TMLADReadChannel.java +++ b/src/main/java/ui/tmlad/TMLADReadChannel.java @@ -36,26 +36,41 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.tmlad; -import myutil.GraphicLib; +import java.awt.Color; +import java.awt.Graphics; +import java.awt.geom.Line2D; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +import javax.swing.JFrame; + import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; -import ui.*; + +import myutil.GraphicLib; +import ui.AllowedBreakpoint; +import ui.BasicErrorHighlight; +import ui.CheckableAccessibility; +import ui.CheckableLatency; +import ui.ColorManager; +import ui.EmbeddedComment; +import ui.ErrorHighlight; +import ui.LinkedReference; +import ui.MalformedModelingException; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; -import ui.window.JDialogMultiString; -import myutil.*; import ui.window.JDialogMultiStringAndTabs; import ui.window.TabInfo; -import javax.swing.*; -import java.awt.*; -import java.awt.geom.Line2D; -import java.util.ArrayList; -import java.util.concurrent.ConcurrentHashMap; - /** * Class TMLADReadChannel * Action of writing data in channel @@ -64,8 +79,8 @@ import java.util.concurrent.ConcurrentHashMap; * @author Ludovic APVRILLE * @version 1.0 21/11/2005 */ -public class TMLADReadChannel extends TGCWithoutInternalComponent implements CheckableAccessibility, LinkedReference, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { - private ConcurrentHashMap<String, String> latencyVals; +public class TMLADReadChannel extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements CheckableAccessibility, LinkedReference, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { + private Map<String, String> latencyVals; protected int lineLength = 5; protected int textX = 5; protected int textX0 = 2; @@ -117,17 +132,17 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che myImageIcon = IconManager.imgic906; latencyVals = new ConcurrentHashMap<String, String>(); //latencyVals.put("sendChannel: sensorData", "3"); - } /*public void addLatency(String name, String num){ latencyVals.put(name,num); }*/ - public ConcurrentHashMap<String, String> getLatencyMap() { + public Map<String, String> getLatencyMap() { return latencyVals; } + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -201,7 +216,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che } } - public void drawLatencyInformation(Graphics g) { + private void drawLatencyInformation(Graphics g) { int index = 1; for (String s : latencyVals.keySet()) { int w = g.getFontMetrics().stringWidth(s); @@ -213,9 +228,8 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che } } - public void drawReachabilityInformation(Graphics g) { + private void drawReachabilityInformation(Graphics g) { if (reachabilityInformation > 0) { - Color c = g.getColor(); Color c1; switch (reachabilityInformation) { @@ -242,6 +256,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che } } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -270,6 +285,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che return value; } + @Override public boolean editOndoubleClick(JFrame frame) { TabInfo tab1 = new TabInfo("Name and samples"); String[] labels = new String[2]; @@ -280,7 +296,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che values[1] = nbOfSamples; tab1.labels=labels; tab1.values = values; - ArrayList<String[]> help = new ArrayList<String[]>(); + List<String[]> help = new ArrayList<String[]>(); String[] allInChannels = tdp.getMGUI().getAllInChannels(); if (isAttacker) { allInChannels = tdp.getMGUI().getAllCompInChannels(); @@ -307,7 +323,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che tab2.values = values; tab2.help = help; - ArrayList<TabInfo> tabs = new ArrayList<>(); + List<TabInfo> tabs = new ArrayList<>(); tabs.add(tab1); tabs.add(tab2); @@ -328,8 +344,6 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che } return false; - - } public void setSamples(String sp) { @@ -337,6 +351,7 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che makeValue(); } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data channelName=\""); @@ -388,12 +403,11 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeValue(); } - public String getSecurityContext() { return securityContext; } @@ -406,18 +420,22 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che return isAttacker; } + @Override public int getType() { return TGComponentManager.TMLAD_READ_CHANNEL; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - public boolean getEncForm(){ + + public boolean getEncForm(){ return isEncForm; } @@ -430,5 +448,4 @@ public class TMLADReadChannel extends TGCWithoutInternalComponent implements Che channelName = s; makeValue(); } - } diff --git a/src/main/java/ui/tmlad/TMLADReadRequestArg.java b/src/main/java/ui/tmlad/TMLADReadRequestArg.java index f6d1b240b784acb2a6fcfe28c49eda9b9eb4b66c..89a6fd960122b7adea9cf65d68f1c0ddcbc10132 100755 --- a/src/main/java/ui/tmlad/TMLADReadRequestArg.java +++ b/src/main/java/ui/tmlad/TMLADReadRequestArg.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; @@ -46,6 +43,7 @@ import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import ui.*; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; import ui.window.JDialogMultiString; @@ -60,7 +58,7 @@ import java.awt.geom.Line2D; * @version 1.0 11/02/201 * @author Ludovic APVRILLE */ -public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADReadRequestArg extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -152,8 +150,8 @@ public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements return value; } + @Override public void internalDrawing(Graphics g) { - if (value.length() == 0) { makeValue(); } @@ -189,6 +187,7 @@ public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements g.drawString(value, x + (width - w) / 2 , y + textY); } + @Override public boolean editOndoubleClick(JFrame frame) { String [] labels = new String[nParam]; String [] values = new String[nParam]; @@ -214,6 +213,7 @@ public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -255,9 +255,6 @@ public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements int k; String s; - // - // - for(int i=0; i<nl.getLength(); i++) { n1 = nl.item(i); // @@ -287,18 +284,18 @@ public class TMLADReadRequestArg extends TGCWithoutInternalComponent implements makeValue(); } - + @Override public int getType() { return TGComponentManager.TMLAD_READ_REQUEST_ARG; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - - } diff --git a/src/main/java/ui/tmlad/TMLADSelectEvt.java b/src/main/java/ui/tmlad/TMLADSelectEvt.java index 8e48f75f1e2476b26b19eb1a9bd66df30b3ecfa9..693b65b5838544a27d216404b4c2d65f3c4afb4e 100755 --- a/src/main/java/ui/tmlad/TMLADSelectEvt.java +++ b/src/main/java/ui/tmlad/TMLADSelectEvt.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; import ui.*; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; import java.awt.*; @@ -55,7 +53,7 @@ import java.awt.geom.Line2D; * @version 1.0 06/04/2007 * @author Ludovic APVRILLE */ -public class TMLADSelectEvt extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADSelectEvt extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { private int lineLength = 10; private int lineOutLength = 25; //private int textX1, textY1, textX2, textY2, textX3, textY3; @@ -96,8 +94,8 @@ public class TMLADSelectEvt extends TGCWithoutInternalComponent implements Embed myImageIcon = IconManager.imgic208; } + @Override public void internalDrawing(Graphics g) { - if (stateOfError > 0) { Color c = g.getColor(); switch(stateOfError) { @@ -126,9 +124,9 @@ public class TMLADSelectEvt extends TGCWithoutInternalComponent implements Embed //g.drawString("select", x, y + height/2 - 5); g.drawString("evt", x+7, y + height/2 + 3); - } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -153,15 +151,27 @@ public class TMLADSelectEvt extends TGCWithoutInternalComponent implements Embed return null; } + @Override public int getType() { return TGComponentManager.TMLAD_SELECT_EVT; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } + + /* Issue #69 + * (non-Javadoc) + * @see ui.AbstractCDElement#canBeDisabled() + */ + @Override + public boolean canBeDisabled() { + return false; + } } diff --git a/src/main/java/ui/tmlad/TMLADSendEvent.java b/src/main/java/ui/tmlad/TMLADSendEvent.java index 3d73447ce45756e2490add2cb573139b46e6159a..9715bc12867b78b620b0a303d7daba12a4c615b3 100755 --- a/src/main/java/ui/tmlad/TMLADSendEvent.java +++ b/src/main/java/ui/tmlad/TMLADSendEvent.java @@ -36,22 +36,37 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.tmlad; -import myutil.GraphicLib; +import java.awt.Color; +import java.awt.Graphics; +import java.awt.geom.Line2D; +import java.util.ArrayList; +import java.util.List; + +import javax.swing.JFrame; + import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; -import ui.*; + +import myutil.GraphicLib; +import ui.AllowedBreakpoint; +import ui.BasicErrorHighlight; +import ui.CheckableAccessibility; +import ui.CheckableLatency; +import ui.ColorManager; +import ui.EmbeddedComment; +import ui.ErrorHighlight; +import ui.MalformedModelingException; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; import ui.window.JDialogMultiString; -import javax.swing.*; -import java.awt.*; -import java.awt.geom.Line2D; -import java.util.ArrayList; - /** * Class TMLADSendEvent * Action of sending an event @@ -60,7 +75,7 @@ import java.util.ArrayList; * @author Ludovic APVRILLE * @version 1.0 21/11/2005 */ -public class TMLADSendEvent extends TGCWithoutInternalComponent implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADSendEvent extends TADComponentWithoutSubcomponents implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -106,8 +121,8 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check myImageIcon = IconManager.imgic904; } + @Override public void internalDrawing(Graphics g) { - int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); if ((w1 != width) & (!tdp.isScaled())) { @@ -116,7 +131,8 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check } - if (stateOfError > 0) { + // Issue #69 + if ( isEnabled() && stateOfError > 0) { Color c = g.getColor(); switch (stateOfError) { case ErrorHighlight.OK: @@ -147,7 +163,12 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check int y1 = y + 1; int height1 = height; int width1 = width; - g.setColor(ColorManager.TML_PORT_EVENT); + + // Issue #69 + if ( isEnabled() ) { + g.setColor(ColorManager.TML_PORT_EVENT); + } + g.drawLine(x1, y1, x1 + width1 - linebreak, y1); g.drawLine(x1, y1 + height1, x1 + width1 - linebreak, y1 + height1); g.drawLine(x1, y1, x1, y1 + height1); @@ -166,10 +187,9 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check g.drawString(value, x + (width - w) / 2, y + textY); drawReachabilityInformation(g); - } - public void drawReachabilityInformation(Graphics g) { + private void drawReachabilityInformation(Graphics g) { if (reachabilityInformation > 0) { Color c = g.getColor(); @@ -194,6 +214,7 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check } } + // @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -206,7 +227,7 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check return null; } - public void makeValue() { + private void makeValue() { boolean first = true; value = eventName + "("; for (int i = 0; i < nParam; i++) { @@ -269,6 +290,7 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check return value; } + @Override public boolean editOndoubleClick(JFrame frame) { String[] labels = new String[nParam + 1]; String[] values = new String[nParam + 1]; @@ -278,7 +300,8 @@ public class TMLADSendEvent extends TGCWithoutInternalComponent implements Check labels[i + 1] = "Param #" + (i + 1); values[i + 1] = params[i]; } - ArrayList<String[]> help = new ArrayList<String[]>(); + + List<String[]> help = new ArrayList<String[]>(); String[] allOutEvents = tdp.getMGUI().getAllOutEvents(); help.add(allOutEvents); diff --git a/src/main/java/ui/tmlad/TMLADSendRequest.java b/src/main/java/ui/tmlad/TMLADSendRequest.java index 4d1a9033b76c54d5b05152561d59b2068f56f1a5..8bb62a0d90b6f78aca0583f55df0d55ce4de5240 100755 --- a/src/main/java/ui/tmlad/TMLADSendRequest.java +++ b/src/main/java/ui/tmlad/TMLADSendRequest.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; @@ -46,13 +43,17 @@ import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import ui.*; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; import ui.window.JDialogMultiString; import javax.swing.*; -import java.awt.*; + +import java.awt.Color; +import java.awt.Graphics; import java.awt.geom.Line2D; import java.util.ArrayList; +import java.util.List; /** * Class TMLADSendRequest @@ -61,7 +62,7 @@ import java.util.ArrayList; * @version 1.0 18/11/2005 * @author Ludovic APVRILLE */ -public class TMLADSendRequest extends TGCWithoutInternalComponent implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADSendRequest extends TADComponentWithoutSubcomponents/* Issue #69TGCWithoutInternalComponent*/ implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -107,6 +108,7 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che myImageIcon = IconManager.imgic902; } + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -157,11 +159,11 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che g.drawString("req", x+(width-w) / 2, y); g.drawString(value, x + (width - w) / 2 , y + textY); - drawReachabilityInformation(g); + drawReachabilityInformation(g); } - public void drawReachabilityInformation(Graphics g) { + + private void drawReachabilityInformation(Graphics g) { if (reachabilityInformation > 0) { - Color c = g.getColor(); Color c1; switch(reachabilityInformation) { @@ -181,9 +183,10 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che g.fillRect(x-12, y-7, 9, 7); g.setColor(c); g.drawRect(x-12, y-7, 9, 7); - } } + + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -218,7 +221,6 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che return requestName; } - public void setRequestName(String name){ requestName = name; makeValue(); @@ -263,6 +265,7 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che return value; } + @Override public boolean editOndoubleClick(JFrame frame) { String [] labels = new String[nParam + 1]; String [] values = new String[nParam + 1]; @@ -273,9 +276,9 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che values[i+1] = params[i]; } - ArrayList<String []> help = new ArrayList<String []>(); - String[] allOutRequests = tdp.getMGUI().getAllOutRequests(); - help.add(allOutRequests); + List<String []> help = new ArrayList<String []>(); + String[] allOutRequests = tdp.getMGUI().getAllOutRequests(); + help.add(allOutRequests); JDialogMultiString jdms = new JDialogMultiString(frame, "Setting request's properties", nParam+1, labels, values, help); // jdms.setSize(350, 300); @@ -293,9 +296,9 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che } return false; - } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data requestName=\""); @@ -326,9 +329,6 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che int k; String s; - // - // - for(int i=0; i<nl.getLength(); i++) { n1 = nl.item(i); // @@ -354,22 +354,23 @@ public class TMLADSendRequest extends TGCWithoutInternalComponent implements Che } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeValue(); } - + @Override public int getType() { return TGComponentManager.TMLAD_SEND_REQUEST; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - } diff --git a/src/main/java/ui/tmlad/TMLADSequence.java b/src/main/java/ui/tmlad/TMLADSequence.java index ce9d380867124519c4ba27305b237ea9205896ef..c29c9d814cfccf780f8bfe8d908b9a5b1c6cdb34 100755 --- a/src/main/java/ui/tmlad/TMLADSequence.java +++ b/src/main/java/ui/tmlad/TMLADSequence.java @@ -36,16 +36,15 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; +import ui.AllowedBreakpoint; +import ui.EmbeddedComment; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADSequence; /** * Class TMLADSequence @@ -54,66 +53,71 @@ import java.awt.*; * @version 1.0 13/03/2006 * @author Ludovic APVRILLE */ -public class TMLADSequence extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint { - private int lineLength = 0; - private int textX, textY; +public class TMLADSequence extends TADSequence /* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint { + // private int lineLength = 0; + //private int textX, textY; public TMLADSequence(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - - width = 150; - height = 5; - - textX = width - 6; - textY = height + 2; - +// width = 150; +// height = 5; +// +// textX = width - 6; +// textY = height + 2; +// +// nbConnectingPoint = 6; +// connectingPoint = new TGConnectingPoint[6]; +// connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); +// connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0); +// connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.333, 1.0); +// connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); +// connectingPoint[4] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.667, 1.0); +// connectingPoint[5] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.833, 1.0); +// +// nbInternalTGComponent = 1; +// tgcomponent = new TGComponent[nbInternalTGComponent]; +// +// TGCOneLineText tgc = new TGCOneLineText(x+textX + 10, y+textY, textX +10 , textX + 10 , textY, textY, true, this, _tdp); +// tgc.setValue(">>"); +// tgc.setName("Sequence"); +// tgc.setEditable(false); +// +// tgcomponent[0] = tgc; +// +// moveable = true; +// editable = false; +// removable = true; +// +// name = "sequence"; +// +// myImageIcon = IconManager.imgic206; + } + + @Override + protected void createConnectingPoints() { nbConnectingPoint = 6; connectingPoint = new TGConnectingPoint[6]; connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0); + connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0); connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.333, 1.0); connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); connectingPoint[4] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.667, 1.0); connectingPoint[5] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.833, 1.0); - - nbInternalTGComponent = 1; - tgcomponent = new TGComponent[nbInternalTGComponent]; - - TGCOneLineText tgc = new TGCOneLineText(x+textX + 10, y+textY, textX +10 , textX + 10 , textY, textY, true, this, _tdp); - tgc.setValue(">>"); - tgc.setName("Sequence"); - tgc.setEditable(false); - - tgcomponent[0] = tgc; - - moveable = true; - editable = false; - removable = true; - - name = "sequence"; - - myImageIcon = IconManager.imgic206; } - public void internalDrawing(Graphics g) { - g.drawRect(x, y, width, height); - g.fillRect(x, y, width, height); - } +// public void internalDrawing(Graphics g) { +// g.drawRect(x, y, width, height); +// g.fillRect(x, y, width, height); +// } - public TGComponent isOnOnlyMe(int x1, int y1) { - if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { - return this; - } - return null; - } - + @Override public int getType() { return TGComponentManager.TMLAD_SEQUENCE; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } - } diff --git a/src/main/java/ui/tmlad/TMLADStartState.java b/src/main/java/ui/tmlad/TMLADStartState.java index 5e0e06b9d56462d653809e1960fbac4a2925ab0e..0fa07b1319dba0045d4045d4c243ef2490af8de7 100755 --- a/src/main/java/ui/tmlad/TMLADStartState.java +++ b/src/main/java/ui/tmlad/TMLADStartState.java @@ -36,17 +36,14 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; -import java.awt.geom.Line2D; +import ui.EmbeddedComment; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADStartState; /** * Class TMLADStartState @@ -55,53 +52,61 @@ import java.awt.geom.Line2D; * @version 1.0 28/10/2005 * @author Ludovic APVRILLE */ -public class TMLADStartState extends TGCWithoutInternalComponent implements EmbeddedComment{ +public class TMLADStartState extends TADStartState /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment{ private int lineLength = 5; public TMLADStartState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - - width = 15; - height = 15; - +// +// width = 15; +// height = 15; +// +// nbConnectingPoint = 1; +// connectingPoint = new TGConnectingPoint[1]; +// connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); +// +// nbInternalTGComponent = 0; +// +// moveable = true; +// editable = false; +// removable = true; +// +// name = "start state"; +// +// myImageIcon = IconManager.imgic222; + } + + @Override + protected void createConnectingPoints() { nbConnectingPoint = 1; connectingPoint = new TGConnectingPoint[1]; connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); - - nbInternalTGComponent = 0; - - moveable = true; - editable = false; - removable = true; - - name = "start state"; - - myImageIcon = IconManager.imgic222; } - public void internalDrawing(Graphics g) { - g.fillOval(x, y, width, height); - g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); - } - - public TGComponent isOnMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+(width/2), y+height, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) { - return this; - } - - return null; - } +// public void internalDrawing(Graphics g) { +// g.fillOval(x, y, width, height); +// g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); +// } +// +// public TGComponent isOnMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+(width/2), y+height, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) { +// return this; +// } +// +// return null; +// } + @Override public int getType() { return TGComponentManager.TMLAD_START_STATE; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } - } diff --git a/src/main/java/ui/tmlad/TMLADStopState.java b/src/main/java/ui/tmlad/TMLADStopState.java index 09cecbfca23954a0274e3342da25fa99ae0a53ac..516a2dcddad5fd7669d777b45092a8461bbfeceb 100755 --- a/src/main/java/ui/tmlad/TMLADStopState.java +++ b/src/main/java/ui/tmlad/TMLADStopState.java @@ -36,16 +36,15 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; +import ui.AllowedBreakpoint; +import ui.EmbeddedComment; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADStopState; /** * Class TMLADStopState @@ -54,59 +53,59 @@ import java.awt.*; * @version 1.0 28/10/2005 * @author Ludovic APVRILLE */ -public class TMLADStopState extends TGCWithoutInternalComponent implements EmbeddedComment, AllowedBreakpoint { - private int internalCircleSize = 16; - private int lineLength = 5; +public class TMLADStopState extends TADStopState /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint { +// private int internalCircleSize = 16; +// private int lineLength = 5; public TMLADStopState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - - width = 20; - height = 20; - - nbConnectingPoint = 1; - connectingPoint = new TGConnectingPoint[1]; - connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, - lineLength, true, false, 0.5, 0.0); - - nbInternalTGComponent = 0; - - moveable = true; - editable = false; - removable = true; - - name = "stop state"; - - myImageIcon = IconManager.imgic210; +// +// width = 20; +// height = 20; +// +// nbConnectingPoint = 1; +// connectingPoint = new TGConnectingPoint[1]; +// connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, - lineLength, true, false, 0.5, 0.0); +// +// nbInternalTGComponent = 0; +// +// moveable = true; +// editable = false; +// removable = true; +// +// name = "stop state"; +// +// myImageIcon = IconManager.imgic210; } - public void internalDrawing(Graphics g) { - ColorManager.setColor(g, state, 0); - g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize); - g.drawOval(x, y, width, height); - g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); - } - - - public TGComponent isOnMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - return null; + @Override + protected void createConnectingPoints() { + nbConnectingPoint = 1; + connectingPoint = new TGConnectingPoint[1]; + connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, - lineLength, true, false, 0.5, 0.0); } +// public void internalDrawing(Graphics g) { +// ColorManager.setColor(g, state, 0); +// g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize); +// g.drawOval(x, y, width, height); +// g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); +// } +// +// +// public TGComponent isOnMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// return null; +// } + @Override public int getType() { return TGComponentManager.TMLAD_STOP_STATE; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } - } - - - - - - - diff --git a/src/main/java/ui/tmlad/TMLADUnorderedSequence.java b/src/main/java/ui/tmlad/TMLADUnorderedSequence.java index aca4f9bd327004739889f7edde30fc4a75646250..0df1f8d927889b4f42d3fbfa40adae92cadd6289 100755 --- a/src/main/java/ui/tmlad/TMLADUnorderedSequence.java +++ b/src/main/java/ui/tmlad/TMLADUnorderedSequence.java @@ -36,16 +36,15 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; +import ui.AllowedBreakpoint; +import ui.EmbeddedComment; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADSequence; /** * Class TMLADUnorderedSequence @@ -54,66 +53,77 @@ import java.awt.*; * @version 1.0 07/07/2010 * @author Ludovic APVRILLE */ -public class TMLADUnorderedSequence extends TGCWithInternalComponent implements EmbeddedComment, AllowedBreakpoint { - private int lineLength = 0; - private int textX, textY; +public class TMLADUnorderedSequence extends TADSequence/* Issue #69 TGCWithInternalComponent*/ implements EmbeddedComment, AllowedBreakpoint { +// private int lineLength = 0; +// private int textX, textY; public TMLADUnorderedSequence(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - - width = 150; - height = 5; - - textX = width - 6; - textY = height + 2; - +// width = 150; +// height = 5; +// +// textX = width - 6; +// textY = height + 2; +// +// nbConnectingPoint = 6; +// connectingPoint = new TGConnectingPoint[6]; +// connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); +// connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0); +// connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.333, 1.0); +// connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); +// connectingPoint[4] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.667, 1.0); +// connectingPoint[5] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.833, 1.0); +// +// nbInternalTGComponent = 1; +// tgcomponent = new TGComponent[nbInternalTGComponent]; +// +// TGCOneLineText tgc = new TGCOneLineText(x+textX + 10, y+textY, textX +10 , textX + 10 , textY, textY, true, this, _tdp); +// tgc.setValue("<>"); +// tgc.setName("Random sequence"); +// tgc.setEditable(false); +// +// tgcomponent[0] = tgc; +// +// moveable = true; +// editable = false; +// removable = true; +// +// name = "random sequence"; +// +// myImageIcon = IconManager.imgic206; + } + + @Override + protected void createConnectingPoints() { nbConnectingPoint = 6; connectingPoint = new TGConnectingPoint[6]; connectingPoint[0] = new TGConnectingPointTMLAD(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0); + connectingPoint[1] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.167, 1.0); connectingPoint[2] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.333, 1.0); connectingPoint[3] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.5, 1.0); connectingPoint[4] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.667, 1.0); connectingPoint[5] = new TGConnectingPointTMLAD(this, 0, lineLength, false, true, 0.833, 1.0); - - nbInternalTGComponent = 1; - tgcomponent = new TGComponent[nbInternalTGComponent]; - - TGCOneLineText tgc = new TGCOneLineText(x+textX + 10, y+textY, textX +10 , textX + 10 , textY, textY, true, this, _tdp); - tgc.setValue("<>"); - tgc.setName("Random sequence"); - tgc.setEditable(false); - - tgcomponent[0] = tgc; - - moveable = true; - editable = false; - removable = true; - - name = "random sequence"; - - myImageIcon = IconManager.imgic206; - } - - public void internalDrawing(Graphics g) { - g.drawRect(x, y, width, height); - g.fillRect(x, y, width, height); } +// public void internalDrawing(Graphics g) { +// g.drawRect(x, y, width, height); +// g.fillRect(x, y, width, height); +// } - public TGComponent isOnOnlyMe(int x1, int y1) { - if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { - return this; - } - return null; - } +// public TGComponent isOnOnlyMe(int x1, int y1) { +// if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { +// return this; +// } +// return null; +// } + @Override public int getType() { return TGComponentManager.TMLAD_UNORDERED_SEQUENCE; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLAD; + return TGComponentManager.CONNECTOR_TMLAD; } - } diff --git a/src/main/java/ui/tmlad/TMLADWaitEvent.java b/src/main/java/ui/tmlad/TMLADWaitEvent.java index 91da01c21690508513f8276d4b1e27da9fac00d7..ae17151b2df4d2d5f186a09c4251719384ba35a8 100755 --- a/src/main/java/ui/tmlad/TMLADWaitEvent.java +++ b/src/main/java/ui/tmlad/TMLADWaitEvent.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlad; import myutil.GraphicLib; @@ -46,13 +43,17 @@ import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import ui.*; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; import ui.window.JDialogMultiString; import javax.swing.*; -import java.awt.*; + +import java.awt.Color; +import java.awt.Graphics; import java.awt.geom.Line2D; import java.util.ArrayList; +import java.util.List; /** * Class TMLADWaitEvent @@ -61,7 +62,7 @@ import java.util.ArrayList; * @version 1.0 21/11/2005 * @author Ludovic APVRILLE */ -public class TMLADWaitEvent extends TGCWithoutInternalComponent implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADWaitEvent extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements CheckableAccessibility, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -107,6 +108,7 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check myImageIcon = IconManager.imgic904; } + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -116,7 +118,8 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check //updateConnectingPoints(); } - if (stateOfError > 0) { + // Issue #69 + if ( isEnabled() && stateOfError > 0) { Color c = g.getColor(); switch(stateOfError) { case ErrorHighlight.OK: @@ -141,7 +144,12 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check int y1 = y + 1; int height1 = height; int width1 = width; - g.setColor(ColorManager.TML_PORT_EVENT); + + // Issue #69 + if ( isEnabled() ) { + g.setColor(ColorManager.TML_PORT_EVENT); + } + g.drawLine(x1, y1, x1+width1, y1); g.drawLine(x1+width1, y1, x1+width1, y1+height1); g.drawLine(x1, y1+height1, x1+width1, y1+height1); @@ -158,12 +166,12 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check g.drawString("evt", x+(width-w) / 2, y); g.drawString(value, x + linebreak + textX1, y + textY); - drawReachabilityInformation(g); - + drawReachabilityInformation(g); } - public void drawReachabilityInformation(Graphics g) { - if (reachabilityInformation > 0) { + private void drawReachabilityInformation(Graphics g) { + // Issue #69 + if ( isEnabled() && reachabilityInformation > 0 ) { Color c = g.getColor(); Color c1; switch(reachabilityInformation) { @@ -186,6 +194,8 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check } } + + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -216,8 +226,6 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check } - - public String getEventName() { return eventName; } @@ -268,6 +276,7 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check return value; } + @Override public boolean editOndoubleClick(JFrame frame) { String [] labels = new String[nParam + 1]; String [] values = new String[nParam + 1]; @@ -278,9 +287,9 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check values[i+1] = params[i]; } - ArrayList<String []> help = new ArrayList<String []>(); - String[] allInEvents = tdp.getMGUI().getAllInEvents(); - help.add(allInEvents); + List<String []> help = new ArrayList<String []>(); + String[] allInEvents = tdp.getMGUI().getAllInEvents(); + help.add(allInEvents); JDialogMultiString jdms = new JDialogMultiString(frame, "Setting event's properties", nParam+1, labels, values, help); // jdms.setSize(450, 300); @@ -301,6 +310,7 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data eventName=\""); @@ -359,22 +369,23 @@ public class TMLADWaitEvent extends TGCWithoutInternalComponent implements Check } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeValue(); } - + @Override public int getType() { return TGComponentManager.TMLAD_WAIT_EVENT; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - } diff --git a/src/main/java/ui/tmlad/TMLADWriteChannel.java b/src/main/java/ui/tmlad/TMLADWriteChannel.java index 3eb3ca19ac03d308891229890dce37ff025d1af7..f38f4dedba2a5f34977fa37aef4c0b706938c9b3 100755 --- a/src/main/java/ui/tmlad/TMLADWriteChannel.java +++ b/src/main/java/ui/tmlad/TMLADWriteChannel.java @@ -36,26 +36,42 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.tmlad; -import myutil.Conversion; -import myutil.GraphicLib; +import java.awt.Color; +import java.awt.Graphics; +import java.awt.geom.Line2D; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +import javax.swing.JFrame; + import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; -import ui.*; + +import myutil.Conversion; +import myutil.GraphicLib; +import ui.AllowedBreakpoint; +import ui.BasicErrorHighlight; +import ui.CheckableAccessibility; +import ui.CheckableLatency; +import ui.ColorManager; +import ui.EmbeddedComment; +import ui.ErrorHighlight; +import ui.LinkedReference; +import ui.MalformedModelingException; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; -import ui.window.JDialogMultiString; import ui.window.JDialogMultiStringAndTabs; import ui.window.TabInfo; -import javax.swing.*; -import java.awt.*; -import java.awt.geom.Line2D; -import java.util.ArrayList; -import java.util.concurrent.ConcurrentHashMap; - /** * Class TMLADWriteChannel * Action of writting data in channel @@ -64,7 +80,7 @@ import java.util.concurrent.ConcurrentHashMap; * @author Ludovic APVRILLE * @version 1.0 17/11/2005 */ -public class TMLADWriteChannel extends TGCWithoutInternalComponent implements CheckableAccessibility, LinkedReference, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { +public class TMLADWriteChannel extends TADComponentWithoutSubcomponents/* Issue #69 TGCWithoutInternalComponent*/ implements CheckableAccessibility, LinkedReference, CheckableLatency, EmbeddedComment, AllowedBreakpoint, BasicErrorHighlight { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -72,15 +88,13 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch protected int linebreak = 10; protected int decSec = 4; - - private ConcurrentHashMap<String, String> latencyVals; + private Map<String, String> latencyVals; protected int latencyX = 30; protected int latencyY = 25; protected int textWidth = 10; protected int textHeight = 20; - protected String channelName = "ch"; protected String nbOfSamples = "1"; protected String securityContext = ""; @@ -120,10 +134,11 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch latencyVals = new ConcurrentHashMap<String, String>(); } - public ConcurrentHashMap<String, String> getLatencyMap() { + public Map<String, String> getLatencyMap() { return latencyVals; } + @Override public void internalDrawing(Graphics g) { int w = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, w + 2 * textX); @@ -197,7 +212,7 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch drawReachabilityInformation(g); } - public void drawLatencyInformation(Graphics g) { + private void drawLatencyInformation(Graphics g) { int index = 1; for (String s : latencyVals.keySet()) { int w = g.getFontMetrics().stringWidth(s); @@ -209,12 +224,11 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch } } - public void addLatency(String name, String num) { latencyVals.put(name, num); } - public void drawReachabilityInformation(Graphics g) { + private void drawReachabilityInformation(Graphics g) { if (reachabilityInformation > 0) { Color c = g.getColor(); @@ -243,6 +257,7 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch } } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -282,6 +297,7 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch return value; } + @Override public boolean editOndoubleClick(JFrame frame) { TabInfo tab1 = new TabInfo("Name and samples"); String[] labels = new String[2]; @@ -295,7 +311,7 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch values[2] = securityContext; labels[3] = "Attacker?"; values[3] = isAttacker ? "Yes" : "No"; */ - ArrayList<String []> help = new ArrayList<String []>(); + List<String []> help = new ArrayList<String []>(); String[] allOutChannels = tdp.getMGUI().getAllOutChannels(); if (isAttacker){ allOutChannels =tdp.getMGUI().getAllCompOutChannels(); @@ -328,7 +344,7 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch tab2.values = values; tab2.help = help; - ArrayList<TabInfo> tabs = new ArrayList<>(); + List<TabInfo> tabs = new ArrayList<>(); tabs.add(tab1); tabs.add(tab2); @@ -347,15 +363,13 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch isEncForm = jdmsat.getString(1, 2).equals("Yes"); makeValue(); - - return true; } return false; - } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data channelName=\""); @@ -375,16 +389,11 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException { - // try { - NodeList nli; Node n1, n2; Element elt; - // - // - for (int i = 0; i < nl.getLength(); i++) { n1 = nl.item(i); // @@ -413,16 +422,17 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeValue(); } - + @Override public int getType() { return TGComponentManager.TMLAD_WRITE_CHANNEL; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLAD; } @@ -449,7 +459,6 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch securityContext = sc; } - public boolean isAttacker() { return isAttacker; } @@ -463,8 +472,8 @@ public class TMLADWriteChannel extends TGCWithoutInternalComponent implements Ch isEncForm=encForm; } + @Override public void setStateAction(int _stateAction) { stateOfError = _stateAction; } - } diff --git a/src/main/java/ui/tmlcompd/TMLCCompositeComponent.java b/src/main/java/ui/tmlcompd/TMLCCompositeComponent.java index 3358c81e3fd67605a8efadd60431fffbc13650d4..8c54b5663383e769bdb0e04106f94de0835e5910 100755 --- a/src/main/java/ui/tmlcompd/TMLCCompositeComponent.java +++ b/src/main/java/ui/tmlcompd/TMLCCompositeComponent.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcompd; import myutil.GraphicLib; @@ -49,8 +46,12 @@ import ui.*; import ui.util.IconManager; import javax.swing.*; -import java.awt.*; + +import java.awt.Color; +import java.awt.Font; +import java.awt.Graphics; import java.util.ArrayList; +import java.util.List; import java.util.ListIterator; /** @@ -111,6 +112,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp myImageIcon = IconManager.imgic1200; } + @Override public void internalDrawing(Graphics g) { int w; int c; @@ -158,7 +160,6 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp currentFontSize = maxCurrentFontSize; displayText = currentFontSize >= minFontSize; - } // Zoom is assumed to be computed @@ -191,6 +192,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp } } + @Override public void rescale(double scaleFactor){ dtextX = (textX + dtextX) / oldScaleFactor * scaleFactor; textX = (int)(dtextX); @@ -199,6 +201,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp super.rescale(scaleFactor); } + @Override public TGComponent isOnOnlyMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -206,7 +209,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp return null; } - + @Override public boolean editOndoubleClick(JFrame frame) { String s = (String)JOptionPane.showInputDialog(frame, "Name:", "Setting component name", JOptionPane.PLAIN_MESSAGE, IconManager.imgic100, @@ -233,25 +236,27 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp return false; } - + @Override public int getType() { return TGComponentManager.TMLCTD_CCOMPONENT; } + @Override public void wasSwallowed() { myColor = null; } + @Override public void wasUnswallowed() { myColor = null; setFather(null); TDiagramPanel tdp = getTDiagramPanel(); setCdRectangle(tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY()); - } + @Override public boolean acceptSwallowedTGComponent(TGComponent tgc) { - if (tgc instanceof TMLCCompositeComponent) { + if (tgc instanceof TMLCCompositeComponent) { return true; } @@ -268,9 +273,9 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp } return tgc instanceof TMLCCompositePort; - } + @Override public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) { boolean swallowed = false; @@ -332,6 +337,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp return true; } + @Override public void removeSwallowedTGComponent(TGComponent tgc) { // if (tgc instanceof TMLCCompositePort) { @@ -360,8 +366,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp } } - - + @Override public void hasBeenResized() { rescaled = true; for(int i=0; i<nbInternalTGComponent; i++) { @@ -387,6 +392,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp } } + @Override public void resizeWithFather() { if ((father != null) && ((father instanceof TMLCCompositeComponent) ||(father instanceof TMLCPrimitiveComponent))) { // Too large to fit in the father? -> resize it! @@ -397,8 +403,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp } } - public java.util.List<TMLCPrimitiveComponent> getAllPrimitiveComponents() { - ArrayList<TMLCPrimitiveComponent> ll = new ArrayList<TMLCPrimitiveComponent>(); + public List<TMLCPrimitiveComponent> getAllPrimitiveComponents() { + List<TMLCPrimitiveComponent> ll = new ArrayList<TMLCPrimitiveComponent>(); for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof TMLCCompositeComponent) { ll.addAll(((TMLCCompositeComponent)tgcomponent[i]).getAllPrimitiveComponents()); @@ -415,8 +421,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp return ll; } - public ArrayList<TMLCRecordComponent> getAllRecordComponents() { - ArrayList<TMLCRecordComponent> ll = new ArrayList<TMLCRecordComponent>(); + public List<TMLCRecordComponent> getAllRecordComponents() { + List<TMLCRecordComponent> ll = new ArrayList<TMLCRecordComponent>(); for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof TMLCCompositeComponent) { ll.addAll(((TMLCCompositeComponent)tgcomponent[i]).getAllRecordComponents()); @@ -433,7 +439,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp return ll; } - public void getAllCompositeComponents(ArrayList<String> list, String _name) { + public void getAllCompositeComponents( List<String> list, String _name) { String s; TMLCCompositeComponent tmlcc; for(int i=0; i<nbInternalTGComponent; i++) { @@ -446,8 +452,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp } } - public ArrayList<TMLCCompositePort> getAllInternalCompositePorts() { - ArrayList<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>(); + public List<TMLCCompositePort> getAllInternalCompositePorts() { + List<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>(); for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof TMLCCompositeComponent) { list.addAll(((TMLCCompositeComponent)tgcomponent[i]).getAllInternalCompositePorts()); @@ -463,8 +469,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp return list; } - public ArrayList<TMLCCompositePort> getAllReferencedCompositePorts() { - ArrayList<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>(); + public List<TMLCCompositePort> getAllReferencedCompositePorts() { + List<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>(); for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof TMLCCompositeComponent) { list.addAll(((TMLCCompositeComponent)tgcomponent[i]).getAllReferencedCompositePorts()); @@ -477,8 +483,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp return list; } - public ArrayList<TMLCCompositePort> getFirstLevelCompositePorts() { - ArrayList<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>(); + public List<TMLCCompositePort> getFirstLevelCompositePorts() { + List<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>(); for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof TMLCCompositePort) { list.add((TMLCCompositePort)(tgcomponent[i])); @@ -488,8 +494,8 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp return list; } - public ArrayList<TMLCPrimitivePort> getAllInternalPrimitivePorts() { - ArrayList<TMLCPrimitivePort> list = new ArrayList<TMLCPrimitivePort>(); + public List<TMLCPrimitivePort> getAllInternalPrimitivePorts() { + List<TMLCPrimitivePort> list = new ArrayList<TMLCPrimitivePort>(); for(int i=0; i<nbInternalTGComponent; i++) { if (tgcomponent[i] instanceof TMLCCompositeComponent) { @@ -540,6 +546,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp return null; } + @Override public void setInternalsHidden(boolean hide) { hiddeni = hide; for(int i=0; i<nbInternalTGComponent; i++) { @@ -553,20 +560,22 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp } } + @Override public boolean areInternalsHidden() { return hiddeni; } - - public void drawInternalComponentsWhenHidden(Graphics g) { - // - for(int i=0; i<nbInternalTGComponent; i++) { - if (tgcomponent[i] instanceof TMLCCompositePort) { - //ColorManager.setColor(g, tgcomponent[i].getState(), 0); - tgcomponent[i].draw(g); - } - } - } +// +// private void drawInternalComponentsWhenHidden(Graphics g) { +// // +// for(int i=0; i<nbInternalTGComponent; i++) { +// if (tgcomponent[i] instanceof TMLCCompositePort) { +// //ColorManager.setColor(g, tgcomponent[i].getState(), 0); +// tgcomponent[i].draw(g); +// } +// } +// } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<info hiddeni=\"" + hiddeni + "\" "); @@ -577,9 +586,7 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException{ - // try { - NodeList nli; Node n1, n2; Element elt; @@ -607,10 +614,11 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } } + @Override public void drawTGConnectingPoint(Graphics g, int type) { // for (int i=0; i<nbConnectingPoint; i++) { @@ -700,5 +708,4 @@ public class TMLCCompositeComponent extends TGCScalableWithInternalComponent imp return false; } - } diff --git a/src/main/java/ui/tmlcompd/TMLCRemoteCompositeComponent.java b/src/main/java/ui/tmlcompd/TMLCRemoteCompositeComponent.java index 64474151cab0c40e6b985a1edadb116654419dca..0eb38b932ddf50c25e66100810f2c6dc572a4ace 100755 --- a/src/main/java/ui/tmlcompd/TMLCRemoteCompositeComponent.java +++ b/src/main/java/ui/tmlcompd/TMLCRemoteCompositeComponent.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcompd; import myutil.GraphicLib; @@ -51,8 +48,12 @@ import ui.util.IconManager; import ui.window.JDialogTMLRemoteCompositeComponent; import javax.swing.*; -import java.awt.*; + +import java.awt.Color; +import java.awt.Font; +import java.awt.Graphics; import java.util.ArrayList; +import java.util.List; /** * Class TMLCRemoteCompositeComponent @@ -137,6 +138,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone } } + @Override public void internalDrawing(Graphics g) { int w; int c; @@ -258,6 +260,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone } } + @Override public void rescale(double scaleFactor){ dtextX = (textX + dtextX) / oldScaleFactor * scaleFactor; textX = (int)(dtextX); @@ -270,6 +273,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone super.rescale(scaleFactor); } + @Override public TGComponent isOnOnlyMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -277,7 +281,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone return null; } - + @Override public boolean editOndoubleClick(JFrame frame, int _x, int _y) { // On the icon? @@ -316,6 +320,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone return false; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); @@ -354,7 +359,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone TMLCRemotePortCompositeComponent pcc; TGConnectingPoint[] old = null; - ArrayList<TMLCCompositePort> tmp = null; + List<TMLCCompositePort> tmp = null; //ArrayList<TMLCReferencePortConnectingPoint> points = new ArrayList<TMLCReferencePortConnectingPoint>(); for(int i=0; i<nl.getLength(); i++) { @@ -458,29 +463,30 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone ((TMLComponentTaskDiagramPanel)getTDiagramPanel()).makePaths(); } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } } - + @Override public int getType() { return TGComponentManager.TMLCTD_CREMOTECOMPONENT; } + @Override public void wasSwallowed() { myColor = null; } + @Override public void wasUnswallowed() { myColor = null; setFather(null); TDiagramPanel tdp = getTDiagramPanel(); setCdRectangle(tdp.getMinX(), tdp.getMaxX(), tdp.getMinY(), tdp.getMaxY()); - } - + @Override public void hasBeenResized() { rescaled = true; /*for(int i=0; i<nbInternalTGComponent; i++) { @@ -500,6 +506,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone } } + @Override public void resizeWithFather() { if ((father != null) && ((father instanceof TMLCCompositeComponent) ||(father instanceof TMLCPrimitiveComponent))) { // Too large to fit in the father? -> resize it! @@ -510,30 +517,30 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone } } - public java.util.List<TMLCPrimitiveComponent> getAllPrimitiveComponents() { + public List<TMLCPrimitiveComponent> getAllPrimitiveComponents() { if (tmlcc == null) { return new ArrayList<TMLCPrimitiveComponent>(); } return tmlcc.getAllPrimitiveComponents(); } - public java.util.List<TMLCRecordComponent> getAllRecordComponents() { + public List<TMLCRecordComponent> getAllRecordComponents() { if (tmlcc == null) { return new ArrayList<TMLCRecordComponent>(); } return tmlcc.getAllRecordComponents(); } - public java.util.List<TMLCCompositePort> getAllInternalCompositePorts() { - java.util.List<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>(); + public List<TMLCCompositePort> getAllInternalCompositePorts() { + List<TMLCCompositePort> list = new ArrayList<TMLCCompositePort>(); if (tmlcc == null) { return list; } return tmlcc.getAllInternalCompositePorts(); } - public ArrayList<TMLCPrimitivePort> getAllInternalPrimitivePorts() { - ArrayList<TMLCPrimitivePort> list = new ArrayList<TMLCPrimitivePort>(); + public List<TMLCPrimitivePort> getAllInternalPrimitivePorts() { + List<TMLCPrimitivePort> list = new ArrayList<TMLCPrimitivePort>(); if (tmlcc == null) { return list; } @@ -573,7 +580,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone // to a list of those points, keep that list, and then, generate a array of those points. public void updatePorts() { //TraceManager.addDev("Update my ports"); - ArrayList<TMLCCompositePort> list = tmlcc.getFirstLevelCompositePorts(); + List<TMLCCompositePort> list = tmlcc.getFirstLevelCompositePorts(); int cpt=0; /*TraceManager.addDev("list size:" + list.size()); @@ -604,7 +611,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone if (change) { TraceManager.addDev("change on ports!"); // Delete unused ports and - ArrayList<TMLCReferencePortConnectingPoint> points = new ArrayList<TMLCReferencePortConnectingPoint>(); + List<TMLCReferencePortConnectingPoint> points = new ArrayList<TMLCReferencePortConnectingPoint>(); cpt=0; for(i=0; i<ports.size(); i++) { @@ -699,7 +706,6 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone int i; //TraceManager.addDev("name= " + name + " nbCP=" + nbConnectingPoint + " num=" + num + "id=" + id); try { - if (connectingPoint == null) { nbConnectingPoint = num + 1; connectingPoint = new TGConnectingPoint[nbConnectingPoint]; @@ -781,11 +787,13 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone } }*/ + @Override public boolean acceptSwallowedTGComponent(TGComponent tgc) { return tgc instanceof TMLCRemotePortCompositeComponent; } + @Override public boolean addSwallowedTGComponent(TGComponent tgc, int x, int y) { if (!acceptSwallowedTGComponent(tgc)) { return false; @@ -799,6 +807,7 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone return true; } + @Override public void removeSwallowedTGComponent(TGComponent tgc) { } @@ -816,5 +825,4 @@ public class TMLCRemoteCompositeComponent extends TGCScalableWithInternalCompone public TMLCCompositeComponent getReference() { return tmlcc; } - } diff --git a/src/main/java/ui/tmlcompd/TMLComponentTaskDiagramPanel.java b/src/main/java/ui/tmlcompd/TMLComponentTaskDiagramPanel.java index 58a7adaf1d40a10faa3b31cee23717a1078a2603..6bff4804513d6b57b5b737269471195772b21e89 100755 --- a/src/main/java/ui/tmlcompd/TMLComponentTaskDiagramPanel.java +++ b/src/main/java/ui/tmlcompd/TMLComponentTaskDiagramPanel.java @@ -37,10 +37,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.tmlcompd; - import myutil.TraceManager; import org.w3c.dom.Element; import ui.*; @@ -66,6 +64,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi //setAttributesVisible(true); } + @Override public boolean actionOnDoubleClick(TGComponent tgc) { /*TraceManager.addDev("Action on double click!"); if (tgc instanceof TMLCPrimitiveComponent) { @@ -77,6 +76,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi return false; } + @Override public boolean actionOnAdd(TGComponent tgc) { //TraceManager.addDev("Action on add! value=" + tgc.getValue()); if (tgc instanceof TMLCPrimitiveComponent) { @@ -98,6 +98,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi return true; } + @Override public boolean actionOnRemove(TGComponent tgc) { //TraceManager.addDev("Action on remove tgc=" + tgc + " value=" + tgc.getValue()); if (tgc instanceof TMLCPrimitiveComponent) { @@ -167,6 +168,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi return ports; } + @Override public boolean actionOnValueChanged(TGComponent tgc) { //TraceManager.addDev("Action on value changed on component:" + tgc); if (tgc instanceof TMLCPrimitiveComponent) { @@ -195,21 +197,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi return ko ? ko : nameAllRecordComponentInUse(oldValue, newValue); } - /** - * Check if newvalue is already a name of a component. - * - * @param newvalue - * @return true if the name is used - * @author Fabien Tessier - */ - public boolean isCompositeNameUsed(String newvalue) { - for (TGComponent tgc : this.componentList) { - if (tgc.getValue().equals(newvalue)) - return true; - } - return false; - } - public boolean nameAllRecordComponentInUse(String oldValue, String newValue) { // LinkedList ll = getRecordComponentList(); Iterator<TMLCRecordComponent> iterator = getRecordComponentList().listIterator(); @@ -226,8 +213,8 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi return false; } - public LinkedList<TMLCRecordComponent> getRecordComponentList() { - LinkedList<TMLCRecordComponent> ll = new LinkedList<TMLCRecordComponent>(); + public List<TMLCRecordComponent> getRecordComponentList() { + List<TMLCRecordComponent> ll = new LinkedList<TMLCRecordComponent>(); TGComponent tgc; Iterator<TGComponent> iterator = componentList.listIterator(); @@ -472,7 +459,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi return al; } - public void getAllPortsConnectedTo(List<TGComponent> ll, TMLCPrimitivePort _port) { List<TGComponent> components = getMGUI().getAllTMLComponents(); Iterator<TGComponent> iterator = components.listIterator(); @@ -514,36 +500,40 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi } } + @Override public String getXMLHead() { return "<TMLComponentTaskDiagramPanel name=\"" + name + "\"" + sizeParam() + displayParam() + zoomParam() + " >"; } + @Override public String getXMLTail() { return "</TMLComponentTaskDiagramPanel>"; } + @Override public String getXMLSelectedHead() { return "<TMLComponentTaskDiagramPanelCopy name=\"" + name + "\" xSel=\"" + xSel + "\" ySel=\"" + ySel + "\" widthSel=\"" + widthSel + "\" heightSel=\"" + heightSel + "\" >"; } + @Override public String getXMLSelectedTail() { return "</TMLComponentTaskDiagramPanelCopy>"; } + @Override public String getXMLCloneHead() { return "<TMLComponentTaskDiagramPanelCopy name=\"" + name + "\" xSel=\"" + 0 + "\" ySel=\"" + 0 + "\" widthSel=\"" + 0 + "\" heightSel=\"" + 0 + "\" >"; } + @Override public String getXMLCloneTail() { return "</TMLComponentTaskDiagramPanelCopy>"; } - public boolean areAttributesVisible() { return attributesVisible; } - public boolean areChannelVisible() { return synchroVisible; } @@ -552,7 +542,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi attributesVisible = b; } - public void setChannelVisible(boolean b) { channelVisible = b; } @@ -612,8 +601,8 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi } } - public ArrayList<String> getAllCompositeComponent(String _name) { - ArrayList<String> list = new ArrayList<String>(); + public List<String> getAllCompositeComponent(String _name) { + List<String> list = new ArrayList<String>(); TGComponent tgc1; String s; TMLCCompositeComponent tmlcc; @@ -650,7 +639,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi TGComponent tgc; Iterator<TGComponent> iterator = componentList.listIterator(); // List<String> list = new ArrayList<String>(); - TMLCPrimitiveComponent tmp; + //TMLCPrimitiveComponent tmp; while (iterator.hasNext()) { tgc = iterator.next(); @@ -674,7 +663,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi TGComponent tgc; Iterator<TGComponent> iterator = componentList.listIterator(); // List<String> list = new ArrayList<String>(); - TMLCPrimitiveComponent tmp; + //TMLCPrimitiveComponent tmp; while (iterator.hasNext()) { tgc = iterator.next(); @@ -693,7 +682,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi return chlArray; } - public TMLCPrimitiveComponent getPrimitiveComponentByName(String _name) { TGComponent tgc; Iterator<TGComponent> iterator = componentList.listIterator(); @@ -993,10 +981,10 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi } // Returns the faulty paths - public ArrayList<TMLCPath> updatePorts() { + public List<TMLCPath> updatePorts() { //TraceManager.addDev("Making paths"); List<TMLCPath> paths = makePaths(); - ArrayList<TMLCPath> faultyPaths = new ArrayList<TMLCPath>(); + List<TMLCPath> faultyPaths = new ArrayList<TMLCPath>(); //String error = ""; // Checking rules of paths, and setting colors accordingly @@ -1079,7 +1067,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi } // We take each primitive ports individually and we go thru the graph - ArrayList<TMLCChannelFacility> mets = new ArrayList<TMLCChannelFacility>(); + List<TMLCChannelFacility> mets = new ArrayList<TMLCChannelFacility>(); TGConnector connector; TGConnectingPoint tp; String conflictMessage; @@ -1104,7 +1092,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi } } - public String propagate(TMLCPrimitivePort pport, TGConnectingPoint tp, TGConnector connector, ArrayList<TMLCChannelFacility> mets) { + public String propagate(TMLCPrimitivePort pport, TGConnectingPoint tp, TGConnector connector, List<TMLCChannelFacility> mets) { TGConnectingPoint tp2; TMLCChannelFacility cp = null; //boolean conflict = false; @@ -1283,7 +1271,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi return conflictMessage; } - public String explore(TMLCPrimitivePort pport, TGConnectingPoint _tp, TMLCChannelFacility cp, ArrayList<TMLCChannelFacility> mets) { + public String explore(TMLCPrimitivePort pport, TGConnectingPoint _tp, TMLCChannelFacility cp, List<TMLCChannelFacility> mets) { String conflictMessage = null; String conflictMessageTmp; TGConnectingPoint tp; @@ -1305,7 +1293,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi return conflictMessage; } - public void analysePorts(TMLCPrimitivePort pport, ArrayList<TMLCChannelFacility> mets, boolean conflict, String message) { + public void analysePorts(TMLCPrimitivePort pport, List<TMLCChannelFacility> mets, boolean conflict, String message) { if (mets.size() == 0) { return; } @@ -1532,11 +1520,9 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi for (TDiagramPanel panel : panels) { iterator = panel.getComponentList().listIterator(); - List<TMLCCompositePort> listcp; List<TMLCPrimitivePort> listpp; - while (iterator.hasNext()) { tgc = iterator.next(); @@ -1646,7 +1632,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi return paths; - } public TMLCPath getPathOf(List<TMLCPath> paths, TGComponent tgc) { @@ -1675,8 +1660,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi paths.add(ph); } - - public void getPanelsUsingAComponent(TMLCCompositeComponent tmlcc, ArrayList<TMLComponentTaskDiagramPanel> panels) { + public void getPanelsUsingAComponent(TMLCCompositeComponent tmlcc, List<TMLComponentTaskDiagramPanel> panels) { //TraceManager.addDev("Update from " + tmlcc.getValue()); Iterator<TGComponent> iterator = componentList.listIterator(); TGComponent tgc; @@ -1699,7 +1683,6 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi } } - public String[] getAllOutEvents(String nameOfComponent) { TMLCPrimitiveComponent comp = getPrimitiveComponentByName(nameOfComponent); if (comp == null) { @@ -1707,7 +1690,7 @@ public class TMLComponentTaskDiagramPanel extends TDiagramPanel implements TDPWi } List<TMLCPrimitivePort> ll = comp.getAllEventsOriginPorts(); - LinkedList<String> lString = new LinkedList<>(); + List<String> lString = new LinkedList<>(); //String[] terms = new String[ll.size()]; diff --git a/src/main/java/ui/tmlcp/TGConnectingPointTMLCP.java b/src/main/java/ui/tmlcp/TGConnectingPointTMLCP.java index 311de473ad9c5bd404483a6af6933a4493ab4d17..7e071398c9304250562b91732f80dc2701b2950c 100755 --- a/src/main/java/ui/tmlcp/TGConnectingPointTMLCP.java +++ b/src/main/java/ui/tmlcp/TGConnectingPointTMLCP.java @@ -36,12 +36,8 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; - import ui.CDElement; import ui.TGComponentManager; import ui.TGConnectingPointWidthHeight; @@ -54,13 +50,12 @@ import ui.TGConnectingPointWidthHeight; * @author Ludovic APVRILLE */ public class TGConnectingPointTMLCP extends TGConnectingPointWidthHeight{ - - public TGConnectingPointTMLCP(CDElement _container, int _x, int _y, boolean _in, boolean _out, double _w, double _h) { super(_container, _x, _y, _in, _out, _w, _h); } + @Override public boolean isCompatibleWith(int type) { // if (type == TGComponentManager.CONNECTOR_TMLCP) { diff --git a/src/main/java/ui/tmlcp/TGConnectorTMLCP.java b/src/main/java/ui/tmlcp/TGConnectorTMLCP.java index 71b38e664c9e99332963f3ddb7d9f382f8eb584d..4bcca5ef6284ce4f394d8e69446cdf295a867831 100755 --- a/src/main/java/ui/tmlcp/TGConnectorTMLCP.java +++ b/src/main/java/ui/tmlcp/TGConnectorTMLCP.java @@ -36,13 +36,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; import myutil.GraphicLib; import ui.*; +import ui.ad.TADConnector; import ui.util.IconManager; import java.awt.*; @@ -56,7 +54,7 @@ import java.util.Vector; * @version 1.0 17/02/2014 * @author Ludovic APVRILLE */ -public class TGConnectorTMLCP extends TGConnector { +public class TGConnectorTMLCP extends TADConnector /* Issue #69 TGConnector*/ { protected int arrowLength = 10; protected String guard = ""; @@ -65,12 +63,12 @@ public class TGConnectorTMLCP extends TGConnector { myImageIcon = IconManager.imgic202; name = "connector"; - _p1.setReferenceToConnector( this ); - _p2.setReferenceToConnector( this ); - + _p1.setReferenceToConnector( this ); + _p2.setReferenceToConnector( this ); //editable = true; } + @Override protected void drawLastSegment(Graphics g, int x1, int y1, int x2, int y2){ if (Point2D.distance(x1, y1, x2, y2) < GraphicLib.longueur * 1.5) { g.drawLine(x1, y1, x2, y2); @@ -79,6 +77,7 @@ public class TGConnectorTMLCP extends TGConnector { } } + @Override public int getType() { return TGComponentManager.CONNECTOR_TMLCP; } @@ -95,5 +94,4 @@ public class TGConnectorTMLCP extends TGConnector { } return "noGuard"; } - }//End of class diff --git a/src/main/java/ui/tmlcp/TMLCPChoice.java b/src/main/java/ui/tmlcp/TMLCPChoice.java index 8b55369d70a2b01fef5ea613f5359fe27bba0803..9e9ea5db9759211e30342b9ca5b60b8331ff4759 100755 --- a/src/main/java/ui/tmlcp/TMLCPChoice.java +++ b/src/main/java/ui/tmlcp/TMLCPChoice.java @@ -37,18 +37,13 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; -import java.awt.geom.Line2D; -import java.util.ArrayList; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADChoice; /** * Class TMLCPChoice @@ -57,10 +52,10 @@ import java.util.ArrayList; * @version 1.0 17/02/2014 * @author Ludovic APVRILLE, Andrea ENRICI */ -public class TMLCPChoice extends TGCWithInternalComponent { - private int lineLength = 10; - private int lineOutLength = 25; - private int textX1, textY1, textX2, textY2, textX3, textY3; +public class TMLCPChoice extends TADChoice /* Issue #69 TGCWithInternalComponent*/ { +// private int lineLength = 10; +// private int lineOutLength = 25; +// private int textX1, textY1, textX2, textY2, textX3, textY3; private static int instanceCounter = 0; private int counter = 0; @@ -68,151 +63,161 @@ public class TMLCPChoice extends TGCWithInternalComponent { public TMLCPChoice(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - width = 30; - height = 30; - textX1 = -lineOutLength; - textY1 = height/2 - 5; - textX2 = width + 5; - textY2 = height/2 - 5; - textX3 = width /2 + 5; - textY3 = height + 15; - - nbConnectingPoint = 4; - connectingPoint = new TGConnectingPoint[nbConnectingPoint]; - connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, -lineLength, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointTMLCP(this, -lineOutLength, 0, false, true, 0.0, 0.5); - connectingPoint[2] = new TGConnectingPointTMLCP(this, lineOutLength, 0, false, true, 1.0, 0.5); - connectingPoint[3] = new TGConnectingPointTMLCP(this, 0, lineOutLength, false, true, 0.5, 1.0); +// width = 30; +// height = 30; +// textX1 = -lineOutLength; +// textY1 = height/2 - 5; +// textX2 = width + 5; +// textY2 = height/2 - 5; +// textX3 = width /2 + 5; +// textY3 = height + 15; +// +// nbConnectingPoint = 4; +// connectingPoint = new TGConnectingPoint[nbConnectingPoint]; +// connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, -lineLength, true, false, 0.5, 0.0); +// connectingPoint[1] = new TGConnectingPointTMLCP(this, -lineOutLength, 0, false, true, 0.0, 0.5); +// connectingPoint[2] = new TGConnectingPointTMLCP(this, lineOutLength, 0, false, true, 1.0, 0.5); +// connectingPoint[3] = new TGConnectingPointTMLCP(this, 0, lineOutLength, false, true, 0.5, 1.0); addTGConnectingPointsComment(); //nbInternalTGComponent = 0; - nbInternalTGComponent = 3; - tgcomponent = new TGComponent[nbInternalTGComponent]; - - TGCOneLineText tgc = new TGCOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 1"); - tgcomponent[0] = tgc; - - tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 2"); - tgcomponent[1] = tgc; - - tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp); - tgc.setValue("[ ]"); - tgc.setName("guard 3"); - tgcomponent[2] = tgc; - - moveable = true; - editable = false; - removable = true; +// nbInternalTGComponent = 3; +// tgcomponent = new TGComponent[nbInternalTGComponent]; +// +// TGCOneLineText tgc = new TGCOneLineText(x+textX1, y+textY1, textX1-50, textX1+5, textY1, textY1 + 25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 1"); +// tgcomponent[0] = tgc; +// +// tgc = new TGCOneLineText(x+textX2, y+textY2, textX2, textX2+20, textY2, textY2+25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 2"); +// tgcomponent[1] = tgc; +// +// tgc = new TGCOneLineText(x+textX3, y+textY3, textX3, textX3+20, textY3, textY3+25, true, this, _tdp); +// tgc.setValue("[ ]"); +// tgc.setName("guard 3"); +// tgcomponent[2] = tgc; +// +// moveable = true; +// editable = false; +// removable = true; instanceCounter++; counter = instanceCounter; name = "choice" + Integer.toString(counter); - myImageIcon = IconManager.imgic208; - } - - public void internalDrawing(Graphics g) { - g.drawLine(x+(width/2), y, x+width, y + height/2); - g.drawLine(x, y + height / 2, x+width/2, y + height); - g.drawLine(x + width/2, y, x, y + height/2); - g.drawLine(x + width, y + height/2, x + width/2, y + height); - - g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); - g.drawLine(x, y + height/2, x-lineOutLength, y + height/2); - g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2); - g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength); - } - - public TGComponent isOnOnlyMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - - // horizontal line - if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) { - return this; - } - - return null; + // myImageIcon = IconManager.imgic208; } - + + @Override + protected void createConnectingPoints() { + nbConnectingPoint = 4; + connectingPoint = new TGConnectingPoint[nbConnectingPoint]; + connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, -lineLength, true, false, 0.5, 0.0); + connectingPoint[1] = new TGConnectingPointTMLCP(this, -lineOutLength, 0, false, true, 0.0, 0.5); + connectingPoint[2] = new TGConnectingPointTMLCP(this, lineOutLength, 0, false, true, 1.0, 0.5); + connectingPoint[3] = new TGConnectingPointTMLCP(this, 0, lineOutLength, false, true, 0.5, 1.0); + } +// +// public void internalDrawing(Graphics g) { +// g.drawLine(x+(width/2), y, x+width, y + height/2); +// g.drawLine(x, y + height / 2, x+width/2, y + height); +// g.drawLine(x + width/2, y, x, y + height/2); +// g.drawLine(x + width, y + height/2, x + width/2, y + height); +// +// g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); +// g.drawLine(x, y + height/2, x-lineOutLength, y + height/2); +// g.drawLine(x + width, y + height/2, x+ width + lineOutLength, y + height/2); +// g.drawLine(x+(width/2), y + height, x+(width/2), y + height + lineOutLength); +// } +// +// public TGComponent isOnOnlyMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// +// // horizontal line +// if ((int)(Line2D.ptSegDistSq(x+(width/2), y + height, x+(width/2), y + height + lineOutLength, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x + width, y + height/2, x+ width + lineOutLength, y + height/2, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x, y + height/2, x-lineOutLength, y + height/2, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+(width/2), y, x+(width/2), y - lineLength, _x, _y)) < distanceSelected) { +// return this; +// } +// +// return null; +// } + + @Override public int getType() { return TGComponentManager.TMLCP_CHOICE; } - - public String getGuard(int i) { - if ((i>=0) && (i<nbInternalTGComponent)) { - // - return tgcomponent[i].getValue(); - } - return ""; - } - - public ArrayList<String> getGuards() { - - ArrayList<String> guards = new ArrayList<String>(); - for( int i = 0; i < nbInternalTGComponent; i++ ) { - guards.add( getGuard(i) ); - } - return guards; - } - - public boolean hasUnvalidGuards() { - return (getUnvalidGuards() != null); - } - - public String getUnvalidGuards() { - String s, g; - int index; - for(int i=0; i<nbInternalTGComponent; i++) { - s = getGuard(i); - g = s; - if ((s.compareTo("[]") != 0) && (s.compareTo("[ ]") != 0)) { - index = s.indexOf('/'); - if (index == -1) { - return g; - } - s = s.substring(1, index); - s = s.trim(); - // - if (!TAttribute.isAValidId(s, false, false)) { - //if (!s.matches("(\\w)+*(\\s)*")) { - return g; - } - } - } - - return null; - } - +// +// public String getGuard(int i) { +// if ((i>=0) && (i<nbInternalTGComponent)) { +// // +// return tgcomponent[i].getValue(); +// } +// return ""; +// } +// +// public ArrayList<String> getGuards() { +// +// ArrayList<String> guards = new ArrayList<String>(); +// for( int i = 0; i < nbInternalTGComponent; i++ ) { +// guards.add( getGuard(i) ); +// } +// return guards; +// } +// +// public boolean hasUnvalidGuards() { +// return (getUnvalidGuards() != null); +// } +// +// public String getUnvalidGuards() { +// String s, g; +// int index; +// for(int i=0; i<nbInternalTGComponent; i++) { +// s = getGuard(i); +// g = s; +// if ((s.compareTo("[]") != 0) && (s.compareTo("[ ]") != 0)) { +// index = s.indexOf('/'); +// if (index == -1) { +// return g; +// } +// s = s.substring(1, index); +// s = s.trim(); +// // +// if (!TAttribute.isAValidId(s, false, false)) { +// //if (!s.matches("(\\w)+*(\\s)*")) { +// return g; +// } +// } +// } +// +// return null; +// } + + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLCP; } - - - - public TGConnectingPoint[] getConnectingPoints() { - return connectingPoint; - } - - public TGComponent[] getTGComponents() { - return tgcomponent; - } +// +// public TGConnectingPoint[] getConnectingPoints() { +// return connectingPoint; +// } +// +// public TGComponent[] getTGComponents() { +// return tgcomponent; +// } } diff --git a/src/main/java/ui/tmlcp/TMLCPForLoop.java b/src/main/java/ui/tmlcp/TMLCPForLoop.java index 923246f4b90fcad985f52d5bf9c1ce8eaa2b9205..5a2e19156d237684c8a5f34a9e278e14cdfad72c 100755 --- a/src/main/java/ui/tmlcp/TMLCPForLoop.java +++ b/src/main/java/ui/tmlcp/TMLCPForLoop.java @@ -36,20 +36,30 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.tmlcp; -import myutil.GraphicLib; +import java.awt.Color; +import java.awt.Graphics; + +import javax.swing.JFrame; + import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; -import ui.*; -import ui.util.IconManager; -import ui.window.JDialogMultiString; -import javax.swing.*; -import java.awt.*; -import java.awt.geom.Line2D; +import myutil.GraphicLib; +import ui.BasicErrorHighlight; +import ui.ColorManager; +import ui.EmbeddedComment; +import ui.ErrorHighlight; +import ui.GTURTLEModeling; +import ui.MalformedModelingException; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADForLoop; +import ui.window.JDialogMultiString; /** * Class TMLCPForLoop @@ -59,24 +69,24 @@ import java.awt.geom.Line2D; * @author Ludovic APVRILLE * @version 1.0 03/06/2015 */ -public class TMLCPForLoop extends TGCWithoutInternalComponent implements EmbeddedComment, BasicErrorHighlight { - protected int lineLength = 5; - protected int textX = 5; - protected int textY = 15; - protected int arc = 5; +public class TMLCPForLoop extends TADForLoop /* Issue #69 TGCWithoutInternalComponent*/ implements EmbeddedComment, BasicErrorHighlight { +// protected int lineLength = 5; +// protected int textX = 5; +// protected int textY = 15; +// protected int arc = 5; protected String init = "i=0"; protected String condition = "i<5"; protected String increment = "i = i+1"; - protected int stateOfError = 0; // Not yet checked + // protected int stateOfError = 0; // Not yet checked public TMLCPForLoop(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - width = 30; - height = 20; - minWidth = 30; +// width = 30; +// height = 20; +// minWidth = 30; nbConnectingPoint = 3; connectingPoint = new TGConnectingPoint[3]; @@ -84,17 +94,18 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde connectingPoint[1] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 1.0, 0.45); // loop connectingPoint[2] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 0.5, 1.0); // after lopp - moveable = true; - editable = true; - removable = true; +// moveable = true; +// editable = true; +// removable = true; makeValue(); name = "for loop"; - myImageIcon = IconManager.imgic912; +// myImageIcon = IconManager.imgic912; } + @Override public void internalDrawing(Graphics g) { final int textWidth = g.getFontMetrics().stringWidth(value); int w1 = Math.max(minWidth, textWidth + 2 * textX); @@ -125,6 +136,7 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde g.drawString(value, x + (width - textWidth) / 2, y + textY); } + @Override public boolean editOndoubleClick(JFrame frame) { String[] labels = new String[3]; String[] values = new String[3]; @@ -135,7 +147,6 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde labels[2] = "Increment at each loop"; values[2] = increment; - JDialogMultiString jdms = new JDialogMultiString(frame, "Setting loop's properties", 3, labels, values); // jdms.setSize(400, 300); GraphicLib.centerOnParent(jdms, 400, 300); @@ -151,24 +162,23 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde } return false; - } - public TGComponent isOnMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - - if ((int) (Line2D.ptSegDistSq(x + (width / 2), y - lineLength, x + (width / 2), y + lineLength + height, _x, _y)) < distanceSelected) { - return this; - } - - if ((int) (Line2D.ptSegDistSq(x + width, y + height / 2, x + width + lineLength, y + height / 2, _x, _y)) < distanceSelected) { - return this; - } - - return null; - } +// public TGComponent isOnMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// +// if ((int) (Line2D.ptSegDistSq(x + (width / 2), y - lineLength, x + (width / 2), y + lineLength + height, _x, _y)) < distanceSelected) { +// return this; +// } +// +// if ((int) (Line2D.ptSegDistSq(x + width, y + height / 2, x + width + lineLength, y + height / 2, _x, _y)) < distanceSelected) { +// return this; +// } +// +// return null; +// } public void makeValue() { value = "for(" + init + ";" + condition + ";" + increment + ")"; @@ -190,6 +200,7 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde return increment; } + @Override protected String translateExtraParam() { StringBuffer sb = new StringBuffer("<extraparam>\n"); sb.append("<Data init=\""); @@ -205,18 +216,12 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde @Override public void loadExtraParam(NodeList nl, int decX, int decY, int decId) throws MalformedModelingException { - // try { - NodeList nli; Node n1, n2; Element elt; // int k; // String s; - - // - // - for (int i = 0; i < nl.getLength(); i++) { n1 = nl.item(i); // @@ -239,23 +244,22 @@ public class TMLCPForLoop extends TGCWithoutInternalComponent implements Embedde } } catch (Exception e) { - throw new MalformedModelingException(); + throw new MalformedModelingException( e ); } makeValue(); } - + @Override public int getType() { return TGComponentManager.TMLCP_FOR_LOOP; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLCP; } - public void setStateAction(int _stateAction) { - stateOfError = _stateAction; - } - - +// public void setStateAction(int _stateAction) { +// stateOfError = _stateAction; +// } } diff --git a/src/main/java/ui/tmlcp/TMLCPFork.java b/src/main/java/ui/tmlcp/TMLCPFork.java index 4e98d86590eacd79e0ec4e65d8805d7caa3b9b0c..eeb8146e7acc91d84d9c294238c1b91f46be7223 100755 --- a/src/main/java/ui/tmlcp/TMLCPFork.java +++ b/src/main/java/ui/tmlcp/TMLCPFork.java @@ -37,17 +37,18 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; +import java.awt.Graphics; +import java.util.Arrays; +import java.util.List; + import myutil.GraphicLib; import ui.*; +import ui.ad.EnablingADConnectorVisitor; +import ui.ad.TADComponentWithoutSubcomponents; import ui.util.IconManager; -import java.awt.*; - /** * Class TMLCPFork * Fork operator. The incoming activity is split into several outgoing activities @@ -56,7 +57,7 @@ import java.awt.*; * @version 1.0 17/02/2014 * @author Ludovic APVRILLE */ -public class TMLCPFork extends TGCWithoutInternalComponent{ +public class TMLCPFork extends TADComponentWithoutSubcomponents /* Issue #69 TGCWithoutInternalComponent*/ { private int lineLength = 0; private static int instanceCounter = 0; @@ -81,7 +82,7 @@ public class TMLCPFork extends TGCWithoutInternalComponent{ connectingPoint[4] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 0.833, 1.0); connectingPoint[5] = new TGConnectingPointTMLCP(this, 0, -lineLength, true, false, 0.5, 0.0); - addTGConnectingPointsComment(); + addTGConnectingPointsComment(); nbInternalTGComponent = 0; @@ -96,11 +97,13 @@ public class TMLCPFork extends TGCWithoutInternalComponent{ myImageIcon = IconManager.imgic206; } + @Override public void internalDrawing(Graphics g) { g.drawRect(x, y, width, height); g.fillRect(x, y, width, height); } + @Override public TGComponent isOnMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -112,11 +115,36 @@ public class TMLCPFork extends TGCWithoutInternalComponent{ return tgcomponent[0].getValue(); } + @Override public int getType() { return TGComponentManager.TMLCP_FORK; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLCP; } + + public TGConnectingPoint getEnterConnectingPoint() { + return connectingPoint[ 5 ]; + } + + public List<TGConnectingPoint> getExitConnectingPoints() { + return Arrays.asList( Arrays.copyOfRange( connectingPoint, 0, connectingPoint.length - 1 ) ); + } + + /** + * Issue #69 + * @param _enabled + */ + @Override + public void setEnabled( final boolean _enabled ) { + super.setEnabled( _enabled ); + + for ( final TGConnectingPoint point : connectingPoint ) { + if ( point != getEnterConnectingPoint() ) { + point.acceptForward( new EnablingADConnectorVisitor( _enabled ) ); + } + } + } } diff --git a/src/main/java/ui/tmlcp/TMLCPJoin.java b/src/main/java/ui/tmlcp/TMLCPJoin.java index 74a4ae549865794cac2638a76600d3094ecd0d80..341f896cde57bc4c08d38b91565f367f4cb59474 100755 --- a/src/main/java/ui/tmlcp/TMLCPJoin.java +++ b/src/main/java/ui/tmlcp/TMLCPJoin.java @@ -37,17 +37,16 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; +import java.awt.Graphics; +import java.util.Arrays; +import java.util.List; + import myutil.GraphicLib; import ui.*; import ui.util.IconManager; -import java.awt.*; - /** * Class TMLCPJoin * Join operator. All incoming activities join in one remaining activity @@ -81,8 +80,7 @@ public class TMLCPJoin extends TGCWithoutInternalComponent{ connectingPoint[4] = new TGConnectingPointTMLCP(this, 0, -lineLength, true, false, 0.833, 0.0); connectingPoint[5] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 0.5, 1.0); - - addTGConnectingPointsComment(); + addTGConnectingPointsComment(); nbInternalTGComponent = 0; @@ -97,11 +95,13 @@ public class TMLCPJoin extends TGCWithoutInternalComponent{ myImageIcon = IconManager.imgic206; } + @Override public void internalDrawing(Graphics g) { g.drawRect(x, y, width, height); g.fillRect(x, y, width, height); } + @Override public TGComponent isOnMe(int x1, int y1) { if (GraphicLib.isInRectangle(x1, y1, x, y, width, height)) { return this; @@ -113,11 +113,21 @@ public class TMLCPJoin extends TGCWithoutInternalComponent{ return tgcomponent[0].getValue(); } + @Override public int getType() { return TGComponentManager.TMLCP_JOIN; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLCP; + return TGComponentManager.CONNECTOR_TMLCP; + } + + public List<TGConnectingPoint> getEnterConnectingPoints() { + return Arrays.asList( Arrays.copyOfRange( connectingPoint, 0, connectingPoint.length - 1 ) ); + } + + public TGConnectingPoint getExitConnectingPoint() { + return connectingPoint[ 5 ]; } } diff --git a/src/main/java/ui/tmlcp/TMLCPJunction.java b/src/main/java/ui/tmlcp/TMLCPJunction.java deleted file mode 100755 index 007fc1f42614b18a4d92167da3198e77cb1bc78f..0000000000000000000000000000000000000000 --- a/src/main/java/ui/tmlcp/TMLCPJunction.java +++ /dev/null @@ -1,122 +0,0 @@ -/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille, Andrea Enrici - * - * ludovic.apvrille AT telecom-paristech.fr - * andrea.enrici AT telecom-paristech.fr - * - * This software is a computer program whose purpose is to allow the - * edition of TURTLE analysis, design and deployment diagrams, to - * allow the generation of RT-LOTOS or Java code from this diagram, - * and at last to allow the analysis of formal validation traces - * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP - * from INRIA Rhone-Alpes. - * - * This software is governed by the CeCILL license under French law and - * abiding by the rules of distribution of free software. You can use, - * modify and/ or redistribute the software under the terms of the CeCILL - * license as circulated by CEA, CNRS and INRIA at the following URL - * "http://www.cecill.info". - * - * As a counterpart to the access to the source code and rights to copy, - * modify and redistribute granted by the license, users are provided only - * with a limited warranty and the software's author, the holder of the - * economic rights, and the successive licensors have only limited - * liability. - * - * In this respect, the user's attention is drawn to the risks associated - * with loading, using, modifying and/or developing or reproducing the - * software by the user in light of its specific status of free software, - * that may mean that it is complicated to manipulate, and that also - * therefore means that it is reserved for developers and experienced - * professionals having in-depth computer knowledge. Users are therefore - * encouraged to load and test the software's suitability as regards their - * requirements in conditions enabling the security of their systems and/or - * data to be ensured and, more generally, to use and operate it in the - * same conditions as regards security. - * - * The fact that you are presently reading this means that you have had - * knowledge of the CeCILL license and that you accept its terms. - */ - - - - -package ui.tmlcp; - -import ui.*; -import ui.util.IconManager; - -import java.awt.*; -import java.awt.geom.Line2D; - - -/** - * Class TMLCPJunction - * Junction between several activities, without any synchronization. - * To be used in communication patterns diagrams - * Creation: 17/02/2014 - * @version 1.0 17/02/2014 - * @author Ludovic APVRILLE, Andrea ENRICI - */ -public class TMLCPJunction extends TGCWithoutInternalComponent { - - private static int instanceCounter = 0; - private int counter = 0; - - public TMLCPJunction(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { - super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - - width = 30; - height = 30; - - nbConnectingPoint = 4; - connectingPoint = new TGConnectingPoint[nbConnectingPoint]; - connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, 0, true, false, 0.5, 0.0); - connectingPoint[1] = new TGConnectingPointTMLCP(this, 0, 0, true, false, 0.0, 0.5); - connectingPoint[2] = new TGConnectingPointTMLCP(this, 0, 0, true, false, 1.0, 0.5); - connectingPoint[3] = new TGConnectingPointTMLCP(this, 0, 0, false, true, 0.5, 1); - - moveable = true; - editable = false; - removable = true; - - value = ""; - instanceCounter++; - counter = instanceCounter; - name = "junction" + Integer.toString(counter); - - myImageIcon = IconManager.imgic212; - } - - public void internalDrawing(Graphics g) { - g.drawLine(x +width/2, y, x+width/2, y + height); - g.drawLine(x, y + (height/2), x+width, y + (height/2)); - } - - public TGComponent isOnMe(int _x, int _y) { - // vertical line - if ((int)(Line2D.ptSegDistSq(x +width/2, y, x+width/2, y + height, _x, _y)) < distanceSelected) { - return this; - } - // horizontal line - if ((int)(Line2D.ptSegDistSq(x, y + (height/2), x+width, y + (height/2), _x, _y)) < distanceSelected) { - return this; - } - return null; - } - - public int getType() { - return TGComponentManager.TMLCP_JUNCTION; - } - - public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLCP; - } - -} - - - - - - - diff --git a/src/main/java/ui/tmlcp/TMLCPPanel.java b/src/main/java/ui/tmlcp/TMLCPPanel.java index 94bdaf07d13098377ec634b2cf0548a893b38a00..cb458388ddd31668b754b4cc3f9cc31631b3e29b 100755 --- a/src/main/java/ui/tmlcp/TMLCPPanel.java +++ b/src/main/java/ui/tmlcp/TMLCPPanel.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; import ui.*; @@ -60,6 +57,7 @@ public class TMLCPPanel extends TDiagramPanel { } + @Override public boolean actionOnDoubleClick(TGComponent tgc) { // /*if (tgc instanceof TCDTClass) { @@ -80,6 +78,7 @@ public class TMLCPPanel extends TDiagramPanel { return false; } + @Override public boolean actionOnAdd(TGComponent tgc) { /*if (tgc instanceof TCDTClass) { TCDTClass tgcc = (TCDTClass)(tgc); @@ -89,6 +88,7 @@ public class TMLCPPanel extends TDiagramPanel { return false; } + @Override public boolean actionOnRemove(TGComponent tgc) { /*if (tgc instanceof TCDTClass) { TCDTClass tgcc = (TCDTClass)(tgc); @@ -99,6 +99,7 @@ public class TMLCPPanel extends TDiagramPanel { return false; } + @Override public boolean actionOnValueChanged(TGComponent tgc) { /*if (tgc instanceof TCDTClass) { return actionOnDoubleClick(tgc); @@ -106,26 +107,32 @@ public class TMLCPPanel extends TDiagramPanel { return false; } + @Override public String getXMLHead() { return "<CommunicationPatternDiagramPanel name=\"" + name + "\"" + sizeParam() + " >"; } + @Override public String getXMLTail() { return "</CommunicationPatternDiagramPanel>"; } + @Override public String getXMLSelectedHead() { return "<CommunicationPatternDiagramPanelCopy name=\"" + name + "\" xSel=\"" + xSel + "\" ySel=\"" + ySel + "\" widthSel=\"" + widthSel + "\" heightSel=\"" + heightSel + "\" >"; } + @Override public String getXMLSelectedTail() { return "</CommunicationPatternDiagramPanelCopy>"; } + @Override public String getXMLCloneHead() { return "<CommunicationPatternDiagramPanelCopy name=\"" + name + "\" xSel=\"" + 0 + "\" ySel=\"" + 0 + "\" widthSel=\"" + 0 + "\" heightSel=\"" + 0 + "\" >"; } + @Override public String getXMLCloneTail() { return "</CommunicationPatternDiagramPanelCopy>"; } @@ -183,7 +190,7 @@ public class TMLCPPanel extends TDiagramPanel { }*/ public void makePostLoadingProcessing() throws MalformedModelingException { - TGComponent tgc; + // TGComponent tgc; /*for(int i=0; i<componentList.size(); i++) { tgc = (TGComponent)(componentList.elementAt(i)); @@ -225,7 +232,7 @@ public class TMLCPPanel extends TDiagramPanel { // Vector<TGComponent> v = new Vector<>(); Object o; - Iterator iterator = componentList.listIterator(); + Iterator<TGComponent> iterator = componentList.listIterator(); while(iterator.hasNext()) { o = iterator.next(); @@ -243,8 +250,6 @@ public class TMLCPPanel extends TDiagramPanel { TGConnector tgcon; int i; - // - if (tgc == null) { return; } @@ -275,8 +280,8 @@ public class TMLCPPanel extends TDiagramPanel { } } + @Override public boolean hasAutoConnect() { return true; } - } diff --git a/src/main/java/ui/tmlcp/TMLCPRefAD.java b/src/main/java/ui/tmlcp/TMLCPRefAD.java index 621a6c6772be6fe0b50f9016ddb4fb75169887bc..5e07d716018dd43b9402c9b5ebbfcd8d6a1c8cef 100755 --- a/src/main/java/ui/tmlcp/TMLCPRefAD.java +++ b/src/main/java/ui/tmlcp/TMLCPRefAD.java @@ -37,13 +37,11 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; import myutil.GraphicLib; import ui.*; +import ui.ad.TADOneLineText; import ui.util.IconManager; import javax.swing.*; @@ -59,7 +57,7 @@ import java.awt.geom.Line2D; * @version 1.0 17/02/2014 * @author Ludovic APVRILLE, Andrea ENRICI */ -public class TMLCPRefAD extends TGCOneLineText { +public class TMLCPRefAD extends TADOneLineText /* Issue #69 TGCOneLineText*/ { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; @@ -89,6 +87,7 @@ public class TMLCPRefAD extends TGCOneLineText { myImageIcon = IconManager.imgic400; } + @Override public void internalDrawing(Graphics g) { //int w2 = g.getFontMetrics().stringWidth("ref"); int w = g.getFontMetrics().stringWidth(value) /*+ w2*/; @@ -119,6 +118,7 @@ public class TMLCPRefAD extends TGCOneLineText { } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -136,12 +136,13 @@ public class TMLCPRefAD extends TGCOneLineText { } + @Override public int getType() { return TGComponentManager.TMLCP_REF_CP; } + @Override public void addActionToPopupMenu( JPopupMenu componentMenu, ActionListener menuAL, int x, int y ) { - componentMenu.addSeparator(); boolean b = ( (TMLCPPanel)tdp ).isTMLCPCreated( name ); JMenuItem isCPCreated; @@ -157,8 +158,8 @@ public class TMLCPRefAD extends TGCOneLineText { componentMenu.add( isCPCreated ); } + @Override public boolean eventOnPopup( ActionEvent e ) { - boolean b = ( (TMLCPPanel)tdp ).isTMLCPCreated( name ); if (b) { ( (TMLCPPanel)tdp ).openTMLCPDiagram( name ); @@ -170,13 +171,13 @@ public class TMLCPRefAD extends TGCOneLineText { return true; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLCP; } - @Override public boolean editOndoubleClick( JFrame frame ) { - - // + @Override + public boolean editOndoubleClick( JFrame frame ) { String text = "Reference to AD: "; if( hasFather() ) { text = getTopLevelName() + " / " + text; diff --git a/src/main/java/ui/tmlcp/TMLCPRefSD.java b/src/main/java/ui/tmlcp/TMLCPRefSD.java index da3776579b218ce6bee5058d08b3faea9f064ccd..dc6bb9e8469ffe7fc6f6b911a8aa3e1fc8179d92 100755 --- a/src/main/java/ui/tmlcp/TMLCPRefSD.java +++ b/src/main/java/ui/tmlcp/TMLCPRefSD.java @@ -36,22 +36,28 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; -import myutil.GraphicLib; -import ui.*; -import ui.tmlsd.TMLSDPanel; -import ui.util.IconManager; - -import javax.swing.*; -import java.awt.*; +import java.awt.Color; +import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.geom.Line2D; +import javax.swing.JFrame; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPopupMenu; + +import myutil.GraphicLib; +import ui.ColorManager; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADOneLineText; +import ui.util.IconManager; + /** * Class TMLCPRefSD * Reference to an SD in a communication pattern diagram @@ -59,12 +65,12 @@ import java.awt.geom.Line2D; * @version 1.0 17/02/2014 * @author Ludovic APVRILLE */ -public class TMLCPRefSD extends TGCOneLineText { +public class TMLCPRefSD extends TADOneLineText /* Issue #69 TGCOneLineText*/ { protected int lineLength = 5; protected int textX = 5; protected int textY = 15; protected int arc = 5; - private TMLSDPanel refToSD; + // private TMLSDPanel refToSD; // private TGConnectorTMLCP[] connectors = new TGConnectorTMLCP[2]; //private int index = 0; @@ -87,11 +93,12 @@ public class TMLCPRefSD extends TGCOneLineText { removable = true; value = "Reference to a SD"; name = "SequenceDiagram"; - refToSD = null; + // refToSD = null; myImageIcon = IconManager.imgic400; } + @Override public void internalDrawing(Graphics g) { //int w2 = g.getFontMetrics().stringWidth("ref"); int w = g.getFontMetrics().stringWidth(value) /*+ w2*/; @@ -118,6 +125,7 @@ public class TMLCPRefSD extends TGCOneLineText { g.drawLine(x+15, y+15, x+25, y+8); } + @Override public TGComponent isOnMe(int _x, int _y) { if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { return this; @@ -134,41 +142,42 @@ public class TMLCPRefSD extends TGCOneLineText { return value; } - + @Override public int getType() { return TGComponentManager.TMLCP_REF_SD; } + @Override public void addActionToPopupMenu( JPopupMenu componentMenu, ActionListener menuAL, int x, int y ) { - - componentMenu.addSeparator(); - boolean b = ((TMLCPPanel)tdp).isTMLCPSDCreated( name ); - JMenuItem isSDCreated; - - if( b ) { - isSDCreated = new JMenuItem("Open diagram"); - } - else { - isSDCreated = new JMenuItem( "Create Sequence Diagram" ); - } - - isSDCreated.addActionListener( menuAL ); - componentMenu.add( isSDCreated ); + componentMenu.addSeparator(); + boolean b = ((TMLCPPanel)tdp).isTMLCPSDCreated( name ); + JMenuItem isSDCreated; + + if( b ) { + isSDCreated = new JMenuItem("Open diagram"); + } + else { + isSDCreated = new JMenuItem( "Create Sequence Diagram" ); + } + + isSDCreated.addActionListener( menuAL ); + componentMenu.add( isSDCreated ); } + @Override public boolean eventOnPopup(ActionEvent e) { - - boolean b = ((TMLCPPanel)tdp).isTMLCPSDCreated( name ); - if( b ) { - ( (TMLCPPanel)tdp ).openTMLCPSequenceDiagram( name ); - } - else { - ( (TMLCPPanel)tdp ).createTMLCPSequenceDiagram( name ); - } - tdp.getMouseManager().setSelection(-1, -1); - return true; + boolean b = ((TMLCPPanel)tdp).isTMLCPSDCreated( name ); + if( b ) { + ( (TMLCPPanel)tdp ).openTMLCPSequenceDiagram( name ); + } + else { + ( (TMLCPPanel)tdp ).createTMLCPSequenceDiagram( name ); + } + tdp.getMouseManager().setSelection(-1, -1); + return true; } + @Override public int getDefaultConnector() { return TGComponentManager.CONNECTOR_TMLCP; } @@ -177,28 +186,26 @@ public class TMLCPRefSD extends TGCOneLineText { refToSD = _panel; }*/ - @Override public boolean editOndoubleClick(JFrame frame) { - - // - String text = "Reference to a SD: "; - if( hasFather() ) { + @Override + public boolean editOndoubleClick(JFrame frame) { + String text = "Reference to a SD: "; + if( hasFather() ) { text = getTopLevelName() + " / " + text; - } - String s = (String) JOptionPane.showInputDialog(frame, text, - "Setting Name", JOptionPane.PLAIN_MESSAGE, IconManager.imgic100, null, getName() ); - if( (s != null) && (s.length() > 0) ) { - if (nameUsed(s)) { - JOptionPane.showMessageDialog(frame, - "Error: the name is already in use", - "Name modification", - JOptionPane.ERROR_MESSAGE); - return false; - } - renameTab(s); + } + String s = (String) JOptionPane.showInputDialog(frame, text, + "Setting Name", JOptionPane.PLAIN_MESSAGE, IconManager.imgic100, null, getName() ); + if( (s != null) && (s.length() > 0) ) { + if (nameUsed(s)) { + JOptionPane.showMessageDialog(frame, + "Error: the name is already in use", + "Name modification", + JOptionPane.ERROR_MESSAGE); + return false; + } + renameTab(s); setName(s); return true; } - return false; + return false; } - } //End of Class diff --git a/src/main/java/ui/tmlcp/TMLCPStartState.java b/src/main/java/ui/tmlcp/TMLCPStartState.java index d7eadfa554e6ffa5124cf796bec44e76a906ed5d..03816840c1817200800f6c78f911828490f48d92 100755 --- a/src/main/java/ui/tmlcp/TMLCPStartState.java +++ b/src/main/java/ui/tmlcp/TMLCPStartState.java @@ -36,17 +36,13 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; -import java.awt.geom.Line2D; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADStartState; /** * Class TMLCPStartState @@ -55,52 +51,61 @@ import java.awt.geom.Line2D; * @version 1.0 17/02/2014 * @author Ludovic APVRILLE */ -public class TMLCPStartState extends TGCWithoutInternalComponent{ +public class TMLCPStartState extends TADStartState /* Issue #69 TGCWithoutInternalComponent*/{ private int lineLength = 5; public TMLCPStartState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - width = 15; - height = 15; +// width = 15; +// height = 15; +// +// nbConnectingPoint = 1; +// connectingPoint = new TGConnectingPoint[1]; +// connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 0.5, 1.0); +// +// nbInternalTGComponent = 0; +// +// moveable = true; +// editable = false; +// removable = true; +// +// name = "start state"; +// +// myImageIcon = IconManager.imgic222; + } + @Override + protected void createConnectingPoints() { nbConnectingPoint = 1; connectingPoint = new TGConnectingPoint[1]; connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, lineLength, false, true, 0.5, 1.0); - - nbInternalTGComponent = 0; - - moveable = true; - editable = false; - removable = true; - - name = "start state"; - - myImageIcon = IconManager.imgic222; } - public void internalDrawing(Graphics g) { - g.fillOval(x, y, width, height); - g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); - } +// public void internalDrawing(Graphics g) { +// g.fillOval(x, y, width, height); +// g.drawLine(x+(width/2), y+height, x+(width/2), y + lineLength + height); +// } - public TGComponent isOnMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - - if ((int)(Line2D.ptSegDistSq(x+(width/2), y+height, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) { - return this; - } - - return null; - } +// public TGComponent isOnMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// +// if ((int)(Line2D.ptSegDistSq(x+(width/2), y+height, x+(width/2), y + lineLength + height, _x, _y)) < distanceSelected) { +// return this; +// } +// +// return null; +// } + @Override public int getType() { return TGComponentManager.TMLCP_START_STATE; } + @Override public int getDefaultConnector() { - return TGComponentManager.CONNECTOR_TMLCP; + return TGComponentManager.CONNECTOR_TMLCP; } } \ No newline at end of file diff --git a/src/main/java/ui/tmlcp/TMLCPStopState.java b/src/main/java/ui/tmlcp/TMLCPStopState.java index f5f6bdc4be267b5a6560f742051095cc6b96fed9..238b27a331a28c1e34f5ecd4f0ae2b0e195e6a59 100755 --- a/src/main/java/ui/tmlcp/TMLCPStopState.java +++ b/src/main/java/ui/tmlcp/TMLCPStopState.java @@ -35,17 +35,14 @@ * The fact that you are presently reading this means that you have had * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; -import myutil.GraphicLib; -import ui.*; -import ui.util.IconManager; - -import java.awt.*; +import ui.TDiagramPanel; +import ui.TGComponent; +import ui.TGComponentManager; +import ui.TGConnectingPoint; +import ui.ad.TADStopState; /** * Class TMLCPStopState @@ -54,55 +51,55 @@ import java.awt.*; * @version 1.0 30/09/2004 * @author Ludovic APVRILLE */ -public class TMLCPStopState extends TGCWithoutInternalComponent{ - private int internalCircleSize = 16; - private int lineLength = 5; +public class TMLCPStopState extends TADStopState /* Issue #69 TGCWithoutInternalComponent*/{ +// private int internalCircleSize = 16; +// private int lineLength = 5; public TMLCPStopState(int _x, int _y, int _minX, int _maxX, int _minY, int _maxY, boolean _pos, TGComponent _father, TDiagramPanel _tdp) { super(_x, _y, _minX, _maxX, _minY, _maxY, _pos, _father, _tdp); - width = 20; - height = 20; +// width = 20; +// height = 20; +// +// nbConnectingPoint = 1; +// connectingPoint = new TGConnectingPoint[1]; +// connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, - lineLength, true, false, 0.5, 0.0); +// +// nbInternalTGComponent = 0; +// +// moveable = true; +// editable = false; +// removable = true; +// +// name = "stop state"; +// +// myImageIcon = IconManager.imgic210; + } + @Override + protected void createConnectingPoints() { nbConnectingPoint = 1; connectingPoint = new TGConnectingPoint[1]; connectingPoint[0] = new TGConnectingPointTMLCP(this, 0, - lineLength, true, false, 0.5, 0.0); - - nbInternalTGComponent = 0; - - moveable = true; - editable = false; - removable = true; - - name = "stop state"; - - myImageIcon = IconManager.imgic210; - } - - public void internalDrawing(Graphics g) { - ColorManager.setColor(g, state, 0); - g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize); - g.drawOval(x, y, width, height); - g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); } - - public TGComponent isOnMe(int _x, int _y) { - if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { - return this; - } - return null; - } +// public void internalDrawing(Graphics g) { +// ColorManager.setColor(g, state, 0); +// g.fillOval(x + (width - internalCircleSize)/2, y + (height - internalCircleSize)/2, internalCircleSize, internalCircleSize); +// g.drawOval(x, y, width, height); +// g.drawLine(x+(width/2), y, x+(width/2), y - lineLength); +// } +// +// +// public TGComponent isOnMe(int _x, int _y) { +// if (GraphicLib.isInRectangle(_x, _y, x, y, width, height)) { +// return this; +// } +// return null; +// } + @Override public int getType() { return TGComponentManager.TMLCP_STOP_STATE; } - } - - - - - - - diff --git a/src/main/java/ui/tmlcp/TMLCPToolBar.java b/src/main/java/ui/tmlcp/TMLCPToolBar.java index a75922b2cf303fd4de6dba6e6b40755961853f71..aca7bcf04ae1881d51f92a490421d16d5b9b1a0f 100755 --- a/src/main/java/ui/tmlcp/TMLCPToolBar.java +++ b/src/main/java/ui/tmlcp/TMLCPToolBar.java @@ -37,9 +37,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.tmlcp; import ui.MainGUI; @@ -48,9 +45,6 @@ import ui.TToolBar; import javax.swing.*; -//import java.awt.*; -//import java.awt.event.*; - /** * Class TMLCPToolBar * Implements the toolbar to be used in conjunction with the panel of an interaction overview diagram @@ -63,9 +57,9 @@ public class TMLCPToolBar extends TToolBar { public TMLCPToolBar(MainGUI _mgui) { super(_mgui); - } + @Override protected void setActive(boolean b) { mgui.actions[TGUIAction.TMLCP_EDIT].setEnabled(b); mgui.actions[TGUIAction.UML_NOTE].setEnabled(b); @@ -79,7 +73,7 @@ public class TMLCPToolBar extends TToolBar { mgui.actions[TGUIAction.TMLCP_START].setEnabled(b); mgui.actions[TGUIAction.TMLCP_STOP].setEnabled(b); //mgui.actions[TGUIAction.TMLCP_JUNCTION].setEnabled(b); - mgui.actions[TGUIAction.TMLCP_FOR_LOOP].setEnabled(b); + mgui.actions[TGUIAction.TMLCP_FOR_LOOP].setEnabled(b); mgui.actions[TGUIAction.ACT_ENHANCE].setEnabled(b); mgui.actions[TGUIAction.ACT_ZOOM_MORE].setEnabled(false); @@ -90,6 +84,7 @@ public class TMLCPToolBar extends TToolBar { } + @Override protected void setButtons() { JButton button; @@ -129,7 +124,7 @@ public class TMLCPToolBar extends TToolBar { button.addMouseListener(mgui.mouseHandler); button = this.add(mgui.actions[TGUIAction.TMLCP_JOIN]); - button.addMouseListener(mgui.mouseHandler); + button.addMouseListener(mgui.mouseHandler); button = this.add(mgui.actions[TGUIAction.TMLCP_CHOICE]); @@ -138,14 +133,12 @@ public class TMLCPToolBar extends TToolBar { /*button = this.add(mgui.actions[TGUIAction.TMLCP_JUNCTION]); button.addMouseListener(mgui.mouseHandler);*/ - button = this.add(mgui.actions[TGUIAction.TMLCP_FOR_LOOP]); - button.addMouseListener(mgui.mouseHandler); + button = this.add(mgui.actions[TGUIAction.TMLCP_FOR_LOOP]); + button.addMouseListener(mgui.mouseHandler); this.addSeparator(); button = this.add(mgui.actions[TGUIAction.ACT_ENHANCE]); button.addMouseListener(mgui.mouseHandler); - } - } // Class diff --git a/src/main/java/ui/tmldd/TMLArchiDiagramToolBar.java b/src/main/java/ui/tmldd/TMLArchiDiagramToolBar.java index e4ba382344471f10a966ad4de782779ee427e33d..1d1c8571b49ddee9c7ff55e2515605062f647938 100755 --- a/src/main/java/ui/tmldd/TMLArchiDiagramToolBar.java +++ b/src/main/java/ui/tmldd/TMLArchiDiagramToolBar.java @@ -69,6 +69,7 @@ public class TMLArchiDiagramToolBar extends TToolBar implements ActionListener super(_mgui); } + @Override protected void setActive(boolean b) { mgui.actions[TGUIAction.TMLARCHI_EDIT].setEnabled(b); mgui.actions[TGUIAction.UML_NOTE].setEnabled(b); @@ -100,6 +101,7 @@ public class TMLArchiDiagramToolBar extends TToolBar implements ActionListener mgui.updateZoomInfo(); } + @Override protected void setButtons() { JButton button; diff --git a/src/main/java/ui/util/DefaultText.java b/src/main/java/ui/util/DefaultText.java index c259e8b36dfca8252615d12c2b33cae4ccbca318..877c5db16f3df9a4bb9268866d5ac48832d33fb2 100755 --- a/src/main/java/ui/util/DefaultText.java +++ b/src/main/java/ui/util/DefaultText.java @@ -50,8 +50,8 @@ package ui.util; */ public class DefaultText { - public static String BUILD = "12714"; - public static String DATE = "2018/07/30 02:01:35 CET"; + public static String BUILD = "12720"; + public static String DATE = "2018/08/05 02:01:48 CET"; public static StringBuffer sbAbout = makeAbout(); diff --git a/src/main/java/ui/window/JBirdPanel.java b/src/main/java/ui/window/JBirdPanel.java index 5b0265f9fc0c8b23399ae44bde72d35b96d65ac4..9c37bc6b7f025968aabfe120cfc7699d3191b919 100644 --- a/src/main/java/ui/window/JBirdPanel.java +++ b/src/main/java/ui/window/JBirdPanel.java @@ -36,9 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.window; import ui.ColorManager; @@ -51,7 +48,6 @@ import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; - /** * Class JbirdPanel * Panel for displaying bird'eyes view of panels @@ -60,7 +56,8 @@ import java.awt.event.MouseMotionListener; * @author Ludovic APVRILLE */ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionListener { - private MainGUI mgui; + + private MainGUI mgui; private int w, h, wc, wh; //private Image image, scaledImage; //private Graphics graphics; @@ -84,6 +81,7 @@ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionList startProcess(); } + @Override protected void paintComponent(Graphics g) { if (isShowing()) { super.paintComponent(g); @@ -109,8 +107,7 @@ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionList } } - - public void centerRectangle(int x, int y) { + private void centerRectangle(int x, int y) { if (rect != null) { x = (int)(x - rect.width*wratio/2); y = (int)(y - rect.height*hratio/2); @@ -127,6 +124,7 @@ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionList } } + @Override public void mousePressed(MouseEvent e) { // //startX = e.getX(); @@ -145,28 +143,27 @@ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionList } } - public void mouseReleased(MouseEvent e) { - + @Override + public void mouseReleased(MouseEvent e) { } + @Override public void mouseEntered(MouseEvent e) { - } + @Override public void mouseExited(MouseEvent e) { - } + @Override public void mouseClicked(MouseEvent e) { - } - + @Override public void mouseMoved(MouseEvent e) { - - } + @Override public void mouseDragged(MouseEvent e) { centerRectangle(e.getX(), e.getY()); } @@ -183,5 +180,4 @@ public class JBirdPanel extends JPanel implements MouseListener, MouseMotionList public boolean getGo() { return go; } - } diff --git a/src/main/java/ui/window/JDialogAvatarSignal.java b/src/main/java/ui/window/JDialogAvatarSignal.java index 555e36aa46bb837cc0978c7e3681ec66cfece14d..611cfe791b2fb3e49bc3f13926492324faa8ad51 100644 --- a/src/main/java/ui/window/JDialogAvatarSignal.java +++ b/src/main/java/ui/window/JDialogAvatarSignal.java @@ -61,7 +61,6 @@ import myutil.TraceManager; import ui.AvatarSignal; import ui.TGComponent; - /** * Class JDialogAvatarSignal * Dialog for managing several string components @@ -92,7 +91,6 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener /** Creates new form */ public JDialogAvatarSignal(Frame _f, String _title, String _currentSignal, List<AvatarSignal> _signals, boolean _isOut, TGComponent _reference, Vector<TGComponent> _refs) { - super(_f, _title, true); signals = _signals; @@ -101,11 +99,10 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener reference=_reference; refs=_refs; - makeSignals(); initComponents(); - myInitComponents(); +// myInitComponents(); pack(); } @@ -121,11 +118,8 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener } } - - - private void myInitComponents() { - } - +// private void myInitComponents() { +// } private void initComponents() { Container c = getContentPane(); @@ -196,6 +190,7 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener c.add(buttons, BorderLayout.SOUTH); } + @Override public void actionPerformed(ActionEvent evt) { //String command = evt.getActionCommand(); @@ -227,7 +222,6 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener return (TGComponent) refChecks.getSelectedItem(); } - public boolean hasValidString() { return signal.getText().length() > 0; } diff --git a/src/main/java/ui/window/JDialogAvatarTransition.java b/src/main/java/ui/window/JDialogAvatarTransition.java index e1847f538c9fe58a0ef19c27796859521625af6b..ff423d54bd155d2ee20b3164a509152cfec139aa 100644 --- a/src/main/java/ui/window/JDialogAvatarTransition.java +++ b/src/main/java/ui/window/JDialogAvatarTransition.java @@ -47,9 +47,12 @@ import java.awt.GridBagLayout; import java.awt.Insets; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.Vector; +import javax.swing.DefaultCellEditor; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; @@ -57,12 +60,22 @@ import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTabbedPane; +import javax.swing.JTable; import javax.swing.JTextArea; import javax.swing.JTextField; +import javax.swing.ListSelectionModel; +import javax.swing.SwingConstants; +import javax.swing.border.TitledBorder; +import javax.swing.event.CellEditorListener; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; +import javax.swing.table.DefaultTableModel; +import javax.swing.text.BadLocationException; -import myutil.Conversion; import myutil.GraphicLib; import ui.AvatarMethod; +import ui.Expression; import ui.TAttribute; /** @@ -74,25 +87,36 @@ import ui.TAttribute; */ public class JDialogAvatarTransition extends JDialogBase implements ActionListener { - private Vector<String> actions; - private String guard, afterMin, afterMax, computeMin, computeMax, probability; + private Vector<Vector<Expression>> actionRows; + //private Vector<String> actions; + private String guard, afterMin, afterMax, /*computeMin, computeMax,*/ probability; private List<TAttribute> myAttributes; private List<AvatarMethod> myMethods; private Vector<String> allElements, insertElements; - protected String [] filesToInclude; - protected String [] codeToInclude; +// protected String [] filesToInclude; +// protected String [] codeToInclude; private boolean cancelled = true; - private JPanel panel1; - private JPanel panel2; + private JPanel pnlTransitionInfo; +// private JPanel panel1; +// private JPanel panel2; // Panel1 - private JTextField guardT, afterMinT, afterMaxT, computeMinT, computeMaxT, probabilityT; - private JTextArea actionsT; - private JComboBox<String> elements; - private JButton insertElement; + private JTextField guardT, afterMinT, afterMaxT, /*computeMinT, computeMaxT,*/ probabilityT; + + private JTable actionsTable; +// private JTextArea actionsT; + private final Vector<String> actionsListHeader; + + private JComboBox<String> codeElements; + //private JButton insertElement; + private JButton insertCodeButton; + private JButton addButton; + private JButton upButton; + private JButton downButton; + private JButton removeButton; // Panel of code and files protected JTextArea jtaCode, jtaFiles; @@ -100,26 +124,45 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen /** Creates new form */ // arrayDelay: [0] -> minDelay ; [1] -> maxDelay - public JDialogAvatarTransition(Frame _f, String _title, String _guard, String _afterMin, String _afterMax, - String _computeMin, String _computeMax, Vector<String> _actions, - List<TAttribute> _myAttributes, List<AvatarMethod> _myMethods, - String[] _filesToInclude, String[] _codeToInclude, String _probability) { + public JDialogAvatarTransition( Frame _f, + String _title, + String _guard, + String _afterMin, + String _afterMax, + /* String _computeMin, String _computeMax,*/ + Vector<Expression> _actions, + List<TAttribute> _myAttributes, + List<AvatarMethod> _myMethods, +// String[] _filesToInclude, +// String[] _codeToInclude, + String _probability) { super(_f, _title, true); guard = _guard; afterMin = _afterMin; afterMax = _afterMax; - computeMin = _computeMin; - computeMax = _computeMax; - actions = _actions; +// computeMin = _computeMin; +// computeMax = _computeMax; + + actionRows = new Vector<Vector<Expression>>(); + + for ( final Expression actionExpr : _actions ) { + final Vector<Expression> row = new Vector<Expression>(); + row.add( actionExpr ); + actionRows.add( row ); + } + + actionsListHeader = new Vector<String>(); + + //actions = _actions; probability = _probability; myAttributes = _myAttributes; myMethods = _myMethods; - filesToInclude = _filesToInclude; - codeToInclude = _codeToInclude; +// filesToInclude = _filesToInclude; +// codeToInclude = _codeToInclude; makeElements(); @@ -150,15 +193,15 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen // } // private void initComponents() { - int i; + // int i; Container c = getContentPane(); - GridBagLayout gridbag0 = new GridBagLayout(); - GridBagLayout gridbag1 = new GridBagLayout(); - GridBagLayout gridbag2 = new GridBagLayout(); - GridBagConstraints c0 = new GridBagConstraints(); - GridBagConstraints c1 = new GridBagConstraints(); - GridBagConstraints c2 = new GridBagConstraints(); +// GridBagLayout gridbag0 = new GridBagLayout(); +// GridBagLayout gridbag1 = new GridBagLayout(); +// GridBagLayout gridbag2 = new GridBagLayout(); +// GridBagConstraints c0 = new GridBagConstraints(); +// GridBagConstraints c1 = new GridBagConstraints(); +// GridBagConstraints c2 = new GridBagConstraints(); setFont(new Font("Helvetica", Font.PLAIN, 14)); //c.setLayout(gridbag0); @@ -166,38 +209,72 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); - panel1 = new JPanel(); - panel1.setLayout(gridbag1); + pnlTransitionInfo = new JPanel(); + pnlTransitionInfo.setLayout( new GridBagLayout() ); - panel1.setBorder(new javax.swing.border.TitledBorder("Transition parameters")); + pnlTransitionInfo.setBorder(new TitledBorder("Transition parameters")); +// panel1 = new JPanel(); +// panel1.setLayout(gridbag1); + +// panel1.setBorder(new javax.swing.border.TitledBorder("Transition parameters")); //panel1.setPreferredSize(new Dimension(350, 350)); + final int defaultMargin = 3; // guard - c1.weighty = 1.0; - c1.weightx = 1.0; - c1.gridwidth = 1; - c1.gridheight = 1; - c1.fill = GridBagConstraints.BOTH; - c1.gridheight = 1; - panel1.add(new JLabel("guard = "), c1); - c1.gridwidth = GridBagConstraints.REMAINDER; //end row + final GridBagConstraints constraintsLabels = new GridBagConstraints(); + constraintsLabels.weighty = 0.0; + constraintsLabels.weightx = 0.0; + constraintsLabels.gridwidth = 1; + constraintsLabels.gridheight = 1; + constraintsLabels.fill = GridBagConstraints.BOTH; + constraintsLabels.insets = new Insets( defaultMargin, defaultMargin, 0, 0 ); + pnlTransitionInfo.add( new JLabel( "guard = ", SwingConstants.RIGHT ), constraintsLabels ); + +// c1.weighty = 1.0; +// c1.weightx = 1.0; +// c1.gridwidth = 1; +// c1.gridheight = 1; +// c1.fill = GridBagConstraints.BOTH; +// c1.gridheight = 1; +// panel1.add(new JLabel("guard = "), c1); +// c1.gridwidth = GridBagConstraints.REMAINDER; //end row guardT = new JTextField(guard); - panel1.add(guardT, c1); + final GridBagConstraints constraintsFields = new GridBagConstraints(); + constraintsFields.weighty = 0.0; + constraintsFields.weightx = 1.0; + constraintsFields.gridwidth = GridBagConstraints.REMAINDER; //end row; + constraintsFields.gridheight = 1; + constraintsFields.fill = GridBagConstraints.BOTH; + constraintsFields.insets = new Insets( defaultMargin, 0, 0, defaultMargin ); + + pnlTransitionInfo.add( guardT, constraintsFields ); + //panel1.add(guardT, c1); // After - c1.gridwidth = 1; - c1.gridheight = 1; - c1.weighty = 1.0; - c1.weightx = 1.0; - panel1.add(new JLabel("after ("), c1); + pnlTransitionInfo.add(new JLabel("after ( ", SwingConstants.RIGHT ), constraintsLabels ); +// c1.gridwidth = 1; +// c1.gridheight = 1; +// c1.weighty = 1.0; +// c1.weightx = 1.0; +// panel1.add(new JLabel("after ("), c1); afterMinT = new JTextField(afterMin, 10); - panel1.add(afterMinT, c1); - panel1.add(new JLabel(","), c1); + constraintsFields.gridwidth = 1; + constraintsFields.insets.right = 0; + pnlTransitionInfo.add(afterMinT, constraintsFields ); + constraintsLabels.insets.left = 0; + pnlTransitionInfo.add(new JLabel( ", " ), constraintsLabels ); +// panel1.add(afterMinT, c1); + // panel1.add(new JLabel(","), c1); afterMaxT = new JTextField(afterMax, 10); - panel1.add(afterMaxT, c1); - c1.gridwidth = GridBagConstraints.REMAINDER; //end row - panel1.add(new JLabel(")"), c1); + pnlTransitionInfo.add(afterMaxT, constraintsFields ); + constraintsLabels.gridwidth = GridBagConstraints.REMAINDER; + constraintsLabels.insets.right = defaultMargin; + pnlTransitionInfo.add(new JLabel( " )" ), constraintsLabels ); + constraintsLabels.gridwidth = 1; +// panel1.add(afterMaxT, c1); +// c1.gridwidth = GridBagConstraints.REMAINDER; //end row +// panel1.add(new JLabel(")"), c1); // Compute /*c1.gridwidth = 1; @@ -214,108 +291,257 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen panel1.add(new JLabel(")"), c1);*/ // probability - c1.weighty = 1.0; - c1.weightx = 1.0; - c1.gridwidth = 1; - c1.gridheight = 1; - c1.fill = GridBagConstraints.BOTH; - c1.gridheight = 1; - panel1.add(new JLabel("weight in [0...1000] (default = 1) = "), c1); - c1.gridwidth = GridBagConstraints.REMAINDER; //end row - probabilityT = new JTextField(probability); - panel1.add(probabilityT, c1); + pnlTransitionInfo.add( new JLabel("weight in [0...1000] (default = 1) = "), constraintsLabels ); +// c1.weighty = 1.0; +// c1.weightx = 1.0; +// c1.gridwidth = 1; +// c1.gridheight = 1; +// c1.fill = GridBagConstraints.BOTH; +// c1.gridheight = 1; + //panel1.add(new JLabel("weight in [0...1000] (default = 1) = "), c1); + // c1.gridwidth = GridBagConstraints.REMAINDER; //end row + constraintsFields.gridwidth = GridBagConstraints.REMAINDER; //end row; + probabilityT = new JTextField(probability); + pnlTransitionInfo.add( probabilityT, constraintsFields ); +// panel1.add(probabilityT, c1); // actions + constraintsFields.gridwidth = GridBagConstraints.REMAINDER; + + codeElements = new JComboBox<String>(allElements); + pnlTransitionInfo.add(codeElements, constraintsFields ); + + insertCodeButton = new JButton( "Insert Code" ); + insertCodeButton.addActionListener( new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + insertCodeAction(); + } + } ); + pnlTransitionInfo.add( insertCodeButton, constraintsFields ); + + actionsTable = new JTable( new DefaultTableModel() { + + /** + * + */ + private static final long serialVersionUID = 1L; + + @Override + public Object getValueAt(int row, int column) { + final Expression expression = (Expression) super.getValueAt( row, column ); + + return expression.getText(); + } + + @Override + public void setValueAt(Object aValue, int row, int column) { + final Expression expression = (Expression) super.getValueAt( row, column ); + + expression.setText( String.valueOf( aValue ) ); + + fireTableCellUpdated(row, column); + } + } ); + + actionsTable.setShowGrid( false ); + + final ListSelectionModel selectionModel = actionsTable.getSelectionModel(); + selectionModel.addListSelectionListener( new ListSelectionListener() { + + @Override + public void valueChanged( ListSelectionEvent e ) { + manageButtonsEnablement(); + } + } ); + + actionsTable.setSelectionMode( ListSelectionModel.SINGLE_SELECTION ); + actionsListHeader.addElement(""); + + final DefaultCellEditor defaultCellEditor = (DefaultCellEditor) actionsTable.getDefaultEditor( Object.class ); + defaultCellEditor.setClickCountToStart( 1 ); + defaultCellEditor.addCellEditorListener( new CellEditorListener() { + + @Override + public void editingStopped(ChangeEvent e) { + manageButtonsEnablement(); + } + + @Override + public void editingCanceled(ChangeEvent e) { + manageButtonsEnablement(); + } + }); + + ( (DefaultTableModel) actionsTable.getModel() ).setDataVector( actionRows, actionsListHeader ); - elements = new JComboBox<String>(allElements); - panel1.add(elements, c1); - - insertElement = new JButton("Insert"); - insertElement.setEnabled(allElements.size() > 0); - insertElement.addActionListener(this); - panel1.add(insertElement, c1); - - c1.gridheight = 10; - c1.weighty = 10.0; - c1.weightx = 10.0; - c1.gridwidth = GridBagConstraints.REMAINDER; //end row - c1.fill = GridBagConstraints.BOTH; - actionsT = new JTextArea(); - actionsT.setEditable(true); - actionsT.setMargin(new Insets(10, 10, 10, 10)); - actionsT.setTabSize(3); - actionsT.setFont(new Font("times", Font.PLAIN, 12)); + //actionsT.getCellRenderer().sEditable(true); + //actionsT.setMargin(new Insets(10, 10, 10, 10))); + //actionsT.setTabSize(3); + //actionsT.setFont(new Font("times", Font.PLAIN, 12)); //actionsT.setPreferredSize(new Dimension(350, 250)); - JScrollPane jsp = new JScrollPane(actionsT, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); - for(i=0; i<actions.size(); i++) { - actionsT.append(actions.get(i) + "\n"); - } - panel1.add(jsp, c1); - - - panel2 = new JPanel(); - panel2.setLayout(gridbag2); - - panel2.setBorder(new javax.swing.border.TitledBorder("Code")); - // guard - c2.weighty = 1.0; - c2.weightx = 1.0; - c2.gridwidth = 1; - c2.gridheight = 1; - c2.fill = GridBagConstraints.BOTH; - c2.gridwidth = GridBagConstraints.REMAINDER; - c2.gridheight = 1; - panel2.add(new JLabel("Files to include:"), c2); - jtaFiles = new JTextArea(); - jtaFiles.setEditable(true); - jtaFiles.setMargin(new Insets(10, 10, 10, 10)); - jtaFiles.setTabSize(3); - String files = ""; - if (filesToInclude != null) { - for(i=0; i<filesToInclude.length; i++) { - files += filesToInclude[i] + "\n"; - } - } - jtaFiles.append(files); - jtaFiles.setFont(new Font("times", Font.PLAIN, 12)); - jsp = new JScrollPane(jtaFiles, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); - //jsp.setPreferredSize(new Dimension(300, 300)); - panel2.add(jsp, c2); - panel2.add(new JLabel("Code to execute at the end of the transition"), c2); - jtaCode = new JTextArea(); - jtaCode.setEditable(true); - jtaCode.setMargin(new Insets(10, 10, 10, 10)); - jtaCode.setTabSize(3); - String code = ""; - if (codeToInclude != null) { - for(i=0; i<codeToInclude.length; i++) { - code += codeToInclude[i] + "\n"; - } - } - jtaCode.append(code); - jtaCode.setFont(new Font("times", Font.PLAIN, 12)); - jsp = new JScrollPane(jtaCode, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); - //jsp.setPreferredSize(new Dimension(300, 300)); - panel2.add(jsp, c2); + JScrollPane jsp = new JScrollPane(actionsTable, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); + +// for( int i=0; i<actions.size(); i++) { +// actionsT.append(actions.get(i) + "\n"); +// } + + final GridBagConstraints constraintsList = new GridBagConstraints(); + constraintsList.weighty = 1.0; + constraintsList.weightx = 1.0; + constraintsList.gridwidth = GridBagConstraints.REMAINDER; //end row; + constraintsList.gridheight = 1; + constraintsList.fill = GridBagConstraints.BOTH; + + pnlTransitionInfo.add(jsp, constraintsList ); + +// c1.weighty = 0.0; + + final GridBagConstraints constraintsButtons = new GridBagConstraints(); + constraintsButtons.weighty = 0.0; + constraintsButtons.weightx = 1.0; + constraintsButtons.gridwidth = GridBagConstraints.REMAINDER; //end row; + constraintsButtons.gridheight = 1; + constraintsButtons.fill = GridBagConstraints.BOTH; + + upButton = new JButton( "Up" ); + upButton.addActionListener( new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + upAction(); + } + }); + + constraintsFields.gridwidth = GridBagConstraints.REMAINDER; + constraintsFields.weightx = 1.0; + pnlTransitionInfo.add(upButton, constraintsButtons ); + + downButton = new JButton("Down"); + downButton.addActionListener( new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + downAction(); + } + } ); + + pnlTransitionInfo.add( downButton, constraintsButtons ); + + removeButton = new JButton("Remove"); + removeButton.addActionListener( new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + removeAction(); + } + } ); + + pnlTransitionInfo.add( removeButton, constraintsButtons ); + + addButton = new JButton( "Add" ); + addButton.addActionListener( new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + addAction(); + } + } ); + pnlTransitionInfo.add( addButton, constraintsButtons ); + + manageButtonsEnablement(); + +// elements = new JComboBox<String>(allElements); +// panel1.add(elements, c1); +// +// insertElement = new JButton("Insert"); +// insertElement.setEnabled(allElements.size() > 0); +// insertElement.addActionListener(this); +// panel1.add(insertElement, c1); +// +// c1.gridheight = 10; +// c1.weighty = 10.0; +// c1.weightx = 10.0; +// c1.gridwidth = GridBagConstraints.REMAINDER; //end row +// c1.fill = GridBagConstraints.BOTH; +// actionsT = new JTextArea(); +// actionsT.setEditable(true); +// actionsT.setMargin(new Insets(10, 10, 10, 10)); +// actionsT.setTabSize(3); +// actionsT.setFont(new Font("times", Font.PLAIN, 12)); +// //actionsT.setPreferredSize(new Dimension(350, 250)); +// JScrollPane jsp = new JScrollPane(actionsT, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); +// for(i=0; i<actions.size(); i++) { +// actionsT.append(actions.get(i) + "\n"); +// } +// panel1.add(jsp, c1); + + +// panel2 = new JPanel(); +// panel2.setLayout(gridbag2); +// +// panel2.setBorder(new javax.swing.border.TitledBorder("Code")); +// // guard +// c2.weighty = 1.0; +// c2.weightx = 1.0; +// c2.gridwidth = 1; +// c2.gridheight = 1; +// c2.fill = GridBagConstraints.BOTH; +// c2.gridwidth = GridBagConstraints.REMAINDER; +// c2.gridheight = 1; +// panel2.add(new JLabel("Files to include:"), c2); +// jtaFiles = new JTextArea(); +// jtaFiles.setEditable(true); +// jtaFiles.setMargin(new Insets(10, 10, 10, 10)); +// jtaFiles.setTabSize(3); +// String files = ""; +// if (filesToInclude != null) { +// for(i=0; i<filesToInclude.length; i++) { +// files += filesToInclude[i] + "\n"; +// } +// } +// jtaFiles.append(files); +// jtaFiles.setFont(new Font("times", Font.PLAIN, 12)); +// jsp = new JScrollPane(jtaFiles, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); +// //jsp.setPreferredSize(new Dimension(300, 300)); +// panel2.add(jsp, c2); +// panel2.add(new JLabel("Code to execute at the end of the transition"), c2); +// jtaCode = new JTextArea(); +// jtaCode.setEditable(true); +// jtaCode.setMargin(new Insets(10, 10, 10, 10)); +// jtaCode.setTabSize(3); +// String code = ""; +// if (codeToInclude != null) { +// for(i=0; i<codeToInclude.length; i++) { +// code += codeToInclude[i] + "\n"; +// } +// } +// jtaCode.append(code); +// jtaCode.setFont(new Font("times", Font.PLAIN, 12)); +// jsp = new JScrollPane(jtaCode, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); +// //jsp.setPreferredSize(new Dimension(300, 300)); +// panel2.add(jsp, c2); // button panel; - c0.gridwidth = 1; - c0.gridheight = 10; - c0.weighty = 1.0; - c0.weightx = 1.0; - c0.gridwidth = GridBagConstraints.REMAINDER; //end row +// c0.gridwidth = 1; +// c0.gridheight = 10; +// c0.weighty = 1.0; +// c0.weightx = 1.0; +// c0.gridwidth = GridBagConstraints.REMAINDER; //end row // Issue #41 Ordering of tabbed panes JTabbedPane jtp = GraphicLib.createTabbedPane();//new JTabbedPane(); - jtp.add("General", panel1); + jtp.add( "General", pnlTransitionInfo ); //jtp.add("Prototyping", panel2); //c.add(jtp, c0); c.add(jtp, BorderLayout.CENTER); JPanel buttons = new JPanel(); - buttons.setLayout(gridbag0); + buttons.setLayout( new GridBagLayout() ); + final GridBagConstraints c0 = new GridBagConstraints(); c0.gridwidth = 1; c0.gridheight = 1; c0.fill = GridBagConstraints.HORIZONTAL; @@ -324,6 +550,53 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen c.add(buttons, BorderLayout.SOUTH); } + + private void downAction() { + final int selectedActionIndex = actionsTable.getSelectedRow(); + + if ( selectedActionIndex > -1 ) { + saveCurrentActionEditing(); + + final int newIndex = selectedActionIndex + 1; + Collections.swap( actionRows, selectedActionIndex, newIndex ); + ( (DefaultTableModel) actionsTable.getModel() ).setDataVector( actionRows, actionsListHeader ); + actionsTable.getSelectionModel().setSelectionInterval( newIndex, newIndex ); + + manageButtonsEnablement(); + } + } + + private void upAction() { + final int selectedActionIndex = actionsTable.getSelectedRow(); + + if ( selectedActionIndex > 0 ) { + saveCurrentActionEditing(); + + final int newIndex = selectedActionIndex - 1; + Collections.swap( actionRows, selectedActionIndex, newIndex ); + ( (DefaultTableModel) actionsTable.getModel() ).setDataVector( actionRows, actionsListHeader ); + actionsTable.setRowSelectionInterval( newIndex, newIndex ); + + manageButtonsEnablement(); + } + } + + private void manageButtonsEnablement() { + final int selectedActionIndex = actionsTable.getSelectedRow(); + + if ( selectedActionIndex < 0 ) { + insertCodeButton.setEnabled( false ); + upButton.setEnabled( false ); + downButton.setEnabled( false ); + removeButton.setEnabled( false ); + } + else { + insertCodeButton.setEnabled( codeElements.getSelectedIndex() > -1 ); + removeButton.setEnabled( true ); + upButton.setEnabled( selectedActionIndex > 0 ); + downButton.setEnabled( selectedActionIndex < actionsTable.getRowCount() - 1 ); + } + } @Override public void actionPerformed(ActionEvent evt) { @@ -334,37 +607,114 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen closeDialog(); } else if (evt.getSource() == cancelButton) { cancelDialog(); - } else if (evt.getSource() == insertElement) { - insertElements(); +// } else if (evt.getSource() == insertElement) { +// insertElements(); } } + + private JTextField getEditingField() { + // TODO: Generalize for other fields so that code completion also works for them + + if ( actionsTable.getSelectedRow() > -1 ) { + DefaultCellEditor cellEditor = (DefaultCellEditor) actionsTable.getCellEditor(); + + if ( cellEditor == null ) { + actionsTable.editCellAt( actionsTable.getSelectedRow(), 0 ); + cellEditor = (DefaultCellEditor) actionsTable.getCellEditor(); + } + + return (JTextField) cellEditor.getComponent(); + } + + return null; + } - public void insertElements() { - int index = elements.getSelectedIndex(); - int caretPos = actionsT.getCaretPosition (); - String str = insertElements.get(index); - String text = actionsT.getText (); - if (caretPos > 0 && text.charAt (caretPos-1) != ' ' && text.charAt (caretPos-1) != '(') - str = " " + str; - if (caretPos == text.length () || (text.charAt (caretPos) != ' ' && text.charAt (caretPos) != ')')) - str = str + " "; - actionsT.insert (str, caretPos); - actionsT.setCaretPosition (caretPos + str.length ()); - actionsT.requestFocusInWindow (); + private void insertCodeAction() { + int selectedCodeIndex = codeElements.getSelectedIndex(); + + if ( selectedCodeIndex > -1 ) { + final JTextField editingField = getEditingField(); + + if ( editingField != null ) { + final int caretPos = editingField.getCaretPosition(); + final String elementName = insertElements.get( codeElements.getSelectedIndex() ); + + try { + editingField.getDocument().insertString( caretPos, elementName, null ); + } + catch (BadLocationException e) { + e.printStackTrace(); + } + } + } } + + private void saveCurrentActionEditing() { + if ( actionsTable.isEditing() ) { + actionsTable.getCellEditor().stopCellEditing(); + } + } + + private void addAction() { + saveCurrentActionEditing(); + + final int addingIndex = actionsTable.getSelectedRow() >= 0 ? actionsTable.getSelectedRow() + 1 : actionRows.size(); + final Expression newAction = new Expression( "" ); + final Vector<Expression> newActionRow = new Vector<Expression>(); + newActionRow.add( newAction ); + actionRows.add( addingIndex, newActionRow ); + ( (DefaultTableModel) actionsTable.getModel() ).setDataVector( actionRows, actionsListHeader ); + actionsTable.setRowSelectionInterval( addingIndex, addingIndex ); + + manageButtonsEnablement(); + } + + private void removeAction() { + int selectedIndex = actionsTable.getSelectedRow(); + + if ( selectedIndex > -1 ) { + actionRows.remove( selectedIndex ); + ( (DefaultTableModel) actionsTable.getModel() ).setDataVector( actionRows, actionsListHeader ); + + selectedIndex = Math.min( selectedIndex, actionRows.size() - 1 ); + + if ( selectedIndex > -1 ) { + actionsTable.setRowSelectionInterval( selectedIndex, selectedIndex ); + } + + manageButtonsEnablement(); + } + } +// +// public void insertElements() { +// int index = elements.getSelectedIndex(); +// int caretPos = actionsT.getCaretPosition (); +// String str = insertElements.get(index); +// String text = actionsT.getText (); +// if (caretPos > 0 && text.charAt (caretPos-1) != ' ' && text.charAt (caretPos-1) != '(') +// str = " " + str; +// if (caretPos == text.length () || (text.charAt (caretPos) != ' ' && text.charAt (caretPos) != ')')) +// str = str + " "; +// actionsT.insert (str, caretPos); +// actionsT.setCaretPosition (caretPos + str.length ()); +// actionsT.requestFocusInWindow (); +// } public void closeDialog() { - actions.removeAllElements(); - String[] act = actionsT.getText().split("\n"); - for(int i=0; i<act.length; i++) { - if (act[0].length() > 0) { - actions.add(act[i]); - } - } - filesToInclude = Conversion.wrapText(jtaFiles.getText()); - codeToInclude = Conversion.wrapText(jtaCode.getText()); +// actions.removeAllElements(); +// String[] act = actionsT.getText().split("\n"); +// for(int i=0; i<act.length; i++) { +// if (act[0].length() > 0) { +// actions.add(act[i]); +// } +// } +// filesToInclude = Conversion.wrapText(jtaFiles.getText()); +// codeToInclude = Conversion.wrapText(jtaCode.getText()); cancelled = false; + + saveCurrentActionEditing(); + dispose(); } @@ -384,19 +734,29 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen return afterMaxT.getText(); } - public String getComputeMin() { - if (computeMinT == null) { - return ""; - } - - return computeMinT.getText(); - } - - public String getComputeMax() { - if (computeMaxT == null) { - return ""; - } - return computeMaxT.getText(); +// public String getComputeMin() { +// if (computeMinT == null) { +// return ""; +// } +// +// return computeMinT.getText(); +// } +// +// public String getComputeMax() { +// if (computeMaxT == null) { +// return ""; +// } +// return computeMaxT.getText(); +// } + + public List<Expression> getActions() { + final List<Expression> actions = new ArrayList<Expression>(); + + for ( final Vector<Expression> actionVect : actionRows ) { + actions.add( actionVect.get( 0 ) ); + } + + return actions; } public String getProbability() { @@ -410,12 +770,12 @@ public class JDialogAvatarTransition extends JDialogBase implements ActionListen public void cancelDialog() { dispose(); } - - public String[] getFilesToInclude() { - return filesToInclude; - } - - public String[] getCodeToInclude() { - return codeToInclude; - } +// +// public String[] getFilesToInclude() { +// return filesToInclude; +// } +// +// public String[] getCodeToInclude() { +// return codeToInclude; +// } } diff --git a/src/main/java/ui/window/JDialogMultiString.java b/src/main/java/ui/window/JDialogMultiString.java index 102f2ca04785379cbba524979335d39bb13f71e8..b69246503d610d332e813e07e879f8feb0e072dd 100644 --- a/src/main/java/ui/window/JDialogMultiString.java +++ b/src/main/java/ui/window/JDialogMultiString.java @@ -36,15 +36,25 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.window; -import javax.swing.*; -import java.awt.*; +import java.awt.Container; +import java.awt.Font; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.util.ArrayList; import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.swing.JButton; +import javax.swing.JComboBox; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; /** * Class JDialogMultiString @@ -68,9 +78,9 @@ public class JDialogMultiString extends JDialogBase implements ActionListener { // Panel1 private JTextField[] texts; private JButton inserts[]; - private HashMap<Integer, JComboBox<String>> helps; + private Map<Integer, JComboBox<String>> helps; - private ArrayList<String[]> possibleValues = null; + private List<String[]> possibleValues = null; /** @@ -89,11 +99,11 @@ public class JDialogMultiString extends JDialogBase implements ActionListener { texts = new JTextField[nbString]; initComponents(); - myInitComponents(); + // myInitComponents(); pack(); } - public JDialogMultiString(Frame f, String title, int _nbString, String[] _labels, String[] _values, ArrayList<String[]> _possibleValues) { + public JDialogMultiString(Frame f, String title, int _nbString, String[] _labels, String[] _values, List<String[]> _possibleValues) { super(f, title, true); @@ -105,13 +115,12 @@ public class JDialogMultiString extends JDialogBase implements ActionListener { texts = new JTextField[nbString]; initComponents(); - myInitComponents(); + // myInitComponents(); pack(); } - - private void myInitComponents() { - } +// private void myInitComponents() { +// } private void initComponents() { inserts = new JButton[labels.length]; @@ -192,6 +201,7 @@ public class JDialogMultiString extends JDialogBase implements ActionListener { initButtons(c0, c, this); } + @Override public void actionPerformed(ActionEvent evt) { String command = evt.getActionCommand(); @@ -209,7 +219,6 @@ public class JDialogMultiString extends JDialogBase implements ActionListener { } } - public void closeDialog() { set = true; dispose(); diff --git a/src/main/java/ui/window/JDialogMultiStringAndTabs.java b/src/main/java/ui/window/JDialogMultiStringAndTabs.java index 33bc0d40ee46ad4e9e4b111cb11e5a2362275fa4..c7b59926e6e96fee28efadf7adb0709d5428d703 100644 --- a/src/main/java/ui/window/JDialogMultiStringAndTabs.java +++ b/src/main/java/ui/window/JDialogMultiStringAndTabs.java @@ -36,15 +36,26 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.window; -import javax.swing.*; -import java.awt.*; +import java.awt.Container; +import java.awt.Font; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.util.ArrayList; import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.swing.JButton; +import javax.swing.JComboBox; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTabbedPane; +import javax.swing.JTextField; /** * Class JDialogMultiStringAndTabs @@ -56,7 +67,7 @@ import java.util.HashMap; */ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionListener { - private ArrayList<TabInfo> tabs; + private List<TabInfo> tabs; private int totalNbOfStrings; private boolean set = false; @@ -64,16 +75,16 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList // Panel1 private JTextField[] texts; private JButton inserts[]; - private HashMap<Integer, JComboBox<String>> helps; + private Map<Integer, JComboBox<String>> helps; - private ArrayList<String[]> possibleValues = null; + // private List<String[]> possibleValues = null; /** * Creates new form */ // arrayDelay: [0] -> minDelay ; [1] -> maxDelay - public JDialogMultiStringAndTabs(Frame f, String title, ArrayList<TabInfo> _tabs) { + public JDialogMultiStringAndTabs(Frame f, String title, List<TabInfo> _tabs) { super(f, title, true); @@ -87,13 +98,13 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList texts = new JTextField[totalNbOfStrings]; initComponents(); - myInitComponents(); + //myInitComponents(); pack(); } - private void myInitComponents() { - } +// private void myInitComponents() { +// } private void initComponents() { inserts = new JButton[totalNbOfStrings]; @@ -161,15 +172,10 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList } - - //panel1.setBorder(new javax.swing.border.TitledBorder("Properties")); //panel1.setPreferredSize(new Dimension(600, 300)); - - - // main panel; c0.gridwidth = 1; c0.gridheight = 10; @@ -186,6 +192,7 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList initButtons(c0, c, this); } + @Override public void actionPerformed(ActionEvent evt) { String command = evt.getActionCommand(); @@ -203,7 +210,6 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList } } - public void closeDialog() { set = true; dispose(); @@ -232,7 +238,6 @@ public class JDialogMultiStringAndTabs extends JDialogBase implements ActionList return texts[i].getText().length() > 0; } - public boolean hasBeenSet() { return set; } diff --git a/src/main/java/ui/window/JDialogNCRoute.java b/src/main/java/ui/window/JDialogNCRoute.java index abea3c8950400b26f32276ea2a7302bb1a4976cf..cdeca43774ed399994e2ee6f95f59fd9ef2825aa 100644 --- a/src/main/java/ui/window/JDialogNCRoute.java +++ b/src/main/java/ui/window/JDialogNCRoute.java @@ -36,23 +36,33 @@ * knowledge of the CeCILL license and that you accept its terms. */ - - - package ui.window; -import ui.util.IconManager; -import ui.ncdd.NCRoute; - -import javax.swing.*; -import javax.swing.event.ListSelectionEvent; -import javax.swing.event.ListSelectionListener; -import java.awt.*; +import java.awt.Container; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.util.ArrayList; +import java.util.List; import java.util.Vector; +import javax.swing.JButton; +import javax.swing.JComboBox; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JList; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextField; +import javax.swing.ListSelectionModel; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; + +import ui.ncdd.NCRoute; + /** * Class JDialogNCRoute @@ -63,7 +73,7 @@ import java.util.Vector; */ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListSelectionListener { private Vector<NCRoute> routes; - private ArrayList<String> inputInterfaces, traffics, outputInterfaces; + private List<String> inputInterfaces, traffics, outputInterfaces; protected String value; @@ -82,7 +92,7 @@ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListS private JTextField valueText; /** Creates new form */ - public JDialogNCRoute(Frame _f, String _title, String _value, Vector<NCRoute> _routes, ArrayList<String> _inputInterfaces, ArrayList<String> _traffics, ArrayList<String> _outputInterfaces) { + public JDialogNCRoute(Frame _f, String _title, String _value, Vector<NCRoute> _routes, List<String> _inputInterfaces, List<String> _traffics, List<String> _outputInterfaces) { super(_f, _title, true); value = _value; @@ -276,8 +286,8 @@ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListS initButtons(c0, c, this); } + @Override public void actionPerformed(ActionEvent evt) { - String command = evt.getActionCommand(); // Compare the action command to the known actions. @@ -320,7 +330,6 @@ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListS } } - private void addRoute() { String s0 = (String)(inputInterfaceBox.getSelectedItem()); String s1 = (String)(trafficBox.getSelectedItem()); @@ -386,6 +395,7 @@ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListS return hasBeenCancelled; } + @Override public void valueChanged(ListSelectionEvent e) { int i = listRoute.getSelectedIndex() ; if (i == -1) { @@ -410,6 +420,4 @@ public class JDialogNCRoute extends JDialogBase implements ActionListener, ListS public String getValue() { return valueText.getText(); } - - } diff --git a/src/main/java/ui/window/JDialogPerformancePragma.java b/src/main/java/ui/window/JDialogPerformancePragma.java index f204f13efeeb6258616bf32f9daf83ccac701125..ba2dc8421e29308eeea7cdc4d6a38d64ab1f3d76 100644 --- a/src/main/java/ui/window/JDialogPerformancePragma.java +++ b/src/main/java/ui/window/JDialogPerformancePragma.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.window; import ui.util.IconManager; @@ -78,7 +77,7 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe protected JMenuBar menuBar; protected JMenu help; protected JPopupMenu helpPopup; - public Map<String, List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>(); + public Map<String, List<String>> blockAttributeMap = new HashMap<String, List<String>>(); /** * Creates new form @@ -161,7 +160,6 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe return list; } - public boolean insertSelection() { //Note that it will not add if the selection will not fit on the current line if (!popupMenu.isVisible()) { @@ -404,7 +402,6 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe } else if (evt.getSource() == close) { close(); } - } public void cancel() { @@ -427,6 +424,4 @@ public class JDialogPerformancePragma extends JDialogBase implements ActionListe public String getText() { return text; } - - } diff --git a/src/main/java/ui/window/JDialogPragma.java b/src/main/java/ui/window/JDialogPragma.java index 21d864dcefbd9a289e8bd5dac5f01db03bb3568e..04d1b1fd37477f8bb5205460969104891e85b809 100644 --- a/src/main/java/ui/window/JDialogPragma.java +++ b/src/main/java/ui/window/JDialogPragma.java @@ -78,8 +78,8 @@ public class JDialogPragma extends JDialogBase implements ActionListener { protected JButton cancel; protected JMenu help; private JPopupMenu helpPopup; - public Map<String, java.util.List<String>> blockAttributeMap = new HashMap<>(); - public Map<String, java.util.List<String>> blockStateMap = new HashMap<>(); + public Map<String, List<String>> blockAttributeMap = new HashMap<>(); + public Map<String, List<String>> blockStateMap = new HashMap<>(); /** * Creates new form @@ -395,6 +395,7 @@ public class JDialogPragma extends JDialogBase implements ActionListener { } + @Override public void actionPerformed(ActionEvent evt) { String command = evt.getActionCommand(); @@ -404,7 +405,6 @@ public class JDialogPragma extends JDialogBase implements ActionListener { } else if (command.equals("Ok")) { close(); } - } public void cancel() { @@ -427,6 +427,4 @@ public class JDialogPragma extends JDialogBase implements ActionListener { public String getText() { return text; } - - } diff --git a/src/main/java/ui/window/JDialogSafetyPragma.java b/src/main/java/ui/window/JDialogSafetyPragma.java index bb9afff2feab0b752bc4d380de69189fd2a11c59..6bb6c760e31f1101c3d23fd23b87893a7ced55ce 100644 --- a/src/main/java/ui/window/JDialogSafetyPragma.java +++ b/src/main/java/ui/window/JDialogSafetyPragma.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.window; import ui.util.IconManager; @@ -78,7 +77,7 @@ public class JDialogSafetyPragma extends JDialogBase implements ActionListener { protected JMenuBar menuBar; protected JMenu help; protected JPopupMenu helpPopup; - public Map<String, List<String>> blockAttributeMap = new HashMap<String, java.util.List<String>>(); + public Map<String, List<String>> blockAttributeMap = new HashMap<String, List<String>>(); /** * Creates new form diff --git a/src/main/java/ui/window/JDialogSelectAvatarBlock.java b/src/main/java/ui/window/JDialogSelectAvatarBlock.java index 2e7eef13485cbf7dee3e1c62166211538fd7c9d7..6881282a33243cf095d191822a6b705956217b8a 100644 --- a/src/main/java/ui/window/JDialogSelectAvatarBlock.java +++ b/src/main/java/ui/window/JDialogSelectAvatarBlock.java @@ -36,7 +36,6 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.window; import ui.avatarbd.AvatarBDStateMachineOwner; @@ -69,7 +68,8 @@ import java.util.List; * @version 1.0 18/05/2010 */ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListener, ListSelectionListener { - public List<AvatarBDStateMachineOwner> validated, ignored; + + public List<AvatarBDStateMachineOwner> validated, ignored; private boolean optimized = true; private List<AvatarBDStateMachineOwner> val, ign, back; @@ -282,8 +282,6 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe return; } - - // Compare the action command to the known actions. switch (command) { case "addOneIgnored": @@ -301,7 +299,6 @@ public class JDialogSelectAvatarBlock extends JDialogBase implements ActionListe } } - private void addOneIgnored() { for (AvatarBDStateMachineOwner o : this.listValidated.getSelectedValuesList()) { ign.add(o); diff --git a/src/main/java/ui/window/TabInfo.java b/src/main/java/ui/window/TabInfo.java index e2cfa09b8bbe1bcdc73615efda9cd0850608645c..c2f65e93c7425a0e8661ec01527c2ff89b97d030 100644 --- a/src/main/java/ui/window/TabInfo.java +++ b/src/main/java/ui/window/TabInfo.java @@ -36,15 +36,9 @@ * knowledge of the CeCILL license and that you accept its terms. */ - package ui.window; -import javax.swing.*; -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.util.ArrayList; -import java.util.HashMap; +import java.util.List; /** * Class TabInfo @@ -59,7 +53,7 @@ public class TabInfo { public String identifier; public String[] labels; public String[] values; - public ArrayList<String[]> help; + public List<String[]> help; public TabInfo(String _identifier) { identifier = _identifier; diff --git a/ttool/launch_configurations/test/TestAvatarADComponentsDisabling.launch b/ttool/launch_configurations/test/TestAvatarADComponentsDisabling.launch new file mode 100644 index 0000000000000000000000000000000000000000..a8b6b650fa26aec1f71de85314f81d202f2de616 --- /dev/null +++ b/ttool/launch_configurations/test/TestAvatarADComponentsDisabling.launch @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/ttool/src/test/java/ui/avatarad/TestAvatarADComponentsDisabling.java"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="1"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.avatarad.TestAvatarADComponentsDisabling"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea"/> +</launchConfiguration> diff --git a/ttool/launch_configurations/test/TestAvatarDesignPanelTranslator.launch b/ttool/launch_configurations/test/TestAvatarDesignPanelTranslator.launch new file mode 100644 index 0000000000000000000000000000000000000000..c5f4c28dcadbf986ddc9bdbbf95c13a06ea9ef27 --- /dev/null +++ b/ttool/launch_configurations/test/TestAvatarDesignPanelTranslator.launch @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/ttool/src/test/java/ui/TestAvatarDesignPanelTranslator.java"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="1"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.TestAvatarDesignPanelTranslator"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dresources_dir="src/test/resources/""/> +</launchConfiguration> diff --git a/ttool/launch_configurations/test/TestAvatarSMDComponentsDisabling.launch b/ttool/launch_configurations/test/TestAvatarSMDComponentsDisabling.launch new file mode 100644 index 0000000000000000000000000000000000000000..05a1e746555eb72d8bd721491abc6479d83ebd53 --- /dev/null +++ b/ttool/launch_configurations/test/TestAvatarSMDComponentsDisabling.launch @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/ttool/src/test/java/ui/avatarsmd/TestAvatarSMDComponentsDisabling.java"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="1"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.avatarsmd.TestAvatarSMDComponentsDisabling"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea"/> +</launchConfiguration> diff --git a/ttool/launch_configurations/test/TestGTMLModeling.launch b/ttool/launch_configurations/test/TestGTMLModeling.launch new file mode 100644 index 0000000000000000000000000000000000000000..b6904cd2013430aac80890ddcb9134870f43afae --- /dev/null +++ b/ttool/launch_configurations/test/TestGTMLModeling.launch @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/ttool/src/test/java/ui/TestGTMLModeling.java"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="1"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.TestGTMLModeling"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dresources_dir="src/test/resources/""/> +</launchConfiguration> diff --git a/ttool/launch_configurations/test/TestTDiagramPanel.launch b/ttool/launch_configurations/test/TestTDiagramPanel.launch index 6f00f9fc6bc7bc897dcaed3f548f715c03fd9d76..658c682e2f6940564ece29726adb335359bdd2b7 100644 --- a/ttool/launch_configurations/test/TestTDiagramPanel.launch +++ b/ttool/launch_configurations/test/TestTDiagramPanel.launch @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> -<listEntry value="/ttool/src/test/java/ui/tmldd/TestTDiagramPanel.java"/> +<listEntry value="/ttool/src/test/java/ui/TestTDiagramPanel.java"/> </listAttribute> <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> <listEntry value="1"/> @@ -10,6 +10,6 @@ <booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> <stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> <stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> -<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.tmldd.TestTDiagramPanel"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.TestTDiagramPanel"/> <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/> </launchConfiguration> diff --git a/ttool/launch_configurations/test/TestTMLADComponentsDisabling.launch b/ttool/launch_configurations/test/TestTMLADComponentsDisabling.launch new file mode 100644 index 0000000000000000000000000000000000000000..db2d3b773a244a71d9073cb346c999a488571d41 --- /dev/null +++ b/ttool/launch_configurations/test/TestTMLADComponentsDisabling.launch @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/ttool/src/test/java/ui/tmlad/TestTMLADComponentsDisabling.java"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="1"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.tmlad.TestTMLADComponentsDisabling"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/> +</launchConfiguration> diff --git a/ttool/launch_configurations/test/TestTMLCPComponentsDisabling.launch b/ttool/launch_configurations/test/TestTMLCPComponentsDisabling.launch new file mode 100644 index 0000000000000000000000000000000000000000..2eff4393502d39e7be70cd65da41e23d25fcb881 --- /dev/null +++ b/ttool/launch_configurations/test/TestTMLCPComponentsDisabling.launch @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/ttool/src/test/java/ui/tmlcp/TestTMLCPComponentsDisabling.java"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="1"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="ui.tmlcp.TestTMLCPComponentsDisabling"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="ttool"/> +</launchConfiguration> diff --git a/ttool/src/test/java/avatartranslator/AvatarPragmaTests.java b/ttool/src/test/java/avatartranslator/AvatarPragmaTests.java index b9b7c0e8e3d05ea225d585f9dfdb4160c31dfc2d..3e47f9cfbf079a214f74529451b26fea1e369f34 100644 --- a/ttool/src/test/java/avatartranslator/AvatarPragmaTests.java +++ b/ttool/src/test/java/avatartranslator/AvatarPragmaTests.java @@ -45,47 +45,30 @@ package avatartranslator; -import org.junit.Test; -import org.junit.*; - -import static org.junit.Assert.*; -import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; - -import java.util.LinkedList; import java.util.HashMap; import java.util.LinkedList; import java.util.List; +import java.util.Map; +import org.junit.Before; +import org.junit.Test; import ui.TAttribute; -import ui.avatarbd.AvatarBDPragma; import ui.avatarbd.AvatarBDPanel; - -import avatartranslator.ErrorAccumulator; -import avatartranslator.AvatarStateMachine; -import avatartranslator.AvatarState; -import avatartranslator.AvatarAttribute; -import avatartranslator.AvatarType; -import avatartranslator.AvatarBlock; -import avatartranslator.AvatarPragma; -import avatartranslator.AvatarPragmaSecret; -import avatartranslator.AvatarPragmaSecrecyAssumption; -import avatartranslator.AvatarPragmaInitialKnowledge; -import avatartranslator.AvatarPragmaPrivatePublicKey; -import avatartranslator.AvatarPragmaPublic; -import avatartranslator.AvatarPragmaAuthenticity; -import avatartranslator.AvatarPragmaConstant; +import ui.avatarbd.AvatarBDPragma; public class AvatarPragmaTests { List<AvatarPragma> res; ErrorAccumulator errorAcc; - HashMap<String, List<TAttribute>> typeAttributesMap = new HashMap<>(); - HashMap<String, String> nameTypeMap = new HashMap<String, String>(); - LinkedList<AvatarBlock> blocks; + Map<String, List<TAttribute>> typeAttributesMap = new HashMap<>(); + Map<String, String> nameTypeMap = new HashMap<String, String>(); + List<AvatarBlock> blocks; AvatarBDPragma bdpragma; - public AvatarPragmaTests () { + + public AvatarPragmaTests() { // } @@ -127,8 +110,8 @@ public class AvatarPragmaTests { this.nameTypeMap.put("C.m", "T1"); this.nameTypeMap.put("B.m", "T1"); this.nameTypeMap.put("C.d", "T2"); - LinkedList<TAttribute> t1s = new LinkedList<TAttribute>(); - LinkedList<TAttribute> t2s = new LinkedList<TAttribute>(); + List<TAttribute> t1s = new LinkedList<TAttribute>(); + List<TAttribute> t2s = new LinkedList<TAttribute>(); t1s.add(attr_a); t1s.add(attr_b); t2s.add(attr_c); @@ -142,9 +125,6 @@ public class AvatarPragmaTests { } //protected void test () { - - - @Test public void testBadKeywordNoPragmaCreated(){ //Test Bad keyword diff --git a/ttool/src/test/java/launcher/TestRshClient.java b/ttool/src/test/java/launcher/TestRshClient.java index 0ac94f9481f6e54f999187a416d464264e54daf2..c2ba833c4d86e73614d29acda93ad4fa92abef98 100644 --- a/ttool/src/test/java/launcher/TestRshClient.java +++ b/ttool/src/test/java/launcher/TestRshClient.java @@ -2,7 +2,6 @@ package launcher; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; import java.io.File; import java.io.StringWriter; @@ -14,9 +13,6 @@ import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; -import launcher.LauncherException; -import launcher.RshClient; -import launcher.RshServer; import myutil.FileException; import myutil.FileUtils; import test.AbstractTest; @@ -74,11 +70,11 @@ public class TestRshClient extends AbstractTest { throws Exception { SERVER_THREAD.interrupt(); } - - private void handleException( final Throwable th ) { - th.printStackTrace(); - fail( th.getLocalizedMessage() ); - } +// +// private void handleException( final Throwable th ) { +// th.printStackTrace(); +// fail( th.getLocalizedMessage() ); +// } @Test public void testStopCommand() { diff --git a/ttool/src/test/java/test/AbstractTest.java b/ttool/src/test/java/test/AbstractTest.java index 394ca6ac61e026109222e80135003b7e1e9f8e54..9d650f92d8efd3340e7c32cb18aa35259673cf1d 100644 --- a/ttool/src/test/java/test/AbstractTest.java +++ b/ttool/src/test/java/test/AbstractTest.java @@ -1,8 +1,29 @@ package test; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.File; +import java.io.IOException; + +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; + +import org.w3c.dom.Document; +import org.xml.sax.SAXException; + +import myutil.FileException; +import myutil.FileUtils; + public abstract class AbstractTest { protected static String RESOURCES_DIR = ""; + protected static String INPUT_DIR; + protected static String EXPECTED_CODE_DIR; + protected static String ACTUAL_CODE_DIR; + protected static final String TXT_EXT = ".txt"; + protected static final String XML_EXT = ".xml"; protected static String getBaseResourcesDir() { final String systemPropResDir = System.getProperty( "resources_dir" ); @@ -13,4 +34,75 @@ public abstract class AbstractTest { return systemPropResDir; } + + protected void checkResult( final String actualCode, + final String fileName ) { + try { + final String expectedCode = FileUtils.loadFile( EXPECTED_CODE_DIR + fileName + TXT_EXT ); + + if ( !expectedCode.equals( actualCode ) ) { + saveActualResults( fileName + TXT_EXT, actualCode ); + } + } + catch ( FileException ex ) { + handleException( ex ); + } + } + + protected void checkResultXml( final String actualCode, + final String fileName ) { + try { + final String expectedCode = FileUtils.loadFile( EXPECTED_CODE_DIR + fileName + XML_EXT ); + + if ( !compareXml( actualCode, expectedCode ) ) { + saveActualResults( fileName + XML_EXT, actualCode ); + } + } + catch ( ParserConfigurationException | SAXException | IOException | FileException ex ) { + handleException( ex ); + } + } + + private void saveActualResults( final String fileName, + final String actualCode ) { + final String filePath = ACTUAL_CODE_DIR + fileName; + final File fileToSave = new File( filePath ); + final File dir = fileToSave.getParentFile(); + + if (!dir.exists() ) { + dir.mkdirs(); + } + + try { + FileUtils.saveFile( filePath, actualCode ); + fail( "Differences were found between actual and expected code!!" ); + } + catch( final FileException ex ) { + handleException( ex ); + } + } + + protected boolean compareXml( final String result, + final String expected ) + throws ParserConfigurationException, SAXException, IOException { + DocumentBuilderFactory documentFactory = DocumentBuilderFactory.newInstance(); + documentFactory.setNamespaceAware( true ); + documentFactory.setCoalescing( true ); + documentFactory.setIgnoringElementContentWhitespace( true ); + documentFactory.setIgnoringComments( true ); + DocumentBuilder documentBuilder = documentFactory.newDocumentBuilder(); + + final Document doc1 = documentBuilder.parse( new ByteArrayInputStream( result.getBytes() ) ); + doc1.normalizeDocument(); + + final Document doc2 = documentBuilder.parse( new ByteArrayInputStream( expected.getBytes() ) ); + doc2.normalizeDocument(); + + return doc1.isEqualNode( doc2 ); + } + + protected void handleException( final Throwable th ) { + th.printStackTrace(); + fail( th.getLocalizedMessage() ); + } } diff --git a/ttool/src/test/java/ui/AbstractUITest.java b/ttool/src/test/java/ui/AbstractUITest.java index b650c1d961266888cdc49eaf8d7ec993e810fc30..a18e2dcf87ba97f23f0154a072a6993b7cb9d768 100644 --- a/ttool/src/test/java/ui/AbstractUITest.java +++ b/ttool/src/test/java/ui/AbstractUITest.java @@ -1,25 +1,70 @@ package ui; -import static org.junit.Assert.fail; +import java.io.File; +import java.util.Arrays; +import java.util.Collection; import myutil.PluginManager; import test.AbstractTest; public abstract class AbstractUITest extends AbstractTest { - protected final MainGUI mainGui; + protected final MainGUI mainGUI; protected AbstractUITest() { // DB: Not needed for tests (causes NPE) //IconManager.loadImg(); - mainGui = new MainGUI(false,false, false, false, false, false, false, false, false, false, true, false, false); - mainGui.build(); + mainGUI = new MainGUI(false,false, false, false, false, false, false, false, false, false, true, false, false); + mainGUI.build(); PluginManager.pluginManager = new PluginManager(); } - protected void handleException( final Throwable th ) { - th.printStackTrace(); - fail( th.getLocalizedMessage() ); + protected void openModel( final String fileName ) { + final String fullFileName = fileName + XML_EXT; + mainGUI.openProjectFromFile( new File( INPUT_DIR + fullFileName ) ); + } + + protected TMLArchiPanel findArchiPanel( final String name ) { + for ( final TMLArchiPanel panel : mainGUI.getTMLArchiDiagramPanels() ) { + if ( name.equals( mainGUI.getTitleAt( panel ) ) ) { + return panel; + } + } + + return null; } + + protected TDiagramPanel findDiagramPanel( final TDiagramPanel parentPanel, + final String diagramName ) { + for ( final TDiagramPanel subPanel : parentPanel.tp.getPanels() ) { + if ( diagramName.equals( subPanel.getName() ) ) { + return subPanel; + } + } + + return null; + } + + protected TGComponent findDiagComponent( final int compoId, + final TDiagramPanel diagPanel ) { + return findDiagComponent( compoId, diagPanel.componentList ); + } + + protected TGComponent findDiagComponent( final int compoId, + final Collection<TGComponent> components ) { + for ( final TGComponent compo : components ) { + if ( compoId == compo.getId() ) { + return compo; + } + + final TGComponent subCompo = findDiagComponent( compoId, Arrays.asList( compo.tgcomponent ) ); + + if ( subCompo != null ) { + return subCompo; + } + } + + return null; + } } diff --git a/ttool/src/test/java/ui/TestAvatarDesignPanelTranslator.java b/ttool/src/test/java/ui/TestAvatarDesignPanelTranslator.java new file mode 100644 index 0000000000000000000000000000000000000000..782b3814a9e00b7a3594f8d3d411a7d65a2934ed --- /dev/null +++ b/ttool/src/test/java/ui/TestAvatarDesignPanelTranslator.java @@ -0,0 +1,256 @@ +package ui; + +import java.io.File; + +import org.junit.BeforeClass; +import org.junit.Test; + +import avatartranslator.AvatarBlock; +import avatartranslator.AvatarConstant; +import avatartranslator.AvatarElement; +import avatartranslator.AvatarSpecification; + +public class TestAvatarDesignPanelTranslator extends AbstractUITest { + + private static final String TAB_MAIN_DESIGN = "MainDesign"; + + private static final String DIAG_WALLET = "Wallet"; + private static final String DIAG_COFFEE_MACHINE = "CoffeeMachine"; + private static final String DIAG_TEA_BUTTON = "TeaButton"; + private static final String DIAG_COFFEE_BUTTON = "CoffeeButton"; + + private static final String TAB_AVATAR_DESIGN = "AVATAR Design"; + + private static final String DIAG_PAGE_LOADER = "PageLoader"; + + private static final String TAB_DESIGN_LOSSY = "Design_lossy"; + + private static final String DIAG_ON_BOARD_COMMUNICATION = "OnBoardCommunication"; + + private static final String TAB_DESIGN = "Design"; + + private static final String DIAG_ALICE= "Alice"; + + @BeforeClass + public static void setUpBeforeClass() + throws Exception { + RESOURCES_DIR = getBaseResourcesDir() + "ui/diagram2avatar/"; + INPUT_DIR = RESOURCES_DIR + "input/"; + EXPECTED_CODE_DIR = RESOURCES_DIR + "expected/"; + ACTUAL_CODE_DIR = RESOURCES_DIR + "actual/"; + } + + public TestAvatarDesignPanelTranslator() { + super(); + } + + private AvatarSpecification translateDiagramToAvatar( final String diagramName ) + throws MalformedModelingException { + final AvatarDesignPanel panel = (AvatarDesignPanel) mainGUI.getTURTLEPanel( diagramName ); + + // Ensure the two static boolean constants are always instantiated before resetting the static ID counter + final Object dummy = AvatarConstant.TRUE; + + // Reset the ID to ensure IDs are the same as those of the expected specifications + AvatarElement.resetID(); + + final AvatarDesignPanelTranslator translator = new AvatarDesignPanelTranslator( panel ); + + final AvatarSpecification spec = translator.generateAvatarSpecification( panel.getAvatarBDPanel().getFullStateMachineOwnerList() ); + + if ( !translator.getErrors().isEmpty() ) { + throw new MalformedModelingException(); + } + + return spec; + } + + private void checkResult( final AvatarElement avatarElement, + final String fileName ) { + checkResult( avatarElement.toString(), fileName ); + } + + private void testTranslateStateMachineDiagramToAvatarDisable( final String modelName, + final String tabName, + final String blockName, + final String testName, + final int... composToDisable ) + throws MalformedModelingException { + openModel( modelName ); + + final AvatarDesignPanel panel = (AvatarDesignPanel) mainGUI.getTURTLEPanel( tabName ); + + final TDiagramPanel stateMachineDiagramPanel = findDiagramPanel( panel.getAvatarBDPanel(), blockName ); + + for ( final int compoId : composToDisable ) { + final TGComponent compoToDisable = findDiagComponent( compoId, stateMachineDiagramPanel ); + compoToDisable.setEnabled( false ); + } + + final AvatarSpecification spec = translateDiagramToAvatar( tabName ); + final AvatarBlock block = spec.getBlockWithName( blockName ); + + final String expectedSubDirName = composToDisable.length == 0 ? "" : "components_disabling"; + + final String fileNameSuffix = composToDisable.length == 0 ? "" : "_Disable_"; + + checkResult( block.getStateMachine(), expectedSubDirName + File.separatorChar + blockName + fileNameSuffix + testName ); + } + + private void testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( final String tabName, + final String blockName, + final String testName, + final int... composToDisable ) + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarDisable( "CoffeeMachine_Avatar", tabName, blockName, testName, composToDisable ); + } + + private void testTranslateStateMachineDiagramToAvatarCoffeeMachine( final String tabName, + final String blockName ) + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( tabName, blockName, "", new int[ 0 ] ); + } + + private void testTranslateStateMachineDiagramToAvatarEbookReaderDisable( final String tabName, + final String blockName, + final String testName, + final int... composToDisable ) + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarDisable( "ebook_reader_01", tabName, blockName, testName, composToDisable ); + } + + private void testTranslateStateMachineDiagramToAvatarFutureAirNavigationSystemDisable( final String tabName, + final String blockName, + final String testName, + final int... composToDisable ) + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarDisable( "FutureAirNavigationSystem", tabName, blockName, testName, composToDisable ); + } + + private void testTranslateStateMachineDiagramToAvatarExampleFunctionCall( final String tabName, + final String blockName, + final String testName, + final int... composToDisable ) + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarDisable( "exampleFunctionCall", tabName, blockName, testName, composToDisable ); + } + + // Translation from diagram to Avatar + @Test + public void testTranslateStateMachineDiagramToAvatarCoffeeMachineWallet() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachine( TAB_MAIN_DESIGN, DIAG_WALLET ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarCoffeeMachineCoffeeMachine() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachine( TAB_MAIN_DESIGN, DIAG_COFFEE_MACHINE ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarCoffeeMachineTeaButton() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachine( TAB_MAIN_DESIGN, DIAG_TEA_BUTTON ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarCoffeeMachineCoffeeButton() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachine( TAB_MAIN_DESIGN, DIAG_COFFEE_BUTTON ); + } + + // Components disabling tests + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableExpireTimer() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarFutureAirNavigationSystemDisable( TAB_DESIGN_LOSSY, DIAG_ON_BOARD_COMMUNICATION, "ExpireTimer", 3802 ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableLibraryFunctionCall() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarExampleFunctionCall( TAB_DESIGN, DIAG_ALICE, "LibraryFunctionCall", 218 ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableRandom() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarEbookReaderDisable( TAB_AVATAR_DESIGN, DIAG_PAGE_LOADER, "Random", 794 ); + } + + @Test + public void testTranslateToAvatarCoffeeMachineDisableReceiveSignal() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "ReceiveSignal", 820 ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableResetTimer() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarFutureAirNavigationSystemDisable( TAB_DESIGN_LOSSY, DIAG_ON_BOARD_COMMUNICATION, "ResetTimer", 3780 ); + } + + @Test + public void testTranslateToAvatarCoffeeMachineDisableSendSignal() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "SendSignal", 809 ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableSetTimer() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarFutureAirNavigationSystemDisable( TAB_DESIGN_LOSSY, DIAG_ON_BOARD_COMMUNICATION, "SetTimer", 3791 ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableState() + throws MalformedModelingException { + + // Testing disabling of states with the same name + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "State", 943 ); + + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "State", 902 ); + + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "State", 861 ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableCompositeState() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_COFFEE_MACHINE, "CompositeState", 1407 ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableTransitionInfoGuard() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "TransitionInfoGuard", 789 ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableTransitionInfoAfterActions() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_WALLET, "TransitionInfoAfterActions", 782 ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableTransitionInfoComputeFor() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_COFFEE_MACHINE, "TransitionInfoComputeFor", 985 ); + } + + // Tests for disabling several elements + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableCompoInOutTransitions() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_COFFEE_MACHINE, "CompoInOutTransitions", new int[]{ 1366, 964, 957 } ); + } + + @Test + public void testTranslateStateMachineDiagramToAvatarDisableComponentBranch() + throws MalformedModelingException { + testTranslateStateMachineDiagramToAvatarCoffeeMachineDisable( TAB_MAIN_DESIGN, DIAG_COFFEE_MACHINE, "ComponentBranch", new int[]{ 1072, 1124, 1165, 1061 } ); + } +} diff --git a/ttool/src/test/java/ui/TestGTMLModeling.java b/ttool/src/test/java/ui/TestGTMLModeling.java new file mode 100644 index 0000000000000000000000000000000000000000..523cc1817f886857761813d965ddf0e1e7eb7566 --- /dev/null +++ b/ttool/src/test/java/ui/TestGTMLModeling.java @@ -0,0 +1,257 @@ +package ui; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import org.junit.BeforeClass; +import org.junit.Test; + +import tmltranslator.TMLMapping; +import tmltranslator.TMLModeling; +import tmltranslator.TMLTask; + +public class TestGTMLModeling extends AbstractUITest { + + private static final String MODEL_ZIGBEE_TUTORIAL = "ZigBeeTutorial"; + private static final String DIAG_ZIGBEE_TX = "Zigbee_TX"; + private static final String DIAG_F_SOURCE = "F_Source"; + private static final String DIAG_X_SOURCE = "X_Source"; + + @BeforeClass + public static void setUpBeforeClass() throws Exception { + RESOURCES_DIR = getBaseResourcesDir() + "ui/diagram2tml/"; + INPUT_DIR = RESOURCES_DIR + "input/"; + EXPECTED_CODE_DIR = RESOURCES_DIR + "expected/"; + ACTUAL_CODE_DIR = RESOURCES_DIR + "actual/"; + } + + public TestGTMLModeling() { + super(); + } + + private TMLModeling<TGComponent> translateToTMLModeling( final String tabName ) + throws MalformedTMLDesignException { + final TMLComponentDesignPanel panel = (TMLComponentDesignPanel) mainGUI.getTURTLEPanel( tabName ); + final GTMLModeling gtmlm = new GTMLModeling( panel, true ); + gtmlm.putPrefixName( true ); + + final TMLModeling<TGComponent> model = gtmlm.translateToTMLModeling( false ); + + if ( !gtmlm.getCheckingErrors().isEmpty() ) { + throw new MalformedTMLDesignException( "Errors were found when generating TML model.", gtmlm.getCheckingErrors() ); + } + + return model; + } + + private String translateToTMLModelingXMLZigBeeTutorial( final String diagramName ) + throws MalformedTMLDesignException { + openModel( MODEL_ZIGBEE_TUTORIAL ); + + return translateToTMLModeling( diagramName ).toXML(); + } + + private TMLMapping<TGComponent> translateToTMLMapping( final String diagramName ) + throws MalformedTMLDesignException { + final TMLArchiPanel panel = findArchiPanel( diagramName ); + final GTMLModeling gtmlm = new GTMLModeling( panel, true); + gtmlm.putPrefixName( true ); + + final TMLMapping<TGComponent> model = gtmlm.translateToTMLMapping(); + + if ( !gtmlm.getCheckingErrors().isEmpty() ) { + throw new MalformedTMLDesignException( "Errors were found when generating TML model.", gtmlm.getCheckingErrors() ); + } + + return model; + } + + private String translateToTMLMappingXMLZigBeeTutorial( final String diagramName ) + throws MalformedTMLDesignException { + openModel( MODEL_ZIGBEE_TUTORIAL ); + + return translateToTMLMapping( diagramName ).toXML(); + } + + @Test + public void testTranslateToTMLModelingZigbeeTX() + throws MalformedTMLDesignException { + final String actualCode = translateToTMLModelingXMLZigBeeTutorial( DIAG_ZIGBEE_TX ); + + checkResultXml( actualCode, DIAG_ZIGBEE_TX ); + } + + @Test + public void testTranslateToTMLMappingMapping0() + throws MalformedTMLDesignException { + final String diagramName = "Mapping_0"; + final String actualCode = translateToTMLMappingXMLZigBeeTutorial( diagramName ); + + checkResultXml( actualCode, diagramName ); + } + + protected void testTranslateToTMLModelingDisable( final String modelName, + final String tabName, + final String taskName, + final String testName, + final int... compoIds ) + throws MalformedTMLDesignException { + openModel( modelName ); + + final TURTLEPanel panel = mainGUI.getTURTLEPanel( tabName ); + final TDiagramPanel parentPanel = panel.tdp; + + final TDiagramPanel activityDiagramPanel = findDiagramPanel( parentPanel, taskName ); + + for ( final int compoId : compoIds ) { + final TGComponent compoToDisable = findDiagComponent( compoId, activityDiagramPanel ); + compoToDisable.setEnabled( false ); + } + + final TMLModeling<TGComponent> tmlModel = translateToTMLModeling( tabName ); + final String prefixedTaskName = tabName + "__" + taskName; + final TMLTask task = tmlModel.getTMLTaskByName( prefixedTaskName ); + + checkResultXml( task.getActivityDiagram().toXML(), "components_disabling/" + taskName + "_Disable_" + testName ); + } + + protected void testTranslateToTMLModelingDisableZigBeeTutorial( final String taskName, + final String testName, + final int... compoIds ) + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisable( MODEL_ZIGBEE_TUTORIAL, DIAG_ZIGBEE_TX, taskName, testName, compoIds ); + } + + protected void testTranslateToTMLModelingDisableSmartCardProtocol( final String taskName, + final String testName, + final int... compoIds ) + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisable( "SmartCardProtocol", "AppC", taskName, testName, compoIds ); + } + + // Tests for disabling every element type + + @Test + public void testTranslateToTMLModelingDisableActionState() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "ActionState", 925 ); + } + + @Test + public void testTranslateToTMLModelingDisableSendRequest() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "SendRequest", 922 ); + } + + @Test + public void testTranslateToTMLModelingSendEvent() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "SendEvent", 919 ); + } + + @Test + public void testTranslateToTMLModelingDisableExecC() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( "X_Chip2Octet", "ExecC", 1009 ); + } + + @Test + public void testTranslateToTMLModelingDisableExecI() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_X_SOURCE, "ExecI", 935 ); + } + + @Test + public void testTranslateToTMLModelingDisableReadRequestArg() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_X_SOURCE, "ReadRequestArg", 943 ); + } + + @Test + public void testTranslateToTMLModelingDisableWriteChannel() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_X_SOURCE, "WriteChannel", 940 ); + } + + @Test + public void testTranslateToTMLModelingDisableWaitEvent() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( "F_Symbol2ChipSeq", "WaitEvent", 952 ); + } + + @Test + public void testTranslateToTMLModelingDisableReadChannel() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( "X_Symbol2ChipSeq", "ReadChannel", 973 ); + } + + @Test + public void testTranslateToTMLModelingDisableActionStateSendRequest() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "ActionStateSendRequest", new int[]{ 925, 922 } ); + } + + @Test + public void testTranslateToTMLModelingDisableForLoop() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableSmartCardProtocol( "InterfaceDevice", "ForLoop", 302 ); + } + + @Test + public void testTranslateToTMLModelingDisableForLoopAfterStart() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableSmartCardProtocol( "TCPIP", "ForLoopAfterStart", 610 ); + } + + @Test + public void testTranslateToTMLModelingDisableChoiceLeft() { + try { + testTranslateToTMLModelingDisableSmartCardProtocol( "InterfaceDevice", "ChoiceLeft", 236 ); + } + catch ( final MalformedTMLDesignException ex ) { + assertTrue( "TML modeling translation did not generate the expected '" + UICheckingError.MESSAGE_CHOICE_BOTH_STOCHASTIC_DETERMINISTIC + "' error!", ex.getErrors().size() == 1 ); + + assertEquals( UICheckingError.MESSAGE_CHOICE_BOTH_STOCHASTIC_DETERMINISTIC, ex.getErrors().get( 0 ).toString() ); + } + } + + @Test + public void testTranslateToTMLModelingDisableChoiceLeftBottom() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableSmartCardProtocol( "TCPIP", "ChoiceLeftBottom", new int[]{ 564, 566 } ); + } + + @Test + public void testTranslateToTMLModelingDisableChoiceLeftBottomRight() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableSmartCardProtocol( "TCPIP", "ChoiceLeftBottomRight", new int[]{ 572, 573, 574 } ); + } + + // Tests for disabling connectors + + @Test + public void testTranslateToTMLModelingDisableConnector() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableSmartCardProtocol( "InterfaceDevice", "ConnectorChoice", 319 ); + } + + // Tests for disabling several elements + + @Test + public void testTranslateToTMLModelingDisableActionStateSendEvent() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "ActionStateSendEvent", new int[]{ 925, 919 } ); + } + + @Test + public void testTranslateToTMLModelingDisableSendRequestSendEvent() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "SendRequestSendEvent", new int[]{ 922, 919 } ); + } + + @Test + public void testTranslateToTMLModelingDisableActionStateSendRequestSendEvent() + throws MalformedTMLDesignException { + testTranslateToTMLModelingDisableZigBeeTutorial( DIAG_F_SOURCE, "ActionStateSendRequestSendEvent", new int[]{ 925, 922, 919 } ); + } +} diff --git a/ttool/src/test/java/ui/TestGTURTLEModeling.java b/ttool/src/test/java/ui/TestGTURTLEModeling.java index 47814a365f8af99213762259dcab72d11aa8dd2d..1b2c2d8b0450c46b6dfdbc6359cc6de16f724b0e 100644 --- a/ttool/src/test/java/ui/TestGTURTLEModeling.java +++ b/ttool/src/test/java/ui/TestGTURTLEModeling.java @@ -17,7 +17,6 @@ import myutil.FileUtils; public class TestGTURTLEModeling extends AbstractUITest { - //private static final String RESOURCES_DIR = "resources/ui/generateccode/"; private String[] codeGenOptions = { "", "-mas" }; @BeforeClass @@ -30,17 +29,17 @@ public class TestGTURTLEModeling extends AbstractUITest { public TestGTURTLEModeling() { super(); - mainGui.openProjectFromFile( new File( RESOURCES_DIR + "models/ZigBeeTutorial.xml") ); + mainGUI.openProjectFromFile( new File( RESOURCES_DIR + "input/ZigBeeTutorial.xml") ); // FIXME: Temporarily ignoring the debug text file due to bug in comparator tool textComparator = new TextComparator( Collections.singletonList( "txt" ) ); } private void testGenerateCCode( final String mappingDiagName ) { - final TMLArchiPanel panel = findPanel( mappingDiagName ); + final TMLArchiPanel panel = findArchiPanel( mappingDiagName ); final Vector<TGComponent> compos = new Vector<TGComponent>( panel.tmlap.getComponentList() ); - assertTrue( mainGui.gtm.checkSyntaxTMLMapping( compos, panel, true ) ); + assertTrue( mainGUI.gtm.checkSyntaxTMLMapping( compos, panel, true ) ); final String codeDir = RESOURCES_DIR + mappingDiagName + File.separator + "actual" + File.separator; FileUtils.deleteFiles( codeDir ); @@ -48,7 +47,7 @@ public class TestGTURTLEModeling extends AbstractUITest { final String codeDirExpected = RESOURCES_DIR + mappingDiagName + File.separator + "expected" + File.separator; for( String compilerOption: codeGenOptions ) { - mainGui.gtm.generateCCode( codeDir, compilerOption ); + mainGUI.gtm.generateCCode( codeDir, compilerOption ); /*try { Thread.sleep(5000); } catch (Exception ignored) { @@ -71,16 +70,6 @@ public class TestGTURTLEModeling extends AbstractUITest { } } - private TMLArchiPanel findPanel( final String name ) { - for ( final TMLArchiPanel panel : mainGui.getTMLArchiDiagramPanels() ) { - if ( name.equals( mainGui.getTitleAt( panel ) ) ) { - return panel; - } - } - - return null; - } - @Test public void testGenerateCCodeMapping0() { testGenerateCCode( "Mapping_0" ); diff --git a/ttool/src/test/java/ui/TestTDiagramPanel.java b/ttool/src/test/java/ui/TestTDiagramPanel.java new file mode 100644 index 0000000000000000000000000000000000000000..3e30042828645589fd07b831930313ba3d2b2d2c --- /dev/null +++ b/ttool/src/test/java/ui/TestTDiagramPanel.java @@ -0,0 +1,66 @@ +package ui; + +import static org.junit.Assert.assertTrue; + +import org.junit.Before; +import org.junit.Test; + +import ui.tmldd.TMLArchiBUSNode; +import ui.tmldd.TMLArchiDiagramPanel; +import ui.tmldd.TMLArchiDiagramToolBar; + +public class TestTDiagramPanel extends AbstractUITest { + static TDiagramPanel diagramPanel; + static TGCWithInternalComponent component; + + public TestTDiagramPanel() { + super(); + } + + @Before + public void setUp() throws Exception { +// mgui = new MainGUI(false, false, false, false, false, false, false, false, false, false, false, true); +// mgui.build(); + //PluginManager.pluginManager = new PluginManager(); + final TToolBar toolBar = new TMLArchiDiagramToolBar( mainGUI ); + diagramPanel = new TMLArchiDiagramPanel( mainGUI, toolBar ); + component = new TMLArchiBUSNode( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.setComponentPointed(null); + } + + @Test + public void testMoveUp() { + diagramPanel.upComponent(); + diagramPanel.setComponentPointed(component); + diagramPanel.upComponent(); + assertTrue(component.getY() == 499); + assertTrue(component.getX() == 500); + } + + @Test + public void testMoveDown() { + diagramPanel.downComponent(); + diagramPanel.setComponentPointed(component); + diagramPanel.downComponent(); + assertTrue(component.getY() == 501); + assertTrue(component.getX() == 500); + } + + @Test + public void testMoveRight() { + diagramPanel.rightComponent(); + diagramPanel.setComponentPointed(component); + diagramPanel.rightComponent(); + assertTrue(component.getX() == 501); + assertTrue(component.getY() == 500); + } + + @Test + public void testMoveLeft() { + diagramPanel.leftComponent(); + diagramPanel.setComponentPointed(component); + diagramPanel.leftComponent(); + assertTrue(component.getX() == 499); + assertTrue(component.getY() == 500); + } +} diff --git a/ttool/src/test/java/ui/avatarad/TestAvatarADComponentsDisabling.java b/ttool/src/test/java/ui/avatarad/TestAvatarADComponentsDisabling.java new file mode 100644 index 0000000000000000000000000000000000000000..62a6e6406178a4b03bb7eb205ba7497dbfdc1be0 --- /dev/null +++ b/ttool/src/test/java/ui/avatarad/TestAvatarADComponentsDisabling.java @@ -0,0 +1,595 @@ +package ui.avatarad; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import java.awt.Point; +import java.util.Vector; + +import org.junit.Before; +import org.junit.Test; + +import ui.AbstractUITest; +import ui.CDElement; +import ui.TGComponent; +import ui.tmldd.TMLArchiDiagramPanel; +import ui.tmldd.TMLArchiDiagramToolBar; + +public class TestAvatarADComponentsDisabling extends AbstractUITest { + + private TMLArchiDiagramPanel diagramPanel; + + public TestAvatarADComponentsDisabling() { + super(); + } + + @Before + public void setUp() { + final TMLArchiDiagramToolBar toolBar = new TMLArchiDiagramToolBar( mainGUI ); + diagramPanel = new TMLArchiDiagramPanel( mainGUI, toolBar ); + } + + @Test + public void testDisableAvatarADAcceptEventAction() { + final CDElement element = new AvatarADAcceptEventAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarADAction() { + final CDElement element = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarADActivity() { + final CDElement element = new AvatarADActivity( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarADAssociationConnector() { + final TGComponent startElement = new AvatarADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TGComponent requestElement = new AvatarADSendSignalAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestElement, requestElement.getX(), requestElement.getY(), false, true ); + + final TGComponent con1 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + requestElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent actionElement = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( actionElement, actionElement.getX(), actionElement.getY(), false, true ); + + final TGComponent con2 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestElement.getTGConnectingPointAtIndex( 1 ), + actionElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElement = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true ); + + final TGComponent con3 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + actionElement.getTGConnectingPointAtIndex( 1 ), + stopElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + assertTrue( con1.canBeDisabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( con3.canBeDisabled() ); + + con1.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( requestElement.isEnabled() ); + assertTrue( requestElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( actionElement.isEnabled() ); + assertTrue( actionElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + + con1.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestElement.isEnabled() ); + assertTrue( requestElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( actionElement.isEnabled() ); + assertTrue( actionElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + + con2.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestElement.isEnabled() ); + assertTrue( requestElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( actionElement.isEnabled() ); + assertTrue( actionElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + + con2.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestElement.isEnabled() ); + assertTrue( requestElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( actionElement.isEnabled() ); + assertTrue( actionElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + } + + @Test + public void testDisableAvatarADAssociationConnectorWithChoice() { + final TGComponent startElement = new AvatarADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TGComponent requestElement = new AvatarADSendSignalAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestElement, requestElement.getX(), requestElement.getY(), false, true ); + + final TGComponent con1 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + requestElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent actionElement = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( actionElement, actionElement.getX(), actionElement.getY(), false, true ); + + final TGComponent con2 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestElement.getTGConnectingPointAtIndex( 1 ), + actionElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElement = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true ); + + final TGComponent con3 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + actionElement.getTGConnectingPointAtIndex( 1 ), + stopElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + assertTrue( con1.canBeDisabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( con3.canBeDisabled() ); + + con1.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertTrue( con1.isEnabled() ); + assertFalse( requestElement.isEnabled() ); + assertTrue( con2.isEnabled() ); + assertFalse( actionElement.isEnabled() ); + assertTrue( con3.isEnabled() ); + assertTrue( stopElement.isEnabled() ); + + con1.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( requestElement.isEnabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( actionElement.isEnabled() ); + assertTrue( con3.isEnabled() ); + assertTrue( stopElement.isEnabled() ); + + con2.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( requestElement.isEnabled() ); + assertTrue( con2.isEnabled() ); + assertFalse( actionElement.isEnabled() ); + assertTrue( con3.isEnabled() ); + assertTrue( stopElement.isEnabled() ); + + con2.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( requestElement.isEnabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( actionElement.isEnabled() ); + assertTrue( con3.isEnabled() ); + assertTrue( stopElement.isEnabled() ); + } + + @Test + public void testDisableAvatarADChoice() { + final AvatarADChoice element = new AvatarADChoice( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + + element.setGuard( Boolean.TRUE.toString(), 0 ); + TGComponent guard = element.getInternalTGComponent( 0 ); + assertTrue( guard.canBeDisabled() ); + + guard.setEnabled( false ); + assertFalse( guard.isEnabled() ); + + guard.setEnabled( true ); + assertTrue( guard.isEnabled() ); + + element.setGuard( null, 0 ); + guard = element.getInternalTGComponent( 0 ); + assertFalse( guard.canBeDisabled() ); + + element.setGuard( "", 0 ); + guard = element.getInternalTGComponent( 0 ); + assertFalse( guard.canBeDisabled() ); + + element.setGuard( AvatarADChoice.EMPTY_GUARD_TEXT, 0 ); + guard = element.getInternalTGComponent( 0 ); + assertFalse( guard.canBeDisabled() ); + } + + @Test + public void testDisableAvatarADConnectingPoint() { + final CDElement element = new AvatarADConnectingPoint( null, 0, -5, true, false, 0.5, 0.0 ); + + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableAvatarADJunction() { + final CDElement element = new AvatarADJunction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.isEnabled() ); + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableAvatarADParallel() { + final TGComponent startElement = new AvatarADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final AvatarADParallel parallel = new AvatarADParallel( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( parallel, parallel.getX(), parallel.getY(), false, true ); + + final TGComponent con1 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + parallel.getEnterConnectingPoints().get( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent actionBranch1 = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( actionBranch1, actionBranch1.getX(),actionBranch1.getY(), false, true ); + + final TGComponent con2 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + parallel.getExitConnectingPoints().get( 0 ), + actionBranch1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElementBranch1 = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranch1, stopElementBranch1.getX(), stopElementBranch1.getY(), false, true ); + + final TGComponent con3 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + actionBranch1.getTGConnectingPointAtIndex( 1 ), + stopElementBranch1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + + final TGComponent actionBranch2 = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( actionBranch2, actionBranch2.getX(), actionBranch2.getY(), false, true ); + + final TGComponent con4 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + parallel.getExitConnectingPoints().get( 1 ), + actionBranch2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true ); + + final TGComponent stopElementBranch2 = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranch2, stopElementBranch2.getX(), stopElementBranch2.getY(), false, true ); + + final TGComponent con5 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + actionBranch2.getTGConnectingPointAtIndex( 1 ), + stopElementBranch2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true ); + + final TGComponent actionBranch3 = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( actionBranch3, actionBranch3.getX(),actionBranch3.getY(), false, true ); + + final TGComponent con6 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + parallel.getExitConnectingPoints().get( 2 ), + actionBranch3.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con6, con6.getX(), con6.getY(), false, true ); + + final TGComponent stopElementBranch3 = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranch1, stopElementBranch3.getX(), stopElementBranch3.getY(), false, true ); + + final TGComponent con7 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + actionBranch3.getTGConnectingPointAtIndex( 1 ), + stopElementBranch3.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con7, con7.getX(), con7.getY(), false, true ); + + assertTrue( parallel.canBeDisabled() ); + + parallel.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertFalse( parallel.isEnabled() ); + assertTrue( parallel.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( actionBranch1.isEnabled() ); + assertTrue( actionBranch1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementBranch1.isEnabled() ); + assertFalse( stopElementBranch1.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertFalse( actionBranch2.isEnabled() ); + assertTrue( actionBranch2.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementBranch2.isEnabled() ); + assertFalse( stopElementBranch2.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + assertFalse( actionBranch3.isEnabled() ); + assertTrue( actionBranch3.canBeDisabled() ); + assertTrue( con6.isEnabled() ); + assertTrue( con6.canBeDisabled() ); + assertTrue( stopElementBranch3.isEnabled() ); + assertFalse( stopElementBranch3.canBeDisabled() ); + assertTrue( con7.isEnabled() ); + assertFalse( con7.canBeDisabled() ); + + parallel.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( parallel.isEnabled() ); + assertTrue( parallel.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( actionBranch1.isEnabled() ); + assertTrue( actionBranch1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementBranch1.isEnabled() ); + assertFalse( stopElementBranch1.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( actionBranch2.isEnabled() ); + assertTrue( actionBranch2.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementBranch2.isEnabled() ); + assertFalse( stopElementBranch2.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + assertTrue( actionBranch3.isEnabled() ); + assertTrue( actionBranch3.canBeDisabled() ); + assertTrue( con6.isEnabled() ); + assertTrue( con6.canBeDisabled() ); + assertTrue( stopElementBranch3.isEnabled() ); + assertFalse( stopElementBranch3.canBeDisabled() ); + assertTrue( con7.isEnabled() ); + assertFalse( con7.canBeDisabled() ); + } + + @Test + public void testDisableAvatarADSendSignalAction() { + final CDElement element = new AvatarADSendSignalAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarADStartState() { + final CDElement element = new AvatarADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableAvatarADStopFlow() { + final TGComponent startElement = new AvatarADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + final TGComponent action = new AvatarADAction( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( action, action.getX(), action.getY(), false, true ); + + final TGComponent con1 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + action.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent stopFlow = new AvatarADStopFlow( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopFlow, stopFlow.getX(), stopFlow.getY(), false, true ); + + final TGComponent con2 = new AvatarADAssociationConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + action.getTGConnectingPointAtIndex( 1 ), + stopFlow.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + assertFalse( stopFlow.canBeDisabled() ); + assertFalse( con2.canBeDisabled() ); + } + + @Test + public void testDisableAvatarADStopState() { + final CDElement element = new AvatarADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + } +} diff --git a/ttool/src/test/java/ui/avatarsmd/TestAvatarSMDComponentsDisabling.java b/ttool/src/test/java/ui/avatarsmd/TestAvatarSMDComponentsDisabling.java new file mode 100644 index 0000000000000000000000000000000000000000..ce50b88c248c819fa9e8e14f32d5114ef986c00f --- /dev/null +++ b/ttool/src/test/java/ui/avatarsmd/TestAvatarSMDComponentsDisabling.java @@ -0,0 +1,1104 @@ +package ui.avatarsmd; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import java.awt.Point; +import java.util.Vector; + +import org.junit.Before; +import org.junit.Test; + +import ui.AbstractUITest; +import ui.CDElement; +import ui.TGComponent; +import ui.tmldd.TMLArchiDiagramPanel; +import ui.tmldd.TMLArchiDiagramToolBar; + +public class TestAvatarSMDComponentsDisabling extends AbstractUITest { + + private TMLArchiDiagramPanel diagramPanel; + + public TestAvatarSMDComponentsDisabling() { + super(); + } + + @Before + public void setUp() { + final TMLArchiDiagramToolBar toolBar = new TMLArchiDiagramToolBar( mainGUI ); + diagramPanel = new TMLArchiDiagramPanel( mainGUI, toolBar ); + } + + @Test + public void testDisableAvatarSMDChoice() { + final AvatarSMDChoice element = new AvatarSMDChoice( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + + // TODO +// element.setGuard( Boolean.TRUE.toString(), 0 ); +// TGComponent guard = element.getInternalTGComponent( 0 ); +// assertTrue( guard.canBeDisabled() ); +// +// guard.setEnabled( false ); +// assertFalse( guard.isEnabled() ); +// +// guard.setEnabled( true ); +// assertTrue( guard.isEnabled() ); +// +// element.setGuard( null, 0 ); +// guard = element.getInternalTGComponent( 0 ); +// assertFalse( guard.canBeDisabled() ); +// +// element.setGuard( "", 0 ); +// guard = element.getInternalTGComponent( 0 ); +// assertFalse( guard.canBeDisabled() ); +// +// element.setGuard( AvatarADChoice.EMPTY_GUARD_TEXT, 0 ); +// guard = element.getInternalTGComponent( 0 ); +// assertFalse( guard.canBeDisabled() ); + } + + @Test + public void testDisableAvatarSMDConnectingPoint() { + final CDElement element = new AvatarSMDConnectingPoint( null, 0, -5, true, false, 0.5, 0.0 ); + + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableAvatarSMDConnector() { + final TGComponent startElement = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TGComponent sendSignalElement = new AvatarSMDSendSignal( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( sendSignalElement, sendSignalElement.getX(), sendSignalElement.getY(), false, true ); + + final AvatarSMDConnector con1 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + sendSignalElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent randomElement = new AvatarSMDRandom( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( randomElement, randomElement.getX(), randomElement.getY(), false, true ); + + final AvatarSMDConnector con2 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + sendSignalElement.getTGConnectingPointAtIndex( 1 ), + randomElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElement = new AvatarSMDStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true ); + + final AvatarSMDConnector con3 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + randomElement.getTGConnectingPointAtIndex( 1 ), + stopElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + assertTrue( con1.canBeDisabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( con3.canBeDisabled() ); + + con1.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( con1.getAvatarSMDTransitionInfo().isEnabled() ); + assertTrue( con1.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertFalse( sendSignalElement.isEnabled() ); + assertTrue( sendSignalElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( con2.getAvatarSMDTransitionInfo().isEnabled() ); + assertTrue( con2.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertFalse( randomElement.isEnabled() ); + assertTrue( randomElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertFalse( con3.getAvatarSMDTransitionInfo().isEnabled() ); + assertTrue( con3.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + + con1.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( sendSignalElement.isEnabled() ); + assertTrue( sendSignalElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( randomElement.isEnabled() ); + assertTrue( randomElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + + con2.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( sendSignalElement.isEnabled() ); + assertTrue( sendSignalElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( randomElement.isEnabled() ); + assertTrue( randomElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + + con2.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( sendSignalElement.isEnabled() ); + assertTrue( sendSignalElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( randomElement.isEnabled() ); + assertTrue( randomElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + } + + @Test + public void testDisableAvatarSMDExpireTimer() { + final CDElement element = new AvatarSMDExpireTimer( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarSMDLibraryFunctionCall() { + final CDElement element = new AvatarSMDLibraryFunctionCall( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarSMDRandom() { + final CDElement element = new AvatarSMDRandom( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarSMDReceiveSignal() { + final CDElement element = new AvatarSMDReceiveSignal( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarSMDResetTimer() { + final CDElement element = new AvatarSMDResetTimer( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarSMDSendSignal() { + final CDElement element = new AvatarSMDSendSignal( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarSMDSetTimer() { + final CDElement element = new AvatarSMDSetTimer( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableAvatarSMDStartState() { + final CDElement element = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableAvatarSMDState() { + final TGComponent startElement = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + final AvatarSMDState compositeState1 = new AvatarSMDState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + compositeState1.setValue( "compositeState" ); + int indexState1 = 0; + diagramPanel.addComponent( compositeState1, compositeState1.getX(), compositeState1.getY(), false, true ); + final String testName = "test"; + + final TGComponent con1 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + compositeState1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent startElementState1 = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, compositeState1, diagramPanel ); + compositeState1.addInternalComponent( startElementState1, indexState1++ ); + + final TGComponent timerState11 = new AvatarSMDResetTimer( 500, 500, 0, 1400, 0, 1900, true, compositeState1, diagramPanel ); + compositeState1.addInternalComponent( timerState11, indexState1++ ); + + final AvatarSMDConnector conState11 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElementState1.getTGConnectingPointAtIndex( 0 ), + timerState11.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + conState11.setTransitionInfo( "false", "a = b" ); + conState11.setTransitionTime( "0", "2", "0", "10" ); + diagramPanel.addComponent( conState11, conState11.getX(), conState11.getY(), false, true ); + final AvatarSMDState compositeState2 = new AvatarSMDState( 500, 500, 0, 1400, 0, 1900, true, compositeState1, diagramPanel ); + compositeState2.setValue( testName ); + int indexState2 = 0; + compositeState1.addInternalComponent( compositeState2, indexState1++ ); + + final TGComponent conState12 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + timerState11.getTGConnectingPointAtIndex( 1 ), + compositeState2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( conState12, conState12.getX(), conState12.getY(), false, true ); + + final TGComponent startElementState2 = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, compositeState2, diagramPanel ); + compositeState2.addInternalComponent( startElementState2, indexState2++ ); + final TGComponent receiveSignalState2 = new AvatarSMDReceiveSignal( 500, 500, 0, 1400, 0, 1900, true, compositeState2, diagramPanel ); + compositeState2.addInternalComponent( receiveSignalState2, indexState2++ ); + + final TGComponent conState21 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElementState2.getTGConnectingPointAtIndex( 0 ), + receiveSignalState2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( conState21, conState21.getX(), conState21.getY(), false, true ); + + final TGComponent timerState12 = new AvatarSMDResetTimer( 500, 500, 0, 1400, 0, 1900, true, compositeState1, diagramPanel ); + compositeState1.addInternalComponent( timerState12, indexState1++ ); + + final TGComponent conState13 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + receiveSignalState2.getTGConnectingPointAtIndex( 1 ), + timerState12.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( conState13, conState13.getX(), conState13.getY(), false, true ); + + final TGComponent stateTest = new AvatarSMDState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + stateTest.setValue( testName ); + diagramPanel.addComponent( stateTest, stateTest.getX(), stateTest.getY(), false, true ); + + final TGComponent conStateTest = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + timerState12.getTGConnectingPointAtIndex( 1 ), + stateTest.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( conStateTest, conStateTest.getX(), conStateTest.getY(), false, true ); + + final TGComponent receiveSignal = new AvatarSMDReceiveSignal( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + receiveSignal.setValue( testName ); + diagramPanel.addComponent( receiveSignal, receiveSignal.getX(), receiveSignal.getY(), false, true ); + + final TGComponent conReceiveSignal = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + stateTest.getTGConnectingPointAtIndex( 1 ), + receiveSignal.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( conReceiveSignal, conReceiveSignal.getX(), conReceiveSignal.getY(), false, true ); + + final TGComponent stateTest2 = new AvatarSMDState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + stateTest2.setValue( "test2" ); + diagramPanel.addComponent( stateTest2, stateTest2.getX(), stateTest2.getY(), false, true ); + + final TGComponent conStateTest2 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + receiveSignal.getTGConnectingPointAtIndex( 1 ), + stateTest2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( conStateTest2, conStateTest2.getX(), conStateTest2.getY(), false, true ); + + final TGComponent sendSignal = new AvatarSMDSendSignal( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + sendSignal.setValue( testName ); + diagramPanel.addComponent( sendSignal, sendSignal.getX(), sendSignal.getY(), false, true ); + + final TGComponent conSendSignal = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + stateTest2.getTGConnectingPointAtIndex( 1 ), + sendSignal.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( conSendSignal, conSendSignal.getX(), conSendSignal.getY(), false, true ); + + final TGComponent stateTest3 = new AvatarSMDState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + stateTest3.setValue( testName ); + diagramPanel.addComponent( stateTest3, stateTest3.getX(), stateTest3.getY(), false, true ); + + final TGComponent conStateTest3 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + sendSignal.getTGConnectingPointAtIndex( 1 ), + stateTest3.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( conStateTest3, conStateTest3.getX(), conStateTest3.getY(), false, true ); + + final TGComponent stopElement = new AvatarSMDStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true ); + + final TGComponent conStop = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + stateTest3.getTGConnectingPointAtIndex( 1 ), + stopElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( conStop, conStop.getX(), conStop.getY(), false, true ); + + assertFalse( startElement.canBeDisabled() ); + assertTrue( compositeState1.canBeDisabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( startElementState1.canBeDisabled() ); + assertTrue( timerState11.canBeDisabled() ); + assertTrue( conState11.canBeDisabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( compositeState2.canBeDisabled() ); + assertTrue( conState12.canBeDisabled() ); + assertFalse( startElementState2.canBeDisabled() ); + assertTrue( receiveSignalState2.canBeDisabled() ); + assertTrue( conState21.canBeDisabled() ); + assertTrue( timerState12.canBeDisabled() ); + assertTrue( conState13.canBeDisabled() ); + assertTrue( stateTest.canBeDisabled() ); + assertTrue( conStateTest.canBeDisabled() ); + assertTrue( receiveSignal.canBeDisabled() ); + assertTrue( conReceiveSignal.canBeDisabled() ); + assertTrue( stateTest2.canBeDisabled() ); + assertTrue( conStateTest2.canBeDisabled() ); + assertTrue( sendSignal.canBeDisabled() ); + assertTrue( conSendSignal.canBeDisabled() ); + assertTrue( stateTest3.canBeDisabled() ); + assertTrue( conStateTest3.canBeDisabled() ); + assertFalse( stopElement.canBeDisabled() ); + assertFalse( conStop.canBeDisabled() ); + + compositeState1.setEnabled( false ); + + assertFalse( startElement.canBeDisabled() ); + assertTrue( startElement.isEnabled() ); + assertTrue( compositeState1.canBeDisabled() ); + assertFalse( compositeState1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertFalse( startElementState1.canBeDisabled() ); + assertTrue( startElementState1.isEnabled() ); + assertFalse( timerState11.canBeDisabled() ); + assertFalse( timerState11.isEnabled() ); + assertFalse( conState11.canBeDisabled() ); + assertTrue( conState11.isEnabled() ); + assertFalse( conState11.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertFalse( conState11.getAvatarSMDTransitionInfo().isEnabled() ); + assertFalse( compositeState2.canBeDisabled() ); + assertFalse( compositeState2.isEnabled() ); + assertFalse( conState12.canBeDisabled() ); + assertTrue( conState12.isEnabled() ); + assertFalse( startElementState2.canBeDisabled() ); + assertTrue( startElementState2.isEnabled() ); + assertFalse( receiveSignalState2.canBeDisabled() ); + assertFalse( receiveSignalState2.isEnabled() ); + assertFalse( conState21.canBeDisabled() ); + assertTrue( conState21.isEnabled() ); + assertFalse( timerState12.canBeDisabled() ); + assertFalse( timerState12.isEnabled() ); + assertFalse( conState13.canBeDisabled() ); + assertTrue( conState13.isEnabled() ); + + assertTrue( stateTest.canBeDisabled() ); + assertTrue( stateTest.isEnabled() ); + assertFalse( conStateTest.canBeDisabled() ); + assertTrue( conStateTest.isEnabled() ); + assertTrue( receiveSignal.canBeDisabled() ); + assertTrue( receiveSignal.isEnabled() ); + assertTrue( conReceiveSignal.canBeDisabled() ); + assertTrue( conReceiveSignal.isEnabled() ); + assertTrue( stateTest2.canBeDisabled() ); + assertTrue( stateTest2.isEnabled() ); + assertTrue( conStateTest2.canBeDisabled() ); + assertTrue( conStateTest2.isEnabled() ); + assertTrue( sendSignal.canBeDisabled() ); + assertTrue( sendSignal.isEnabled() ); + assertTrue( conSendSignal.canBeDisabled() ); + assertTrue( conSendSignal.isEnabled() ); + assertTrue( stateTest3.canBeDisabled() ); + assertTrue( stateTest3.isEnabled() ); + assertTrue( conStateTest3.canBeDisabled() ); + assertTrue( conStateTest3.isEnabled() ); + + assertFalse( stopElement.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( conStop.canBeDisabled() ); + assertTrue( conStop.isEnabled() ); + + compositeState1.setEnabled( true ); + + assertFalse( startElement.canBeDisabled() ); + assertTrue( startElement.isEnabled() ); + assertTrue( compositeState1.canBeDisabled() ); + assertTrue( compositeState1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertFalse( startElementState1.canBeDisabled() ); + assertTrue( startElementState1.isEnabled() ); + assertTrue( timerState11.canBeDisabled() ); + assertTrue( timerState11.isEnabled() ); + assertTrue( conState11.canBeDisabled() ); + assertTrue( conState11.isEnabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() ); + assertTrue( compositeState2.canBeDisabled() ); + assertTrue( compositeState2.isEnabled() ); + assertTrue( conState12.canBeDisabled() ); + assertTrue( conState12.isEnabled() ); + assertFalse( startElementState2.canBeDisabled() ); + assertTrue( startElementState2.isEnabled() ); + assertTrue( receiveSignalState2.canBeDisabled() ); + assertTrue( receiveSignalState2.isEnabled() ); + assertTrue( conState21.canBeDisabled() ); + assertTrue( conState21.isEnabled() ); + assertTrue( timerState12.canBeDisabled() ); + assertTrue( timerState12.isEnabled() ); + assertTrue( conState13.canBeDisabled() ); + assertTrue( conState13.isEnabled() ); + + assertTrue( stateTest.canBeDisabled() ); + assertTrue( stateTest.isEnabled() ); + assertTrue( conStateTest.canBeDisabled() ); + assertTrue( conStateTest.isEnabled() ); + assertTrue( receiveSignal.canBeDisabled() ); + assertTrue( receiveSignal.isEnabled() ); + assertTrue( conReceiveSignal.canBeDisabled() ); + assertTrue( conReceiveSignal.isEnabled() ); + assertTrue( stateTest2.canBeDisabled() ); + assertTrue( stateTest2.isEnabled() ); + assertTrue( conStateTest2.canBeDisabled() ); + assertTrue( conStateTest2.isEnabled() ); + assertTrue( sendSignal.canBeDisabled() ); + assertTrue( sendSignal.isEnabled() ); + assertTrue( conSendSignal.canBeDisabled() ); + assertTrue( conSendSignal.isEnabled() ); + assertTrue( stateTest3.canBeDisabled() ); + assertTrue( stateTest3.isEnabled() ); + assertTrue( conStateTest3.canBeDisabled() ); + assertTrue( conStateTest3.isEnabled() ); + + assertFalse( stopElement.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( conStop.canBeDisabled() ); + assertTrue( conStop.isEnabled() ); + + compositeState2.setEnabled( false ); + + assertFalse( startElement.canBeDisabled() ); + assertTrue( startElement.isEnabled() ); + assertTrue( compositeState1.canBeDisabled() ); + assertTrue( compositeState1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertFalse( startElementState1.canBeDisabled() ); + assertTrue( startElementState1.isEnabled() ); + assertTrue( timerState11.canBeDisabled() ); + assertTrue( timerState11.isEnabled() ); + assertTrue( conState11.canBeDisabled() ); + assertTrue( conState11.isEnabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() ); + assertTrue( compositeState2.canBeDisabled() ); + assertFalse( compositeState2.isEnabled() ); + assertTrue( conState12.canBeDisabled() ); + assertTrue( conState12.isEnabled() ); + assertFalse( startElementState2.canBeDisabled() ); + assertTrue( startElementState2.isEnabled() ); + assertFalse( receiveSignalState2.canBeDisabled() ); + assertFalse( receiveSignalState2.isEnabled() ); + assertFalse( conState21.canBeDisabled() ); + assertTrue( conState21.isEnabled() ); + assertTrue( timerState12.canBeDisabled() ); + assertTrue( timerState12.isEnabled() ); + assertFalse( conState13.canBeDisabled() ); + assertTrue( conState13.isEnabled() ); + + assertTrue( stateTest.canBeDisabled() ); + assertTrue( stateTest.isEnabled() ); + assertTrue( conStateTest.canBeDisabled() ); + assertTrue( conStateTest.isEnabled() ); + assertTrue( receiveSignal.canBeDisabled() ); + assertTrue( receiveSignal.isEnabled() ); + assertTrue( conReceiveSignal.canBeDisabled() ); + assertTrue( conReceiveSignal.isEnabled() ); + assertTrue( stateTest2.canBeDisabled() ); + assertTrue( stateTest2.isEnabled() ); + assertTrue( conStateTest2.canBeDisabled() ); + assertTrue( conStateTest2.isEnabled() ); + assertTrue( sendSignal.canBeDisabled() ); + assertTrue( sendSignal.isEnabled() ); + assertTrue( conSendSignal.canBeDisabled() ); + assertTrue( conSendSignal.isEnabled() ); + assertTrue( stateTest3.canBeDisabled() ); + assertTrue( stateTest3.isEnabled() ); + assertTrue( conStateTest3.canBeDisabled() ); + assertTrue( conStateTest3.isEnabled() ); + + assertFalse( stopElement.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( conStop.canBeDisabled() ); + assertTrue( conStop.isEnabled() ); + + compositeState2.setEnabled( true ); + + assertFalse( startElement.canBeDisabled() ); + assertTrue( startElement.isEnabled() ); + assertTrue( compositeState1.canBeDisabled() ); + assertTrue( compositeState1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertFalse( startElementState1.canBeDisabled() ); + assertTrue( startElementState1.isEnabled() ); + assertTrue( timerState11.canBeDisabled() ); + assertTrue( timerState11.isEnabled() ); + assertTrue( conState11.canBeDisabled() ); + assertTrue( conState11.isEnabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() ); + assertTrue( compositeState2.canBeDisabled() ); + assertTrue( compositeState2.isEnabled() ); + assertTrue( conState12.canBeDisabled() ); + assertTrue( conState12.isEnabled() ); + assertFalse( startElementState2.canBeDisabled() ); + assertTrue( startElementState2.isEnabled() ); + assertTrue( receiveSignalState2.canBeDisabled() ); + assertTrue( receiveSignalState2.isEnabled() ); + assertTrue( conState21.canBeDisabled() ); + assertTrue( conState21.isEnabled() ); + assertTrue( timerState12.canBeDisabled() ); + assertTrue( timerState12.isEnabled() ); + assertTrue( conState13.canBeDisabled() ); + assertTrue( conState13.isEnabled() ); + + assertTrue( stateTest.canBeDisabled() ); + assertTrue( stateTest.isEnabled() ); + assertTrue( conStateTest.canBeDisabled() ); + assertTrue( conStateTest.isEnabled() ); + assertTrue( receiveSignal.canBeDisabled() ); + assertTrue( receiveSignal.isEnabled() ); + assertTrue( conReceiveSignal.canBeDisabled() ); + assertTrue( conReceiveSignal.isEnabled() ); + assertTrue( stateTest2.canBeDisabled() ); + assertTrue( stateTest2.isEnabled() ); + assertTrue( conStateTest2.canBeDisabled() ); + assertTrue( conStateTest2.isEnabled() ); + assertTrue( sendSignal.canBeDisabled() ); + assertTrue( sendSignal.isEnabled() ); + assertTrue( conSendSignal.canBeDisabled() ); + assertTrue( conSendSignal.isEnabled() ); + assertTrue( stateTest3.canBeDisabled() ); + assertTrue( stateTest3.isEnabled() ); + assertTrue( conStateTest3.canBeDisabled() ); + assertTrue( conStateTest3.isEnabled() ); + + assertFalse( stopElement.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( conStop.canBeDisabled() ); + assertTrue( conStop.isEnabled() ); + + stateTest.setEnabled( false ); + + assertFalse( startElement.canBeDisabled() ); + assertTrue( startElement.isEnabled() ); + assertTrue( compositeState1.canBeDisabled() ); + assertTrue( compositeState1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertFalse( startElementState1.canBeDisabled() ); + assertTrue( startElementState1.isEnabled() ); + assertTrue( timerState11.canBeDisabled() ); + assertTrue( timerState11.isEnabled() ); + assertTrue( conState11.canBeDisabled() ); + assertTrue( conState11.isEnabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() ); + assertTrue( compositeState2.canBeDisabled() ); + assertTrue( compositeState2.isEnabled() ); + assertTrue( conState12.canBeDisabled() ); + assertTrue( conState12.isEnabled() ); + assertFalse( startElementState2.canBeDisabled() ); + assertTrue( startElementState2.isEnabled() ); + assertTrue( receiveSignalState2.canBeDisabled() ); + assertTrue( receiveSignalState2.isEnabled() ); + assertTrue( conState21.canBeDisabled() ); + assertTrue( conState21.isEnabled() ); + assertTrue( timerState12.canBeDisabled() ); + assertTrue( timerState12.isEnabled() ); + assertTrue( conState13.canBeDisabled() ); + assertTrue( conState13.isEnabled() ); + + assertTrue( stateTest.canBeDisabled() ); + assertFalse( stateTest.isEnabled() ); + assertTrue( conStateTest.canBeDisabled() ); + assertTrue( conStateTest.isEnabled() ); + assertTrue( receiveSignal.canBeDisabled() ); + assertTrue( receiveSignal.isEnabled() ); + assertTrue( conReceiveSignal.canBeDisabled() ); + assertTrue( conReceiveSignal.isEnabled() ); + assertTrue( stateTest2.canBeDisabled() ); + assertTrue( stateTest2.isEnabled() ); + assertTrue( conStateTest2.canBeDisabled() ); + assertTrue( conStateTest2.isEnabled() ); + assertTrue( sendSignal.canBeDisabled() ); + assertTrue( sendSignal.isEnabled() ); + assertTrue( conSendSignal.canBeDisabled() ); + assertTrue( conSendSignal.isEnabled() ); + assertTrue( stateTest3.canBeDisabled() ); + assertFalse( stateTest3.isEnabled() ); + assertTrue( conStateTest3.canBeDisabled() ); + assertTrue( conStateTest3.isEnabled() ); + + assertFalse( stopElement.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( conStop.canBeDisabled() ); + assertTrue( conStop.isEnabled() ); + + stateTest.setEnabled( true ); + + assertFalse( startElement.canBeDisabled() ); + assertTrue( startElement.isEnabled() ); + assertTrue( compositeState1.canBeDisabled() ); + assertTrue( compositeState1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertFalse( startElementState1.canBeDisabled() ); + assertTrue( startElementState1.isEnabled() ); + assertTrue( timerState11.canBeDisabled() ); + assertTrue( timerState11.isEnabled() ); + assertTrue( conState11.canBeDisabled() ); + assertTrue( conState11.isEnabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() ); + assertTrue( compositeState2.canBeDisabled() ); + assertTrue( compositeState2.isEnabled() ); + assertTrue( conState12.canBeDisabled() ); + assertTrue( conState12.isEnabled() ); + assertFalse( startElementState2.canBeDisabled() ); + assertTrue( startElementState2.isEnabled() ); + assertTrue( receiveSignalState2.canBeDisabled() ); + assertTrue( receiveSignalState2.isEnabled() ); + assertTrue( conState21.canBeDisabled() ); + assertTrue( conState21.isEnabled() ); + assertTrue( timerState12.canBeDisabled() ); + assertTrue( timerState12.isEnabled() ); + assertTrue( conState13.canBeDisabled() ); + assertTrue( conState13.isEnabled() ); + + assertTrue( stateTest.canBeDisabled() ); + assertTrue( stateTest.isEnabled() ); + assertTrue( conStateTest.canBeDisabled() ); + assertTrue( conStateTest.isEnabled() ); + assertTrue( receiveSignal.canBeDisabled() ); + assertTrue( receiveSignal.isEnabled() ); + assertTrue( conReceiveSignal.canBeDisabled() ); + assertTrue( conReceiveSignal.isEnabled() ); + assertTrue( stateTest2.canBeDisabled() ); + assertTrue( stateTest2.isEnabled() ); + assertTrue( conStateTest2.canBeDisabled() ); + assertTrue( conStateTest2.isEnabled() ); + assertTrue( sendSignal.canBeDisabled() ); + assertTrue( sendSignal.isEnabled() ); + assertTrue( conSendSignal.canBeDisabled() ); + assertTrue( conSendSignal.isEnabled() ); + assertTrue( stateTest3.canBeDisabled() ); + assertTrue( stateTest3.isEnabled() ); + assertTrue( conStateTest3.canBeDisabled() ); + assertTrue( conStateTest3.isEnabled() ); + + assertFalse( stopElement.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( conStop.canBeDisabled() ); + assertTrue( conStop.isEnabled() ); + + + stateTest3.setEnabled( false ); + + assertFalse( startElement.canBeDisabled() ); + assertTrue( startElement.isEnabled() ); + assertTrue( compositeState1.canBeDisabled() ); + assertTrue( compositeState1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertFalse( startElementState1.canBeDisabled() ); + assertTrue( startElementState1.isEnabled() ); + assertTrue( timerState11.canBeDisabled() ); + assertTrue( timerState11.isEnabled() ); + assertTrue( conState11.canBeDisabled() ); + assertTrue( conState11.isEnabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() ); + assertTrue( compositeState2.canBeDisabled() ); + assertTrue( compositeState2.isEnabled() ); + assertTrue( conState12.canBeDisabled() ); + assertTrue( conState12.isEnabled() ); + assertFalse( startElementState2.canBeDisabled() ); + assertTrue( startElementState2.isEnabled() ); + assertTrue( receiveSignalState2.canBeDisabled() ); + assertTrue( receiveSignalState2.isEnabled() ); + assertTrue( conState21.canBeDisabled() ); + assertTrue( conState21.isEnabled() ); + assertTrue( timerState12.canBeDisabled() ); + assertTrue( timerState12.isEnabled() ); + assertTrue( conState13.canBeDisabled() ); + assertTrue( conState13.isEnabled() ); + + assertTrue( stateTest.canBeDisabled() ); + assertFalse( stateTest.isEnabled() ); + assertTrue( conStateTest.canBeDisabled() ); + assertTrue( conStateTest.isEnabled() ); + assertTrue( receiveSignal.canBeDisabled() ); + assertTrue( receiveSignal.isEnabled() ); + assertTrue( conReceiveSignal.canBeDisabled() ); + assertTrue( conReceiveSignal.isEnabled() ); + assertTrue( stateTest2.canBeDisabled() ); + assertTrue( stateTest2.isEnabled() ); + assertTrue( conStateTest2.canBeDisabled() ); + assertTrue( conStateTest2.isEnabled() ); + assertTrue( sendSignal.canBeDisabled() ); + assertTrue( sendSignal.isEnabled() ); + assertTrue( conSendSignal.canBeDisabled() ); + assertTrue( conSendSignal.isEnabled() ); + assertTrue( stateTest3.canBeDisabled() ); + assertFalse( stateTest3.isEnabled() ); + assertTrue( conStateTest3.canBeDisabled() ); + assertTrue( conStateTest3.isEnabled() ); + + assertFalse( stopElement.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( conStop.canBeDisabled() ); + assertTrue( conStop.isEnabled() ); + + stateTest.setEnabled( true ); + + assertFalse( startElement.canBeDisabled() ); + assertTrue( startElement.isEnabled() ); + assertTrue( compositeState1.canBeDisabled() ); + assertTrue( compositeState1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertFalse( startElementState1.canBeDisabled() ); + assertTrue( startElementState1.isEnabled() ); + assertTrue( timerState11.canBeDisabled() ); + assertTrue( timerState11.isEnabled() ); + assertTrue( conState11.canBeDisabled() ); + assertTrue( conState11.isEnabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( conState11.getAvatarSMDTransitionInfo().isEnabled() ); + assertTrue( compositeState2.canBeDisabled() ); + assertTrue( compositeState2.isEnabled() ); + assertTrue( conState12.canBeDisabled() ); + assertTrue( conState12.isEnabled() ); + assertFalse( startElementState2.canBeDisabled() ); + assertTrue( startElementState2.isEnabled() ); + assertTrue( receiveSignalState2.canBeDisabled() ); + assertTrue( receiveSignalState2.isEnabled() ); + assertTrue( conState21.canBeDisabled() ); + assertTrue( conState21.isEnabled() ); + assertTrue( timerState12.canBeDisabled() ); + assertTrue( timerState12.isEnabled() ); + assertTrue( conState13.canBeDisabled() ); + assertTrue( conState13.isEnabled() ); + + assertTrue( stateTest.canBeDisabled() ); + assertTrue( stateTest.isEnabled() ); + assertTrue( conStateTest.canBeDisabled() ); + assertTrue( conStateTest.isEnabled() ); + assertTrue( receiveSignal.canBeDisabled() ); + assertTrue( receiveSignal.isEnabled() ); + assertTrue( conReceiveSignal.canBeDisabled() ); + assertTrue( conReceiveSignal.isEnabled() ); + assertTrue( stateTest2.canBeDisabled() ); + assertTrue( stateTest2.isEnabled() ); + assertTrue( conStateTest2.canBeDisabled() ); + assertTrue( conStateTest2.isEnabled() ); + assertTrue( sendSignal.canBeDisabled() ); + assertTrue( sendSignal.isEnabled() ); + assertTrue( conSendSignal.canBeDisabled() ); + assertTrue( conSendSignal.isEnabled() ); + assertTrue( stateTest3.canBeDisabled() ); + assertTrue( stateTest3.isEnabled() ); + assertTrue( conStateTest3.canBeDisabled() ); + assertTrue( conStateTest3.isEnabled() ); + + assertFalse( stopElement.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( conStop.canBeDisabled() ); + assertTrue( conStop.isEnabled() ); + } + + @Test + public void testDisableAvatarSMDStopState() { + final TGComponent startElement = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + final TGComponent action = new AvatarSMDSetTimer( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( action, action.getX(), action.getY(), false, true ); + + final TGComponent con1 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + action.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent stopElement = new AvatarSMDStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true ); + + final TGComponent con2 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + action.getTGConnectingPointAtIndex( 1 ), + stopElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + assertFalse( stopElement.canBeDisabled() ); + assertFalse( con2.canBeDisabled() ); + } + + @Test + public void testDisableAvatarSMDTransitionInfo() { + final TGComponent startElement = new AvatarSMDStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + final TGComponent setTimer = new AvatarSMDSetTimer( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( setTimer, setTimer.getX(), setTimer.getY(), false, true ); + + final AvatarSMDConnector con1 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + setTimer.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + final String guard = "false"; + final String action = "a = b"; + con1.setTransitionInfo( guard, action ); + final String minAfter = "0"; + final String maxAfter = "2"; + final String minCompute = "1"; + final String maxCompute = "10"; + con1.setTransitionTime( minAfter, maxAfter, minCompute, maxCompute ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent stopElement = new AvatarSMDStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true ); + + final AvatarSMDConnector con2 = new AvatarSMDConnector( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + setTimer.getTGConnectingPointAtIndex( 1 ), + stopElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + assertTrue( con1.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( con2.getAvatarSMDTransitionInfo().canBeDisabled() ); + + con1.setEnabled( false ); + assertTrue( con1.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertTrue( con1.getAvatarSMDTransitionInfo().isEnabled() ); + assertEquals( guard, con1.getEffectiveGuard() ); + assertEquals( action, con1.getEffectiveActions().get( 0 ) ); + assertEquals( minAfter, con1.getEffectiveAfterMinDelay() ); + assertEquals( maxAfter, con1.getEffectiveAfterMaxDelay() ); + assertEquals( minCompute, con1.getEffectiveComputeMinDelay() ); + assertEquals( maxCompute, con1.getEffectiveComputeMaxDelay() ); + + con1.getAvatarSMDTransitionInfo().setEnabled( false ); + assertTrue( con1.getAvatarSMDTransitionInfo().canBeDisabled() ); + assertFalse( con1.getAvatarSMDTransitionInfo().isEnabled() ); + assertEquals( AvatarSMDTransitionInfo.DISABLED_GUARD_EXPR, con1.getEffectiveGuard() ); + + for ( final String expr : con1.getEffectiveActions() ) { + assertEquals( AvatarSMDTransitionInfo.DISABLED_ACTION_EXPR, expr ); + } + + assertEquals( AvatarSMDTransitionInfo.DISABLED_DELAY_EXPR, con1.getEffectiveAfterMinDelay() ); + assertEquals( AvatarSMDTransitionInfo.DISABLED_DELAY_EXPR, con1.getEffectiveAfterMaxDelay() ); + assertEquals( AvatarSMDTransitionInfo.DISABLED_DELAY_EXPR, con1.getEffectiveComputeMinDelay() ); + assertEquals( AvatarSMDTransitionInfo.DISABLED_DELAY_EXPR, con1.getEffectiveComputeMaxDelay() ); + } +} diff --git a/ttool/src/test/java/ui/tmlad/TestTMLADComponentsDisabling.java b/ttool/src/test/java/ui/tmlad/TestTMLADComponentsDisabling.java new file mode 100644 index 0000000000000000000000000000000000000000..69f7e84ff54d3690958c59ed98f0e907286cb15e --- /dev/null +++ b/ttool/src/test/java/ui/tmlad/TestTMLADComponentsDisabling.java @@ -0,0 +1,1287 @@ +package ui.tmlad; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import java.awt.Point; +import java.util.Vector; + +import org.junit.Before; +import org.junit.Test; + +import ui.AbstractUITest; +import ui.CDElement; +import ui.TGComponent; +import ui.ad.TADForLoop; +import ui.tmldd.TMLArchiDiagramPanel; +import ui.tmldd.TMLArchiDiagramToolBar; + +public class TestTMLADComponentsDisabling extends AbstractUITest { + + private TMLArchiDiagramPanel diagramPanel; + + public TestTMLADComponentsDisabling() { + super(); + } + + @Before + public void setUp() { + final TMLArchiDiagramToolBar toolBar = new TMLArchiDiagramToolBar( mainGUI ); + diagramPanel = new TMLArchiDiagramPanel( mainGUI, toolBar ); + } + + @Test + public void testDisableTGConnectingPointTMLAD() { + final CDElement element = new TGConnectingPointTMLAD( null, 0, -5, true, false, 0.5, 0.0 ); + + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableTGConnectorTMLAD() { + final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TGComponent requestElement = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestElement, requestElement.getX(), requestElement.getY(), false, true ); + + final TGComponent con1 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + requestElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent actionElement = new TMLADActionState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( actionElement, actionElement.getX(), actionElement.getY(), false, true ); + + final TGComponent con2 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestElement.getTGConnectingPointAtIndex( 1 ), + actionElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElement = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true ); + + final TGComponent con3 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + actionElement.getTGConnectingPointAtIndex( 1 ), + stopElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + assertTrue( con1.canBeDisabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( con3.canBeDisabled() ); + + con1.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( requestElement.isEnabled() ); + assertTrue( requestElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( actionElement.isEnabled() ); + assertTrue( actionElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + + con1.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestElement.isEnabled() ); + assertTrue( requestElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( actionElement.isEnabled() ); + assertTrue( actionElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + + con2.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestElement.isEnabled() ); + assertTrue( requestElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( actionElement.isEnabled() ); + assertTrue( actionElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + + con2.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestElement.isEnabled() ); + assertTrue( requestElement.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( actionElement.isEnabled() ); + assertTrue( actionElement.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + } + +// @Test +// public void testDisableTGConnectorTMLADWithChoice() { +// final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); +// diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); +// +// final TGComponent requestElement = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); +// diagramPanel.addComponent( requestElement, requestElement.getX(), requestElement.getY(), false, true ); +// +// final TGComponent con1 = new TGConnectorTMLAD( 0, +// 0, +// diagramPanel.getMinX(), +// diagramPanel.getMaxX(), +// diagramPanel.getMinY(), +// diagramPanel.getMaxY(), +// false, +// null, +// diagramPanel, +// startElement.getTGConnectingPointAtIndex( 0 ), +// requestElement.getTGConnectingPointAtIndex( 0 ), +// new Vector<Point>() ); +// diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); +// +// final TGComponent actionElement = new TMLADActionState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); +// diagramPanel.addComponent( actionElement, actionElement.getX(), actionElement.getY(), false, true ); +// +// final TGComponent con2 = new TGConnectorTMLAD( 0, +// 0, +// diagramPanel.getMinX(), +// diagramPanel.getMaxX(), +// diagramPanel.getMinY(), +// diagramPanel.getMaxY(), +// false, +// null, +// diagramPanel, +// requestElement.getTGConnectingPointAtIndex( 1 ), +// actionElement.getTGConnectingPointAtIndex( 0 ), +// new Vector<Point>() ); +// diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); +// +// final TGComponent stopElement = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); +// diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true ); +// +// final TGComponent con3 = new TGConnectorTMLAD( 0, +// 0, +// diagramPanel.getMinX(), +// diagramPanel.getMaxX(), +// diagramPanel.getMinY(), +// diagramPanel.getMaxY(), +// false, +// null, +// diagramPanel, +// actionElement.getTGConnectingPointAtIndex( 1 ), +// stopElement.getTGConnectingPointAtIndex( 0 ), +// new Vector<Point>() ); +// diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); +// +// assertTrue( con1.canBeDisabled() ); +// assertTrue( con2.canBeDisabled() ); +// assertFalse( con3.canBeDisabled() ); +// +// con1.setEnabled( false ); +// assertTrue( startElement.isEnabled() ); +// assertTrue( con1.isEnabled() ); +// assertFalse( requestElement.isEnabled() ); +// assertTrue( con2.isEnabled() ); +// assertFalse( actionElement.isEnabled() ); +// assertTrue( con3.isEnabled() ); +// assertTrue( stopElement.isEnabled() ); +// +// con1.setEnabled( true ); +// assertTrue( startElement.isEnabled() ); +// assertTrue( con1.isEnabled() ); +// assertTrue( requestElement.isEnabled() ); +// assertTrue( con2.isEnabled() ); +// assertTrue( actionElement.isEnabled() ); +// assertTrue( con3.isEnabled() ); +// assertTrue( stopElement.isEnabled() ); +// +// con2.setEnabled( false ); +// assertTrue( startElement.isEnabled() ); +// assertTrue( con1.isEnabled() ); +// assertTrue( requestElement.isEnabled() ); +// assertTrue( con2.isEnabled() ); +// assertFalse( actionElement.isEnabled() ); +// assertTrue( con3.isEnabled() ); +// assertTrue( stopElement.isEnabled() ); +// +// con2.setEnabled( true ); +// assertTrue( startElement.isEnabled() ); +// assertTrue( con1.isEnabled() ); +// assertTrue( requestElement.isEnabled() ); +// assertTrue( con2.isEnabled() ); +// assertTrue( actionElement.isEnabled() ); +// assertTrue( con3.isEnabled() ); +// assertTrue( stopElement.isEnabled() ); +// } + + @Test + public void testDisableTMLADActionState() { + final CDElement element = new TMLADActionState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADChoice() { + final TMLADChoice element = new TMLADChoice( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + + element.setGuard( Boolean.TRUE.toString(), 0 ); + TGComponent guard = element.getInternalTGComponent( 0 ); + assertTrue( guard.canBeDisabled() ); + + guard.setEnabled( false ); + assertFalse( guard.isEnabled() ); + + guard.setEnabled( true ); + assertTrue( guard.isEnabled() ); + + element.setGuard( null, 0 ); + guard = element.getInternalTGComponent( 0 ); + assertFalse( guard.canBeDisabled() ); + + element.setGuard( "", 0 ); + guard = element.getInternalTGComponent( 0 ); + assertFalse( guard.canBeDisabled() ); + + element.setGuard( TMLADChoice.EMPTY_GUARD_TEXT, 0 ); + guard = element.getInternalTGComponent( 0 ); + assertFalse( guard.canBeDisabled() ); + } + + @Test + public void testDisableTMLADDecrypt() { + final CDElement element = new TMLADDecrypt( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADDelay() { + final CDElement element = new TMLADDelay( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADDelayInterval() { + final CDElement element = new TMLADDelayInterval( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADEncrypt() { + final CDElement element = new TMLADEncrypt( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADExecC() { + final CDElement element = new TMLADExecC( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADExecCInterval() { + final CDElement element = new TMLADExecCInterval( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADExecI() { + final CDElement element = new TMLADExecI( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADExecIInterval() { + final CDElement element = new TMLADExecIInterval( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADForEverLoop() { + final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TADForLoop forLoop = new TMLADForEverLoop( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( forLoop, forLoop.getX(), forLoop.getY(), false, true ); + + final TGComponent con1 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + forLoop.getEnterLoopConnectingPoint(), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent requestInLoop = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestInLoop, requestInLoop.getX(),requestInLoop.getY(), false, true ); + + final TGComponent con2 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + forLoop.getInsideLoopConnectingPoint(), + requestInLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElementInLoop = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementInLoop, stopElementInLoop.getX(), stopElementInLoop.getY(), false, true ); + + final TGComponent con3 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestInLoop.getTGConnectingPointAtIndex( 1 ), + stopElementInLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + assertTrue( forLoop.canBeDisabled() ); + + forLoop.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertFalse( forLoop.isEnabled() ); + assertTrue( forLoop.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( requestInLoop.isEnabled() ); + assertFalse( requestInLoop.canBeDisabled() ); + assertFalse( con2.isEnabled() ); + assertFalse( con2.canBeDisabled() ); + assertFalse( stopElementInLoop.isEnabled() ); + assertFalse( stopElementInLoop.canBeDisabled() ); + assertFalse( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + + forLoop.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( forLoop.isEnabled() ); + assertTrue( forLoop.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestInLoop.isEnabled() ); + assertTrue( requestInLoop.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementInLoop.isEnabled() ); + assertFalse( stopElementInLoop.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + } + + @Test + public void testDisableTMLADForLoop() { + final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TADForLoop forLoop = new TMLADForLoop( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( forLoop, forLoop.getX(), forLoop.getY(), false, true ); + + final TGComponent con1 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + forLoop.getEnterLoopConnectingPoint(), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent requestInLoop = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestInLoop, requestInLoop.getX(),requestInLoop.getY(), false, true ); + + final TGComponent con2 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + forLoop.getInsideLoopConnectingPoint(), + requestInLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElementInLoop = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementInLoop, stopElementInLoop.getX(), stopElementInLoop.getY(), false, true ); + + final TGComponent con3 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestInLoop.getTGConnectingPointAtIndex( 1 ), + stopElementInLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + final TGComponent requestExitLoop = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestExitLoop, requestExitLoop.getX(),requestExitLoop.getY(), false, true ); + + final TGComponent con4 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + forLoop.getExitLoopConnectingPoint(), + requestExitLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true ); + + final TGComponent stopElementExitLoop = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementExitLoop, stopElementExitLoop.getX(), stopElementExitLoop.getY(), false, true ); + + final TGComponent con5 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestExitLoop.getTGConnectingPointAtIndex( 1 ), + stopElementExitLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true ); + + assertTrue( forLoop.canBeDisabled() ); + + forLoop.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertFalse( forLoop.isEnabled() ); + assertTrue( forLoop.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( requestInLoop.isEnabled() ); + assertFalse( requestInLoop.canBeDisabled() ); + assertFalse( con2.isEnabled() ); + assertFalse( con2.canBeDisabled() ); + assertFalse( stopElementInLoop.isEnabled() ); + assertFalse( stopElementInLoop.canBeDisabled() ); + assertFalse( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( requestExitLoop.isEnabled() ); + assertTrue( requestExitLoop.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementExitLoop.isEnabled() ); + assertFalse( stopElementExitLoop.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + + forLoop.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( forLoop.isEnabled() ); + assertTrue( forLoop.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestInLoop.isEnabled() ); + assertTrue( requestInLoop.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementInLoop.isEnabled() ); + assertFalse( stopElementInLoop.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( requestExitLoop.isEnabled() ); + assertTrue( requestExitLoop.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementExitLoop.isEnabled() ); + assertFalse( stopElementExitLoop.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + } + + @Test + public void testDisableTMLADForStaticLoop() { + final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TADForLoop forLoop = new TMLADForStaticLoop( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( forLoop, forLoop.getX(), forLoop.getY(), false, true ); + + final TGComponent con1 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + forLoop.getEnterLoopConnectingPoint(), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent requestInLoop = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestInLoop, requestInLoop.getX(),requestInLoop.getY(), false, true ); + + final TGComponent con2 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + forLoop.getInsideLoopConnectingPoint(), + requestInLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElementInLoop = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementInLoop, stopElementInLoop.getX(), stopElementInLoop.getY(), false, true ); + + final TGComponent con3 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestInLoop.getTGConnectingPointAtIndex( 1 ), + stopElementInLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + final TGComponent requestExitLoop = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestExitLoop, requestExitLoop.getX(),requestExitLoop.getY(), false, true ); + + final TGComponent con4 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + forLoop.getExitLoopConnectingPoint(), + requestExitLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true ); + + final TGComponent stopElementExitLoop = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementExitLoop, stopElementExitLoop.getX(), stopElementExitLoop.getY(), false, true ); + + final TGComponent con5 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestExitLoop.getTGConnectingPointAtIndex( 1 ), + stopElementExitLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true ); + + assertTrue( forLoop.canBeDisabled() ); + + forLoop.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertFalse( forLoop.isEnabled() ); + assertTrue( forLoop.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( requestInLoop.isEnabled() ); + assertFalse( requestInLoop.canBeDisabled() ); + assertFalse( con2.isEnabled() ); + assertFalse( con2.canBeDisabled() ); + assertFalse( stopElementInLoop.isEnabled() ); + assertFalse( stopElementInLoop.canBeDisabled() ); + assertFalse( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( requestExitLoop.isEnabled() ); + assertTrue( requestExitLoop.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementExitLoop.isEnabled() ); + assertFalse( stopElementExitLoop.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + + forLoop.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( forLoop.isEnabled() ); + assertTrue( forLoop.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestInLoop.isEnabled() ); + assertTrue( requestInLoop.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementInLoop.isEnabled() ); + assertFalse( stopElementInLoop.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( requestExitLoop.isEnabled() ); + assertTrue( requestExitLoop.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementExitLoop.isEnabled() ); + assertFalse( stopElementExitLoop.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + } + + @Test + public void testDisableTMLADNotifiedEvent() { + final CDElement element = new TMLADNotifiedEvent( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADRandom() { + final CDElement element = new TMLADRandom( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADReadChannel() { + final CDElement element = new TMLADReadChannel( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADReadRequestArg() { + final CDElement element = new TMLADReadRequestArg( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADSelectEvt() { + final CDElement element = new TMLADSelectEvt( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableTMLADSendEvent() { + final CDElement element = new TMLADSendEvent( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADSendRequest() { + final CDElement element = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADSequence() { + final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TMLADSequence sequence = new TMLADSequence( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( sequence, sequence.getX(), sequence.getY(), false, true ); + + final TGComponent con1 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + sequence.getEnterConnectingPoint(), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent requestBranch1 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestBranch1, requestBranch1.getX(),requestBranch1.getY(), false, true ); + + final TGComponent con2 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + sequence.getExitConnectingPoints().get( 0 ), + requestBranch1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElementBranch1 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranch1, stopElementBranch1.getX(), stopElementBranch1.getY(), false, true ); + + final TGComponent con3 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestBranch1.getTGConnectingPointAtIndex( 1 ), + stopElementBranch1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + + final TGComponent requestBranch2 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestBranch2, requestBranch2.getX(),requestBranch2.getY(), false, true ); + + final TGComponent con4 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + sequence.getExitConnectingPoints().get( 1 ), + requestBranch2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true ); + + final TGComponent stopElementBranch2 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranch2, stopElementBranch2.getX(), stopElementBranch2.getY(), false, true ); + + final TGComponent con5 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestBranch2.getTGConnectingPointAtIndex( 1 ), + stopElementBranch2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true ); + + final TGComponent requestBranch3 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestBranch3, requestBranch3.getX(),requestBranch3.getY(), false, true ); + + final TGComponent con6 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + sequence.getExitConnectingPoints().get( 2 ), + requestBranch3.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con6, con6.getX(), con6.getY(), false, true ); + + final TGComponent stopElementBranch3 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranch1, stopElementBranch3.getX(), stopElementBranch3.getY(), false, true ); + + final TGComponent con7 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestBranch3.getTGConnectingPointAtIndex( 1 ), + stopElementBranch3.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con7, con7.getX(), con7.getY(), false, true ); + + assertTrue( sequence.canBeDisabled() ); + + sequence.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertFalse( sequence.isEnabled() ); + assertTrue( sequence.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( requestBranch1.isEnabled() ); + assertTrue( requestBranch1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementBranch1.isEnabled() ); + assertFalse( stopElementBranch1.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertFalse( requestBranch2.isEnabled() ); + assertTrue( requestBranch2.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementBranch2.isEnabled() ); + assertFalse( stopElementBranch2.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + assertFalse( requestBranch3.isEnabled() ); + assertTrue( requestBranch3.canBeDisabled() ); + assertTrue( con6.isEnabled() ); + assertTrue( con6.canBeDisabled() ); + assertTrue( stopElementBranch3.isEnabled() ); + assertFalse( stopElementBranch3.canBeDisabled() ); + assertTrue( con7.isEnabled() ); + assertFalse( con7.canBeDisabled() ); + + sequence.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( sequence.isEnabled() ); + assertTrue( sequence.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestBranch1.isEnabled() ); + assertTrue( requestBranch1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementBranch1.isEnabled() ); + assertFalse( stopElementBranch1.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( requestBranch2.isEnabled() ); + assertTrue( requestBranch2.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementBranch2.isEnabled() ); + assertFalse( stopElementBranch2.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + assertTrue( requestBranch3.isEnabled() ); + assertTrue( requestBranch3.canBeDisabled() ); + assertTrue( con6.isEnabled() ); + assertTrue( con6.canBeDisabled() ); + assertTrue( stopElementBranch3.isEnabled() ); + assertFalse( stopElementBranch3.canBeDisabled() ); + assertTrue( con7.isEnabled() ); + assertFalse( con7.canBeDisabled() ); + } + + @Test + public void testDisableTMLADStartState() { + final CDElement element = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableTMLADStopState() { + final CDElement element = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableTMLADUnorderedSequence() { + final TGComponent startElement = new TMLADStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TMLADUnorderedSequence sequence = new TMLADUnorderedSequence( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( sequence, sequence.getX(), sequence.getY(), false, true ); + + final TGComponent con1 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + sequence.getEnterConnectingPoint(), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent requestBranch1 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestBranch1, requestBranch1.getX(),requestBranch1.getY(), false, true ); + + final TGComponent con2 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + sequence.getExitConnectingPoints().get( 0 ), + requestBranch1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElementBranch1 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranch1, stopElementBranch1.getX(), stopElementBranch1.getY(), false, true ); + + final TGComponent con3 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestBranch1.getTGConnectingPointAtIndex( 1 ), + stopElementBranch1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + + final TGComponent requestBranch2 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestBranch2, requestBranch2.getX(),requestBranch2.getY(), false, true ); + + final TGComponent con4 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + sequence.getExitConnectingPoints().get( 1 ), + requestBranch2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true ); + + final TGComponent stopElementBranch2 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranch2, stopElementBranch2.getX(), stopElementBranch2.getY(), false, true ); + + final TGComponent con5 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestBranch2.getTGConnectingPointAtIndex( 1 ), + stopElementBranch2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true ); + + final TGComponent requestBranch3 = new TMLADSendRequest( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( requestBranch3, requestBranch3.getX(),requestBranch3.getY(), false, true ); + + final TGComponent con6 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + sequence.getExitConnectingPoints().get( 2 ), + requestBranch3.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con6, con6.getX(), con6.getY(), false, true ); + + final TGComponent stopElementBranch3 = new TMLADStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranch1, stopElementBranch3.getX(), stopElementBranch3.getY(), false, true ); + + final TGComponent con7 = new TGConnectorTMLAD( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + requestBranch3.getTGConnectingPointAtIndex( 1 ), + stopElementBranch3.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con7, con7.getX(), con7.getY(), false, true ); + + assertTrue( sequence.canBeDisabled() ); + + sequence.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertFalse( sequence.isEnabled() ); + assertTrue( sequence.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( requestBranch1.isEnabled() ); + assertTrue( requestBranch1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementBranch1.isEnabled() ); + assertFalse( stopElementBranch1.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertFalse( requestBranch2.isEnabled() ); + assertTrue( requestBranch2.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementBranch2.isEnabled() ); + assertFalse( stopElementBranch2.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + assertFalse( requestBranch3.isEnabled() ); + assertTrue( requestBranch3.canBeDisabled() ); + assertTrue( con6.isEnabled() ); + assertTrue( con6.canBeDisabled() ); + assertTrue( stopElementBranch3.isEnabled() ); + assertFalse( stopElementBranch3.canBeDisabled() ); + assertTrue( con7.isEnabled() ); + assertFalse( con7.canBeDisabled() ); + + sequence.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( sequence.isEnabled() ); + assertTrue( sequence.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( requestBranch1.isEnabled() ); + assertTrue( requestBranch1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementBranch1.isEnabled() ); + assertFalse( stopElementBranch1.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( requestBranch2.isEnabled() ); + assertTrue( requestBranch2.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementBranch2.isEnabled() ); + assertFalse( stopElementBranch2.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + assertTrue( requestBranch3.isEnabled() ); + assertTrue( requestBranch3.canBeDisabled() ); + assertTrue( con6.isEnabled() ); + assertTrue( con6.canBeDisabled() ); + assertTrue( stopElementBranch3.isEnabled() ); + assertFalse( stopElementBranch3.canBeDisabled() ); + assertTrue( con7.isEnabled() ); + assertFalse( con7.canBeDisabled() ); + } + + @Test + public void testDisableTMLADWaitEvent() { + final CDElement element = new TMLADWaitEvent( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } + + @Test + public void testDisableTMLADWriteChannel() { + final CDElement element = new TMLADWriteChannel( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + assertFalse( element.isEnabled() ); + + element.setEnabled( true ); + assertTrue( element.isEnabled() ); + } +} diff --git a/ttool/src/test/java/ui/tmlcp/TestTMLCPComponentsDisabling.java b/ttool/src/test/java/ui/tmlcp/TestTMLCPComponentsDisabling.java new file mode 100644 index 0000000000000000000000000000000000000000..99b3aa7684450b84fd637d2e3c0c0da7cb8abc9e --- /dev/null +++ b/ttool/src/test/java/ui/tmlcp/TestTMLCPComponentsDisabling.java @@ -0,0 +1,737 @@ +package ui.tmlcp; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import java.awt.Point; +import java.util.Vector; + +import org.junit.Before; +import org.junit.Test; + +import ui.AbstractUITest; +import ui.CDElement; +import ui.TGComponent; +import ui.ad.TADForLoop; +import ui.tmldd.TMLArchiDiagramPanel; +import ui.tmldd.TMLArchiDiagramToolBar; + +public class TestTMLCPComponentsDisabling extends AbstractUITest { + + private TMLArchiDiagramPanel diagramPanel; + + public TestTMLCPComponentsDisabling() { + super(); + } + + @Before + public void setUp() { + final TMLArchiDiagramToolBar toolBar = new TMLArchiDiagramToolBar( mainGUI ); + diagramPanel = new TMLArchiDiagramPanel( mainGUI, toolBar ); + } + + @Test + public void testDisableTGConnectingPointTMLCP() { + final CDElement element = new TGConnectingPointTMLCP( null, 0, -5, true, false, 0.5, 0.0 ); + + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableTGConnectorTMLCP() { + final TGComponent startElement = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TGComponent refElement1 = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( refElement1, refElement1.getX(), refElement1.getY(), false, true ); + + final TGComponent con1 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + refElement1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent refElement2 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( refElement2, refElement2.getX(), refElement2.getY(), false, true ); + + final TGComponent con2 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + refElement1.getTGConnectingPointAtIndex( 1 ), + refElement2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElement = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElement, stopElement.getX(), stopElement.getY(), false, true ); + + final TGComponent con3 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + refElement2.getTGConnectingPointAtIndex( 1 ), + stopElement.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + assertTrue( con1.canBeDisabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( con3.canBeDisabled() ); + + con1.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( refElement1.isEnabled() ); + assertTrue( refElement1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( refElement2.isEnabled() ); + assertTrue( refElement2.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + + con1.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( refElement1.isEnabled() ); + assertTrue( refElement1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( refElement2.isEnabled() ); + assertTrue( refElement2.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + + con2.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( refElement1.isEnabled() ); + assertTrue( refElement1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertFalse( refElement2.isEnabled() ); + assertTrue( refElement2.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + + con2.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( refElement1.isEnabled() ); + assertTrue( refElement1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( refElement2.isEnabled() ); + assertTrue( refElement2.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( stopElement.isEnabled() ); + assertFalse( stopElement.canBeDisabled() ); + } + + @Test + public void testDisableTMLADChoice() { + final TMLCPChoice element = new TMLCPChoice( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + + element.setGuard( Boolean.TRUE.toString(), 0 ); + TGComponent guard = element.getInternalTGComponent( 0 ); + assertTrue( guard.canBeDisabled() ); + + guard.setEnabled( false ); + assertFalse( guard.isEnabled() ); + + guard.setEnabled( true ); + assertTrue( guard.isEnabled() ); + + element.setGuard( null, 0 ); + guard = element.getInternalTGComponent( 0 ); + assertFalse( guard.canBeDisabled() ); + + element.setGuard( "", 0 ); + guard = element.getInternalTGComponent( 0 ); + assertFalse( guard.canBeDisabled() ); + + element.setGuard( TMLCPChoice.EMPTY_GUARD_TEXT, 0 ); + guard = element.getInternalTGComponent( 0 ); + assertFalse( guard.canBeDisabled() ); + } + + @Test + public void testDisableTMLCPFork() { + final TGComponent startElement = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TMLCPFork fork = new TMLCPFork( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( fork, fork.getX(), fork.getY(), false, true ); + + final TGComponent con1 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + fork.getEnterConnectingPoint(), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent elementBranch1 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( elementBranch1, elementBranch1.getX(),elementBranch1.getY(), false, true ); + + final TGComponent con2 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + fork.getExitConnectingPoints().get( 0 ), + elementBranch1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElementBranch1 = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranch1, stopElementBranch1.getX(), stopElementBranch1.getY(), false, true ); + + final TGComponent con3 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + elementBranch1.getTGConnectingPointAtIndex( 1 ), + stopElementBranch1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + + final TGComponent elementBranch2 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( elementBranch2, elementBranch2.getX(), elementBranch2.getY(), false, true ); + + final TGComponent con4 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + fork.getExitConnectingPoints().get( 1 ), + elementBranch2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true ); + + final TMLCPJoin elementJoinBranch23 = new TMLCPJoin( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( elementJoinBranch23, elementJoinBranch23.getX(), elementJoinBranch23.getY(), false, true ); + + final TGComponent con5 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + elementBranch2.getTGConnectingPointAtIndex( 1 ), + elementJoinBranch23.getEnterConnectingPoints().get( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true ); + + final TGComponent elementBranch3 = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( elementBranch3, elementBranch3.getX(),elementBranch3.getY(), false, true ); + + final TGComponent con6 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + fork.getExitConnectingPoints().get( 2 ), + elementBranch3.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con6, con6.getX(), con6.getY(), false, true ); + + final TGComponent con7 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + elementBranch3.getTGConnectingPointAtIndex( 1 ), + elementJoinBranch23.getEnterConnectingPoints().get( 1 ), + new Vector<Point>() ); + diagramPanel.addComponent( con7, con7.getX(), con7.getY(), false, true ); + + final TGComponent stopElementJoin = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementJoin, stopElementJoin.getX(), stopElementJoin.getY(), false, true ); + + final TGComponent con8 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + elementJoinBranch23.getExitConnectingPoint(), + stopElementJoin.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con8, con8.getX(), con8.getY(), false, true ); + + assertTrue( fork.canBeDisabled() ); + + fork.setEnabled( false ); + + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertFalse( fork.isEnabled() ); + assertTrue( fork.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( elementBranch1.isEnabled() ); + assertTrue( elementBranch1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementBranch1.isEnabled() ); + assertFalse( stopElementBranch1.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertFalse( elementBranch2.isEnabled() ); + assertTrue( elementBranch2.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( elementJoinBranch23.isEnabled() ); + assertFalse( elementJoinBranch23.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertTrue( con5.canBeDisabled() ); + assertFalse( elementBranch3.isEnabled() ); + assertTrue( elementBranch3.canBeDisabled() ); + assertTrue( con6.isEnabled() ); + assertTrue( con6.canBeDisabled() ); + assertTrue( con7.isEnabled() ); + assertTrue( con7.canBeDisabled() ); + assertTrue( stopElementJoin.isEnabled() ); + assertFalse( stopElementJoin.canBeDisabled() ); + assertTrue( con8.isEnabled() ); + assertFalse( con8.canBeDisabled() ); + + fork.setEnabled( true ); + + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( fork.isEnabled() ); + assertTrue( fork.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( elementBranch1.isEnabled() ); + assertTrue( elementBranch1.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementBranch1.isEnabled() ); + assertFalse( stopElementBranch1.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( elementBranch2.isEnabled() ); + assertTrue( elementBranch2.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( elementJoinBranch23.isEnabled() ); + assertFalse( elementJoinBranch23.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertTrue( con5.canBeDisabled() ); + assertTrue( elementBranch3.isEnabled() ); + assertTrue( elementBranch3.canBeDisabled() ); + assertTrue( con6.isEnabled() ); + assertTrue( con6.canBeDisabled() ); + assertTrue( con7.isEnabled() ); + assertTrue( con7.canBeDisabled() ); + assertTrue( stopElementJoin.isEnabled() ); + assertFalse( stopElementJoin.canBeDisabled() ); + assertTrue( con8.isEnabled() ); + assertFalse( con8.canBeDisabled() ); + } + + @Test + public void testDisableTMLCPForLoop() { + final TGComponent startElement = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElement, startElement.getX(), startElement.getY(), false, true ); + + final TADForLoop forLoop = new TMLCPForLoop( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( forLoop, forLoop.getX(), forLoop.getY(), false, true ); + + final TGComponent con1 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElement.getTGConnectingPointAtIndex( 0 ), + forLoop.getEnterLoopConnectingPoint(), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TGComponent elementInLoop = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( elementInLoop, elementInLoop.getX(),elementInLoop.getY(), false, true ); + + final TGComponent con2 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + forLoop.getInsideLoopConnectingPoint(), + elementInLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent stopElementInLoop = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementInLoop, stopElementInLoop.getX(), stopElementInLoop.getY(), false, true ); + + final TGComponent con3 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + elementInLoop.getTGConnectingPointAtIndex( 1 ), + stopElementInLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + final TGComponent elementExitLoop = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( elementExitLoop, elementExitLoop.getX(),elementExitLoop.getY(), false, true ); + + final TGComponent con4 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + forLoop.getExitLoopConnectingPoint(), + elementExitLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true ); + + final TGComponent stopElementExitLoop = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementExitLoop, stopElementExitLoop.getX(), stopElementExitLoop.getY(), false, true ); + + final TGComponent con5 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + elementExitLoop.getTGConnectingPointAtIndex( 1 ), + stopElementExitLoop.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true ); + + assertTrue( forLoop.canBeDisabled() ); + + forLoop.setEnabled( false ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertFalse( forLoop.isEnabled() ); + assertTrue( forLoop.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertFalse( elementInLoop.isEnabled() ); + assertFalse( elementInLoop.canBeDisabled() ); + assertFalse( con2.isEnabled() ); + assertFalse( con2.canBeDisabled() ); + assertFalse( stopElementInLoop.isEnabled() ); + assertFalse( stopElementInLoop.canBeDisabled() ); + assertFalse( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( elementExitLoop.isEnabled() ); + assertTrue( elementExitLoop.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementExitLoop.isEnabled() ); + assertFalse( stopElementExitLoop.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + + forLoop.setEnabled( true ); + assertTrue( startElement.isEnabled() ); + assertFalse( startElement.canBeDisabled() ); + assertTrue( forLoop.isEnabled() ); + assertTrue( forLoop.canBeDisabled() ); + assertTrue( con1.isEnabled() ); + assertTrue( con1.canBeDisabled() ); + assertTrue( elementInLoop.isEnabled() ); + assertTrue( elementInLoop.canBeDisabled() ); + assertTrue( con2.isEnabled() ); + assertTrue( con2.canBeDisabled() ); + assertTrue( stopElementInLoop.isEnabled() ); + assertFalse( stopElementInLoop.canBeDisabled() ); + assertTrue( con3.isEnabled() ); + assertFalse( con3.canBeDisabled() ); + assertTrue( elementExitLoop.isEnabled() ); + assertTrue( elementExitLoop.canBeDisabled() ); + assertTrue( con4.isEnabled() ); + assertTrue( con4.canBeDisabled() ); + assertTrue( stopElementExitLoop.isEnabled() ); + assertFalse( stopElementExitLoop.canBeDisabled() ); + assertTrue( con5.isEnabled() ); + assertFalse( con5.canBeDisabled() ); + } + + @Test + public void testDisableTMLCPJoin() { + final TGComponent startElementBranch1 = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElementBranch1, startElementBranch1.getX(), startElementBranch1.getY(), false, true ); + + final TGComponent elementBranch1 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( elementBranch1, elementBranch1.getX(), elementBranch1.getY(), false, true ); + + final TGComponent con1 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElementBranch1.getTGConnectingPointAtIndex( 0 ), + elementBranch1.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con1, con1.getX(), con1.getY(), false, true ); + + final TMLCPJoin join = new TMLCPJoin( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( join, join.getX(), join.getY(), false, true ); + + final TGComponent con2 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + elementBranch1.getTGConnectingPointAtIndex( 1 ), + join.getEnterConnectingPoints().get( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con2, con2.getX(), con2.getY(), false, true ); + + final TGComponent startElementBranch2 = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElementBranch2, startElementBranch2.getX(), startElementBranch2.getY(), false, true ); + + final TGComponent elementBranch2 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( elementBranch2, elementBranch2.getX(), elementBranch2.getY(), false, true ); + + final TGComponent con3 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElementBranch2.getTGConnectingPointAtIndex( 0 ), + elementBranch2.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con3, con3.getX(), con3.getY(), false, true ); + + final TGComponent con4 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + elementBranch2.getTGConnectingPointAtIndex( 1 ), + join.getEnterConnectingPoints().get( 1 ), + new Vector<Point>() ); + diagramPanel.addComponent( con4, con4.getX(), con4.getY(), false, true ); + + final TGComponent startElementBranch3 = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( startElementBranch3, startElementBranch3.getX(), startElementBranch3.getY(), false, true ); + + final TGComponent elementBranch3 = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( elementBranch3, elementBranch3.getX(), elementBranch3.getY(), false, true ); + + final TGComponent con5 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + startElementBranch3.getTGConnectingPointAtIndex( 0 ), + elementBranch3.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con5, con5.getX(), con5.getY(), false, true ); + + final TGComponent con6 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + elementBranch3.getTGConnectingPointAtIndex( 1 ), + join.getEnterConnectingPoints().get( 2 ), + new Vector<Point>() ); + diagramPanel.addComponent( con6, con6.getX(), con6.getY(), false, true ); + + final TGComponent elementBranchExit = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( elementBranchExit, elementBranchExit.getX(),elementBranchExit.getY(), false, true ); + + final TGComponent con7 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + join.getExitConnectingPoint(), + elementBranch3.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con7, con7.getX(), con7.getY(), false, true ); + + final TGComponent stopElementBranchExit = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + diagramPanel.addComponent( stopElementBranchExit, stopElementBranchExit.getX(), stopElementBranchExit.getY(), false, true ); + + final TGComponent con8 = new TGConnectorTMLCP( 0, + 0, + diagramPanel.getMinX(), + diagramPanel.getMaxX(), + diagramPanel.getMinY(), + diagramPanel.getMaxY(), + false, + null, + diagramPanel, + elementBranch3.getTGConnectingPointAtIndex( 1 ), + stopElementBranchExit.getTGConnectingPointAtIndex( 0 ), + new Vector<Point>() ); + diagramPanel.addComponent( con8, con8.getX(), con8.getY(), false, true ); + + assertTrue( join.isEnabled() ); + assertFalse( join.canBeDisabled() ); + } + + @Test + public void testDisableTMLCPRefAD() { + final CDElement element = new TMLCPRefAD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + + assertFalse( element.isEnabled() ); + assertTrue( element.canBeDisabled() ); + + element.setEnabled( true ); + + assertTrue( element.isEnabled() ); + assertTrue( element.canBeDisabled() ); + } + + @Test + public void testDisableTMLCPRefSD() { + final CDElement element = new TMLCPRefSD( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertTrue( element.canBeDisabled() ); + + element.setEnabled( false ); + + assertFalse( element.isEnabled() ); + assertTrue( element.canBeDisabled() ); + + element.setEnabled( true ); + + assertTrue( element.isEnabled() ); + assertTrue( element.canBeDisabled() ); + } + + @Test + public void testDisableTMLCPStartState() { + final CDElement element = new TMLCPStartState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + } + + @Test + public void testDisableTMLCPStopState() { + final CDElement element = new TMLCPStopState( 500, 500, 0, 1400, 0, 1900, true, null, diagramPanel ); + + assertFalse( element.canBeDisabled() ); + } +} diff --git a/ttool/src/test/java/ui/tmldd/TestTDiagramPanel.java b/ttool/src/test/java/ui/tmldd/TestTDiagramPanel.java deleted file mode 100644 index b30d3df2da78d23ca66077a839a2740db42f8f58..0000000000000000000000000000000000000000 --- a/ttool/src/test/java/ui/tmldd/TestTDiagramPanel.java +++ /dev/null @@ -1,67 +0,0 @@ -package ui.tmldd; - -import static org.junit.Assert.assertTrue; - -import org.junit.Before; -import org.junit.Test; - -import ui.AbstractUITest; - -public class TestTDiagramPanel extends AbstractUITest { -// static MainGUI mgui; - static TMLArchiDiagramToolBar tb; - static TMLArchiDiagramPanel tdp; - static TMLArchiBUSNode tgc; - - public TestTDiagramPanel() { - super(); - } - - @Before - public void setUp() throws Exception { -// mgui = new MainGUI(false, false, false, false, false, false, false, false, false, false, false, true); -// mgui.build(); - //PluginManager.pluginManager = new PluginManager(); - tb = new TMLArchiDiagramToolBar( mainGui ); - tdp = new TMLArchiDiagramPanel( mainGui, tb); - tgc = new TMLArchiBUSNode(500, 500, 0, 1400, 0, 1900, true, null, tdp); - tdp.setComponentPointed(null); - } - - @Test - public void testMoveUp() { - tdp.upComponent(); - tdp.setComponentPointed(tgc); - tdp.upComponent(); - assertTrue(tgc.getY() == 499); - assertTrue(tgc.getX() == 500); - } - - @Test - public void testMoveDown() { - tdp.downComponent(); - tdp.setComponentPointed(tgc); - tdp.downComponent(); - assertTrue(tgc.getY() == 501); - assertTrue(tgc.getX() == 500); - } - - @Test - public void testMoveRight() { - tdp.rightComponent(); - tdp.setComponentPointed(tgc); - tdp.rightComponent(); - assertTrue(tgc.getX() == 501); - assertTrue(tgc.getY() == 500); - } - - @Test - public void testMoveLeft() { - tdp.leftComponent(); - tdp.setComponentPointed(tgc); - tdp.leftComponent(); - assertTrue(tgc.getX() == 499); - assertTrue(tgc.getY() == 500); - } - -} diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeButton.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeButton.txt new file mode 100644 index 0000000000000000000000000000000000000000..440a15456e31c53a6e0bb533fbdc5c894acff523 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeButton.txt @@ -0,0 +1,32 @@ +State machine Id=31 +start ID=117 / top level operator + nexts= 0:avatar transition/ ID=123 +main ID=118 / top level operator + nexts= 0:avatar transition/ ID=124 +state0 ID=119 / top level operator + nexts= +start ID=120 / in state state0 ID=119 + nexts= 0:avatar transition/ ID=122 +action_on_signal:push ID=121 / in state state0 ID=119 + nexts= 0:avatar transition/ ID=125 +avatar transition ID=122 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=121 +weight=1.0 + +avatar transition ID=123 / top level operator + value:Empty transition weight:1.0 + nexts= 0:main/ ID=118 +weight=1.0 + +avatar transition ID=124 / top level operator + value:Empty transition weight:1.0 + nexts= 0:state0/ ID=119 +weight=1.0 + +avatar transition ID=125 / top level operator + value:Transition (delay=(mechanicalDelay, ), ...) weight:1.0 + nexts= 0:main/ ID=118 +minDelay=mechanicalDelay maxDelay=mechanicalDelay +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeMachine.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeMachine.txt new file mode 100644 index 0000000000000000000000000000000000000000..0343a9d3830258fbb599497faf42a27c0e917a7b --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/CoffeeMachine.txt @@ -0,0 +1,106 @@ +State machine Id=15 +start ID=71 / top level operator + nexts= 0:avatar transition/ ID=116 +WaitingForFirstCoin ID=72 / top level operator + nexts= 0:avatar transition/ ID=115 +action_on_signal:getCoin ID=73 / top level operator + nexts= 0:avatar transition/ ID=109 +WaitingForSecondCoin ID=74 / top level operator + nexts= 0:avatar transition/ ID=106 1:avatar transition/ ID=108 +ejectState ID=75 / top level operator + nexts= 0:avatar transition/ ID=84 +action_on_signal:ejectCoin ID=76 / top level operator + nexts= 0:avatar transition/ ID=103 +action_on_signal:getCoin ID=77 / top level operator + nexts= 0:avatar transition/ ID=107 +Beverage ID=78 / top level operator + nexts= +start ID=79 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=102 +WaitingForSelection ID=80 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=89 1:avatar transition/ ID=95 2:avatar transition/ ID=101 +action_on_signal:ejectCoin ID=81 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=85 +action_on_signal:pushCoffeeButton ID=82 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=96 +action_on_signal:pushTeaButton ID=83 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=90 +avatar transition ID=84 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=76 +weight=1.0 + +avatar transition ID=85 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 +nbOfCoins = 0 / +avatar transition ID=89 / top level operator + value:Transition (delay=(coinDelay, ), ...) weight:1.0 + nexts= 0:action_on_signal/ ID=81 +minDelay=coinDelay maxDelay=coinDelay +weight=1.0 + +avatar transition ID=90 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +minCompute=teaMinDelay maxcompute=teaMaxDelay +weight=1.0 +nbOfCoins = 0 / beverageReady () / +avatar transition ID=95 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=83 +weight=1.0 + +avatar transition ID=96 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +minCompute=coffeeMinDelay maxcompute=coffeeMaxDelay +weight=1.0 +nbOfCoins = 0 / beverageReady () / +avatar transition ID=101 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=82 +weight=1.0 + +avatar transition ID=102 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForSelection/ ID=80 +weight=1.0 + +avatar transition ID=103 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 +nbOfCoins = 0 / +avatar transition ID=106 / top level operator + value:Transition (delay=(coinDelay, ), ...) weight:1.0 + nexts= 0:ejectState/ ID=75 +minDelay=coinDelay maxDelay=coinDelay +weight=1.0 + +avatar transition ID=107 / top level operator + value:Empty transition weight:1.0 + nexts= 0:Beverage/ ID=78 +weight=1.0 + +avatar transition ID=108 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=77 +weight=1.0 + +avatar transition ID=109 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:WaitingForSecondCoin/ ID=74 +weight=1.0 +nbOfCoins = nbOfCoins+x / +avatar transition ID=115 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=73 +weight=1.0 + +avatar transition ID=116 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/TeaButton.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/TeaButton.txt new file mode 100644 index 0000000000000000000000000000000000000000..b3b4cc674ff5961c08138c4853cdf8217b475794 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/TeaButton.txt @@ -0,0 +1,23 @@ +State machine Id=35 +start ID=126 / top level operator + nexts= 0:avatar transition/ ID=131 +main ID=127 / top level operator + nexts= 0:avatar transition/ ID=130 +action_on_signal:push ID=128 / top level operator + nexts= 0:avatar transition/ ID=129 +avatar transition ID=129 / top level operator + value:Transition (delay=(mechanicalDelay, ), ...) weight:1.0 + nexts= 0:main/ ID=127 +minDelay=mechanicalDelay maxDelay=mechanicalDelay +weight=1.0 + +avatar transition ID=130 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=128 +weight=1.0 + +avatar transition ID=131 / top level operator + value:Empty transition weight:1.0 + nexts= 0:main/ ID=127 +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/Wallet.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/Wallet.txt new file mode 100644 index 0000000000000000000000000000000000000000..71869bf80797d07a9da4bcddff5493282be9d120 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/Wallet.txt @@ -0,0 +1,35 @@ +State machine Id=3 +start ID=41 / top level operator + nexts= 0:avatar transition/ ID=67 +main ID=42 / top level operator + nexts= 0:avatar transition/ ID=54 1:avatar transition/ ID=64 +action_on_signal:putCoin ID=43 / top level operator + nexts= 0:avatar transition/ ID=55 +action_on_signal:getCoin ID=44 / top level operator + nexts= 0:avatar transition/ ID=45 +avatar transition ID=45 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 +nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / +avatar transition ID=54 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=44 +weight=1.0 + +avatar transition ID=55 / top level operator + value:Transition (delay=(minUserDelay, maxUserDelay), ...) weight:1.0 + nexts= 0:main/ ID=42 +minDelay=minUserDelay maxDelay=maxUserDelay +weight=1.0 +nbOfCoins = nbOfCoins-x / contentOfWallet (nbOfCoins) / +avatar transition ID=64 / top level operator + value:Transition (guard=nbOfCoins>0, ...) weight:1.0 + nexts= 0:action_on_signal/ ID=43 +weight=1.0 +guard nbOfCoins>0 / +avatar transition ID=67 / top level operator + value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 +contentOfWallet (nbOfCoins) / diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Alice_Disable_LibraryFunctionCall.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Alice_Disable_LibraryFunctionCall.txt new file mode 100644 index 0000000000000000000000000000000000000000..139fb02882526f707c9ffeb45921c8bbaadc36de --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Alice_Disable_LibraryFunctionCall.txt @@ -0,0 +1,17 @@ +State machine Id=22 +start ID=42 / top level operator + nexts= 0:avatar transition/ ID=45 +state0 ID=43 / top level operator + nexts= 0:avatar transition/ ID=48 +stop ID=44 / top level operator + nexts= +avatar transition ID=45 / top level operator + value:Transition (send__data = secretData, ...) weight:1.0 + nexts= 0:state0/ ID=43 +weight=1.0 +send__data = secretData / +avatar transition ID=48 / top level operator + value:Empty transition weight:1.0 + nexts= 0:stop/ ID=44 +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompoInOutTransitions.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompoInOutTransitions.txt new file mode 100644 index 0000000000000000000000000000000000000000..7f5731ab06e2a59c246c89da19e970ffbdde7e2d --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompoInOutTransitions.txt @@ -0,0 +1,98 @@ +State machine Id=15 +start ID=71 / top level operator + nexts= 0:avatar transition/ ID=112 +WaitingForFirstCoin ID=72 / top level operator + nexts= 0:avatar transition/ ID=111 +action_on_signal:getCoin ID=73 / top level operator + nexts= 0:avatar transition/ ID=105 +WaitingForSecondCoin ID=74 / top level operator + nexts= 0:avatar transition/ ID=102 1:avatar transition/ ID=104 +ejectState ID=75 / top level operator + nexts= 0:avatar transition/ ID=83 +action_on_signal:ejectCoin ID=76 / top level operator + nexts= 0:avatar transition/ ID=99 +action_on_signal:getCoin ID=77 / top level operator + nexts= 0:avatar transition/ ID=103 +Beverage ID=78 / top level operator + nexts= +start ID=79 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=98 +WaitingForSelection ID=80 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=84 1:avatar transition/ ID=91 2:avatar transition/ ID=97 +action_on_signal:pushCoffeeButton ID=81 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=92 +action_on_signal:pushTeaButton ID=82 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=85 +avatar transition ID=83 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=76 +weight=1.0 + +avatar transition ID=84 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 + +avatar transition ID=85 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +minCompute=teaMinDelay maxcompute=teaMaxDelay +weight=1.0 +nbOfCoins = 0 / beverageReady () / +avatar transition ID=91 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=82 +weight=1.0 + +avatar transition ID=92 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +minCompute=coffeeMinDelay maxcompute=coffeeMaxDelay +weight=1.0 +nbOfCoins = 0 / beverageReady () / +avatar transition ID=97 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=81 +weight=1.0 + +avatar transition ID=98 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForSelection/ ID=80 +weight=1.0 + +avatar transition ID=99 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 +nbOfCoins = 0 / +avatar transition ID=102 / top level operator + value:Transition (delay=(coinDelay, ), ...) weight:1.0 + nexts= 0:ejectState/ ID=75 +minDelay=coinDelay maxDelay=coinDelay +weight=1.0 + +avatar transition ID=103 / top level operator + value:Empty transition weight:1.0 + nexts= 0:Beverage/ ID=78 +weight=1.0 + +avatar transition ID=104 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=77 +weight=1.0 + +avatar transition ID=105 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:WaitingForSecondCoin/ ID=74 +weight=1.0 +nbOfCoins = nbOfCoins+x / +avatar transition ID=111 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=73 +weight=1.0 + +avatar transition ID=112 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_ComponentBranch.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_ComponentBranch.txt new file mode 100644 index 0000000000000000000000000000000000000000..027c26caae351a2879f48134b0c22911c35d452e --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_ComponentBranch.txt @@ -0,0 +1,92 @@ +State machine Id=15 +start ID=71 / top level operator + nexts= 0:avatar transition/ ID=112 +WaitingForFirstCoin ID=72 / top level operator + nexts= 0:avatar transition/ ID=106 +WaitingForSecondCoin_converted_to_dummy_state ID=73 / top level operator + nexts= 0:avatar transition/ ID=103 1:avatar transition/ ID=105 +action_on_signal:ejectCoin_converted_to_dummy_state ID=74 / top level operator + nexts= 0:avatar transition/ ID=100 +action_on_signal:getCoin ID=75 / top level operator + nexts= 0:avatar transition/ ID=104 +Beverage ID=76 / top level operator + nexts= +start ID=77 / in state Beverage ID=76 + nexts= 0:avatar transition/ ID=99 +WaitingForSelection ID=78 / in state Beverage ID=76 + nexts= 0:avatar transition/ ID=86 1:avatar transition/ ID=92 2:avatar transition/ ID=98 +action_on_signal:ejectCoin ID=79 / in state Beverage ID=76 + nexts= 0:avatar transition/ ID=82 +action_on_signal:pushCoffeeButton ID=80 / in state Beverage ID=76 + nexts= 0:avatar transition/ ID=93 +action_on_signal:pushTeaButton ID=81 / in state Beverage ID=76 + nexts= 0:avatar transition/ ID=87 +avatar transition ID=82 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 +nbOfCoins = 0 / +avatar transition ID=86 / top level operator + value:Transition (delay=(coinDelay, ), ...) weight:1.0 + nexts= 0:action_on_signal/ ID=79 +minDelay=coinDelay maxDelay=coinDelay +weight=1.0 + +avatar transition ID=87 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +minCompute=teaMinDelay maxcompute=teaMaxDelay +weight=1.0 +nbOfCoins = 0 / beverageReady () / +avatar transition ID=92 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=81 +weight=1.0 + +avatar transition ID=93 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +minCompute=coffeeMinDelay maxcompute=coffeeMaxDelay +weight=1.0 +nbOfCoins = 0 / beverageReady () / +avatar transition ID=98 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=80 +weight=1.0 + +avatar transition ID=99 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForSelection/ ID=78 +weight=1.0 + +avatar transition ID=100 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 +nbOfCoins = 0 / +avatar transition ID=103 / top level operator + value:Transition (delay=(coinDelay, ), ...) weight:1.0 + nexts= 0:action_on_signal:ejectCoin_converted_to_dummy_state/ ID=74 +minDelay=coinDelay maxDelay=coinDelay +weight=1.0 + +avatar transition ID=104 / top level operator + value:Empty transition weight:1.0 + nexts= 0:Beverage/ ID=76 +weight=1.0 + +avatar transition ID=105 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=75 +weight=1.0 + +avatar transition ID=106 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:WaitingForSecondCoin_converted_to_dummy_state/ ID=73 +weight=1.0 +nbOfCoins = nbOfCoins+x / +avatar transition ID=112 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompositeState.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompositeState.txt new file mode 100644 index 0000000000000000000000000000000000000000..fc34247a55fb7451821ee62a37ff9bf525307348 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_CompositeState.txt @@ -0,0 +1,56 @@ +State machine Id=15 +start ID=71 / top level operator + nexts= 0:avatar transition/ ID=93 +WaitingForFirstCoin ID=72 / top level operator + nexts= 0:avatar transition/ ID=92 +action_on_signal:getCoin ID=73 / top level operator + nexts= 0:avatar transition/ ID=86 +WaitingForSecondCoin ID=74 / top level operator + nexts= 0:avatar transition/ ID=84 1:avatar transition/ ID=85 +ejectState ID=75 / top level operator + nexts= 0:avatar transition/ ID=78 +action_on_signal:ejectCoin ID=76 / top level operator + nexts= 0:avatar transition/ ID=80 +action_on_signal:getCoin ID=77 / top level operator + nexts= 0:avatar transition/ ID=79 +avatar transition ID=78 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=76 +weight=1.0 + +avatar transition ID=79 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 + +avatar transition ID=80 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 +nbOfCoins = 0 / +avatar transition ID=84 / top level operator + value:Transition (delay=(coinDelay, ), ...) weight:1.0 + nexts= 0:ejectState/ ID=75 +minDelay=coinDelay maxDelay=coinDelay +weight=1.0 + +avatar transition ID=85 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=77 +weight=1.0 + +avatar transition ID=86 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:WaitingForSecondCoin/ ID=74 +weight=1.0 +nbOfCoins = nbOfCoins+x / +avatar transition ID=92 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=73 +weight=1.0 + +avatar transition ID=93 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_TransitionInfoComputeFor.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_TransitionInfoComputeFor.txt new file mode 100644 index 0000000000000000000000000000000000000000..4d3373cbe1e252a15a894dada437ba7c919b262a --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/CoffeeMachine_Disable_TransitionInfoComputeFor.txt @@ -0,0 +1,105 @@ +State machine Id=15 +start ID=71 / top level operator + nexts= 0:avatar transition/ ID=112 +WaitingForFirstCoin ID=72 / top level operator + nexts= 0:avatar transition/ ID=111 +action_on_signal:getCoin ID=73 / top level operator + nexts= 0:avatar transition/ ID=105 +WaitingForSecondCoin ID=74 / top level operator + nexts= 0:avatar transition/ ID=102 1:avatar transition/ ID=104 +ejectState ID=75 / top level operator + nexts= 0:avatar transition/ ID=84 +action_on_signal:ejectCoin ID=76 / top level operator + nexts= 0:avatar transition/ ID=99 +action_on_signal:getCoin ID=77 / top level operator + nexts= 0:avatar transition/ ID=103 +Beverage ID=78 / top level operator + nexts= +start ID=79 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=98 +WaitingForSelection ID=80 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=89 1:avatar transition/ ID=95 2:avatar transition/ ID=97 +action_on_signal:ejectCoin ID=81 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=85 +action_on_signal:pushCoffeeButton ID=82 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=96 +action_on_signal:pushTeaButton ID=83 / in state Beverage ID=78 + nexts= 0:avatar transition/ ID=90 +avatar transition ID=84 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=76 +weight=1.0 + +avatar transition ID=85 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 +nbOfCoins = 0 / +avatar transition ID=89 / top level operator + value:Transition (delay=(coinDelay, ), ...) weight:1.0 + nexts= 0:action_on_signal/ ID=81 +minDelay=coinDelay maxDelay=coinDelay +weight=1.0 + +avatar transition ID=90 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +minCompute=teaMinDelay maxcompute=teaMaxDelay +weight=1.0 +nbOfCoins = 0 / beverageReady () / +avatar transition ID=95 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=83 +weight=1.0 + +avatar transition ID=96 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 + +avatar transition ID=97 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=82 +weight=1.0 + +avatar transition ID=98 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForSelection/ ID=80 +weight=1.0 + +avatar transition ID=99 / top level operator + value:Transition (nbOfCoins = 0, ...) weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 +nbOfCoins = 0 / +avatar transition ID=102 / top level operator + value:Transition (delay=(coinDelay, ), ...) weight:1.0 + nexts= 0:ejectState/ ID=75 +minDelay=coinDelay maxDelay=coinDelay +weight=1.0 + +avatar transition ID=103 / top level operator + value:Empty transition weight:1.0 + nexts= 0:Beverage/ ID=78 +weight=1.0 + +avatar transition ID=104 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=77 +weight=1.0 + +avatar transition ID=105 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:WaitingForSecondCoin/ ID=74 +weight=1.0 +nbOfCoins = nbOfCoins+x / +avatar transition ID=111 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=73 +weight=1.0 + +avatar transition ID=112 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForFirstCoin/ ID=72 +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ExpireTimer.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ExpireTimer.txt new file mode 100644 index 0000000000000000000000000000000000000000..8dbb0391aaf11f8b18070144fdc40d2a95fe5a27 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ExpireTimer.txt @@ -0,0 +1,108 @@ +State machine Id=3 +start ID=35 / top level operator + nexts= 0:avatar transition/ ID=63 +IDLE ID=36 / top level operator + nexts= 0:avatar transition/ ID=62 +action_on_signal:INconreq ID=37 / top level operator + nexts= 0:avatar transition/ ID=56 +SEND ID=38 / top level operator + nexts= 0:avatar transition/ ID=55 +settimer__ATST1 ID=39 / top level operator + nexts= 0:avatar transition/ ID=54 + timer: ATST1 +action_on_signal:CR ID=40 / top level operator + nexts= 0:avatar transition/ ID=61 +WAIT_FOR_CONF ID=41 / top level operator + nexts= 0:avatar transition/ ID=51 1:avatar transition/ ID=60 +choice__0 ID=42 / top level operator + nexts= 0:avatar transition/ ID=50 1:avatar transition/ ID=65 +action_on_signal:INerror ID=43 / top level operator + nexts= 0:avatar transition/ ID=74 +action_on_signal:DR ID=44 / top level operator + nexts= 0:avatar transition/ ID=75 +ERROR ID=45 / top level operator + nexts= +action_on_signal:CC ID=46 / top level operator + nexts= 0:avatar transition/ ID=53 +resettimer__ATST1 ID=47 / top level operator + nexts= 0:avatar transition/ ID=52 + timer: ATST1 +action_on_signal:INconconf ID=48 / top level operator + nexts= 0:avatar transition/ ID=64 +CONNECTED ID=49 / top level operator + nexts= +avatar transition ID=50 / top level operator + value:Transition (guard=not(retransmissionCounter<maxRetransmissions), ...) weight:1.0 + nexts= 0:action_on_signal/ ID=43 +weight=1.0 +guard not(retransmissionCounter<maxRetransmissions) / +avatar transition ID=51 / top level operator + value:Empty transition weight:1.0 + nexts= 0:choice__0/ ID=42 +weight=1.0 + +avatar transition ID=52 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=48 +weight=1.0 + +avatar transition ID=53 / top level operator + value:Empty transition weight:1.0 + nexts= 0:resettimer__ATST1/ ID=47 +weight=1.0 + +avatar transition ID=54 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=40 +weight=1.0 + +avatar transition ID=55 / top level operator + value:Empty transition weight:1.0 + nexts= 0:settimer__ATST1/ ID=39 +weight=1.0 + +avatar transition ID=56 / top level operator + value:Transition (retransmissionCounter = 0, ...) weight:1.0 + nexts= 0:SEND/ ID=38 +weight=1.0 +retransmissionCounter = 0 / +avatar transition ID=60 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=46 +weight=1.0 + +avatar transition ID=61 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WAIT_FOR_CONF/ ID=41 +weight=1.0 + +avatar transition ID=62 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=37 +weight=1.0 + +avatar transition ID=63 / top level operator + value:Empty transition weight:1.0 + nexts= 0:IDLE/ ID=36 +weight=1.0 + +avatar transition ID=64 / top level operator + value:Empty transition weight:1.0 + nexts= 0:CONNECTED/ ID=49 +weight=1.0 + +avatar transition ID=65 / top level operator + value:Transition (guard=retransmissionCounter<maxRetransmissions, ...) weight:1.0 + nexts= 0:SEND/ ID=38 +weight=1.0 +retransmissionCounter = retransmissionCounter+1 / guard retransmissionCounter<maxRetransmissions / +avatar transition ID=74 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=44 +weight=1.0 + +avatar transition ID=75 / top level operator + value:Empty transition weight:1.0 + nexts= 0:ERROR/ ID=45 +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ResetTimer.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ResetTimer.txt new file mode 100644 index 0000000000000000000000000000000000000000..2e83968444daaa252bc4247ae1316380da8f6ce1 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_ResetTimer.txt @@ -0,0 +1,108 @@ +State machine Id=3 +start ID=35 / top level operator + nexts= 0:avatar transition/ ID=63 +IDLE ID=36 / top level operator + nexts= 0:avatar transition/ ID=62 +action_on_signal:INconreq ID=37 / top level operator + nexts= 0:avatar transition/ ID=56 +SEND ID=38 / top level operator + nexts= 0:avatar transition/ ID=54 +settimer__ATST1 ID=39 / top level operator + nexts= 0:avatar transition/ ID=53 + timer: ATST1 +action_on_signal:CR ID=40 / top level operator + nexts= 0:avatar transition/ ID=61 +WAIT_FOR_CONF ID=41 / top level operator + nexts= 0:avatar transition/ ID=55 1:avatar transition/ ID=60 +expiretimer__ATST1 ID=42 / top level operator + nexts= 0:avatar transition/ ID=51 + timer: ATST1 +choice__0 ID=43 / top level operator + nexts= 0:avatar transition/ ID=50 1:avatar transition/ ID=65 +action_on_signal:INerror ID=44 / top level operator + nexts= 0:avatar transition/ ID=74 +action_on_signal:DR ID=45 / top level operator + nexts= 0:avatar transition/ ID=75 +ERROR ID=46 / top level operator + nexts= +action_on_signal:CC ID=47 / top level operator + nexts= 0:avatar transition/ ID=52 +action_on_signal:INconconf ID=48 / top level operator + nexts= 0:avatar transition/ ID=64 +CONNECTED ID=49 / top level operator + nexts= +avatar transition ID=50 / top level operator + value:Transition (guard=not(retransmissionCounter<maxRetransmissions), ...) weight:1.0 + nexts= 0:action_on_signal/ ID=44 +weight=1.0 +guard not(retransmissionCounter<maxRetransmissions) / +avatar transition ID=51 / top level operator + value:Empty transition weight:1.0 + nexts= 0:choice__0/ ID=43 +weight=1.0 + +avatar transition ID=52 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=48 +weight=1.0 + +avatar transition ID=53 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=40 +weight=1.0 + +avatar transition ID=54 / top level operator + value:Empty transition weight:1.0 + nexts= 0:settimer__ATST1/ ID=39 +weight=1.0 + +avatar transition ID=55 / top level operator + value:Empty transition weight:1.0 + nexts= 0:expiretimer__ATST1/ ID=42 +weight=1.0 + +avatar transition ID=56 / top level operator + value:Transition (retransmissionCounter = 0, ...) weight:1.0 + nexts= 0:SEND/ ID=38 +weight=1.0 +retransmissionCounter = 0 / +avatar transition ID=60 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=47 +weight=1.0 + +avatar transition ID=61 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WAIT_FOR_CONF/ ID=41 +weight=1.0 + +avatar transition ID=62 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=37 +weight=1.0 + +avatar transition ID=63 / top level operator + value:Empty transition weight:1.0 + nexts= 0:IDLE/ ID=36 +weight=1.0 + +avatar transition ID=64 / top level operator + value:Empty transition weight:1.0 + nexts= 0:CONNECTED/ ID=49 +weight=1.0 + +avatar transition ID=65 / top level operator + value:Transition (guard=retransmissionCounter<maxRetransmissions, ...) weight:1.0 + nexts= 0:SEND/ ID=38 +weight=1.0 +retransmissionCounter = retransmissionCounter+1 / guard retransmissionCounter<maxRetransmissions / +avatar transition ID=74 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=45 +weight=1.0 + +avatar transition ID=75 / top level operator + value:Empty transition weight:1.0 + nexts= 0:ERROR/ ID=46 +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_SetTimer.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_SetTimer.txt new file mode 100644 index 0000000000000000000000000000000000000000..28e8d7fc16738e4ce19c864fff3172dc1094402a --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/OnBoardCommunication_Disable_SetTimer.txt @@ -0,0 +1,108 @@ +State machine Id=3 +start ID=35 / top level operator + nexts= 0:avatar transition/ ID=63 +IDLE ID=36 / top level operator + nexts= 0:avatar transition/ ID=62 +action_on_signal:INconreq ID=37 / top level operator + nexts= 0:avatar transition/ ID=56 +SEND ID=38 / top level operator + nexts= 0:avatar transition/ ID=54 +action_on_signal:CR ID=39 / top level operator + nexts= 0:avatar transition/ ID=61 +WAIT_FOR_CONF ID=40 / top level operator + nexts= 0:avatar transition/ ID=55 1:avatar transition/ ID=60 +expiretimer__ATST1 ID=41 / top level operator + nexts= 0:avatar transition/ ID=51 + timer: ATST1 +choice__0 ID=42 / top level operator + nexts= 0:avatar transition/ ID=50 1:avatar transition/ ID=65 +action_on_signal:INerror ID=43 / top level operator + nexts= 0:avatar transition/ ID=74 +action_on_signal:DR ID=44 / top level operator + nexts= 0:avatar transition/ ID=75 +ERROR ID=45 / top level operator + nexts= +action_on_signal:CC ID=46 / top level operator + nexts= 0:avatar transition/ ID=53 +resettimer__ATST1 ID=47 / top level operator + nexts= 0:avatar transition/ ID=52 + timer: ATST1 +action_on_signal:INconconf ID=48 / top level operator + nexts= 0:avatar transition/ ID=64 +CONNECTED ID=49 / top level operator + nexts= +avatar transition ID=50 / top level operator + value:Transition (guard=not(retransmissionCounter<maxRetransmissions), ...) weight:1.0 + nexts= 0:action_on_signal/ ID=43 +weight=1.0 +guard not(retransmissionCounter<maxRetransmissions) / +avatar transition ID=51 / top level operator + value:Empty transition weight:1.0 + nexts= 0:choice__0/ ID=42 +weight=1.0 + +avatar transition ID=52 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=48 +weight=1.0 + +avatar transition ID=53 / top level operator + value:Empty transition weight:1.0 + nexts= 0:resettimer__ATST1/ ID=47 +weight=1.0 + +avatar transition ID=54 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=39 +weight=1.0 + +avatar transition ID=55 / top level operator + value:Empty transition weight:1.0 + nexts= 0:expiretimer__ATST1/ ID=41 +weight=1.0 + +avatar transition ID=56 / top level operator + value:Transition (retransmissionCounter = 0, ...) weight:1.0 + nexts= 0:SEND/ ID=38 +weight=1.0 +retransmissionCounter = 0 / +avatar transition ID=60 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=46 +weight=1.0 + +avatar transition ID=61 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WAIT_FOR_CONF/ ID=40 +weight=1.0 + +avatar transition ID=62 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=37 +weight=1.0 + +avatar transition ID=63 / top level operator + value:Empty transition weight:1.0 + nexts= 0:IDLE/ ID=36 +weight=1.0 + +avatar transition ID=64 / top level operator + value:Empty transition weight:1.0 + nexts= 0:CONNECTED/ ID=49 +weight=1.0 + +avatar transition ID=65 / top level operator + value:Transition (guard=retransmissionCounter<maxRetransmissions, ...) weight:1.0 + nexts= 0:SEND/ ID=38 +weight=1.0 +retransmissionCounter = retransmissionCounter+1 / guard retransmissionCounter<maxRetransmissions / +avatar transition ID=74 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=44 +weight=1.0 + +avatar transition ID=75 / top level operator + value:Empty transition weight:1.0 + nexts= 0:ERROR/ ID=45 +weight=1.0 + diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/PageLoader_Disable_Random.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/PageLoader_Disable_Random.txt new file mode 100644 index 0000000000000000000000000000000000000000..6c8a09190bacd96634bcd5db3478e22607af4342 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/PageLoader_Disable_Random.txt @@ -0,0 +1,192 @@ +State machine Id=3 +start ID=80 / top level operator + nexts= 0:avatar transition/ ID=146 +WaitingForPageToLoad ID=81 / top level operator + nexts= 0:avatar transition/ ID=147 +action_on_signal:loadPage ID=82 / top level operator + nexts= 0:avatar transition/ ID=148 +getFromMemory ID=83 / top level operator + nexts= 0:avatar transition/ ID=166 +choice__0 ID=84 / top level operator + nexts= 0:avatar transition/ ID=132 1:avatar transition/ ID=133 2:avatar transition/ ID=138 3:avatar transition/ ID=167 +gotItFromMemory ID=85 / top level operator + nexts= 0:avatar transition/ ID=172 +PageReady ID=86 / top level operator + nexts= 0:avatar transition/ ID=173 +action_on_signal:pageReady ID=87 / top level operator + nexts= 0:avatar transition/ ID=122 +choice__1 ID=88 / top level operator + nexts= 0:avatar transition/ ID=104 1:avatar transition/ ID=175 +Prefetching ID=89 / top level operator + nexts= 0:avatar transition/ ID=129 +start ID=90 / in state Prefetching ID=89 + nexts= 0:avatar transition/ ID=106 +random ID=91 / in state Prefetching ID=89 + nexts= 0:avatar transition/ ID=121 +PagePrefetched ID=92 / in state Prefetching ID=89 + nexts= 0:avatar transition/ ID=107 +PutPrefetchInMemory ID=93 / top level operator + nexts= 0:avatar transition/ ID=108 +PutPrefetchInMemoryDone ID=94 / top level operator + nexts= 0:avatar transition/ ID=105 +action_on_signal:loadPage ID=95 / top level operator + nexts= 0:avatar transition/ ID=174 +LoadingPage ID=96 / top level operator + nexts= 0:avatar transition/ ID=144 +start ID=97 / in state LoadingPage ID=96 + nexts= 0:avatar transition/ ID=149 +random_converted_to_dummy_state ID=98 / in state LoadingPage ID=96 + nexts= 0:avatar transition/ ID=150 +PageLoaded ID=99 / top level operator + nexts= 0:avatar transition/ ID=143 +PutPageInMemory ID=100 / top level operator + nexts= 0:avatar transition/ ID=153 +PutPageInMemoryDone ID=101 / top level operator + nexts= 0:avatar transition/ ID=131 +action_on_signal:loadPage ID=102 / top level operator + nexts= 0:avatar transition/ ID=145 +Interrupted ID=103 / top level operator + nexts= 0:avatar transition/ ID=130 +avatar transition ID=104 / top level operator + value:Transition (guard=not((pageid<doc__nbOfPages)and(not(memory__index1 == pageid))and(not(memory__index2 == pageid))and(not(memory__index3 == pageid))), ...) weight:1.0 + nexts= 0:WaitingForPageToLoad/ ID=81 +weight=1.0 +guard not((pageid<doc__nbOfPages)and(not(memory__index1 == pageid))and(not(memory__index2 == pageid))and(not(memory__index3 == pageid))) / +avatar transition ID=105 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForPageToLoad/ ID=81 +weight=1.0 + +avatar transition ID=106 / top level operator + value:Transition (delay=(minPageLoadingTime, maxPageLoadingTime), ...) weight:1.0 + nexts= 0:random/ ID=91 +minDelay=minPageLoadingTime maxDelay=maxPageLoadingTime +weight=1.0 + +avatar transition ID=107 / top level operator + value:Empty transition weight:1.0 + nexts= 0:PutPrefetchInMemory/ ID=93 +weight=1.0 + +avatar transition ID=108 / top level operator + value:Transition (memory__index1 = memory__index2, ...) weight:1.0 + nexts= 0:PutPrefetchInMemoryDone/ ID=94 +weight=1.0 +memory__index1 = memory__index2 / memory__data1 = memory__data2 / memory__index2 = memory__index3 / memory__data2 = memory__data3 / memory__index3 = pageid / memory__data3 = x / +avatar transition ID=121 / top level operator + value:Empty transition weight:1.0 + nexts= 0:PagePrefetched/ ID=92 +weight=1.0 + +avatar transition ID=122 / top level operator + value:Transition (pageid = pageid+1, ...) weight:1.0 + nexts= 0:choice__1/ ID=88 +weight=1.0 +pageid = pageid+1 / +avatar transition ID=129 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=95 +weight=1.0 + +avatar transition ID=130 / top level operator + value:Empty transition weight:1.0 + nexts= 0:getFromMemory/ ID=83 +weight=1.0 + +avatar transition ID=131 / top level operator + value:Empty transition weight:1.0 + nexts= 0:PageReady/ ID=86 +weight=1.0 + +avatar transition ID=132 / top level operator + value:Transition (guard=((not(pageid == memory__index3))and(not(pageid == memory__index1)))and(not(pageid == memory__index2)), ...) weight:1.0 + nexts= 0:LoadingPage/ ID=96 +weight=1.0 +guard ((not(pageid == memory__index3))and(not(pageid == memory__index1)))and(not(pageid == memory__index2)) / +avatar transition ID=133 / top level operator + value:Transition (guard=pageid == memory__index3, ...) weight:1.0 + nexts= 0:gotItFromMemory/ ID=85 +weight=1.0 +page__data = memory__data3 / guard pageid == memory__index3 / +avatar transition ID=138 / top level operator + value:Transition (guard=pageid == memory__index1, ...) weight:1.0 + nexts= 0:gotItFromMemory/ ID=85 +weight=1.0 +page__data = memory__data1 / guard pageid == memory__index1 / +avatar transition ID=143 / top level operator + value:Empty transition weight:1.0 + nexts= 0:PutPageInMemory/ ID=100 +weight=1.0 + +avatar transition ID=144 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=102 +weight=1.0 + +avatar transition ID=145 / top level operator + value:Empty transition weight:1.0 + nexts= 0:Interrupted/ ID=103 +weight=1.0 + +avatar transition ID=146 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForPageToLoad/ ID=81 +weight=1.0 + +avatar transition ID=147 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=82 +weight=1.0 + +avatar transition ID=148 / top level operator + value:Empty transition weight:1.0 + nexts= 0:getFromMemory/ ID=83 +weight=1.0 + +avatar transition ID=149 / top level operator + value:Transition (delay=(minPageLoadingTime, maxPageLoadingTime), ...) weight:1.0 + nexts= 0:random_converted_to_dummy_state/ ID=98 +minDelay=minPageLoadingTime maxDelay=maxPageLoadingTime +weight=1.0 + +avatar transition ID=150 / top level operator + value:Transition (page__data = x, ...) weight:1.0 + nexts= 0:PageLoaded/ ID=99 +weight=1.0 +page__data = x / +avatar transition ID=153 / top level operator + value:Transition (memory__index1 = memory__index2, ...) weight:1.0 + nexts= 0:PutPageInMemoryDone/ ID=101 +weight=1.0 +memory__index1 = memory__index2 / memory__data1 = memory__data2 / memory__index2 = memory__index3 / memory__data2 = memory__data3 / memory__index3 = pageid / memory__data3 = page__data / +avatar transition ID=166 / top level operator + value:Empty transition weight:1.0 + nexts= 0:choice__0/ ID=84 +weight=1.0 + +avatar transition ID=167 / top level operator + value:Transition (guard=pageid == memory__index2, ...) weight:1.0 + nexts= 0:gotItFromMemory/ ID=85 +weight=1.0 +page__data = memory__data2 / guard pageid == memory__index2 / +avatar transition ID=172 / top level operator + value:Transition (delay=(memoryPageAccessTime, memoryPageAccessTime), ...) weight:1.0 + nexts= 0:PageReady/ ID=86 +minDelay=memoryPageAccessTime maxDelay=memoryPageAccessTime +weight=1.0 + +avatar transition ID=173 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=87 +weight=1.0 + +avatar transition ID=174 / top level operator + value:Empty transition weight:1.0 + nexts= 0:WaitingForPageToLoad/ ID=81 +weight=1.0 + +avatar transition ID=175 / top level operator + value:Transition (guard=(pageid<doc__nbOfPages)and(not(memory__index1 == pageid))and(not(memory__index2 == pageid))and(not(memory__index3 == pageid)), ...) weight:1.0 + nexts= 0:Prefetching/ ID=89 +weight=1.0 +guard (pageid<doc__nbOfPages)and(not(memory__index1 == pageid))and(not(memory__index2 == pageid))and(not(memory__index3 == pageid)) / diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_ReceiveSignal.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_ReceiveSignal.txt new file mode 100644 index 0000000000000000000000000000000000000000..31fcddea18bc70ad1640e43b8217bed020cdc2b0 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_ReceiveSignal.txt @@ -0,0 +1,28 @@ +State machine Id=3 +start ID=41 / top level operator + nexts= 0:avatar transition/ ID=65 +main ID=42 / top level operator + nexts= 0:avatar transition/ ID=44 1:avatar transition/ ID=62 +action_on_signal:putCoin ID=43 / top level operator + nexts= 0:avatar transition/ ID=53 +avatar transition ID=44 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 +nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / +avatar transition ID=53 / top level operator + value:Transition (delay=(minUserDelay, maxUserDelay), ...) weight:1.0 + nexts= 0:main/ ID=42 +minDelay=minUserDelay maxDelay=maxUserDelay +weight=1.0 +nbOfCoins = nbOfCoins-x / contentOfWallet (nbOfCoins) / +avatar transition ID=62 / top level operator + value:Transition (guard=nbOfCoins>0, ...) weight:1.0 + nexts= 0:action_on_signal/ ID=43 +weight=1.0 +guard nbOfCoins>0 / +avatar transition ID=65 / top level operator + value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 +contentOfWallet (nbOfCoins) / diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_SendSignal.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_SendSignal.txt new file mode 100644 index 0000000000000000000000000000000000000000..fc9ca86c0c51397dbfe8134fb1479d2252eb0945 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_SendSignal.txt @@ -0,0 +1,35 @@ +State machine Id=3 +start ID=41 / top level operator + nexts= 0:avatar transition/ ID=67 +main ID=42 / top level operator + nexts= 0:avatar transition/ ID=54 1:avatar transition/ ID=64 +action_on_signal:putCoin_converted_to_dummy_state ID=43 / top level operator + nexts= 0:avatar transition/ ID=55 +action_on_signal:getCoin ID=44 / top level operator + nexts= 0:avatar transition/ ID=45 +avatar transition ID=45 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 +nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / +avatar transition ID=54 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=44 +weight=1.0 + +avatar transition ID=55 / top level operator + value:Transition (delay=(minUserDelay, maxUserDelay), ...) weight:1.0 + nexts= 0:main/ ID=42 +minDelay=minUserDelay maxDelay=maxUserDelay +weight=1.0 +nbOfCoins = nbOfCoins-x / contentOfWallet (nbOfCoins) / +avatar transition ID=64 / top level operator + value:Transition (guard=nbOfCoins>0, ...) weight:1.0 + nexts= 0:action_on_signal:putCoin_converted_to_dummy_state/ ID=43 +weight=1.0 +guard nbOfCoins>0 / +avatar transition ID=67 / top level operator + value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 +contentOfWallet (nbOfCoins) / diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_State.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_State.txt new file mode 100644 index 0000000000000000000000000000000000000000..43c9e450f96ffc68e0c22c3ce72c37298a325492 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_State.txt @@ -0,0 +1,39 @@ +State machine Id=3 +start ID=41 / top level operator + nexts= 0:avatar transition/ ID=69 +main_converted_to_dummy_state ID=42 / top level operator + nexts= 0:avatar transition/ ID=56 1:avatar transition/ ID=66 +action_on_signal:putCoin ID=43 / top level operator + nexts= 0:avatar transition/ ID=57 +main_state_converted_to_stop ID=44 / top level operator + nexts= +main_state_converted_to_stop ID=45 / top level operator + nexts= +action_on_signal:getCoin ID=46 / top level operator + nexts= 0:avatar transition/ ID=47 +avatar transition ID=47 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:main_state_converted_to_stop/ ID=45 +weight=1.0 +nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / +avatar transition ID=56 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=46 +weight=1.0 + +avatar transition ID=57 / top level operator + value:Transition (delay=(minUserDelay, maxUserDelay), ...) weight:1.0 + nexts= 0:main_state_converted_to_stop/ ID=44 +minDelay=minUserDelay maxDelay=maxUserDelay +weight=1.0 +nbOfCoins = nbOfCoins-x / contentOfWallet (nbOfCoins) / +avatar transition ID=66 / top level operator + value:Transition (guard=nbOfCoins>0, ...) weight:1.0 + nexts= 0:action_on_signal/ ID=43 +weight=1.0 +guard nbOfCoins>0 / +avatar transition ID=69 / top level operator + value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0 + nexts= 0:main_converted_to_dummy_state/ ID=42 +weight=1.0 +contentOfWallet (nbOfCoins) / diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoAfterActions.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoAfterActions.txt new file mode 100644 index 0000000000000000000000000000000000000000..92880c5e8cbff7174d832eb36c0052106ff32265 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoAfterActions.txt @@ -0,0 +1,34 @@ +State machine Id=3 +start ID=41 / top level operator + nexts= 0:avatar transition/ ID=59 +main ID=42 / top level operator + nexts= 0:avatar transition/ ID=54 1:avatar transition/ ID=56 +action_on_signal:putCoin ID=43 / top level operator + nexts= 0:avatar transition/ ID=55 +action_on_signal:getCoin ID=44 / top level operator + nexts= 0:avatar transition/ ID=45 +avatar transition ID=45 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 +nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / +avatar transition ID=54 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=44 +weight=1.0 + +avatar transition ID=55 / top level operator + value:Empty transition weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 + +avatar transition ID=56 / top level operator + value:Transition (guard=nbOfCoins>0, ...) weight:1.0 + nexts= 0:action_on_signal/ ID=43 +weight=1.0 +guard nbOfCoins>0 / +avatar transition ID=59 / top level operator + value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 +contentOfWallet (nbOfCoins) / diff --git a/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoGuard.txt b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoGuard.txt new file mode 100644 index 0000000000000000000000000000000000000000..86b20254ba1de2c832084bfefac3d90976788007 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/expected/components_disabling/Wallet_Disable_TransitionInfoGuard.txt @@ -0,0 +1,35 @@ +State machine Id=3 +start ID=41 / top level operator + nexts= 0:avatar transition/ ID=65 +main ID=42 / top level operator + nexts= 0:avatar transition/ ID=54 1:avatar transition/ ID=64 +action_on_signal:putCoin ID=43 / top level operator + nexts= 0:avatar transition/ ID=55 +action_on_signal:getCoin ID=44 / top level operator + nexts= 0:avatar transition/ ID=45 +avatar transition ID=45 / top level operator + value:Transition (nbOfCoins = nbOfCoins+x, ...) weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 +nbOfCoins = nbOfCoins+x / contentOfWallet (nbOfCoins) / +avatar transition ID=54 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=44 +weight=1.0 + +avatar transition ID=55 / top level operator + value:Transition (delay=(minUserDelay, maxUserDelay), ...) weight:1.0 + nexts= 0:main/ ID=42 +minDelay=minUserDelay maxDelay=maxUserDelay +weight=1.0 +nbOfCoins = nbOfCoins-x / contentOfWallet (nbOfCoins) / +avatar transition ID=64 / top level operator + value:Empty transition weight:1.0 + nexts= 0:action_on_signal/ ID=43 +weight=1.0 + +avatar transition ID=65 / top level operator + value:Transition (contentOfWallet (nbOfCoins), ...) weight:1.0 + nexts= 0:main/ ID=42 +weight=1.0 +contentOfWallet (nbOfCoins) / diff --git a/ttool/src/test/resources/ui/diagram2avatar/input/CoffeeMachine_Avatar.xml b/ttool/src/test/resources/ui/diagram2avatar/input/CoffeeMachine_Avatar.xml new file mode 100644 index 0000000000000000000000000000000000000000..4b806f16364b010281c0cdd8ea4121daef1f4501 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/input/CoffeeMachine_Avatar.xml @@ -0,0 +1,5062 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> + +<TURTLEGMODELING version="1.0beta"> + +<Modeling type="Avatar Requirement" nameTab="AVATAR Requirements" > +<AvatarRDPanel name="AVATAR RD" minX="10" maxX="1900" minY="10" maxY="900" zoom="1.0" > +<COMPONENT type="5200" id="44" > +<cdparam x="661" y="17" /> +<sizeparam width="278" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="59" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Requirement" value="req00" /> +<TGConnectingPoint num="0" id="1" /> +<TGConnectingPoint num="1" id="2" /> +<TGConnectingPoint num="2" id="3" /> +<TGConnectingPoint num="3" id="4" /> +<TGConnectingPoint num="4" id="5" /> +<TGConnectingPoint num="5" id="6" /> +<TGConnectingPoint num="6" id="7" /> +<TGConnectingPoint num="7" id="8" /> +<TGConnectingPoint num="8" id="9" /> +<TGConnectingPoint num="9" id="10" /> +<TGConnectingPoint num="10" id="11" /> +<TGConnectingPoint num="11" id="12" /> +<TGConnectingPoint num="12" id="13" /> +<TGConnectingPoint num="13" id="14" /> +<TGConnectingPoint num="14" id="15" /> +<TGConnectingPoint num="15" id="16" /> +<TGConnectingPoint num="16" id="17" /> +<TGConnectingPoint num="17" id="18" /> +<TGConnectingPoint num="18" id="19" /> +<TGConnectingPoint num="19" id="20" /> +<TGConnectingPoint num="20" id="21" /> +<TGConnectingPoint num="21" id="22" /> +<TGConnectingPoint num="22" id="23" /> +<TGConnectingPoint num="23" id="24" /> +<TGConnectingPoint num="24" id="25" /> +<TGConnectingPoint num="25" id="26" /> +<TGConnectingPoint num="26" id="27" /> +<TGConnectingPoint num="27" id="28" /> +<TGConnectingPoint num="28" id="29" /> +<TGConnectingPoint num="29" id="30" /> +<TGConnectingPoint num="30" id="31" /> +<TGConnectingPoint num="31" id="32" /> +<TGConnectingPoint num="32" id="33" /> +<TGConnectingPoint num="33" id="34" /> +<TGConnectingPoint num="34" id="35" /> +<TGConnectingPoint num="35" id="36" /> +<TGConnectingPoint num="36" id="37" /> +<TGConnectingPoint num="37" id="38" /> +<TGConnectingPoint num="38" id="39" /> +<TGConnectingPoint num="39" id="40" /> +<TGConnectingPoint num="40" id="41" /> +<TGConnectingPoint num="41" id="42" /> +<TGConnectingPoint num="42" id="43" /> +<extraparam> +<textline data="A coin not used within 50 seconds " /> +<textline data="must be ejected" /> +<kind data="Functional" /> +<criticality data="Low" /> +<reqType data="0" /> +<id data="0" /> +<satisfied data="false" /> +<verified data="false" /> +<attackTreeNode data="" /> +<violatedAction data="" /> +<referenceElements data="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5200" id="88" > +<cdparam x="47" y="457" /> +<sizeparam width="301" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="113" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Requirement" value="Req_Availability" /> +<TGConnectingPoint num="0" id="45" /> +<TGConnectingPoint num="1" id="46" /> +<TGConnectingPoint num="2" id="47" /> +<TGConnectingPoint num="3" id="48" /> +<TGConnectingPoint num="4" id="49" /> +<TGConnectingPoint num="5" id="50" /> +<TGConnectingPoint num="6" id="51" /> +<TGConnectingPoint num="7" id="52" /> +<TGConnectingPoint num="8" id="53" /> +<TGConnectingPoint num="9" id="54" /> +<TGConnectingPoint num="10" id="55" /> +<TGConnectingPoint num="11" id="56" /> +<TGConnectingPoint num="12" id="57" /> +<TGConnectingPoint num="13" id="58" /> +<TGConnectingPoint num="14" id="59" /> +<TGConnectingPoint num="15" id="60" /> +<TGConnectingPoint num="16" id="61" /> +<TGConnectingPoint num="17" id="62" /> +<TGConnectingPoint num="18" id="63" /> +<TGConnectingPoint num="19" id="64" /> +<TGConnectingPoint num="20" id="65" /> +<TGConnectingPoint num="21" id="66" /> +<TGConnectingPoint num="22" id="67" /> +<TGConnectingPoint num="23" id="68" /> +<TGConnectingPoint num="24" id="69" /> +<TGConnectingPoint num="25" id="70" /> +<TGConnectingPoint num="26" id="71" /> +<TGConnectingPoint num="27" id="72" /> +<TGConnectingPoint num="28" id="73" /> +<TGConnectingPoint num="29" id="74" /> +<TGConnectingPoint num="30" id="75" /> +<TGConnectingPoint num="31" id="76" /> +<TGConnectingPoint num="32" id="77" /> +<TGConnectingPoint num="33" id="78" /> +<TGConnectingPoint num="34" id="79" /> +<TGConnectingPoint num="35" id="80" /> +<TGConnectingPoint num="36" id="81" /> +<TGConnectingPoint num="37" id="82" /> +<TGConnectingPoint num="38" id="83" /> +<TGConnectingPoint num="39" id="84" /> +<TGConnectingPoint num="40" id="85" /> +<TGConnectingPoint num="41" id="86" /> +<TGConnectingPoint num="42" id="87" /> +<extraparam> +<textline data="The availability of the machine shall be" /> +<textline data="no less than 99.99%" /> +<kind data="Functional" /> +<criticality data="Low" /> +<reqType data="0" /> +<id data="0" /> +<satisfied data="false" /> +<verified data="false" /> +<attackTreeNode data="" /> +<violatedAction data="" /> +<referenceElements data="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5200" id="132" > +<cdparam x="10" y="182" /> +<sizeparam width="150" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="136" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Requirement" value="Req_CoffeeMachine" /> +<TGConnectingPoint num="0" id="89" /> +<TGConnectingPoint num="1" id="90" /> +<TGConnectingPoint num="2" id="91" /> +<TGConnectingPoint num="3" id="92" /> +<TGConnectingPoint num="4" id="93" /> +<TGConnectingPoint num="5" id="94" /> +<TGConnectingPoint num="6" id="95" /> +<TGConnectingPoint num="7" id="96" /> +<TGConnectingPoint num="8" id="97" /> +<TGConnectingPoint num="9" id="98" /> +<TGConnectingPoint num="10" id="99" /> +<TGConnectingPoint num="11" id="100" /> +<TGConnectingPoint num="12" id="101" /> +<TGConnectingPoint num="13" id="102" /> +<TGConnectingPoint num="14" id="103" /> +<TGConnectingPoint num="15" id="104" /> +<TGConnectingPoint num="16" id="105" /> +<TGConnectingPoint num="17" id="106" /> +<TGConnectingPoint num="18" id="107" /> +<TGConnectingPoint num="19" id="108" /> +<TGConnectingPoint num="20" id="109" /> +<TGConnectingPoint num="21" id="110" /> +<TGConnectingPoint num="22" id="111" /> +<TGConnectingPoint num="23" id="112" /> +<TGConnectingPoint num="24" id="113" /> +<TGConnectingPoint num="25" id="114" /> +<TGConnectingPoint num="26" id="115" /> +<TGConnectingPoint num="27" id="116" /> +<TGConnectingPoint num="28" id="117" /> +<TGConnectingPoint num="29" id="118" /> +<TGConnectingPoint num="30" id="119" /> +<TGConnectingPoint num="31" id="120" /> +<TGConnectingPoint num="32" id="121" /> +<TGConnectingPoint num="33" id="122" /> +<TGConnectingPoint num="34" id="123" /> +<TGConnectingPoint num="35" id="124" /> +<TGConnectingPoint num="36" id="125" /> +<TGConnectingPoint num="37" id="126" /> +<TGConnectingPoint num="38" id="127" /> +<TGConnectingPoint num="39" id="128" /> +<TGConnectingPoint num="40" id="129" /> +<TGConnectingPoint num="41" id="130" /> +<TGConnectingPoint num="42" id="131" /> +<extraparam> +<textline data="Requirements of the coffee machine" /> +<kind data="Functional" /> +<criticality data="Low" /> +<reqType data="0" /> +<id data="0" /> +<satisfied data="false" /> +<verified data="false" /> +<attackTreeNode data="" /> +<violatedAction data="" /> +<referenceElements data="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5201" id="148" > +<cdparam x="627" y="376" /> +<sizeparam width="171" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="158" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarProperty" value="BeverageDeliverProperty" /> +<TGConnectingPoint num="0" id="133" /> +<TGConnectingPoint num="1" id="134" /> +<TGConnectingPoint num="2" id="135" /> +<TGConnectingPoint num="3" id="136" /> +<TGConnectingPoint num="4" id="137" /> +<TGConnectingPoint num="5" id="138" /> +<TGConnectingPoint num="6" id="139" /> +<TGConnectingPoint num="7" id="140" /> +<TGConnectingPoint num="8" id="141" /> +<TGConnectingPoint num="9" id="142" /> +<TGConnectingPoint num="10" id="143" /> +<TGConnectingPoint num="11" id="144" /> +<TGConnectingPoint num="12" id="145" /> +<TGConnectingPoint num="13" id="146" /> +<TGConnectingPoint num="14" id="147" /> +</COMPONENT> + +<COMPONENT type="5201" id="164" > +<cdparam x="580" y="246" /> +<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="128" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarProperty" value="WalletCoinProperty" /> +<TGConnectingPoint num="0" id="149" /> +<TGConnectingPoint num="1" id="150" /> +<TGConnectingPoint num="2" id="151" /> +<TGConnectingPoint num="3" id="152" /> +<TGConnectingPoint num="4" id="153" /> +<TGConnectingPoint num="5" id="154" /> +<TGConnectingPoint num="6" id="155" /> +<TGConnectingPoint num="7" id="156" /> +<TGConnectingPoint num="8" id="157" /> +<TGConnectingPoint num="9" id="158" /> +<TGConnectingPoint num="10" id="159" /> +<TGConnectingPoint num="11" id="160" /> +<TGConnectingPoint num="12" id="161" /> +<TGConnectingPoint num="13" id="162" /> +<TGConnectingPoint num="14" id="163" /> +</COMPONENT> + +<COMPONENT type="5200" id="208" > +<cdparam x="234" y="147" /> +<sizeparam width="271" height="104" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Requirement" value="req1" /> +<TGConnectingPoint num="0" id="165" /> +<TGConnectingPoint num="1" id="166" /> +<TGConnectingPoint num="2" id="167" /> +<TGConnectingPoint num="3" id="168" /> +<TGConnectingPoint num="4" id="169" /> +<TGConnectingPoint num="5" id="170" /> +<TGConnectingPoint num="6" id="171" /> +<TGConnectingPoint num="7" id="172" /> +<TGConnectingPoint num="8" id="173" /> +<TGConnectingPoint num="9" id="174" /> +<TGConnectingPoint num="10" id="175" /> +<TGConnectingPoint num="11" id="176" /> +<TGConnectingPoint num="12" id="177" /> +<TGConnectingPoint num="13" id="178" /> +<TGConnectingPoint num="14" id="179" /> +<TGConnectingPoint num="15" id="180" /> +<TGConnectingPoint num="16" id="181" /> +<TGConnectingPoint num="17" id="182" /> +<TGConnectingPoint num="18" id="183" /> +<TGConnectingPoint num="19" id="184" /> +<TGConnectingPoint num="20" id="185" /> +<TGConnectingPoint num="21" id="186" /> +<TGConnectingPoint num="22" id="187" /> +<TGConnectingPoint num="23" id="188" /> +<TGConnectingPoint num="24" id="189" /> +<TGConnectingPoint num="25" id="190" /> +<TGConnectingPoint num="26" id="191" /> +<TGConnectingPoint num="27" id="192" /> +<TGConnectingPoint num="28" id="193" /> +<TGConnectingPoint num="29" id="194" /> +<TGConnectingPoint num="30" id="195" /> +<TGConnectingPoint num="31" id="196" /> +<TGConnectingPoint num="32" id="197" /> +<TGConnectingPoint num="33" id="198" /> +<TGConnectingPoint num="34" id="199" /> +<TGConnectingPoint num="35" id="200" /> +<TGConnectingPoint num="36" id="201" /> +<TGConnectingPoint num="37" id="202" /> +<TGConnectingPoint num="38" id="203" /> +<TGConnectingPoint num="39" id="204" /> +<TGConnectingPoint num="40" id="205" /> +<TGConnectingPoint num="41" id="206" /> +<TGConnectingPoint num="42" id="207" /> +<extraparam> +<textline data="A wallet must never contain a " /> +<textline data="negative number of coins" /> +<kind data="Functional" /> +<criticality data="Low" /> +<reqType data="0" /> +<id data="0" /> +<satisfied data="false" /> +<verified data="false" /> +<attackTreeNode data="" /> +<violatedAction data="" /> +<referenceElements data="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5201" id="224" > +<cdparam x="582" y="155" /> +<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="117" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarProperty" value="OneCoinProperty" /> +<TGConnectingPoint num="0" id="209" /> +<TGConnectingPoint num="1" id="210" /> +<TGConnectingPoint num="2" id="211" /> +<TGConnectingPoint num="3" id="212" /> +<TGConnectingPoint num="4" id="213" /> +<TGConnectingPoint num="5" id="214" /> +<TGConnectingPoint num="6" id="215" /> +<TGConnectingPoint num="7" id="216" /> +<TGConnectingPoint num="8" id="217" /> +<TGConnectingPoint num="9" id="218" /> +<TGConnectingPoint num="10" id="219" /> +<TGConnectingPoint num="11" id="220" /> +<TGConnectingPoint num="12" id="221" /> +<TGConnectingPoint num="13" id="222" /> +<TGConnectingPoint num="14" id="223" /> +</COMPONENT> + +<COMPONENT type="5200" id="268" > +<cdparam x="192" y="16" /> +<sizeparam width="304" height="110" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Requirement" value="req0" /> +<TGConnectingPoint num="0" id="225" /> +<TGConnectingPoint num="1" id="226" /> +<TGConnectingPoint num="2" id="227" /> +<TGConnectingPoint num="3" id="228" /> +<TGConnectingPoint num="4" id="229" /> +<TGConnectingPoint num="5" id="230" /> +<TGConnectingPoint num="6" id="231" /> +<TGConnectingPoint num="7" id="232" /> +<TGConnectingPoint num="8" id="233" /> +<TGConnectingPoint num="9" id="234" /> +<TGConnectingPoint num="10" id="235" /> +<TGConnectingPoint num="11" id="236" /> +<TGConnectingPoint num="12" id="237" /> +<TGConnectingPoint num="13" id="238" /> +<TGConnectingPoint num="14" id="239" /> +<TGConnectingPoint num="15" id="240" /> +<TGConnectingPoint num="16" id="241" /> +<TGConnectingPoint num="17" id="242" /> +<TGConnectingPoint num="18" id="243" /> +<TGConnectingPoint num="19" id="244" /> +<TGConnectingPoint num="20" id="245" /> +<TGConnectingPoint num="21" id="246" /> +<TGConnectingPoint num="22" id="247" /> +<TGConnectingPoint num="23" id="248" /> +<TGConnectingPoint num="24" id="249" /> +<TGConnectingPoint num="25" id="250" /> +<TGConnectingPoint num="26" id="251" /> +<TGConnectingPoint num="27" id="252" /> +<TGConnectingPoint num="28" id="253" /> +<TGConnectingPoint num="29" id="254" /> +<TGConnectingPoint num="30" id="255" /> +<TGConnectingPoint num="31" id="256" /> +<TGConnectingPoint num="32" id="257" /> +<TGConnectingPoint num="33" id="258" /> +<TGConnectingPoint num="34" id="259" /> +<TGConnectingPoint num="35" id="260" /> +<TGConnectingPoint num="36" id="261" /> +<TGConnectingPoint num="37" id="262" /> +<TGConnectingPoint num="38" id="263" /> +<TGConnectingPoint num="39" id="264" /> +<TGConnectingPoint num="40" id="265" /> +<TGConnectingPoint num="41" id="266" /> +<TGConnectingPoint num="42" id="267" /> +<extraparam> +<textline data="The coffee machine never has one coin " /> +<textline data=" inserted more than 50 units of time" /> +<kind data="Functional" /> +<criticality data="Low" /> +<reqType data="0" /> +<id data="123" /> +<satisfied data="false" /> +<verified data="false" /> +<attackTreeNode data="" /> +<violatedAction data="" /> +<referenceElements data="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5200" id="312" > +<cdparam x="206" y="294" /> +<sizeparam width="357" height="135" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Requirement" value="req2" /> +<TGConnectingPoint num="0" id="269" /> +<TGConnectingPoint num="1" id="270" /> +<TGConnectingPoint num="2" id="271" /> +<TGConnectingPoint num="3" id="272" /> +<TGConnectingPoint num="4" id="273" /> +<TGConnectingPoint num="5" id="274" /> +<TGConnectingPoint num="6" id="275" /> +<TGConnectingPoint num="7" id="276" /> +<TGConnectingPoint num="8" id="277" /> +<TGConnectingPoint num="9" id="278" /> +<TGConnectingPoint num="10" id="279" /> +<TGConnectingPoint num="11" id="280" /> +<TGConnectingPoint num="12" id="281" /> +<TGConnectingPoint num="13" id="282" /> +<TGConnectingPoint num="14" id="283" /> +<TGConnectingPoint num="15" id="284" /> +<TGConnectingPoint num="16" id="285" /> +<TGConnectingPoint num="17" id="286" /> +<TGConnectingPoint num="18" id="287" /> +<TGConnectingPoint num="19" id="288" /> +<TGConnectingPoint num="20" id="289" /> +<TGConnectingPoint num="21" id="290" /> +<TGConnectingPoint num="22" id="291" /> +<TGConnectingPoint num="23" id="292" /> +<TGConnectingPoint num="24" id="293" /> +<TGConnectingPoint num="25" id="294" /> +<TGConnectingPoint num="26" id="295" /> +<TGConnectingPoint num="27" id="296" /> +<TGConnectingPoint num="28" id="297" /> +<TGConnectingPoint num="29" id="298" /> +<TGConnectingPoint num="30" id="299" /> +<TGConnectingPoint num="31" id="300" /> +<TGConnectingPoint num="32" id="301" /> +<TGConnectingPoint num="33" id="302" /> +<TGConnectingPoint num="34" id="303" /> +<TGConnectingPoint num="35" id="304" /> +<TGConnectingPoint num="36" id="305" /> +<TGConnectingPoint num="37" id="306" /> +<TGConnectingPoint num="38" id="307" /> +<TGConnectingPoint num="39" id="308" /> +<TGConnectingPoint num="40" id="309" /> +<TGConnectingPoint num="41" id="310" /> +<TGConnectingPoint num="42" id="311" /> +<extraparam> +<textline data="When the application starts, if the wallet contains " /> +<textline data="at least 2 coins, then a beverage may be delivered. " /> +<textline data="On the contrary, if the wallet contains less than 2" /> +<textline data="coins, no beverage will be delivered by the" /> +<textline data="machine." /> +<kind data="Functional" /> +<criticality data="Low" /> +<reqType data="0" /> +<id data="0" /> +<satisfied data="false" /> +<verified data="false" /> +<attackTreeNode data="" /> +<violatedAction data="" /> +<referenceElements data="" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="5202" id="314" > +<cdparam x="659" y="79" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Requirement to Requirement" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="313" /> +<P1 x="661" y="47" id="1" /> +<P2 x="496" y="43" id="228" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5205" id="316" > +<cdparam x="124" y="457" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Requirement to Requirement" value="<<composition>>" /> +<TGConnectingPoint num="0" id="315" /> +<P1 x="122" y="457" id="51" /> +<P2 x="122" y="302" id="100" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5205" id="318" > +<cdparam x="244" y="315" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Requirement to Requirement" value="<<composition>>" /> +<TGConnectingPoint num="0" id="317" /> +<P1 x="206" y="327" id="269" /> +<P2 x="160" y="272" id="94" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5205" id="320" > +<cdparam x="249" y="199" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Requirement to Requirement" value="<<composition>>" /> +<TGConnectingPoint num="0" id="319" /> +<P1 x="234" y="199" id="166" /> +<P2 x="160" y="212" id="92" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5205" id="322" > +<cdparam x="237" y="98" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Requirement to Requirement" value="<<composition>>" /> +<TGConnectingPoint num="0" id="321" /> +<P1 x="192" y="98" id="227" /> +<P2 x="122" y="182" id="97" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5203" id="324" > +<cdparam x="538" y="537" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from AvatarProperty to Requirement" value="<<verify>>" /> +<TGConnectingPoint num="0" id="323" /> +<P1 x="627" y="391" id="134" /> +<P2 x="563" y="361" id="285" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5203" id="326" > +<cdparam x="545" y="329" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from AvatarProperty to Requirement" value="<<verify>>" /> +<TGConnectingPoint num="0" id="325" /> +<P1 x="580" y="261" id="150" /> +<P2 x="505" y="199" id="181" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5203" id="328" > +<cdparam x="563" y="148" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from AvatarProperty to Requirement" value="<<verify>>" /> +<TGConnectingPoint num="0" id="327" /> +<P1 x="582" y="170" id="210" /> +<P2 x="496" y="98" id="242" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</AvatarRDPanel> + +<AvatarPDPanel name="AVATAR PD" minX="10" maxX="1402" minY="10" maxY="902" zoom="1.0000000000000004" > +<CONNECTOR type="5312" id="330" > +<cdparam x="582" y="248" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="reg" /> +<TGConnectingPoint num="0" id="329" /> +<P1 x="502" y="258" id="455" /> +<P2 x="502" y="334" id="343" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5310" id="336" > +<cdparam x="247" y="616" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="" /> +<TGConnectingPoint num="0" id="333" /> +<TGConnectingPoint num="1" id="334" /> +<TGConnectingPoint num="2" id="335" /> +<P1 x="492" y="126" id="418" /> +<P2 x="492" y="209" id="459" /> +<Point x="467" y="147" /> +<Point x="467" y="192" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="331" > +<father id="336" num="0" /> +<cdparam x="467" y="147" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="332" > +<father id="336" num="1" /> +<cdparam x="467" y="192" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5311" id="338" > +<cdparam x="280" y="200" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="" /> +<TGConnectingPoint num="0" id="337" /> +<P1 x="313" y="261" id="381" /> +<P2 x="361" y="261" id="356" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5312" id="340" > +<cdparam x="473" y="190" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="reg" /> +<TGConnectingPoint num="0" id="339" /> +<P1 x="390" y="286" id="354" /> +<P2 x="390" y="331" id="348" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5311" id="342" > +<cdparam x="276" y="190" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="" /> +<TGConnectingPoint num="0" id="341" /> +<P1 x="309" y="211" id="368" /> +<P2 x="361" y="211" id="355" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<COMPONENT type="5308" id="347" > +<cdparam x="446" y="334" /> +<sizeparam width="112" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" /> +<infoparam name="TGComponent" value="WalletCoinProperty" /> +<TGConnectingPoint num="0" id="343" /> +<TGConnectingPoint num="1" id="344" /> +<TGConnectingPoint num="2" id="345" /> +<TGConnectingPoint num="3" id="346" /> +<extraparam> +<liveness data="0" /> +<not data="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5308" id="352" > +<cdparam x="340" y="331" /> +<sizeparam width="100" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" /> +<infoparam name="TGComponent" value="oneCoinProperty" /> +<TGConnectingPoint num="0" id="348" /> +<TGConnectingPoint num="1" id="349" /> +<TGConnectingPoint num="2" id="350" /> +<TGConnectingPoint num="3" id="351" /> +<extraparam> +<liveness data="1" /> +<not data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5302" id="365" > +<cdparam x="361" y="187" /> +<sizeparam width="59" height="99" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" /> +<infoparam name="TGComponent" value=">50" /> +<TGConnectingPoint num="0" id="353" /> +<TGConnectingPoint num="1" id="354" /> +<TGConnectingPoint num="2" id="355" /> +<TGConnectingPoint num="3" id="356" /> +<TGConnectingPoint num="4" id="357" /> +<TGConnectingPoint num="5" id="358" /> +<TGConnectingPoint num="6" id="359" /> +<TGConnectingPoint num="7" id="360" /> +<TGConnectingPoint num="8" id="361" /> +<TGConnectingPoint num="9" id="362" /> +<TGConnectingPoint num="10" id="363" /> +<TGConnectingPoint num="11" id="364" /> +</COMPONENT> + +<COMPONENT type="5300" id="416" > +<cdparam x="150" y="142" /> +<sizeparam width="168" height="154" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" /> +<infoparam name="Block0" value="CoffeeMachine" /> +<TGConnectingPoint num="0" id="392" /> +<TGConnectingPoint num="1" id="393" /> +<TGConnectingPoint num="2" id="394" /> +<TGConnectingPoint num="3" id="395" /> +<TGConnectingPoint num="4" id="396" /> +<TGConnectingPoint num="5" id="397" /> +<TGConnectingPoint num="6" id="398" /> +<TGConnectingPoint num="7" id="399" /> +<TGConnectingPoint num="8" id="400" /> +<TGConnectingPoint num="9" id="401" /> +<TGConnectingPoint num="10" id="402" /> +<TGConnectingPoint num="11" id="403" /> +<TGConnectingPoint num="12" id="404" /> +<TGConnectingPoint num="13" id="405" /> +<TGConnectingPoint num="14" id="406" /> +<TGConnectingPoint num="15" id="407" /> +<TGConnectingPoint num="16" id="408" /> +<TGConnectingPoint num="17" id="409" /> +<TGConnectingPoint num="18" id="410" /> +<TGConnectingPoint num="19" id="411" /> +<TGConnectingPoint num="20" id="412" /> +<TGConnectingPoint num="21" id="413" /> +<TGConnectingPoint num="22" id="414" /> +<TGConnectingPoint num="23" id="415" /> +</COMPONENT> +<SUBCOMPONENT type="5304" id="378" > +<father id="416" num="0" /> +<cdparam x="170" y="191" /> +<sizeparam width="139" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="29" minY="0" maxY="114" /> +<infoparam name="TGComponent" value="WaitingForFirstCoin_exit" /> +<TGConnectingPoint num="0" id="366" /> +<TGConnectingPoint num="1" id="367" /> +<TGConnectingPoint num="2" id="368" /> +<TGConnectingPoint num="3" id="369" /> +<TGConnectingPoint num="4" id="370" /> +<TGConnectingPoint num="5" id="371" /> +<TGConnectingPoint num="6" id="372" /> +<TGConnectingPoint num="7" id="373" /> +<TGConnectingPoint num="8" id="374" /> +<TGConnectingPoint num="9" id="375" /> +<TGConnectingPoint num="10" id="376" /> +<TGConnectingPoint num="11" id="377" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5304" id="391" > +<father id="416" num="1" /> +<cdparam x="165" y="241" /> +<sizeparam width="148" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="20" minY="0" maxY="114" /> +<infoparam name="TGComponent" value="WaitingForFirstCoin_enter" /> +<TGConnectingPoint num="0" id="379" /> +<TGConnectingPoint num="1" id="380" /> +<TGConnectingPoint num="2" id="381" /> +<TGConnectingPoint num="3" id="382" /> +<TGConnectingPoint num="4" id="383" /> +<TGConnectingPoint num="5" id="384" /> +<TGConnectingPoint num="6" id="385" /> +<TGConnectingPoint num="7" id="386" /> +<TGConnectingPoint num="8" id="387" /> +<TGConnectingPoint num="9" id="388" /> +<TGConnectingPoint num="10" id="389" /> +<TGConnectingPoint num="11" id="390" /> +</SUBCOMPONENT> + +<COMPONENT type="5300" id="454" > +<cdparam x="459" y="61" /> +<sizeparam width="150" height="116" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" /> +<infoparam name="Block0" value="Wallet" /> +<TGConnectingPoint num="0" id="430" /> +<TGConnectingPoint num="1" id="431" /> +<TGConnectingPoint num="2" id="432" /> +<TGConnectingPoint num="3" id="433" /> +<TGConnectingPoint num="4" id="434" /> +<TGConnectingPoint num="5" id="435" /> +<TGConnectingPoint num="6" id="436" /> +<TGConnectingPoint num="7" id="437" /> +<TGConnectingPoint num="8" id="438" /> +<TGConnectingPoint num="9" id="439" /> +<TGConnectingPoint num="10" id="440" /> +<TGConnectingPoint num="11" id="441" /> +<TGConnectingPoint num="12" id="442" /> +<TGConnectingPoint num="13" id="443" /> +<TGConnectingPoint num="14" id="444" /> +<TGConnectingPoint num="15" id="445" /> +<TGConnectingPoint num="16" id="446" /> +<TGConnectingPoint num="17" id="447" /> +<TGConnectingPoint num="18" id="448" /> +<TGConnectingPoint num="19" id="449" /> +<TGConnectingPoint num="20" id="450" /> +<TGConnectingPoint num="21" id="451" /> +<TGConnectingPoint num="22" id="452" /> +<TGConnectingPoint num="23" id="453" /> +</COMPONENT> +<SUBCOMPONENT type="5303" id="429" > +<father id="454" num="0" /> +<cdparam x="492" y="102" /> +<sizeparam width="100" height="49" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="50" minY="0" maxY="67" /> +<infoparam name="TGComponent" value="nbOfCoins" /> +<TGConnectingPoint num="0" id="417" /> +<TGConnectingPoint num="1" id="418" /> +<TGConnectingPoint num="2" id="419" /> +<TGConnectingPoint num="3" id="420" /> +<TGConnectingPoint num="4" id="421" /> +<TGConnectingPoint num="5" id="422" /> +<TGConnectingPoint num="6" id="423" /> +<TGConnectingPoint num="7" id="424" /> +<TGConnectingPoint num="8" id="425" /> +<TGConnectingPoint num="9" id="426" /> +<TGConnectingPoint num="10" id="427" /> +<TGConnectingPoint num="11" id="428" /> +<extraparam> +<Toggle value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5306" id="466" > +<cdparam x="467" y="209" /> +<sizeparam width="100" height="49" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1403" minY="10" maxY="903" /> +<infoparam name="TGComponent" value="nbOfCoins >= 0" /> +<TGConnectingPoint num="0" id="455" /> +<TGConnectingPoint num="1" id="456" /> +<TGConnectingPoint num="2" id="457" /> +<TGConnectingPoint num="3" id="458" /> +<TGConnectingPoint num="4" id="459" /> +<TGConnectingPoint num="5" id="460" /> +<TGConnectingPoint num="6" id="461" /> +<TGConnectingPoint num="7" id="462" /> +<TGConnectingPoint num="8" id="463" /> +<TGConnectingPoint num="9" id="464" /> +<TGConnectingPoint num="10" id="465" /> +<extraparam> +<Toggle value="" /> +</extraparam> +</COMPONENT> + + +</AvatarPDPanel> + +<AvatarPDPanel name="AVATAR PD" minX="10" maxX="1400" minY="10" maxY="1400" zoom="1.0" > +<CONNECTOR type="5312" id="468" > +<cdparam x="580" y="547" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="reg" /> +<TGConnectingPoint num="0" id="467" /> +<P1 x="634" y="495" id="643" /> +<P2 x="635" y="562" id="500" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5312" id="470" > +<cdparam x="506" y="493" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="reg" /> +<TGConnectingPoint num="0" id="469" /> +<P1 x="577" y="471" id="654" /> +<P2 x="654" y="495" id="644" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5312" id="472" > +<cdparam x="694" y="460" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="reg" /> +<TGConnectingPoint num="0" id="471" /> +<P1 x="694" y="472" id="496" /> +<P2 x="674" y="505" id="645" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5311" id="478" > +<cdparam x="581" y="133" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="" /> +<TGConnectingPoint num="0" id="475" /> +<TGConnectingPoint num="1" id="476" /> +<TGConnectingPoint num="2" id="477" /> +<P1 x="581" y="154" id="551" /> +<P2 x="546" y="305" id="621" /> +<Point x="518" y="154" /> +<Point x="518" y="305" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="473" > +<father id="478" num="0" /> +<cdparam x="518" y="154" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="474" > +<father id="478" num="1" /> +<cdparam x="518" y="305" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5311" id="482" > +<cdparam x="631" y="143" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="" /> +<TGConnectingPoint num="0" id="480" /> +<TGConnectingPoint num="1" id="481" /> +<P1 x="631" y="164" id="546" /> +<P2 x="667" y="310" id="608" /> +<Point x="631" y="310" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="479" > +<father id="482" num="0" /> +<cdparam x="631" y="310" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5312" id="484" > +<cdparam x="695" y="396" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="reg" /> +<TGConnectingPoint num="0" id="483" /> +<P1 x="696" y="385" id="607" /> +<P2 x="694" y="417" id="495" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5310" id="488" > +<cdparam x="877" y="168" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="" /> +<TGConnectingPoint num="0" id="486" /> +<TGConnectingPoint num="1" id="487" /> +<P1 x="721" y="158" id="557" /> +<P2 x="700" y="204" id="598" /> +<Point x="700" y="158" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="485" > +<father id="488" num="0" /> +<cdparam x="700" y="158" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5312" id="490" > +<cdparam x="915" y="307" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="reg" /> +<TGConnectingPoint num="0" id="489" /> +<P1 x="710" y="254" id="594" /> +<P2 x="711" y="285" id="606" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5312" id="492" > +<cdparam x="993" y="581" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="reg" /> +<TGConnectingPoint num="0" id="491" /> +<P1 x="576" y="385" id="620" /> +<P2 x="577" y="416" id="653" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5311" id="494" > +<cdparam x="426" y="264" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="" /> +<TGConnectingPoint num="0" id="493" /> +<P1 x="491" y="345" id="507" /> +<P2 x="546" y="345" id="625" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<COMPONENT type="5308" id="499" > +<cdparam x="644" y="417" /> +<sizeparam width="100" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="TGComponent" value="prop01" /> +<TGConnectingPoint num="0" id="495" /> +<TGConnectingPoint num="1" id="496" /> +<TGConnectingPoint num="2" id="497" /> +<TGConnectingPoint num="3" id="498" /> +<extraparam> +<liveness data="1" /> +<not data="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5308" id="504" > +<cdparam x="562" y="562" /> +<sizeparam width="146" height="54" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="TGComponent" value="BeverageDeliverProperty" /> +<TGConnectingPoint num="0" id="500" /> +<TGConnectingPoint num="1" id="501" /> +<TGConnectingPoint num="2" id="502" /> +<TGConnectingPoint num="3" id="503" /> +<extraparam> +<liveness data="0" /> +<not data="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5300" id="542" > +<cdparam x="372" y="227" /> +<sizeparam width="132" height="153" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Block0" value="CoffeeMachine" /> +<TGConnectingPoint num="0" id="518" /> +<TGConnectingPoint num="1" id="519" /> +<TGConnectingPoint num="2" id="520" /> +<TGConnectingPoint num="3" id="521" /> +<TGConnectingPoint num="4" id="522" /> +<TGConnectingPoint num="5" id="523" /> +<TGConnectingPoint num="6" id="524" /> +<TGConnectingPoint num="7" id="525" /> +<TGConnectingPoint num="8" id="526" /> +<TGConnectingPoint num="9" id="527" /> +<TGConnectingPoint num="10" id="528" /> +<TGConnectingPoint num="11" id="529" /> +<TGConnectingPoint num="12" id="530" /> +<TGConnectingPoint num="13" id="531" /> +<TGConnectingPoint num="14" id="532" /> +<TGConnectingPoint num="15" id="533" /> +<TGConnectingPoint num="16" id="534" /> +<TGConnectingPoint num="17" id="535" /> +<TGConnectingPoint num="18" id="536" /> +<TGConnectingPoint num="19" id="537" /> +<TGConnectingPoint num="20" id="538" /> +<TGConnectingPoint num="21" id="539" /> +<TGConnectingPoint num="22" id="540" /> +<TGConnectingPoint num="23" id="541" /> +</COMPONENT> +<SUBCOMPONENT type="5304" id="517" > +<father id="542" num="0" /> +<cdparam x="391" y="326" /> +<sizeparam width="100" height="39" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="32" minY="0" maxY="114" /> +<infoparam name="TGComponent" value="beverageReady" /> +<TGConnectingPoint num="0" id="505" /> +<TGConnectingPoint num="1" id="506" /> +<TGConnectingPoint num="2" id="507" /> +<TGConnectingPoint num="3" id="508" /> +<TGConnectingPoint num="4" id="509" /> +<TGConnectingPoint num="5" id="510" /> +<TGConnectingPoint num="6" id="511" /> +<TGConnectingPoint num="7" id="512" /> +<TGConnectingPoint num="8" id="513" /> +<TGConnectingPoint num="9" id="514" /> +<TGConnectingPoint num="10" id="515" /> +<TGConnectingPoint num="11" id="516" /> +</SUBCOMPONENT> + +<COMPONENT type="5300" id="593" > +<cdparam x="563" y="78" /> +<sizeparam width="268" height="115" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Block0" value="Wallet" /> +<TGConnectingPoint num="0" id="569" /> +<TGConnectingPoint num="1" id="570" /> +<TGConnectingPoint num="2" id="571" /> +<TGConnectingPoint num="3" id="572" /> +<TGConnectingPoint num="4" id="573" /> +<TGConnectingPoint num="5" id="574" /> +<TGConnectingPoint num="6" id="575" /> +<TGConnectingPoint num="7" id="576" /> +<TGConnectingPoint num="8" id="577" /> +<TGConnectingPoint num="9" id="578" /> +<TGConnectingPoint num="10" id="579" /> +<TGConnectingPoint num="11" id="580" /> +<TGConnectingPoint num="12" id="581" /> +<TGConnectingPoint num="13" id="582" /> +<TGConnectingPoint num="14" id="583" /> +<TGConnectingPoint num="15" id="584" /> +<TGConnectingPoint num="16" id="585" /> +<TGConnectingPoint num="17" id="586" /> +<TGConnectingPoint num="18" id="587" /> +<TGConnectingPoint num="19" id="588" /> +<TGConnectingPoint num="20" id="589" /> +<TGConnectingPoint num="21" id="590" /> +<TGConnectingPoint num="22" id="591" /> +<TGConnectingPoint num="23" id="592" /> +</COMPONENT> +<SUBCOMPONENT type="5304" id="555" > +<father id="593" num="0" /> +<cdparam x="581" y="125" /> +<sizeparam width="100" height="39" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="168" minY="0" maxY="76" /> +<infoparam name="TGComponent" value="Start" /> +<TGConnectingPoint num="0" id="543" /> +<TGConnectingPoint num="1" id="544" /> +<TGConnectingPoint num="2" id="545" /> +<TGConnectingPoint num="3" id="546" /> +<TGConnectingPoint num="4" id="547" /> +<TGConnectingPoint num="5" id="548" /> +<TGConnectingPoint num="6" id="549" /> +<TGConnectingPoint num="7" id="550" /> +<TGConnectingPoint num="8" id="551" /> +<TGConnectingPoint num="9" id="552" /> +<TGConnectingPoint num="10" id="553" /> +<TGConnectingPoint num="11" id="554" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5303" id="568" > +<father id="593" num="1" /> +<cdparam x="721" y="133" /> +<sizeparam width="100" height="50" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="168" minY="0" maxY="65" /> +<infoparam name="TGComponent" value="nbOfCoins" /> +<TGConnectingPoint num="0" id="556" /> +<TGConnectingPoint num="1" id="557" /> +<TGConnectingPoint num="2" id="558" /> +<TGConnectingPoint num="3" id="559" /> +<TGConnectingPoint num="4" id="560" /> +<TGConnectingPoint num="5" id="561" /> +<TGConnectingPoint num="6" id="562" /> +<TGConnectingPoint num="7" id="563" /> +<TGConnectingPoint num="8" id="564" /> +<TGConnectingPoint num="9" id="565" /> +<TGConnectingPoint num="10" id="566" /> +<TGConnectingPoint num="11" id="567" /> +<extraparam> +<Toggle value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5306" id="605" > +<cdparam x="675" y="204" /> +<sizeparam width="100" height="50" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="TGComponent" value="nbOfCoins > 1" /> +<TGConnectingPoint num="0" id="594" /> +<TGConnectingPoint num="1" id="595" /> +<TGConnectingPoint num="2" id="596" /> +<TGConnectingPoint num="3" id="597" /> +<TGConnectingPoint num="4" id="598" /> +<TGConnectingPoint num="5" id="599" /> +<TGConnectingPoint num="6" id="600" /> +<TGConnectingPoint num="7" id="601" /> +<TGConnectingPoint num="8" id="602" /> +<TGConnectingPoint num="9" id="603" /> +<TGConnectingPoint num="10" id="604" /> +<extraparam> +<Toggle value="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5302" id="618" > +<cdparam x="667" y="285" /> +<sizeparam width="59" height="100" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="TGComponent" value="=0" /> +<TGConnectingPoint num="0" id="606" /> +<TGConnectingPoint num="1" id="607" /> +<TGConnectingPoint num="2" id="608" /> +<TGConnectingPoint num="3" id="609" /> +<TGConnectingPoint num="4" id="610" /> +<TGConnectingPoint num="5" id="611" /> +<TGConnectingPoint num="6" id="612" /> +<TGConnectingPoint num="7" id="613" /> +<TGConnectingPoint num="8" id="614" /> +<TGConnectingPoint num="9" id="615" /> +<TGConnectingPoint num="10" id="616" /> +<TGConnectingPoint num="11" id="617" /> +</COMPONENT> + +<COMPONENT type="5301" id="639" > +<cdparam x="546" y="285" /> +<sizeparam width="60" height="100" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="TGComponent" value="<<LS>>" /> +<TGConnectingPoint num="0" id="619" /> +<TGConnectingPoint num="1" id="620" /> +<TGConnectingPoint num="2" id="621" /> +<TGConnectingPoint num="3" id="622" /> +<TGConnectingPoint num="4" id="623" /> +<TGConnectingPoint num="5" id="624" /> +<TGConnectingPoint num="6" id="625" /> +<TGConnectingPoint num="7" id="626" /> +<TGConnectingPoint num="8" id="627" /> +<TGConnectingPoint num="9" id="628" /> +<TGConnectingPoint num="10" id="629" /> +<TGConnectingPoint num="11" id="630" /> +<TGConnectingPoint num="12" id="631" /> +<TGConnectingPoint num="13" id="632" /> +<TGConnectingPoint num="14" id="633" /> +<TGConnectingPoint num="15" id="634" /> +<TGConnectingPoint num="16" id="635" /> +<TGConnectingPoint num="17" id="636" /> +<TGConnectingPoint num="18" id="637" /> +<TGConnectingPoint num="19" id="638" /> +</COMPONENT> + +<COMPONENT type="5309" id="652" > +<cdparam x="594" y="495" /> +<sizeparam width="80" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="TGComponent" value="<=>" /> +<TGConnectingPoint num="0" id="640" /> +<TGConnectingPoint num="1" id="641" /> +<TGConnectingPoint num="2" id="642" /> +<TGConnectingPoint num="3" id="643" /> +<TGConnectingPoint num="4" id="644" /> +<TGConnectingPoint num="5" id="645" /> +<TGConnectingPoint num="6" id="646" /> +<TGConnectingPoint num="7" id="647" /> +<TGConnectingPoint num="8" id="648" /> +<TGConnectingPoint num="9" id="649" /> +<TGConnectingPoint num="10" id="650" /> +<TGConnectingPoint num="11" id="651" /> +</COMPONENT> + +<COMPONENT type="5308" id="657" > +<cdparam x="527" y="416" /> +<sizeparam width="100" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="TGComponent" value="prop02" /> +<TGConnectingPoint num="0" id="653" /> +<TGConnectingPoint num="1" id="654" /> +<TGConnectingPoint num="2" id="655" /> +<TGConnectingPoint num="3" id="656" /> +<extraparam> +<liveness data="1" /> +<not data="false" /> +</extraparam> +</COMPONENT> + + +</AvatarPDPanel> + +</Modeling> + + + + +<Modeling type="AVATAR Design" nameTab="MainDesign" > +<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="1400" minY="10" maxY="900" > +<MainCode value="void __user_init() {"/> +<MainCode value="}"/> +<Optimized value="true" /> +<Validated value="" /> +<Ignored value="" /> + +<CONNECTOR type="5002" id="659" > +<cdparam x="321" y="567" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block1 to Block0" value="" /> +<TGConnectingPoint num="0" id="658" /> +<P1 x="559" y="330" id="720" /> +<P2 x="560" y="377" id="753" /> +<AutomaticDrawing data="true" /> +<extraparam> +<isd value="in pushCoffeeButton()" /> +<oso value="out push()" /> +<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="5002" id="661" > +<cdparam x="275" y="114" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block0 to Block0" value="" /> +<TGConnectingPoint num="0" id="660" /> +<P1 x="306" y="109" id="675" /> +<P2 x="445" y="108" id="749" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in getCoin(int nbOfCoins)" /> +<osd value="out ejectCoin(int nbOfCoins)" /> +<isd value="in getCoin(int nbOfCoins)" /> +<oso value="out putCoin(int nbOfCoins)" /> +<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="5002" id="663" > +<cdparam x="623" y="565" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block1 to Block0" value="" /> +<TGConnectingPoint num="0" id="662" /> +<P1 x="789" y="326" id="695" /> +<P2 x="790" y="377" id="754" /> +<AutomaticDrawing data="true" /> +<extraparam> +<isd value="in pushTeaButton()" /> +<oso value="out push()" /> +<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<COMPONENT type="5000" id="688" > +<cdparam x="106" y="55" /> +<sizeparam width="200" height="218" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="Wallet" /> +<TGConnectingPoint num="0" id="664" /> +<TGConnectingPoint num="1" id="665" /> +<TGConnectingPoint num="2" id="666" /> +<TGConnectingPoint num="3" id="667" /> +<TGConnectingPoint num="4" id="668" /> +<TGConnectingPoint num="5" id="669" /> +<TGConnectingPoint num="6" id="670" /> +<TGConnectingPoint num="7" id="671" /> +<TGConnectingPoint num="8" id="672" /> +<TGConnectingPoint num="9" id="673" /> +<TGConnectingPoint num="10" id="674" /> +<TGConnectingPoint num="11" id="675" /> +<TGConnectingPoint num="12" id="676" /> +<TGConnectingPoint num="13" id="677" /> +<TGConnectingPoint num="14" id="678" /> +<TGConnectingPoint num="15" id="679" /> +<TGConnectingPoint num="16" id="680" /> +<TGConnectingPoint num="17" id="681" /> +<TGConnectingPoint num="18" id="682" /> +<TGConnectingPoint num="19" id="683" /> +<TGConnectingPoint num="20" id="684" /> +<TGConnectingPoint num="21" id="685" /> +<TGConnectingPoint num="22" id="686" /> +<TGConnectingPoint num="23" id="687" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="nbOfCoins" value="2" type="8" typeOther="" /> +<Attribute access="0" id="x" value="1" type="8" typeOther="" /> +<Attribute access="0" id="minUserDelay" value="50" type="8" typeOther="" /> +<Attribute access="0" id="maxUserDelay" value="70" type="8" typeOther="" /> +<Method value="contentOfWallet(int nbOfCoins)" /> +<Signal value="in getCoin(int nbOfCoins)" attached="false" /> +<Signal value="out putCoin(int nbOfCoins)" attached="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="763" > +<cdparam x="445" y="19" /> +<sizeparam width="461" height="358" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="CoffeeMachine" /> +<TGConnectingPoint num="0" id="739" /> +<TGConnectingPoint num="1" id="740" /> +<TGConnectingPoint num="2" id="741" /> +<TGConnectingPoint num="3" id="742" /> +<TGConnectingPoint num="4" id="743" /> +<TGConnectingPoint num="5" id="744" /> +<TGConnectingPoint num="6" id="745" /> +<TGConnectingPoint num="7" id="746" /> +<TGConnectingPoint num="8" id="747" /> +<TGConnectingPoint num="9" id="748" /> +<TGConnectingPoint num="10" id="749" /> +<TGConnectingPoint num="11" id="750" /> +<TGConnectingPoint num="12" id="751" /> +<TGConnectingPoint num="13" id="752" /> +<TGConnectingPoint num="14" id="753" /> +<TGConnectingPoint num="15" id="754" /> +<TGConnectingPoint num="16" id="755" /> +<TGConnectingPoint num="17" id="756" /> +<TGConnectingPoint num="18" id="757" /> +<TGConnectingPoint num="19" id="758" /> +<TGConnectingPoint num="20" id="759" /> +<TGConnectingPoint num="21" id="760" /> +<TGConnectingPoint num="22" id="761" /> +<TGConnectingPoint num="23" id="762" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="teaMinDelay" value="3" type="8" typeOther="" /> +<Attribute access="0" id="teaMaxDelay" value="8" type="8" typeOther="" /> +<Attribute access="0" id="coffeeMinDelay" value="5" type="8" typeOther="" /> +<Attribute access="0" id="coffeeMaxDelay" value="10" type="8" typeOther="" /> +<Attribute access="0" id="coinDelay" value="50" type="8" typeOther="" /> +<Attribute access="0" id="x" value="0" type="8" typeOther="" /> +<Attribute access="0" id="nbOfCoins" value="0" type="8" typeOther="" /> +<Method value="beverageReady()" /> +<Signal value="in pushCoffeeButton()" attached="false" /> +<Signal value="in pushTeaButton()" attached="false" /> +<Signal value="in getCoin(int nbOfCoins)" attached="false" /> +<Signal value="out ejectCoin(int nbOfCoins)" attached="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="5000" id="713" > +<father id="763" num="0" /> +<cdparam x="695" y="224" /> +<sizeparam width="189" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="272" minY="0" maxY="256" /> +<infoparam name="Block1" value="TeaButton" /> +<TGConnectingPoint num="0" id="689" /> +<TGConnectingPoint num="1" id="690" /> +<TGConnectingPoint num="2" id="691" /> +<TGConnectingPoint num="3" id="692" /> +<TGConnectingPoint num="4" id="693" /> +<TGConnectingPoint num="5" id="694" /> +<TGConnectingPoint num="6" id="695" /> +<TGConnectingPoint num="7" id="696" /> +<TGConnectingPoint num="8" id="697" /> +<TGConnectingPoint num="9" id="698" /> +<TGConnectingPoint num="10" id="699" /> +<TGConnectingPoint num="11" id="700" /> +<TGConnectingPoint num="12" id="701" /> +<TGConnectingPoint num="13" id="702" /> +<TGConnectingPoint num="14" id="703" /> +<TGConnectingPoint num="15" id="704" /> +<TGConnectingPoint num="16" id="705" /> +<TGConnectingPoint num="17" id="706" /> +<TGConnectingPoint num="18" id="707" /> +<TGConnectingPoint num="19" id="708" /> +<TGConnectingPoint num="20" id="709" /> +<TGConnectingPoint num="21" id="710" /> +<TGConnectingPoint num="22" id="711" /> +<TGConnectingPoint num="23" id="712" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="mechanicalDelay" value="10" type="8" typeOther="" /> +<Signal value="out push()" attached="false" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="5000" id="738" > +<father id="763" num="1" /> +<cdparam x="464" y="228" /> +<sizeparam width="190" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="271" minY="0" maxY="256" /> +<infoparam name="Block1" value="CoffeeButton" /> +<TGConnectingPoint num="0" id="714" /> +<TGConnectingPoint num="1" id="715" /> +<TGConnectingPoint num="2" id="716" /> +<TGConnectingPoint num="3" id="717" /> +<TGConnectingPoint num="4" id="718" /> +<TGConnectingPoint num="5" id="719" /> +<TGConnectingPoint num="6" id="720" /> +<TGConnectingPoint num="7" id="721" /> +<TGConnectingPoint num="8" id="722" /> +<TGConnectingPoint num="9" id="723" /> +<TGConnectingPoint num="10" id="724" /> +<TGConnectingPoint num="11" id="725" /> +<TGConnectingPoint num="12" id="726" /> +<TGConnectingPoint num="13" id="727" /> +<TGConnectingPoint num="14" id="728" /> +<TGConnectingPoint num="15" id="729" /> +<TGConnectingPoint num="16" id="730" /> +<TGConnectingPoint num="17" id="731" /> +<TGConnectingPoint num="18" id="732" /> +<TGConnectingPoint num="19" id="733" /> +<TGConnectingPoint num="20" id="734" /> +<TGConnectingPoint num="21" id="735" /> +<TGConnectingPoint num="22" id="736" /> +<TGConnectingPoint num="23" id="737" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="mechanicalDelay" value="80" type="8" typeOther="" /> +<Signal value="out push()" attached="false" /> +</extraparam> +</SUBCOMPONENT> + + +</AVATARBlockDiagramPanel> + +<AVATARStateMachineDiagramPanel name="Wallet" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="770" > +<cdparam x="516" y="264" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="769" /> +<P1 x="485" y="219" id="811" /> +<P2 x="485" y="274" id="822" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="768" > +<father id="770" num="0" /> +<cdparam x="493" y="251" /> +<sizeparam width="173" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="764" /> +<TGConnectingPoint num="1" id="765" /> +<TGConnectingPoint num="2" id="766" /> +<TGConnectingPoint num="3" id="767" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="nbOfCoins = nbOfCoins + x" /> +<actions value="contentOfWallet(nbOfCoins)" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="777" > +<cdparam x="382" y="165" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="776" /> +<P1 x="382" y="165" id="918" /> +<P2 x="485" y="189" id="810" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="775" > +<father id="777" num="0" /> +<cdparam x="382" y="205" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="771" /> +<TGConnectingPoint num="1" id="772" /> +<TGConnectingPoint num="2" id="773" /> +<TGConnectingPoint num="3" id="774" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="784" > +<cdparam x="223" y="260" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="783" /> +<P1 x="251" y="231" id="800" /> +<P2 x="252" y="300" id="863" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="782" > +<father id="784" num="0" /> +<cdparam x="163" y="252" /> +<sizeparam width="221" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="778" /> +<TGConnectingPoint num="1" id="779" /> +<TGConnectingPoint num="2" id="780" /> +<TGConnectingPoint num="3" id="781" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="minUserDelay" /> +<afterMax value="maxUserDelay" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="nbOfCoins = nbOfCoins - x" /> +<actions value="contentOfWallet(nbOfCoins)" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="791" > +<cdparam x="357" y="165" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="790" /> +<P1 x="357" y="165" id="917" /> +<P2 x="251" y="201" id="799" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="789" > +<father id="791" num="0" /> +<cdparam x="220" y="174" /> +<sizeparam width="99" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="785" /> +<TGConnectingPoint num="1" id="786" /> +<TGConnectingPoint num="2" id="787" /> +<TGConnectingPoint num="3" id="788" /> +<extraparam> +<guard value="[nbOfCoins > 0]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="798" > +<cdparam x="369" y="115" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="797" /> +<P1 x="370" y="64" id="944" /> +<P2 x="370" y="135" id="904" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="796" > +<father id="798" num="0" /> +<cdparam x="376" y="105" /> +<sizeparam width="173" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="792" /> +<TGConnectingPoint num="1" id="793" /> +<TGConnectingPoint num="2" id="794" /> +<TGConnectingPoint num="3" id="795" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="contentOfWallet(nbOfCoins)" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5103" id="809" > +<cdparam x="214" y="206" /> +<sizeparam width="74" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="putCoin(x)" /> +<TGConnectingPoint num="0" id="799" /> +<TGConnectingPoint num="1" id="800" /> +<TGConnectingPoint num="2" id="801" /> +<TGConnectingPoint num="3" id="802" /> +<TGConnectingPoint num="4" id="803" /> +<TGConnectingPoint num="5" id="804" /> +<TGConnectingPoint num="6" id="805" /> +<TGConnectingPoint num="7" id="806" /> +<TGConnectingPoint num="8" id="807" /> +<TGConnectingPoint num="9" id="808" /> +</COMPONENT> + +<COMPONENT type="5104" id="820" > +<cdparam x="444" y="194" /> +<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="getCoin(x)" /> +<TGConnectingPoint num="0" id="810" /> +<TGConnectingPoint num="1" id="811" /> +<TGConnectingPoint num="2" id="812" /> +<TGConnectingPoint num="3" id="813" /> +<TGConnectingPoint num="4" id="814" /> +<TGConnectingPoint num="5" id="815" /> +<TGConnectingPoint num="6" id="816" /> +<TGConnectingPoint num="7" id="817" /> +<TGConnectingPoint num="8" id="818" /> +<TGConnectingPoint num="9" id="819" /> +</COMPONENT> + +<COMPONENT type="5106" id="861" > +<cdparam x="460" y="274" /> +<sizeparam width="50" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="821" /> +<TGConnectingPoint num="1" id="822" /> +<TGConnectingPoint num="2" id="823" /> +<TGConnectingPoint num="3" id="824" /> +<TGConnectingPoint num="4" id="825" /> +<TGConnectingPoint num="5" id="826" /> +<TGConnectingPoint num="6" id="827" /> +<TGConnectingPoint num="7" id="828" /> +<TGConnectingPoint num="8" id="829" /> +<TGConnectingPoint num="9" id="830" /> +<TGConnectingPoint num="10" id="831" /> +<TGConnectingPoint num="11" id="832" /> +<TGConnectingPoint num="12" id="833" /> +<TGConnectingPoint num="13" id="834" /> +<TGConnectingPoint num="14" id="835" /> +<TGConnectingPoint num="15" id="836" /> +<TGConnectingPoint num="16" id="837" /> +<TGConnectingPoint num="17" id="838" /> +<TGConnectingPoint num="18" id="839" /> +<TGConnectingPoint num="19" id="840" /> +<TGConnectingPoint num="20" id="841" /> +<TGConnectingPoint num="21" id="842" /> +<TGConnectingPoint num="22" id="843" /> +<TGConnectingPoint num="23" id="844" /> +<TGConnectingPoint num="24" id="845" /> +<TGConnectingPoint num="25" id="846" /> +<TGConnectingPoint num="26" id="847" /> +<TGConnectingPoint num="27" id="848" /> +<TGConnectingPoint num="28" id="849" /> +<TGConnectingPoint num="29" id="850" /> +<TGConnectingPoint num="30" id="851" /> +<TGConnectingPoint num="31" id="852" /> +<TGConnectingPoint num="32" id="853" /> +<TGConnectingPoint num="33" id="854" /> +<TGConnectingPoint num="34" id="855" /> +<TGConnectingPoint num="35" id="856" /> +<TGConnectingPoint num="36" id="857" /> +<TGConnectingPoint num="37" id="858" /> +<TGConnectingPoint num="38" id="859" /> +<TGConnectingPoint num="39" id="860" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="902" > +<cdparam x="227" y="300" /> +<sizeparam width="50" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="862" /> +<TGConnectingPoint num="1" id="863" /> +<TGConnectingPoint num="2" id="864" /> +<TGConnectingPoint num="3" id="865" /> +<TGConnectingPoint num="4" id="866" /> +<TGConnectingPoint num="5" id="867" /> +<TGConnectingPoint num="6" id="868" /> +<TGConnectingPoint num="7" id="869" /> +<TGConnectingPoint num="8" id="870" /> +<TGConnectingPoint num="9" id="871" /> +<TGConnectingPoint num="10" id="872" /> +<TGConnectingPoint num="11" id="873" /> +<TGConnectingPoint num="12" id="874" /> +<TGConnectingPoint num="13" id="875" /> +<TGConnectingPoint num="14" id="876" /> +<TGConnectingPoint num="15" id="877" /> +<TGConnectingPoint num="16" id="878" /> +<TGConnectingPoint num="17" id="879" /> +<TGConnectingPoint num="18" id="880" /> +<TGConnectingPoint num="19" id="881" /> +<TGConnectingPoint num="20" id="882" /> +<TGConnectingPoint num="21" id="883" /> +<TGConnectingPoint num="22" id="884" /> +<TGConnectingPoint num="23" id="885" /> +<TGConnectingPoint num="24" id="886" /> +<TGConnectingPoint num="25" id="887" /> +<TGConnectingPoint num="26" id="888" /> +<TGConnectingPoint num="27" id="889" /> +<TGConnectingPoint num="28" id="890" /> +<TGConnectingPoint num="29" id="891" /> +<TGConnectingPoint num="30" id="892" /> +<TGConnectingPoint num="31" id="893" /> +<TGConnectingPoint num="32" id="894" /> +<TGConnectingPoint num="33" id="895" /> +<TGConnectingPoint num="34" id="896" /> +<TGConnectingPoint num="35" id="897" /> +<TGConnectingPoint num="36" id="898" /> +<TGConnectingPoint num="37" id="899" /> +<TGConnectingPoint num="38" id="900" /> +<TGConnectingPoint num="39" id="901" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="943" > +<cdparam x="345" y="135" /> +<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="903" /> +<TGConnectingPoint num="1" id="904" /> +<TGConnectingPoint num="2" id="905" /> +<TGConnectingPoint num="3" id="906" /> +<TGConnectingPoint num="4" id="907" /> +<TGConnectingPoint num="5" id="908" /> +<TGConnectingPoint num="6" id="909" /> +<TGConnectingPoint num="7" id="910" /> +<TGConnectingPoint num="8" id="911" /> +<TGConnectingPoint num="9" id="912" /> +<TGConnectingPoint num="10" id="913" /> +<TGConnectingPoint num="11" id="914" /> +<TGConnectingPoint num="12" id="915" /> +<TGConnectingPoint num="13" id="916" /> +<TGConnectingPoint num="14" id="917" /> +<TGConnectingPoint num="15" id="918" /> +<TGConnectingPoint num="16" id="919" /> +<TGConnectingPoint num="17" id="920" /> +<TGConnectingPoint num="18" id="921" /> +<TGConnectingPoint num="19" id="922" /> +<TGConnectingPoint num="20" id="923" /> +<TGConnectingPoint num="21" id="924" /> +<TGConnectingPoint num="22" id="925" /> +<TGConnectingPoint num="23" id="926" /> +<TGConnectingPoint num="24" id="927" /> +<TGConnectingPoint num="25" id="928" /> +<TGConnectingPoint num="26" id="929" /> +<TGConnectingPoint num="27" id="930" /> +<TGConnectingPoint num="28" id="931" /> +<TGConnectingPoint num="29" id="932" /> +<TGConnectingPoint num="30" id="933" /> +<TGConnectingPoint num="31" id="934" /> +<TGConnectingPoint num="32" id="935" /> +<TGConnectingPoint num="33" id="936" /> +<TGConnectingPoint num="34" id="937" /> +<TGConnectingPoint num="35" id="938" /> +<TGConnectingPoint num="36" id="939" /> +<TGConnectingPoint num="37" id="940" /> +<TGConnectingPoint num="38" id="941" /> +<TGConnectingPoint num="39" id="942" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="945" > +<cdparam x="363" y="44" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="944" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="CoffeeMachine" minX="10" maxX="1400" minY="10" maxY="1400" > +<CONNECTOR type="5102" id="952" > +<cdparam x="691" y="288" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="951" /> +<P1 x="699" y="289" id="1090" /> +<P2 x="699" y="316" id="1062" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="950" > +<father id="952" num="0" /> +<cdparam x="691" y="328" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="946" /> +<TGConnectingPoint num="1" id="947" /> +<TGConnectingPoint num="2" id="948" /> +<TGConnectingPoint num="3" id="949" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="959" > +<cdparam x="481" y="501" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to stop state" value="null" /> +<TGConnectingPoint num="0" id="958" /> +<P1 x="437" y="525" id="1292" /> +<P2 x="323" y="748" id="1218" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="957" > +<father id="959" num="0" /> +<cdparam x="420" y="552" /> +<sizeparam width="89" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="953" /> +<TGConnectingPoint num="1" id="954" /> +<TGConnectingPoint num="2" id="955" /> +<TGConnectingPoint num="3" id="956" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="nbOfCoins = 0" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="966" > +<cdparam x="555" y="559" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="965" /> +<P1 x="321" y="455" id="1319" /> +<P2 x="437" y="495" id="1291" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="964" > +<father id="966" num="0" /> +<cdparam x="395" y="448" /> +<sizeparam width="104" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="960" /> +<TGConnectingPoint num="1" id="961" /> +<TGConnectingPoint num="2" id="962" /> +<TGConnectingPoint num="3" id="963" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="coinDelay" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="973" > +<cdparam x="355" y="545" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to stop state" value="null" /> +<TGConnectingPoint num="0" id="972" /> +<P1 x="293" y="552" id="1357" /> +<P2 x="289" y="748" id="1210" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="971" > +<father id="973" num="0" /> +<cdparam x="284" y="594" /> +<sizeparam width="248" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="967" /> +<TGConnectingPoint num="1" id="968" /> +<TGConnectingPoint num="2" id="969" /> +<TGConnectingPoint num="3" id="970" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="teaMinDelay" /> +<computeMax value="teaMaxDelay" /> +<actions value="nbOfCoins = 0" /> +<actions value="beverageReady()" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="980" > +<cdparam x="295" y="465" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="979" /> +<P1 x="288" y="475" id="1330" /> +<P2 x="293" y="522" id="1356" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="978" > +<father id="980" num="0" /> +<cdparam x="295" y="505" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="974" /> +<TGConnectingPoint num="1" id="975" /> +<TGConnectingPoint num="2" id="976" /> +<TGConnectingPoint num="3" id="977" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="987" > +<cdparam x="148" y="549" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to stop state" value="null" /> +<TGConnectingPoint num="0" id="986" /> +<P1 x="121" y="552" id="1303" /> +<P2 x="255" y="748" id="1217" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="985" > +<father id="987" num="0" /> +<cdparam x="32" y="587" /> +<sizeparam width="284" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="981" /> +<TGConnectingPoint num="1" id="982" /> +<TGConnectingPoint num="2" id="983" /> +<TGConnectingPoint num="3" id="984" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="coffeeMinDelay" /> +<computeMax value="coffeeMaxDelay" /> +<actions value="nbOfCoins = 0" /> +<actions value="beverageReady()" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="994" > +<cdparam x="229" y="465" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="993" /> +<P1 x="222" y="475" id="1329" /> +<P2 x="121" y="522" id="1302" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="992" > +<father id="994" num="0" /> +<cdparam x="229" y="505" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="988" /> +<TGConnectingPoint num="1" id="989" /> +<TGConnectingPoint num="2" id="990" /> +<TGConnectingPoint num="3" id="991" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1001" > +<cdparam x="280" y="420" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="1000" /> +<P1 x="256" y="419" id="1313" /> +<P2 x="255" y="435" id="1316" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="999" > +<father id="1001" num="0" /> +<cdparam x="280" y="460" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="995" /> +<TGConnectingPoint num="1" id="996" /> +<TGConnectingPoint num="2" id="997" /> +<TGConnectingPoint num="3" id="998" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1008" > +<cdparam x="667" y="346" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1007" /> +<P1 x="699" y="346" id="1063" /> +<P2 x="699" y="381" id="1251" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1006" > +<father id="1008" num="0" /> +<cdparam x="707" y="368" /> +<sizeparam width="89" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1002" /> +<TGConnectingPoint num="1" id="1003" /> +<TGConnectingPoint num="2" id="1004" /> +<TGConnectingPoint num="3" id="1005" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="nbOfCoins = 0" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1015" > +<cdparam x="348" y="228" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1014" /> +<P1 x="388" y="208" id="1129" /> +<P2 x="649" y="264" id="1087" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1013" > +<father id="1015" num="0" /> +<cdparam x="411" y="206" /> +<sizeparam width="104" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1009" /> +<TGConnectingPoint num="1" id="1010" /> +<TGConnectingPoint num="2" id="1011" /> +<TGConnectingPoint num="3" id="1012" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="coinDelay" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1022" > +<cdparam x="243" y="319" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1021" /> +<P1 x="277" y="305" id="1074" /> +<P2 x="306" y="370" id="1368" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1020" > +<father id="1022" num="0" /> +<cdparam x="243" y="359" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1016" /> +<TGConnectingPoint num="1" id="1017" /> +<TGConnectingPoint num="2" id="1018" /> +<TGConnectingPoint num="3" id="1019" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1029" > +<cdparam x="270" y="224" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1028" /> +<P1 x="270" y="228" id="1139" /> +<P2 x="277" y="275" id="1073" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1027" > +<father id="1029" num="0" /> +<cdparam x="270" y="264" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1023" /> +<TGConnectingPoint num="1" id="1024" /> +<TGConnectingPoint num="2" id="1025" /> +<TGConnectingPoint num="3" id="1026" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1036" > +<cdparam x="309" y="160" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1035" /> +<P1 x="306" y="166" id="1052" /> +<P2 x="309" y="188" id="1126" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1034" > +<father id="1036" num="0" /> +<cdparam x="328" y="178" /> +<sizeparam width="168" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1030" /> +<TGConnectingPoint num="1" id="1031" /> +<TGConnectingPoint num="2" id="1032" /> +<TGConnectingPoint num="3" id="1033" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="nbOfCoins = nbOfCoins + x" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1043" > +<cdparam x="303" y="103" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1042" /> +<P1 x="303" y="103" id="1174" /> +<P2 x="306" y="136" id="1051" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1041" > +<father id="1043" num="0" /> +<cdparam x="303" y="143" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1037" /> +<TGConnectingPoint num="1" id="1038" /> +<TGConnectingPoint num="2" id="1039" /> +<TGConnectingPoint num="3" id="1040" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1050" > +<cdparam x="303" y="40" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="1049" /> +<P1 x="303" y="40" id="1166" /> +<P2 x="303" y="63" id="1169" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1048" > +<father id="1050" num="0" /> +<cdparam x="303" y="80" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1044" /> +<TGConnectingPoint num="1" id="1045" /> +<TGConnectingPoint num="2" id="1046" /> +<TGConnectingPoint num="3" id="1047" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5104" id="1061" > +<cdparam x="265" y="141" /> +<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="getCoin(x)" /> +<TGConnectingPoint num="0" id="1051" /> +<TGConnectingPoint num="1" id="1052" /> +<TGConnectingPoint num="2" id="1053" /> +<TGConnectingPoint num="3" id="1054" /> +<TGConnectingPoint num="4" id="1055" /> +<TGConnectingPoint num="5" id="1056" /> +<TGConnectingPoint num="6" id="1057" /> +<TGConnectingPoint num="7" id="1058" /> +<TGConnectingPoint num="8" id="1059" /> +<TGConnectingPoint num="9" id="1060" /> +</COMPONENT> + +<COMPONENT type="5103" id="1072" > +<cdparam x="629" y="321" /> +<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" /> +<TGConnectingPoint num="0" id="1062" /> +<TGConnectingPoint num="1" id="1063" /> +<TGConnectingPoint num="2" id="1064" /> +<TGConnectingPoint num="3" id="1065" /> +<TGConnectingPoint num="4" id="1066" /> +<TGConnectingPoint num="5" id="1067" /> +<TGConnectingPoint num="6" id="1068" /> +<TGConnectingPoint num="7" id="1069" /> +<TGConnectingPoint num="8" id="1070" /> +<TGConnectingPoint num="9" id="1071" /> +</COMPONENT> + +<COMPONENT type="5104" id="1083" > +<cdparam x="236" y="280" /> +<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="getCoin(x)" /> +<TGConnectingPoint num="0" id="1073" /> +<TGConnectingPoint num="1" id="1074" /> +<TGConnectingPoint num="2" id="1075" /> +<TGConnectingPoint num="3" id="1076" /> +<TGConnectingPoint num="4" id="1077" /> +<TGConnectingPoint num="5" id="1078" /> +<TGConnectingPoint num="6" id="1079" /> +<TGConnectingPoint num="7" id="1080" /> +<TGConnectingPoint num="8" id="1081" /> +<TGConnectingPoint num="9" id="1082" /> +<accessibility /> +</COMPONENT> + +<COMPONENT type="5106" id="1124" > +<cdparam x="649" y="239" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="ejectState" /> +<TGConnectingPoint num="0" id="1084" /> +<TGConnectingPoint num="1" id="1085" /> +<TGConnectingPoint num="2" id="1086" /> +<TGConnectingPoint num="3" id="1087" /> +<TGConnectingPoint num="4" id="1088" /> +<TGConnectingPoint num="5" id="1089" /> +<TGConnectingPoint num="6" id="1090" /> +<TGConnectingPoint num="7" id="1091" /> +<TGConnectingPoint num="8" id="1092" /> +<TGConnectingPoint num="9" id="1093" /> +<TGConnectingPoint num="10" id="1094" /> +<TGConnectingPoint num="11" id="1095" /> +<TGConnectingPoint num="12" id="1096" /> +<TGConnectingPoint num="13" id="1097" /> +<TGConnectingPoint num="14" id="1098" /> +<TGConnectingPoint num="15" id="1099" /> +<TGConnectingPoint num="16" id="1100" /> +<TGConnectingPoint num="17" id="1101" /> +<TGConnectingPoint num="18" id="1102" /> +<TGConnectingPoint num="19" id="1103" /> +<TGConnectingPoint num="20" id="1104" /> +<TGConnectingPoint num="21" id="1105" /> +<TGConnectingPoint num="22" id="1106" /> +<TGConnectingPoint num="23" id="1107" /> +<TGConnectingPoint num="24" id="1108" /> +<TGConnectingPoint num="25" id="1109" /> +<TGConnectingPoint num="26" id="1110" /> +<TGConnectingPoint num="27" id="1111" /> +<TGConnectingPoint num="28" id="1112" /> +<TGConnectingPoint num="29" id="1113" /> +<TGConnectingPoint num="30" id="1114" /> +<TGConnectingPoint num="31" id="1115" /> +<TGConnectingPoint num="32" id="1116" /> +<TGConnectingPoint num="33" id="1117" /> +<TGConnectingPoint num="34" id="1118" /> +<TGConnectingPoint num="35" id="1119" /> +<TGConnectingPoint num="36" id="1120" /> +<TGConnectingPoint num="37" id="1121" /> +<TGConnectingPoint num="38" id="1122" /> +<TGConnectingPoint num="39" id="1123" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="1165" > +<cdparam x="231" y="188" /> +<sizeparam width="157" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForSecondCoin" /> +<TGConnectingPoint num="0" id="1125" /> +<TGConnectingPoint num="1" id="1126" /> +<TGConnectingPoint num="2" id="1127" /> +<TGConnectingPoint num="3" id="1128" /> +<TGConnectingPoint num="4" id="1129" /> +<TGConnectingPoint num="5" id="1130" /> +<TGConnectingPoint num="6" id="1131" /> +<TGConnectingPoint num="7" id="1132" /> +<TGConnectingPoint num="8" id="1133" /> +<TGConnectingPoint num="9" id="1134" /> +<TGConnectingPoint num="10" id="1135" /> +<TGConnectingPoint num="11" id="1136" /> +<TGConnectingPoint num="12" id="1137" /> +<TGConnectingPoint num="13" id="1138" /> +<TGConnectingPoint num="14" id="1139" /> +<TGConnectingPoint num="15" id="1140" /> +<TGConnectingPoint num="16" id="1141" /> +<TGConnectingPoint num="17" id="1142" /> +<TGConnectingPoint num="18" id="1143" /> +<TGConnectingPoint num="19" id="1144" /> +<TGConnectingPoint num="20" id="1145" /> +<TGConnectingPoint num="21" id="1146" /> +<TGConnectingPoint num="22" id="1147" /> +<TGConnectingPoint num="23" id="1148" /> +<TGConnectingPoint num="24" id="1149" /> +<TGConnectingPoint num="25" id="1150" /> +<TGConnectingPoint num="26" id="1151" /> +<TGConnectingPoint num="27" id="1152" /> +<TGConnectingPoint num="28" id="1153" /> +<TGConnectingPoint num="29" id="1154" /> +<TGConnectingPoint num="30" id="1155" /> +<TGConnectingPoint num="31" id="1156" /> +<TGConnectingPoint num="32" id="1157" /> +<TGConnectingPoint num="33" id="1158" /> +<TGConnectingPoint num="34" id="1159" /> +<TGConnectingPoint num="35" id="1160" /> +<TGConnectingPoint num="36" id="1161" /> +<TGConnectingPoint num="37" id="1162" /> +<TGConnectingPoint num="38" id="1163" /> +<TGConnectingPoint num="39" id="1164" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="1167" > +<cdparam x="296" y="20" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1166" /> +</COMPONENT> + +<COMPONENT type="5106" id="1208" > +<cdparam x="235" y="63" /> +<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForFirstCoin" /> +<TGConnectingPoint num="0" id="1168" /> +<TGConnectingPoint num="1" id="1169" /> +<TGConnectingPoint num="2" id="1170" /> +<TGConnectingPoint num="3" id="1171" /> +<TGConnectingPoint num="4" id="1172" /> +<TGConnectingPoint num="5" id="1173" /> +<TGConnectingPoint num="6" id="1174" /> +<TGConnectingPoint num="7" id="1175" /> +<TGConnectingPoint num="8" id="1176" /> +<TGConnectingPoint num="9" id="1177" /> +<TGConnectingPoint num="10" id="1178" /> +<TGConnectingPoint num="11" id="1179" /> +<TGConnectingPoint num="12" id="1180" /> +<TGConnectingPoint num="13" id="1181" /> +<TGConnectingPoint num="14" id="1182" /> +<TGConnectingPoint num="15" id="1183" /> +<TGConnectingPoint num="16" id="1184" /> +<TGConnectingPoint num="17" id="1185" /> +<TGConnectingPoint num="18" id="1186" /> +<TGConnectingPoint num="19" id="1187" /> +<TGConnectingPoint num="20" id="1188" /> +<TGConnectingPoint num="21" id="1189" /> +<TGConnectingPoint num="22" id="1190" /> +<TGConnectingPoint num="23" id="1191" /> +<TGConnectingPoint num="24" id="1192" /> +<TGConnectingPoint num="25" id="1193" /> +<TGConnectingPoint num="26" id="1194" /> +<TGConnectingPoint num="27" id="1195" /> +<TGConnectingPoint num="28" id="1196" /> +<TGConnectingPoint num="29" id="1197" /> +<TGConnectingPoint num="30" id="1198" /> +<TGConnectingPoint num="31" id="1199" /> +<TGConnectingPoint num="32" id="1200" /> +<TGConnectingPoint num="33" id="1201" /> +<TGConnectingPoint num="34" id="1202" /> +<TGConnectingPoint num="35" id="1203" /> +<TGConnectingPoint num="36" id="1204" /> +<TGConnectingPoint num="37" id="1205" /> +<TGConnectingPoint num="38" id="1206" /> +<TGConnectingPoint num="39" id="1207" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="1249" > +<cdparam x="221" y="748" /> +<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForFirstCoin" /> +<TGConnectingPoint num="0" id="1209" /> +<TGConnectingPoint num="1" id="1210" /> +<TGConnectingPoint num="2" id="1211" /> +<TGConnectingPoint num="3" id="1212" /> +<TGConnectingPoint num="4" id="1213" /> +<TGConnectingPoint num="5" id="1214" /> +<TGConnectingPoint num="6" id="1215" /> +<TGConnectingPoint num="7" id="1216" /> +<TGConnectingPoint num="8" id="1217" /> +<TGConnectingPoint num="9" id="1218" /> +<TGConnectingPoint num="10" id="1219" /> +<TGConnectingPoint num="11" id="1220" /> +<TGConnectingPoint num="12" id="1221" /> +<TGConnectingPoint num="13" id="1222" /> +<TGConnectingPoint num="14" id="1223" /> +<TGConnectingPoint num="15" id="1224" /> +<TGConnectingPoint num="16" id="1225" /> +<TGConnectingPoint num="17" id="1226" /> +<TGConnectingPoint num="18" id="1227" /> +<TGConnectingPoint num="19" id="1228" /> +<TGConnectingPoint num="20" id="1229" /> +<TGConnectingPoint num="21" id="1230" /> +<TGConnectingPoint num="22" id="1231" /> +<TGConnectingPoint num="23" id="1232" /> +<TGConnectingPoint num="24" id="1233" /> +<TGConnectingPoint num="25" id="1234" /> +<TGConnectingPoint num="26" id="1235" /> +<TGConnectingPoint num="27" id="1236" /> +<TGConnectingPoint num="28" id="1237" /> +<TGConnectingPoint num="29" id="1238" /> +<TGConnectingPoint num="30" id="1239" /> +<TGConnectingPoint num="31" id="1240" /> +<TGConnectingPoint num="32" id="1241" /> +<TGConnectingPoint num="33" id="1242" /> +<TGConnectingPoint num="34" id="1243" /> +<TGConnectingPoint num="35" id="1244" /> +<TGConnectingPoint num="36" id="1245" /> +<TGConnectingPoint num="37" id="1246" /> +<TGConnectingPoint num="38" id="1247" /> +<TGConnectingPoint num="39" id="1248" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="1290" > +<cdparam x="631" y="381" /> +<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForFirstCoin" /> +<TGConnectingPoint num="0" id="1250" /> +<TGConnectingPoint num="1" id="1251" /> +<TGConnectingPoint num="2" id="1252" /> +<TGConnectingPoint num="3" id="1253" /> +<TGConnectingPoint num="4" id="1254" /> +<TGConnectingPoint num="5" id="1255" /> +<TGConnectingPoint num="6" id="1256" /> +<TGConnectingPoint num="7" id="1257" /> +<TGConnectingPoint num="8" id="1258" /> +<TGConnectingPoint num="9" id="1259" /> +<TGConnectingPoint num="10" id="1260" /> +<TGConnectingPoint num="11" id="1261" /> +<TGConnectingPoint num="12" id="1262" /> +<TGConnectingPoint num="13" id="1263" /> +<TGConnectingPoint num="14" id="1264" /> +<TGConnectingPoint num="15" id="1265" /> +<TGConnectingPoint num="16" id="1266" /> +<TGConnectingPoint num="17" id="1267" /> +<TGConnectingPoint num="18" id="1268" /> +<TGConnectingPoint num="19" id="1269" /> +<TGConnectingPoint num="20" id="1270" /> +<TGConnectingPoint num="21" id="1271" /> +<TGConnectingPoint num="22" id="1272" /> +<TGConnectingPoint num="23" id="1273" /> +<TGConnectingPoint num="24" id="1274" /> +<TGConnectingPoint num="25" id="1275" /> +<TGConnectingPoint num="26" id="1276" /> +<TGConnectingPoint num="27" id="1277" /> +<TGConnectingPoint num="28" id="1278" /> +<TGConnectingPoint num="29" id="1279" /> +<TGConnectingPoint num="30" id="1280" /> +<TGConnectingPoint num="31" id="1281" /> +<TGConnectingPoint num="32" id="1282" /> +<TGConnectingPoint num="33" id="1283" /> +<TGConnectingPoint num="34" id="1284" /> +<TGConnectingPoint num="35" id="1285" /> +<TGConnectingPoint num="36" id="1286" /> +<TGConnectingPoint num="37" id="1287" /> +<TGConnectingPoint num="38" id="1288" /> +<TGConnectingPoint num="39" id="1289" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="1407" > +<cdparam x="18" y="370" /> +<sizeparam width="577" height="354" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="Beverage" /> +<TGConnectingPoint num="0" id="1367" /> +<TGConnectingPoint num="1" id="1368" /> +<TGConnectingPoint num="2" id="1369" /> +<TGConnectingPoint num="3" id="1370" /> +<TGConnectingPoint num="4" id="1371" /> +<TGConnectingPoint num="5" id="1372" /> +<TGConnectingPoint num="6" id="1373" /> +<TGConnectingPoint num="7" id="1374" /> +<TGConnectingPoint num="8" id="1375" /> +<TGConnectingPoint num="9" id="1376" /> +<TGConnectingPoint num="10" id="1377" /> +<TGConnectingPoint num="11" id="1378" /> +<TGConnectingPoint num="12" id="1379" /> +<TGConnectingPoint num="13" id="1380" /> +<TGConnectingPoint num="14" id="1381" /> +<TGConnectingPoint num="15" id="1382" /> +<TGConnectingPoint num="16" id="1383" /> +<TGConnectingPoint num="17" id="1384" /> +<TGConnectingPoint num="18" id="1385" /> +<TGConnectingPoint num="19" id="1386" /> +<TGConnectingPoint num="20" id="1387" /> +<TGConnectingPoint num="21" id="1388" /> +<TGConnectingPoint num="22" id="1389" /> +<TGConnectingPoint num="23" id="1390" /> +<TGConnectingPoint num="24" id="1391" /> +<TGConnectingPoint num="25" id="1392" /> +<TGConnectingPoint num="26" id="1393" /> +<TGConnectingPoint num="27" id="1394" /> +<TGConnectingPoint num="28" id="1395" /> +<TGConnectingPoint num="29" id="1396" /> +<TGConnectingPoint num="30" id="1397" /> +<TGConnectingPoint num="31" id="1398" /> +<TGConnectingPoint num="32" id="1399" /> +<TGConnectingPoint num="33" id="1400" /> +<TGConnectingPoint num="34" id="1401" /> +<TGConnectingPoint num="35" id="1402" /> +<TGConnectingPoint num="36" id="1403" /> +<TGConnectingPoint num="37" id="1404" /> +<TGConnectingPoint num="38" id="1405" /> +<TGConnectingPoint num="39" id="1406" /> +<extraparam> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="5103" id="1301" > +<father id="1407" num="0" /> +<cdparam x="367" y="500" /> +<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="447" minY="0" maxY="334" /> +<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" /> +<TGConnectingPoint num="0" id="1291" /> +<TGConnectingPoint num="1" id="1292" /> +<TGConnectingPoint num="2" id="1293" /> +<TGConnectingPoint num="3" id="1294" /> +<TGConnectingPoint num="4" id="1295" /> +<TGConnectingPoint num="5" id="1296" /> +<TGConnectingPoint num="6" id="1297" /> +<TGConnectingPoint num="7" id="1298" /> +<TGConnectingPoint num="8" id="1299" /> +<TGConnectingPoint num="9" id="1300" /> +<accessibility /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5104" id="1312" > +<father id="1407" num="1" /> +<cdparam x="51" y="527" /> +<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="450" minY="0" maxY="334" /> +<infoparam name="Send signal" value="pushCoffeeButton()" /> +<TGConnectingPoint num="0" id="1302" /> +<TGConnectingPoint num="1" id="1303" /> +<TGConnectingPoint num="2" id="1304" /> +<TGConnectingPoint num="3" id="1305" /> +<TGConnectingPoint num="4" id="1306" /> +<TGConnectingPoint num="5" id="1307" /> +<TGConnectingPoint num="6" id="1308" /> +<TGConnectingPoint num="7" id="1309" /> +<TGConnectingPoint num="8" id="1310" /> +<TGConnectingPoint num="9" id="1311" /> +<accessibility /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5100" id="1314" > +<father id="1407" num="2" /> +<cdparam x="249" y="399" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="562" minY="0" maxY="339" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1313" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5106" id="1355" > +<father id="1407" num="3" /> +<cdparam x="189" y="435" /> +<sizeparam width="132" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="445" minY="0" maxY="314" /> +<infoparam name="state0" value="WaitingForSelection" /> +<TGConnectingPoint num="0" id="1315" /> +<TGConnectingPoint num="1" id="1316" /> +<TGConnectingPoint num="2" id="1317" /> +<TGConnectingPoint num="3" id="1318" /> +<TGConnectingPoint num="4" id="1319" /> +<TGConnectingPoint num="5" id="1320" /> +<TGConnectingPoint num="6" id="1321" /> +<TGConnectingPoint num="7" id="1322" /> +<TGConnectingPoint num="8" id="1323" /> +<TGConnectingPoint num="9" id="1324" /> +<TGConnectingPoint num="10" id="1325" /> +<TGConnectingPoint num="11" id="1326" /> +<TGConnectingPoint num="12" id="1327" /> +<TGConnectingPoint num="13" id="1328" /> +<TGConnectingPoint num="14" id="1329" /> +<TGConnectingPoint num="15" id="1330" /> +<TGConnectingPoint num="16" id="1331" /> +<TGConnectingPoint num="17" id="1332" /> +<TGConnectingPoint num="18" id="1333" /> +<TGConnectingPoint num="19" id="1334" /> +<TGConnectingPoint num="20" id="1335" /> +<TGConnectingPoint num="21" id="1336" /> +<TGConnectingPoint num="22" id="1337" /> +<TGConnectingPoint num="23" id="1338" /> +<TGConnectingPoint num="24" id="1339" /> +<TGConnectingPoint num="25" id="1340" /> +<TGConnectingPoint num="26" id="1341" /> +<TGConnectingPoint num="27" id="1342" /> +<TGConnectingPoint num="28" id="1343" /> +<TGConnectingPoint num="29" id="1344" /> +<TGConnectingPoint num="30" id="1345" /> +<TGConnectingPoint num="31" id="1346" /> +<TGConnectingPoint num="32" id="1347" /> +<TGConnectingPoint num="33" id="1348" /> +<TGConnectingPoint num="34" id="1349" /> +<TGConnectingPoint num="35" id="1350" /> +<TGConnectingPoint num="36" id="1351" /> +<TGConnectingPoint num="37" id="1352" /> +<TGConnectingPoint num="38" id="1353" /> +<TGConnectingPoint num="39" id="1354" /> +<extraparam> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="5104" id="1366" > +<father id="1407" num="4" /> +<cdparam x="231" y="527" /> +<sizeparam width="124" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="465" minY="0" maxY="334" /> +<infoparam name="Send signal" value="pushTeaButton()" /> +<TGConnectingPoint num="0" id="1356" /> +<TGConnectingPoint num="1" id="1357" /> +<TGConnectingPoint num="2" id="1358" /> +<TGConnectingPoint num="3" id="1359" /> +<TGConnectingPoint num="4" id="1360" /> +<TGConnectingPoint num="5" id="1361" /> +<TGConnectingPoint num="6" id="1362" /> +<TGConnectingPoint num="7" id="1363" /> +<TGConnectingPoint num="8" id="1364" /> +<TGConnectingPoint num="9" id="1365" /> +<accessibility /> +</SUBCOMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="CoffeeButton" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="1414" > +<cdparam x="177" y="199" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1413" /> +<P1 x="340" y="233" id="1520" /> +<P2 x="353" y="252" id="1522" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1412" > +<father id="1414" num="0" /> +<cdparam x="177" y="239" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1408" /> +<TGConnectingPoint num="1" id="1409" /> +<TGConnectingPoint num="2" id="1410" /> +<TGConnectingPoint num="3" id="1411" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1421" > +<cdparam x="322" y="69" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="1420" /> +<P1 x="322" y="69" id="1518" /> +<P2 x="323" y="88" id="1478" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1419" > +<father id="1421" num="0" /> +<cdparam x="322" y="109" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1415" /> +<TGConnectingPoint num="1" id="1416" /> +<TGConnectingPoint num="2" id="1417" /> +<TGConnectingPoint num="3" id="1418" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1428" > +<cdparam x="377" y="144" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1427" /> +<P1 x="323" y="118" id="1483" /> +<P2 x="356" y="174" id="1534" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1426" > +<father id="1428" num="0" /> +<cdparam x="377" y="184" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1422" /> +<TGConnectingPoint num="1" id="1423" /> +<TGConnectingPoint num="2" id="1424" /> +<TGConnectingPoint num="3" id="1425" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1435" > +<cdparam x="377" y="187" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1434" /> +<P1 x="353" y="282" id="1523" /> +<P2 x="399" y="352" id="1437" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1433" > +<father id="1435" num="0" /> +<cdparam x="417" y="335" /> +<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1429" /> +<TGConnectingPoint num="1" id="1430" /> +<TGConnectingPoint num="2" id="1431" /> +<TGConnectingPoint num="3" id="1432" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="mechanicalDelay" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5106" id="1476" > +<cdparam x="374" y="352" /> +<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="1436" /> +<TGConnectingPoint num="1" id="1437" /> +<TGConnectingPoint num="2" id="1438" /> +<TGConnectingPoint num="3" id="1439" /> +<TGConnectingPoint num="4" id="1440" /> +<TGConnectingPoint num="5" id="1441" /> +<TGConnectingPoint num="6" id="1442" /> +<TGConnectingPoint num="7" id="1443" /> +<TGConnectingPoint num="8" id="1444" /> +<TGConnectingPoint num="9" id="1445" /> +<TGConnectingPoint num="10" id="1446" /> +<TGConnectingPoint num="11" id="1447" /> +<TGConnectingPoint num="12" id="1448" /> +<TGConnectingPoint num="13" id="1449" /> +<TGConnectingPoint num="14" id="1450" /> +<TGConnectingPoint num="15" id="1451" /> +<TGConnectingPoint num="16" id="1452" /> +<TGConnectingPoint num="17" id="1453" /> +<TGConnectingPoint num="18" id="1454" /> +<TGConnectingPoint num="19" id="1455" /> +<TGConnectingPoint num="20" id="1456" /> +<TGConnectingPoint num="21" id="1457" /> +<TGConnectingPoint num="22" id="1458" /> +<TGConnectingPoint num="23" id="1459" /> +<TGConnectingPoint num="24" id="1460" /> +<TGConnectingPoint num="25" id="1461" /> +<TGConnectingPoint num="26" id="1462" /> +<TGConnectingPoint num="27" id="1463" /> +<TGConnectingPoint num="28" id="1464" /> +<TGConnectingPoint num="29" id="1465" /> +<TGConnectingPoint num="30" id="1466" /> +<TGConnectingPoint num="31" id="1467" /> +<TGConnectingPoint num="32" id="1468" /> +<TGConnectingPoint num="33" id="1469" /> +<TGConnectingPoint num="34" id="1470" /> +<TGConnectingPoint num="35" id="1471" /> +<TGConnectingPoint num="36" id="1472" /> +<TGConnectingPoint num="37" id="1473" /> +<TGConnectingPoint num="38" id="1474" /> +<TGConnectingPoint num="39" id="1475" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="1517" > +<cdparam x="298" y="88" /> +<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="1477" /> +<TGConnectingPoint num="1" id="1478" /> +<TGConnectingPoint num="2" id="1479" /> +<TGConnectingPoint num="3" id="1480" /> +<TGConnectingPoint num="4" id="1481" /> +<TGConnectingPoint num="5" id="1482" /> +<TGConnectingPoint num="6" id="1483" /> +<TGConnectingPoint num="7" id="1484" /> +<TGConnectingPoint num="8" id="1485" /> +<TGConnectingPoint num="9" id="1486" /> +<TGConnectingPoint num="10" id="1487" /> +<TGConnectingPoint num="11" id="1488" /> +<TGConnectingPoint num="12" id="1489" /> +<TGConnectingPoint num="13" id="1490" /> +<TGConnectingPoint num="14" id="1491" /> +<TGConnectingPoint num="15" id="1492" /> +<TGConnectingPoint num="16" id="1493" /> +<TGConnectingPoint num="17" id="1494" /> +<TGConnectingPoint num="18" id="1495" /> +<TGConnectingPoint num="19" id="1496" /> +<TGConnectingPoint num="20" id="1497" /> +<TGConnectingPoint num="21" id="1498" /> +<TGConnectingPoint num="22" id="1499" /> +<TGConnectingPoint num="23" id="1500" /> +<TGConnectingPoint num="24" id="1501" /> +<TGConnectingPoint num="25" id="1502" /> +<TGConnectingPoint num="26" id="1503" /> +<TGConnectingPoint num="27" id="1504" /> +<TGConnectingPoint num="28" id="1505" /> +<TGConnectingPoint num="29" id="1506" /> +<TGConnectingPoint num="30" id="1507" /> +<TGConnectingPoint num="31" id="1508" /> +<TGConnectingPoint num="32" id="1509" /> +<TGConnectingPoint num="33" id="1510" /> +<TGConnectingPoint num="34" id="1511" /> +<TGConnectingPoint num="35" id="1512" /> +<TGConnectingPoint num="36" id="1513" /> +<TGConnectingPoint num="37" id="1514" /> +<TGConnectingPoint num="38" id="1515" /> +<TGConnectingPoint num="39" id="1516" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="1519" > +<cdparam x="315" y="49" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1518" /> +</COMPONENT> + +<COMPONENT type="5106" id="1573" > +<cdparam x="264" y="174" /> +<sizeparam width="184" height="130" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="state0" /> +<TGConnectingPoint num="0" id="1533" /> +<TGConnectingPoint num="1" id="1534" /> +<TGConnectingPoint num="2" id="1535" /> +<TGConnectingPoint num="3" id="1536" /> +<TGConnectingPoint num="4" id="1537" /> +<TGConnectingPoint num="5" id="1538" /> +<TGConnectingPoint num="6" id="1539" /> +<TGConnectingPoint num="7" id="1540" /> +<TGConnectingPoint num="8" id="1541" /> +<TGConnectingPoint num="9" id="1542" /> +<TGConnectingPoint num="10" id="1543" /> +<TGConnectingPoint num="11" id="1544" /> +<TGConnectingPoint num="12" id="1545" /> +<TGConnectingPoint num="13" id="1546" /> +<TGConnectingPoint num="14" id="1547" /> +<TGConnectingPoint num="15" id="1548" /> +<TGConnectingPoint num="16" id="1549" /> +<TGConnectingPoint num="17" id="1550" /> +<TGConnectingPoint num="18" id="1551" /> +<TGConnectingPoint num="19" id="1552" /> +<TGConnectingPoint num="20" id="1553" /> +<TGConnectingPoint num="21" id="1554" /> +<TGConnectingPoint num="22" id="1555" /> +<TGConnectingPoint num="23" id="1556" /> +<TGConnectingPoint num="24" id="1557" /> +<TGConnectingPoint num="25" id="1558" /> +<TGConnectingPoint num="26" id="1559" /> +<TGConnectingPoint num="27" id="1560" /> +<TGConnectingPoint num="28" id="1561" /> +<TGConnectingPoint num="29" id="1562" /> +<TGConnectingPoint num="30" id="1563" /> +<TGConnectingPoint num="31" id="1564" /> +<TGConnectingPoint num="32" id="1565" /> +<TGConnectingPoint num="33" id="1566" /> +<TGConnectingPoint num="34" id="1567" /> +<TGConnectingPoint num="35" id="1568" /> +<TGConnectingPoint num="36" id="1569" /> +<TGConnectingPoint num="37" id="1570" /> +<TGConnectingPoint num="38" id="1571" /> +<TGConnectingPoint num="39" id="1572" /> +<extraparam> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="5100" id="1521" > +<father id="1573" num="0" /> +<cdparam x="333" y="213" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="169" minY="0" maxY="115" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1520" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5103" id="1532" > +<father id="1573" num="1" /> +<cdparam x="328" y="257" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="138" minY="0" maxY="110" /> +<infoparam name="Send signal" value="push()" /> +<TGConnectingPoint num="0" id="1522" /> +<TGConnectingPoint num="1" id="1523" /> +<TGConnectingPoint num="2" id="1524" /> +<TGConnectingPoint num="3" id="1525" /> +<TGConnectingPoint num="4" id="1526" /> +<TGConnectingPoint num="5" id="1527" /> +<TGConnectingPoint num="6" id="1528" /> +<TGConnectingPoint num="7" id="1529" /> +<TGConnectingPoint num="8" id="1530" /> +<TGConnectingPoint num="9" id="1531" /> +</SUBCOMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="TeaButton" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="1580" > +<cdparam x="363" y="193" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1579" /> +<P1 x="363" y="204" id="1596" /> +<P2 x="362" y="257" id="1607" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1578" > +<father id="1580" num="0" /> +<cdparam x="380" y="228" /> +<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1574" /> +<TGConnectingPoint num="1" id="1575" /> +<TGConnectingPoint num="2" id="1576" /> +<TGConnectingPoint num="3" id="1577" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="mechanicalDelay" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1587" > +<cdparam x="363" y="150" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1586" /> +<P1 x="363" y="150" id="1653" /> +<P2 x="363" y="174" id="1595" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1585" > +<father id="1587" num="0" /> +<cdparam x="363" y="190" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1581" /> +<TGConnectingPoint num="1" id="1582" /> +<TGConnectingPoint num="2" id="1583" /> +<TGConnectingPoint num="3" id="1584" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1594" > +<cdparam x="362" y="101" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="1593" /> +<P1 x="362" y="101" id="1688" /> +<P2 x="363" y="120" id="1648" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1592" > +<father id="1594" num="0" /> +<cdparam x="362" y="141" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1588" /> +<TGConnectingPoint num="1" id="1589" /> +<TGConnectingPoint num="2" id="1590" /> +<TGConnectingPoint num="3" id="1591" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5103" id="1605" > +<cdparam x="338" y="179" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="push()" /> +<TGConnectingPoint num="0" id="1595" /> +<TGConnectingPoint num="1" id="1596" /> +<TGConnectingPoint num="2" id="1597" /> +<TGConnectingPoint num="3" id="1598" /> +<TGConnectingPoint num="4" id="1599" /> +<TGConnectingPoint num="5" id="1600" /> +<TGConnectingPoint num="6" id="1601" /> +<TGConnectingPoint num="7" id="1602" /> +<TGConnectingPoint num="8" id="1603" /> +<TGConnectingPoint num="9" id="1604" /> +</COMPONENT> + +<COMPONENT type="5106" id="1646" > +<cdparam x="337" y="257" /> +<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="1606" /> +<TGConnectingPoint num="1" id="1607" /> +<TGConnectingPoint num="2" id="1608" /> +<TGConnectingPoint num="3" id="1609" /> +<TGConnectingPoint num="4" id="1610" /> +<TGConnectingPoint num="5" id="1611" /> +<TGConnectingPoint num="6" id="1612" /> +<TGConnectingPoint num="7" id="1613" /> +<TGConnectingPoint num="8" id="1614" /> +<TGConnectingPoint num="9" id="1615" /> +<TGConnectingPoint num="10" id="1616" /> +<TGConnectingPoint num="11" id="1617" /> +<TGConnectingPoint num="12" id="1618" /> +<TGConnectingPoint num="13" id="1619" /> +<TGConnectingPoint num="14" id="1620" /> +<TGConnectingPoint num="15" id="1621" /> +<TGConnectingPoint num="16" id="1622" /> +<TGConnectingPoint num="17" id="1623" /> +<TGConnectingPoint num="18" id="1624" /> +<TGConnectingPoint num="19" id="1625" /> +<TGConnectingPoint num="20" id="1626" /> +<TGConnectingPoint num="21" id="1627" /> +<TGConnectingPoint num="22" id="1628" /> +<TGConnectingPoint num="23" id="1629" /> +<TGConnectingPoint num="24" id="1630" /> +<TGConnectingPoint num="25" id="1631" /> +<TGConnectingPoint num="26" id="1632" /> +<TGConnectingPoint num="27" id="1633" /> +<TGConnectingPoint num="28" id="1634" /> +<TGConnectingPoint num="29" id="1635" /> +<TGConnectingPoint num="30" id="1636" /> +<TGConnectingPoint num="31" id="1637" /> +<TGConnectingPoint num="32" id="1638" /> +<TGConnectingPoint num="33" id="1639" /> +<TGConnectingPoint num="34" id="1640" /> +<TGConnectingPoint num="35" id="1641" /> +<TGConnectingPoint num="36" id="1642" /> +<TGConnectingPoint num="37" id="1643" /> +<TGConnectingPoint num="38" id="1644" /> +<TGConnectingPoint num="39" id="1645" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="1687" > +<cdparam x="338" y="120" /> +<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="1647" /> +<TGConnectingPoint num="1" id="1648" /> +<TGConnectingPoint num="2" id="1649" /> +<TGConnectingPoint num="3" id="1650" /> +<TGConnectingPoint num="4" id="1651" /> +<TGConnectingPoint num="5" id="1652" /> +<TGConnectingPoint num="6" id="1653" /> +<TGConnectingPoint num="7" id="1654" /> +<TGConnectingPoint num="8" id="1655" /> +<TGConnectingPoint num="9" id="1656" /> +<TGConnectingPoint num="10" id="1657" /> +<TGConnectingPoint num="11" id="1658" /> +<TGConnectingPoint num="12" id="1659" /> +<TGConnectingPoint num="13" id="1660" /> +<TGConnectingPoint num="14" id="1661" /> +<TGConnectingPoint num="15" id="1662" /> +<TGConnectingPoint num="16" id="1663" /> +<TGConnectingPoint num="17" id="1664" /> +<TGConnectingPoint num="18" id="1665" /> +<TGConnectingPoint num="19" id="1666" /> +<TGConnectingPoint num="20" id="1667" /> +<TGConnectingPoint num="21" id="1668" /> +<TGConnectingPoint num="22" id="1669" /> +<TGConnectingPoint num="23" id="1670" /> +<TGConnectingPoint num="24" id="1671" /> +<TGConnectingPoint num="25" id="1672" /> +<TGConnectingPoint num="26" id="1673" /> +<TGConnectingPoint num="27" id="1674" /> +<TGConnectingPoint num="28" id="1675" /> +<TGConnectingPoint num="29" id="1676" /> +<TGConnectingPoint num="30" id="1677" /> +<TGConnectingPoint num="31" id="1678" /> +<TGConnectingPoint num="32" id="1679" /> +<TGConnectingPoint num="33" id="1680" /> +<TGConnectingPoint num="34" id="1681" /> +<TGConnectingPoint num="35" id="1682" /> +<TGConnectingPoint num="36" id="1683" /> +<TGConnectingPoint num="37" id="1684" /> +<TGConnectingPoint num="38" id="1685" /> +<TGConnectingPoint num="39" id="1686" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="1689" > +<cdparam x="355" y="81" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1688" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +</Modeling> + + + + +<Modeling type="AVATAR Design" nameTab="DesignWithNoCompositeState" > +<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="1400" minY="10" maxY="900" > +<MainCode value="void __user_init() {"/> +<MainCode value="}"/> +<Optimized value="true" /> +<Validated value="Wallet;CoffeeMachine;TeaButton;CoffeeButton;" /> +<Ignored value="" /> + +<CONNECTOR type="5002" id="1691" > +<cdparam x="321" y="567" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block1 to Block0" value="" /> +<TGConnectingPoint num="0" id="1690" /> +<P1 x="559" y="330" id="1778" /> +<P2 x="560" y="377" id="1836" /> +<AutomaticDrawing data="true" /> +<extraparam> +<isd value="in pushCoffeeButton()" /> +<oso value="out push()" /> +<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="5002" id="1693" > +<cdparam x="275" y="114" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block0 to Block0" value="" /> +<TGConnectingPoint num="0" id="1692" /> +<P1 x="306" y="109" id="1758" /> +<P2 x="445" y="108" id="1832" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in getCoin(int nbOfCoins)" /> +<osd value="out ejectCoin(int nbOfCoins)" /> +<isd value="in getCoin(int nbOfCoins)" /> +<oso value="out putCoin(int nbOfCoins)" /> +<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="5002" id="1695" > +<cdparam x="623" y="565" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block1 to Block0" value="" /> +<TGConnectingPoint num="0" id="1694" /> +<P1 x="789" y="326" id="1803" /> +<P2 x="790" y="377" id="1837" /> +<AutomaticDrawing data="true" /> +<extraparam> +<isd value="in pushTeaButton()" /> +<oso value="out push()" /> +<FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<COMPONENT type="303" id="1746" > +<cdparam x="92" y="385" /> +<sizeparam width="334" height="84" minWidth="80" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UPPAAL Pragma" value="A[] Wallet.nbOfCoins<3 +A[] CoffeeButton.main +A<> CoffeeMachine.WaitingForSelection +E<> CoffeeMachine.WaitingForSelection + +" /> +<TGConnectingPoint num="0" id="1730" /> +<TGConnectingPoint num="1" id="1731" /> +<TGConnectingPoint num="2" id="1732" /> +<TGConnectingPoint num="3" id="1733" /> +<TGConnectingPoint num="4" id="1734" /> +<TGConnectingPoint num="5" id="1735" /> +<TGConnectingPoint num="6" id="1736" /> +<TGConnectingPoint num="7" id="1737" /> +<TGConnectingPoint num="8" id="1738" /> +<TGConnectingPoint num="9" id="1739" /> +<TGConnectingPoint num="10" id="1740" /> +<TGConnectingPoint num="11" id="1741" /> +<TGConnectingPoint num="12" id="1742" /> +<TGConnectingPoint num="13" id="1743" /> +<TGConnectingPoint num="14" id="1744" /> +<TGConnectingPoint num="15" id="1745" /> +<extraparam> +<Line value="A[] Wallet.nbOfCoins<3" /> +<Line value="A[] CoffeeButton.main" /> +<Line value="A<> CoffeeMachine.WaitingForSelection" /> +<Line value="E<> CoffeeMachine.WaitingForSelection" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="1771" > +<cdparam x="106" y="55" /> +<sizeparam width="200" height="218" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="Wallet" /> +<TGConnectingPoint num="0" id="1747" /> +<TGConnectingPoint num="1" id="1748" /> +<TGConnectingPoint num="2" id="1749" /> +<TGConnectingPoint num="3" id="1750" /> +<TGConnectingPoint num="4" id="1751" /> +<TGConnectingPoint num="5" id="1752" /> +<TGConnectingPoint num="6" id="1753" /> +<TGConnectingPoint num="7" id="1754" /> +<TGConnectingPoint num="8" id="1755" /> +<TGConnectingPoint num="9" id="1756" /> +<TGConnectingPoint num="10" id="1757" /> +<TGConnectingPoint num="11" id="1758" /> +<TGConnectingPoint num="12" id="1759" /> +<TGConnectingPoint num="13" id="1760" /> +<TGConnectingPoint num="14" id="1761" /> +<TGConnectingPoint num="15" id="1762" /> +<TGConnectingPoint num="16" id="1763" /> +<TGConnectingPoint num="17" id="1764" /> +<TGConnectingPoint num="18" id="1765" /> +<TGConnectingPoint num="19" id="1766" /> +<TGConnectingPoint num="20" id="1767" /> +<TGConnectingPoint num="21" id="1768" /> +<TGConnectingPoint num="22" id="1769" /> +<TGConnectingPoint num="23" id="1770" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="nbOfCoins" value="2" type="8" typeOther="" /> +<Attribute access="0" id="x" value="1" type="8" typeOther="" /> +<Attribute access="0" id="minUserDelay" value="50" type="8" typeOther="" /> +<Attribute access="0" id="maxUserDelay" value="70" type="8" typeOther="" /> +<Method value="contentOfWallet(int nbOfCoins)" /> +<Signal value="in getCoin(int nbOfCoins)" attached="true" /> +<Signal value="out putCoin(int nbOfCoins)" attached="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="1846" > +<cdparam x="445" y="19" /> +<sizeparam width="461" height="358" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="CoffeeMachine" /> +<TGConnectingPoint num="0" id="1822" /> +<TGConnectingPoint num="1" id="1823" /> +<TGConnectingPoint num="2" id="1824" /> +<TGConnectingPoint num="3" id="1825" /> +<TGConnectingPoint num="4" id="1826" /> +<TGConnectingPoint num="5" id="1827" /> +<TGConnectingPoint num="6" id="1828" /> +<TGConnectingPoint num="7" id="1829" /> +<TGConnectingPoint num="8" id="1830" /> +<TGConnectingPoint num="9" id="1831" /> +<TGConnectingPoint num="10" id="1832" /> +<TGConnectingPoint num="11" id="1833" /> +<TGConnectingPoint num="12" id="1834" /> +<TGConnectingPoint num="13" id="1835" /> +<TGConnectingPoint num="14" id="1836" /> +<TGConnectingPoint num="15" id="1837" /> +<TGConnectingPoint num="16" id="1838" /> +<TGConnectingPoint num="17" id="1839" /> +<TGConnectingPoint num="18" id="1840" /> +<TGConnectingPoint num="19" id="1841" /> +<TGConnectingPoint num="20" id="1842" /> +<TGConnectingPoint num="21" id="1843" /> +<TGConnectingPoint num="22" id="1844" /> +<TGConnectingPoint num="23" id="1845" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="teaMinDelay" value="3" type="8" typeOther="" /> +<Attribute access="0" id="teaMaxDelay" value="8" type="8" typeOther="" /> +<Attribute access="0" id="coffeeMinDelay" value="5" type="8" typeOther="" /> +<Attribute access="0" id="coffeeMaxDelay" value="10" type="8" typeOther="" /> +<Attribute access="0" id="coinDelay" value="50" type="8" typeOther="" /> +<Attribute access="0" id="x" value="0" type="8" typeOther="" /> +<Attribute access="0" id="nbOfCoins" value="0" type="8" typeOther="" /> +<Method value="beverageReady()" /> +<Signal value="in pushCoffeeButton()" attached="true" /> +<Signal value="in pushTeaButton()" attached="true" /> +<Signal value="in getCoin(int nbOfCoins)" attached="true" /> +<Signal value="out ejectCoin(int nbOfCoins)" attached="true" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="5000" id="1796" > +<father id="1846" num="0" /> +<cdparam x="464" y="228" /> +<sizeparam width="190" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="271" minY="0" maxY="256" /> +<infoparam name="Block1" value="CoffeeButton" /> +<TGConnectingPoint num="0" id="1772" /> +<TGConnectingPoint num="1" id="1773" /> +<TGConnectingPoint num="2" id="1774" /> +<TGConnectingPoint num="3" id="1775" /> +<TGConnectingPoint num="4" id="1776" /> +<TGConnectingPoint num="5" id="1777" /> +<TGConnectingPoint num="6" id="1778" /> +<TGConnectingPoint num="7" id="1779" /> +<TGConnectingPoint num="8" id="1780" /> +<TGConnectingPoint num="9" id="1781" /> +<TGConnectingPoint num="10" id="1782" /> +<TGConnectingPoint num="11" id="1783" /> +<TGConnectingPoint num="12" id="1784" /> +<TGConnectingPoint num="13" id="1785" /> +<TGConnectingPoint num="14" id="1786" /> +<TGConnectingPoint num="15" id="1787" /> +<TGConnectingPoint num="16" id="1788" /> +<TGConnectingPoint num="17" id="1789" /> +<TGConnectingPoint num="18" id="1790" /> +<TGConnectingPoint num="19" id="1791" /> +<TGConnectingPoint num="20" id="1792" /> +<TGConnectingPoint num="21" id="1793" /> +<TGConnectingPoint num="22" id="1794" /> +<TGConnectingPoint num="23" id="1795" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="mechanicalDelay" value="80" type="8" typeOther="" /> +<Signal value="out push()" attached="true" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="5000" id="1821" > +<father id="1846" num="1" /> +<cdparam x="695" y="224" /> +<sizeparam width="189" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="272" minY="0" maxY="256" /> +<infoparam name="Block1" value="TeaButton" /> +<TGConnectingPoint num="0" id="1797" /> +<TGConnectingPoint num="1" id="1798" /> +<TGConnectingPoint num="2" id="1799" /> +<TGConnectingPoint num="3" id="1800" /> +<TGConnectingPoint num="4" id="1801" /> +<TGConnectingPoint num="5" id="1802" /> +<TGConnectingPoint num="6" id="1803" /> +<TGConnectingPoint num="7" id="1804" /> +<TGConnectingPoint num="8" id="1805" /> +<TGConnectingPoint num="9" id="1806" /> +<TGConnectingPoint num="10" id="1807" /> +<TGConnectingPoint num="11" id="1808" /> +<TGConnectingPoint num="12" id="1809" /> +<TGConnectingPoint num="13" id="1810" /> +<TGConnectingPoint num="14" id="1811" /> +<TGConnectingPoint num="15" id="1812" /> +<TGConnectingPoint num="16" id="1813" /> +<TGConnectingPoint num="17" id="1814" /> +<TGConnectingPoint num="18" id="1815" /> +<TGConnectingPoint num="19" id="1816" /> +<TGConnectingPoint num="20" id="1817" /> +<TGConnectingPoint num="21" id="1818" /> +<TGConnectingPoint num="22" id="1819" /> +<TGConnectingPoint num="23" id="1820" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="mechanicalDelay" value="10" type="8" typeOther="" /> +<Signal value="out push()" attached="true" /> +</extraparam> +</SUBCOMPONENT> + + +</AVATARBlockDiagramPanel> + +<AVATARStateMachineDiagramPanel name="Wallet" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="1853" > +<cdparam x="516" y="264" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1852" /> +<P1 x="485" y="219" id="1894" /> +<P2 x="485" y="274" id="1905" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1851" > +<father id="1853" num="0" /> +<cdparam x="493" y="251" /> +<sizeparam width="173" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1847" /> +<TGConnectingPoint num="1" id="1848" /> +<TGConnectingPoint num="2" id="1849" /> +<TGConnectingPoint num="3" id="1850" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="nbOfCoins = nbOfCoins + x" /> +<actions value="contentOfWallet(nbOfCoins)" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1860" > +<cdparam x="382" y="165" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1859" /> +<P1 x="382" y="165" id="2001" /> +<P2 x="485" y="189" id="1893" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1858" > +<father id="1860" num="0" /> +<cdparam x="382" y="205" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1854" /> +<TGConnectingPoint num="1" id="1855" /> +<TGConnectingPoint num="2" id="1856" /> +<TGConnectingPoint num="3" id="1857" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1867" > +<cdparam x="223" y="260" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1866" /> +<P1 x="251" y="231" id="1883" /> +<P2 x="252" y="300" id="1946" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1865" > +<father id="1867" num="0" /> +<cdparam x="163" y="252" /> +<sizeparam width="221" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1861" /> +<TGConnectingPoint num="1" id="1862" /> +<TGConnectingPoint num="2" id="1863" /> +<TGConnectingPoint num="3" id="1864" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="minUserDelay" /> +<afterMax value="maxUserDelay" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="nbOfCoins = nbOfCoins - x" /> +<actions value="contentOfWallet(nbOfCoins)" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1874" > +<cdparam x="357" y="165" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1873" /> +<P1 x="357" y="165" id="2000" /> +<P2 x="251" y="201" id="1882" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1872" > +<father id="1874" num="0" /> +<cdparam x="220" y="174" /> +<sizeparam width="99" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1868" /> +<TGConnectingPoint num="1" id="1869" /> +<TGConnectingPoint num="2" id="1870" /> +<TGConnectingPoint num="3" id="1871" /> +<extraparam> +<guard value="[nbOfCoins > 0]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1881" > +<cdparam x="369" y="115" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="1880" /> +<P1 x="370" y="64" id="2027" /> +<P2 x="370" y="135" id="1987" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1879" > +<father id="1881" num="0" /> +<cdparam x="376" y="105" /> +<sizeparam width="173" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1875" /> +<TGConnectingPoint num="1" id="1876" /> +<TGConnectingPoint num="2" id="1877" /> +<TGConnectingPoint num="3" id="1878" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="contentOfWallet(nbOfCoins)" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5103" id="1892" > +<cdparam x="214" y="206" /> +<sizeparam width="74" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="putCoin(x)" /> +<TGConnectingPoint num="0" id="1882" /> +<TGConnectingPoint num="1" id="1883" /> +<TGConnectingPoint num="2" id="1884" /> +<TGConnectingPoint num="3" id="1885" /> +<TGConnectingPoint num="4" id="1886" /> +<TGConnectingPoint num="5" id="1887" /> +<TGConnectingPoint num="6" id="1888" /> +<TGConnectingPoint num="7" id="1889" /> +<TGConnectingPoint num="8" id="1890" /> +<TGConnectingPoint num="9" id="1891" /> +</COMPONENT> + +<COMPONENT type="5104" id="1903" > +<cdparam x="444" y="194" /> +<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="getCoin(x)" /> +<TGConnectingPoint num="0" id="1893" /> +<TGConnectingPoint num="1" id="1894" /> +<TGConnectingPoint num="2" id="1895" /> +<TGConnectingPoint num="3" id="1896" /> +<TGConnectingPoint num="4" id="1897" /> +<TGConnectingPoint num="5" id="1898" /> +<TGConnectingPoint num="6" id="1899" /> +<TGConnectingPoint num="7" id="1900" /> +<TGConnectingPoint num="8" id="1901" /> +<TGConnectingPoint num="9" id="1902" /> +</COMPONENT> + +<COMPONENT type="5106" id="1944" > +<cdparam x="460" y="274" /> +<sizeparam width="50" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="1904" /> +<TGConnectingPoint num="1" id="1905" /> +<TGConnectingPoint num="2" id="1906" /> +<TGConnectingPoint num="3" id="1907" /> +<TGConnectingPoint num="4" id="1908" /> +<TGConnectingPoint num="5" id="1909" /> +<TGConnectingPoint num="6" id="1910" /> +<TGConnectingPoint num="7" id="1911" /> +<TGConnectingPoint num="8" id="1912" /> +<TGConnectingPoint num="9" id="1913" /> +<TGConnectingPoint num="10" id="1914" /> +<TGConnectingPoint num="11" id="1915" /> +<TGConnectingPoint num="12" id="1916" /> +<TGConnectingPoint num="13" id="1917" /> +<TGConnectingPoint num="14" id="1918" /> +<TGConnectingPoint num="15" id="1919" /> +<TGConnectingPoint num="16" id="1920" /> +<TGConnectingPoint num="17" id="1921" /> +<TGConnectingPoint num="18" id="1922" /> +<TGConnectingPoint num="19" id="1923" /> +<TGConnectingPoint num="20" id="1924" /> +<TGConnectingPoint num="21" id="1925" /> +<TGConnectingPoint num="22" id="1926" /> +<TGConnectingPoint num="23" id="1927" /> +<TGConnectingPoint num="24" id="1928" /> +<TGConnectingPoint num="25" id="1929" /> +<TGConnectingPoint num="26" id="1930" /> +<TGConnectingPoint num="27" id="1931" /> +<TGConnectingPoint num="28" id="1932" /> +<TGConnectingPoint num="29" id="1933" /> +<TGConnectingPoint num="30" id="1934" /> +<TGConnectingPoint num="31" id="1935" /> +<TGConnectingPoint num="32" id="1936" /> +<TGConnectingPoint num="33" id="1937" /> +<TGConnectingPoint num="34" id="1938" /> +<TGConnectingPoint num="35" id="1939" /> +<TGConnectingPoint num="36" id="1940" /> +<TGConnectingPoint num="37" id="1941" /> +<TGConnectingPoint num="38" id="1942" /> +<TGConnectingPoint num="39" id="1943" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="1985" > +<cdparam x="227" y="300" /> +<sizeparam width="50" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="1945" /> +<TGConnectingPoint num="1" id="1946" /> +<TGConnectingPoint num="2" id="1947" /> +<TGConnectingPoint num="3" id="1948" /> +<TGConnectingPoint num="4" id="1949" /> +<TGConnectingPoint num="5" id="1950" /> +<TGConnectingPoint num="6" id="1951" /> +<TGConnectingPoint num="7" id="1952" /> +<TGConnectingPoint num="8" id="1953" /> +<TGConnectingPoint num="9" id="1954" /> +<TGConnectingPoint num="10" id="1955" /> +<TGConnectingPoint num="11" id="1956" /> +<TGConnectingPoint num="12" id="1957" /> +<TGConnectingPoint num="13" id="1958" /> +<TGConnectingPoint num="14" id="1959" /> +<TGConnectingPoint num="15" id="1960" /> +<TGConnectingPoint num="16" id="1961" /> +<TGConnectingPoint num="17" id="1962" /> +<TGConnectingPoint num="18" id="1963" /> +<TGConnectingPoint num="19" id="1964" /> +<TGConnectingPoint num="20" id="1965" /> +<TGConnectingPoint num="21" id="1966" /> +<TGConnectingPoint num="22" id="1967" /> +<TGConnectingPoint num="23" id="1968" /> +<TGConnectingPoint num="24" id="1969" /> +<TGConnectingPoint num="25" id="1970" /> +<TGConnectingPoint num="26" id="1971" /> +<TGConnectingPoint num="27" id="1972" /> +<TGConnectingPoint num="28" id="1973" /> +<TGConnectingPoint num="29" id="1974" /> +<TGConnectingPoint num="30" id="1975" /> +<TGConnectingPoint num="31" id="1976" /> +<TGConnectingPoint num="32" id="1977" /> +<TGConnectingPoint num="33" id="1978" /> +<TGConnectingPoint num="34" id="1979" /> +<TGConnectingPoint num="35" id="1980" /> +<TGConnectingPoint num="36" id="1981" /> +<TGConnectingPoint num="37" id="1982" /> +<TGConnectingPoint num="38" id="1983" /> +<TGConnectingPoint num="39" id="1984" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="2026" > +<cdparam x="345" y="135" /> +<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="1986" /> +<TGConnectingPoint num="1" id="1987" /> +<TGConnectingPoint num="2" id="1988" /> +<TGConnectingPoint num="3" id="1989" /> +<TGConnectingPoint num="4" id="1990" /> +<TGConnectingPoint num="5" id="1991" /> +<TGConnectingPoint num="6" id="1992" /> +<TGConnectingPoint num="7" id="1993" /> +<TGConnectingPoint num="8" id="1994" /> +<TGConnectingPoint num="9" id="1995" /> +<TGConnectingPoint num="10" id="1996" /> +<TGConnectingPoint num="11" id="1997" /> +<TGConnectingPoint num="12" id="1998" /> +<TGConnectingPoint num="13" id="1999" /> +<TGConnectingPoint num="14" id="2000" /> +<TGConnectingPoint num="15" id="2001" /> +<TGConnectingPoint num="16" id="2002" /> +<TGConnectingPoint num="17" id="2003" /> +<TGConnectingPoint num="18" id="2004" /> +<TGConnectingPoint num="19" id="2005" /> +<TGConnectingPoint num="20" id="2006" /> +<TGConnectingPoint num="21" id="2007" /> +<TGConnectingPoint num="22" id="2008" /> +<TGConnectingPoint num="23" id="2009" /> +<TGConnectingPoint num="24" id="2010" /> +<TGConnectingPoint num="25" id="2011" /> +<TGConnectingPoint num="26" id="2012" /> +<TGConnectingPoint num="27" id="2013" /> +<TGConnectingPoint num="28" id="2014" /> +<TGConnectingPoint num="29" id="2015" /> +<TGConnectingPoint num="30" id="2016" /> +<TGConnectingPoint num="31" id="2017" /> +<TGConnectingPoint num="32" id="2018" /> +<TGConnectingPoint num="33" id="2019" /> +<TGConnectingPoint num="34" id="2020" /> +<TGConnectingPoint num="35" id="2021" /> +<TGConnectingPoint num="36" id="2022" /> +<TGConnectingPoint num="37" id="2023" /> +<TGConnectingPoint num="38" id="2024" /> +<TGConnectingPoint num="39" id="2025" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="2028" > +<cdparam x="363" y="44" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="2027" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="CoffeeMachine" minX="10" maxX="1400" minY="10" maxY="1400" > +<CONNECTOR type="5102" id="2035" > +<cdparam x="691" y="288" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2034" /> +<P1 x="699" y="289" id="2240" /> +<P2 x="699" y="316" id="2212" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2033" > +<father id="2035" num="0" /> +<cdparam x="691" y="328" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2029" /> +<TGConnectingPoint num="1" id="2030" /> +<TGConnectingPoint num="2" id="2031" /> +<TGConnectingPoint num="3" id="2032" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2042" > +<cdparam x="481" y="501" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to stop state" value="null" /> +<TGConnectingPoint num="0" id="2041" /> +<P1 x="433" y="526" id="2139" /> +<P2 x="323" y="748" id="2368" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2040" > +<father id="2042" num="0" /> +<cdparam x="420" y="552" /> +<sizeparam width="89" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2036" /> +<TGConnectingPoint num="1" id="2037" /> +<TGConnectingPoint num="2" id="2038" /> +<TGConnectingPoint num="3" id="2039" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="nbOfCoins = 0" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2049" > +<cdparam x="555" y="559" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2048" /> +<P1 x="317" y="456" id="2164" /> +<P2 x="433" y="496" id="2138" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2047" > +<father id="2049" num="0" /> +<cdparam x="395" y="448" /> +<sizeparam width="104" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2043" /> +<TGConnectingPoint num="1" id="2044" /> +<TGConnectingPoint num="2" id="2045" /> +<TGConnectingPoint num="3" id="2046" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="coinDelay" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2056" > +<cdparam x="355" y="545" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to stop state" value="null" /> +<TGConnectingPoint num="0" id="2055" /> +<P1 x="289" y="553" id="2150" /> +<P2 x="289" y="748" id="2360" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2054" > +<father id="2056" num="0" /> +<cdparam x="284" y="594" /> +<sizeparam width="248" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2050" /> +<TGConnectingPoint num="1" id="2051" /> +<TGConnectingPoint num="2" id="2052" /> +<TGConnectingPoint num="3" id="2053" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="teaMinDelay" /> +<computeMax value="teaMaxDelay" /> +<actions value="nbOfCoins = 0" /> +<actions value="beverageReady()" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2063" > +<cdparam x="295" y="465" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2062" /> +<P1 x="284" y="476" id="2175" /> +<P2 x="289" y="523" id="2149" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2061" > +<father id="2063" num="0" /> +<cdparam x="295" y="505" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2057" /> +<TGConnectingPoint num="1" id="2058" /> +<TGConnectingPoint num="2" id="2059" /> +<TGConnectingPoint num="3" id="2060" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2070" > +<cdparam x="148" y="549" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to stop state" value="null" /> +<TGConnectingPoint num="0" id="2069" /> +<P1 x="117" y="553" id="2128" /> +<P2 x="255" y="748" id="2367" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2068" > +<father id="2070" num="0" /> +<cdparam x="32" y="587" /> +<sizeparam width="284" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2064" /> +<TGConnectingPoint num="1" id="2065" /> +<TGConnectingPoint num="2" id="2066" /> +<TGConnectingPoint num="3" id="2067" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="coffeeMinDelay" /> +<computeMax value="coffeeMaxDelay" /> +<actions value="nbOfCoins = 0" /> +<actions value="beverageReady()" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2077" > +<cdparam x="229" y="465" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2076" /> +<P1 x="218" y="476" id="2174" /> +<P2 x="117" y="523" id="2127" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2075" > +<father id="2077" num="0" /> +<cdparam x="229" y="505" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2071" /> +<TGConnectingPoint num="1" id="2072" /> +<TGConnectingPoint num="2" id="2073" /> +<TGConnectingPoint num="3" id="2074" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2084" > +<cdparam x="667" y="346" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="2083" /> +<P1 x="699" y="346" id="2213" /> +<P2 x="699" y="381" id="2401" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2082" > +<father id="2084" num="0" /> +<cdparam x="707" y="368" /> +<sizeparam width="89" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2078" /> +<TGConnectingPoint num="1" id="2079" /> +<TGConnectingPoint num="2" id="2080" /> +<TGConnectingPoint num="3" id="2081" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="nbOfCoins = 0" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2091" > +<cdparam x="348" y="228" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2090" /> +<P1 x="388" y="208" id="2279" /> +<P2 x="649" y="264" id="2237" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2089" > +<father id="2091" num="0" /> +<cdparam x="411" y="206" /> +<sizeparam width="104" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2085" /> +<TGConnectingPoint num="1" id="2086" /> +<TGConnectingPoint num="2" id="2087" /> +<TGConnectingPoint num="3" id="2088" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="coinDelay" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2098" > +<cdparam x="243" y="319" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="2097" /> +<P1 x="277" y="305" id="2224" /> +<P2 x="251" y="436" id="2161" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2096" > +<father id="2098" num="0" /> +<cdparam x="243" y="359" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2092" /> +<TGConnectingPoint num="1" id="2093" /> +<TGConnectingPoint num="2" id="2094" /> +<TGConnectingPoint num="3" id="2095" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2105" > +<cdparam x="270" y="224" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2104" /> +<P1 x="270" y="228" id="2289" /> +<P2 x="277" y="275" id="2223" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2103" > +<father id="2105" num="0" /> +<cdparam x="270" y="264" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2099" /> +<TGConnectingPoint num="1" id="2100" /> +<TGConnectingPoint num="2" id="2101" /> +<TGConnectingPoint num="3" id="2102" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2112" > +<cdparam x="309" y="160" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="2111" /> +<P1 x="306" y="166" id="2202" /> +<P2 x="309" y="188" id="2276" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2110" > +<father id="2112" num="0" /> +<cdparam x="328" y="178" /> +<sizeparam width="168" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2106" /> +<TGConnectingPoint num="1" id="2107" /> +<TGConnectingPoint num="2" id="2108" /> +<TGConnectingPoint num="3" id="2109" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="nbOfCoins = nbOfCoins + x" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2119" > +<cdparam x="303" y="103" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2118" /> +<P1 x="303" y="103" id="2324" /> +<P2 x="306" y="136" id="2201" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2117" > +<father id="2119" num="0" /> +<cdparam x="303" y="143" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2113" /> +<TGConnectingPoint num="1" id="2114" /> +<TGConnectingPoint num="2" id="2115" /> +<TGConnectingPoint num="3" id="2116" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2126" > +<cdparam x="303" y="40" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="2125" /> +<P1 x="303" y="40" id="2316" /> +<P2 x="303" y="63" id="2319" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2124" > +<father id="2126" num="0" /> +<cdparam x="303" y="80" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2120" /> +<TGConnectingPoint num="1" id="2121" /> +<TGConnectingPoint num="2" id="2122" /> +<TGConnectingPoint num="3" id="2123" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5104" id="2137" > +<cdparam x="47" y="528" /> +<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Send signal" value="pushCoffeeButton()" /> +<TGConnectingPoint num="0" id="2127" /> +<TGConnectingPoint num="1" id="2128" /> +<TGConnectingPoint num="2" id="2129" /> +<TGConnectingPoint num="3" id="2130" /> +<TGConnectingPoint num="4" id="2131" /> +<TGConnectingPoint num="5" id="2132" /> +<TGConnectingPoint num="6" id="2133" /> +<TGConnectingPoint num="7" id="2134" /> +<TGConnectingPoint num="8" id="2135" /> +<TGConnectingPoint num="9" id="2136" /> +<accessibility /> +</COMPONENT> + +<COMPONENT type="5103" id="2148" > +<cdparam x="363" y="501" /> +<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" /> +<TGConnectingPoint num="0" id="2138" /> +<TGConnectingPoint num="1" id="2139" /> +<TGConnectingPoint num="2" id="2140" /> +<TGConnectingPoint num="3" id="2141" /> +<TGConnectingPoint num="4" id="2142" /> +<TGConnectingPoint num="5" id="2143" /> +<TGConnectingPoint num="6" id="2144" /> +<TGConnectingPoint num="7" id="2145" /> +<TGConnectingPoint num="8" id="2146" /> +<TGConnectingPoint num="9" id="2147" /> +<accessibility /> +</COMPONENT> + +<COMPONENT type="5104" id="2159" > +<cdparam x="227" y="528" /> +<sizeparam width="124" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Send signal" value="pushTeaButton()" /> +<TGConnectingPoint num="0" id="2149" /> +<TGConnectingPoint num="1" id="2150" /> +<TGConnectingPoint num="2" id="2151" /> +<TGConnectingPoint num="3" id="2152" /> +<TGConnectingPoint num="4" id="2153" /> +<TGConnectingPoint num="5" id="2154" /> +<TGConnectingPoint num="6" id="2155" /> +<TGConnectingPoint num="7" id="2156" /> +<TGConnectingPoint num="8" id="2157" /> +<TGConnectingPoint num="9" id="2158" /> +<accessibility /> +</COMPONENT> + +<COMPONENT type="5106" id="2200" > +<cdparam x="185" y="436" /> +<sizeparam width="132" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForSelection" /> +<TGConnectingPoint num="0" id="2160" /> +<TGConnectingPoint num="1" id="2161" /> +<TGConnectingPoint num="2" id="2162" /> +<TGConnectingPoint num="3" id="2163" /> +<TGConnectingPoint num="4" id="2164" /> +<TGConnectingPoint num="5" id="2165" /> +<TGConnectingPoint num="6" id="2166" /> +<TGConnectingPoint num="7" id="2167" /> +<TGConnectingPoint num="8" id="2168" /> +<TGConnectingPoint num="9" id="2169" /> +<TGConnectingPoint num="10" id="2170" /> +<TGConnectingPoint num="11" id="2171" /> +<TGConnectingPoint num="12" id="2172" /> +<TGConnectingPoint num="13" id="2173" /> +<TGConnectingPoint num="14" id="2174" /> +<TGConnectingPoint num="15" id="2175" /> +<TGConnectingPoint num="16" id="2176" /> +<TGConnectingPoint num="17" id="2177" /> +<TGConnectingPoint num="18" id="2178" /> +<TGConnectingPoint num="19" id="2179" /> +<TGConnectingPoint num="20" id="2180" /> +<TGConnectingPoint num="21" id="2181" /> +<TGConnectingPoint num="22" id="2182" /> +<TGConnectingPoint num="23" id="2183" /> +<TGConnectingPoint num="24" id="2184" /> +<TGConnectingPoint num="25" id="2185" /> +<TGConnectingPoint num="26" id="2186" /> +<TGConnectingPoint num="27" id="2187" /> +<TGConnectingPoint num="28" id="2188" /> +<TGConnectingPoint num="29" id="2189" /> +<TGConnectingPoint num="30" id="2190" /> +<TGConnectingPoint num="31" id="2191" /> +<TGConnectingPoint num="32" id="2192" /> +<TGConnectingPoint num="33" id="2193" /> +<TGConnectingPoint num="34" id="2194" /> +<TGConnectingPoint num="35" id="2195" /> +<TGConnectingPoint num="36" id="2196" /> +<TGConnectingPoint num="37" id="2197" /> +<TGConnectingPoint num="38" id="2198" /> +<TGConnectingPoint num="39" id="2199" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5104" id="2211" > +<cdparam x="265" y="141" /> +<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="getCoin(x)" /> +<TGConnectingPoint num="0" id="2201" /> +<TGConnectingPoint num="1" id="2202" /> +<TGConnectingPoint num="2" id="2203" /> +<TGConnectingPoint num="3" id="2204" /> +<TGConnectingPoint num="4" id="2205" /> +<TGConnectingPoint num="5" id="2206" /> +<TGConnectingPoint num="6" id="2207" /> +<TGConnectingPoint num="7" id="2208" /> +<TGConnectingPoint num="8" id="2209" /> +<TGConnectingPoint num="9" id="2210" /> +</COMPONENT> + +<COMPONENT type="5103" id="2222" > +<cdparam x="629" y="321" /> +<sizeparam width="141" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" /> +<TGConnectingPoint num="0" id="2212" /> +<TGConnectingPoint num="1" id="2213" /> +<TGConnectingPoint num="2" id="2214" /> +<TGConnectingPoint num="3" id="2215" /> +<TGConnectingPoint num="4" id="2216" /> +<TGConnectingPoint num="5" id="2217" /> +<TGConnectingPoint num="6" id="2218" /> +<TGConnectingPoint num="7" id="2219" /> +<TGConnectingPoint num="8" id="2220" /> +<TGConnectingPoint num="9" id="2221" /> +</COMPONENT> + +<COMPONENT type="5104" id="2233" > +<cdparam x="236" y="280" /> +<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="getCoin(x)" /> +<TGConnectingPoint num="0" id="2223" /> +<TGConnectingPoint num="1" id="2224" /> +<TGConnectingPoint num="2" id="2225" /> +<TGConnectingPoint num="3" id="2226" /> +<TGConnectingPoint num="4" id="2227" /> +<TGConnectingPoint num="5" id="2228" /> +<TGConnectingPoint num="6" id="2229" /> +<TGConnectingPoint num="7" id="2230" /> +<TGConnectingPoint num="8" id="2231" /> +<TGConnectingPoint num="9" id="2232" /> +<accessibility /> +</COMPONENT> + +<COMPONENT type="5106" id="2274" > +<cdparam x="649" y="239" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="ejectState" /> +<TGConnectingPoint num="0" id="2234" /> +<TGConnectingPoint num="1" id="2235" /> +<TGConnectingPoint num="2" id="2236" /> +<TGConnectingPoint num="3" id="2237" /> +<TGConnectingPoint num="4" id="2238" /> +<TGConnectingPoint num="5" id="2239" /> +<TGConnectingPoint num="6" id="2240" /> +<TGConnectingPoint num="7" id="2241" /> +<TGConnectingPoint num="8" id="2242" /> +<TGConnectingPoint num="9" id="2243" /> +<TGConnectingPoint num="10" id="2244" /> +<TGConnectingPoint num="11" id="2245" /> +<TGConnectingPoint num="12" id="2246" /> +<TGConnectingPoint num="13" id="2247" /> +<TGConnectingPoint num="14" id="2248" /> +<TGConnectingPoint num="15" id="2249" /> +<TGConnectingPoint num="16" id="2250" /> +<TGConnectingPoint num="17" id="2251" /> +<TGConnectingPoint num="18" id="2252" /> +<TGConnectingPoint num="19" id="2253" /> +<TGConnectingPoint num="20" id="2254" /> +<TGConnectingPoint num="21" id="2255" /> +<TGConnectingPoint num="22" id="2256" /> +<TGConnectingPoint num="23" id="2257" /> +<TGConnectingPoint num="24" id="2258" /> +<TGConnectingPoint num="25" id="2259" /> +<TGConnectingPoint num="26" id="2260" /> +<TGConnectingPoint num="27" id="2261" /> +<TGConnectingPoint num="28" id="2262" /> +<TGConnectingPoint num="29" id="2263" /> +<TGConnectingPoint num="30" id="2264" /> +<TGConnectingPoint num="31" id="2265" /> +<TGConnectingPoint num="32" id="2266" /> +<TGConnectingPoint num="33" id="2267" /> +<TGConnectingPoint num="34" id="2268" /> +<TGConnectingPoint num="35" id="2269" /> +<TGConnectingPoint num="36" id="2270" /> +<TGConnectingPoint num="37" id="2271" /> +<TGConnectingPoint num="38" id="2272" /> +<TGConnectingPoint num="39" id="2273" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="2315" > +<cdparam x="231" y="188" /> +<sizeparam width="157" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForSecondCoin" /> +<TGConnectingPoint num="0" id="2275" /> +<TGConnectingPoint num="1" id="2276" /> +<TGConnectingPoint num="2" id="2277" /> +<TGConnectingPoint num="3" id="2278" /> +<TGConnectingPoint num="4" id="2279" /> +<TGConnectingPoint num="5" id="2280" /> +<TGConnectingPoint num="6" id="2281" /> +<TGConnectingPoint num="7" id="2282" /> +<TGConnectingPoint num="8" id="2283" /> +<TGConnectingPoint num="9" id="2284" /> +<TGConnectingPoint num="10" id="2285" /> +<TGConnectingPoint num="11" id="2286" /> +<TGConnectingPoint num="12" id="2287" /> +<TGConnectingPoint num="13" id="2288" /> +<TGConnectingPoint num="14" id="2289" /> +<TGConnectingPoint num="15" id="2290" /> +<TGConnectingPoint num="16" id="2291" /> +<TGConnectingPoint num="17" id="2292" /> +<TGConnectingPoint num="18" id="2293" /> +<TGConnectingPoint num="19" id="2294" /> +<TGConnectingPoint num="20" id="2295" /> +<TGConnectingPoint num="21" id="2296" /> +<TGConnectingPoint num="22" id="2297" /> +<TGConnectingPoint num="23" id="2298" /> +<TGConnectingPoint num="24" id="2299" /> +<TGConnectingPoint num="25" id="2300" /> +<TGConnectingPoint num="26" id="2301" /> +<TGConnectingPoint num="27" id="2302" /> +<TGConnectingPoint num="28" id="2303" /> +<TGConnectingPoint num="29" id="2304" /> +<TGConnectingPoint num="30" id="2305" /> +<TGConnectingPoint num="31" id="2306" /> +<TGConnectingPoint num="32" id="2307" /> +<TGConnectingPoint num="33" id="2308" /> +<TGConnectingPoint num="34" id="2309" /> +<TGConnectingPoint num="35" id="2310" /> +<TGConnectingPoint num="36" id="2311" /> +<TGConnectingPoint num="37" id="2312" /> +<TGConnectingPoint num="38" id="2313" /> +<TGConnectingPoint num="39" id="2314" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="2317" > +<cdparam x="296" y="20" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="2316" /> +</COMPONENT> + +<COMPONENT type="5106" id="2358" > +<cdparam x="235" y="63" /> +<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForFirstCoin" /> +<TGConnectingPoint num="0" id="2318" /> +<TGConnectingPoint num="1" id="2319" /> +<TGConnectingPoint num="2" id="2320" /> +<TGConnectingPoint num="3" id="2321" /> +<TGConnectingPoint num="4" id="2322" /> +<TGConnectingPoint num="5" id="2323" /> +<TGConnectingPoint num="6" id="2324" /> +<TGConnectingPoint num="7" id="2325" /> +<TGConnectingPoint num="8" id="2326" /> +<TGConnectingPoint num="9" id="2327" /> +<TGConnectingPoint num="10" id="2328" /> +<TGConnectingPoint num="11" id="2329" /> +<TGConnectingPoint num="12" id="2330" /> +<TGConnectingPoint num="13" id="2331" /> +<TGConnectingPoint num="14" id="2332" /> +<TGConnectingPoint num="15" id="2333" /> +<TGConnectingPoint num="16" id="2334" /> +<TGConnectingPoint num="17" id="2335" /> +<TGConnectingPoint num="18" id="2336" /> +<TGConnectingPoint num="19" id="2337" /> +<TGConnectingPoint num="20" id="2338" /> +<TGConnectingPoint num="21" id="2339" /> +<TGConnectingPoint num="22" id="2340" /> +<TGConnectingPoint num="23" id="2341" /> +<TGConnectingPoint num="24" id="2342" /> +<TGConnectingPoint num="25" id="2343" /> +<TGConnectingPoint num="26" id="2344" /> +<TGConnectingPoint num="27" id="2345" /> +<TGConnectingPoint num="28" id="2346" /> +<TGConnectingPoint num="29" id="2347" /> +<TGConnectingPoint num="30" id="2348" /> +<TGConnectingPoint num="31" id="2349" /> +<TGConnectingPoint num="32" id="2350" /> +<TGConnectingPoint num="33" id="2351" /> +<TGConnectingPoint num="34" id="2352" /> +<TGConnectingPoint num="35" id="2353" /> +<TGConnectingPoint num="36" id="2354" /> +<TGConnectingPoint num="37" id="2355" /> +<TGConnectingPoint num="38" id="2356" /> +<TGConnectingPoint num="39" id="2357" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="2399" > +<cdparam x="221" y="748" /> +<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForFirstCoin" /> +<TGConnectingPoint num="0" id="2359" /> +<TGConnectingPoint num="1" id="2360" /> +<TGConnectingPoint num="2" id="2361" /> +<TGConnectingPoint num="3" id="2362" /> +<TGConnectingPoint num="4" id="2363" /> +<TGConnectingPoint num="5" id="2364" /> +<TGConnectingPoint num="6" id="2365" /> +<TGConnectingPoint num="7" id="2366" /> +<TGConnectingPoint num="8" id="2367" /> +<TGConnectingPoint num="9" id="2368" /> +<TGConnectingPoint num="10" id="2369" /> +<TGConnectingPoint num="11" id="2370" /> +<TGConnectingPoint num="12" id="2371" /> +<TGConnectingPoint num="13" id="2372" /> +<TGConnectingPoint num="14" id="2373" /> +<TGConnectingPoint num="15" id="2374" /> +<TGConnectingPoint num="16" id="2375" /> +<TGConnectingPoint num="17" id="2376" /> +<TGConnectingPoint num="18" id="2377" /> +<TGConnectingPoint num="19" id="2378" /> +<TGConnectingPoint num="20" id="2379" /> +<TGConnectingPoint num="21" id="2380" /> +<TGConnectingPoint num="22" id="2381" /> +<TGConnectingPoint num="23" id="2382" /> +<TGConnectingPoint num="24" id="2383" /> +<TGConnectingPoint num="25" id="2384" /> +<TGConnectingPoint num="26" id="2385" /> +<TGConnectingPoint num="27" id="2386" /> +<TGConnectingPoint num="28" id="2387" /> +<TGConnectingPoint num="29" id="2388" /> +<TGConnectingPoint num="30" id="2389" /> +<TGConnectingPoint num="31" id="2390" /> +<TGConnectingPoint num="32" id="2391" /> +<TGConnectingPoint num="33" id="2392" /> +<TGConnectingPoint num="34" id="2393" /> +<TGConnectingPoint num="35" id="2394" /> +<TGConnectingPoint num="36" id="2395" /> +<TGConnectingPoint num="37" id="2396" /> +<TGConnectingPoint num="38" id="2397" /> +<TGConnectingPoint num="39" id="2398" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="2440" > +<cdparam x="631" y="381" /> +<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForFirstCoin" /> +<TGConnectingPoint num="0" id="2400" /> +<TGConnectingPoint num="1" id="2401" /> +<TGConnectingPoint num="2" id="2402" /> +<TGConnectingPoint num="3" id="2403" /> +<TGConnectingPoint num="4" id="2404" /> +<TGConnectingPoint num="5" id="2405" /> +<TGConnectingPoint num="6" id="2406" /> +<TGConnectingPoint num="7" id="2407" /> +<TGConnectingPoint num="8" id="2408" /> +<TGConnectingPoint num="9" id="2409" /> +<TGConnectingPoint num="10" id="2410" /> +<TGConnectingPoint num="11" id="2411" /> +<TGConnectingPoint num="12" id="2412" /> +<TGConnectingPoint num="13" id="2413" /> +<TGConnectingPoint num="14" id="2414" /> +<TGConnectingPoint num="15" id="2415" /> +<TGConnectingPoint num="16" id="2416" /> +<TGConnectingPoint num="17" id="2417" /> +<TGConnectingPoint num="18" id="2418" /> +<TGConnectingPoint num="19" id="2419" /> +<TGConnectingPoint num="20" id="2420" /> +<TGConnectingPoint num="21" id="2421" /> +<TGConnectingPoint num="22" id="2422" /> +<TGConnectingPoint num="23" id="2423" /> +<TGConnectingPoint num="24" id="2424" /> +<TGConnectingPoint num="25" id="2425" /> +<TGConnectingPoint num="26" id="2426" /> +<TGConnectingPoint num="27" id="2427" /> +<TGConnectingPoint num="28" id="2428" /> +<TGConnectingPoint num="29" id="2429" /> +<TGConnectingPoint num="30" id="2430" /> +<TGConnectingPoint num="31" id="2431" /> +<TGConnectingPoint num="32" id="2432" /> +<TGConnectingPoint num="33" id="2433" /> +<TGConnectingPoint num="34" id="2434" /> +<TGConnectingPoint num="35" id="2435" /> +<TGConnectingPoint num="36" id="2436" /> +<TGConnectingPoint num="37" id="2437" /> +<TGConnectingPoint num="38" id="2438" /> +<TGConnectingPoint num="39" id="2439" /> +<extraparam> +</extraparam> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="TeaButton" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="2447" > +<cdparam x="363" y="193" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="2446" /> +<P1 x="363" y="204" id="2463" /> +<P2 x="362" y="257" id="2474" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2445" > +<father id="2447" num="0" /> +<cdparam x="380" y="228" /> +<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2441" /> +<TGConnectingPoint num="1" id="2442" /> +<TGConnectingPoint num="2" id="2443" /> +<TGConnectingPoint num="3" id="2444" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="mechanicalDelay" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2454" > +<cdparam x="363" y="150" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2453" /> +<P1 x="363" y="150" id="2520" /> +<P2 x="363" y="174" id="2462" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2452" > +<father id="2454" num="0" /> +<cdparam x="363" y="190" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2448" /> +<TGConnectingPoint num="1" id="2449" /> +<TGConnectingPoint num="2" id="2450" /> +<TGConnectingPoint num="3" id="2451" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2461" > +<cdparam x="362" y="101" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="2460" /> +<P1 x="362" y="101" id="2555" /> +<P2 x="363" y="120" id="2515" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2459" > +<father id="2461" num="0" /> +<cdparam x="362" y="141" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2455" /> +<TGConnectingPoint num="1" id="2456" /> +<TGConnectingPoint num="2" id="2457" /> +<TGConnectingPoint num="3" id="2458" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5103" id="2472" > +<cdparam x="338" y="179" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="push()" /> +<TGConnectingPoint num="0" id="2462" /> +<TGConnectingPoint num="1" id="2463" /> +<TGConnectingPoint num="2" id="2464" /> +<TGConnectingPoint num="3" id="2465" /> +<TGConnectingPoint num="4" id="2466" /> +<TGConnectingPoint num="5" id="2467" /> +<TGConnectingPoint num="6" id="2468" /> +<TGConnectingPoint num="7" id="2469" /> +<TGConnectingPoint num="8" id="2470" /> +<TGConnectingPoint num="9" id="2471" /> +</COMPONENT> + +<COMPONENT type="5106" id="2513" > +<cdparam x="337" y="257" /> +<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="2473" /> +<TGConnectingPoint num="1" id="2474" /> +<TGConnectingPoint num="2" id="2475" /> +<TGConnectingPoint num="3" id="2476" /> +<TGConnectingPoint num="4" id="2477" /> +<TGConnectingPoint num="5" id="2478" /> +<TGConnectingPoint num="6" id="2479" /> +<TGConnectingPoint num="7" id="2480" /> +<TGConnectingPoint num="8" id="2481" /> +<TGConnectingPoint num="9" id="2482" /> +<TGConnectingPoint num="10" id="2483" /> +<TGConnectingPoint num="11" id="2484" /> +<TGConnectingPoint num="12" id="2485" /> +<TGConnectingPoint num="13" id="2486" /> +<TGConnectingPoint num="14" id="2487" /> +<TGConnectingPoint num="15" id="2488" /> +<TGConnectingPoint num="16" id="2489" /> +<TGConnectingPoint num="17" id="2490" /> +<TGConnectingPoint num="18" id="2491" /> +<TGConnectingPoint num="19" id="2492" /> +<TGConnectingPoint num="20" id="2493" /> +<TGConnectingPoint num="21" id="2494" /> +<TGConnectingPoint num="22" id="2495" /> +<TGConnectingPoint num="23" id="2496" /> +<TGConnectingPoint num="24" id="2497" /> +<TGConnectingPoint num="25" id="2498" /> +<TGConnectingPoint num="26" id="2499" /> +<TGConnectingPoint num="27" id="2500" /> +<TGConnectingPoint num="28" id="2501" /> +<TGConnectingPoint num="29" id="2502" /> +<TGConnectingPoint num="30" id="2503" /> +<TGConnectingPoint num="31" id="2504" /> +<TGConnectingPoint num="32" id="2505" /> +<TGConnectingPoint num="33" id="2506" /> +<TGConnectingPoint num="34" id="2507" /> +<TGConnectingPoint num="35" id="2508" /> +<TGConnectingPoint num="36" id="2509" /> +<TGConnectingPoint num="37" id="2510" /> +<TGConnectingPoint num="38" id="2511" /> +<TGConnectingPoint num="39" id="2512" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="2554" > +<cdparam x="338" y="120" /> +<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="2514" /> +<TGConnectingPoint num="1" id="2515" /> +<TGConnectingPoint num="2" id="2516" /> +<TGConnectingPoint num="3" id="2517" /> +<TGConnectingPoint num="4" id="2518" /> +<TGConnectingPoint num="5" id="2519" /> +<TGConnectingPoint num="6" id="2520" /> +<TGConnectingPoint num="7" id="2521" /> +<TGConnectingPoint num="8" id="2522" /> +<TGConnectingPoint num="9" id="2523" /> +<TGConnectingPoint num="10" id="2524" /> +<TGConnectingPoint num="11" id="2525" /> +<TGConnectingPoint num="12" id="2526" /> +<TGConnectingPoint num="13" id="2527" /> +<TGConnectingPoint num="14" id="2528" /> +<TGConnectingPoint num="15" id="2529" /> +<TGConnectingPoint num="16" id="2530" /> +<TGConnectingPoint num="17" id="2531" /> +<TGConnectingPoint num="18" id="2532" /> +<TGConnectingPoint num="19" id="2533" /> +<TGConnectingPoint num="20" id="2534" /> +<TGConnectingPoint num="21" id="2535" /> +<TGConnectingPoint num="22" id="2536" /> +<TGConnectingPoint num="23" id="2537" /> +<TGConnectingPoint num="24" id="2538" /> +<TGConnectingPoint num="25" id="2539" /> +<TGConnectingPoint num="26" id="2540" /> +<TGConnectingPoint num="27" id="2541" /> +<TGConnectingPoint num="28" id="2542" /> +<TGConnectingPoint num="29" id="2543" /> +<TGConnectingPoint num="30" id="2544" /> +<TGConnectingPoint num="31" id="2545" /> +<TGConnectingPoint num="32" id="2546" /> +<TGConnectingPoint num="33" id="2547" /> +<TGConnectingPoint num="34" id="2548" /> +<TGConnectingPoint num="35" id="2549" /> +<TGConnectingPoint num="36" id="2550" /> +<TGConnectingPoint num="37" id="2551" /> +<TGConnectingPoint num="38" id="2552" /> +<TGConnectingPoint num="39" id="2553" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="2556" > +<cdparam x="355" y="81" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="2555" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="CoffeeButton" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="2563" > +<cdparam x="323" y="118" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="2562" /> +<P1 x="323" y="118" id="2636" /> +<P2 x="341" y="200" id="2578" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2561" > +<father id="2563" num="0" /> +<cdparam x="323" y="158" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2557" /> +<TGConnectingPoint num="1" id="2558" /> +<TGConnectingPoint num="2" id="2559" /> +<TGConnectingPoint num="3" id="2560" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2570" > +<cdparam x="322" y="69" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="2569" /> +<P1 x="322" y="69" id="2671" /> +<P2 x="323" y="88" id="2631" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2568" > +<father id="2570" num="0" /> +<cdparam x="322" y="109" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2564" /> +<TGConnectingPoint num="1" id="2565" /> +<TGConnectingPoint num="2" id="2566" /> +<TGConnectingPoint num="3" id="2567" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2577" > +<cdparam x="365" y="135" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="2576" /> +<P1 x="341" y="230" id="2579" /> +<P2 x="387" y="300" id="2590" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2575" > +<father id="2577" num="0" /> +<cdparam x="405" y="283" /> +<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2571" /> +<TGConnectingPoint num="1" id="2572" /> +<TGConnectingPoint num="2" id="2573" /> +<TGConnectingPoint num="3" id="2574" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="mechanicalDelay" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5103" id="2588" > +<cdparam x="316" y="205" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="push()" /> +<TGConnectingPoint num="0" id="2578" /> +<TGConnectingPoint num="1" id="2579" /> +<TGConnectingPoint num="2" id="2580" /> +<TGConnectingPoint num="3" id="2581" /> +<TGConnectingPoint num="4" id="2582" /> +<TGConnectingPoint num="5" id="2583" /> +<TGConnectingPoint num="6" id="2584" /> +<TGConnectingPoint num="7" id="2585" /> +<TGConnectingPoint num="8" id="2586" /> +<TGConnectingPoint num="9" id="2587" /> +</COMPONENT> + +<COMPONENT type="5106" id="2629" > +<cdparam x="362" y="300" /> +<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="2589" /> +<TGConnectingPoint num="1" id="2590" /> +<TGConnectingPoint num="2" id="2591" /> +<TGConnectingPoint num="3" id="2592" /> +<TGConnectingPoint num="4" id="2593" /> +<TGConnectingPoint num="5" id="2594" /> +<TGConnectingPoint num="6" id="2595" /> +<TGConnectingPoint num="7" id="2596" /> +<TGConnectingPoint num="8" id="2597" /> +<TGConnectingPoint num="9" id="2598" /> +<TGConnectingPoint num="10" id="2599" /> +<TGConnectingPoint num="11" id="2600" /> +<TGConnectingPoint num="12" id="2601" /> +<TGConnectingPoint num="13" id="2602" /> +<TGConnectingPoint num="14" id="2603" /> +<TGConnectingPoint num="15" id="2604" /> +<TGConnectingPoint num="16" id="2605" /> +<TGConnectingPoint num="17" id="2606" /> +<TGConnectingPoint num="18" id="2607" /> +<TGConnectingPoint num="19" id="2608" /> +<TGConnectingPoint num="20" id="2609" /> +<TGConnectingPoint num="21" id="2610" /> +<TGConnectingPoint num="22" id="2611" /> +<TGConnectingPoint num="23" id="2612" /> +<TGConnectingPoint num="24" id="2613" /> +<TGConnectingPoint num="25" id="2614" /> +<TGConnectingPoint num="26" id="2615" /> +<TGConnectingPoint num="27" id="2616" /> +<TGConnectingPoint num="28" id="2617" /> +<TGConnectingPoint num="29" id="2618" /> +<TGConnectingPoint num="30" id="2619" /> +<TGConnectingPoint num="31" id="2620" /> +<TGConnectingPoint num="32" id="2621" /> +<TGConnectingPoint num="33" id="2622" /> +<TGConnectingPoint num="34" id="2623" /> +<TGConnectingPoint num="35" id="2624" /> +<TGConnectingPoint num="36" id="2625" /> +<TGConnectingPoint num="37" id="2626" /> +<TGConnectingPoint num="38" id="2627" /> +<TGConnectingPoint num="39" id="2628" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="2670" > +<cdparam x="298" y="88" /> +<sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="main" /> +<TGConnectingPoint num="0" id="2630" /> +<TGConnectingPoint num="1" id="2631" /> +<TGConnectingPoint num="2" id="2632" /> +<TGConnectingPoint num="3" id="2633" /> +<TGConnectingPoint num="4" id="2634" /> +<TGConnectingPoint num="5" id="2635" /> +<TGConnectingPoint num="6" id="2636" /> +<TGConnectingPoint num="7" id="2637" /> +<TGConnectingPoint num="8" id="2638" /> +<TGConnectingPoint num="9" id="2639" /> +<TGConnectingPoint num="10" id="2640" /> +<TGConnectingPoint num="11" id="2641" /> +<TGConnectingPoint num="12" id="2642" /> +<TGConnectingPoint num="13" id="2643" /> +<TGConnectingPoint num="14" id="2644" /> +<TGConnectingPoint num="15" id="2645" /> +<TGConnectingPoint num="16" id="2646" /> +<TGConnectingPoint num="17" id="2647" /> +<TGConnectingPoint num="18" id="2648" /> +<TGConnectingPoint num="19" id="2649" /> +<TGConnectingPoint num="20" id="2650" /> +<TGConnectingPoint num="21" id="2651" /> +<TGConnectingPoint num="22" id="2652" /> +<TGConnectingPoint num="23" id="2653" /> +<TGConnectingPoint num="24" id="2654" /> +<TGConnectingPoint num="25" id="2655" /> +<TGConnectingPoint num="26" id="2656" /> +<TGConnectingPoint num="27" id="2657" /> +<TGConnectingPoint num="28" id="2658" /> +<TGConnectingPoint num="29" id="2659" /> +<TGConnectingPoint num="30" id="2660" /> +<TGConnectingPoint num="31" id="2661" /> +<TGConnectingPoint num="32" id="2662" /> +<TGConnectingPoint num="33" id="2663" /> +<TGConnectingPoint num="34" id="2664" /> +<TGConnectingPoint num="35" id="2665" /> +<TGConnectingPoint num="36" id="2666" /> +<TGConnectingPoint num="37" id="2667" /> +<TGConnectingPoint num="38" id="2668" /> +<TGConnectingPoint num="39" id="2669" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="2672" > +<cdparam x="315" y="49" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="2671" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +</Modeling> + + + + +</TURTLEGMODELING> \ No newline at end of file diff --git a/ttool/src/test/resources/ui/diagram2avatar/input/FutureAirNavigationSystem.xml b/ttool/src/test/resources/ui/diagram2avatar/input/FutureAirNavigationSystem.xml new file mode 100644 index 0000000000000000000000000000000000000000..33432047e561ab6900695e06701e762832720702 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/input/FutureAirNavigationSystem.xml @@ -0,0 +1,9021 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> + +<TURTLEGMODELING version="0.98-beta4"> + +<Modeling type="Avatar Methodology" nameTab="Methodology" > +<AvatarMethodologyDiagramPanel name="Methodology" minX="10" maxX="1400" minY="10" maxY="900" zoom="1.0" > +<COMPONENT type="5606" id="5" > +<cdparam x="460" y="539" /> +<sizeparam width="300" height="70" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TGComponent" value="Prototyping" /> +<TGConnectingPoint num="0" id="1" /> +<TGConnectingPoint num="1" id="2" /> +<TGConnectingPoint num="2" id="3" /> +<TGConnectingPoint num="3" id="4" /> +</COMPONENT> + +<COMPONENT type="5604" id="13" > +<cdparam x="361" y="433" /> +<sizeparam width="305" height="82" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TGComponent" value="Design" /> +<TGConnectingPoint num="0" id="8" /> +<TGConnectingPoint num="1" id="9" /> +<TGConnectingPoint num="2" id="10" /> +<TGConnectingPoint num="3" id="11" /> +<TGConnectingPoint num="4" id="12" /> +</COMPONENT> +<SUBCOMPONENT type="5607" id="6" > +<father id="13" num="0" /> +<cdparam x="366" y="473" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="366" maxX="366" minY="473" maxY="473" /> +<infoparam name="value " value="Design_unlossy" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5607" id="7" > +<father id="13" num="1" /> +<cdparam x="366" y="488" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="366" maxX="366" minY="488" maxY="488" /> +<infoparam name="value " value="Design_lossy" /> +</SUBCOMPONENT> + +<COMPONENT type="5603" id="21" > +<cdparam x="259" y="340" /> +<sizeparam width="205" height="80" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TGComponent" value="Analysis" /> +<TGConnectingPoint num="0" id="16" /> +<TGConnectingPoint num="1" id="17" /> +<TGConnectingPoint num="2" id="18" /> +<TGConnectingPoint num="3" id="19" /> +<TGConnectingPoint num="4" id="20" /> +</COMPONENT> +<SUBCOMPONENT type="5607" id="14" > +<father id="21" num="0" /> +<cdparam x="264" y="380" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="264" maxX="264" minY="380" maxY="380" /> +<infoparam name="value " value="Analysis_unlossy" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5607" id="15" > +<father id="21" num="1" /> +<cdparam x="264" y="395" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="264" maxX="264" minY="395" maxY="395" /> +<infoparam name="value " value="Analysis_lossy" /> +</SUBCOMPONENT> + +<COMPONENT type="5602" id="29" > +<cdparam x="160" y="239" /> +<sizeparam width="200" height="70" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TGComponent" value="Requirements" /> +<TGConnectingPoint num="0" id="23" /> +<TGConnectingPoint num="1" id="24" /> +<TGConnectingPoint num="2" id="25" /> +<TGConnectingPoint num="3" id="26" /> +<TGConnectingPoint num="4" id="27" /> +<TGConnectingPoint num="5" id="28" /> +</COMPONENT> +<SUBCOMPONENT type="5607" id="22" > +<father id="29" num="0" /> +<cdparam x="165" y="279" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="165" maxX="165" minY="279" maxY="279" /> +<infoparam name="value " value="Requirements_Properties" /> +</SUBCOMPONENT> + +<COMPONENT type="5601" id="35" > +<cdparam x="50" y="136" /> +<sizeparam width="234" height="83" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TGComponent" value="Assumptions" /> +<TGConnectingPoint num="0" id="31" /> +<TGConnectingPoint num="1" id="32" /> +<TGConnectingPoint num="2" id="33" /> +<TGConnectingPoint num="3" id="34" /> +</COMPONENT> +<SUBCOMPONENT type="5607" id="30" > +<father id="35" num="0" /> +<cdparam x="55" y="176" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="55" maxX="55" minY="176" maxY="176" /> +<infoparam name="value " value="Assumptions" /> +</SUBCOMPONENT> + +<COMPONENT type="5605" id="41" > +<cdparam x="110" y="439" /> +<sizeparam width="180" height="70" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TGComponent" value="Properties" /> +<TGConnectingPoint num="0" id="37" /> +<TGConnectingPoint num="1" id="38" /> +<TGConnectingPoint num="2" id="39" /> +<TGConnectingPoint num="3" id="40" /> +</COMPONENT> +<SUBCOMPONENT type="5607" id="36" > +<father id="41" num="0" /> +<cdparam x="115" y="479" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="205" maxX="205" minY="440" maxY="440" /> +<infoparam name="value " value="Properties" /> +</SUBCOMPONENT> + +<COMPONENT type="301" id="58" > +<cdparam x="16" y="10" /> +<sizeparam width="357" height="87" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value=" + Author: Pierre de Saqui-Sannes (pdss@isae-supaero.fr) + + Last update: February 10, 2017 + + TTool: java ttool.jar -experimentatal -nocolor + +" /> +<TGConnectingPoint num="0" id="42" /> +<TGConnectingPoint num="1" id="43" /> +<TGConnectingPoint num="2" id="44" /> +<TGConnectingPoint num="3" id="45" /> +<TGConnectingPoint num="4" id="46" /> +<TGConnectingPoint num="5" id="47" /> +<TGConnectingPoint num="6" id="48" /> +<TGConnectingPoint num="7" id="49" /> +<TGConnectingPoint num="8" id="50" /> +<TGConnectingPoint num="9" id="51" /> +<TGConnectingPoint num="10" id="52" /> +<TGConnectingPoint num="11" id="53" /> +<TGConnectingPoint num="12" id="54" /> +<TGConnectingPoint num="13" id="55" /> +<TGConnectingPoint num="14" id="56" /> +<TGConnectingPoint num="15" id="57" /> +<extraparam> +<Line value=" " /> +<Line value=" Author: Pierre de Saqui-Sannes (pdss@isae-supaero.fr)" /> +<Line value=" " /> +<Line value=" Last update: February 10, 2017" /> +<Line value=" " /> +<Line value=" TTool: java ttool.jar -experimentatal -nocolor" /> +<Line value=" " /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="5608" id="60" > +<cdparam x="180" y="309" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="59" /> +<P1 x="180" y="309" id="25" /> +<P2 x="146" y="439" id="37" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5608" id="64" > +<cdparam x="420" y="509" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="62" /> +<TGConnectingPoint num="1" id="63" /> +<P1 x="422" y="515" id="9" /> +<P2 x="460" y="574" id="1" /> +<Point x="422" y="574" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="61" > +<father id="64" num="0" /> +<cdparam x="422" y="574" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5608" id="68" > +<cdparam x="320" y="409" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="66" /> +<TGConnectingPoint num="1" id="67" /> +<P1 x="320" y="420" id="17" /> +<P2 x="361" y="474" id="8" /> +<Point x="320" y="474" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="65" > +<father id="68" num="0" /> +<cdparam x="320" y="474" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5608" id="72" > +<cdparam x="220" y="309" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="70" /> +<TGConnectingPoint num="1" id="71" /> +<P1 x="220" y="309" id="24" /> +<P2 x="259" y="380" id="16" /> +<Point x="220" y="380" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="69" > +<father id="72" num="0" /> +<cdparam x="220" y="380" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5608" id="76" > +<cdparam x="120" y="209" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="74" /> +<TGConnectingPoint num="1" id="75" /> +<P1 x="120" y="219" id="31" /> +<P2 x="160" y="274" id="23" /> +<Point x="120" y="274" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="73" > +<father id="76" num="0" /> +<cdparam x="120" y="274" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + + +</AvatarMethodologyDiagramPanel> + +</Modeling> + + + + +<Modeling type="Avatar Requirement" nameTab="Requirements_Properties" > +<AvatarRDPanel name="Original Specification" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" > +<COMPONENT type="301" id="93" > +<cdparam x="10" y="10" /> +<sizeparam width="663" height="255" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="UML Note" value=" +Original specification of the Initial Notification procedure + + +When initiated either by flight crew action or an automatic trigger, an ATS Facilities Notification Contact message + is sent and Avionics Timer ATST1 is set. The aircraft AFN application then awaits an AFN Acknowledgement +message from ground. + +Subject to prior agreement with the service provider, the supplementary address field of +the ATS Facilities Notification Contact Message may contain an abbreviation of the ATC center address + to which the message should be delivered (such as the corresponding IATA or ICAO code). + +If a successful AFN Acnowledgement message is received within the period of time of ATST1, +a positive indication is given to the flight crew and timer ATST1 is cancelled. +The AFN acknowledgement messsage will contain the full 7-character address of the ground AFN end-system. +This address should be used in all subsequent AFN messages. + +If the aircraft AFN receives an AFN acknowledgement message with a non-zero reason code +or timer ATST1 expires, an error indication is given to the the flight crew. + + +" /> +<TGConnectingPoint num="0" id="77" /> +<TGConnectingPoint num="1" id="78" /> +<TGConnectingPoint num="2" id="79" /> +<TGConnectingPoint num="3" id="80" /> +<TGConnectingPoint num="4" id="81" /> +<TGConnectingPoint num="5" id="82" /> +<TGConnectingPoint num="6" id="83" /> +<TGConnectingPoint num="7" id="84" /> +<TGConnectingPoint num="8" id="85" /> +<TGConnectingPoint num="9" id="86" /> +<TGConnectingPoint num="10" id="87" /> +<TGConnectingPoint num="11" id="88" /> +<TGConnectingPoint num="12" id="89" /> +<TGConnectingPoint num="13" id="90" /> +<TGConnectingPoint num="14" id="91" /> +<TGConnectingPoint num="15" id="92" /> +<extraparam> +<Line value="" /> +<Line value="Original specification of the Initial Notification procedure" /> +<Line value="" /> +<Line value="" /> +<Line value="When initiated either by flight crew action or an automatic trigger, an ATS Facilities Notification Contact message" /> +<Line value=" is sent and Avionics Timer ATST1 is set. The aircraft AFN application then awaits an AFN Acknowledgement " /> +<Line value="message from ground." /> +<Line value="" /> +<Line value="Subject to prior agreement with the service provider, the supplementary address field of " /> +<Line value="the ATS Facilities Notification Contact Message may contain an abbreviation of the ATC center address" /> +<Line value=" to which the message should be delivered (such as the corresponding IATA or ICAO code)." /> +<Line value="" /> +<Line value="If a successful AFN Acnowledgement message is received within the period of time of ATST1, " /> +<Line value="a positive indication is given to the flight crew and timer ATST1 is cancelled. " /> +<Line value="The AFN acknowledgement messsage will contain the full 7-character address of the ground AFN end-system. " /> +<Line value="This address should be used in all subsequent AFN messages." /> +<Line value="" /> +<Line value="If the aircraft AFN receives an AFN acknowledgement message with a non-zero reason code " /> +<Line value="or timer ATST1 expires, an error indication is given to the the flight crew." /> +<Line value="" /> +<Line value=" " /> +</extraparam> +</COMPONENT> + + +</AvatarRDPanel> + +<AvatarRDPanel name="RequirementDiagram" minX="10" maxX="1400" minY="10" maxY="900" zoom="1.0" > +<COMPONENT type="5200" id="137" > +<cdparam x="411" y="121" /> +<sizeparam width="385" height="99" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="153" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Requirement" value="ProtocolCharacteristics" /> +<TGConnectingPoint num="0" id="94" /> +<TGConnectingPoint num="1" id="95" /> +<TGConnectingPoint num="2" id="96" /> +<TGConnectingPoint num="3" id="97" /> +<TGConnectingPoint num="4" id="98" /> +<TGConnectingPoint num="5" id="99" /> +<TGConnectingPoint num="6" id="100" /> +<TGConnectingPoint num="7" id="101" /> +<TGConnectingPoint num="8" id="102" /> +<TGConnectingPoint num="9" id="103" /> +<TGConnectingPoint num="10" id="104" /> +<TGConnectingPoint num="11" id="105" /> +<TGConnectingPoint num="12" id="106" /> +<TGConnectingPoint num="13" id="107" /> +<TGConnectingPoint num="14" id="108" /> +<TGConnectingPoint num="15" id="109" /> +<TGConnectingPoint num="16" id="110" /> +<TGConnectingPoint num="17" id="111" /> +<TGConnectingPoint num="18" id="112" /> +<TGConnectingPoint num="19" id="113" /> +<TGConnectingPoint num="20" id="114" /> +<TGConnectingPoint num="21" id="115" /> +<TGConnectingPoint num="22" id="116" /> +<TGConnectingPoint num="23" id="117" /> +<TGConnectingPoint num="24" id="118" /> +<TGConnectingPoint num="25" id="119" /> +<TGConnectingPoint num="26" id="120" /> +<TGConnectingPoint num="27" id="121" /> +<TGConnectingPoint num="28" id="122" /> +<TGConnectingPoint num="29" id="123" /> +<TGConnectingPoint num="30" id="124" /> +<TGConnectingPoint num="31" id="125" /> +<TGConnectingPoint num="32" id="126" /> +<TGConnectingPoint num="33" id="127" /> +<TGConnectingPoint num="34" id="128" /> +<TGConnectingPoint num="35" id="129" /> +<TGConnectingPoint num="36" id="130" /> +<TGConnectingPoint num="37" id="131" /> +<TGConnectingPoint num="38" id="132" /> +<TGConnectingPoint num="39" id="133" /> +<TGConnectingPoint num="40" id="134" /> +<TGConnectingPoint num="41" id="135" /> +<TGConnectingPoint num="42" id="136" /> +<extraparam> +<textline data="The IN procedure is a confirmed connection setup" /> +<textline data="procedure initiated by the pilot and developed on " /> +<textline data="top of a lossy network." /> +<kind data="Functional" /> +<criticality data="Low" /> +<reqType data="0" /> +<id data="PROTOCOL" /> +<satisfied data="false" /> +<verified data="false" /> +<attackTreeNode data="" /> +<violatedAction data="" /> +<referenceElements data="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5200" id="181" > +<cdparam x="10" y="121" /> +<sizeparam width="310" height="97" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="223" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Requirement" value="FANS_Initial_Notification_Procedure" /> +<TGConnectingPoint num="0" id="138" /> +<TGConnectingPoint num="1" id="139" /> +<TGConnectingPoint num="2" id="140" /> +<TGConnectingPoint num="3" id="141" /> +<TGConnectingPoint num="4" id="142" /> +<TGConnectingPoint num="5" id="143" /> +<TGConnectingPoint num="6" id="144" /> +<TGConnectingPoint num="7" id="145" /> +<TGConnectingPoint num="8" id="146" /> +<TGConnectingPoint num="9" id="147" /> +<TGConnectingPoint num="10" id="148" /> +<TGConnectingPoint num="11" id="149" /> +<TGConnectingPoint num="12" id="150" /> +<TGConnectingPoint num="13" id="151" /> +<TGConnectingPoint num="14" id="152" /> +<TGConnectingPoint num="15" id="153" /> +<TGConnectingPoint num="16" id="154" /> +<TGConnectingPoint num="17" id="155" /> +<TGConnectingPoint num="18" id="156" /> +<TGConnectingPoint num="19" id="157" /> +<TGConnectingPoint num="20" id="158" /> +<TGConnectingPoint num="21" id="159" /> +<TGConnectingPoint num="22" id="160" /> +<TGConnectingPoint num="23" id="161" /> +<TGConnectingPoint num="24" id="162" /> +<TGConnectingPoint num="25" id="163" /> +<TGConnectingPoint num="26" id="164" /> +<TGConnectingPoint num="27" id="165" /> +<TGConnectingPoint num="28" id="166" /> +<TGConnectingPoint num="29" id="167" /> +<TGConnectingPoint num="30" id="168" /> +<TGConnectingPoint num="31" id="169" /> +<TGConnectingPoint num="32" id="170" /> +<TGConnectingPoint num="33" id="171" /> +<TGConnectingPoint num="34" id="172" /> +<TGConnectingPoint num="35" id="173" /> +<TGConnectingPoint num="36" id="174" /> +<TGConnectingPoint num="37" id="175" /> +<TGConnectingPoint num="38" id="176" /> +<TGConnectingPoint num="39" id="177" /> +<TGConnectingPoint num="40" id="178" /> +<TGConnectingPoint num="41" id="179" /> +<TGConnectingPoint num="42" id="180" /> +<extraparam> +<textline data="The connection set up procedure" /> +<textline data="shall implement the Initial Notification" /> +<textline data="procedure defined by the FANS specification." /> +<kind data="Functional" /> +<criticality data="High" /> +<reqType data="0" /> +<id data="IN" /> +<satisfied data="false" /> +<verified data="false" /> +<attackTreeNode data="" /> +<violatedAction data="" /> +<referenceElements data="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5200" id="225" > +<cdparam x="10" y="10" /> +<sizeparam width="314" height="81" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="142" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Requirement" value="GeneralRequirement" /> +<TGConnectingPoint num="0" id="182" /> +<TGConnectingPoint num="1" id="183" /> +<TGConnectingPoint num="2" id="184" /> +<TGConnectingPoint num="3" id="185" /> +<TGConnectingPoint num="4" id="186" /> +<TGConnectingPoint num="5" id="187" /> +<TGConnectingPoint num="6" id="188" /> +<TGConnectingPoint num="7" id="189" /> +<TGConnectingPoint num="8" id="190" /> +<TGConnectingPoint num="9" id="191" /> +<TGConnectingPoint num="10" id="192" /> +<TGConnectingPoint num="11" id="193" /> +<TGConnectingPoint num="12" id="194" /> +<TGConnectingPoint num="13" id="195" /> +<TGConnectingPoint num="14" id="196" /> +<TGConnectingPoint num="15" id="197" /> +<TGConnectingPoint num="16" id="198" /> +<TGConnectingPoint num="17" id="199" /> +<TGConnectingPoint num="18" id="200" /> +<TGConnectingPoint num="19" id="201" /> +<TGConnectingPoint num="20" id="202" /> +<TGConnectingPoint num="21" id="203" /> +<TGConnectingPoint num="22" id="204" /> +<TGConnectingPoint num="23" id="205" /> +<TGConnectingPoint num="24" id="206" /> +<TGConnectingPoint num="25" id="207" /> +<TGConnectingPoint num="26" id="208" /> +<TGConnectingPoint num="27" id="209" /> +<TGConnectingPoint num="28" id="210" /> +<TGConnectingPoint num="29" id="211" /> +<TGConnectingPoint num="30" id="212" /> +<TGConnectingPoint num="31" id="213" /> +<TGConnectingPoint num="32" id="214" /> +<TGConnectingPoint num="33" id="215" /> +<TGConnectingPoint num="34" id="216" /> +<TGConnectingPoint num="35" id="217" /> +<TGConnectingPoint num="36" id="218" /> +<TGConnectingPoint num="37" id="219" /> +<TGConnectingPoint num="38" id="220" /> +<TGConnectingPoint num="39" id="221" /> +<TGConnectingPoint num="40" id="222" /> +<TGConnectingPoint num="41" id="223" /> +<TGConnectingPoint num="42" id="224" /> +<extraparam> +<textline data="The system shall enable an aircraft " /> +<textline data="to set up a connection with a control tower." /> +<kind data="Functional" /> +<criticality data="High" /> +<reqType data="0" /> +<id data="GR" /> +<satisfied data="false" /> +<verified data="false" /> +<attackTreeNode data="" /> +<violatedAction data="" /> +<referenceElements data="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5207" id="241" > +<cdparam x="610" y="271" /> +<sizeparam width="183" height="31" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="151" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="AvatarElementReference" value="Lossy_Analysis_Design" /> +<TGConnectingPoint num="0" id="226" /> +<TGConnectingPoint num="1" id="227" /> +<TGConnectingPoint num="2" id="228" /> +<TGConnectingPoint num="3" id="229" /> +<TGConnectingPoint num="4" id="230" /> +<TGConnectingPoint num="5" id="231" /> +<TGConnectingPoint num="6" id="232" /> +<TGConnectingPoint num="7" id="233" /> +<TGConnectingPoint num="8" id="234" /> +<TGConnectingPoint num="9" id="235" /> +<TGConnectingPoint num="10" id="236" /> +<TGConnectingPoint num="11" id="237" /> +<TGConnectingPoint num="12" id="238" /> +<TGConnectingPoint num="13" id="239" /> +<TGConnectingPoint num="14" id="240" /> +</COMPONENT> + +<COMPONENT type="5207" id="257" > +<cdparam x="416" y="271" /> +<sizeparam width="183" height="31" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="163" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="AvatarElementReference" value="Unlossy_Analysis_Design" /> +<TGConnectingPoint num="0" id="242" /> +<TGConnectingPoint num="1" id="243" /> +<TGConnectingPoint num="2" id="244" /> +<TGConnectingPoint num="3" id="245" /> +<TGConnectingPoint num="4" id="246" /> +<TGConnectingPoint num="5" id="247" /> +<TGConnectingPoint num="6" id="248" /> +<TGConnectingPoint num="7" id="249" /> +<TGConnectingPoint num="8" id="250" /> +<TGConnectingPoint num="9" id="251" /> +<TGConnectingPoint num="10" id="252" /> +<TGConnectingPoint num="11" id="253" /> +<TGConnectingPoint num="12" id="254" /> +<TGConnectingPoint num="13" id="255" /> +<TGConnectingPoint num="14" id="256" /> +</COMPONENT> + +<CONNECTOR type="5208" id="259" > +<cdparam x="708" y="271" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<satisfy>>" /> +<TGConnectingPoint num="0" id="258" /> +<P1 x="701" y="271" id="233" /> +<P2 x="699" y="220" id="133" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5208" id="261" > +<cdparam x="494" y="296" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<satisfy>>" /> +<TGConnectingPoint num="0" id="260" /> +<P1 x="507" y="271" id="249" /> +<P2 x="507" y="220" id="131" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5206" id="263" > +<cdparam x="396" y="175" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<refine>>" /> +<TGConnectingPoint num="0" id="262" /> +<P1 x="411" y="170" id="95" /> +<P2 x="320" y="169" id="142" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5206" id="265" > +<cdparam x="146" y="120" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<refine>>" /> +<TGConnectingPoint num="0" id="264" /> +<P1 x="165" y="121" id="145" /> +<P2 x="167" y="91" id="192" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</AvatarRDPanel> + +<AvatarPDPanel name="Property" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" > +<CONNECTOR type="5312" id="267" > +<cdparam x="444" y="383" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="reg" /> +<TGConnectingPoint num="0" id="266" /> +<P1 x="444" y="383" id="306" /> +<P2 x="444" y="431" id="310" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5312" id="269" > +<cdparam x="475" y="306" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="reg" /> +<TGConnectingPoint num="0" id="268" /> +<P1 x="475" y="294" id="316" /> +<P2 x="464" y="343" id="301" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5312" id="271" > +<cdparam x="423" y="175" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="reg" /> +<TGConnectingPoint num="0" id="270" /> +<P1 x="424" y="175" id="349" /> +<P2 x="424" y="343" id="299" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5311" id="273" > +<cdparam x="179" y="234" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="272" /> +<P1 x="179" y="234" id="372" /> +<P2 x="445" y="234" id="319" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5311" id="275" > +<cdparam x="175" y="105" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="274" /> +<P1 x="175" y="105" id="392" /> +<P2 x="445" y="214" id="317" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5311" id="277" > +<cdparam x="175" y="158" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="276" /> +<P1 x="175" y="158" id="359" /> +<P2 x="379" y="125" id="341" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5311" id="279" > +<cdparam x="175" y="95" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="278" /> +<P1 x="175" y="95" id="385" /> +<P2 x="379" y="95" id="338" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<COMPONENT type="301" id="296" > +<cdparam x="72" y="433" /> +<sizeparam width="302" height="51" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="UML Note" value=" + Any connection request will eventually complete, + either successfully or unsuccessfully. + +" /> +<TGConnectingPoint num="0" id="280" /> +<TGConnectingPoint num="1" id="281" /> +<TGConnectingPoint num="2" id="282" /> +<TGConnectingPoint num="3" id="283" /> +<TGConnectingPoint num="4" id="284" /> +<TGConnectingPoint num="5" id="285" /> +<TGConnectingPoint num="6" id="286" /> +<TGConnectingPoint num="7" id="287" /> +<TGConnectingPoint num="8" id="288" /> +<TGConnectingPoint num="9" id="289" /> +<TGConnectingPoint num="10" id="290" /> +<TGConnectingPoint num="11" id="291" /> +<TGConnectingPoint num="12" id="292" /> +<TGConnectingPoint num="13" id="293" /> +<TGConnectingPoint num="14" id="294" /> +<TGConnectingPoint num="15" id="295" /> +<extraparam> +<Line value=" " /> +<Line value=" Any connection request will eventually complete," /> +<Line value=" either successfully or unsuccessfully." /> +<Line value=" " /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5309" id="309" > +<cdparam x="404" y="343" /> +<sizeparam width="80" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="OR" /> +<TGConnectingPoint num="0" id="297" /> +<TGConnectingPoint num="1" id="298" /> +<TGConnectingPoint num="2" id="299" /> +<TGConnectingPoint num="3" id="300" /> +<TGConnectingPoint num="4" id="301" /> +<TGConnectingPoint num="5" id="302" /> +<TGConnectingPoint num="6" id="303" /> +<TGConnectingPoint num="7" id="304" /> +<TGConnectingPoint num="8" id="305" /> +<TGConnectingPoint num="9" id="306" /> +<TGConnectingPoint num="10" id="307" /> +<TGConnectingPoint num="11" id="308" /> +</COMPONENT> + +<COMPONENT type="5308" id="314" > +<cdparam x="383" y="431" /> +<sizeparam width="122" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="TerminationProperty" /> +<TGConnectingPoint num="0" id="310" /> +<TGConnectingPoint num="1" id="311" /> +<TGConnectingPoint num="2" id="312" /> +<TGConnectingPoint num="3" id="313" /> +<extraparam> +<liveness data="0" /> +<not data="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5301" id="335" > +<cdparam x="445" y="194" /> +<sizeparam width="60" height="100" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="<<LC>>" /> +<TGConnectingPoint num="0" id="315" /> +<TGConnectingPoint num="1" id="316" /> +<TGConnectingPoint num="2" id="317" /> +<TGConnectingPoint num="3" id="318" /> +<TGConnectingPoint num="4" id="319" /> +<TGConnectingPoint num="5" id="320" /> +<TGConnectingPoint num="6" id="321" /> +<TGConnectingPoint num="7" id="322" /> +<TGConnectingPoint num="8" id="323" /> +<TGConnectingPoint num="9" id="324" /> +<TGConnectingPoint num="10" id="325" /> +<TGConnectingPoint num="11" id="326" /> +<TGConnectingPoint num="12" id="327" /> +<TGConnectingPoint num="13" id="328" /> +<TGConnectingPoint num="14" id="329" /> +<TGConnectingPoint num="15" id="330" /> +<TGConnectingPoint num="16" id="331" /> +<TGConnectingPoint num="17" id="332" /> +<TGConnectingPoint num="18" id="333" /> +<TGConnectingPoint num="19" id="334" /> +</COMPONENT> + +<COMPONENT type="5301" id="356" > +<cdparam x="379" y="75" /> +<sizeparam width="60" height="100" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="<<LC>>" /> +<TGConnectingPoint num="0" id="336" /> +<TGConnectingPoint num="1" id="337" /> +<TGConnectingPoint num="2" id="338" /> +<TGConnectingPoint num="3" id="339" /> +<TGConnectingPoint num="4" id="340" /> +<TGConnectingPoint num="5" id="341" /> +<TGConnectingPoint num="6" id="342" /> +<TGConnectingPoint num="7" id="343" /> +<TGConnectingPoint num="8" id="344" /> +<TGConnectingPoint num="9" id="345" /> +<TGConnectingPoint num="10" id="346" /> +<TGConnectingPoint num="11" id="347" /> +<TGConnectingPoint num="12" id="348" /> +<TGConnectingPoint num="13" id="349" /> +<TGConnectingPoint num="14" id="350" /> +<TGConnectingPoint num="15" id="351" /> +<TGConnectingPoint num="16" id="352" /> +<TGConnectingPoint num="17" id="353" /> +<TGConnectingPoint num="18" id="354" /> +<TGConnectingPoint num="19" id="355" /> +</COMPONENT> + +<COMPONENT type="5300" id="420" > +<cdparam x="23" y="18" /> +<sizeparam width="214" height="280" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Block0" value="Pilot" /> +<TGConnectingPoint num="0" id="396" /> +<TGConnectingPoint num="1" id="397" /> +<TGConnectingPoint num="2" id="398" /> +<TGConnectingPoint num="3" id="399" /> +<TGConnectingPoint num="4" id="400" /> +<TGConnectingPoint num="5" id="401" /> +<TGConnectingPoint num="6" id="402" /> +<TGConnectingPoint num="7" id="403" /> +<TGConnectingPoint num="8" id="404" /> +<TGConnectingPoint num="9" id="405" /> +<TGConnectingPoint num="10" id="406" /> +<TGConnectingPoint num="11" id="407" /> +<TGConnectingPoint num="12" id="408" /> +<TGConnectingPoint num="13" id="409" /> +<TGConnectingPoint num="14" id="410" /> +<TGConnectingPoint num="15" id="411" /> +<TGConnectingPoint num="16" id="412" /> +<TGConnectingPoint num="17" id="413" /> +<TGConnectingPoint num="18" id="414" /> +<TGConnectingPoint num="19" id="415" /> +<TGConnectingPoint num="20" id="416" /> +<TGConnectingPoint num="21" id="417" /> +<TGConnectingPoint num="22" id="418" /> +<TGConnectingPoint num="23" id="419" /> +</COMPONENT> +<SUBCOMPONENT type="5304" id="369" > +<father id="420" num="0" /> +<cdparam x="75" y="138" /> +<sizeparam width="100" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="114" minY="0" maxY="240" /> +<infoparam name="TGComponent" value="INconconf" /> +<TGConnectingPoint num="0" id="357" /> +<TGConnectingPoint num="1" id="358" /> +<TGConnectingPoint num="2" id="359" /> +<TGConnectingPoint num="3" id="360" /> +<TGConnectingPoint num="4" id="361" /> +<TGConnectingPoint num="5" id="362" /> +<TGConnectingPoint num="6" id="363" /> +<TGConnectingPoint num="7" id="364" /> +<TGConnectingPoint num="8" id="365" /> +<TGConnectingPoint num="9" id="366" /> +<TGConnectingPoint num="10" id="367" /> +<TGConnectingPoint num="11" id="368" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5304" id="382" > +<father id="420" num="1" /> +<cdparam x="79" y="214" /> +<sizeparam width="100" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="114" minY="0" maxY="240" /> +<infoparam name="TGComponent" value="INerror" /> +<TGConnectingPoint num="0" id="370" /> +<TGConnectingPoint num="1" id="371" /> +<TGConnectingPoint num="2" id="372" /> +<TGConnectingPoint num="3" id="373" /> +<TGConnectingPoint num="4" id="374" /> +<TGConnectingPoint num="5" id="375" /> +<TGConnectingPoint num="6" id="376" /> +<TGConnectingPoint num="7" id="377" /> +<TGConnectingPoint num="8" id="378" /> +<TGConnectingPoint num="9" id="379" /> +<TGConnectingPoint num="10" id="380" /> +<TGConnectingPoint num="11" id="381" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5304" id="395" > +<father id="420" num="2" /> +<cdparam x="75" y="75" /> +<sizeparam width="100" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="114" minY="0" maxY="240" /> +<infoparam name="TGComponent" value="INconreq" /> +<TGConnectingPoint num="0" id="383" /> +<TGConnectingPoint num="1" id="384" /> +<TGConnectingPoint num="2" id="385" /> +<TGConnectingPoint num="3" id="386" /> +<TGConnectingPoint num="4" id="387" /> +<TGConnectingPoint num="5" id="388" /> +<TGConnectingPoint num="6" id="389" /> +<TGConnectingPoint num="7" id="390" /> +<TGConnectingPoint num="8" id="391" /> +<TGConnectingPoint num="9" id="392" /> +<TGConnectingPoint num="10" id="393" /> +<TGConnectingPoint num="11" id="394" /> +</SUBCOMPONENT> + + +</AvatarPDPanel> + +</Modeling> + + + + +<Modeling type="Avatar MAD" nameTab="Assumptions" > +<AvatarMADPanel name="Assumptions_users" minX="10" maxX="1900" minY="10" maxY="900" zoom="1.0" > +<COMPONENT type="5250" id="452" > +<cdparam x="314" y="10" /> +<sizeparam width="312" height="174" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="164" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Assumption" value="Rendez_Vous_Acceptors" /> +<TGConnectingPoint num="0" id="421" /> +<TGConnectingPoint num="1" id="422" /> +<TGConnectingPoint num="2" id="423" /> +<TGConnectingPoint num="3" id="424" /> +<TGConnectingPoint num="4" id="425" /> +<TGConnectingPoint num="5" id="426" /> +<TGConnectingPoint num="6" id="427" /> +<TGConnectingPoint num="7" id="428" /> +<TGConnectingPoint num="8" id="429" /> +<TGConnectingPoint num="9" id="430" /> +<TGConnectingPoint num="10" id="431" /> +<TGConnectingPoint num="11" id="432" /> +<TGConnectingPoint num="12" id="433" /> +<TGConnectingPoint num="13" id="434" /> +<TGConnectingPoint num="14" id="435" /> +<TGConnectingPoint num="15" id="436" /> +<TGConnectingPoint num="16" id="437" /> +<TGConnectingPoint num="17" id="438" /> +<TGConnectingPoint num="18" id="439" /> +<TGConnectingPoint num="19" id="440" /> +<TGConnectingPoint num="20" id="441" /> +<TGConnectingPoint num="21" id="442" /> +<TGConnectingPoint num="22" id="443" /> +<TGConnectingPoint num="23" id="444" /> +<TGConnectingPoint num="24" id="445" /> +<TGConnectingPoint num="25" id="446" /> +<TGConnectingPoint num="26" id="447" /> +<TGConnectingPoint num="27" id="448" /> +<TGConnectingPoint num="28" id="449" /> +<TGConnectingPoint num="29" id="450" /> +<TGConnectingPoint num="30" id="451" /> +<extraparam> +<textline data="To keep the model of the user applications" /> +<textline data="as general as possible, the state machine" /> +<textline data="of the pilot (resp. of the controller) accepts all " /> +<textline data="the rendezvous offers from the board-level" /> +<textline data="protocol (resp. the ground-level protocol)." /> +<textline data="In other words, the user-level applications" /> +<textline data="are modeled as rendezvous acceptors." /> +<type data="1" /> +<durability data="1" /> +<source data="3" /> +<status data="1" /> +<limitation data="3" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5250" id="484" > +<cdparam x="57" y="82" /> +<sizeparam width="188" height="30" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="55" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Assumption" value="Users" /> +<TGConnectingPoint num="0" id="453" /> +<TGConnectingPoint num="1" id="454" /> +<TGConnectingPoint num="2" id="455" /> +<TGConnectingPoint num="3" id="456" /> +<TGConnectingPoint num="4" id="457" /> +<TGConnectingPoint num="5" id="458" /> +<TGConnectingPoint num="6" id="459" /> +<TGConnectingPoint num="7" id="460" /> +<TGConnectingPoint num="8" id="461" /> +<TGConnectingPoint num="9" id="462" /> +<TGConnectingPoint num="10" id="463" /> +<TGConnectingPoint num="11" id="464" /> +<TGConnectingPoint num="12" id="465" /> +<TGConnectingPoint num="13" id="466" /> +<TGConnectingPoint num="14" id="467" /> +<TGConnectingPoint num="15" id="468" /> +<TGConnectingPoint num="16" id="469" /> +<TGConnectingPoint num="17" id="470" /> +<TGConnectingPoint num="18" id="471" /> +<TGConnectingPoint num="19" id="472" /> +<TGConnectingPoint num="20" id="473" /> +<TGConnectingPoint num="21" id="474" /> +<TGConnectingPoint num="22" id="475" /> +<TGConnectingPoint num="23" id="476" /> +<TGConnectingPoint num="24" id="477" /> +<TGConnectingPoint num="25" id="478" /> +<TGConnectingPoint num="26" id="479" /> +<TGConnectingPoint num="27" id="480" /> +<TGConnectingPoint num="28" id="481" /> +<TGConnectingPoint num="29" id="482" /> +<TGConnectingPoint num="30" id="483" /> +<extraparam> +<textline data="This assumption and its derived assumptions" /> +<textline data="address the users of the FANS protocol layer." /> +<type data="1" /> +<durability data="1" /> +<source data="3" /> +<status data="1" /> +<limitation data="3" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5252" id="512" > +<cdparam x="627" y="301" /> +<sizeparam width="101" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="47" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarElementReference" value="Pilot" /> +<TGConnectingPoint num="0" id="485" /> +<TGConnectingPoint num="1" id="486" /> +<TGConnectingPoint num="2" id="487" /> +<TGConnectingPoint num="3" id="488" /> +<TGConnectingPoint num="4" id="489" /> +<TGConnectingPoint num="5" id="490" /> +<TGConnectingPoint num="6" id="491" /> +<TGConnectingPoint num="7" id="492" /> +<TGConnectingPoint num="8" id="493" /> +<TGConnectingPoint num="9" id="494" /> +<TGConnectingPoint num="10" id="495" /> +<TGConnectingPoint num="11" id="496" /> +<TGConnectingPoint num="12" id="497" /> +<TGConnectingPoint num="13" id="498" /> +<TGConnectingPoint num="14" id="499" /> +<TGConnectingPoint num="15" id="500" /> +<TGConnectingPoint num="16" id="501" /> +<TGConnectingPoint num="17" id="502" /> +<TGConnectingPoint num="18" id="503" /> +<TGConnectingPoint num="19" id="504" /> +<TGConnectingPoint num="20" id="505" /> +<TGConnectingPoint num="21" id="506" /> +<TGConnectingPoint num="22" id="507" /> +<TGConnectingPoint num="23" id="508" /> +<TGConnectingPoint num="24" id="509" /> +<TGConnectingPoint num="25" id="510" /> +<TGConnectingPoint num="26" id="511" /> +</COMPONENT> + +<COMPONENT type="5252" id="540" > +<cdparam x="489" y="301" /> +<sizeparam width="122" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="79" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarElementReference" value="Controller" /> +<TGConnectingPoint num="0" id="513" /> +<TGConnectingPoint num="1" id="514" /> +<TGConnectingPoint num="2" id="515" /> +<TGConnectingPoint num="3" id="516" /> +<TGConnectingPoint num="4" id="517" /> +<TGConnectingPoint num="5" id="518" /> +<TGConnectingPoint num="6" id="519" /> +<TGConnectingPoint num="7" id="520" /> +<TGConnectingPoint num="8" id="521" /> +<TGConnectingPoint num="9" id="522" /> +<TGConnectingPoint num="10" id="523" /> +<TGConnectingPoint num="11" id="524" /> +<TGConnectingPoint num="12" id="525" /> +<TGConnectingPoint num="13" id="526" /> +<TGConnectingPoint num="14" id="527" /> +<TGConnectingPoint num="15" id="528" /> +<TGConnectingPoint num="16" id="529" /> +<TGConnectingPoint num="17" id="530" /> +<TGConnectingPoint num="18" id="531" /> +<TGConnectingPoint num="19" id="532" /> +<TGConnectingPoint num="20" id="533" /> +<TGConnectingPoint num="21" id="534" /> +<TGConnectingPoint num="22" id="535" /> +<TGConnectingPoint num="23" id="536" /> +<TGConnectingPoint num="24" id="537" /> +<TGConnectingPoint num="25" id="538" /> +<TGConnectingPoint num="26" id="539" /> +</COMPONENT> + +<COMPONENT type="5251" id="568" > +<cdparam x="300" y="234" /> +<sizeparam width="152" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="110" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarDiagramReference" value="Design_unlossy" /> +<TGConnectingPoint num="0" id="541" /> +<TGConnectingPoint num="1" id="542" /> +<TGConnectingPoint num="2" id="543" /> +<TGConnectingPoint num="3" id="544" /> +<TGConnectingPoint num="4" id="545" /> +<TGConnectingPoint num="5" id="546" /> +<TGConnectingPoint num="6" id="547" /> +<TGConnectingPoint num="7" id="548" /> +<TGConnectingPoint num="8" id="549" /> +<TGConnectingPoint num="9" id="550" /> +<TGConnectingPoint num="10" id="551" /> +<TGConnectingPoint num="11" id="552" /> +<TGConnectingPoint num="12" id="553" /> +<TGConnectingPoint num="13" id="554" /> +<TGConnectingPoint num="14" id="555" /> +<TGConnectingPoint num="15" id="556" /> +<TGConnectingPoint num="16" id="557" /> +<TGConnectingPoint num="17" id="558" /> +<TGConnectingPoint num="18" id="559" /> +<TGConnectingPoint num="19" id="560" /> +<TGConnectingPoint num="20" id="561" /> +<TGConnectingPoint num="21" id="562" /> +<TGConnectingPoint num="22" id="563" /> +<TGConnectingPoint num="23" id="564" /> +<TGConnectingPoint num="24" id="565" /> +<TGConnectingPoint num="25" id="566" /> +<TGConnectingPoint num="26" id="567" /> +</COMPONENT> + +<COMPONENT type="5251" id="596" > +<cdparam x="473" y="234" /> +<sizeparam width="152" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="96" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarDiagramReference" value="Design_lossy" /> +<TGConnectingPoint num="0" id="569" /> +<TGConnectingPoint num="1" id="570" /> +<TGConnectingPoint num="2" id="571" /> +<TGConnectingPoint num="3" id="572" /> +<TGConnectingPoint num="4" id="573" /> +<TGConnectingPoint num="5" id="574" /> +<TGConnectingPoint num="6" id="575" /> +<TGConnectingPoint num="7" id="576" /> +<TGConnectingPoint num="8" id="577" /> +<TGConnectingPoint num="9" id="578" /> +<TGConnectingPoint num="10" id="579" /> +<TGConnectingPoint num="11" id="580" /> +<TGConnectingPoint num="12" id="581" /> +<TGConnectingPoint num="13" id="582" /> +<TGConnectingPoint num="14" id="583" /> +<TGConnectingPoint num="15" id="584" /> +<TGConnectingPoint num="16" id="585" /> +<TGConnectingPoint num="17" id="586" /> +<TGConnectingPoint num="18" id="587" /> +<TGConnectingPoint num="19" id="588" /> +<TGConnectingPoint num="20" id="589" /> +<TGConnectingPoint num="21" id="590" /> +<TGConnectingPoint num="22" id="591" /> +<TGConnectingPoint num="23" id="592" /> +<TGConnectingPoint num="24" id="593" /> +<TGConnectingPoint num="25" id="594" /> +<TGConnectingPoint num="26" id="595" /> +</COMPONENT> + +<COMPONENT type="5252" id="624" > +<cdparam x="357" y="303" /> +<sizeparam width="101" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="47" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarElementReference" value="Pilot" /> +<TGConnectingPoint num="0" id="597" /> +<TGConnectingPoint num="1" id="598" /> +<TGConnectingPoint num="2" id="599" /> +<TGConnectingPoint num="3" id="600" /> +<TGConnectingPoint num="4" id="601" /> +<TGConnectingPoint num="5" id="602" /> +<TGConnectingPoint num="6" id="603" /> +<TGConnectingPoint num="7" id="604" /> +<TGConnectingPoint num="8" id="605" /> +<TGConnectingPoint num="9" id="606" /> +<TGConnectingPoint num="10" id="607" /> +<TGConnectingPoint num="11" id="608" /> +<TGConnectingPoint num="12" id="609" /> +<TGConnectingPoint num="13" id="610" /> +<TGConnectingPoint num="14" id="611" /> +<TGConnectingPoint num="15" id="612" /> +<TGConnectingPoint num="16" id="613" /> +<TGConnectingPoint num="17" id="614" /> +<TGConnectingPoint num="18" id="615" /> +<TGConnectingPoint num="19" id="616" /> +<TGConnectingPoint num="20" id="617" /> +<TGConnectingPoint num="21" id="618" /> +<TGConnectingPoint num="22" id="619" /> +<TGConnectingPoint num="23" id="620" /> +<TGConnectingPoint num="24" id="621" /> +<TGConnectingPoint num="25" id="622" /> +<TGConnectingPoint num="26" id="623" /> +</COMPONENT> + +<COMPONENT type="5252" id="652" > +<cdparam x="225" y="302" /> +<sizeparam width="122" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="79" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarElementReference" value="Controller" /> +<TGConnectingPoint num="0" id="625" /> +<TGConnectingPoint num="1" id="626" /> +<TGConnectingPoint num="2" id="627" /> +<TGConnectingPoint num="3" id="628" /> +<TGConnectingPoint num="4" id="629" /> +<TGConnectingPoint num="5" id="630" /> +<TGConnectingPoint num="6" id="631" /> +<TGConnectingPoint num="7" id="632" /> +<TGConnectingPoint num="8" id="633" /> +<TGConnectingPoint num="9" id="634" /> +<TGConnectingPoint num="10" id="635" /> +<TGConnectingPoint num="11" id="636" /> +<TGConnectingPoint num="12" id="637" /> +<TGConnectingPoint num="13" id="638" /> +<TGConnectingPoint num="14" id="639" /> +<TGConnectingPoint num="15" id="640" /> +<TGConnectingPoint num="16" id="641" /> +<TGConnectingPoint num="17" id="642" /> +<TGConnectingPoint num="18" id="643" /> +<TGConnectingPoint num="19" id="644" /> +<TGConnectingPoint num="20" id="645" /> +<TGConnectingPoint num="21" id="646" /> +<TGConnectingPoint num="22" id="647" /> +<TGConnectingPoint num="23" id="648" /> +<TGConnectingPoint num="24" id="649" /> +<TGConnectingPoint num="25" id="650" /> +<TGConnectingPoint num="26" id="651" /> +</COMPONENT> + +<CONNECTOR type="5255" id="654" > +<cdparam x="392" y="184" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<impact>>" /> +<TGConnectingPoint num="0" id="653" /> +<P1 x="392" y="184" id="442" /> +<P2 x="376" y="234" id="548" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5257" id="656" > +<cdparam x="286" y="302" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<TGConnectingPoint num="0" id="655" /> +<P1 x="286" y="302" id="632" /> +<P2 x="338" y="264" id="550" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5257" id="658" > +<cdparam x="407" y="303" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<TGConnectingPoint num="0" id="657" /> +<P1 x="407" y="303" id="604" /> +<P2 x="414" y="264" id="552" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5253" id="660" > +<cdparam x="212" y="209" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<composition>>" /> +<TGConnectingPoint num="0" id="659" /> +<P1 x="314" y="97" id="422" /> +<P2 x="245" y="97" id="457" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5257" id="662" > +<cdparam x="681" y="368" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<TGConnectingPoint num="0" id="661" /> +<P1 x="550" y="301" id="520" /> +<P2 x="511" y="264" id="578" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5257" id="664" > +<cdparam x="681" y="321" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<TGConnectingPoint num="0" id="663" /> +<P1 x="677" y="301" id="492" /> +<P2 x="587" y="264" id="580" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5255" id="666" > +<cdparam x="368" y="339" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<impact>>" /> +<TGConnectingPoint num="0" id="665" /> +<P1 x="548" y="184" id="444" /> +<P2 x="549" y="234" id="576" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</AvatarMADPanel> + +<AvatarMADPanel name="Assumptions_protocol_layer" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" > +<COMPONENT type="5250" id="698" > +<cdparam x="253" y="192" /> +<sizeparam width="451" height="122" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="192" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Assumption" value="Message_Loss_Compensation" /> +<TGConnectingPoint num="0" id="667" /> +<TGConnectingPoint num="1" id="668" /> +<TGConnectingPoint num="2" id="669" /> +<TGConnectingPoint num="3" id="670" /> +<TGConnectingPoint num="4" id="671" /> +<TGConnectingPoint num="5" id="672" /> +<TGConnectingPoint num="6" id="673" /> +<TGConnectingPoint num="7" id="674" /> +<TGConnectingPoint num="8" id="675" /> +<TGConnectingPoint num="9" id="676" /> +<TGConnectingPoint num="10" id="677" /> +<TGConnectingPoint num="11" id="678" /> +<TGConnectingPoint num="12" id="679" /> +<TGConnectingPoint num="13" id="680" /> +<TGConnectingPoint num="14" id="681" /> +<TGConnectingPoint num="15" id="682" /> +<TGConnectingPoint num="16" id="683" /> +<TGConnectingPoint num="17" id="684" /> +<TGConnectingPoint num="18" id="685" /> +<TGConnectingPoint num="19" id="686" /> +<TGConnectingPoint num="20" id="687" /> +<TGConnectingPoint num="21" id="688" /> +<TGConnectingPoint num="22" id="689" /> +<TGConnectingPoint num="23" id="690" /> +<TGConnectingPoint num="24" id="691" /> +<TGConnectingPoint num="25" id="692" /> +<TGConnectingPoint num="26" id="693" /> +<TGConnectingPoint num="27" id="694" /> +<TGConnectingPoint num="28" id="695" /> +<TGConnectingPoint num="29" id="696" /> +<TGConnectingPoint num="30" id="697" /> +<extraparam> +<textline data="Only CCs may be lost." /> +<textline data="The protocol bounds retransmissions to 3." /> +<textline data="Would the procedure fail, the pilot and the controller will be informed." /> +<type data="0" /> +<durability data="2" /> +<source data="3" /> +<status data="1" /> +<limitation data="4" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5250" id="730" > +<cdparam x="19" y="67" /> +<sizeparam width="184" height="30" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="106" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Assumption" value="Protocol_Layer" /> +<TGConnectingPoint num="0" id="699" /> +<TGConnectingPoint num="1" id="700" /> +<TGConnectingPoint num="2" id="701" /> +<TGConnectingPoint num="3" id="702" /> +<TGConnectingPoint num="4" id="703" /> +<TGConnectingPoint num="5" id="704" /> +<TGConnectingPoint num="6" id="705" /> +<TGConnectingPoint num="7" id="706" /> +<TGConnectingPoint num="8" id="707" /> +<TGConnectingPoint num="9" id="708" /> +<TGConnectingPoint num="10" id="709" /> +<TGConnectingPoint num="11" id="710" /> +<TGConnectingPoint num="12" id="711" /> +<TGConnectingPoint num="13" id="712" /> +<TGConnectingPoint num="14" id="713" /> +<TGConnectingPoint num="15" id="714" /> +<TGConnectingPoint num="16" id="715" /> +<TGConnectingPoint num="17" id="716" /> +<TGConnectingPoint num="18" id="717" /> +<TGConnectingPoint num="19" id="718" /> +<TGConnectingPoint num="20" id="719" /> +<TGConnectingPoint num="21" id="720" /> +<TGConnectingPoint num="22" id="721" /> +<TGConnectingPoint num="23" id="722" /> +<TGConnectingPoint num="24" id="723" /> +<TGConnectingPoint num="25" id="724" /> +<TGConnectingPoint num="26" id="725" /> +<TGConnectingPoint num="27" id="726" /> +<TGConnectingPoint num="28" id="727" /> +<TGConnectingPoint num="29" id="728" /> +<TGConnectingPoint num="30" id="729" /> +<extraparam> +<textline data="Assumption description:" /> +<textline data="Double-click to edit" /> +<type data="0" /> +<durability data="0" /> +<source data="0" /> +<status data="0" /> +<limitation data="0" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5250" id="762" > +<cdparam x="250" y="22" /> +<sizeparam width="454" height="105" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="217" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Assumption" value="Temporal_Ordering_Of_Messages" /> +<TGConnectingPoint num="0" id="731" /> +<TGConnectingPoint num="1" id="732" /> +<TGConnectingPoint num="2" id="733" /> +<TGConnectingPoint num="3" id="734" /> +<TGConnectingPoint num="4" id="735" /> +<TGConnectingPoint num="5" id="736" /> +<TGConnectingPoint num="6" id="737" /> +<TGConnectingPoint num="7" id="738" /> +<TGConnectingPoint num="8" id="739" /> +<TGConnectingPoint num="9" id="740" /> +<TGConnectingPoint num="10" id="741" /> +<TGConnectingPoint num="11" id="742" /> +<TGConnectingPoint num="12" id="743" /> +<TGConnectingPoint num="13" id="744" /> +<TGConnectingPoint num="14" id="745" /> +<TGConnectingPoint num="15" id="746" /> +<TGConnectingPoint num="16" id="747" /> +<TGConnectingPoint num="17" id="748" /> +<TGConnectingPoint num="18" id="749" /> +<TGConnectingPoint num="19" id="750" /> +<TGConnectingPoint num="20" id="751" /> +<TGConnectingPoint num="21" id="752" /> +<TGConnectingPoint num="22" id="753" /> +<TGConnectingPoint num="23" id="754" /> +<TGConnectingPoint num="24" id="755" /> +<TGConnectingPoint num="25" id="756" /> +<TGConnectingPoint num="26" id="757" /> +<TGConnectingPoint num="27" id="758" /> +<TGConnectingPoint num="28" id="759" /> +<TGConnectingPoint num="29" id="760" /> +<TGConnectingPoint num="30" id="761" /> +<extraparam> +<textline data="Message parameters such as the tower's address are" /> +<textline data=" not represented. This contributes to make reachability" /> +<textline data="analysis converge." /> +<type data="0" /> +<durability data="1" /> +<source data="3" /> +<status data="1" /> +<limitation data="4" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5251" id="790" > +<cdparam x="386" y="358" /> +<sizeparam width="152" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="110" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="AvatarDiagramReference" value="Design_unlossy" /> +<TGConnectingPoint num="0" id="763" /> +<TGConnectingPoint num="1" id="764" /> +<TGConnectingPoint num="2" id="765" /> +<TGConnectingPoint num="3" id="766" /> +<TGConnectingPoint num="4" id="767" /> +<TGConnectingPoint num="5" id="768" /> +<TGConnectingPoint num="6" id="769" /> +<TGConnectingPoint num="7" id="770" /> +<TGConnectingPoint num="8" id="771" /> +<TGConnectingPoint num="9" id="772" /> +<TGConnectingPoint num="10" id="773" /> +<TGConnectingPoint num="11" id="774" /> +<TGConnectingPoint num="12" id="775" /> +<TGConnectingPoint num="13" id="776" /> +<TGConnectingPoint num="14" id="777" /> +<TGConnectingPoint num="15" id="778" /> +<TGConnectingPoint num="16" id="779" /> +<TGConnectingPoint num="17" id="780" /> +<TGConnectingPoint num="18" id="781" /> +<TGConnectingPoint num="19" id="782" /> +<TGConnectingPoint num="20" id="783" /> +<TGConnectingPoint num="21" id="784" /> +<TGConnectingPoint num="22" id="785" /> +<TGConnectingPoint num="23" id="786" /> +<TGConnectingPoint num="24" id="787" /> +<TGConnectingPoint num="25" id="788" /> +<TGConnectingPoint num="26" id="789" /> +</COMPONENT> + +<COMPONENT type="5252" id="818" > +<cdparam x="443" y="427" /> +<sizeparam width="101" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="47" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="AvatarElementReference" value="Pilot" /> +<TGConnectingPoint num="0" id="791" /> +<TGConnectingPoint num="1" id="792" /> +<TGConnectingPoint num="2" id="793" /> +<TGConnectingPoint num="3" id="794" /> +<TGConnectingPoint num="4" id="795" /> +<TGConnectingPoint num="5" id="796" /> +<TGConnectingPoint num="6" id="797" /> +<TGConnectingPoint num="7" id="798" /> +<TGConnectingPoint num="8" id="799" /> +<TGConnectingPoint num="9" id="800" /> +<TGConnectingPoint num="10" id="801" /> +<TGConnectingPoint num="11" id="802" /> +<TGConnectingPoint num="12" id="803" /> +<TGConnectingPoint num="13" id="804" /> +<TGConnectingPoint num="14" id="805" /> +<TGConnectingPoint num="15" id="806" /> +<TGConnectingPoint num="16" id="807" /> +<TGConnectingPoint num="17" id="808" /> +<TGConnectingPoint num="18" id="809" /> +<TGConnectingPoint num="19" id="810" /> +<TGConnectingPoint num="20" id="811" /> +<TGConnectingPoint num="21" id="812" /> +<TGConnectingPoint num="22" id="813" /> +<TGConnectingPoint num="23" id="814" /> +<TGConnectingPoint num="24" id="815" /> +<TGConnectingPoint num="25" id="816" /> +<TGConnectingPoint num="26" id="817" /> +</COMPONENT> + +<COMPONENT type="5252" id="846" > +<cdparam x="311" y="426" /> +<sizeparam width="122" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="79" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="AvatarElementReference" value="Controller" /> +<TGConnectingPoint num="0" id="819" /> +<TGConnectingPoint num="1" id="820" /> +<TGConnectingPoint num="2" id="821" /> +<TGConnectingPoint num="3" id="822" /> +<TGConnectingPoint num="4" id="823" /> +<TGConnectingPoint num="5" id="824" /> +<TGConnectingPoint num="6" id="825" /> +<TGConnectingPoint num="7" id="826" /> +<TGConnectingPoint num="8" id="827" /> +<TGConnectingPoint num="9" id="828" /> +<TGConnectingPoint num="10" id="829" /> +<TGConnectingPoint num="11" id="830" /> +<TGConnectingPoint num="12" id="831" /> +<TGConnectingPoint num="13" id="832" /> +<TGConnectingPoint num="14" id="833" /> +<TGConnectingPoint num="15" id="834" /> +<TGConnectingPoint num="16" id="835" /> +<TGConnectingPoint num="17" id="836" /> +<TGConnectingPoint num="18" id="837" /> +<TGConnectingPoint num="19" id="838" /> +<TGConnectingPoint num="20" id="839" /> +<TGConnectingPoint num="21" id="840" /> +<TGConnectingPoint num="22" id="841" /> +<TGConnectingPoint num="23" id="842" /> +<TGConnectingPoint num="24" id="843" /> +<TGConnectingPoint num="25" id="844" /> +<TGConnectingPoint num="26" id="845" /> +</COMPONENT> + +<CONNECTOR type="5255" id="848" > +<cdparam x="478" y="314" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<impact>>" /> +<TGConnectingPoint num="0" id="847" /> +<P1 x="478" y="314" id="689" /> +<P2 x="462" y="358" id="770" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5254" id="850" > +<cdparam x="474" y="127" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<versioning>>" /> +<TGConnectingPoint num="0" id="849" /> +<P1 x="477" y="127" id="741" /> +<P2 x="478" y="192" id="674" /> +<AutomaticDrawing data="true" /> +<extraparam> +<oldVersion data="1" /> +<newVersion data="2" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="5253" id="852" > +<cdparam x="250" y="73" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<composition>>" /> +<TGConnectingPoint num="0" id="851" /> +<P1 x="250" y="74" id="732" /> +<P2 x="203" y="74" id="702" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5257" id="854" > +<cdparam x="372" y="426" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<TGConnectingPoint num="0" id="853" /> +<P1 x="372" y="426" id="826" /> +<P2 x="424" y="388" id="772" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5257" id="856" > +<cdparam x="493" y="427" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<TGConnectingPoint num="0" id="855" /> +<P1 x="493" y="427" id="798" /> +<P2 x="500" y="388" id="774" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</AvatarMADPanel> + +<AvatarMADPanel name="Assumptions_underlying_network" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" > +<COMPONENT type="5250" id="888" > +<cdparam x="249" y="11" /> +<sizeparam width="360" height="125" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="109" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Assumption" value="PerfectMedium" /> +<TGConnectingPoint num="0" id="857" /> +<TGConnectingPoint num="1" id="858" /> +<TGConnectingPoint num="2" id="859" /> +<TGConnectingPoint num="3" id="860" /> +<TGConnectingPoint num="4" id="861" /> +<TGConnectingPoint num="5" id="862" /> +<TGConnectingPoint num="6" id="863" /> +<TGConnectingPoint num="7" id="864" /> +<TGConnectingPoint num="8" id="865" /> +<TGConnectingPoint num="9" id="866" /> +<TGConnectingPoint num="10" id="867" /> +<TGConnectingPoint num="11" id="868" /> +<TGConnectingPoint num="12" id="869" /> +<TGConnectingPoint num="13" id="870" /> +<TGConnectingPoint num="14" id="871" /> +<TGConnectingPoint num="15" id="872" /> +<TGConnectingPoint num="16" id="873" /> +<TGConnectingPoint num="17" id="874" /> +<TGConnectingPoint num="18" id="875" /> +<TGConnectingPoint num="19" id="876" /> +<TGConnectingPoint num="20" id="877" /> +<TGConnectingPoint num="21" id="878" /> +<TGConnectingPoint num="22" id="879" /> +<TGConnectingPoint num="23" id="880" /> +<TGConnectingPoint num="24" id="881" /> +<TGConnectingPoint num="25" id="882" /> +<TGConnectingPoint num="26" id="883" /> +<TGConnectingPoint num="27" id="884" /> +<TGConnectingPoint num="28" id="885" /> +<TGConnectingPoint num="29" id="886" /> +<TGConnectingPoint num="30" id="887" /> +<extraparam> +<textline data="The network will never corrupt or duplicate messages. " /> +<textline data="Nor it will desequence messages." /> +<textline data="Transmission delay = 0 in both sense." /> +<type data="0" /> +<durability data="1" /> +<source data="3" /> +<status data="1" /> +<limitation data="3" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5250" id="920" > +<cdparam x="10" y="35" /> +<sizeparam width="172" height="30" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="71" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Assumption" value="Network" /> +<TGConnectingPoint num="0" id="889" /> +<TGConnectingPoint num="1" id="890" /> +<TGConnectingPoint num="2" id="891" /> +<TGConnectingPoint num="3" id="892" /> +<TGConnectingPoint num="4" id="893" /> +<TGConnectingPoint num="5" id="894" /> +<TGConnectingPoint num="6" id="895" /> +<TGConnectingPoint num="7" id="896" /> +<TGConnectingPoint num="8" id="897" /> +<TGConnectingPoint num="9" id="898" /> +<TGConnectingPoint num="10" id="899" /> +<TGConnectingPoint num="11" id="900" /> +<TGConnectingPoint num="12" id="901" /> +<TGConnectingPoint num="13" id="902" /> +<TGConnectingPoint num="14" id="903" /> +<TGConnectingPoint num="15" id="904" /> +<TGConnectingPoint num="16" id="905" /> +<TGConnectingPoint num="17" id="906" /> +<TGConnectingPoint num="18" id="907" /> +<TGConnectingPoint num="19" id="908" /> +<TGConnectingPoint num="20" id="909" /> +<TGConnectingPoint num="21" id="910" /> +<TGConnectingPoint num="22" id="911" /> +<TGConnectingPoint num="23" id="912" /> +<TGConnectingPoint num="24" id="913" /> +<TGConnectingPoint num="25" id="914" /> +<TGConnectingPoint num="26" id="915" /> +<TGConnectingPoint num="27" id="916" /> +<TGConnectingPoint num="28" id="917" /> +<TGConnectingPoint num="29" id="918" /> +<TGConnectingPoint num="30" id="919" /> +<extraparam> +<textline data="Assumption description:" /> +<textline data="Double-click to edit" /> +<type data="0" /> +<durability data="0" /> +<source data="0" /> +<status data="0" /> +<limitation data="0" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5251" id="948" > +<cdparam x="521" y="316" /> +<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="110" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="AvatarDiagramReference" value="Design_unlossy" /> +<TGConnectingPoint num="0" id="921" /> +<TGConnectingPoint num="1" id="922" /> +<TGConnectingPoint num="2" id="923" /> +<TGConnectingPoint num="3" id="924" /> +<TGConnectingPoint num="4" id="925" /> +<TGConnectingPoint num="5" id="926" /> +<TGConnectingPoint num="6" id="927" /> +<TGConnectingPoint num="7" id="928" /> +<TGConnectingPoint num="8" id="929" /> +<TGConnectingPoint num="9" id="930" /> +<TGConnectingPoint num="10" id="931" /> +<TGConnectingPoint num="11" id="932" /> +<TGConnectingPoint num="12" id="933" /> +<TGConnectingPoint num="13" id="934" /> +<TGConnectingPoint num="14" id="935" /> +<TGConnectingPoint num="15" id="936" /> +<TGConnectingPoint num="16" id="937" /> +<TGConnectingPoint num="17" id="938" /> +<TGConnectingPoint num="18" id="939" /> +<TGConnectingPoint num="19" id="940" /> +<TGConnectingPoint num="20" id="941" /> +<TGConnectingPoint num="21" id="942" /> +<TGConnectingPoint num="22" id="943" /> +<TGConnectingPoint num="23" id="944" /> +<TGConnectingPoint num="24" id="945" /> +<TGConnectingPoint num="25" id="946" /> +<TGConnectingPoint num="26" id="947" /> +</COMPONENT> + +<COMPONENT type="5251" id="976" > +<cdparam x="91" y="309" /> +<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="110" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="AvatarDiagramReference" value="Design_unlossy" /> +<TGConnectingPoint num="0" id="949" /> +<TGConnectingPoint num="1" id="950" /> +<TGConnectingPoint num="2" id="951" /> +<TGConnectingPoint num="3" id="952" /> +<TGConnectingPoint num="4" id="953" /> +<TGConnectingPoint num="5" id="954" /> +<TGConnectingPoint num="6" id="955" /> +<TGConnectingPoint num="7" id="956" /> +<TGConnectingPoint num="8" id="957" /> +<TGConnectingPoint num="9" id="958" /> +<TGConnectingPoint num="10" id="959" /> +<TGConnectingPoint num="11" id="960" /> +<TGConnectingPoint num="12" id="961" /> +<TGConnectingPoint num="13" id="962" /> +<TGConnectingPoint num="14" id="963" /> +<TGConnectingPoint num="15" id="964" /> +<TGConnectingPoint num="16" id="965" /> +<TGConnectingPoint num="17" id="966" /> +<TGConnectingPoint num="18" id="967" /> +<TGConnectingPoint num="19" id="968" /> +<TGConnectingPoint num="20" id="969" /> +<TGConnectingPoint num="21" id="970" /> +<TGConnectingPoint num="22" id="971" /> +<TGConnectingPoint num="23" id="972" /> +<TGConnectingPoint num="24" id="973" /> +<TGConnectingPoint num="25" id="974" /> +<TGConnectingPoint num="26" id="975" /> +</COMPONENT> + +<COMPONENT type="5250" id="1008" > +<cdparam x="441" y="159" /> +<sizeparam width="311" height="119" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="108" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Assumption" value="Lossy_Network" /> +<TGConnectingPoint num="0" id="977" /> +<TGConnectingPoint num="1" id="978" /> +<TGConnectingPoint num="2" id="979" /> +<TGConnectingPoint num="3" id="980" /> +<TGConnectingPoint num="4" id="981" /> +<TGConnectingPoint num="5" id="982" /> +<TGConnectingPoint num="6" id="983" /> +<TGConnectingPoint num="7" id="984" /> +<TGConnectingPoint num="8" id="985" /> +<TGConnectingPoint num="9" id="986" /> +<TGConnectingPoint num="10" id="987" /> +<TGConnectingPoint num="11" id="988" /> +<TGConnectingPoint num="12" id="989" /> +<TGConnectingPoint num="13" id="990" /> +<TGConnectingPoint num="14" id="991" /> +<TGConnectingPoint num="15" id="992" /> +<TGConnectingPoint num="16" id="993" /> +<TGConnectingPoint num="17" id="994" /> +<TGConnectingPoint num="18" id="995" /> +<TGConnectingPoint num="19" id="996" /> +<TGConnectingPoint num="20" id="997" /> +<TGConnectingPoint num="21" id="998" /> +<TGConnectingPoint num="22" id="999" /> +<TGConnectingPoint num="23" id="1000" /> +<TGConnectingPoint num="24" id="1001" /> +<TGConnectingPoint num="25" id="1002" /> +<TGConnectingPoint num="26" id="1003" /> +<TGConnectingPoint num="27" id="1004" /> +<TGConnectingPoint num="28" id="1005" /> +<TGConnectingPoint num="29" id="1006" /> +<TGConnectingPoint num="30" id="1007" /> +<extraparam> +<textline data="The network may loss one type of message:" /> +<textline data="the CC issued by the ground station after the" /> +<textline data="controller has acknowledged the connection." /> +<type data="1" /> +<durability data="2" /> +<source data="3" /> +<status data="1" /> +<limitation data="3" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5250" id="1040" > +<cdparam x="27" y="164" /> +<sizeparam width="277" height="108" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="120" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Assumption" value="Unlossy_Network" /> +<TGConnectingPoint num="0" id="1009" /> +<TGConnectingPoint num="1" id="1010" /> +<TGConnectingPoint num="2" id="1011" /> +<TGConnectingPoint num="3" id="1012" /> +<TGConnectingPoint num="4" id="1013" /> +<TGConnectingPoint num="5" id="1014" /> +<TGConnectingPoint num="6" id="1015" /> +<TGConnectingPoint num="7" id="1016" /> +<TGConnectingPoint num="8" id="1017" /> +<TGConnectingPoint num="9" id="1018" /> +<TGConnectingPoint num="10" id="1019" /> +<TGConnectingPoint num="11" id="1020" /> +<TGConnectingPoint num="12" id="1021" /> +<TGConnectingPoint num="13" id="1022" /> +<TGConnectingPoint num="14" id="1023" /> +<TGConnectingPoint num="15" id="1024" /> +<TGConnectingPoint num="16" id="1025" /> +<TGConnectingPoint num="17" id="1026" /> +<TGConnectingPoint num="18" id="1027" /> +<TGConnectingPoint num="19" id="1028" /> +<TGConnectingPoint num="20" id="1029" /> +<TGConnectingPoint num="21" id="1030" /> +<TGConnectingPoint num="22" id="1031" /> +<TGConnectingPoint num="23" id="1032" /> +<TGConnectingPoint num="24" id="1033" /> +<TGConnectingPoint num="25" id="1034" /> +<TGConnectingPoint num="26" id="1035" /> +<TGConnectingPoint num="27" id="1036" /> +<TGConnectingPoint num="28" id="1037" /> +<TGConnectingPoint num="29" id="1038" /> +<TGConnectingPoint num="30" id="1039" /> +<extraparam> +<textline data="The network does not loose messages." /> +<type data="1" /> +<durability data="2" /> +<source data="3" /> +<status data="1" /> +<limitation data="3" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5252" id="1068" > +<cdparam x="96" y="375" /> +<sizeparam width="139" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="71" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="AvatarElementReference" value="Network" /> +<TGConnectingPoint num="0" id="1041" /> +<TGConnectingPoint num="1" id="1042" /> +<TGConnectingPoint num="2" id="1043" /> +<TGConnectingPoint num="3" id="1044" /> +<TGConnectingPoint num="4" id="1045" /> +<TGConnectingPoint num="5" id="1046" /> +<TGConnectingPoint num="6" id="1047" /> +<TGConnectingPoint num="7" id="1048" /> +<TGConnectingPoint num="8" id="1049" /> +<TGConnectingPoint num="9" id="1050" /> +<TGConnectingPoint num="10" id="1051" /> +<TGConnectingPoint num="11" id="1052" /> +<TGConnectingPoint num="12" id="1053" /> +<TGConnectingPoint num="13" id="1054" /> +<TGConnectingPoint num="14" id="1055" /> +<TGConnectingPoint num="15" id="1056" /> +<TGConnectingPoint num="16" id="1057" /> +<TGConnectingPoint num="17" id="1058" /> +<TGConnectingPoint num="18" id="1059" /> +<TGConnectingPoint num="19" id="1060" /> +<TGConnectingPoint num="20" id="1061" /> +<TGConnectingPoint num="21" id="1062" /> +<TGConnectingPoint num="22" id="1063" /> +<TGConnectingPoint num="23" id="1064" /> +<TGConnectingPoint num="24" id="1065" /> +<TGConnectingPoint num="25" id="1066" /> +<TGConnectingPoint num="26" id="1067" /> +</COMPONENT> + +<COMPONENT type="5252" id="1096" > +<cdparam x="521" y="381" /> +<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="71" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="AvatarElementReference" value="Network" /> +<TGConnectingPoint num="0" id="1069" /> +<TGConnectingPoint num="1" id="1070" /> +<TGConnectingPoint num="2" id="1071" /> +<TGConnectingPoint num="3" id="1072" /> +<TGConnectingPoint num="4" id="1073" /> +<TGConnectingPoint num="5" id="1074" /> +<TGConnectingPoint num="6" id="1075" /> +<TGConnectingPoint num="7" id="1076" /> +<TGConnectingPoint num="8" id="1077" /> +<TGConnectingPoint num="9" id="1078" /> +<TGConnectingPoint num="10" id="1079" /> +<TGConnectingPoint num="11" id="1080" /> +<TGConnectingPoint num="12" id="1081" /> +<TGConnectingPoint num="13" id="1082" /> +<TGConnectingPoint num="14" id="1083" /> +<TGConnectingPoint num="15" id="1084" /> +<TGConnectingPoint num="16" id="1085" /> +<TGConnectingPoint num="17" id="1086" /> +<TGConnectingPoint num="18" id="1087" /> +<TGConnectingPoint num="19" id="1088" /> +<TGConnectingPoint num="20" id="1089" /> +<TGConnectingPoint num="21" id="1090" /> +<TGConnectingPoint num="22" id="1091" /> +<TGConnectingPoint num="23" id="1092" /> +<TGConnectingPoint num="24" id="1093" /> +<TGConnectingPoint num="25" id="1094" /> +<TGConnectingPoint num="26" id="1095" /> +</COMPONENT> + +<CONNECTOR type="5253" id="1098" > +<cdparam x="148" y="165" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<composition>>" /> +<TGConnectingPoint num="0" id="1097" /> +<P1 x="96" y="164" id="1015" /> +<P2 x="96" y="65" id="899" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5253" id="1100" > +<cdparam x="247" y="40" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<composition>>" /> +<TGConnectingPoint num="0" id="1099" /> +<P1 x="249" y="42" id="857" /> +<P2 x="182" y="42" id="892" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5257" id="1102" > +<cdparam x="707" y="544" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<TGConnectingPoint num="0" id="1101" /> +<P1 x="596" y="381" id="1076" /> +<P2 x="596" y="346" id="931" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5255" id="1104" > +<cdparam x="304" y="548" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<impact>>" /> +<TGConnectingPoint num="0" id="1103" /> +<P1 x="596" y="278" id="999" /> +<P2 x="596" y="316" id="928" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5257" id="1106" > +<cdparam x="706" y="420" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<TGConnectingPoint num="0" id="1105" /> +<P1 x="165" y="375" id="1048" /> +<P2 x="166" y="339" id="959" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5255" id="1108" > +<cdparam x="306" y="417" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<impact>>" /> +<TGConnectingPoint num="0" id="1107" /> +<P1 x="165" y="272" id="1031" /> +<P2 x="166" y="309" id="956" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5254" id="1110" > +<cdparam x="739" y="293" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<versioning>>" /> +<TGConnectingPoint num="0" id="1109" /> +<P1 x="304" y="218" id="1013" /> +<P2 x="441" y="218" id="978" /> +<AutomaticDrawing data="true" /> +<extraparam> +<oldVersion data="1" /> +<newVersion data="2" /> +</extraparam> +</CONNECTOR> + +</AvatarMADPanel> + +</Modeling> + + + + +<Modeling type="Avatar Analysis" nameTab="Analysis_unlossy" > +<UseCaseDiagramPanel name="Use Case Diagram" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="703" id="1143" > +<cdparam x="161" y="140" /> +<sizeparam width="74" height="50" minWidth="40" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="actor" value="Network" /> +<TGConnectingPoint num="0" id="1111" /> +<TGConnectingPoint num="1" id="1112" /> +<TGConnectingPoint num="2" id="1113" /> +<TGConnectingPoint num="3" id="1114" /> +<TGConnectingPoint num="4" id="1115" /> +<TGConnectingPoint num="5" id="1116" /> +<TGConnectingPoint num="6" id="1117" /> +<TGConnectingPoint num="7" id="1118" /> +<TGConnectingPoint num="8" id="1119" /> +<TGConnectingPoint num="9" id="1120" /> +<TGConnectingPoint num="10" id="1121" /> +<TGConnectingPoint num="11" id="1122" /> +<TGConnectingPoint num="12" id="1123" /> +<TGConnectingPoint num="13" id="1124" /> +<TGConnectingPoint num="14" id="1125" /> +<TGConnectingPoint num="15" id="1126" /> +<TGConnectingPoint num="16" id="1127" /> +<TGConnectingPoint num="17" id="1128" /> +<TGConnectingPoint num="18" id="1129" /> +<TGConnectingPoint num="19" id="1130" /> +<TGConnectingPoint num="20" id="1131" /> +<TGConnectingPoint num="21" id="1132" /> +<TGConnectingPoint num="22" id="1133" /> +<TGConnectingPoint num="23" id="1134" /> +<TGConnectingPoint num="24" id="1135" /> +<TGConnectingPoint num="25" id="1136" /> +<TGConnectingPoint num="26" id="1137" /> +<TGConnectingPoint num="27" id="1138" /> +<TGConnectingPoint num="28" id="1139" /> +<TGConnectingPoint num="29" id="1140" /> +<TGConnectingPoint num="30" id="1141" /> +<TGConnectingPoint num="31" id="1142" /> +</COMPONENT> + +<COMPONENT type="700" id="1176" > +<cdparam x="332" y="38" /> +<sizeparam width="30" height="70" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="actor" value="Controller" /> +<TGConnectingPoint num="0" id="1144" /> +<TGConnectingPoint num="1" id="1145" /> +<TGConnectingPoint num="2" id="1146" /> +<TGConnectingPoint num="3" id="1147" /> +<TGConnectingPoint num="4" id="1148" /> +<TGConnectingPoint num="5" id="1149" /> +<TGConnectingPoint num="6" id="1150" /> +<TGConnectingPoint num="7" id="1151" /> +<TGConnectingPoint num="8" id="1152" /> +<TGConnectingPoint num="9" id="1153" /> +<TGConnectingPoint num="10" id="1154" /> +<TGConnectingPoint num="11" id="1155" /> +<TGConnectingPoint num="12" id="1156" /> +<TGConnectingPoint num="13" id="1157" /> +<TGConnectingPoint num="14" id="1158" /> +<TGConnectingPoint num="15" id="1159" /> +<TGConnectingPoint num="16" id="1160" /> +<TGConnectingPoint num="17" id="1161" /> +<TGConnectingPoint num="18" id="1162" /> +<TGConnectingPoint num="19" id="1163" /> +<TGConnectingPoint num="20" id="1164" /> +<TGConnectingPoint num="21" id="1165" /> +<TGConnectingPoint num="22" id="1166" /> +<TGConnectingPoint num="23" id="1167" /> +<TGConnectingPoint num="24" id="1168" /> +<TGConnectingPoint num="25" id="1169" /> +<TGConnectingPoint num="26" id="1170" /> +<TGConnectingPoint num="27" id="1171" /> +<TGConnectingPoint num="28" id="1172" /> +<TGConnectingPoint num="29" id="1173" /> +<TGConnectingPoint num="30" id="1174" /> +<TGConnectingPoint num="31" id="1175" /> +</COMPONENT> + +<COMPONENT type="701" id="1201" > +<cdparam x="146" y="53" /> +<sizeparam width="104" height="40" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Use case" value="InitialNotification" /> +<TGConnectingPoint num="0" id="1177" /> +<TGConnectingPoint num="1" id="1178" /> +<TGConnectingPoint num="2" id="1179" /> +<TGConnectingPoint num="3" id="1180" /> +<TGConnectingPoint num="4" id="1181" /> +<TGConnectingPoint num="5" id="1182" /> +<TGConnectingPoint num="6" id="1183" /> +<TGConnectingPoint num="7" id="1184" /> +<TGConnectingPoint num="8" id="1185" /> +<TGConnectingPoint num="9" id="1186" /> +<TGConnectingPoint num="10" id="1187" /> +<TGConnectingPoint num="11" id="1188" /> +<TGConnectingPoint num="12" id="1189" /> +<TGConnectingPoint num="13" id="1190" /> +<TGConnectingPoint num="14" id="1191" /> +<TGConnectingPoint num="15" id="1192" /> +<TGConnectingPoint num="16" id="1193" /> +<TGConnectingPoint num="17" id="1194" /> +<TGConnectingPoint num="18" id="1195" /> +<TGConnectingPoint num="19" id="1196" /> +<TGConnectingPoint num="20" id="1197" /> +<TGConnectingPoint num="21" id="1198" /> +<TGConnectingPoint num="22" id="1199" /> +<TGConnectingPoint num="23" id="1200" /> +<extraparam> +<info extension="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="700" id="1234" > +<cdparam x="31" y="38" /> +<sizeparam width="30" height="70" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="actor" value="Pilot" /> +<TGConnectingPoint num="0" id="1202" /> +<TGConnectingPoint num="1" id="1203" /> +<TGConnectingPoint num="2" id="1204" /> +<TGConnectingPoint num="3" id="1205" /> +<TGConnectingPoint num="4" id="1206" /> +<TGConnectingPoint num="5" id="1207" /> +<TGConnectingPoint num="6" id="1208" /> +<TGConnectingPoint num="7" id="1209" /> +<TGConnectingPoint num="8" id="1210" /> +<TGConnectingPoint num="9" id="1211" /> +<TGConnectingPoint num="10" id="1212" /> +<TGConnectingPoint num="11" id="1213" /> +<TGConnectingPoint num="12" id="1214" /> +<TGConnectingPoint num="13" id="1215" /> +<TGConnectingPoint num="14" id="1216" /> +<TGConnectingPoint num="15" id="1217" /> +<TGConnectingPoint num="16" id="1218" /> +<TGConnectingPoint num="17" id="1219" /> +<TGConnectingPoint num="18" id="1220" /> +<TGConnectingPoint num="19" id="1221" /> +<TGConnectingPoint num="20" id="1222" /> +<TGConnectingPoint num="21" id="1223" /> +<TGConnectingPoint num="22" id="1224" /> +<TGConnectingPoint num="23" id="1225" /> +<TGConnectingPoint num="24" id="1226" /> +<TGConnectingPoint num="25" id="1227" /> +<TGConnectingPoint num="26" id="1228" /> +<TGConnectingPoint num="27" id="1229" /> +<TGConnectingPoint num="28" id="1230" /> +<TGConnectingPoint num="29" id="1231" /> +<TGConnectingPoint num="30" id="1232" /> +<TGConnectingPoint num="31" id="1233" /> +</COMPONENT> + +<COMPONENT type="702" id="1243" > +<cdparam x="92" y="21" /> +<sizeparam width="216" height="105" minWidth="100" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="border" value="Communication_System" /> +<TGConnectingPoint num="0" id="1235" /> +<TGConnectingPoint num="1" id="1236" /> +<TGConnectingPoint num="2" id="1237" /> +<TGConnectingPoint num="3" id="1238" /> +<TGConnectingPoint num="4" id="1239" /> +<TGConnectingPoint num="5" id="1240" /> +<TGConnectingPoint num="6" id="1241" /> +<TGConnectingPoint num="7" id="1242" /> +</COMPONENT> + +<CONNECTOR type="110" id="1244" > +<cdparam x="207" y="162" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="198" y="140" id="1116" /> +<P2 x="198" y="93" id="1180" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="110" id="1245" > +<cdparam x="247" y="66" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Use case to actor" value="null" /> +<P1 x="250" y="73" id="1179" /> +<P2 x="332" y="73" id="1146" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="110" id="1246" > +<cdparam x="10" y="10" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from actor to Use case" value="null" /> +<P1 x="61" y="73" id="1211" /> +<P2 x="146" y="73" id="1178" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</UseCaseDiagramPanel> + +<SequenceDiagramPanel name="Nominal_Service" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="606" id="1272" > +<cdparam x="513" y="64" /> +<sizeparam width="10" height="265" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Controller" value="AirTrafficController" /> +<TGConnectingPoint num="0" id="1247" /> +<TGConnectingPoint num="1" id="1248" /> +<TGConnectingPoint num="2" id="1249" /> +<TGConnectingPoint num="3" id="1250" /> +<TGConnectingPoint num="4" id="1251" /> +<TGConnectingPoint num="5" id="1252" /> +<TGConnectingPoint num="6" id="1253" /> +<TGConnectingPoint num="7" id="1254" /> +<TGConnectingPoint num="8" id="1255" /> +<TGConnectingPoint num="9" id="1256" /> +<TGConnectingPoint num="10" id="1257" /> +<TGConnectingPoint num="11" id="1258" /> +<TGConnectingPoint num="12" id="1259" /> +<TGConnectingPoint num="13" id="1260" /> +<TGConnectingPoint num="14" id="1261" /> +<TGConnectingPoint num="15" id="1262" /> +<TGConnectingPoint num="16" id="1263" /> +<TGConnectingPoint num="17" id="1264" /> +<TGConnectingPoint num="18" id="1265" /> +<TGConnectingPoint num="19" id="1266" /> +<TGConnectingPoint num="20" id="1267" /> +<TGConnectingPoint num="21" id="1268" /> +<TGConnectingPoint num="22" id="1269" /> +<TGConnectingPoint num="23" id="1270" /> +<TGConnectingPoint num="24" id="1271" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1299" > +<cdparam x="280" y="64" /> +<sizeparam width="10" height="273" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CommunicationSystem" value="FANS_Pilot_ATC_Communication_System" /> +<TGConnectingPoint num="0" id="1273" /> +<TGConnectingPoint num="1" id="1274" /> +<TGConnectingPoint num="2" id="1275" /> +<TGConnectingPoint num="3" id="1276" /> +<TGConnectingPoint num="4" id="1277" /> +<TGConnectingPoint num="5" id="1278" /> +<TGConnectingPoint num="6" id="1279" /> +<TGConnectingPoint num="7" id="1280" /> +<TGConnectingPoint num="8" id="1281" /> +<TGConnectingPoint num="9" id="1282" /> +<TGConnectingPoint num="10" id="1283" /> +<TGConnectingPoint num="11" id="1284" /> +<TGConnectingPoint num="12" id="1285" /> +<TGConnectingPoint num="13" id="1286" /> +<TGConnectingPoint num="14" id="1287" /> +<TGConnectingPoint num="15" id="1288" /> +<TGConnectingPoint num="16" id="1289" /> +<TGConnectingPoint num="17" id="1290" /> +<TGConnectingPoint num="18" id="1291" /> +<TGConnectingPoint num="19" id="1292" /> +<TGConnectingPoint num="20" id="1293" /> +<TGConnectingPoint num="21" id="1294" /> +<TGConnectingPoint num="22" id="1295" /> +<TGConnectingPoint num="23" id="1296" /> +<TGConnectingPoint num="24" id="1297" /> +<TGConnectingPoint num="25" id="1298" /> +<extraparam> +<Actor data="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1325" > +<cdparam x="60" y="64" /> +<sizeparam width="10" height="265" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Pilot" value="Pilot" /> +<TGConnectingPoint num="0" id="1300" /> +<TGConnectingPoint num="1" id="1301" /> +<TGConnectingPoint num="2" id="1302" /> +<TGConnectingPoint num="3" id="1303" /> +<TGConnectingPoint num="4" id="1304" /> +<TGConnectingPoint num="5" id="1305" /> +<TGConnectingPoint num="6" id="1306" /> +<TGConnectingPoint num="7" id="1307" /> +<TGConnectingPoint num="8" id="1308" /> +<TGConnectingPoint num="9" id="1309" /> +<TGConnectingPoint num="10" id="1310" /> +<TGConnectingPoint num="11" id="1311" /> +<TGConnectingPoint num="12" id="1312" /> +<TGConnectingPoint num="13" id="1313" /> +<TGConnectingPoint num="14" id="1314" /> +<TGConnectingPoint num="15" id="1315" /> +<TGConnectingPoint num="16" id="1316" /> +<TGConnectingPoint num="17" id="1317" /> +<TGConnectingPoint num="18" id="1318" /> +<TGConnectingPoint num="19" id="1319" /> +<TGConnectingPoint num="20" id="1320" /> +<TGConnectingPoint num="21" id="1321" /> +<TGConnectingPoint num="22" id="1322" /> +<TGConnectingPoint num="23" id="1323" /> +<TGConnectingPoint num="24" id="1324" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="107" id="1326" > +<cdparam x="235" y="184" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="INconconf" /> +<P1 x="285" y="184" id="1284" /> +<P2 x="65" y="184" id="1311" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="1327" > +<cdparam x="385" y="154" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="INconresp" /> +<P1 x="518" y="154" id="1255" /> +<P2 x="285" y="154" id="1281" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="1328" > +<cdparam x="235" y="124" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="INconind" /> +<P1 x="285" y="124" id="1278" /> +<P2 x="518" y="124" id="1252" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="1329" > +<cdparam x="85" y="104" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="INconreq" /> +<P1 x="65" y="104" id="1303" /> +<P2 x="285" y="104" id="1276" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</SequenceDiagramPanel> + +<SequenceDiagramPanel name="Nominal_Protocol" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="301" id="1346" > +<cdparam x="135" y="360" /> +<sizeparam width="596" height="63" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value=" + Black arrows: the protocol layer communicates by rendezvous with its upper layer. + + Basic arrows: the protocol layer communicates via FIFO queues with the network service it relies on. + +" /> +<TGConnectingPoint num="0" id="1330" /> +<TGConnectingPoint num="1" id="1331" /> +<TGConnectingPoint num="2" id="1332" /> +<TGConnectingPoint num="3" id="1333" /> +<TGConnectingPoint num="4" id="1334" /> +<TGConnectingPoint num="5" id="1335" /> +<TGConnectingPoint num="6" id="1336" /> +<TGConnectingPoint num="7" id="1337" /> +<TGConnectingPoint num="8" id="1338" /> +<TGConnectingPoint num="9" id="1339" /> +<TGConnectingPoint num="10" id="1340" /> +<TGConnectingPoint num="11" id="1341" /> +<TGConnectingPoint num="12" id="1342" /> +<TGConnectingPoint num="13" id="1343" /> +<TGConnectingPoint num="14" id="1344" /> +<TGConnectingPoint num="15" id="1345" /> +<extraparam> +<Line value="" /> +<Line value=" Black arrows: the protocol layer communicates by rendezvous with its upper layer." /> +<Line value=" " /> +<Line value=" Basic arrows: the protocol layer communicates via FIFO queues with the network service it relies on." /> +<Line value=" " /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1371" > +<cdparam x="502" y="78" /> +<sizeparam width="10" height="250" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="GroundCommunication" value="GroundCommunication" /> +<TGConnectingPoint num="0" id="1347" /> +<TGConnectingPoint num="1" id="1348" /> +<TGConnectingPoint num="2" id="1349" /> +<TGConnectingPoint num="3" id="1350" /> +<TGConnectingPoint num="4" id="1351" /> +<TGConnectingPoint num="5" id="1352" /> +<TGConnectingPoint num="6" id="1353" /> +<TGConnectingPoint num="7" id="1354" /> +<TGConnectingPoint num="8" id="1355" /> +<TGConnectingPoint num="9" id="1356" /> +<TGConnectingPoint num="10" id="1357" /> +<TGConnectingPoint num="11" id="1358" /> +<TGConnectingPoint num="12" id="1359" /> +<TGConnectingPoint num="13" id="1360" /> +<TGConnectingPoint num="14" id="1361" /> +<TGConnectingPoint num="15" id="1362" /> +<TGConnectingPoint num="16" id="1363" /> +<TGConnectingPoint num="17" id="1364" /> +<TGConnectingPoint num="18" id="1365" /> +<TGConnectingPoint num="19" id="1366" /> +<TGConnectingPoint num="20" id="1367" /> +<TGConnectingPoint num="21" id="1368" /> +<TGConnectingPoint num="22" id="1369" /> +<TGConnectingPoint num="23" id="1370" /> +<extraparam> +<Actor data="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1396" > +<cdparam x="343" y="78" /> +<sizeparam width="10" height="250" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Network" value="Network" /> +<TGConnectingPoint num="0" id="1372" /> +<TGConnectingPoint num="1" id="1373" /> +<TGConnectingPoint num="2" id="1374" /> +<TGConnectingPoint num="3" id="1375" /> +<TGConnectingPoint num="4" id="1376" /> +<TGConnectingPoint num="5" id="1377" /> +<TGConnectingPoint num="6" id="1378" /> +<TGConnectingPoint num="7" id="1379" /> +<TGConnectingPoint num="8" id="1380" /> +<TGConnectingPoint num="9" id="1381" /> +<TGConnectingPoint num="10" id="1382" /> +<TGConnectingPoint num="11" id="1383" /> +<TGConnectingPoint num="12" id="1384" /> +<TGConnectingPoint num="13" id="1385" /> +<TGConnectingPoint num="14" id="1386" /> +<TGConnectingPoint num="15" id="1387" /> +<TGConnectingPoint num="16" id="1388" /> +<TGConnectingPoint num="17" id="1389" /> +<TGConnectingPoint num="18" id="1390" /> +<TGConnectingPoint num="19" id="1391" /> +<TGConnectingPoint num="20" id="1392" /> +<TGConnectingPoint num="21" id="1393" /> +<TGConnectingPoint num="22" id="1394" /> +<TGConnectingPoint num="23" id="1395" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1421" > +<cdparam x="199" y="78" /> +<sizeparam width="10" height="250" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="OnboardCommunication" value="OnboardCommunication" /> +<TGConnectingPoint num="0" id="1397" /> +<TGConnectingPoint num="1" id="1398" /> +<TGConnectingPoint num="2" id="1399" /> +<TGConnectingPoint num="3" id="1400" /> +<TGConnectingPoint num="4" id="1401" /> +<TGConnectingPoint num="5" id="1402" /> +<TGConnectingPoint num="6" id="1403" /> +<TGConnectingPoint num="7" id="1404" /> +<TGConnectingPoint num="8" id="1405" /> +<TGConnectingPoint num="9" id="1406" /> +<TGConnectingPoint num="10" id="1407" /> +<TGConnectingPoint num="11" id="1408" /> +<TGConnectingPoint num="12" id="1409" /> +<TGConnectingPoint num="13" id="1410" /> +<TGConnectingPoint num="14" id="1411" /> +<TGConnectingPoint num="15" id="1412" /> +<TGConnectingPoint num="16" id="1413" /> +<TGConnectingPoint num="17" id="1414" /> +<TGConnectingPoint num="18" id="1415" /> +<TGConnectingPoint num="19" id="1416" /> +<TGConnectingPoint num="20" id="1417" /> +<TGConnectingPoint num="21" id="1418" /> +<TGConnectingPoint num="22" id="1419" /> +<TGConnectingPoint num="23" id="1420" /> +<extraparam> +<Actor data="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1446" > +<cdparam x="680" y="78" /> +<sizeparam width="10" height="250" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Controller" value="AirTrafficController" /> +<TGConnectingPoint num="0" id="1422" /> +<TGConnectingPoint num="1" id="1423" /> +<TGConnectingPoint num="2" id="1424" /> +<TGConnectingPoint num="3" id="1425" /> +<TGConnectingPoint num="4" id="1426" /> +<TGConnectingPoint num="5" id="1427" /> +<TGConnectingPoint num="6" id="1428" /> +<TGConnectingPoint num="7" id="1429" /> +<TGConnectingPoint num="8" id="1430" /> +<TGConnectingPoint num="9" id="1431" /> +<TGConnectingPoint num="10" id="1432" /> +<TGConnectingPoint num="11" id="1433" /> +<TGConnectingPoint num="12" id="1434" /> +<TGConnectingPoint num="13" id="1435" /> +<TGConnectingPoint num="14" id="1436" /> +<TGConnectingPoint num="15" id="1437" /> +<TGConnectingPoint num="16" id="1438" /> +<TGConnectingPoint num="17" id="1439" /> +<TGConnectingPoint num="18" id="1440" /> +<TGConnectingPoint num="19" id="1441" /> +<TGConnectingPoint num="20" id="1442" /> +<TGConnectingPoint num="21" id="1443" /> +<TGConnectingPoint num="22" id="1444" /> +<TGConnectingPoint num="23" id="1445" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1471" > +<cdparam x="36" y="78" /> +<sizeparam width="10" height="250" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Pilot" value="Pilot" /> +<TGConnectingPoint num="0" id="1447" /> +<TGConnectingPoint num="1" id="1448" /> +<TGConnectingPoint num="2" id="1449" /> +<TGConnectingPoint num="3" id="1450" /> +<TGConnectingPoint num="4" id="1451" /> +<TGConnectingPoint num="5" id="1452" /> +<TGConnectingPoint num="6" id="1453" /> +<TGConnectingPoint num="7" id="1454" /> +<TGConnectingPoint num="8" id="1455" /> +<TGConnectingPoint num="9" id="1456" /> +<TGConnectingPoint num="10" id="1457" /> +<TGConnectingPoint num="11" id="1458" /> +<TGConnectingPoint num="12" id="1459" /> +<TGConnectingPoint num="13" id="1460" /> +<TGConnectingPoint num="14" id="1461" /> +<TGConnectingPoint num="15" id="1462" /> +<TGConnectingPoint num="16" id="1463" /> +<TGConnectingPoint num="17" id="1464" /> +<TGConnectingPoint num="18" id="1465" /> +<TGConnectingPoint num="19" id="1466" /> +<TGConnectingPoint num="20" id="1467" /> +<TGConnectingPoint num="21" id="1468" /> +<TGConnectingPoint num="22" id="1469" /> +<TGConnectingPoint num="23" id="1470" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="106" id="1472" > +<cdparam x="348" y="258" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CC" /> +<P1 x="348" y="258" id="1389" /> +<P2 x="204" y="258" id="1414" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="1473" > +<cdparam x="507" y="228" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CC" /> +<P1 x="507" y="228" id="1361" /> +<P2 x="348" y="228" id="1386" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="1474" > +<cdparam x="348" y="148" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="348" y="148" id="1378" /> +<P2 x="507" y="148" id="1353" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="1475" > +<cdparam x="204" y="128" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="204" y="128" id="1401" /> +<P2 x="348" y="128" id="1376" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="1476" > +<cdparam x="12" y="115" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="conreq" /> +<P1 x="41" y="108" id="1449" /> +<P2 x="204" y="108" id="1399" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="1477" > +<cdparam x="202" y="280" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="conconf" /> +<P1 x="204" y="278" id="1416" /> +<P2 x="41" y="278" id="1466" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="1478" > +<cdparam x="685" y="199" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="conresp" /> +<P1 x="685" y="198" id="1433" /> +<P2 x="507" y="198" id="1358" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="1479" > +<cdparam x="507" y="169" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="conind" /> +<P1 x="507" y="168" id="1355" /> +<P2 x="685" y="168" id="1430" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</SequenceDiagramPanel> + +</Modeling> + + + + +<Modeling type="Avatar Analysis" nameTab="Analysis_lossy" > +<UseCaseDiagramPanel name="Use Case Diagram" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="703" id="1512" > +<cdparam x="171" y="157" /> +<sizeparam width="74" height="50" minWidth="40" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="actor" value="Network" /> +<TGConnectingPoint num="0" id="1480" /> +<TGConnectingPoint num="1" id="1481" /> +<TGConnectingPoint num="2" id="1482" /> +<TGConnectingPoint num="3" id="1483" /> +<TGConnectingPoint num="4" id="1484" /> +<TGConnectingPoint num="5" id="1485" /> +<TGConnectingPoint num="6" id="1486" /> +<TGConnectingPoint num="7" id="1487" /> +<TGConnectingPoint num="8" id="1488" /> +<TGConnectingPoint num="9" id="1489" /> +<TGConnectingPoint num="10" id="1490" /> +<TGConnectingPoint num="11" id="1491" /> +<TGConnectingPoint num="12" id="1492" /> +<TGConnectingPoint num="13" id="1493" /> +<TGConnectingPoint num="14" id="1494" /> +<TGConnectingPoint num="15" id="1495" /> +<TGConnectingPoint num="16" id="1496" /> +<TGConnectingPoint num="17" id="1497" /> +<TGConnectingPoint num="18" id="1498" /> +<TGConnectingPoint num="19" id="1499" /> +<TGConnectingPoint num="20" id="1500" /> +<TGConnectingPoint num="21" id="1501" /> +<TGConnectingPoint num="22" id="1502" /> +<TGConnectingPoint num="23" id="1503" /> +<TGConnectingPoint num="24" id="1504" /> +<TGConnectingPoint num="25" id="1505" /> +<TGConnectingPoint num="26" id="1506" /> +<TGConnectingPoint num="27" id="1507" /> +<TGConnectingPoint num="28" id="1508" /> +<TGConnectingPoint num="29" id="1509" /> +<TGConnectingPoint num="30" id="1510" /> +<TGConnectingPoint num="31" id="1511" /> +</COMPONENT> + +<COMPONENT type="700" id="1545" > +<cdparam x="342" y="55" /> +<sizeparam width="30" height="70" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="actor" value="Controller" /> +<TGConnectingPoint num="0" id="1513" /> +<TGConnectingPoint num="1" id="1514" /> +<TGConnectingPoint num="2" id="1515" /> +<TGConnectingPoint num="3" id="1516" /> +<TGConnectingPoint num="4" id="1517" /> +<TGConnectingPoint num="5" id="1518" /> +<TGConnectingPoint num="6" id="1519" /> +<TGConnectingPoint num="7" id="1520" /> +<TGConnectingPoint num="8" id="1521" /> +<TGConnectingPoint num="9" id="1522" /> +<TGConnectingPoint num="10" id="1523" /> +<TGConnectingPoint num="11" id="1524" /> +<TGConnectingPoint num="12" id="1525" /> +<TGConnectingPoint num="13" id="1526" /> +<TGConnectingPoint num="14" id="1527" /> +<TGConnectingPoint num="15" id="1528" /> +<TGConnectingPoint num="16" id="1529" /> +<TGConnectingPoint num="17" id="1530" /> +<TGConnectingPoint num="18" id="1531" /> +<TGConnectingPoint num="19" id="1532" /> +<TGConnectingPoint num="20" id="1533" /> +<TGConnectingPoint num="21" id="1534" /> +<TGConnectingPoint num="22" id="1535" /> +<TGConnectingPoint num="23" id="1536" /> +<TGConnectingPoint num="24" id="1537" /> +<TGConnectingPoint num="25" id="1538" /> +<TGConnectingPoint num="26" id="1539" /> +<TGConnectingPoint num="27" id="1540" /> +<TGConnectingPoint num="28" id="1541" /> +<TGConnectingPoint num="29" id="1542" /> +<TGConnectingPoint num="30" id="1543" /> +<TGConnectingPoint num="31" id="1544" /> +</COMPONENT> + +<COMPONENT type="701" id="1570" > +<cdparam x="156" y="70" /> +<sizeparam width="104" height="40" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Use case" value="InitialNotification" /> +<TGConnectingPoint num="0" id="1546" /> +<TGConnectingPoint num="1" id="1547" /> +<TGConnectingPoint num="2" id="1548" /> +<TGConnectingPoint num="3" id="1549" /> +<TGConnectingPoint num="4" id="1550" /> +<TGConnectingPoint num="5" id="1551" /> +<TGConnectingPoint num="6" id="1552" /> +<TGConnectingPoint num="7" id="1553" /> +<TGConnectingPoint num="8" id="1554" /> +<TGConnectingPoint num="9" id="1555" /> +<TGConnectingPoint num="10" id="1556" /> +<TGConnectingPoint num="11" id="1557" /> +<TGConnectingPoint num="12" id="1558" /> +<TGConnectingPoint num="13" id="1559" /> +<TGConnectingPoint num="14" id="1560" /> +<TGConnectingPoint num="15" id="1561" /> +<TGConnectingPoint num="16" id="1562" /> +<TGConnectingPoint num="17" id="1563" /> +<TGConnectingPoint num="18" id="1564" /> +<TGConnectingPoint num="19" id="1565" /> +<TGConnectingPoint num="20" id="1566" /> +<TGConnectingPoint num="21" id="1567" /> +<TGConnectingPoint num="22" id="1568" /> +<TGConnectingPoint num="23" id="1569" /> +<extraparam> +<info extension="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="700" id="1603" > +<cdparam x="41" y="55" /> +<sizeparam width="30" height="70" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="actor" value="Pilot" /> +<TGConnectingPoint num="0" id="1571" /> +<TGConnectingPoint num="1" id="1572" /> +<TGConnectingPoint num="2" id="1573" /> +<TGConnectingPoint num="3" id="1574" /> +<TGConnectingPoint num="4" id="1575" /> +<TGConnectingPoint num="5" id="1576" /> +<TGConnectingPoint num="6" id="1577" /> +<TGConnectingPoint num="7" id="1578" /> +<TGConnectingPoint num="8" id="1579" /> +<TGConnectingPoint num="9" id="1580" /> +<TGConnectingPoint num="10" id="1581" /> +<TGConnectingPoint num="11" id="1582" /> +<TGConnectingPoint num="12" id="1583" /> +<TGConnectingPoint num="13" id="1584" /> +<TGConnectingPoint num="14" id="1585" /> +<TGConnectingPoint num="15" id="1586" /> +<TGConnectingPoint num="16" id="1587" /> +<TGConnectingPoint num="17" id="1588" /> +<TGConnectingPoint num="18" id="1589" /> +<TGConnectingPoint num="19" id="1590" /> +<TGConnectingPoint num="20" id="1591" /> +<TGConnectingPoint num="21" id="1592" /> +<TGConnectingPoint num="22" id="1593" /> +<TGConnectingPoint num="23" id="1594" /> +<TGConnectingPoint num="24" id="1595" /> +<TGConnectingPoint num="25" id="1596" /> +<TGConnectingPoint num="26" id="1597" /> +<TGConnectingPoint num="27" id="1598" /> +<TGConnectingPoint num="28" id="1599" /> +<TGConnectingPoint num="29" id="1600" /> +<TGConnectingPoint num="30" id="1601" /> +<TGConnectingPoint num="31" id="1602" /> +</COMPONENT> + +<COMPONENT type="702" id="1612" > +<cdparam x="102" y="38" /> +<sizeparam width="216" height="105" minWidth="100" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="border" value="Communication_System" /> +<TGConnectingPoint num="0" id="1604" /> +<TGConnectingPoint num="1" id="1605" /> +<TGConnectingPoint num="2" id="1606" /> +<TGConnectingPoint num="3" id="1607" /> +<TGConnectingPoint num="4" id="1608" /> +<TGConnectingPoint num="5" id="1609" /> +<TGConnectingPoint num="6" id="1610" /> +<TGConnectingPoint num="7" id="1611" /> +</COMPONENT> + +<CONNECTOR type="110" id="1613" > +<cdparam x="217" y="179" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="208" y="157" id="1485" /> +<P2 x="208" y="110" id="1549" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="110" id="1614" > +<cdparam x="257" y="83" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Use case to actor" value="null" /> +<P1 x="260" y="90" id="1548" /> +<P2 x="342" y="90" id="1515" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="110" id="1615" > +<cdparam x="32" y="20" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from actor to Use case" value="null" /> +<P1 x="71" y="90" id="1580" /> +<P2 x="156" y="90" id="1547" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</UseCaseDiagramPanel> + +<SequenceDiagramPanel name="error_service" minX="10" maxX="2500" minY="10" maxY="1500" > +<COMPONENT type="301" id="1632" > +<cdparam x="231" y="215" /> +<sizeparam width="43" height="15" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="UML Note" value="Lost +" /> +<TGConnectingPoint num="0" id="1616" /> +<TGConnectingPoint num="1" id="1617" /> +<TGConnectingPoint num="2" id="1618" /> +<TGConnectingPoint num="3" id="1619" /> +<TGConnectingPoint num="4" id="1620" /> +<TGConnectingPoint num="5" id="1621" /> +<TGConnectingPoint num="6" id="1622" /> +<TGConnectingPoint num="7" id="1623" /> +<TGConnectingPoint num="8" id="1624" /> +<TGConnectingPoint num="9" id="1625" /> +<TGConnectingPoint num="10" id="1626" /> +<TGConnectingPoint num="11" id="1627" /> +<TGConnectingPoint num="12" id="1628" /> +<TGConnectingPoint num="13" id="1629" /> +<TGConnectingPoint num="14" id="1630" /> +<TGConnectingPoint num="15" id="1631" /> +<extraparam> +<Line value="Lost" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="601" id="1642" > +<cdparam x="208" y="261" /> +<sizeparam width="40" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Line of relative time constraint" value="rtc" /> +<TGConnectingPoint num="0" id="1633" /> +<TGConnectingPoint num="1" id="1634" /> +<TGConnectingPoint num="2" id="1635" /> +<TGConnectingPoint num="3" id="1636" /> +<TGConnectingPoint num="4" id="1637" /> +<TGConnectingPoint num="5" id="1638" /> +<TGConnectingPoint num="6" id="1639" /> +<TGConnectingPoint num="7" id="1640" /> +<TGConnectingPoint num="8" id="1641" /> +</COMPONENT> + +<COMPONENT type="601" id="1652" > +<cdparam x="208" y="132" /> +<sizeparam width="40" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Line of relative time constraint" value="rtc" /> +<TGConnectingPoint num="0" id="1643" /> +<TGConnectingPoint num="1" id="1644" /> +<TGConnectingPoint num="2" id="1645" /> +<TGConnectingPoint num="3" id="1646" /> +<TGConnectingPoint num="4" id="1647" /> +<TGConnectingPoint num="5" id="1648" /> +<TGConnectingPoint num="6" id="1649" /> +<TGConnectingPoint num="7" id="1650" /> +<TGConnectingPoint num="8" id="1651" /> +</COMPONENT> + +<COMPONENT type="606" id="1678" > +<cdparam x="404" y="72" /> +<sizeparam width="10" height="265" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Controller" value="AirTrafficController" /> +<TGConnectingPoint num="0" id="1653" /> +<TGConnectingPoint num="1" id="1654" /> +<TGConnectingPoint num="2" id="1655" /> +<TGConnectingPoint num="3" id="1656" /> +<TGConnectingPoint num="4" id="1657" /> +<TGConnectingPoint num="5" id="1658" /> +<TGConnectingPoint num="6" id="1659" /> +<TGConnectingPoint num="7" id="1660" /> +<TGConnectingPoint num="8" id="1661" /> +<TGConnectingPoint num="9" id="1662" /> +<TGConnectingPoint num="10" id="1663" /> +<TGConnectingPoint num="11" id="1664" /> +<TGConnectingPoint num="12" id="1665" /> +<TGConnectingPoint num="13" id="1666" /> +<TGConnectingPoint num="14" id="1667" /> +<TGConnectingPoint num="15" id="1668" /> +<TGConnectingPoint num="16" id="1669" /> +<TGConnectingPoint num="17" id="1670" /> +<TGConnectingPoint num="18" id="1671" /> +<TGConnectingPoint num="19" id="1672" /> +<TGConnectingPoint num="20" id="1673" /> +<TGConnectingPoint num="21" id="1674" /> +<TGConnectingPoint num="22" id="1675" /> +<TGConnectingPoint num="23" id="1676" /> +<TGConnectingPoint num="24" id="1677" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1705" > +<cdparam x="231" y="72" /> +<sizeparam width="10" height="273" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="CommunicationSystem" value="FANS_Pilot_ATC_Communication_System" /> +<TGConnectingPoint num="0" id="1679" /> +<TGConnectingPoint num="1" id="1680" /> +<TGConnectingPoint num="2" id="1681" /> +<TGConnectingPoint num="3" id="1682" /> +<TGConnectingPoint num="4" id="1683" /> +<TGConnectingPoint num="5" id="1684" /> +<TGConnectingPoint num="6" id="1685" /> +<TGConnectingPoint num="7" id="1686" /> +<TGConnectingPoint num="8" id="1687" /> +<TGConnectingPoint num="9" id="1688" /> +<TGConnectingPoint num="10" id="1689" /> +<TGConnectingPoint num="11" id="1690" /> +<TGConnectingPoint num="12" id="1691" /> +<TGConnectingPoint num="13" id="1692" /> +<TGConnectingPoint num="14" id="1693" /> +<TGConnectingPoint num="15" id="1694" /> +<TGConnectingPoint num="16" id="1695" /> +<TGConnectingPoint num="17" id="1696" /> +<TGConnectingPoint num="18" id="1697" /> +<TGConnectingPoint num="19" id="1698" /> +<TGConnectingPoint num="20" id="1699" /> +<TGConnectingPoint num="21" id="1700" /> +<TGConnectingPoint num="22" id="1701" /> +<TGConnectingPoint num="23" id="1702" /> +<TGConnectingPoint num="24" id="1703" /> +<TGConnectingPoint num="25" id="1704" /> +<extraparam> +<Actor data="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1731" > +<cdparam x="45" y="72" /> +<sizeparam width="10" height="265" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Pilot" value="Pilot" /> +<TGConnectingPoint num="0" id="1706" /> +<TGConnectingPoint num="1" id="1707" /> +<TGConnectingPoint num="2" id="1708" /> +<TGConnectingPoint num="3" id="1709" /> +<TGConnectingPoint num="4" id="1710" /> +<TGConnectingPoint num="5" id="1711" /> +<TGConnectingPoint num="6" id="1712" /> +<TGConnectingPoint num="7" id="1713" /> +<TGConnectingPoint num="8" id="1714" /> +<TGConnectingPoint num="9" id="1715" /> +<TGConnectingPoint num="10" id="1716" /> +<TGConnectingPoint num="11" id="1717" /> +<TGConnectingPoint num="12" id="1718" /> +<TGConnectingPoint num="13" id="1719" /> +<TGConnectingPoint num="14" id="1720" /> +<TGConnectingPoint num="15" id="1721" /> +<TGConnectingPoint num="16" id="1722" /> +<TGConnectingPoint num="17" id="1723" /> +<TGConnectingPoint num="18" id="1724" /> +<TGConnectingPoint num="19" id="1725" /> +<TGConnectingPoint num="20" id="1726" /> +<TGConnectingPoint num="21" id="1727" /> +<TGConnectingPoint num="22" id="1728" /> +<TGConnectingPoint num="23" id="1729" /> +<TGConnectingPoint num="24" id="1730" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="107" id="1732" > +<cdparam x="409" y="182" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INconresp" /> +<P1 x="409" y="182" id="1663" /> +<P2 x="236" y="182" id="1689" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="109" id="1733" > +<cdparam x="218" y="132" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="relative time constraint" value="{ATST1..ATST1}" /> +<P1 x="218" y="132" id="1643" /> +<P2 x="218" y="261" id="1633" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Interval minConstraint="ATST1" maxConstraint="ATST1" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="107" id="1734" > +<cdparam x="236" y="261" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INerror" /> +<P1 x="236" y="262" id="1697" /> +<P2 x="50" y="262" id="1724" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="1735" > +<cdparam x="220" y="132" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="INconind" /> +<P1 x="236" y="132" id="1684" /> +<P2 x="409" y="132" id="1658" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="1736" > +<cdparam x="70" y="112" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="INconreq" /> +<P1 x="50" y="112" id="1709" /> +<P2 x="236" y="112" id="1682" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</SequenceDiagramPanel> + +<SequenceDiagramPanel name="lost_and_sucessful_retransmissions" minX="10" maxX="2500" minY="10" maxY="1500" > +<COMPONENT type="605" id="1745" > +<cdparam x="219" y="274" /> +<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="timer expiration" value="{timer=ATST1}" /> +<TGConnectingPoint num="0" id="1737" /> +<TGConnectingPoint num="1" id="1738" /> +<TGConnectingPoint num="2" id="1739" /> +<TGConnectingPoint num="3" id="1740" /> +<TGConnectingPoint num="4" id="1741" /> +<TGConnectingPoint num="5" id="1742" /> +<TGConnectingPoint num="6" id="1743" /> +<TGConnectingPoint num="7" id="1744" /> +<extraparam> +<Interval timer="ATST1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="603" id="1754" > +<cdparam x="221" y="151" /> +<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="setting timer" value="{timer=ATST1, duration=10}" /> +<TGConnectingPoint num="0" id="1746" /> +<TGConnectingPoint num="1" id="1747" /> +<TGConnectingPoint num="2" id="1748" /> +<TGConnectingPoint num="3" id="1749" /> +<TGConnectingPoint num="4" id="1750" /> +<TGConnectingPoint num="5" id="1751" /> +<TGConnectingPoint num="6" id="1752" /> +<TGConnectingPoint num="7" id="1753" /> +<extraparam> +<Interval timer="ATST1" duration="10" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1804" > +<cdparam x="620" y="86" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="330" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="GroundCommunication" value="GroundCommunication" /> +<TGConnectingPoint num="0" id="1755" /> +<TGConnectingPoint num="1" id="1756" /> +<TGConnectingPoint num="2" id="1757" /> +<TGConnectingPoint num="3" id="1758" /> +<TGConnectingPoint num="4" id="1759" /> +<TGConnectingPoint num="5" id="1760" /> +<TGConnectingPoint num="6" id="1761" /> +<TGConnectingPoint num="7" id="1762" /> +<TGConnectingPoint num="8" id="1763" /> +<TGConnectingPoint num="9" id="1764" /> +<TGConnectingPoint num="10" id="1765" /> +<TGConnectingPoint num="11" id="1766" /> +<TGConnectingPoint num="12" id="1767" /> +<TGConnectingPoint num="13" id="1768" /> +<TGConnectingPoint num="14" id="1769" /> +<TGConnectingPoint num="15" id="1770" /> +<TGConnectingPoint num="16" id="1771" /> +<TGConnectingPoint num="17" id="1772" /> +<TGConnectingPoint num="18" id="1773" /> +<TGConnectingPoint num="19" id="1774" /> +<TGConnectingPoint num="20" id="1775" /> +<TGConnectingPoint num="21" id="1776" /> +<TGConnectingPoint num="22" id="1777" /> +<TGConnectingPoint num="23" id="1778" /> +<TGConnectingPoint num="24" id="1779" /> +<TGConnectingPoint num="25" id="1780" /> +<TGConnectingPoint num="26" id="1781" /> +<TGConnectingPoint num="27" id="1782" /> +<TGConnectingPoint num="28" id="1783" /> +<TGConnectingPoint num="29" id="1784" /> +<TGConnectingPoint num="30" id="1785" /> +<TGConnectingPoint num="31" id="1786" /> +<TGConnectingPoint num="32" id="1787" /> +<TGConnectingPoint num="33" id="1788" /> +<TGConnectingPoint num="34" id="1789" /> +<TGConnectingPoint num="35" id="1790" /> +<TGConnectingPoint num="36" id="1791" /> +<TGConnectingPoint num="37" id="1792" /> +<TGConnectingPoint num="38" id="1793" /> +<TGConnectingPoint num="39" id="1794" /> +<TGConnectingPoint num="40" id="1795" /> +<TGConnectingPoint num="41" id="1796" /> +<TGConnectingPoint num="42" id="1797" /> +<TGConnectingPoint num="43" id="1798" /> +<TGConnectingPoint num="44" id="1799" /> +<TGConnectingPoint num="45" id="1800" /> +<TGConnectingPoint num="46" id="1801" /> +<TGConnectingPoint num="47" id="1802" /> +<TGConnectingPoint num="48" id="1803" /> +<extraparam> +<Actor data="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1854" > +<cdparam x="473" y="86" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Network" value="Network" /> +<TGConnectingPoint num="0" id="1805" /> +<TGConnectingPoint num="1" id="1806" /> +<TGConnectingPoint num="2" id="1807" /> +<TGConnectingPoint num="3" id="1808" /> +<TGConnectingPoint num="4" id="1809" /> +<TGConnectingPoint num="5" id="1810" /> +<TGConnectingPoint num="6" id="1811" /> +<TGConnectingPoint num="7" id="1812" /> +<TGConnectingPoint num="8" id="1813" /> +<TGConnectingPoint num="9" id="1814" /> +<TGConnectingPoint num="10" id="1815" /> +<TGConnectingPoint num="11" id="1816" /> +<TGConnectingPoint num="12" id="1817" /> +<TGConnectingPoint num="13" id="1818" /> +<TGConnectingPoint num="14" id="1819" /> +<TGConnectingPoint num="15" id="1820" /> +<TGConnectingPoint num="16" id="1821" /> +<TGConnectingPoint num="17" id="1822" /> +<TGConnectingPoint num="18" id="1823" /> +<TGConnectingPoint num="19" id="1824" /> +<TGConnectingPoint num="20" id="1825" /> +<TGConnectingPoint num="21" id="1826" /> +<TGConnectingPoint num="22" id="1827" /> +<TGConnectingPoint num="23" id="1828" /> +<TGConnectingPoint num="24" id="1829" /> +<TGConnectingPoint num="25" id="1830" /> +<TGConnectingPoint num="26" id="1831" /> +<TGConnectingPoint num="27" id="1832" /> +<TGConnectingPoint num="28" id="1833" /> +<TGConnectingPoint num="29" id="1834" /> +<TGConnectingPoint num="30" id="1835" /> +<TGConnectingPoint num="31" id="1836" /> +<TGConnectingPoint num="32" id="1837" /> +<TGConnectingPoint num="33" id="1838" /> +<TGConnectingPoint num="34" id="1839" /> +<TGConnectingPoint num="35" id="1840" /> +<TGConnectingPoint num="36" id="1841" /> +<TGConnectingPoint num="37" id="1842" /> +<TGConnectingPoint num="38" id="1843" /> +<TGConnectingPoint num="39" id="1844" /> +<TGConnectingPoint num="40" id="1845" /> +<TGConnectingPoint num="41" id="1846" /> +<TGConnectingPoint num="42" id="1847" /> +<TGConnectingPoint num="43" id="1848" /> +<TGConnectingPoint num="44" id="1849" /> +<TGConnectingPoint num="45" id="1850" /> +<TGConnectingPoint num="46" id="1851" /> +<TGConnectingPoint num="47" id="1852" /> +<TGConnectingPoint num="48" id="1853" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="1922" > +<cdparam x="201" y="86" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="283" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="OnboardCommunication" value="OnboardCommunication" /> +<TGConnectingPoint num="0" id="1873" /> +<TGConnectingPoint num="1" id="1874" /> +<TGConnectingPoint num="2" id="1875" /> +<TGConnectingPoint num="3" id="1876" /> +<TGConnectingPoint num="4" id="1877" /> +<TGConnectingPoint num="5" id="1878" /> +<TGConnectingPoint num="6" id="1879" /> +<TGConnectingPoint num="7" id="1880" /> +<TGConnectingPoint num="8" id="1881" /> +<TGConnectingPoint num="9" id="1882" /> +<TGConnectingPoint num="10" id="1883" /> +<TGConnectingPoint num="11" id="1884" /> +<TGConnectingPoint num="12" id="1885" /> +<TGConnectingPoint num="13" id="1886" /> +<TGConnectingPoint num="14" id="1887" /> +<TGConnectingPoint num="15" id="1888" /> +<TGConnectingPoint num="16" id="1889" /> +<TGConnectingPoint num="17" id="1890" /> +<TGConnectingPoint num="18" id="1891" /> +<TGConnectingPoint num="19" id="1892" /> +<TGConnectingPoint num="20" id="1893" /> +<TGConnectingPoint num="21" id="1894" /> +<TGConnectingPoint num="22" id="1895" /> +<TGConnectingPoint num="23" id="1896" /> +<TGConnectingPoint num="24" id="1897" /> +<TGConnectingPoint num="25" id="1898" /> +<TGConnectingPoint num="26" id="1899" /> +<TGConnectingPoint num="27" id="1900" /> +<TGConnectingPoint num="28" id="1901" /> +<TGConnectingPoint num="29" id="1902" /> +<TGConnectingPoint num="30" id="1903" /> +<TGConnectingPoint num="31" id="1904" /> +<TGConnectingPoint num="32" id="1905" /> +<TGConnectingPoint num="33" id="1906" /> +<TGConnectingPoint num="34" id="1907" /> +<TGConnectingPoint num="35" id="1908" /> +<TGConnectingPoint num="36" id="1909" /> +<TGConnectingPoint num="37" id="1910" /> +<TGConnectingPoint num="38" id="1911" /> +<TGConnectingPoint num="39" id="1912" /> +<TGConnectingPoint num="40" id="1913" /> +<TGConnectingPoint num="41" id="1914" /> +<TGConnectingPoint num="42" id="1915" /> +<TGConnectingPoint num="43" id="1916" /> +<TGConnectingPoint num="44" id="1917" /> +<TGConnectingPoint num="45" id="1918" /> +<TGConnectingPoint num="46" id="1919" /> +<TGConnectingPoint num="47" id="1920" /> +<TGConnectingPoint num="48" id="1921" /> +<extraparam> +<Actor data="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="604" id="1863" > +<father id="1922" num="0" /> +<cdparam x="219" y="448" /> +<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="18" maxX="18" minY="-2" maxY="478" /> +<infoparam name="timer cancellation" value="{timer=ATST1}" /> +<TGConnectingPoint num="0" id="1855" /> +<TGConnectingPoint num="1" id="1856" /> +<TGConnectingPoint num="2" id="1857" /> +<TGConnectingPoint num="3" id="1858" /> +<TGConnectingPoint num="4" id="1859" /> +<TGConnectingPoint num="5" id="1860" /> +<TGConnectingPoint num="6" id="1861" /> +<TGConnectingPoint num="7" id="1862" /> +<extraparam> +<Interval timer="ATST1" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="603" id="1872" > +<father id="1922" num="1" /> +<cdparam x="219" y="344" /> +<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="18" maxX="18" minY="-2" maxY="478" /> +<infoparam name="setting timer" value="{timer=ATST1, duration=10}" /> +<TGConnectingPoint num="0" id="1864" /> +<TGConnectingPoint num="1" id="1865" /> +<TGConnectingPoint num="2" id="1866" /> +<TGConnectingPoint num="3" id="1867" /> +<TGConnectingPoint num="4" id="1868" /> +<TGConnectingPoint num="5" id="1869" /> +<TGConnectingPoint num="6" id="1870" /> +<TGConnectingPoint num="7" id="1871" /> +<extraparam> +<Interval timer="ATST1" duration="10" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="606" id="1972" > +<cdparam x="799" y="86" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="310" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Controller" value="AirTrafficController" /> +<TGConnectingPoint num="0" id="1923" /> +<TGConnectingPoint num="1" id="1924" /> +<TGConnectingPoint num="2" id="1925" /> +<TGConnectingPoint num="3" id="1926" /> +<TGConnectingPoint num="4" id="1927" /> +<TGConnectingPoint num="5" id="1928" /> +<TGConnectingPoint num="6" id="1929" /> +<TGConnectingPoint num="7" id="1930" /> +<TGConnectingPoint num="8" id="1931" /> +<TGConnectingPoint num="9" id="1932" /> +<TGConnectingPoint num="10" id="1933" /> +<TGConnectingPoint num="11" id="1934" /> +<TGConnectingPoint num="12" id="1935" /> +<TGConnectingPoint num="13" id="1936" /> +<TGConnectingPoint num="14" id="1937" /> +<TGConnectingPoint num="15" id="1938" /> +<TGConnectingPoint num="16" id="1939" /> +<TGConnectingPoint num="17" id="1940" /> +<TGConnectingPoint num="18" id="1941" /> +<TGConnectingPoint num="19" id="1942" /> +<TGConnectingPoint num="20" id="1943" /> +<TGConnectingPoint num="21" id="1944" /> +<TGConnectingPoint num="22" id="1945" /> +<TGConnectingPoint num="23" id="1946" /> +<TGConnectingPoint num="24" id="1947" /> +<TGConnectingPoint num="25" id="1948" /> +<TGConnectingPoint num="26" id="1949" /> +<TGConnectingPoint num="27" id="1950" /> +<TGConnectingPoint num="28" id="1951" /> +<TGConnectingPoint num="29" id="1952" /> +<TGConnectingPoint num="30" id="1953" /> +<TGConnectingPoint num="31" id="1954" /> +<TGConnectingPoint num="32" id="1955" /> +<TGConnectingPoint num="33" id="1956" /> +<TGConnectingPoint num="34" id="1957" /> +<TGConnectingPoint num="35" id="1958" /> +<TGConnectingPoint num="36" id="1959" /> +<TGConnectingPoint num="37" id="1960" /> +<TGConnectingPoint num="38" id="1961" /> +<TGConnectingPoint num="39" id="1962" /> +<TGConnectingPoint num="40" id="1963" /> +<TGConnectingPoint num="41" id="1964" /> +<TGConnectingPoint num="42" id="1965" /> +<TGConnectingPoint num="43" id="1966" /> +<TGConnectingPoint num="44" id="1967" /> +<TGConnectingPoint num="45" id="1968" /> +<TGConnectingPoint num="46" id="1969" /> +<TGConnectingPoint num="47" id="1970" /> +<TGConnectingPoint num="48" id="1971" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="2022" > +<cdparam x="38" y="86" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Pilot" value="Pilot" /> +<TGConnectingPoint num="0" id="1973" /> +<TGConnectingPoint num="1" id="1974" /> +<TGConnectingPoint num="2" id="1975" /> +<TGConnectingPoint num="3" id="1976" /> +<TGConnectingPoint num="4" id="1977" /> +<TGConnectingPoint num="5" id="1978" /> +<TGConnectingPoint num="6" id="1979" /> +<TGConnectingPoint num="7" id="1980" /> +<TGConnectingPoint num="8" id="1981" /> +<TGConnectingPoint num="9" id="1982" /> +<TGConnectingPoint num="10" id="1983" /> +<TGConnectingPoint num="11" id="1984" /> +<TGConnectingPoint num="12" id="1985" /> +<TGConnectingPoint num="13" id="1986" /> +<TGConnectingPoint num="14" id="1987" /> +<TGConnectingPoint num="15" id="1988" /> +<TGConnectingPoint num="16" id="1989" /> +<TGConnectingPoint num="17" id="1990" /> +<TGConnectingPoint num="18" id="1991" /> +<TGConnectingPoint num="19" id="1992" /> +<TGConnectingPoint num="20" id="1993" /> +<TGConnectingPoint num="21" id="1994" /> +<TGConnectingPoint num="22" id="1995" /> +<TGConnectingPoint num="23" id="1996" /> +<TGConnectingPoint num="24" id="1997" /> +<TGConnectingPoint num="25" id="1998" /> +<TGConnectingPoint num="26" id="1999" /> +<TGConnectingPoint num="27" id="2000" /> +<TGConnectingPoint num="28" id="2001" /> +<TGConnectingPoint num="29" id="2002" /> +<TGConnectingPoint num="30" id="2003" /> +<TGConnectingPoint num="31" id="2004" /> +<TGConnectingPoint num="32" id="2005" /> +<TGConnectingPoint num="33" id="2006" /> +<TGConnectingPoint num="34" id="2007" /> +<TGConnectingPoint num="35" id="2008" /> +<TGConnectingPoint num="36" id="2009" /> +<TGConnectingPoint num="37" id="2010" /> +<TGConnectingPoint num="38" id="2011" /> +<TGConnectingPoint num="39" id="2012" /> +<TGConnectingPoint num="40" id="2013" /> +<TGConnectingPoint num="41" id="2014" /> +<TGConnectingPoint num="42" id="2015" /> +<TGConnectingPoint num="43" id="2016" /> +<TGConnectingPoint num="44" id="2017" /> +<TGConnectingPoint num="45" id="2018" /> +<TGConnectingPoint num="46" id="2019" /> +<TGConnectingPoint num="47" id="2020" /> +<TGConnectingPoint num="48" id="2021" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="2039" > +<cdparam x="390" y="245" /> +<sizeparam width="73" height="39" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="UML Note" value=" +CC is lost + +" /> +<TGConnectingPoint num="0" id="2023" /> +<TGConnectingPoint num="1" id="2024" /> +<TGConnectingPoint num="2" id="2025" /> +<TGConnectingPoint num="3" id="2026" /> +<TGConnectingPoint num="4" id="2027" /> +<TGConnectingPoint num="5" id="2028" /> +<TGConnectingPoint num="6" id="2029" /> +<TGConnectingPoint num="7" id="2030" /> +<TGConnectingPoint num="8" id="2031" /> +<TGConnectingPoint num="9" id="2032" /> +<TGConnectingPoint num="10" id="2033" /> +<TGConnectingPoint num="11" id="2034" /> +<TGConnectingPoint num="12" id="2035" /> +<TGConnectingPoint num="13" id="2036" /> +<TGConnectingPoint num="14" id="2037" /> +<TGConnectingPoint num="15" id="2038" /> +<extraparam> +<Line value=" " /> +<Line value="CC is lost" /> +<Line value=" " /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="107" id="2040" > +<cdparam x="625" y="366" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INconind" /> +<P1 x="625" y="366" id="1782" /> +<P2 x="804" y="366" id="1950" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2041" > +<cdparam x="206" y="456" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INconconf" /> +<P1 x="206" y="486" id="1912" /> +<P2 x="43" y="486" id="2012" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2042" > +<cdparam x="478" y="436" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CC" /> +<P1 x="478" y="436" id="1839" /> +<P2 x="206" y="436" id="1907" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2043" > +<cdparam x="625" y="416" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CC" /> +<P1 x="625" y="416" id="1787" /> +<P2 x="478" y="416" id="1837" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2044" > +<cdparam x="804" y="396" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INconresp" /> +<P1 x="804" y="396" id="1953" /> +<P2 x="625" y="396" id="1785" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2045" > +<cdparam x="466" y="346" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="478" y="346" id="1830" /> +<P2 x="625" y="346" id="1780" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2046" > +<cdparam x="206" y="326" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="206" y="326" id="1896" /> +<P2 x="478" y="326" id="1828" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2047" > +<cdparam x="625" y="236" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CC" /> +<P1 x="625" y="226" id="1768" /> +<P2 x="478" y="226" id="1818" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2048" > +<cdparam x="466" y="156" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="478" y="156" id="1811" /> +<P2 x="625" y="156" id="1761" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2049" > +<cdparam x="206" y="136" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="206" y="136" id="1877" /> +<P2 x="478" y="136" id="1809" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2050" > +<cdparam x="15" y="123" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INconreq" /> +<P1 x="43" y="116" id="1975" /> +<P2 x="206" y="116" id="1875" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2051" > +<cdparam x="803" y="207" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="INconresp" /> +<P1 x="804" y="206" id="1934" /> +<P2 x="625" y="206" id="1766" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2052" > +<cdparam x="625" y="177" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="INconind" /> +<P1 x="625" y="176" id="1763" /> +<P2 x="804" y="176" id="1931" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</SequenceDiagramPanel> + +<SequenceDiagramPanel name="unsuccesful_retransmissions" minX="10" maxX="2500" minY="10" maxY="1500" > +<COMPONENT type="605" id="2061" > +<cdparam x="217" y="690" /> +<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="timer expiration" value="{timer=ATST1}" /> +<TGConnectingPoint num="0" id="2053" /> +<TGConnectingPoint num="1" id="2054" /> +<TGConnectingPoint num="2" id="2055" /> +<TGConnectingPoint num="3" id="2056" /> +<TGConnectingPoint num="4" id="2057" /> +<TGConnectingPoint num="5" id="2058" /> +<TGConnectingPoint num="6" id="2059" /> +<TGConnectingPoint num="7" id="2060" /> +<extraparam> +<Interval timer="ATST1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="605" id="2070" > +<cdparam x="214" y="264" /> +<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="timer expiration" value="{timer=ATST1}" /> +<TGConnectingPoint num="0" id="2062" /> +<TGConnectingPoint num="1" id="2063" /> +<TGConnectingPoint num="2" id="2064" /> +<TGConnectingPoint num="3" id="2065" /> +<TGConnectingPoint num="4" id="2066" /> +<TGConnectingPoint num="5" id="2067" /> +<TGConnectingPoint num="6" id="2068" /> +<TGConnectingPoint num="7" id="2069" /> +<extraparam> +<Interval timer="ATST1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="603" id="2079" > +<cdparam x="216" y="141" /> +<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="setting timer" value="{timer=ATST1, duration=10}" /> +<TGConnectingPoint num="0" id="2071" /> +<TGConnectingPoint num="1" id="2072" /> +<TGConnectingPoint num="2" id="2073" /> +<TGConnectingPoint num="3" id="2074" /> +<TGConnectingPoint num="4" id="2075" /> +<TGConnectingPoint num="5" id="2076" /> +<TGConnectingPoint num="6" id="2077" /> +<TGConnectingPoint num="7" id="2078" /> +<extraparam> +<Interval timer="ATST1" duration="10" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="2154" > +<cdparam x="615" y="76" /> +<sizeparam width="10" height="750" minWidth="10" minHeight="330" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="GroundCommunication" value="GroundCommunication" /> +<TGConnectingPoint num="0" id="2080" /> +<TGConnectingPoint num="1" id="2081" /> +<TGConnectingPoint num="2" id="2082" /> +<TGConnectingPoint num="3" id="2083" /> +<TGConnectingPoint num="4" id="2084" /> +<TGConnectingPoint num="5" id="2085" /> +<TGConnectingPoint num="6" id="2086" /> +<TGConnectingPoint num="7" id="2087" /> +<TGConnectingPoint num="8" id="2088" /> +<TGConnectingPoint num="9" id="2089" /> +<TGConnectingPoint num="10" id="2090" /> +<TGConnectingPoint num="11" id="2091" /> +<TGConnectingPoint num="12" id="2092" /> +<TGConnectingPoint num="13" id="2093" /> +<TGConnectingPoint num="14" id="2094" /> +<TGConnectingPoint num="15" id="2095" /> +<TGConnectingPoint num="16" id="2096" /> +<TGConnectingPoint num="17" id="2097" /> +<TGConnectingPoint num="18" id="2098" /> +<TGConnectingPoint num="19" id="2099" /> +<TGConnectingPoint num="20" id="2100" /> +<TGConnectingPoint num="21" id="2101" /> +<TGConnectingPoint num="22" id="2102" /> +<TGConnectingPoint num="23" id="2103" /> +<TGConnectingPoint num="24" id="2104" /> +<TGConnectingPoint num="25" id="2105" /> +<TGConnectingPoint num="26" id="2106" /> +<TGConnectingPoint num="27" id="2107" /> +<TGConnectingPoint num="28" id="2108" /> +<TGConnectingPoint num="29" id="2109" /> +<TGConnectingPoint num="30" id="2110" /> +<TGConnectingPoint num="31" id="2111" /> +<TGConnectingPoint num="32" id="2112" /> +<TGConnectingPoint num="33" id="2113" /> +<TGConnectingPoint num="34" id="2114" /> +<TGConnectingPoint num="35" id="2115" /> +<TGConnectingPoint num="36" id="2116" /> +<TGConnectingPoint num="37" id="2117" /> +<TGConnectingPoint num="38" id="2118" /> +<TGConnectingPoint num="39" id="2119" /> +<TGConnectingPoint num="40" id="2120" /> +<TGConnectingPoint num="41" id="2121" /> +<TGConnectingPoint num="42" id="2122" /> +<TGConnectingPoint num="43" id="2123" /> +<TGConnectingPoint num="44" id="2124" /> +<TGConnectingPoint num="45" id="2125" /> +<TGConnectingPoint num="46" id="2126" /> +<TGConnectingPoint num="47" id="2127" /> +<TGConnectingPoint num="48" id="2128" /> +<TGConnectingPoint num="49" id="2129" /> +<TGConnectingPoint num="50" id="2130" /> +<TGConnectingPoint num="51" id="2131" /> +<TGConnectingPoint num="52" id="2132" /> +<TGConnectingPoint num="53" id="2133" /> +<TGConnectingPoint num="54" id="2134" /> +<TGConnectingPoint num="55" id="2135" /> +<TGConnectingPoint num="56" id="2136" /> +<TGConnectingPoint num="57" id="2137" /> +<TGConnectingPoint num="58" id="2138" /> +<TGConnectingPoint num="59" id="2139" /> +<TGConnectingPoint num="60" id="2140" /> +<TGConnectingPoint num="61" id="2141" /> +<TGConnectingPoint num="62" id="2142" /> +<TGConnectingPoint num="63" id="2143" /> +<TGConnectingPoint num="64" id="2144" /> +<TGConnectingPoint num="65" id="2145" /> +<TGConnectingPoint num="66" id="2146" /> +<TGConnectingPoint num="67" id="2147" /> +<TGConnectingPoint num="68" id="2148" /> +<TGConnectingPoint num="69" id="2149" /> +<TGConnectingPoint num="70" id="2150" /> +<TGConnectingPoint num="71" id="2151" /> +<TGConnectingPoint num="72" id="2152" /> +<TGConnectingPoint num="73" id="2153" /> +<extraparam> +<Actor data="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="2229" > +<cdparam x="442" y="76" /> +<sizeparam width="10" height="750" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Network" value="Network" /> +<TGConnectingPoint num="0" id="2155" /> +<TGConnectingPoint num="1" id="2156" /> +<TGConnectingPoint num="2" id="2157" /> +<TGConnectingPoint num="3" id="2158" /> +<TGConnectingPoint num="4" id="2159" /> +<TGConnectingPoint num="5" id="2160" /> +<TGConnectingPoint num="6" id="2161" /> +<TGConnectingPoint num="7" id="2162" /> +<TGConnectingPoint num="8" id="2163" /> +<TGConnectingPoint num="9" id="2164" /> +<TGConnectingPoint num="10" id="2165" /> +<TGConnectingPoint num="11" id="2166" /> +<TGConnectingPoint num="12" id="2167" /> +<TGConnectingPoint num="13" id="2168" /> +<TGConnectingPoint num="14" id="2169" /> +<TGConnectingPoint num="15" id="2170" /> +<TGConnectingPoint num="16" id="2171" /> +<TGConnectingPoint num="17" id="2172" /> +<TGConnectingPoint num="18" id="2173" /> +<TGConnectingPoint num="19" id="2174" /> +<TGConnectingPoint num="20" id="2175" /> +<TGConnectingPoint num="21" id="2176" /> +<TGConnectingPoint num="22" id="2177" /> +<TGConnectingPoint num="23" id="2178" /> +<TGConnectingPoint num="24" id="2179" /> +<TGConnectingPoint num="25" id="2180" /> +<TGConnectingPoint num="26" id="2181" /> +<TGConnectingPoint num="27" id="2182" /> +<TGConnectingPoint num="28" id="2183" /> +<TGConnectingPoint num="29" id="2184" /> +<TGConnectingPoint num="30" id="2185" /> +<TGConnectingPoint num="31" id="2186" /> +<TGConnectingPoint num="32" id="2187" /> +<TGConnectingPoint num="33" id="2188" /> +<TGConnectingPoint num="34" id="2189" /> +<TGConnectingPoint num="35" id="2190" /> +<TGConnectingPoint num="36" id="2191" /> +<TGConnectingPoint num="37" id="2192" /> +<TGConnectingPoint num="38" id="2193" /> +<TGConnectingPoint num="39" id="2194" /> +<TGConnectingPoint num="40" id="2195" /> +<TGConnectingPoint num="41" id="2196" /> +<TGConnectingPoint num="42" id="2197" /> +<TGConnectingPoint num="43" id="2198" /> +<TGConnectingPoint num="44" id="2199" /> +<TGConnectingPoint num="45" id="2200" /> +<TGConnectingPoint num="46" id="2201" /> +<TGConnectingPoint num="47" id="2202" /> +<TGConnectingPoint num="48" id="2203" /> +<TGConnectingPoint num="49" id="2204" /> +<TGConnectingPoint num="50" id="2205" /> +<TGConnectingPoint num="51" id="2206" /> +<TGConnectingPoint num="52" id="2207" /> +<TGConnectingPoint num="53" id="2208" /> +<TGConnectingPoint num="54" id="2209" /> +<TGConnectingPoint num="55" id="2210" /> +<TGConnectingPoint num="56" id="2211" /> +<TGConnectingPoint num="57" id="2212" /> +<TGConnectingPoint num="58" id="2213" /> +<TGConnectingPoint num="59" id="2214" /> +<TGConnectingPoint num="60" id="2215" /> +<TGConnectingPoint num="61" id="2216" /> +<TGConnectingPoint num="62" id="2217" /> +<TGConnectingPoint num="63" id="2218" /> +<TGConnectingPoint num="64" id="2219" /> +<TGConnectingPoint num="65" id="2220" /> +<TGConnectingPoint num="66" id="2221" /> +<TGConnectingPoint num="67" id="2222" /> +<TGConnectingPoint num="68" id="2223" /> +<TGConnectingPoint num="69" id="2224" /> +<TGConnectingPoint num="70" id="2225" /> +<TGConnectingPoint num="71" id="2226" /> +<TGConnectingPoint num="72" id="2227" /> +<TGConnectingPoint num="73" id="2228" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="2322" > +<cdparam x="196" y="76" /> +<sizeparam width="10" height="750" minWidth="10" minHeight="283" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="OnboardCommunication" value="OnboardCommunication" /> +<TGConnectingPoint num="0" id="2248" /> +<TGConnectingPoint num="1" id="2249" /> +<TGConnectingPoint num="2" id="2250" /> +<TGConnectingPoint num="3" id="2251" /> +<TGConnectingPoint num="4" id="2252" /> +<TGConnectingPoint num="5" id="2253" /> +<TGConnectingPoint num="6" id="2254" /> +<TGConnectingPoint num="7" id="2255" /> +<TGConnectingPoint num="8" id="2256" /> +<TGConnectingPoint num="9" id="2257" /> +<TGConnectingPoint num="10" id="2258" /> +<TGConnectingPoint num="11" id="2259" /> +<TGConnectingPoint num="12" id="2260" /> +<TGConnectingPoint num="13" id="2261" /> +<TGConnectingPoint num="14" id="2262" /> +<TGConnectingPoint num="15" id="2263" /> +<TGConnectingPoint num="16" id="2264" /> +<TGConnectingPoint num="17" id="2265" /> +<TGConnectingPoint num="18" id="2266" /> +<TGConnectingPoint num="19" id="2267" /> +<TGConnectingPoint num="20" id="2268" /> +<TGConnectingPoint num="21" id="2269" /> +<TGConnectingPoint num="22" id="2270" /> +<TGConnectingPoint num="23" id="2271" /> +<TGConnectingPoint num="24" id="2272" /> +<TGConnectingPoint num="25" id="2273" /> +<TGConnectingPoint num="26" id="2274" /> +<TGConnectingPoint num="27" id="2275" /> +<TGConnectingPoint num="28" id="2276" /> +<TGConnectingPoint num="29" id="2277" /> +<TGConnectingPoint num="30" id="2278" /> +<TGConnectingPoint num="31" id="2279" /> +<TGConnectingPoint num="32" id="2280" /> +<TGConnectingPoint num="33" id="2281" /> +<TGConnectingPoint num="34" id="2282" /> +<TGConnectingPoint num="35" id="2283" /> +<TGConnectingPoint num="36" id="2284" /> +<TGConnectingPoint num="37" id="2285" /> +<TGConnectingPoint num="38" id="2286" /> +<TGConnectingPoint num="39" id="2287" /> +<TGConnectingPoint num="40" id="2288" /> +<TGConnectingPoint num="41" id="2289" /> +<TGConnectingPoint num="42" id="2290" /> +<TGConnectingPoint num="43" id="2291" /> +<TGConnectingPoint num="44" id="2292" /> +<TGConnectingPoint num="45" id="2293" /> +<TGConnectingPoint num="46" id="2294" /> +<TGConnectingPoint num="47" id="2295" /> +<TGConnectingPoint num="48" id="2296" /> +<TGConnectingPoint num="49" id="2297" /> +<TGConnectingPoint num="50" id="2298" /> +<TGConnectingPoint num="51" id="2299" /> +<TGConnectingPoint num="52" id="2300" /> +<TGConnectingPoint num="53" id="2301" /> +<TGConnectingPoint num="54" id="2302" /> +<TGConnectingPoint num="55" id="2303" /> +<TGConnectingPoint num="56" id="2304" /> +<TGConnectingPoint num="57" id="2305" /> +<TGConnectingPoint num="58" id="2306" /> +<TGConnectingPoint num="59" id="2307" /> +<TGConnectingPoint num="60" id="2308" /> +<TGConnectingPoint num="61" id="2309" /> +<TGConnectingPoint num="62" id="2310" /> +<TGConnectingPoint num="63" id="2311" /> +<TGConnectingPoint num="64" id="2312" /> +<TGConnectingPoint num="65" id="2313" /> +<TGConnectingPoint num="66" id="2314" /> +<TGConnectingPoint num="67" id="2315" /> +<TGConnectingPoint num="68" id="2316" /> +<TGConnectingPoint num="69" id="2317" /> +<TGConnectingPoint num="70" id="2318" /> +<TGConnectingPoint num="71" id="2319" /> +<TGConnectingPoint num="72" id="2320" /> +<TGConnectingPoint num="73" id="2321" /> +<extraparam> +<Actor data="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="605" id="2238" > +<father id="2322" num="0" /> +<cdparam x="214" y="497" /> +<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="18" maxX="18" minY="-2" maxY="728" /> +<infoparam name="timer expiration" value="{timer=ATST1}" /> +<TGConnectingPoint num="0" id="2230" /> +<TGConnectingPoint num="1" id="2231" /> +<TGConnectingPoint num="2" id="2232" /> +<TGConnectingPoint num="3" id="2233" /> +<TGConnectingPoint num="4" id="2234" /> +<TGConnectingPoint num="5" id="2235" /> +<TGConnectingPoint num="6" id="2236" /> +<TGConnectingPoint num="7" id="2237" /> +<extraparam> +<Interval timer="ATST1" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="603" id="2247" > +<father id="2322" num="1" /> +<cdparam x="214" y="334" /> +<sizeparam width="15" height="25" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="18" maxX="18" minY="-2" maxY="728" /> +<infoparam name="setting timer" value="{timer=ATST1, duration=10}" /> +<TGConnectingPoint num="0" id="2239" /> +<TGConnectingPoint num="1" id="2240" /> +<TGConnectingPoint num="2" id="2241" /> +<TGConnectingPoint num="3" id="2242" /> +<TGConnectingPoint num="4" id="2243" /> +<TGConnectingPoint num="5" id="2244" /> +<TGConnectingPoint num="6" id="2245" /> +<TGConnectingPoint num="7" id="2246" /> +<extraparam> +<Interval timer="ATST1" duration="10" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="606" id="2397" > +<cdparam x="794" y="76" /> +<sizeparam width="10" height="750" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Controller" value="AirTrafficController" /> +<TGConnectingPoint num="0" id="2323" /> +<TGConnectingPoint num="1" id="2324" /> +<TGConnectingPoint num="2" id="2325" /> +<TGConnectingPoint num="3" id="2326" /> +<TGConnectingPoint num="4" id="2327" /> +<TGConnectingPoint num="5" id="2328" /> +<TGConnectingPoint num="6" id="2329" /> +<TGConnectingPoint num="7" id="2330" /> +<TGConnectingPoint num="8" id="2331" /> +<TGConnectingPoint num="9" id="2332" /> +<TGConnectingPoint num="10" id="2333" /> +<TGConnectingPoint num="11" id="2334" /> +<TGConnectingPoint num="12" id="2335" /> +<TGConnectingPoint num="13" id="2336" /> +<TGConnectingPoint num="14" id="2337" /> +<TGConnectingPoint num="15" id="2338" /> +<TGConnectingPoint num="16" id="2339" /> +<TGConnectingPoint num="17" id="2340" /> +<TGConnectingPoint num="18" id="2341" /> +<TGConnectingPoint num="19" id="2342" /> +<TGConnectingPoint num="20" id="2343" /> +<TGConnectingPoint num="21" id="2344" /> +<TGConnectingPoint num="22" id="2345" /> +<TGConnectingPoint num="23" id="2346" /> +<TGConnectingPoint num="24" id="2347" /> +<TGConnectingPoint num="25" id="2348" /> +<TGConnectingPoint num="26" id="2349" /> +<TGConnectingPoint num="27" id="2350" /> +<TGConnectingPoint num="28" id="2351" /> +<TGConnectingPoint num="29" id="2352" /> +<TGConnectingPoint num="30" id="2353" /> +<TGConnectingPoint num="31" id="2354" /> +<TGConnectingPoint num="32" id="2355" /> +<TGConnectingPoint num="33" id="2356" /> +<TGConnectingPoint num="34" id="2357" /> +<TGConnectingPoint num="35" id="2358" /> +<TGConnectingPoint num="36" id="2359" /> +<TGConnectingPoint num="37" id="2360" /> +<TGConnectingPoint num="38" id="2361" /> +<TGConnectingPoint num="39" id="2362" /> +<TGConnectingPoint num="40" id="2363" /> +<TGConnectingPoint num="41" id="2364" /> +<TGConnectingPoint num="42" id="2365" /> +<TGConnectingPoint num="43" id="2366" /> +<TGConnectingPoint num="44" id="2367" /> +<TGConnectingPoint num="45" id="2368" /> +<TGConnectingPoint num="46" id="2369" /> +<TGConnectingPoint num="47" id="2370" /> +<TGConnectingPoint num="48" id="2371" /> +<TGConnectingPoint num="49" id="2372" /> +<TGConnectingPoint num="50" id="2373" /> +<TGConnectingPoint num="51" id="2374" /> +<TGConnectingPoint num="52" id="2375" /> +<TGConnectingPoint num="53" id="2376" /> +<TGConnectingPoint num="54" id="2377" /> +<TGConnectingPoint num="55" id="2378" /> +<TGConnectingPoint num="56" id="2379" /> +<TGConnectingPoint num="57" id="2380" /> +<TGConnectingPoint num="58" id="2381" /> +<TGConnectingPoint num="59" id="2382" /> +<TGConnectingPoint num="60" id="2383" /> +<TGConnectingPoint num="61" id="2384" /> +<TGConnectingPoint num="62" id="2385" /> +<TGConnectingPoint num="63" id="2386" /> +<TGConnectingPoint num="64" id="2387" /> +<TGConnectingPoint num="65" id="2388" /> +<TGConnectingPoint num="66" id="2389" /> +<TGConnectingPoint num="67" id="2390" /> +<TGConnectingPoint num="68" id="2391" /> +<TGConnectingPoint num="69" id="2392" /> +<TGConnectingPoint num="70" id="2393" /> +<TGConnectingPoint num="71" id="2394" /> +<TGConnectingPoint num="72" id="2395" /> +<TGConnectingPoint num="73" id="2396" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="606" id="2472" > +<cdparam x="33" y="76" /> +<sizeparam width="10" height="750" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Pilot" value="Pilot" /> +<TGConnectingPoint num="0" id="2398" /> +<TGConnectingPoint num="1" id="2399" /> +<TGConnectingPoint num="2" id="2400" /> +<TGConnectingPoint num="3" id="2401" /> +<TGConnectingPoint num="4" id="2402" /> +<TGConnectingPoint num="5" id="2403" /> +<TGConnectingPoint num="6" id="2404" /> +<TGConnectingPoint num="7" id="2405" /> +<TGConnectingPoint num="8" id="2406" /> +<TGConnectingPoint num="9" id="2407" /> +<TGConnectingPoint num="10" id="2408" /> +<TGConnectingPoint num="11" id="2409" /> +<TGConnectingPoint num="12" id="2410" /> +<TGConnectingPoint num="13" id="2411" /> +<TGConnectingPoint num="14" id="2412" /> +<TGConnectingPoint num="15" id="2413" /> +<TGConnectingPoint num="16" id="2414" /> +<TGConnectingPoint num="17" id="2415" /> +<TGConnectingPoint num="18" id="2416" /> +<TGConnectingPoint num="19" id="2417" /> +<TGConnectingPoint num="20" id="2418" /> +<TGConnectingPoint num="21" id="2419" /> +<TGConnectingPoint num="22" id="2420" /> +<TGConnectingPoint num="23" id="2421" /> +<TGConnectingPoint num="24" id="2422" /> +<TGConnectingPoint num="25" id="2423" /> +<TGConnectingPoint num="26" id="2424" /> +<TGConnectingPoint num="27" id="2425" /> +<TGConnectingPoint num="28" id="2426" /> +<TGConnectingPoint num="29" id="2427" /> +<TGConnectingPoint num="30" id="2428" /> +<TGConnectingPoint num="31" id="2429" /> +<TGConnectingPoint num="32" id="2430" /> +<TGConnectingPoint num="33" id="2431" /> +<TGConnectingPoint num="34" id="2432" /> +<TGConnectingPoint num="35" id="2433" /> +<TGConnectingPoint num="36" id="2434" /> +<TGConnectingPoint num="37" id="2435" /> +<TGConnectingPoint num="38" id="2436" /> +<TGConnectingPoint num="39" id="2437" /> +<TGConnectingPoint num="40" id="2438" /> +<TGConnectingPoint num="41" id="2439" /> +<TGConnectingPoint num="42" id="2440" /> +<TGConnectingPoint num="43" id="2441" /> +<TGConnectingPoint num="44" id="2442" /> +<TGConnectingPoint num="45" id="2443" /> +<TGConnectingPoint num="46" id="2444" /> +<TGConnectingPoint num="47" id="2445" /> +<TGConnectingPoint num="48" id="2446" /> +<TGConnectingPoint num="49" id="2447" /> +<TGConnectingPoint num="50" id="2448" /> +<TGConnectingPoint num="51" id="2449" /> +<TGConnectingPoint num="52" id="2450" /> +<TGConnectingPoint num="53" id="2451" /> +<TGConnectingPoint num="54" id="2452" /> +<TGConnectingPoint num="55" id="2453" /> +<TGConnectingPoint num="56" id="2454" /> +<TGConnectingPoint num="57" id="2455" /> +<TGConnectingPoint num="58" id="2456" /> +<TGConnectingPoint num="59" id="2457" /> +<TGConnectingPoint num="60" id="2458" /> +<TGConnectingPoint num="61" id="2459" /> +<TGConnectingPoint num="62" id="2460" /> +<TGConnectingPoint num="63" id="2461" /> +<TGConnectingPoint num="64" id="2462" /> +<TGConnectingPoint num="65" id="2463" /> +<TGConnectingPoint num="66" id="2464" /> +<TGConnectingPoint num="67" id="2465" /> +<TGConnectingPoint num="68" id="2466" /> +<TGConnectingPoint num="69" id="2467" /> +<TGConnectingPoint num="70" id="2468" /> +<TGConnectingPoint num="71" id="2469" /> +<TGConnectingPoint num="72" id="2470" /> +<TGConnectingPoint num="73" id="2471" /> +<extraparam> +<Actor data="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="2489" > +<cdparam x="385" y="235" /> +<sizeparam width="73" height="39" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="UML Note" value=" +CC is lost + +" /> +<TGConnectingPoint num="0" id="2473" /> +<TGConnectingPoint num="1" id="2474" /> +<TGConnectingPoint num="2" id="2475" /> +<TGConnectingPoint num="3" id="2476" /> +<TGConnectingPoint num="4" id="2477" /> +<TGConnectingPoint num="5" id="2478" /> +<TGConnectingPoint num="6" id="2479" /> +<TGConnectingPoint num="7" id="2480" /> +<TGConnectingPoint num="8" id="2481" /> +<TGConnectingPoint num="9" id="2482" /> +<TGConnectingPoint num="10" id="2483" /> +<TGConnectingPoint num="11" id="2484" /> +<TGConnectingPoint num="12" id="2485" /> +<TGConnectingPoint num="13" id="2486" /> +<TGConnectingPoint num="14" id="2487" /> +<TGConnectingPoint num="15" id="2488" /> +<extraparam> +<Line value=" " /> +<Line value="CC is lost" /> +<Line value=" " /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="2506" > +<cdparam x="387" y="639" /> +<sizeparam width="73" height="39" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="UML Note" value=" +CC is lost + +" /> +<TGConnectingPoint num="0" id="2490" /> +<TGConnectingPoint num="1" id="2491" /> +<TGConnectingPoint num="2" id="2492" /> +<TGConnectingPoint num="3" id="2493" /> +<TGConnectingPoint num="4" id="2494" /> +<TGConnectingPoint num="5" id="2495" /> +<TGConnectingPoint num="6" id="2496" /> +<TGConnectingPoint num="7" id="2497" /> +<TGConnectingPoint num="8" id="2498" /> +<TGConnectingPoint num="9" id="2499" /> +<TGConnectingPoint num="10" id="2500" /> +<TGConnectingPoint num="11" id="2501" /> +<TGConnectingPoint num="12" id="2502" /> +<TGConnectingPoint num="13" id="2503" /> +<TGConnectingPoint num="14" id="2504" /> +<TGConnectingPoint num="15" id="2505" /> +<extraparam> +<Line value=" " /> +<Line value="CC is lost" /> +<Line value=" " /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="2523" > +<cdparam x="384" y="440" /> +<sizeparam width="73" height="39" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="UML Note" value=" +CC is lost + +" /> +<TGConnectingPoint num="0" id="2507" /> +<TGConnectingPoint num="1" id="2508" /> +<TGConnectingPoint num="2" id="2509" /> +<TGConnectingPoint num="3" id="2510" /> +<TGConnectingPoint num="4" id="2511" /> +<TGConnectingPoint num="5" id="2512" /> +<TGConnectingPoint num="6" id="2513" /> +<TGConnectingPoint num="7" id="2514" /> +<TGConnectingPoint num="8" id="2515" /> +<TGConnectingPoint num="9" id="2516" /> +<TGConnectingPoint num="10" id="2517" /> +<TGConnectingPoint num="11" id="2518" /> +<TGConnectingPoint num="12" id="2519" /> +<TGConnectingPoint num="13" id="2520" /> +<TGConnectingPoint num="14" id="2521" /> +<TGConnectingPoint num="15" id="2522" /> +<extraparam> +<Line value=" " /> +<Line value="CC is lost" /> +<Line value=" " /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="107" id="2524" > +<cdparam x="201" y="726" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INerror" /> +<P1 x="201" y="726" id="2312" /> +<P2 x="38" y="726" id="2462" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2525" > +<cdparam x="620" y="616" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CC" /> +<P1 x="620" y="616" id="2133" /> +<P2 x="447" y="616" id="2208" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2526" > +<cdparam x="799" y="596" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INconresp" /> +<P1 x="799" y="596" id="2374" /> +<P2 x="620" y="596" id="2131" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2527" > +<cdparam x="620" y="576" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INconind" /> +<P1 x="620" y="576" id="2129" /> +<P2 x="799" y="576" id="2372" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2528" > +<cdparam x="447" y="556" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="447" y="556" id="2202" /> +<P2 x="620" y="556" id="2127" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2529" > +<cdparam x="201" y="536" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="201" y="536" id="2293" /> +<P2 x="447" y="536" id="2200" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2530" > +<cdparam x="620" y="406" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CC" /> +<P1 x="620" y="406" id="2112" /> +<P2 x="447" y="406" id="2187" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2531" > +<cdparam x="799" y="386" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INconresp" /> +<P1 x="799" y="386" id="2353" /> +<P2 x="620" y="386" id="2110" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2534" > +<cdparam x="620" y="356" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INconind" /> +<P1 x="620" y="356" id="2107" /> +<P2 x="799" y="356" id="2350" /> +<Point x="619" y="355" /> +<Point x="621" y="355" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2532" > +<father id="2534" num="0" /> +<cdparam x="619" y="355" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="2533" > +<father id="2534" num="1" /> +<cdparam x="621" y="355" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="106" id="2535" > +<cdparam x="461" y="336" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="447" y="336" id="2180" /> +<P2 x="620" y="336" id="2105" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2536" > +<cdparam x="201" y="316" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="201" y="316" id="2271" /> +<P2 x="447" y="316" id="2178" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2537" > +<cdparam x="620" y="226" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CC" /> +<P1 x="620" y="216" id="2093" /> +<P2 x="447" y="216" id="2168" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2538" > +<cdparam x="461" y="146" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="447" y="146" id="2161" /> +<P2 x="620" y="146" id="2086" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="106" id="2539" > +<cdparam x="201" y="126" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="CR" /> +<P1 x="201" y="126" id="2252" /> +<P2 x="447" y="126" id="2159" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2540" > +<cdparam x="10" y="113" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="INconreq" /> +<P1 x="38" y="106" id="2400" /> +<P2 x="201" y="106" id="2250" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2541" > +<cdparam x="798" y="197" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="INconresp" /> +<P1 x="799" y="196" id="2334" /> +<P2 x="620" y="196" id="2091" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="107" id="2542" > +<cdparam x="620" y="167" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from instance to instance" value="INconind" /> +<P1 x="620" y="166" id="2088" /> +<P2 x="799" y="166" id="2331" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</SequenceDiagramPanel> + +</Modeling> + + + + +<Modeling type="AVATAR Design" nameTab="Design_unlossy" > +<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="1400" minY="10" maxY="900" > +<MainCode value="void __user_init() {"/> +<MainCode value="}"/> +<Optimized value="true" /> +<Validated value="" /> +<Ignored value="" /> + +<CONNECTOR type="5002" id="2548" > +<cdparam x="117" y="266" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="2545" /> +<TGConnectingPoint num="1" id="2546" /> +<TGConnectingPoint num="2" id="2547" /> +<P1 x="117" y="266" id="2601" /> +<P2 x="464" y="267" id="2627" /> +<Point x="117" y="308" /> +<Point x="464" y="308" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in CC()" /> +<osd value="out CC()" /> +<isd value="in CR()" /> +<oso value="out CR()" /> +<FIFOType asynchronous="true" size="1" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR><SUBCOMPONENT type="-1" id="2543" > +<father id="2548" num="0" /> +<cdparam x="117" y="308" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="2544" > +<father id="2548" num="1" /> +<cdparam x="464" y="308" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5002" id="2550" > +<cdparam x="449" y="116" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block0 to Block0" value="" /> +<TGConnectingPoint num="0" id="2549" /> +<P1 x="424" y="104" id="2643" /> +<P2 x="424" y="143" id="2613" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in INconind()" /> +<osd value="out INconind()" /> +<isd value="in INconresp()" /> +<oso value="out INconresp()" /> +<FIFOType asynchronous="false" size="1" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="5002" id="2552" > +<cdparam x="145" y="116" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block0 to Block0" value="" /> +<TGConnectingPoint num="0" id="2551" /> +<P1 x="158" y="104" id="2668" /> +<P2 x="158" y="142" id="2588" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in INconconf()" /> +<osd value="out INconconf()" /> +<isd value="in INconreq()" /> +<oso value="out INconreq()" /> +<FIFOType asynchronous="false" size="1" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<COMPONENT type="301" id="2569" > +<cdparam x="235" y="287" /> +<sizeparam width="111" height="15" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value="Unlossy channel +" /> +<TGConnectingPoint num="0" id="2553" /> +<TGConnectingPoint num="1" id="2554" /> +<TGConnectingPoint num="2" id="2555" /> +<TGConnectingPoint num="3" id="2556" /> +<TGConnectingPoint num="4" id="2557" /> +<TGConnectingPoint num="5" id="2558" /> +<TGConnectingPoint num="6" id="2559" /> +<TGConnectingPoint num="7" id="2560" /> +<TGConnectingPoint num="8" id="2561" /> +<TGConnectingPoint num="9" id="2562" /> +<TGConnectingPoint num="10" id="2563" /> +<TGConnectingPoint num="11" id="2564" /> +<TGConnectingPoint num="12" id="2565" /> +<TGConnectingPoint num="13" id="2566" /> +<TGConnectingPoint num="14" id="2567" /> +<TGConnectingPoint num="15" id="2568" /> +<extraparam> +<Line value="Unlossy channel" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="2586" > +<cdparam x="10" y="332" /> +<sizeparam width="588" height="51" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value=" + Black squares: the protocol entities communicate by rendezvous with the Pilot and the Controller. + White squares: the protocol entities communicate bu FIFO queues with their underlying network. + +" /> +<TGConnectingPoint num="0" id="2570" /> +<TGConnectingPoint num="1" id="2571" /> +<TGConnectingPoint num="2" id="2572" /> +<TGConnectingPoint num="3" id="2573" /> +<TGConnectingPoint num="4" id="2574" /> +<TGConnectingPoint num="5" id="2575" /> +<TGConnectingPoint num="6" id="2576" /> +<TGConnectingPoint num="7" id="2577" /> +<TGConnectingPoint num="8" id="2578" /> +<TGConnectingPoint num="9" id="2579" /> +<TGConnectingPoint num="10" id="2580" /> +<TGConnectingPoint num="11" id="2581" /> +<TGConnectingPoint num="12" id="2582" /> +<TGConnectingPoint num="13" id="2583" /> +<TGConnectingPoint num="14" id="2584" /> +<TGConnectingPoint num="15" id="2585" /> +<extraparam> +<Line value="" /> +<Line value=" Black squares: the protocol entities communicate by rendezvous with the Pilot and the Controller." /> +<Line value=" White squares: the protocol entities communicate bu FIFO queues with their underlying network." /> +<Line value=" " /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="2611" > +<cdparam x="77" y="142" /> +<sizeparam width="163" height="124" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="OnBoardCommunication" /> +<TGConnectingPoint num="0" id="2587" /> +<TGConnectingPoint num="1" id="2588" /> +<TGConnectingPoint num="2" id="2589" /> +<TGConnectingPoint num="3" id="2590" /> +<TGConnectingPoint num="4" id="2591" /> +<TGConnectingPoint num="5" id="2592" /> +<TGConnectingPoint num="6" id="2593" /> +<TGConnectingPoint num="7" id="2594" /> +<TGConnectingPoint num="8" id="2595" /> +<TGConnectingPoint num="9" id="2596" /> +<TGConnectingPoint num="10" id="2597" /> +<TGConnectingPoint num="11" id="2598" /> +<TGConnectingPoint num="12" id="2599" /> +<TGConnectingPoint num="13" id="2600" /> +<TGConnectingPoint num="14" id="2601" /> +<TGConnectingPoint num="15" id="2602" /> +<TGConnectingPoint num="16" id="2603" /> +<TGConnectingPoint num="17" id="2604" /> +<TGConnectingPoint num="18" id="2605" /> +<TGConnectingPoint num="19" id="2606" /> +<TGConnectingPoint num="20" id="2607" /> +<TGConnectingPoint num="21" id="2608" /> +<TGConnectingPoint num="22" id="2609" /> +<TGConnectingPoint num="23" id="2610" /> +<extraparam> +<CryptoBlock value="false" /> +<Signal value="in INconreq()" attached="false" /> +<Signal value="out INconconf()" attached="false" /> +<Signal value="out CR()" attached="false" /> +<Signal value="in CC()" attached="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="2636" > +<cdparam x="344" y="143" /> +<sizeparam width="161" height="124" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="GroundCommunication" /> +<TGConnectingPoint num="0" id="2612" /> +<TGConnectingPoint num="1" id="2613" /> +<TGConnectingPoint num="2" id="2614" /> +<TGConnectingPoint num="3" id="2615" /> +<TGConnectingPoint num="4" id="2616" /> +<TGConnectingPoint num="5" id="2617" /> +<TGConnectingPoint num="6" id="2618" /> +<TGConnectingPoint num="7" id="2619" /> +<TGConnectingPoint num="8" id="2620" /> +<TGConnectingPoint num="9" id="2621" /> +<TGConnectingPoint num="10" id="2622" /> +<TGConnectingPoint num="11" id="2623" /> +<TGConnectingPoint num="12" id="2624" /> +<TGConnectingPoint num="13" id="2625" /> +<TGConnectingPoint num="14" id="2626" /> +<TGConnectingPoint num="15" id="2627" /> +<TGConnectingPoint num="16" id="2628" /> +<TGConnectingPoint num="17" id="2629" /> +<TGConnectingPoint num="18" id="2630" /> +<TGConnectingPoint num="19" id="2631" /> +<TGConnectingPoint num="20" id="2632" /> +<TGConnectingPoint num="21" id="2633" /> +<TGConnectingPoint num="22" id="2634" /> +<TGConnectingPoint num="23" id="2635" /> +<extraparam> +<CryptoBlock value="false" /> +<Signal value="in CR()" attached="false" /> +<Signal value="out CC()" attached="false" /> +<Signal value="out INconind()" attached="false" /> +<Signal value="in INconresp()" attached="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="2661" > +<cdparam x="346" y="10" /> +<sizeparam width="157" height="94" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="Controller" /> +<TGConnectingPoint num="0" id="2637" /> +<TGConnectingPoint num="1" id="2638" /> +<TGConnectingPoint num="2" id="2639" /> +<TGConnectingPoint num="3" id="2640" /> +<TGConnectingPoint num="4" id="2641" /> +<TGConnectingPoint num="5" id="2642" /> +<TGConnectingPoint num="6" id="2643" /> +<TGConnectingPoint num="7" id="2644" /> +<TGConnectingPoint num="8" id="2645" /> +<TGConnectingPoint num="9" id="2646" /> +<TGConnectingPoint num="10" id="2647" /> +<TGConnectingPoint num="11" id="2648" /> +<TGConnectingPoint num="12" id="2649" /> +<TGConnectingPoint num="13" id="2650" /> +<TGConnectingPoint num="14" id="2651" /> +<TGConnectingPoint num="15" id="2652" /> +<TGConnectingPoint num="16" id="2653" /> +<TGConnectingPoint num="17" id="2654" /> +<TGConnectingPoint num="18" id="2655" /> +<TGConnectingPoint num="19" id="2656" /> +<TGConnectingPoint num="20" id="2657" /> +<TGConnectingPoint num="21" id="2658" /> +<TGConnectingPoint num="22" id="2659" /> +<TGConnectingPoint num="23" id="2660" /> +<extraparam> +<CryptoBlock value="false" /> +<Signal value="in INconind()" attached="false" /> +<Signal value="out INconresp()" attached="false" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="2686" > +<cdparam x="76" y="10" /> +<sizeparam width="165" height="94" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="Pilot" /> +<TGConnectingPoint num="0" id="2662" /> +<TGConnectingPoint num="1" id="2663" /> +<TGConnectingPoint num="2" id="2664" /> +<TGConnectingPoint num="3" id="2665" /> +<TGConnectingPoint num="4" id="2666" /> +<TGConnectingPoint num="5" id="2667" /> +<TGConnectingPoint num="6" id="2668" /> +<TGConnectingPoint num="7" id="2669" /> +<TGConnectingPoint num="8" id="2670" /> +<TGConnectingPoint num="9" id="2671" /> +<TGConnectingPoint num="10" id="2672" /> +<TGConnectingPoint num="11" id="2673" /> +<TGConnectingPoint num="12" id="2674" /> +<TGConnectingPoint num="13" id="2675" /> +<TGConnectingPoint num="14" id="2676" /> +<TGConnectingPoint num="15" id="2677" /> +<TGConnectingPoint num="16" id="2678" /> +<TGConnectingPoint num="17" id="2679" /> +<TGConnectingPoint num="18" id="2680" /> +<TGConnectingPoint num="19" id="2681" /> +<TGConnectingPoint num="20" id="2682" /> +<TGConnectingPoint num="21" id="2683" /> +<TGConnectingPoint num="22" id="2684" /> +<TGConnectingPoint num="23" id="2685" /> +<extraparam> +<CryptoBlock value="false" /> +<Signal value="out INconreq()" attached="false" /> +<Signal value="in INconconf()" attached="false" /> +</extraparam> +</COMPONENT> + + +</AVATARBlockDiagramPanel> + +<AVATARStateMachineDiagramPanel name="OnBoardCommunication" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="2693" > +<cdparam x="82" y="38" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="2692" /> +<P1 x="68" y="42" id="2944" /> +<P2 x="88" y="61" id="2904" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2691" > +<father id="2693" num="0" /> +<cdparam x="82" y="78" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2687" /> +<TGConnectingPoint num="1" id="2688" /> +<TGConnectingPoint num="2" id="2689" /> +<TGConnectingPoint num="3" id="2690" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2700" > +<cdparam x="88" y="111" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="2699" /> +<P1 x="88" y="111" id="2909" /> +<P2 x="88" y="133" id="2892" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2698" > +<father id="2700" num="0" /> +<cdparam x="88" y="151" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2694" /> +<TGConnectingPoint num="1" id="2695" /> +<TGConnectingPoint num="2" id="2696" /> +<TGConnectingPoint num="3" id="2697" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2707" > +<cdparam x="88" y="163" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2706" /> +<P1 x="88" y="163" id="2893" /> +<P2 x="87" y="181" id="2881" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2705" > +<father id="2707" num="0" /> +<cdparam x="88" y="203" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2701" /> +<TGConnectingPoint num="1" id="2702" /> +<TGConnectingPoint num="2" id="2703" /> +<TGConnectingPoint num="3" id="2704" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2714" > +<cdparam x="87" y="211" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="2713" /> +<P1 x="87" y="211" id="2882" /> +<P2 x="87" y="232" id="2841" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2712" > +<father id="2714" num="0" /> +<cdparam x="87" y="251" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2708" /> +<TGConnectingPoint num="1" id="2709" /> +<TGConnectingPoint num="2" id="2710" /> +<TGConnectingPoint num="3" id="2711" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2721" > +<cdparam x="304" y="109" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="2720" /> +<P1 x="304" y="109" id="2805" /> +<P2 x="304" y="134" id="2788" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2719" > +<father id="2721" num="0" /> +<cdparam x="304" y="149" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2715" /> +<TGConnectingPoint num="1" id="2716" /> +<TGConnectingPoint num="2" id="2717" /> +<TGConnectingPoint num="3" id="2718" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2728" > +<cdparam x="304" y="164" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2727" /> +<P1 x="304" y="164" id="2789" /> +<P2 x="304" y="188" id="2777" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2726" > +<father id="2728" num="0" /> +<cdparam x="304" y="204" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2722" /> +<TGConnectingPoint num="1" id="2723" /> +<TGConnectingPoint num="2" id="2724" /> +<TGConnectingPoint num="3" id="2725" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2735" > +<cdparam x="304" y="218" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="2734" /> +<P1 x="304" y="218" id="2778" /> +<P2 x="304" y="241" id="2737" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2733" > +<father id="2735" num="0" /> +<cdparam x="304" y="258" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2729" /> +<TGConnectingPoint num="1" id="2730" /> +<TGConnectingPoint num="2" id="2731" /> +<TGConnectingPoint num="3" id="2732" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5106" id="2776" > +<cdparam x="246" y="241" /> +<sizeparam width="117" height="47" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="CONNECTED" /> +<TGConnectingPoint num="0" id="2736" /> +<TGConnectingPoint num="1" id="2737" /> +<TGConnectingPoint num="2" id="2738" /> +<TGConnectingPoint num="3" id="2739" /> +<TGConnectingPoint num="4" id="2740" /> +<TGConnectingPoint num="5" id="2741" /> +<TGConnectingPoint num="6" id="2742" /> +<TGConnectingPoint num="7" id="2743" /> +<TGConnectingPoint num="8" id="2744" /> +<TGConnectingPoint num="9" id="2745" /> +<TGConnectingPoint num="10" id="2746" /> +<TGConnectingPoint num="11" id="2747" /> +<TGConnectingPoint num="12" id="2748" /> +<TGConnectingPoint num="13" id="2749" /> +<TGConnectingPoint num="14" id="2750" /> +<TGConnectingPoint num="15" id="2751" /> +<TGConnectingPoint num="16" id="2752" /> +<TGConnectingPoint num="17" id="2753" /> +<TGConnectingPoint num="18" id="2754" /> +<TGConnectingPoint num="19" id="2755" /> +<TGConnectingPoint num="20" id="2756" /> +<TGConnectingPoint num="21" id="2757" /> +<TGConnectingPoint num="22" id="2758" /> +<TGConnectingPoint num="23" id="2759" /> +<TGConnectingPoint num="24" id="2760" /> +<TGConnectingPoint num="25" id="2761" /> +<TGConnectingPoint num="26" id="2762" /> +<TGConnectingPoint num="27" id="2763" /> +<TGConnectingPoint num="28" id="2764" /> +<TGConnectingPoint num="29" id="2765" /> +<TGConnectingPoint num="30" id="2766" /> +<TGConnectingPoint num="31" id="2767" /> +<TGConnectingPoint num="32" id="2768" /> +<TGConnectingPoint num="33" id="2769" /> +<TGConnectingPoint num="34" id="2770" /> +<TGConnectingPoint num="35" id="2771" /> +<TGConnectingPoint num="36" id="2772" /> +<TGConnectingPoint num="37" id="2773" /> +<TGConnectingPoint num="38" id="2774" /> +<TGConnectingPoint num="39" id="2775" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5103" id="2787" > +<cdparam x="267" y="193" /> +<sizeparam width="74" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="INconconf()" /> +<TGConnectingPoint num="0" id="2777" /> +<TGConnectingPoint num="1" id="2778" /> +<TGConnectingPoint num="2" id="2779" /> +<TGConnectingPoint num="3" id="2780" /> +<TGConnectingPoint num="4" id="2781" /> +<TGConnectingPoint num="5" id="2782" /> +<TGConnectingPoint num="6" id="2783" /> +<TGConnectingPoint num="7" id="2784" /> +<TGConnectingPoint num="8" id="2785" /> +<TGConnectingPoint num="9" id="2786" /> +</COMPONENT> + +<COMPONENT type="5104" id="2798" > +<cdparam x="283" y="139" /> +<sizeparam width="42" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="CC()" /> +<TGConnectingPoint num="0" id="2788" /> +<TGConnectingPoint num="1" id="2789" /> +<TGConnectingPoint num="2" id="2790" /> +<TGConnectingPoint num="3" id="2791" /> +<TGConnectingPoint num="4" id="2792" /> +<TGConnectingPoint num="5" id="2793" /> +<TGConnectingPoint num="6" id="2794" /> +<TGConnectingPoint num="7" id="2795" /> +<TGConnectingPoint num="8" id="2796" /> +<TGConnectingPoint num="9" id="2797" /> +</COMPONENT> + +<COMPONENT type="5106" id="2839" > +<cdparam x="246" y="58" /> +<sizeparam width="117" height="51" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="WAIT_FOR_CONF" /> +<TGConnectingPoint num="0" id="2799" /> +<TGConnectingPoint num="1" id="2800" /> +<TGConnectingPoint num="2" id="2801" /> +<TGConnectingPoint num="3" id="2802" /> +<TGConnectingPoint num="4" id="2803" /> +<TGConnectingPoint num="5" id="2804" /> +<TGConnectingPoint num="6" id="2805" /> +<TGConnectingPoint num="7" id="2806" /> +<TGConnectingPoint num="8" id="2807" /> +<TGConnectingPoint num="9" id="2808" /> +<TGConnectingPoint num="10" id="2809" /> +<TGConnectingPoint num="11" id="2810" /> +<TGConnectingPoint num="12" id="2811" /> +<TGConnectingPoint num="13" id="2812" /> +<TGConnectingPoint num="14" id="2813" /> +<TGConnectingPoint num="15" id="2814" /> +<TGConnectingPoint num="16" id="2815" /> +<TGConnectingPoint num="17" id="2816" /> +<TGConnectingPoint num="18" id="2817" /> +<TGConnectingPoint num="19" id="2818" /> +<TGConnectingPoint num="20" id="2819" /> +<TGConnectingPoint num="21" id="2820" /> +<TGConnectingPoint num="22" id="2821" /> +<TGConnectingPoint num="23" id="2822" /> +<TGConnectingPoint num="24" id="2823" /> +<TGConnectingPoint num="25" id="2824" /> +<TGConnectingPoint num="26" id="2825" /> +<TGConnectingPoint num="27" id="2826" /> +<TGConnectingPoint num="28" id="2827" /> +<TGConnectingPoint num="29" id="2828" /> +<TGConnectingPoint num="30" id="2829" /> +<TGConnectingPoint num="31" id="2830" /> +<TGConnectingPoint num="32" id="2831" /> +<TGConnectingPoint num="33" id="2832" /> +<TGConnectingPoint num="34" id="2833" /> +<TGConnectingPoint num="35" id="2834" /> +<TGConnectingPoint num="36" id="2835" /> +<TGConnectingPoint num="37" id="2836" /> +<TGConnectingPoint num="38" id="2837" /> +<TGConnectingPoint num="39" id="2838" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="2880" > +<cdparam x="19" y="232" /> +<sizeparam width="137" height="52" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="WAIT_FOR_CONF" /> +<TGConnectingPoint num="0" id="2840" /> +<TGConnectingPoint num="1" id="2841" /> +<TGConnectingPoint num="2" id="2842" /> +<TGConnectingPoint num="3" id="2843" /> +<TGConnectingPoint num="4" id="2844" /> +<TGConnectingPoint num="5" id="2845" /> +<TGConnectingPoint num="6" id="2846" /> +<TGConnectingPoint num="7" id="2847" /> +<TGConnectingPoint num="8" id="2848" /> +<TGConnectingPoint num="9" id="2849" /> +<TGConnectingPoint num="10" id="2850" /> +<TGConnectingPoint num="11" id="2851" /> +<TGConnectingPoint num="12" id="2852" /> +<TGConnectingPoint num="13" id="2853" /> +<TGConnectingPoint num="14" id="2854" /> +<TGConnectingPoint num="15" id="2855" /> +<TGConnectingPoint num="16" id="2856" /> +<TGConnectingPoint num="17" id="2857" /> +<TGConnectingPoint num="18" id="2858" /> +<TGConnectingPoint num="19" id="2859" /> +<TGConnectingPoint num="20" id="2860" /> +<TGConnectingPoint num="21" id="2861" /> +<TGConnectingPoint num="22" id="2862" /> +<TGConnectingPoint num="23" id="2863" /> +<TGConnectingPoint num="24" id="2864" /> +<TGConnectingPoint num="25" id="2865" /> +<TGConnectingPoint num="26" id="2866" /> +<TGConnectingPoint num="27" id="2867" /> +<TGConnectingPoint num="28" id="2868" /> +<TGConnectingPoint num="29" id="2869" /> +<TGConnectingPoint num="30" id="2870" /> +<TGConnectingPoint num="31" id="2871" /> +<TGConnectingPoint num="32" id="2872" /> +<TGConnectingPoint num="33" id="2873" /> +<TGConnectingPoint num="34" id="2874" /> +<TGConnectingPoint num="35" id="2875" /> +<TGConnectingPoint num="36" id="2876" /> +<TGConnectingPoint num="37" id="2877" /> +<TGConnectingPoint num="38" id="2878" /> +<TGConnectingPoint num="39" id="2879" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5103" id="2891" > +<cdparam x="70" y="186" /> +<sizeparam width="34" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="CR()" /> +<TGConnectingPoint num="0" id="2881" /> +<TGConnectingPoint num="1" id="2882" /> +<TGConnectingPoint num="2" id="2883" /> +<TGConnectingPoint num="3" id="2884" /> +<TGConnectingPoint num="4" id="2885" /> +<TGConnectingPoint num="5" id="2886" /> +<TGConnectingPoint num="6" id="2887" /> +<TGConnectingPoint num="7" id="2888" /> +<TGConnectingPoint num="8" id="2889" /> +<TGConnectingPoint num="9" id="2890" /> +</COMPONENT> + +<COMPONENT type="5104" id="2902" > +<cdparam x="49" y="138" /> +<sizeparam width="78" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="INconreq()" /> +<TGConnectingPoint num="0" id="2892" /> +<TGConnectingPoint num="1" id="2893" /> +<TGConnectingPoint num="2" id="2894" /> +<TGConnectingPoint num="3" id="2895" /> +<TGConnectingPoint num="4" id="2896" /> +<TGConnectingPoint num="5" id="2897" /> +<TGConnectingPoint num="6" id="2898" /> +<TGConnectingPoint num="7" id="2899" /> +<TGConnectingPoint num="8" id="2900" /> +<TGConnectingPoint num="9" id="2901" /> +</COMPONENT> + +<COMPONENT type="5106" id="2943" > +<cdparam x="38" y="61" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="IDLE" /> +<TGConnectingPoint num="0" id="2903" /> +<TGConnectingPoint num="1" id="2904" /> +<TGConnectingPoint num="2" id="2905" /> +<TGConnectingPoint num="3" id="2906" /> +<TGConnectingPoint num="4" id="2907" /> +<TGConnectingPoint num="5" id="2908" /> +<TGConnectingPoint num="6" id="2909" /> +<TGConnectingPoint num="7" id="2910" /> +<TGConnectingPoint num="8" id="2911" /> +<TGConnectingPoint num="9" id="2912" /> +<TGConnectingPoint num="10" id="2913" /> +<TGConnectingPoint num="11" id="2914" /> +<TGConnectingPoint num="12" id="2915" /> +<TGConnectingPoint num="13" id="2916" /> +<TGConnectingPoint num="14" id="2917" /> +<TGConnectingPoint num="15" id="2918" /> +<TGConnectingPoint num="16" id="2919" /> +<TGConnectingPoint num="17" id="2920" /> +<TGConnectingPoint num="18" id="2921" /> +<TGConnectingPoint num="19" id="2922" /> +<TGConnectingPoint num="20" id="2923" /> +<TGConnectingPoint num="21" id="2924" /> +<TGConnectingPoint num="22" id="2925" /> +<TGConnectingPoint num="23" id="2926" /> +<TGConnectingPoint num="24" id="2927" /> +<TGConnectingPoint num="25" id="2928" /> +<TGConnectingPoint num="26" id="2929" /> +<TGConnectingPoint num="27" id="2930" /> +<TGConnectingPoint num="28" id="2931" /> +<TGConnectingPoint num="29" id="2932" /> +<TGConnectingPoint num="30" id="2933" /> +<TGConnectingPoint num="31" id="2934" /> +<TGConnectingPoint num="32" id="2935" /> +<TGConnectingPoint num="33" id="2936" /> +<TGConnectingPoint num="34" id="2937" /> +<TGConnectingPoint num="35" id="2938" /> +<TGConnectingPoint num="36" id="2939" /> +<TGConnectingPoint num="37" id="2940" /> +<TGConnectingPoint num="38" id="2941" /> +<TGConnectingPoint num="39" id="2942" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="2945" > +<cdparam x="61" y="22" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="2944" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="GroundCommunication" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="2952" > +<cdparam x="86" y="48" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="2951" /> +<P1 x="86" y="48" id="3203" /> +<P2 x="87" y="72" id="3163" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2950" > +<father id="2952" num="0" /> +<cdparam x="86" y="88" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2946" /> +<TGConnectingPoint num="1" id="2947" /> +<TGConnectingPoint num="2" id="2948" /> +<TGConnectingPoint num="3" id="2949" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2959" > +<cdparam x="99" y="122" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="2958" /> +<P1 x="99" y="122" id="3192" /> +<P2 x="99" y="151" id="3151" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2957" > +<father id="2959" num="0" /> +<cdparam x="99" y="162" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2953" /> +<TGConnectingPoint num="1" id="2954" /> +<TGConnectingPoint num="2" id="2955" /> +<TGConnectingPoint num="3" id="2956" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2966" > +<cdparam x="99" y="181" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2965" /> +<P1 x="99" y="181" id="3152" /> +<P2 x="99" y="207" id="3140" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2964" > +<father id="2966" num="0" /> +<cdparam x="99" y="221" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2960" /> +<TGConnectingPoint num="1" id="2961" /> +<TGConnectingPoint num="2" id="2962" /> +<TGConnectingPoint num="3" id="2963" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2973" > +<cdparam x="99" y="237" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="2972" /> +<P1 x="99" y="237" id="3141" /> +<P2 x="99" y="262" id="3100" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2971" > +<father id="2973" num="0" /> +<cdparam x="99" y="277" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2967" /> +<TGConnectingPoint num="1" id="2968" /> +<TGConnectingPoint num="2" id="2969" /> +<TGConnectingPoint num="3" id="2970" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2980" > +<cdparam x="327" y="119" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="2979" /> +<P1 x="327" y="119" id="3088" /> +<P2 x="327" y="145" id="3047" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2978" > +<father id="2980" num="0" /> +<cdparam x="327" y="159" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2974" /> +<TGConnectingPoint num="1" id="2975" /> +<TGConnectingPoint num="2" id="2976" /> +<TGConnectingPoint num="3" id="2977" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2987" > +<cdparam x="327" y="175" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="2986" /> +<P1 x="327" y="175" id="3048" /> +<P2 x="327" y="204" id="3036" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2985" > +<father id="2987" num="0" /> +<cdparam x="327" y="215" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2981" /> +<TGConnectingPoint num="1" id="2982" /> +<TGConnectingPoint num="2" id="2983" /> +<TGConnectingPoint num="3" id="2984" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="2994" > +<cdparam x="327" y="234" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="2993" /> +<P1 x="327" y="234" id="3037" /> +<P2 x="327" y="261" id="2996" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2992" > +<father id="2994" num="0" /> +<cdparam x="327" y="274" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="2988" /> +<TGConnectingPoint num="1" id="2989" /> +<TGConnectingPoint num="2" id="2990" /> +<TGConnectingPoint num="3" id="2991" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5106" id="3035" > +<cdparam x="277" y="261" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="IDLE" /> +<TGConnectingPoint num="0" id="2995" /> +<TGConnectingPoint num="1" id="2996" /> +<TGConnectingPoint num="2" id="2997" /> +<TGConnectingPoint num="3" id="2998" /> +<TGConnectingPoint num="4" id="2999" /> +<TGConnectingPoint num="5" id="3000" /> +<TGConnectingPoint num="6" id="3001" /> +<TGConnectingPoint num="7" id="3002" /> +<TGConnectingPoint num="8" id="3003" /> +<TGConnectingPoint num="9" id="3004" /> +<TGConnectingPoint num="10" id="3005" /> +<TGConnectingPoint num="11" id="3006" /> +<TGConnectingPoint num="12" id="3007" /> +<TGConnectingPoint num="13" id="3008" /> +<TGConnectingPoint num="14" id="3009" /> +<TGConnectingPoint num="15" id="3010" /> +<TGConnectingPoint num="16" id="3011" /> +<TGConnectingPoint num="17" id="3012" /> +<TGConnectingPoint num="18" id="3013" /> +<TGConnectingPoint num="19" id="3014" /> +<TGConnectingPoint num="20" id="3015" /> +<TGConnectingPoint num="21" id="3016" /> +<TGConnectingPoint num="22" id="3017" /> +<TGConnectingPoint num="23" id="3018" /> +<TGConnectingPoint num="24" id="3019" /> +<TGConnectingPoint num="25" id="3020" /> +<TGConnectingPoint num="26" id="3021" /> +<TGConnectingPoint num="27" id="3022" /> +<TGConnectingPoint num="28" id="3023" /> +<TGConnectingPoint num="29" id="3024" /> +<TGConnectingPoint num="30" id="3025" /> +<TGConnectingPoint num="31" id="3026" /> +<TGConnectingPoint num="32" id="3027" /> +<TGConnectingPoint num="33" id="3028" /> +<TGConnectingPoint num="34" id="3029" /> +<TGConnectingPoint num="35" id="3030" /> +<TGConnectingPoint num="36" id="3031" /> +<TGConnectingPoint num="37" id="3032" /> +<TGConnectingPoint num="38" id="3033" /> +<TGConnectingPoint num="39" id="3034" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5103" id="3046" > +<cdparam x="310" y="209" /> +<sizeparam width="34" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="CC()" /> +<TGConnectingPoint num="0" id="3036" /> +<TGConnectingPoint num="1" id="3037" /> +<TGConnectingPoint num="2" id="3038" /> +<TGConnectingPoint num="3" id="3039" /> +<TGConnectingPoint num="4" id="3040" /> +<TGConnectingPoint num="5" id="3041" /> +<TGConnectingPoint num="6" id="3042" /> +<TGConnectingPoint num="7" id="3043" /> +<TGConnectingPoint num="8" id="3044" /> +<TGConnectingPoint num="9" id="3045" /> +</COMPONENT> + +<COMPONENT type="5104" id="3057" > +<cdparam x="285" y="150" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="INconresp()" /> +<TGConnectingPoint num="0" id="3047" /> +<TGConnectingPoint num="1" id="3048" /> +<TGConnectingPoint num="2" id="3049" /> +<TGConnectingPoint num="3" id="3050" /> +<TGConnectingPoint num="4" id="3051" /> +<TGConnectingPoint num="5" id="3052" /> +<TGConnectingPoint num="6" id="3053" /> +<TGConnectingPoint num="7" id="3054" /> +<TGConnectingPoint num="8" id="3055" /> +<TGConnectingPoint num="9" id="3056" /> +</COMPONENT> + +<COMPONENT type="5106" id="3098" > +<cdparam x="254" y="69" /> +<sizeparam width="119" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="WAIT_FOR_RESP" /> +<TGConnectingPoint num="0" id="3058" /> +<TGConnectingPoint num="1" id="3059" /> +<TGConnectingPoint num="2" id="3060" /> +<TGConnectingPoint num="3" id="3061" /> +<TGConnectingPoint num="4" id="3062" /> +<TGConnectingPoint num="5" id="3063" /> +<TGConnectingPoint num="6" id="3064" /> +<TGConnectingPoint num="7" id="3065" /> +<TGConnectingPoint num="8" id="3066" /> +<TGConnectingPoint num="9" id="3067" /> +<TGConnectingPoint num="10" id="3068" /> +<TGConnectingPoint num="11" id="3069" /> +<TGConnectingPoint num="12" id="3070" /> +<TGConnectingPoint num="13" id="3071" /> +<TGConnectingPoint num="14" id="3072" /> +<TGConnectingPoint num="15" id="3073" /> +<TGConnectingPoint num="16" id="3074" /> +<TGConnectingPoint num="17" id="3075" /> +<TGConnectingPoint num="18" id="3076" /> +<TGConnectingPoint num="19" id="3077" /> +<TGConnectingPoint num="20" id="3078" /> +<TGConnectingPoint num="21" id="3079" /> +<TGConnectingPoint num="22" id="3080" /> +<TGConnectingPoint num="23" id="3081" /> +<TGConnectingPoint num="24" id="3082" /> +<TGConnectingPoint num="25" id="3083" /> +<TGConnectingPoint num="26" id="3084" /> +<TGConnectingPoint num="27" id="3085" /> +<TGConnectingPoint num="28" id="3086" /> +<TGConnectingPoint num="29" id="3087" /> +<TGConnectingPoint num="30" id="3088" /> +<TGConnectingPoint num="31" id="3089" /> +<TGConnectingPoint num="32" id="3090" /> +<TGConnectingPoint num="33" id="3091" /> +<TGConnectingPoint num="34" id="3092" /> +<TGConnectingPoint num="35" id="3093" /> +<TGConnectingPoint num="36" id="3094" /> +<TGConnectingPoint num="37" id="3095" /> +<TGConnectingPoint num="38" id="3096" /> +<TGConnectingPoint num="39" id="3097" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="3139" > +<cdparam x="39" y="262" /> +<sizeparam width="121" height="49" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="WAIT_FOR_RESP" /> +<TGConnectingPoint num="0" id="3099" /> +<TGConnectingPoint num="1" id="3100" /> +<TGConnectingPoint num="2" id="3101" /> +<TGConnectingPoint num="3" id="3102" /> +<TGConnectingPoint num="4" id="3103" /> +<TGConnectingPoint num="5" id="3104" /> +<TGConnectingPoint num="6" id="3105" /> +<TGConnectingPoint num="7" id="3106" /> +<TGConnectingPoint num="8" id="3107" /> +<TGConnectingPoint num="9" id="3108" /> +<TGConnectingPoint num="10" id="3109" /> +<TGConnectingPoint num="11" id="3110" /> +<TGConnectingPoint num="12" id="3111" /> +<TGConnectingPoint num="13" id="3112" /> +<TGConnectingPoint num="14" id="3113" /> +<TGConnectingPoint num="15" id="3114" /> +<TGConnectingPoint num="16" id="3115" /> +<TGConnectingPoint num="17" id="3116" /> +<TGConnectingPoint num="18" id="3117" /> +<TGConnectingPoint num="19" id="3118" /> +<TGConnectingPoint num="20" id="3119" /> +<TGConnectingPoint num="21" id="3120" /> +<TGConnectingPoint num="22" id="3121" /> +<TGConnectingPoint num="23" id="3122" /> +<TGConnectingPoint num="24" id="3123" /> +<TGConnectingPoint num="25" id="3124" /> +<TGConnectingPoint num="26" id="3125" /> +<TGConnectingPoint num="27" id="3126" /> +<TGConnectingPoint num="28" id="3127" /> +<TGConnectingPoint num="29" id="3128" /> +<TGConnectingPoint num="30" id="3129" /> +<TGConnectingPoint num="31" id="3130" /> +<TGConnectingPoint num="32" id="3131" /> +<TGConnectingPoint num="33" id="3132" /> +<TGConnectingPoint num="34" id="3133" /> +<TGConnectingPoint num="35" id="3134" /> +<TGConnectingPoint num="36" id="3135" /> +<TGConnectingPoint num="37" id="3136" /> +<TGConnectingPoint num="38" id="3137" /> +<TGConnectingPoint num="39" id="3138" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5103" id="3150" > +<cdparam x="65" y="212" /> +<sizeparam width="68" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="INconind()" /> +<TGConnectingPoint num="0" id="3140" /> +<TGConnectingPoint num="1" id="3141" /> +<TGConnectingPoint num="2" id="3142" /> +<TGConnectingPoint num="3" id="3143" /> +<TGConnectingPoint num="4" id="3144" /> +<TGConnectingPoint num="5" id="3145" /> +<TGConnectingPoint num="6" id="3146" /> +<TGConnectingPoint num="7" id="3147" /> +<TGConnectingPoint num="8" id="3148" /> +<TGConnectingPoint num="9" id="3149" /> +</COMPONENT> + +<COMPONENT type="5104" id="3161" > +<cdparam x="78" y="156" /> +<sizeparam width="42" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="CR()" /> +<TGConnectingPoint num="0" id="3151" /> +<TGConnectingPoint num="1" id="3152" /> +<TGConnectingPoint num="2" id="3153" /> +<TGConnectingPoint num="3" id="3154" /> +<TGConnectingPoint num="4" id="3155" /> +<TGConnectingPoint num="5" id="3156" /> +<TGConnectingPoint num="6" id="3157" /> +<TGConnectingPoint num="7" id="3158" /> +<TGConnectingPoint num="8" id="3159" /> +<TGConnectingPoint num="9" id="3160" /> +</COMPONENT> + +<COMPONENT type="5106" id="3202" > +<cdparam x="37" y="72" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="IDLE" /> +<TGConnectingPoint num="0" id="3162" /> +<TGConnectingPoint num="1" id="3163" /> +<TGConnectingPoint num="2" id="3164" /> +<TGConnectingPoint num="3" id="3165" /> +<TGConnectingPoint num="4" id="3166" /> +<TGConnectingPoint num="5" id="3167" /> +<TGConnectingPoint num="6" id="3168" /> +<TGConnectingPoint num="7" id="3169" /> +<TGConnectingPoint num="8" id="3170" /> +<TGConnectingPoint num="9" id="3171" /> +<TGConnectingPoint num="10" id="3172" /> +<TGConnectingPoint num="11" id="3173" /> +<TGConnectingPoint num="12" id="3174" /> +<TGConnectingPoint num="13" id="3175" /> +<TGConnectingPoint num="14" id="3176" /> +<TGConnectingPoint num="15" id="3177" /> +<TGConnectingPoint num="16" id="3178" /> +<TGConnectingPoint num="17" id="3179" /> +<TGConnectingPoint num="18" id="3180" /> +<TGConnectingPoint num="19" id="3181" /> +<TGConnectingPoint num="20" id="3182" /> +<TGConnectingPoint num="21" id="3183" /> +<TGConnectingPoint num="22" id="3184" /> +<TGConnectingPoint num="23" id="3185" /> +<TGConnectingPoint num="24" id="3186" /> +<TGConnectingPoint num="25" id="3187" /> +<TGConnectingPoint num="26" id="3188" /> +<TGConnectingPoint num="27" id="3189" /> +<TGConnectingPoint num="28" id="3190" /> +<TGConnectingPoint num="29" id="3191" /> +<TGConnectingPoint num="30" id="3192" /> +<TGConnectingPoint num="31" id="3193" /> +<TGConnectingPoint num="32" id="3194" /> +<TGConnectingPoint num="33" id="3195" /> +<TGConnectingPoint num="34" id="3196" /> +<TGConnectingPoint num="35" id="3197" /> +<TGConnectingPoint num="36" id="3198" /> +<TGConnectingPoint num="37" id="3199" /> +<TGConnectingPoint num="38" id="3200" /> +<TGConnectingPoint num="39" id="3201" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="3204" > +<cdparam x="79" y="28" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="3203" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="Controller" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="3217" > +<cdparam x="153" y="198" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3213" /> +<TGConnectingPoint num="1" id="3214" /> +<TGConnectingPoint num="2" id="3215" /> +<TGConnectingPoint num="3" id="3216" /> +<P1 x="153" y="198" id="3264" /> +<P2 x="261" y="114" id="3297" /> +<Point x="153" y="216" /> +<Point x="309" y="216" /> +<Point x="309" y="114" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3205" > +<father id="3217" num="0" /> +<cdparam x="153" y="216" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3206" > +<father id="3217" num="1" /> +<cdparam x="309" y="216" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3207" > +<father id="3217" num="2" /> +<cdparam x="309" y="114" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3212" > +<father id="3217" num="3" /> +<cdparam x="153" y="238" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3208" /> +<TGConnectingPoint num="1" id="3209" /> +<TGConnectingPoint num="2" id="3210" /> +<TGConnectingPoint num="3" id="3211" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3230" > +<cdparam x="247" y="197" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3226" /> +<TGConnectingPoint num="1" id="3227" /> +<TGConnectingPoint num="2" id="3228" /> +<TGConnectingPoint num="3" id="3229" /> +<P1 x="247" y="197" id="3253" /> +<P2 x="261" y="133" id="3287" /> +<Point x="247" y="207" /> +<Point x="298" y="207" /> +<Point x="298" y="133" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3218" > +<father id="3230" num="0" /> +<cdparam x="247" y="207" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3219" > +<father id="3230" num="1" /> +<cdparam x="298" y="207" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3220" > +<father id="3230" num="2" /> +<cdparam x="298" y="133" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3225" > +<father id="3230" num="3" /> +<cdparam x="247" y="237" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3221" /> +<TGConnectingPoint num="1" id="3222" /> +<TGConnectingPoint num="2" id="3223" /> +<TGConnectingPoint num="3" id="3224" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3237" > +<cdparam x="186" y="62" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="3236" /> +<P1 x="186" y="62" id="3315" /> +<P2 x="211" y="96" id="3275" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3235" > +<father id="3237" num="0" /> +<cdparam x="211" y="104" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3231" /> +<TGConnectingPoint num="1" id="3232" /> +<TGConnectingPoint num="2" id="3233" /> +<TGConnectingPoint num="3" id="3234" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3244" > +<cdparam x="161" y="146" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="3243" /> +<P1 x="186" y="146" id="3288" /> +<P2 x="153" y="168" id="3263" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3242" > +<father id="3244" num="0" /> +<cdparam x="161" y="186" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3238" /> +<TGConnectingPoint num="1" id="3239" /> +<TGConnectingPoint num="2" id="3240" /> +<TGConnectingPoint num="3" id="3241" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3251" > +<cdparam x="211" y="201" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="3250" /> +<P1 x="236" y="146" id="3289" /> +<P2 x="247" y="167" id="3252" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3249" > +<father id="3251" num="0" /> +<cdparam x="211" y="241" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3245" /> +<TGConnectingPoint num="1" id="3246" /> +<TGConnectingPoint num="2" id="3247" /> +<TGConnectingPoint num="3" id="3248" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5103" id="3262" > +<cdparam x="209" y="172" /> +<sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="INconresp()" /> +<TGConnectingPoint num="0" id="3252" /> +<TGConnectingPoint num="1" id="3253" /> +<TGConnectingPoint num="2" id="3254" /> +<TGConnectingPoint num="3" id="3255" /> +<TGConnectingPoint num="4" id="3256" /> +<TGConnectingPoint num="5" id="3257" /> +<TGConnectingPoint num="6" id="3258" /> +<TGConnectingPoint num="7" id="3259" /> +<TGConnectingPoint num="8" id="3260" /> +<TGConnectingPoint num="9" id="3261" /> +</COMPONENT> + +<COMPONENT type="5104" id="3273" > +<cdparam x="115" y="173" /> +<sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="INconind()" /> +<TGConnectingPoint num="0" id="3263" /> +<TGConnectingPoint num="1" id="3264" /> +<TGConnectingPoint num="2" id="3265" /> +<TGConnectingPoint num="3" id="3266" /> +<TGConnectingPoint num="4" id="3267" /> +<TGConnectingPoint num="5" id="3268" /> +<TGConnectingPoint num="6" id="3269" /> +<TGConnectingPoint num="7" id="3270" /> +<TGConnectingPoint num="8" id="3271" /> +<TGConnectingPoint num="9" id="3272" /> +</COMPONENT> + +<COMPONENT type="5106" id="3314" > +<cdparam x="161" y="96" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="ACTIVE" /> +<TGConnectingPoint num="0" id="3274" /> +<TGConnectingPoint num="1" id="3275" /> +<TGConnectingPoint num="2" id="3276" /> +<TGConnectingPoint num="3" id="3277" /> +<TGConnectingPoint num="4" id="3278" /> +<TGConnectingPoint num="5" id="3279" /> +<TGConnectingPoint num="6" id="3280" /> +<TGConnectingPoint num="7" id="3281" /> +<TGConnectingPoint num="8" id="3282" /> +<TGConnectingPoint num="9" id="3283" /> +<TGConnectingPoint num="10" id="3284" /> +<TGConnectingPoint num="11" id="3285" /> +<TGConnectingPoint num="12" id="3286" /> +<TGConnectingPoint num="13" id="3287" /> +<TGConnectingPoint num="14" id="3288" /> +<TGConnectingPoint num="15" id="3289" /> +<TGConnectingPoint num="16" id="3290" /> +<TGConnectingPoint num="17" id="3291" /> +<TGConnectingPoint num="18" id="3292" /> +<TGConnectingPoint num="19" id="3293" /> +<TGConnectingPoint num="20" id="3294" /> +<TGConnectingPoint num="21" id="3295" /> +<TGConnectingPoint num="22" id="3296" /> +<TGConnectingPoint num="23" id="3297" /> +<TGConnectingPoint num="24" id="3298" /> +<TGConnectingPoint num="25" id="3299" /> +<TGConnectingPoint num="26" id="3300" /> +<TGConnectingPoint num="27" id="3301" /> +<TGConnectingPoint num="28" id="3302" /> +<TGConnectingPoint num="29" id="3303" /> +<TGConnectingPoint num="30" id="3304" /> +<TGConnectingPoint num="31" id="3305" /> +<TGConnectingPoint num="32" id="3306" /> +<TGConnectingPoint num="33" id="3307" /> +<TGConnectingPoint num="34" id="3308" /> +<TGConnectingPoint num="35" id="3309" /> +<TGConnectingPoint num="36" id="3310" /> +<TGConnectingPoint num="37" id="3311" /> +<TGConnectingPoint num="38" id="3312" /> +<TGConnectingPoint num="39" id="3313" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="3316" > +<cdparam x="179" y="42" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="3315" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="Pilot" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="3329" > +<cdparam x="79" y="166" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3325" /> +<TGConnectingPoint num="1" id="3326" /> +<TGConnectingPoint num="2" id="3327" /> +<TGConnectingPoint num="3" id="3328" /> +<P1 x="79" y="166" id="3376" /> +<P2 x="216" y="78" id="3399" /> +<Point x="79" y="189" /> +<Point x="341" y="189" /> +<Point x="341" y="78" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3317" > +<father id="3329" num="0" /> +<cdparam x="79" y="189" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3318" > +<father id="3329" num="1" /> +<cdparam x="341" y="189" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3319" > +<father id="3329" num="2" /> +<cdparam x="341" y="78" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3324" > +<father id="3329" num="3" /> +<cdparam x="79" y="206" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3320" /> +<TGConnectingPoint num="1" id="3321" /> +<TGConnectingPoint num="2" id="3322" /> +<TGConnectingPoint num="3" id="3323" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3342" > +<cdparam x="177" y="166" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3338" /> +<TGConnectingPoint num="1" id="3339" /> +<TGConnectingPoint num="2" id="3340" /> +<TGConnectingPoint num="3" id="3341" /> +<P1 x="177" y="166" id="3365" /> +<P2 x="216" y="91" id="3392" /> +<Point x="177" y="183" /> +<Point x="330" y="183" /> +<Point x="330" y="91" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3330" > +<father id="3342" num="0" /> +<cdparam x="177" y="183" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3331" > +<father id="3342" num="1" /> +<cdparam x="330" y="183" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3332" > +<father id="3342" num="2" /> +<cdparam x="330" y="91" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3337" > +<father id="3342" num="3" /> +<cdparam x="177" y="206" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3333" /> +<TGConnectingPoint num="1" id="3334" /> +<TGConnectingPoint num="2" id="3335" /> +<TGConnectingPoint num="3" id="3336" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3349" > +<cdparam x="165" y="44" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="3348" /> +<P1 x="165" y="44" id="3386" /> +<P2 x="166" y="66" id="3389" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3347" > +<father id="3349" num="0" /> +<cdparam x="165" y="84" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3343" /> +<TGConnectingPoint num="1" id="3344" /> +<TGConnectingPoint num="2" id="3345" /> +<TGConnectingPoint num="3" id="3346" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3356" > +<cdparam x="178" y="116" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="3355" /> +<P1 x="128" y="116" id="3416" /> +<P2 x="79" y="136" id="3375" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3354" > +<father id="3356" num="0" /> +<cdparam x="178" y="156" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3350" /> +<TGConnectingPoint num="1" id="3351" /> +<TGConnectingPoint num="2" id="3352" /> +<TGConnectingPoint num="3" id="3353" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3363" > +<cdparam x="178" y="168" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="3362" /> +<P1 x="166" y="116" id="3394" /> +<P2 x="177" y="136" id="3364" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3361" > +<father id="3363" num="0" /> +<cdparam x="178" y="208" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3357" /> +<TGConnectingPoint num="1" id="3358" /> +<TGConnectingPoint num="2" id="3359" /> +<TGConnectingPoint num="3" id="3360" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5104" id="3374" > +<cdparam x="136" y="141" /> +<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="INconconf()" /> +<TGConnectingPoint num="0" id="3364" /> +<TGConnectingPoint num="1" id="3365" /> +<TGConnectingPoint num="2" id="3366" /> +<TGConnectingPoint num="3" id="3367" /> +<TGConnectingPoint num="4" id="3368" /> +<TGConnectingPoint num="5" id="3369" /> +<TGConnectingPoint num="6" id="3370" /> +<TGConnectingPoint num="7" id="3371" /> +<TGConnectingPoint num="8" id="3372" /> +<TGConnectingPoint num="9" id="3373" /> +</COMPONENT> + +<COMPONENT type="5103" id="3385" > +<cdparam x="44" y="141" /> +<sizeparam width="70" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="INconreq()" /> +<TGConnectingPoint num="0" id="3375" /> +<TGConnectingPoint num="1" id="3376" /> +<TGConnectingPoint num="2" id="3377" /> +<TGConnectingPoint num="3" id="3378" /> +<TGConnectingPoint num="4" id="3379" /> +<TGConnectingPoint num="5" id="3380" /> +<TGConnectingPoint num="6" id="3381" /> +<TGConnectingPoint num="7" id="3382" /> +<TGConnectingPoint num="8" id="3383" /> +<TGConnectingPoint num="9" id="3384" /> +</COMPONENT> + +<COMPONENT type="5100" id="3387" > +<cdparam x="158" y="24" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="3386" /> +</COMPONENT> + +<COMPONENT type="5106" id="3428" > +<cdparam x="116" y="66" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="ACTIVE" /> +<TGConnectingPoint num="0" id="3388" /> +<TGConnectingPoint num="1" id="3389" /> +<TGConnectingPoint num="2" id="3390" /> +<TGConnectingPoint num="3" id="3391" /> +<TGConnectingPoint num="4" id="3392" /> +<TGConnectingPoint num="5" id="3393" /> +<TGConnectingPoint num="6" id="3394" /> +<TGConnectingPoint num="7" id="3395" /> +<TGConnectingPoint num="8" id="3396" /> +<TGConnectingPoint num="9" id="3397" /> +<TGConnectingPoint num="10" id="3398" /> +<TGConnectingPoint num="11" id="3399" /> +<TGConnectingPoint num="12" id="3400" /> +<TGConnectingPoint num="13" id="3401" /> +<TGConnectingPoint num="14" id="3402" /> +<TGConnectingPoint num="15" id="3403" /> +<TGConnectingPoint num="16" id="3404" /> +<TGConnectingPoint num="17" id="3405" /> +<TGConnectingPoint num="18" id="3406" /> +<TGConnectingPoint num="19" id="3407" /> +<TGConnectingPoint num="20" id="3408" /> +<TGConnectingPoint num="21" id="3409" /> +<TGConnectingPoint num="22" id="3410" /> +<TGConnectingPoint num="23" id="3411" /> +<TGConnectingPoint num="24" id="3412" /> +<TGConnectingPoint num="25" id="3413" /> +<TGConnectingPoint num="26" id="3414" /> +<TGConnectingPoint num="27" id="3415" /> +<TGConnectingPoint num="28" id="3416" /> +<TGConnectingPoint num="29" id="3417" /> +<TGConnectingPoint num="30" id="3418" /> +<TGConnectingPoint num="31" id="3419" /> +<TGConnectingPoint num="32" id="3420" /> +<TGConnectingPoint num="33" id="3421" /> +<TGConnectingPoint num="34" id="3422" /> +<TGConnectingPoint num="35" id="3423" /> +<TGConnectingPoint num="36" id="3424" /> +<TGConnectingPoint num="37" id="3425" /> +<TGConnectingPoint num="38" id="3426" /> +<TGConnectingPoint num="39" id="3427" /> +<extraparam> +</extraparam> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +</Modeling> + + + + +<Modeling type="AVATAR Design" nameTab="Design_lossy" > +<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="1400" minY="10" maxY="900" > +<MainCode value="void __user_init() {"/> +<MainCode value="}"/> +<Optimized value="true" /> +<Validated value="OnBoardCommunication;GroundCommunication;Controller;Pilot;" /> +<Ignored value="" /> + +<CONNECTOR type="5002" id="3434" > +<cdparam x="117" y="266" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="3431" /> +<TGConnectingPoint num="1" id="3432" /> +<TGConnectingPoint num="2" id="3433" /> +<P1 x="118" y="320" id="3493" /> +<P2 x="463" y="311" id="3519" /> +<Point x="118" y="400" /> +<Point x="462" y="400" /> +<AutomaticDrawing data="true" /> +<extraparam> +<isd value="in CR()" /> +<isd value="in DR()" /> +<oso value="out CR()" /> +<oso value="out DR()" /> +<FIFOType asynchronous="true" size="1" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR><SUBCOMPONENT type="-1" id="3429" > +<father id="3434" num="0" /> +<cdparam x="118" y="400" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3430" > +<father id="3434" num="1" /> +<cdparam x="462" y="400" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5002" id="3440" > +<cdparam x="158" y="266" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="3437" /> +<TGConnectingPoint num="1" id="3438" /> +<TGConnectingPoint num="2" id="3439" /> +<P1 x="161" y="320" id="3485" /> +<P2 x="424" y="311" id="3510" /> +<Point x="161" y="352" /> +<Point x="423" y="352" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in CC()" /> +<osd value="out CC()" /> +<FIFOType asynchronous="true" size="1" blocking="false" private="true" broadcast="false" lossy="true" /> +</extraparam> +</CONNECTOR><SUBCOMPONENT type="-1" id="3435" > +<father id="3440" num="0" /> +<cdparam x="161" y="352" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="3436" > +<father id="3440" num="1" /> +<cdparam x="423" y="352" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5002" id="3442" > +<cdparam x="449" y="116" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block0 to Block0" value="" /> +<TGConnectingPoint num="0" id="3441" /> +<P1 x="423" y="118" id="3535" /> +<P2 x="424" y="134" id="3505" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in INconind()" /> +<iso value="in INerror_ground()" /> +<osd value="out INconind()" /> +<osd value="out INerror_ground()" /> +<isd value="in INconresp()" /> +<oso value="out INconresp()" /> +<FIFOType asynchronous="false" size="1" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="5002" id="3444" > +<cdparam x="145" y="116" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block0 to Block0" value="" /> +<TGConnectingPoint num="0" id="3443" /> +<P1 x="161" y="117" id="3560" /> +<P2 x="161" y="138" id="3480" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in INconconf()" /> +<iso value="in INerror()" /> +<osd value="out INconconf()" /> +<osd value="out INerror()" /> +<isd value="in INconreq()" /> +<oso value="out INconreq()" /> +<FIFOType asynchronous="false" size="1" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<COMPONENT type="301" id="3461" > +<cdparam x="204" y="333" /> +<sizeparam width="207" height="15" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value=" CC may be lost (lossy channel). +" /> +<TGConnectingPoint num="0" id="3445" /> +<TGConnectingPoint num="1" id="3446" /> +<TGConnectingPoint num="2" id="3447" /> +<TGConnectingPoint num="3" id="3448" /> +<TGConnectingPoint num="4" id="3449" /> +<TGConnectingPoint num="5" id="3450" /> +<TGConnectingPoint num="6" id="3451" /> +<TGConnectingPoint num="7" id="3452" /> +<TGConnectingPoint num="8" id="3453" /> +<TGConnectingPoint num="9" id="3454" /> +<TGConnectingPoint num="10" id="3455" /> +<TGConnectingPoint num="11" id="3456" /> +<TGConnectingPoint num="12" id="3457" /> +<TGConnectingPoint num="13" id="3458" /> +<TGConnectingPoint num="14" id="3459" /> +<TGConnectingPoint num="15" id="3460" /> +<extraparam> +<Line value=" CC may be lost (lossy channel)." /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="3478" > +<cdparam x="234" y="380" /> +<sizeparam width="194" height="15" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value=" CRs and DRs will not be lost. +" /> +<TGConnectingPoint num="0" id="3462" /> +<TGConnectingPoint num="1" id="3463" /> +<TGConnectingPoint num="2" id="3464" /> +<TGConnectingPoint num="3" id="3465" /> +<TGConnectingPoint num="4" id="3466" /> +<TGConnectingPoint num="5" id="3467" /> +<TGConnectingPoint num="6" id="3468" /> +<TGConnectingPoint num="7" id="3469" /> +<TGConnectingPoint num="8" id="3470" /> +<TGConnectingPoint num="9" id="3471" /> +<TGConnectingPoint num="10" id="3472" /> +<TGConnectingPoint num="11" id="3473" /> +<TGConnectingPoint num="12" id="3474" /> +<TGConnectingPoint num="13" id="3475" /> +<TGConnectingPoint num="14" id="3476" /> +<TGConnectingPoint num="15" id="3477" /> +<extraparam> +<Line value=" CRs and DRs will not be lost." /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="3503" > +<cdparam x="75" y="138" /> +<sizeparam width="172" height="182" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="OnBoardCommunication" /> +<TGConnectingPoint num="0" id="3479" /> +<TGConnectingPoint num="1" id="3480" /> +<TGConnectingPoint num="2" id="3481" /> +<TGConnectingPoint num="3" id="3482" /> +<TGConnectingPoint num="4" id="3483" /> +<TGConnectingPoint num="5" id="3484" /> +<TGConnectingPoint num="6" id="3485" /> +<TGConnectingPoint num="7" id="3486" /> +<TGConnectingPoint num="8" id="3487" /> +<TGConnectingPoint num="9" id="3488" /> +<TGConnectingPoint num="10" id="3489" /> +<TGConnectingPoint num="11" id="3490" /> +<TGConnectingPoint num="12" id="3491" /> +<TGConnectingPoint num="13" id="3492" /> +<TGConnectingPoint num="14" id="3493" /> +<TGConnectingPoint num="15" id="3494" /> +<TGConnectingPoint num="16" id="3495" /> +<TGConnectingPoint num="17" id="3496" /> +<TGConnectingPoint num="18" id="3497" /> +<TGConnectingPoint num="19" id="3498" /> +<TGConnectingPoint num="20" id="3499" /> +<TGConnectingPoint num="21" id="3500" /> +<TGConnectingPoint num="22" id="3501" /> +<TGConnectingPoint num="23" id="3502" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="ATST1" value="" type="9" typeOther="" /> +<Attribute access="0" id="retransmissionCounter" value="" type="8" typeOther="" /> +<Attribute access="0" id="maxRetransmissions" value="2" type="8" typeOther="" /> +<Signal value="in INconreq()" attached="true" /> +<Signal value="out INconconf()" attached="true" /> +<Signal value="out INerror()" attached="true" /> +<Signal value="out CR()" attached="true" /> +<Signal value="in CC()" attached="true" /> +<Signal value="out DR()" attached="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="3528" > +<cdparam x="346" y="134" /> +<sizeparam width="157" height="177" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="GroundCommunication" /> +<TGConnectingPoint num="0" id="3504" /> +<TGConnectingPoint num="1" id="3505" /> +<TGConnectingPoint num="2" id="3506" /> +<TGConnectingPoint num="3" id="3507" /> +<TGConnectingPoint num="4" id="3508" /> +<TGConnectingPoint num="5" id="3509" /> +<TGConnectingPoint num="6" id="3510" /> +<TGConnectingPoint num="7" id="3511" /> +<TGConnectingPoint num="8" id="3512" /> +<TGConnectingPoint num="9" id="3513" /> +<TGConnectingPoint num="10" id="3514" /> +<TGConnectingPoint num="11" id="3515" /> +<TGConnectingPoint num="12" id="3516" /> +<TGConnectingPoint num="13" id="3517" /> +<TGConnectingPoint num="14" id="3518" /> +<TGConnectingPoint num="15" id="3519" /> +<TGConnectingPoint num="16" id="3520" /> +<TGConnectingPoint num="17" id="3521" /> +<TGConnectingPoint num="18" id="3522" /> +<TGConnectingPoint num="19" id="3523" /> +<TGConnectingPoint num="20" id="3524" /> +<TGConnectingPoint num="21" id="3525" /> +<TGConnectingPoint num="22" id="3526" /> +<TGConnectingPoint num="23" id="3527" /> +<extraparam> +<CryptoBlock value="false" /> +<Signal value="in CR()" attached="true" /> +<Signal value="out CC()" attached="true" /> +<Signal value="out INconind()" attached="true" /> +<Signal value="in INconresp()" attached="true" /> +<Signal value="out INerror_ground()" attached="true" /> +<Signal value="in DR()" attached="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="3553" > +<cdparam x="346" y="10" /> +<sizeparam width="155" height="108" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="Controller" /> +<TGConnectingPoint num="0" id="3529" /> +<TGConnectingPoint num="1" id="3530" /> +<TGConnectingPoint num="2" id="3531" /> +<TGConnectingPoint num="3" id="3532" /> +<TGConnectingPoint num="4" id="3533" /> +<TGConnectingPoint num="5" id="3534" /> +<TGConnectingPoint num="6" id="3535" /> +<TGConnectingPoint num="7" id="3536" /> +<TGConnectingPoint num="8" id="3537" /> +<TGConnectingPoint num="9" id="3538" /> +<TGConnectingPoint num="10" id="3539" /> +<TGConnectingPoint num="11" id="3540" /> +<TGConnectingPoint num="12" id="3541" /> +<TGConnectingPoint num="13" id="3542" /> +<TGConnectingPoint num="14" id="3543" /> +<TGConnectingPoint num="15" id="3544" /> +<TGConnectingPoint num="16" id="3545" /> +<TGConnectingPoint num="17" id="3546" /> +<TGConnectingPoint num="18" id="3547" /> +<TGConnectingPoint num="19" id="3548" /> +<TGConnectingPoint num="20" id="3549" /> +<TGConnectingPoint num="21" id="3550" /> +<TGConnectingPoint num="22" id="3551" /> +<TGConnectingPoint num="23" id="3552" /> +<extraparam> +<CryptoBlock value="false" /> +<Signal value="in INconind()" attached="true" /> +<Signal value="out INconresp()" attached="true" /> +<Signal value="in INerror_ground()" attached="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="3578" > +<cdparam x="76" y="13" /> +<sizeparam width="171" height="104" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="Pilot" /> +<TGConnectingPoint num="0" id="3554" /> +<TGConnectingPoint num="1" id="3555" /> +<TGConnectingPoint num="2" id="3556" /> +<TGConnectingPoint num="3" id="3557" /> +<TGConnectingPoint num="4" id="3558" /> +<TGConnectingPoint num="5" id="3559" /> +<TGConnectingPoint num="6" id="3560" /> +<TGConnectingPoint num="7" id="3561" /> +<TGConnectingPoint num="8" id="3562" /> +<TGConnectingPoint num="9" id="3563" /> +<TGConnectingPoint num="10" id="3564" /> +<TGConnectingPoint num="11" id="3565" /> +<TGConnectingPoint num="12" id="3566" /> +<TGConnectingPoint num="13" id="3567" /> +<TGConnectingPoint num="14" id="3568" /> +<TGConnectingPoint num="15" id="3569" /> +<TGConnectingPoint num="16" id="3570" /> +<TGConnectingPoint num="17" id="3571" /> +<TGConnectingPoint num="18" id="3572" /> +<TGConnectingPoint num="19" id="3573" /> +<TGConnectingPoint num="20" id="3574" /> +<TGConnectingPoint num="21" id="3575" /> +<TGConnectingPoint num="22" id="3576" /> +<TGConnectingPoint num="23" id="3577" /> +<extraparam> +<CryptoBlock value="false" /> +<Signal value="out INconreq()" attached="true" /> +<Signal value="in INconconf()" attached="true" /> +<Signal value="in INerror()" attached="true" /> +</extraparam> +</COMPONENT> + + +</AVATARBlockDiagramPanel> + +<AVATARStateMachineDiagramPanel name="OnBoardCommunication" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="3585" > +<cdparam x="473" y="237" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3584" /> +<P1 x="472" y="233" id="3760" /> +<P2 x="472" y="260" id="3743" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3583" > +<father id="3585" num="0" /> +<cdparam x="476" y="245" /> +<sizeparam width="35" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3579" /> +<TGConnectingPoint num="1" id="3580" /> +<TGConnectingPoint num="2" id="3581" /> +<TGConnectingPoint num="3" id="3582" /> +<extraparam> +<guard value="[ else]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3592" > +<cdparam x="473" y="165" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3591" /> +<P1 x="473" y="165" id="3793" /> +<P2 x="472" y="183" id="3754" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3590" > +<father id="3592" num="0" /> +<cdparam x="473" y="205" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3586" /> +<TGConnectingPoint num="1" id="3587" /> +<TGConnectingPoint num="2" id="3588" /> +<TGConnectingPoint num="3" id="3589" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3599" > +<cdparam x="630" y="229" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3598" /> +<P1 x="619" y="228" id="3771" /> +<P2 x="619" y="248" id="3885" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3597" > +<father id="3599" num="0" /> +<cdparam x="630" y="269" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3593" /> +<TGConnectingPoint num="1" id="3594" /> +<TGConnectingPoint num="2" id="3595" /> +<TGConnectingPoint num="3" id="3596" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3606" > +<cdparam x="619" y="174" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3605" /> +<P1 x="619" y="174" id="3897" /> +<P2 x="619" y="198" id="3770" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3604" > +<father id="3606" num="0" /> +<cdparam x="619" y="214" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3600" /> +<TGConnectingPoint num="1" id="3601" /> +<TGConnectingPoint num="2" id="3602" /> +<TGConnectingPoint num="3" id="3603" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3613" > +<cdparam x="94" y="283" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3612" /> +<P1 x="99" y="284" id="3782" /> +<P2 x="100" y="299" id="3989" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3611" > +<father id="3613" num="0" /> +<cdparam x="94" y="323" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3607" /> +<TGConnectingPoint num="1" id="3608" /> +<TGConnectingPoint num="2" id="3609" /> +<TGConnectingPoint num="3" id="3610" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3620" > +<cdparam x="98" y="235" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3619" /> +<P1 x="98" y="235" id="3833" /> +<P2 x="99" y="254" id="3781" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3618" > +<father id="3620" num="0" /> +<cdparam x="98" y="275" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3614" /> +<TGConnectingPoint num="1" id="3615" /> +<TGConnectingPoint num="2" id="3616" /> +<TGConnectingPoint num="3" id="3617" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3627" > +<cdparam x="635" y="109" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3626" /> +<P1 x="532" y="109" id="3935" /> +<P2 x="473" y="135" id="3792" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3625" > +<father id="3627" num="0" /> +<cdparam x="635" y="149" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3621" /> +<TGConnectingPoint num="1" id="3622" /> +<TGConnectingPoint num="2" id="3623" /> +<TGConnectingPoint num="3" id="3624" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3634" > +<cdparam x="86" y="162" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3633" /> +<P1 x="86" y="162" id="4001" /> +<P2 x="86" y="193" id="3804" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3632" > +<father id="3634" num="0" /> +<cdparam x="93" y="175" /> +<sizeparam width="155" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3628" /> +<TGConnectingPoint num="1" id="3629" /> +<TGConnectingPoint num="2" id="3630" /> +<TGConnectingPoint num="3" id="3631" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="retransmissionCounter = 0" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3641" > +<cdparam x="576" y="109" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="3640" /> +<P1 x="619" y="109" id="3938" /> +<P2 x="619" y="144" id="3896" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3639" > +<father id="3641" num="0" /> +<cdparam x="576" y="151" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3635" /> +<TGConnectingPoint num="1" id="3636" /> +<TGConnectingPoint num="2" id="3637" /> +<TGConnectingPoint num="3" id="3638" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3648" > +<cdparam x="85" y="210" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="3647" /> +<P1 x="100" y="329" id="3990" /> +<P2 x="100" y="351" id="3949" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3646" > +<father id="3648" num="0" /> +<cdparam x="85" y="250" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3642" /> +<TGConnectingPoint num="1" id="3643" /> +<TGConnectingPoint num="2" id="3644" /> +<TGConnectingPoint num="3" id="3645" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3655" > +<cdparam x="86" y="110" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="3654" /> +<P1 x="86" y="110" id="4017" /> +<P2 x="86" y="132" id="4000" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3653" > +<father id="3655" num="0" /> +<cdparam x="86" y="150" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3649" /> +<TGConnectingPoint num="1" id="3650" /> +<TGConnectingPoint num="2" id="3651" /> +<TGConnectingPoint num="3" id="3652" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3662" > +<cdparam x="80" y="37" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="3661" /> +<P1 x="67" y="36" id="4052" /> +<P2 x="86" y="60" id="4012" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3660" > +<father id="3662" num="0" /> +<cdparam x="82" y="38" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3656" /> +<TGConnectingPoint num="1" id="3657" /> +<TGConnectingPoint num="2" id="3658" /> +<TGConnectingPoint num="3" id="3659" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3669" > +<cdparam x="619" y="278" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3668" /> +<P1 x="619" y="278" id="3886" /> +<P2 x="619" y="302" id="3845" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3667" > +<father id="3669" num="0" /> +<cdparam x="619" y="318" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3663" /> +<TGConnectingPoint num="1" id="3664" /> +<TGConnectingPoint num="2" id="3665" /> +<TGConnectingPoint num="3" id="3666" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3676" > +<cdparam x="286" y="212" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3675" /> +<P1 x="447" y="208" id="3755" /> +<P2 x="138" y="208" id="3826" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3674" > +<father id="3676" num="0" /> +<cdparam x="154" y="206" /> +<sizeparam width="302" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3670" /> +<TGConnectingPoint num="1" id="3671" /> +<TGConnectingPoint num="2" id="3672" /> +<TGConnectingPoint num="3" id="3673" /> +<extraparam> +<guard value="[ retransmissionCounter < maxRetransmissions]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="retransmissionCounter = retransmissionCounter + 1" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3683" > +<cdparam x="473" y="290" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3682" /> +<P1 x="472" y="290" id="3744" /> +<P2 x="473" y="308" id="3691" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3681" > +<father id="3683" num="0" /> +<cdparam x="466" y="297" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3677" /> +<TGConnectingPoint num="1" id="3678" /> +<TGConnectingPoint num="2" id="3679" /> +<TGConnectingPoint num="3" id="3680" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="3690" > +<cdparam x="459" y="334" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="3689" /> +<P1 x="473" y="338" id="3692" /> +<P2 x="473" y="366" id="3719" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3688" > +<father id="3690" num="0" /> +<cdparam x="459" y="350" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="3684" /> +<TGConnectingPoint num="1" id="3685" /> +<TGConnectingPoint num="2" id="3686" /> +<TGConnectingPoint num="3" id="3687" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5103" id="3701" > +<cdparam x="456" y="313" /> +<sizeparam width="35" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="DR()" /> +<TGConnectingPoint num="0" id="3691" /> +<TGConnectingPoint num="1" id="3692" /> +<TGConnectingPoint num="2" id="3693" /> +<TGConnectingPoint num="3" id="3694" /> +<TGConnectingPoint num="4" id="3695" /> +<TGConnectingPoint num="5" id="3696" /> +<TGConnectingPoint num="6" id="3697" /> +<TGConnectingPoint num="7" id="3698" /> +<TGConnectingPoint num="8" id="3699" /> +<TGConnectingPoint num="9" id="3700" /> +</COMPONENT> + +<COMPONENT type="5106" id="3742" > +<cdparam x="436" y="366" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="State" value="ERROR" /> +<TGConnectingPoint num="0" id="3702" /> +<TGConnectingPoint num="1" id="3703" /> +<TGConnectingPoint num="2" id="3704" /> +<TGConnectingPoint num="3" id="3705" /> +<TGConnectingPoint num="4" id="3706" /> +<TGConnectingPoint num="5" id="3707" /> +<TGConnectingPoint num="6" id="3708" /> +<TGConnectingPoint num="7" id="3709" /> +<TGConnectingPoint num="8" id="3710" /> +<TGConnectingPoint num="9" id="3711" /> +<TGConnectingPoint num="10" id="3712" /> +<TGConnectingPoint num="11" id="3713" /> +<TGConnectingPoint num="12" id="3714" /> +<TGConnectingPoint num="13" id="3715" /> +<TGConnectingPoint num="14" id="3716" /> +<TGConnectingPoint num="15" id="3717" /> +<TGConnectingPoint num="16" id="3718" /> +<TGConnectingPoint num="17" id="3719" /> +<TGConnectingPoint num="18" id="3720" /> +<TGConnectingPoint num="19" id="3721" /> +<TGConnectingPoint num="20" id="3722" /> +<TGConnectingPoint num="21" id="3723" /> +<TGConnectingPoint num="22" id="3724" /> +<TGConnectingPoint num="23" id="3725" /> +<TGConnectingPoint num="24" id="3726" /> +<TGConnectingPoint num="25" id="3727" /> +<TGConnectingPoint num="26" id="3728" /> +<TGConnectingPoint num="27" id="3729" /> +<TGConnectingPoint num="28" id="3730" /> +<TGConnectingPoint num="29" id="3731" /> +<TGConnectingPoint num="30" id="3732" /> +<TGConnectingPoint num="31" id="3733" /> +<TGConnectingPoint num="32" id="3734" /> +<TGConnectingPoint num="33" id="3735" /> +<TGConnectingPoint num="34" id="3736" /> +<TGConnectingPoint num="35" id="3737" /> +<TGConnectingPoint num="36" id="3738" /> +<TGConnectingPoint num="37" id="3739" /> +<TGConnectingPoint num="38" id="3740" /> +<TGConnectingPoint num="39" id="3741" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5103" id="3753" > +<cdparam x="443" y="265" /> +<sizeparam width="59" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="INerror()" /> +<TGConnectingPoint num="0" id="3743" /> +<TGConnectingPoint num="1" id="3744" /> +<TGConnectingPoint num="2" id="3745" /> +<TGConnectingPoint num="3" id="3746" /> +<TGConnectingPoint num="4" id="3747" /> +<TGConnectingPoint num="5" id="3748" /> +<TGConnectingPoint num="6" id="3749" /> +<TGConnectingPoint num="7" id="3750" /> +<TGConnectingPoint num="8" id="3751" /> +<TGConnectingPoint num="9" id="3752" /> +</COMPONENT> + +<COMPONENT type="5107" id="3769" > +<cdparam x="457" y="193" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="3754" /> +<TGConnectingPoint num="1" id="3755" /> +<TGConnectingPoint num="2" id="3756" /> +<TGConnectingPoint num="3" id="3757" /> +<TGConnectingPoint num="4" id="3758" /> +<TGConnectingPoint num="5" id="3759" /> +<TGConnectingPoint num="6" id="3760" /> +<TGConnectingPoint num="7" id="3761" /> +<TGConnectingPoint num="8" id="3762" /> +<TGConnectingPoint num="9" id="3763" /> +<TGConnectingPoint num="10" id="3764" /> +<TGConnectingPoint num="11" id="3765" /> +<TGConnectingPoint num="12" id="3766" /> +<TGConnectingPoint num="13" id="3767" /> +<TGConnectingPoint num="14" id="3768" /> +</COMPONENT> + +<COMPONENT type="5110" id="3780" > +<cdparam x="577" y="203" /> +<sizeparam width="85" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Reset timer" value="reset(ATST1)" /> +<TGConnectingPoint num="0" id="3770" /> +<TGConnectingPoint num="1" id="3771" /> +<TGConnectingPoint num="2" id="3772" /> +<TGConnectingPoint num="3" id="3773" /> +<TGConnectingPoint num="4" id="3774" /> +<TGConnectingPoint num="5" id="3775" /> +<TGConnectingPoint num="6" id="3776" /> +<TGConnectingPoint num="7" id="3777" /> +<TGConnectingPoint num="8" id="3778" /> +<TGConnectingPoint num="9" id="3779" /> +</COMPONENT> + +<COMPONENT type="5109" id="3791" > +<cdparam x="36" y="259" /> +<sizeparam width="127" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Set timer" value="setTimer(ATST1,10)" /> +<TGConnectingPoint num="0" id="3781" /> +<TGConnectingPoint num="1" id="3782" /> +<TGConnectingPoint num="2" id="3783" /> +<TGConnectingPoint num="3" id="3784" /> +<TGConnectingPoint num="4" id="3785" /> +<TGConnectingPoint num="5" id="3786" /> +<TGConnectingPoint num="6" id="3787" /> +<TGConnectingPoint num="7" id="3788" /> +<TGConnectingPoint num="8" id="3789" /> +<TGConnectingPoint num="9" id="3790" /> +</COMPONENT> + +<COMPONENT type="5111" id="3802" > +<cdparam x="422" y="140" /> +<sizeparam width="103" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Reset timer" value="expire(ATST1)" /> +<TGConnectingPoint num="0" id="3792" /> +<TGConnectingPoint num="1" id="3793" /> +<TGConnectingPoint num="2" id="3794" /> +<TGConnectingPoint num="3" id="3795" /> +<TGConnectingPoint num="4" id="3796" /> +<TGConnectingPoint num="5" id="3797" /> +<TGConnectingPoint num="6" id="3798" /> +<TGConnectingPoint num="7" id="3799" /> +<TGConnectingPoint num="8" id="3800" /> +<TGConnectingPoint num="9" id="3801" /> +</COMPONENT> + +<COMPONENT type="5106" id="3843" > +<cdparam x="35" y="193" /> +<sizeparam width="103" height="42" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="State" value="SEND" /> +<TGConnectingPoint num="0" id="3803" /> +<TGConnectingPoint num="1" id="3804" /> +<TGConnectingPoint num="2" id="3805" /> +<TGConnectingPoint num="3" id="3806" /> +<TGConnectingPoint num="4" id="3807" /> +<TGConnectingPoint num="5" id="3808" /> +<TGConnectingPoint num="6" id="3809" /> +<TGConnectingPoint num="7" id="3810" /> +<TGConnectingPoint num="8" id="3811" /> +<TGConnectingPoint num="9" id="3812" /> +<TGConnectingPoint num="10" id="3813" /> +<TGConnectingPoint num="11" id="3814" /> +<TGConnectingPoint num="12" id="3815" /> +<TGConnectingPoint num="13" id="3816" /> +<TGConnectingPoint num="14" id="3817" /> +<TGConnectingPoint num="15" id="3818" /> +<TGConnectingPoint num="16" id="3819" /> +<TGConnectingPoint num="17" id="3820" /> +<TGConnectingPoint num="18" id="3821" /> +<TGConnectingPoint num="19" id="3822" /> +<TGConnectingPoint num="20" id="3823" /> +<TGConnectingPoint num="21" id="3824" /> +<TGConnectingPoint num="22" id="3825" /> +<TGConnectingPoint num="23" id="3826" /> +<TGConnectingPoint num="24" id="3827" /> +<TGConnectingPoint num="25" id="3828" /> +<TGConnectingPoint num="26" id="3829" /> +<TGConnectingPoint num="27" id="3830" /> +<TGConnectingPoint num="28" id="3831" /> +<TGConnectingPoint num="29" id="3832" /> +<TGConnectingPoint num="30" id="3833" /> +<TGConnectingPoint num="31" id="3834" /> +<TGConnectingPoint num="32" id="3835" /> +<TGConnectingPoint num="33" id="3836" /> +<TGConnectingPoint num="34" id="3837" /> +<TGConnectingPoint num="35" id="3838" /> +<TGConnectingPoint num="36" id="3839" /> +<TGConnectingPoint num="37" id="3840" /> +<TGConnectingPoint num="38" id="3841" /> +<TGConnectingPoint num="39" id="3842" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="3884" > +<cdparam x="569" y="302" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="CONNECTED" /> +<TGConnectingPoint num="0" id="3844" /> +<TGConnectingPoint num="1" id="3845" /> +<TGConnectingPoint num="2" id="3846" /> +<TGConnectingPoint num="3" id="3847" /> +<TGConnectingPoint num="4" id="3848" /> +<TGConnectingPoint num="5" id="3849" /> +<TGConnectingPoint num="6" id="3850" /> +<TGConnectingPoint num="7" id="3851" /> +<TGConnectingPoint num="8" id="3852" /> +<TGConnectingPoint num="9" id="3853" /> +<TGConnectingPoint num="10" id="3854" /> +<TGConnectingPoint num="11" id="3855" /> +<TGConnectingPoint num="12" id="3856" /> +<TGConnectingPoint num="13" id="3857" /> +<TGConnectingPoint num="14" id="3858" /> +<TGConnectingPoint num="15" id="3859" /> +<TGConnectingPoint num="16" id="3860" /> +<TGConnectingPoint num="17" id="3861" /> +<TGConnectingPoint num="18" id="3862" /> +<TGConnectingPoint num="19" id="3863" /> +<TGConnectingPoint num="20" id="3864" /> +<TGConnectingPoint num="21" id="3865" /> +<TGConnectingPoint num="22" id="3866" /> +<TGConnectingPoint num="23" id="3867" /> +<TGConnectingPoint num="24" id="3868" /> +<TGConnectingPoint num="25" id="3869" /> +<TGConnectingPoint num="26" id="3870" /> +<TGConnectingPoint num="27" id="3871" /> +<TGConnectingPoint num="28" id="3872" /> +<TGConnectingPoint num="29" id="3873" /> +<TGConnectingPoint num="30" id="3874" /> +<TGConnectingPoint num="31" id="3875" /> +<TGConnectingPoint num="32" id="3876" /> +<TGConnectingPoint num="33" id="3877" /> +<TGConnectingPoint num="34" id="3878" /> +<TGConnectingPoint num="35" id="3879" /> +<TGConnectingPoint num="36" id="3880" /> +<TGConnectingPoint num="37" id="3881" /> +<TGConnectingPoint num="38" id="3882" /> +<TGConnectingPoint num="39" id="3883" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5103" id="3895" > +<cdparam x="582" y="253" /> +<sizeparam width="74" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="INconconf()" /> +<TGConnectingPoint num="0" id="3885" /> +<TGConnectingPoint num="1" id="3886" /> +<TGConnectingPoint num="2" id="3887" /> +<TGConnectingPoint num="3" id="3888" /> +<TGConnectingPoint num="4" id="3889" /> +<TGConnectingPoint num="5" id="3890" /> +<TGConnectingPoint num="6" id="3891" /> +<TGConnectingPoint num="7" id="3892" /> +<TGConnectingPoint num="8" id="3893" /> +<TGConnectingPoint num="9" id="3894" /> +</COMPONENT> + +<COMPONENT type="5104" id="3906" > +<cdparam x="598" y="149" /> +<sizeparam width="42" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="CC()" /> +<TGConnectingPoint num="0" id="3896" /> +<TGConnectingPoint num="1" id="3897" /> +<TGConnectingPoint num="2" id="3898" /> +<TGConnectingPoint num="3" id="3899" /> +<TGConnectingPoint num="4" id="3900" /> +<TGConnectingPoint num="5" id="3901" /> +<TGConnectingPoint num="6" id="3902" /> +<TGConnectingPoint num="7" id="3903" /> +<TGConnectingPoint num="8" id="3904" /> +<TGConnectingPoint num="9" id="3905" /> +</COMPONENT> + +<COMPONENT type="5106" id="3947" > +<cdparam x="518" y="58" /> +<sizeparam width="117" height="51" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="WAIT_FOR_CONF" /> +<TGConnectingPoint num="0" id="3907" /> +<TGConnectingPoint num="1" id="3908" /> +<TGConnectingPoint num="2" id="3909" /> +<TGConnectingPoint num="3" id="3910" /> +<TGConnectingPoint num="4" id="3911" /> +<TGConnectingPoint num="5" id="3912" /> +<TGConnectingPoint num="6" id="3913" /> +<TGConnectingPoint num="7" id="3914" /> +<TGConnectingPoint num="8" id="3915" /> +<TGConnectingPoint num="9" id="3916" /> +<TGConnectingPoint num="10" id="3917" /> +<TGConnectingPoint num="11" id="3918" /> +<TGConnectingPoint num="12" id="3919" /> +<TGConnectingPoint num="13" id="3920" /> +<TGConnectingPoint num="14" id="3921" /> +<TGConnectingPoint num="15" id="3922" /> +<TGConnectingPoint num="16" id="3923" /> +<TGConnectingPoint num="17" id="3924" /> +<TGConnectingPoint num="18" id="3925" /> +<TGConnectingPoint num="19" id="3926" /> +<TGConnectingPoint num="20" id="3927" /> +<TGConnectingPoint num="21" id="3928" /> +<TGConnectingPoint num="22" id="3929" /> +<TGConnectingPoint num="23" id="3930" /> +<TGConnectingPoint num="24" id="3931" /> +<TGConnectingPoint num="25" id="3932" /> +<TGConnectingPoint num="26" id="3933" /> +<TGConnectingPoint num="27" id="3934" /> +<TGConnectingPoint num="28" id="3935" /> +<TGConnectingPoint num="29" id="3936" /> +<TGConnectingPoint num="30" id="3937" /> +<TGConnectingPoint num="31" id="3938" /> +<TGConnectingPoint num="32" id="3939" /> +<TGConnectingPoint num="33" id="3940" /> +<TGConnectingPoint num="34" id="3941" /> +<TGConnectingPoint num="35" id="3942" /> +<TGConnectingPoint num="36" id="3943" /> +<TGConnectingPoint num="37" id="3944" /> +<TGConnectingPoint num="38" id="3945" /> +<TGConnectingPoint num="39" id="3946" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="3988" > +<cdparam x="32" y="351" /> +<sizeparam width="137" height="52" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="WAIT_FOR_CONF" /> +<TGConnectingPoint num="0" id="3948" /> +<TGConnectingPoint num="1" id="3949" /> +<TGConnectingPoint num="2" id="3950" /> +<TGConnectingPoint num="3" id="3951" /> +<TGConnectingPoint num="4" id="3952" /> +<TGConnectingPoint num="5" id="3953" /> +<TGConnectingPoint num="6" id="3954" /> +<TGConnectingPoint num="7" id="3955" /> +<TGConnectingPoint num="8" id="3956" /> +<TGConnectingPoint num="9" id="3957" /> +<TGConnectingPoint num="10" id="3958" /> +<TGConnectingPoint num="11" id="3959" /> +<TGConnectingPoint num="12" id="3960" /> +<TGConnectingPoint num="13" id="3961" /> +<TGConnectingPoint num="14" id="3962" /> +<TGConnectingPoint num="15" id="3963" /> +<TGConnectingPoint num="16" id="3964" /> +<TGConnectingPoint num="17" id="3965" /> +<TGConnectingPoint num="18" id="3966" /> +<TGConnectingPoint num="19" id="3967" /> +<TGConnectingPoint num="20" id="3968" /> +<TGConnectingPoint num="21" id="3969" /> +<TGConnectingPoint num="22" id="3970" /> +<TGConnectingPoint num="23" id="3971" /> +<TGConnectingPoint num="24" id="3972" /> +<TGConnectingPoint num="25" id="3973" /> +<TGConnectingPoint num="26" id="3974" /> +<TGConnectingPoint num="27" id="3975" /> +<TGConnectingPoint num="28" id="3976" /> +<TGConnectingPoint num="29" id="3977" /> +<TGConnectingPoint num="30" id="3978" /> +<TGConnectingPoint num="31" id="3979" /> +<TGConnectingPoint num="32" id="3980" /> +<TGConnectingPoint num="33" id="3981" /> +<TGConnectingPoint num="34" id="3982" /> +<TGConnectingPoint num="35" id="3983" /> +<TGConnectingPoint num="36" id="3984" /> +<TGConnectingPoint num="37" id="3985" /> +<TGConnectingPoint num="38" id="3986" /> +<TGConnectingPoint num="39" id="3987" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5103" id="3999" > +<cdparam x="83" y="304" /> +<sizeparam width="34" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="CR()" /> +<TGConnectingPoint num="0" id="3989" /> +<TGConnectingPoint num="1" id="3990" /> +<TGConnectingPoint num="2" id="3991" /> +<TGConnectingPoint num="3" id="3992" /> +<TGConnectingPoint num="4" id="3993" /> +<TGConnectingPoint num="5" id="3994" /> +<TGConnectingPoint num="6" id="3995" /> +<TGConnectingPoint num="7" id="3996" /> +<TGConnectingPoint num="8" id="3997" /> +<TGConnectingPoint num="9" id="3998" /> +</COMPONENT> + +<COMPONENT type="5104" id="4010" > +<cdparam x="47" y="137" /> +<sizeparam width="78" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="INconreq()" /> +<TGConnectingPoint num="0" id="4000" /> +<TGConnectingPoint num="1" id="4001" /> +<TGConnectingPoint num="2" id="4002" /> +<TGConnectingPoint num="3" id="4003" /> +<TGConnectingPoint num="4" id="4004" /> +<TGConnectingPoint num="5" id="4005" /> +<TGConnectingPoint num="6" id="4006" /> +<TGConnectingPoint num="7" id="4007" /> +<TGConnectingPoint num="8" id="4008" /> +<TGConnectingPoint num="9" id="4009" /> +</COMPONENT> + +<COMPONENT type="5106" id="4051" > +<cdparam x="36" y="60" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="IDLE" /> +<TGConnectingPoint num="0" id="4011" /> +<TGConnectingPoint num="1" id="4012" /> +<TGConnectingPoint num="2" id="4013" /> +<TGConnectingPoint num="3" id="4014" /> +<TGConnectingPoint num="4" id="4015" /> +<TGConnectingPoint num="5" id="4016" /> +<TGConnectingPoint num="6" id="4017" /> +<TGConnectingPoint num="7" id="4018" /> +<TGConnectingPoint num="8" id="4019" /> +<TGConnectingPoint num="9" id="4020" /> +<TGConnectingPoint num="10" id="4021" /> +<TGConnectingPoint num="11" id="4022" /> +<TGConnectingPoint num="12" id="4023" /> +<TGConnectingPoint num="13" id="4024" /> +<TGConnectingPoint num="14" id="4025" /> +<TGConnectingPoint num="15" id="4026" /> +<TGConnectingPoint num="16" id="4027" /> +<TGConnectingPoint num="17" id="4028" /> +<TGConnectingPoint num="18" id="4029" /> +<TGConnectingPoint num="19" id="4030" /> +<TGConnectingPoint num="20" id="4031" /> +<TGConnectingPoint num="21" id="4032" /> +<TGConnectingPoint num="22" id="4033" /> +<TGConnectingPoint num="23" id="4034" /> +<TGConnectingPoint num="24" id="4035" /> +<TGConnectingPoint num="25" id="4036" /> +<TGConnectingPoint num="26" id="4037" /> +<TGConnectingPoint num="27" id="4038" /> +<TGConnectingPoint num="28" id="4039" /> +<TGConnectingPoint num="29" id="4040" /> +<TGConnectingPoint num="30" id="4041" /> +<TGConnectingPoint num="31" id="4042" /> +<TGConnectingPoint num="32" id="4043" /> +<TGConnectingPoint num="33" id="4044" /> +<TGConnectingPoint num="34" id="4045" /> +<TGConnectingPoint num="35" id="4046" /> +<TGConnectingPoint num="36" id="4047" /> +<TGConnectingPoint num="37" id="4048" /> +<TGConnectingPoint num="38" id="4049" /> +<TGConnectingPoint num="39" id="4050" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="4053" > +<cdparam x="60" y="16" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="4052" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="GroundCommunication" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="4060" > +<cdparam x="483" y="115" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4059" /> +<P1 x="490" y="122" id="4362" /> +<P2 x="490" y="143" id="4293" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4058" > +<father id="4060" num="0" /> +<cdparam x="486" y="129" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4054" /> +<TGConnectingPoint num="1" id="4055" /> +<TGConnectingPoint num="2" id="4056" /> +<TGConnectingPoint num="3" id="4057" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4067" > +<cdparam x="492" y="175" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4066" /> +<P1 x="490" y="173" id="4294" /> +<P2 x="490" y="197" id="4304" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4065" > +<father id="4067" num="0" /> +<cdparam x="491" y="186" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4061" /> +<TGConnectingPoint num="1" id="4062" /> +<TGConnectingPoint num="2" id="4063" /> +<TGConnectingPoint num="3" id="4064" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4074" > +<cdparam x="490" y="193" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4073" /> +<P1 x="490" y="227" id="4305" /> +<P2 x="490" y="255" id="4316" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4072" > +<father id="4074" num="0" /> +<cdparam x="486" y="224" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4068" /> +<TGConnectingPoint num="1" id="4069" /> +<TGConnectingPoint num="2" id="4070" /> +<TGConnectingPoint num="3" id="4071" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4081" > +<cdparam x="86" y="48" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="4080" /> +<P1 x="75" y="47" id="4291" /> +<P2 x="87" y="72" id="4251" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4079" > +<father id="4081" num="0" /> +<cdparam x="86" y="88" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4075" /> +<TGConnectingPoint num="1" id="4076" /> +<TGConnectingPoint num="2" id="4077" /> +<TGConnectingPoint num="3" id="4078" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4088" > +<cdparam x="99" y="122" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="4087" /> +<P1 x="99" y="122" id="4280" /> +<P2 x="99" y="151" id="4239" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4086" > +<father id="4088" num="0" /> +<cdparam x="99" y="162" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4082" /> +<TGConnectingPoint num="1" id="4083" /> +<TGConnectingPoint num="2" id="4084" /> +<TGConnectingPoint num="3" id="4085" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4095" > +<cdparam x="99" y="181" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="4094" /> +<P1 x="99" y="181" id="4240" /> +<P2 x="99" y="207" id="4228" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4093" > +<father id="4095" num="0" /> +<cdparam x="99" y="221" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4089" /> +<TGConnectingPoint num="1" id="4090" /> +<TGConnectingPoint num="2" id="4091" /> +<TGConnectingPoint num="3" id="4092" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4102" > +<cdparam x="99" y="237" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="4101" /> +<P1 x="99" y="237" id="4229" /> +<P2 x="99" y="262" id="4188" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4100" > +<father id="4102" num="0" /> +<cdparam x="99" y="277" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4096" /> +<TGConnectingPoint num="1" id="4097" /> +<TGConnectingPoint num="2" id="4098" /> +<TGConnectingPoint num="3" id="4099" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4109" > +<cdparam x="327" y="119" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="4108" /> +<P1 x="327" y="119" id="4176" /> +<P2 x="327" y="145" id="4135" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4107" > +<father id="4109" num="0" /> +<cdparam x="327" y="159" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4103" /> +<TGConnectingPoint num="1" id="4104" /> +<TGConnectingPoint num="2" id="4105" /> +<TGConnectingPoint num="3" id="4106" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4116" > +<cdparam x="327" y="175" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="4115" /> +<P1 x="327" y="175" id="4136" /> +<P2 x="327" y="204" id="4124" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4114" > +<father id="4116" num="0" /> +<cdparam x="327" y="215" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4110" /> +<TGConnectingPoint num="1" id="4111" /> +<TGConnectingPoint num="2" id="4112" /> +<TGConnectingPoint num="3" id="4113" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4123" > +<cdparam x="327" y="234" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4122" /> +<P1 x="327" y="234" id="4125" /> +<P2 x="327" y="266" id="4398" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4121" > +<father id="4123" num="0" /> +<cdparam x="331" y="251" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4117" /> +<TGConnectingPoint num="1" id="4118" /> +<TGConnectingPoint num="2" id="4119" /> +<TGConnectingPoint num="3" id="4120" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5103" id="4134" > +<cdparam x="310" y="209" /> +<sizeparam width="34" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="CC()" /> +<TGConnectingPoint num="0" id="4124" /> +<TGConnectingPoint num="1" id="4125" /> +<TGConnectingPoint num="2" id="4126" /> +<TGConnectingPoint num="3" id="4127" /> +<TGConnectingPoint num="4" id="4128" /> +<TGConnectingPoint num="5" id="4129" /> +<TGConnectingPoint num="6" id="4130" /> +<TGConnectingPoint num="7" id="4131" /> +<TGConnectingPoint num="8" id="4132" /> +<TGConnectingPoint num="9" id="4133" /> +</COMPONENT> + +<COMPONENT type="5104" id="4145" > +<cdparam x="285" y="150" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="INconresp()" /> +<TGConnectingPoint num="0" id="4135" /> +<TGConnectingPoint num="1" id="4136" /> +<TGConnectingPoint num="2" id="4137" /> +<TGConnectingPoint num="3" id="4138" /> +<TGConnectingPoint num="4" id="4139" /> +<TGConnectingPoint num="5" id="4140" /> +<TGConnectingPoint num="6" id="4141" /> +<TGConnectingPoint num="7" id="4142" /> +<TGConnectingPoint num="8" id="4143" /> +<TGConnectingPoint num="9" id="4144" /> +</COMPONENT> + +<COMPONENT type="5106" id="4186" > +<cdparam x="254" y="69" /> +<sizeparam width="119" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="WAIT_FOR_RESP" /> +<TGConnectingPoint num="0" id="4146" /> +<TGConnectingPoint num="1" id="4147" /> +<TGConnectingPoint num="2" id="4148" /> +<TGConnectingPoint num="3" id="4149" /> +<TGConnectingPoint num="4" id="4150" /> +<TGConnectingPoint num="5" id="4151" /> +<TGConnectingPoint num="6" id="4152" /> +<TGConnectingPoint num="7" id="4153" /> +<TGConnectingPoint num="8" id="4154" /> +<TGConnectingPoint num="9" id="4155" /> +<TGConnectingPoint num="10" id="4156" /> +<TGConnectingPoint num="11" id="4157" /> +<TGConnectingPoint num="12" id="4158" /> +<TGConnectingPoint num="13" id="4159" /> +<TGConnectingPoint num="14" id="4160" /> +<TGConnectingPoint num="15" id="4161" /> +<TGConnectingPoint num="16" id="4162" /> +<TGConnectingPoint num="17" id="4163" /> +<TGConnectingPoint num="18" id="4164" /> +<TGConnectingPoint num="19" id="4165" /> +<TGConnectingPoint num="20" id="4166" /> +<TGConnectingPoint num="21" id="4167" /> +<TGConnectingPoint num="22" id="4168" /> +<TGConnectingPoint num="23" id="4169" /> +<TGConnectingPoint num="24" id="4170" /> +<TGConnectingPoint num="25" id="4171" /> +<TGConnectingPoint num="26" id="4172" /> +<TGConnectingPoint num="27" id="4173" /> +<TGConnectingPoint num="28" id="4174" /> +<TGConnectingPoint num="29" id="4175" /> +<TGConnectingPoint num="30" id="4176" /> +<TGConnectingPoint num="31" id="4177" /> +<TGConnectingPoint num="32" id="4178" /> +<TGConnectingPoint num="33" id="4179" /> +<TGConnectingPoint num="34" id="4180" /> +<TGConnectingPoint num="35" id="4181" /> +<TGConnectingPoint num="36" id="4182" /> +<TGConnectingPoint num="37" id="4183" /> +<TGConnectingPoint num="38" id="4184" /> +<TGConnectingPoint num="39" id="4185" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="4227" > +<cdparam x="39" y="262" /> +<sizeparam width="121" height="49" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="WAIT_FOR_RESP" /> +<TGConnectingPoint num="0" id="4187" /> +<TGConnectingPoint num="1" id="4188" /> +<TGConnectingPoint num="2" id="4189" /> +<TGConnectingPoint num="3" id="4190" /> +<TGConnectingPoint num="4" id="4191" /> +<TGConnectingPoint num="5" id="4192" /> +<TGConnectingPoint num="6" id="4193" /> +<TGConnectingPoint num="7" id="4194" /> +<TGConnectingPoint num="8" id="4195" /> +<TGConnectingPoint num="9" id="4196" /> +<TGConnectingPoint num="10" id="4197" /> +<TGConnectingPoint num="11" id="4198" /> +<TGConnectingPoint num="12" id="4199" /> +<TGConnectingPoint num="13" id="4200" /> +<TGConnectingPoint num="14" id="4201" /> +<TGConnectingPoint num="15" id="4202" /> +<TGConnectingPoint num="16" id="4203" /> +<TGConnectingPoint num="17" id="4204" /> +<TGConnectingPoint num="18" id="4205" /> +<TGConnectingPoint num="19" id="4206" /> +<TGConnectingPoint num="20" id="4207" /> +<TGConnectingPoint num="21" id="4208" /> +<TGConnectingPoint num="22" id="4209" /> +<TGConnectingPoint num="23" id="4210" /> +<TGConnectingPoint num="24" id="4211" /> +<TGConnectingPoint num="25" id="4212" /> +<TGConnectingPoint num="26" id="4213" /> +<TGConnectingPoint num="27" id="4214" /> +<TGConnectingPoint num="28" id="4215" /> +<TGConnectingPoint num="29" id="4216" /> +<TGConnectingPoint num="30" id="4217" /> +<TGConnectingPoint num="31" id="4218" /> +<TGConnectingPoint num="32" id="4219" /> +<TGConnectingPoint num="33" id="4220" /> +<TGConnectingPoint num="34" id="4221" /> +<TGConnectingPoint num="35" id="4222" /> +<TGConnectingPoint num="36" id="4223" /> +<TGConnectingPoint num="37" id="4224" /> +<TGConnectingPoint num="38" id="4225" /> +<TGConnectingPoint num="39" id="4226" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5103" id="4238" > +<cdparam x="65" y="212" /> +<sizeparam width="68" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="INconind()" /> +<TGConnectingPoint num="0" id="4228" /> +<TGConnectingPoint num="1" id="4229" /> +<TGConnectingPoint num="2" id="4230" /> +<TGConnectingPoint num="3" id="4231" /> +<TGConnectingPoint num="4" id="4232" /> +<TGConnectingPoint num="5" id="4233" /> +<TGConnectingPoint num="6" id="4234" /> +<TGConnectingPoint num="7" id="4235" /> +<TGConnectingPoint num="8" id="4236" /> +<TGConnectingPoint num="9" id="4237" /> +</COMPONENT> + +<COMPONENT type="5104" id="4249" > +<cdparam x="78" y="156" /> +<sizeparam width="42" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="CR()" /> +<TGConnectingPoint num="0" id="4239" /> +<TGConnectingPoint num="1" id="4240" /> +<TGConnectingPoint num="2" id="4241" /> +<TGConnectingPoint num="3" id="4242" /> +<TGConnectingPoint num="4" id="4243" /> +<TGConnectingPoint num="5" id="4244" /> +<TGConnectingPoint num="6" id="4245" /> +<TGConnectingPoint num="7" id="4246" /> +<TGConnectingPoint num="8" id="4247" /> +<TGConnectingPoint num="9" id="4248" /> +</COMPONENT> + +<COMPONENT type="5106" id="4290" > +<cdparam x="37" y="72" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="IDLE" /> +<TGConnectingPoint num="0" id="4250" /> +<TGConnectingPoint num="1" id="4251" /> +<TGConnectingPoint num="2" id="4252" /> +<TGConnectingPoint num="3" id="4253" /> +<TGConnectingPoint num="4" id="4254" /> +<TGConnectingPoint num="5" id="4255" /> +<TGConnectingPoint num="6" id="4256" /> +<TGConnectingPoint num="7" id="4257" /> +<TGConnectingPoint num="8" id="4258" /> +<TGConnectingPoint num="9" id="4259" /> +<TGConnectingPoint num="10" id="4260" /> +<TGConnectingPoint num="11" id="4261" /> +<TGConnectingPoint num="12" id="4262" /> +<TGConnectingPoint num="13" id="4263" /> +<TGConnectingPoint num="14" id="4264" /> +<TGConnectingPoint num="15" id="4265" /> +<TGConnectingPoint num="16" id="4266" /> +<TGConnectingPoint num="17" id="4267" /> +<TGConnectingPoint num="18" id="4268" /> +<TGConnectingPoint num="19" id="4269" /> +<TGConnectingPoint num="20" id="4270" /> +<TGConnectingPoint num="21" id="4271" /> +<TGConnectingPoint num="22" id="4272" /> +<TGConnectingPoint num="23" id="4273" /> +<TGConnectingPoint num="24" id="4274" /> +<TGConnectingPoint num="25" id="4275" /> +<TGConnectingPoint num="26" id="4276" /> +<TGConnectingPoint num="27" id="4277" /> +<TGConnectingPoint num="28" id="4278" /> +<TGConnectingPoint num="29" id="4279" /> +<TGConnectingPoint num="30" id="4280" /> +<TGConnectingPoint num="31" id="4281" /> +<TGConnectingPoint num="32" id="4282" /> +<TGConnectingPoint num="33" id="4283" /> +<TGConnectingPoint num="34" id="4284" /> +<TGConnectingPoint num="35" id="4285" /> +<TGConnectingPoint num="36" id="4286" /> +<TGConnectingPoint num="37" id="4287" /> +<TGConnectingPoint num="38" id="4288" /> +<TGConnectingPoint num="39" id="4289" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="4292" > +<cdparam x="68" y="27" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="4291" /> +</COMPONENT> + +<COMPONENT type="5104" id="4303" > +<cdparam x="469" y="148" /> +<sizeparam width="43" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="DR()" /> +<TGConnectingPoint num="0" id="4293" /> +<TGConnectingPoint num="1" id="4294" /> +<TGConnectingPoint num="2" id="4295" /> +<TGConnectingPoint num="3" id="4296" /> +<TGConnectingPoint num="4" id="4297" /> +<TGConnectingPoint num="5" id="4298" /> +<TGConnectingPoint num="6" id="4299" /> +<TGConnectingPoint num="7" id="4300" /> +<TGConnectingPoint num="8" id="4301" /> +<TGConnectingPoint num="9" id="4302" /> +</COMPONENT> + +<COMPONENT type="5103" id="4314" > +<cdparam x="437" y="202" /> +<sizeparam width="106" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="INerror_ground()" /> +<TGConnectingPoint num="0" id="4304" /> +<TGConnectingPoint num="1" id="4305" /> +<TGConnectingPoint num="2" id="4306" /> +<TGConnectingPoint num="3" id="4307" /> +<TGConnectingPoint num="4" id="4308" /> +<TGConnectingPoint num="5" id="4309" /> +<TGConnectingPoint num="6" id="4310" /> +<TGConnectingPoint num="7" id="4311" /> +<TGConnectingPoint num="8" id="4312" /> +<TGConnectingPoint num="9" id="4313" /> +</COMPONENT> + +<COMPONENT type="5106" id="4355" > +<cdparam x="440" y="255" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="State" value="ERROR" /> +<TGConnectingPoint num="0" id="4315" /> +<TGConnectingPoint num="1" id="4316" /> +<TGConnectingPoint num="2" id="4317" /> +<TGConnectingPoint num="3" id="4318" /> +<TGConnectingPoint num="4" id="4319" /> +<TGConnectingPoint num="5" id="4320" /> +<TGConnectingPoint num="6" id="4321" /> +<TGConnectingPoint num="7" id="4322" /> +<TGConnectingPoint num="8" id="4323" /> +<TGConnectingPoint num="9" id="4324" /> +<TGConnectingPoint num="10" id="4325" /> +<TGConnectingPoint num="11" id="4326" /> +<TGConnectingPoint num="12" id="4327" /> +<TGConnectingPoint num="13" id="4328" /> +<TGConnectingPoint num="14" id="4329" /> +<TGConnectingPoint num="15" id="4330" /> +<TGConnectingPoint num="16" id="4331" /> +<TGConnectingPoint num="17" id="4332" /> +<TGConnectingPoint num="18" id="4333" /> +<TGConnectingPoint num="19" id="4334" /> +<TGConnectingPoint num="20" id="4335" /> +<TGConnectingPoint num="21" id="4336" /> +<TGConnectingPoint num="22" id="4337" /> +<TGConnectingPoint num="23" id="4338" /> +<TGConnectingPoint num="24" id="4339" /> +<TGConnectingPoint num="25" id="4340" /> +<TGConnectingPoint num="26" id="4341" /> +<TGConnectingPoint num="27" id="4342" /> +<TGConnectingPoint num="28" id="4343" /> +<TGConnectingPoint num="29" id="4344" /> +<TGConnectingPoint num="30" id="4345" /> +<TGConnectingPoint num="31" id="4346" /> +<TGConnectingPoint num="32" id="4347" /> +<TGConnectingPoint num="33" id="4348" /> +<TGConnectingPoint num="34" id="4349" /> +<TGConnectingPoint num="35" id="4350" /> +<TGConnectingPoint num="36" id="4351" /> +<TGConnectingPoint num="37" id="4352" /> +<TGConnectingPoint num="38" id="4353" /> +<TGConnectingPoint num="39" id="4354" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="4396" > +<cdparam x="440" y="63" /> +<sizeparam width="100" height="59" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="State" value="CONNECTED" /> +<TGConnectingPoint num="0" id="4356" /> +<TGConnectingPoint num="1" id="4357" /> +<TGConnectingPoint num="2" id="4358" /> +<TGConnectingPoint num="3" id="4359" /> +<TGConnectingPoint num="4" id="4360" /> +<TGConnectingPoint num="5" id="4361" /> +<TGConnectingPoint num="6" id="4362" /> +<TGConnectingPoint num="7" id="4363" /> +<TGConnectingPoint num="8" id="4364" /> +<TGConnectingPoint num="9" id="4365" /> +<TGConnectingPoint num="10" id="4366" /> +<TGConnectingPoint num="11" id="4367" /> +<TGConnectingPoint num="12" id="4368" /> +<TGConnectingPoint num="13" id="4369" /> +<TGConnectingPoint num="14" id="4370" /> +<TGConnectingPoint num="15" id="4371" /> +<TGConnectingPoint num="16" id="4372" /> +<TGConnectingPoint num="17" id="4373" /> +<TGConnectingPoint num="18" id="4374" /> +<TGConnectingPoint num="19" id="4375" /> +<TGConnectingPoint num="20" id="4376" /> +<TGConnectingPoint num="21" id="4377" /> +<TGConnectingPoint num="22" id="4378" /> +<TGConnectingPoint num="23" id="4379" /> +<TGConnectingPoint num="24" id="4380" /> +<TGConnectingPoint num="25" id="4381" /> +<TGConnectingPoint num="26" id="4382" /> +<TGConnectingPoint num="27" id="4383" /> +<TGConnectingPoint num="28" id="4384" /> +<TGConnectingPoint num="29" id="4385" /> +<TGConnectingPoint num="30" id="4386" /> +<TGConnectingPoint num="31" id="4387" /> +<TGConnectingPoint num="32" id="4388" /> +<TGConnectingPoint num="33" id="4389" /> +<TGConnectingPoint num="34" id="4390" /> +<TGConnectingPoint num="35" id="4391" /> +<TGConnectingPoint num="36" id="4392" /> +<TGConnectingPoint num="37" id="4393" /> +<TGConnectingPoint num="38" id="4394" /> +<TGConnectingPoint num="39" id="4395" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="4437" > +<cdparam x="277" y="266" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="State" value="CONNECTED" /> +<TGConnectingPoint num="0" id="4397" /> +<TGConnectingPoint num="1" id="4398" /> +<TGConnectingPoint num="2" id="4399" /> +<TGConnectingPoint num="3" id="4400" /> +<TGConnectingPoint num="4" id="4401" /> +<TGConnectingPoint num="5" id="4402" /> +<TGConnectingPoint num="6" id="4403" /> +<TGConnectingPoint num="7" id="4404" /> +<TGConnectingPoint num="8" id="4405" /> +<TGConnectingPoint num="9" id="4406" /> +<TGConnectingPoint num="10" id="4407" /> +<TGConnectingPoint num="11" id="4408" /> +<TGConnectingPoint num="12" id="4409" /> +<TGConnectingPoint num="13" id="4410" /> +<TGConnectingPoint num="14" id="4411" /> +<TGConnectingPoint num="15" id="4412" /> +<TGConnectingPoint num="16" id="4413" /> +<TGConnectingPoint num="17" id="4414" /> +<TGConnectingPoint num="18" id="4415" /> +<TGConnectingPoint num="19" id="4416" /> +<TGConnectingPoint num="20" id="4417" /> +<TGConnectingPoint num="21" id="4418" /> +<TGConnectingPoint num="22" id="4419" /> +<TGConnectingPoint num="23" id="4420" /> +<TGConnectingPoint num="24" id="4421" /> +<TGConnectingPoint num="25" id="4422" /> +<TGConnectingPoint num="26" id="4423" /> +<TGConnectingPoint num="27" id="4424" /> +<TGConnectingPoint num="28" id="4425" /> +<TGConnectingPoint num="29" id="4426" /> +<TGConnectingPoint num="30" id="4427" /> +<TGConnectingPoint num="31" id="4428" /> +<TGConnectingPoint num="32" id="4429" /> +<TGConnectingPoint num="33" id="4430" /> +<TGConnectingPoint num="34" id="4431" /> +<TGConnectingPoint num="35" id="4432" /> +<TGConnectingPoint num="36" id="4433" /> +<TGConnectingPoint num="37" id="4434" /> +<TGConnectingPoint num="38" id="4435" /> +<TGConnectingPoint num="39" id="4436" /> +<extraparam> +</extraparam> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="Controller" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="4452" > +<cdparam x="374" y="197" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4447" /> +<TGConnectingPoint num="1" id="4448" /> +<TGConnectingPoint num="2" id="4449" /> +<TGConnectingPoint num="3" id="4450" /> +<TGConnectingPoint num="4" id="4451" /> +<P1 x="374" y="197" id="4510" /> +<P2 x="248" y="96" id="4561" /> +<Point x="374" y="212" /> +<Point x="441" y="212" /> +<Point x="441" y="90" /> +<Point x="274" y="90" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4438" > +<father id="4452" num="0" /> +<cdparam x="374" y="212" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4439" > +<father id="4452" num="1" /> +<cdparam x="441" y="212" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4440" > +<father id="4452" num="2" /> +<cdparam x="441" y="90" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4441" > +<father id="4452" num="3" /> +<cdparam x="274" y="90" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4446" > +<father id="4452" num="4" /> +<cdparam x="311" y="146" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4442" /> +<TGConnectingPoint num="1" id="4443" /> +<TGConnectingPoint num="2" id="4444" /> +<TGConnectingPoint num="3" id="4445" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4461" > +<cdparam x="261" y="102" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4459" /> +<TGConnectingPoint num="1" id="4460" /> +<P1 x="261" y="102" id="4564" /> +<P2 x="374" y="167" id="4509" /> +<Point x="374" y="102" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4453" > +<father id="4461" num="0" /> +<cdparam x="374" y="102" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4458" > +<father id="4461" num="1" /> +<cdparam x="321" y="99" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4454" /> +<TGConnectingPoint num="1" id="4455" /> +<TGConnectingPoint num="2" id="4456" /> +<TGConnectingPoint num="3" id="4457" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4474" > +<cdparam x="153" y="198" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4470" /> +<TGConnectingPoint num="1" id="4471" /> +<TGConnectingPoint num="2" id="4472" /> +<TGConnectingPoint num="3" id="4473" /> +<P1 x="153" y="198" id="4532" /> +<P2 x="261" y="114" id="4565" /> +<Point x="153" y="216" /> +<Point x="309" y="216" /> +<Point x="309" y="114" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4462" > +<father id="4474" num="0" /> +<cdparam x="153" y="216" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4463" > +<father id="4474" num="1" /> +<cdparam x="309" y="216" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4464" > +<father id="4474" num="2" /> +<cdparam x="309" y="114" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4469" > +<father id="4474" num="3" /> +<cdparam x="153" y="238" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4465" /> +<TGConnectingPoint num="1" id="4466" /> +<TGConnectingPoint num="2" id="4467" /> +<TGConnectingPoint num="3" id="4468" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4487" > +<cdparam x="247" y="197" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4483" /> +<TGConnectingPoint num="1" id="4484" /> +<TGConnectingPoint num="2" id="4485" /> +<TGConnectingPoint num="3" id="4486" /> +<P1 x="247" y="197" id="4521" /> +<P2 x="261" y="133" id="4555" /> +<Point x="247" y="207" /> +<Point x="298" y="207" /> +<Point x="298" y="133" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4475" > +<father id="4487" num="0" /> +<cdparam x="247" y="207" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4476" > +<father id="4487" num="1" /> +<cdparam x="298" y="207" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4477" > +<father id="4487" num="2" /> +<cdparam x="298" y="133" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4482" > +<father id="4487" num="3" /> +<cdparam x="247" y="237" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4478" /> +<TGConnectingPoint num="1" id="4479" /> +<TGConnectingPoint num="2" id="4480" /> +<TGConnectingPoint num="3" id="4481" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4494" > +<cdparam x="186" y="62" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="4493" /> +<P1 x="186" y="62" id="4583" /> +<P2 x="211" y="96" id="4543" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4492" > +<father id="4494" num="0" /> +<cdparam x="211" y="104" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4488" /> +<TGConnectingPoint num="1" id="4489" /> +<TGConnectingPoint num="2" id="4490" /> +<TGConnectingPoint num="3" id="4491" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4501" > +<cdparam x="161" y="146" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="4500" /> +<P1 x="186" y="146" id="4556" /> +<P2 x="153" y="168" id="4531" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4499" > +<father id="4501" num="0" /> +<cdparam x="161" y="186" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4495" /> +<TGConnectingPoint num="1" id="4496" /> +<TGConnectingPoint num="2" id="4497" /> +<TGConnectingPoint num="3" id="4498" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4508" > +<cdparam x="211" y="201" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="4507" /> +<P1 x="236" y="146" id="4557" /> +<P2 x="247" y="167" id="4520" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4506" > +<father id="4508" num="0" /> +<cdparam x="211" y="241" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4502" /> +<TGConnectingPoint num="1" id="4503" /> +<TGConnectingPoint num="2" id="4504" /> +<TGConnectingPoint num="3" id="4505" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5104" id="4519" > +<cdparam x="317" y="172" /> +<sizeparam width="114" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="INerror_ground()" /> +<TGConnectingPoint num="0" id="4509" /> +<TGConnectingPoint num="1" id="4510" /> +<TGConnectingPoint num="2" id="4511" /> +<TGConnectingPoint num="3" id="4512" /> +<TGConnectingPoint num="4" id="4513" /> +<TGConnectingPoint num="5" id="4514" /> +<TGConnectingPoint num="6" id="4515" /> +<TGConnectingPoint num="7" id="4516" /> +<TGConnectingPoint num="8" id="4517" /> +<TGConnectingPoint num="9" id="4518" /> +</COMPONENT> + +<COMPONENT type="5103" id="4530" > +<cdparam x="209" y="172" /> +<sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="INconresp()" /> +<TGConnectingPoint num="0" id="4520" /> +<TGConnectingPoint num="1" id="4521" /> +<TGConnectingPoint num="2" id="4522" /> +<TGConnectingPoint num="3" id="4523" /> +<TGConnectingPoint num="4" id="4524" /> +<TGConnectingPoint num="5" id="4525" /> +<TGConnectingPoint num="6" id="4526" /> +<TGConnectingPoint num="7" id="4527" /> +<TGConnectingPoint num="8" id="4528" /> +<TGConnectingPoint num="9" id="4529" /> +</COMPONENT> + +<COMPONENT type="5104" id="4541" > +<cdparam x="115" y="173" /> +<sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="INconind()" /> +<TGConnectingPoint num="0" id="4531" /> +<TGConnectingPoint num="1" id="4532" /> +<TGConnectingPoint num="2" id="4533" /> +<TGConnectingPoint num="3" id="4534" /> +<TGConnectingPoint num="4" id="4535" /> +<TGConnectingPoint num="5" id="4536" /> +<TGConnectingPoint num="6" id="4537" /> +<TGConnectingPoint num="7" id="4538" /> +<TGConnectingPoint num="8" id="4539" /> +<TGConnectingPoint num="9" id="4540" /> +</COMPONENT> + +<COMPONENT type="5106" id="4582" > +<cdparam x="161" y="96" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="ACTIVE" /> +<TGConnectingPoint num="0" id="4542" /> +<TGConnectingPoint num="1" id="4543" /> +<TGConnectingPoint num="2" id="4544" /> +<TGConnectingPoint num="3" id="4545" /> +<TGConnectingPoint num="4" id="4546" /> +<TGConnectingPoint num="5" id="4547" /> +<TGConnectingPoint num="6" id="4548" /> +<TGConnectingPoint num="7" id="4549" /> +<TGConnectingPoint num="8" id="4550" /> +<TGConnectingPoint num="9" id="4551" /> +<TGConnectingPoint num="10" id="4552" /> +<TGConnectingPoint num="11" id="4553" /> +<TGConnectingPoint num="12" id="4554" /> +<TGConnectingPoint num="13" id="4555" /> +<TGConnectingPoint num="14" id="4556" /> +<TGConnectingPoint num="15" id="4557" /> +<TGConnectingPoint num="16" id="4558" /> +<TGConnectingPoint num="17" id="4559" /> +<TGConnectingPoint num="18" id="4560" /> +<TGConnectingPoint num="19" id="4561" /> +<TGConnectingPoint num="20" id="4562" /> +<TGConnectingPoint num="21" id="4563" /> +<TGConnectingPoint num="22" id="4564" /> +<TGConnectingPoint num="23" id="4565" /> +<TGConnectingPoint num="24" id="4566" /> +<TGConnectingPoint num="25" id="4567" /> +<TGConnectingPoint num="26" id="4568" /> +<TGConnectingPoint num="27" id="4569" /> +<TGConnectingPoint num="28" id="4570" /> +<TGConnectingPoint num="29" id="4571" /> +<TGConnectingPoint num="30" id="4572" /> +<TGConnectingPoint num="31" id="4573" /> +<TGConnectingPoint num="32" id="4574" /> +<TGConnectingPoint num="33" id="4575" /> +<TGConnectingPoint num="34" id="4576" /> +<TGConnectingPoint num="35" id="4577" /> +<TGConnectingPoint num="36" id="4578" /> +<TGConnectingPoint num="37" id="4579" /> +<TGConnectingPoint num="38" id="4580" /> +<TGConnectingPoint num="39" id="4581" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="4584" > +<cdparam x="179" y="42" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="4583" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="Pilot" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="4597" > +<cdparam x="261" y="165" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4593" /> +<TGConnectingPoint num="1" id="4594" /> +<TGConnectingPoint num="2" id="4595" /> +<TGConnectingPoint num="3" id="4596" /> +<P1 x="271" y="165" id="4653" /> +<P2 x="216" y="109" id="4714" /> +<Point x="271" y="173" /> +<Point x="320" y="173" /> +<Point x="320" y="109" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4585" > +<father id="4597" num="0" /> +<cdparam x="271" y="173" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4586" > +<father id="4597" num="1" /> +<cdparam x="320" y="173" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4587" > +<father id="4597" num="2" /> +<cdparam x="320" y="109" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4592" > +<father id="4597" num="3" /> +<cdparam x="238" y="137" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4588" /> +<TGConnectingPoint num="1" id="4589" /> +<TGConnectingPoint num="2" id="4590" /> +<TGConnectingPoint num="3" id="4591" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4610" > +<cdparam x="79" y="166" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4606" /> +<TGConnectingPoint num="1" id="4607" /> +<TGConnectingPoint num="2" id="4608" /> +<TGConnectingPoint num="3" id="4609" /> +<P1 x="79" y="166" id="4675" /> +<P2 x="216" y="78" id="4698" /> +<Point x="79" y="189" /> +<Point x="341" y="189" /> +<Point x="341" y="78" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4598" > +<father id="4610" num="0" /> +<cdparam x="79" y="189" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4599" > +<father id="4610" num="1" /> +<cdparam x="341" y="189" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4600" > +<father id="4610" num="2" /> +<cdparam x="341" y="78" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4605" > +<father id="4610" num="3" /> +<cdparam x="79" y="206" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4601" /> +<TGConnectingPoint num="1" id="4602" /> +<TGConnectingPoint num="2" id="4603" /> +<TGConnectingPoint num="3" id="4604" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4623" > +<cdparam x="177" y="166" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4619" /> +<TGConnectingPoint num="1" id="4620" /> +<TGConnectingPoint num="2" id="4621" /> +<TGConnectingPoint num="3" id="4622" /> +<P1 x="177" y="166" id="4664" /> +<P2 x="216" y="91" id="4691" /> +<Point x="177" y="183" /> +<Point x="330" y="183" /> +<Point x="330" y="91" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4611" > +<father id="4623" num="0" /> +<cdparam x="177" y="183" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4612" > +<father id="4623" num="1" /> +<cdparam x="330" y="183" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4613" > +<father id="4623" num="2" /> +<cdparam x="330" y="91" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="4618" > +<father id="4623" num="3" /> +<cdparam x="177" y="206" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4614" /> +<TGConnectingPoint num="1" id="4615" /> +<TGConnectingPoint num="2" id="4616" /> +<TGConnectingPoint num="3" id="4617" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4630" > +<cdparam x="165" y="44" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="4629" /> +<P1 x="165" y="44" id="4685" /> +<P2 x="166" y="66" id="4688" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4628" > +<father id="4630" num="0" /> +<cdparam x="165" y="84" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4624" /> +<TGConnectingPoint num="1" id="4625" /> +<TGConnectingPoint num="2" id="4626" /> +<TGConnectingPoint num="3" id="4627" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4637" > +<cdparam x="178" y="116" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="4636" /> +<P1 x="128" y="116" id="4715" /> +<P2 x="79" y="136" id="4674" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4635" > +<father id="4637" num="0" /> +<cdparam x="178" y="156" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4631" /> +<TGConnectingPoint num="1" id="4632" /> +<TGConnectingPoint num="2" id="4633" /> +<TGConnectingPoint num="3" id="4634" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4644" > +<cdparam x="178" y="168" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="4643" /> +<P1 x="166" y="116" id="4693" /> +<P2 x="177" y="136" id="4663" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4642" > +<father id="4644" num="0" /> +<cdparam x="178" y="208" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4638" /> +<TGConnectingPoint num="1" id="4639" /> +<TGConnectingPoint num="2" id="4640" /> +<TGConnectingPoint num="3" id="4641" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="4651" > +<cdparam x="216" y="116" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="4650" /> +<P1 x="216" y="116" id="4694" /> +<P2 x="271" y="135" id="4652" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="4649" > +<father id="4651" num="0" /> +<cdparam x="246" y="129" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="4645" /> +<TGConnectingPoint num="1" id="4646" /> +<TGConnectingPoint num="2" id="4647" /> +<TGConnectingPoint num="3" id="4648" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5104" id="4662" > +<cdparam x="238" y="140" /> +<sizeparam width="67" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="INerror()" /> +<TGConnectingPoint num="0" id="4652" /> +<TGConnectingPoint num="1" id="4653" /> +<TGConnectingPoint num="2" id="4654" /> +<TGConnectingPoint num="3" id="4655" /> +<TGConnectingPoint num="4" id="4656" /> +<TGConnectingPoint num="5" id="4657" /> +<TGConnectingPoint num="6" id="4658" /> +<TGConnectingPoint num="7" id="4659" /> +<TGConnectingPoint num="8" id="4660" /> +<TGConnectingPoint num="9" id="4661" /> +</COMPONENT> + +<COMPONENT type="5104" id="4673" > +<cdparam x="136" y="141" /> +<sizeparam width="82" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="INconconf()" /> +<TGConnectingPoint num="0" id="4663" /> +<TGConnectingPoint num="1" id="4664" /> +<TGConnectingPoint num="2" id="4665" /> +<TGConnectingPoint num="3" id="4666" /> +<TGConnectingPoint num="4" id="4667" /> +<TGConnectingPoint num="5" id="4668" /> +<TGConnectingPoint num="6" id="4669" /> +<TGConnectingPoint num="7" id="4670" /> +<TGConnectingPoint num="8" id="4671" /> +<TGConnectingPoint num="9" id="4672" /> +</COMPONENT> + +<COMPONENT type="5103" id="4684" > +<cdparam x="44" y="141" /> +<sizeparam width="70" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="INconreq()" /> +<TGConnectingPoint num="0" id="4674" /> +<TGConnectingPoint num="1" id="4675" /> +<TGConnectingPoint num="2" id="4676" /> +<TGConnectingPoint num="3" id="4677" /> +<TGConnectingPoint num="4" id="4678" /> +<TGConnectingPoint num="5" id="4679" /> +<TGConnectingPoint num="6" id="4680" /> +<TGConnectingPoint num="7" id="4681" /> +<TGConnectingPoint num="8" id="4682" /> +<TGConnectingPoint num="9" id="4683" /> +</COMPONENT> + +<COMPONENT type="5100" id="4686" > +<cdparam x="158" y="24" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="4685" /> +</COMPONENT> + +<COMPONENT type="5106" id="4727" > +<cdparam x="116" y="66" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="ACTIVE" /> +<TGConnectingPoint num="0" id="4687" /> +<TGConnectingPoint num="1" id="4688" /> +<TGConnectingPoint num="2" id="4689" /> +<TGConnectingPoint num="3" id="4690" /> +<TGConnectingPoint num="4" id="4691" /> +<TGConnectingPoint num="5" id="4692" /> +<TGConnectingPoint num="6" id="4693" /> +<TGConnectingPoint num="7" id="4694" /> +<TGConnectingPoint num="8" id="4695" /> +<TGConnectingPoint num="9" id="4696" /> +<TGConnectingPoint num="10" id="4697" /> +<TGConnectingPoint num="11" id="4698" /> +<TGConnectingPoint num="12" id="4699" /> +<TGConnectingPoint num="13" id="4700" /> +<TGConnectingPoint num="14" id="4701" /> +<TGConnectingPoint num="15" id="4702" /> +<TGConnectingPoint num="16" id="4703" /> +<TGConnectingPoint num="17" id="4704" /> +<TGConnectingPoint num="18" id="4705" /> +<TGConnectingPoint num="19" id="4706" /> +<TGConnectingPoint num="20" id="4707" /> +<TGConnectingPoint num="21" id="4708" /> +<TGConnectingPoint num="22" id="4709" /> +<TGConnectingPoint num="23" id="4710" /> +<TGConnectingPoint num="24" id="4711" /> +<TGConnectingPoint num="25" id="4712" /> +<TGConnectingPoint num="26" id="4713" /> +<TGConnectingPoint num="27" id="4714" /> +<TGConnectingPoint num="28" id="4715" /> +<TGConnectingPoint num="29" id="4716" /> +<TGConnectingPoint num="30" id="4717" /> +<TGConnectingPoint num="31" id="4718" /> +<TGConnectingPoint num="32" id="4719" /> +<TGConnectingPoint num="33" id="4720" /> +<TGConnectingPoint num="34" id="4721" /> +<TGConnectingPoint num="35" id="4722" /> +<TGConnectingPoint num="36" id="4723" /> +<TGConnectingPoint num="37" id="4724" /> +<TGConnectingPoint num="38" id="4725" /> +<TGConnectingPoint num="39" id="4726" /> +<extraparam> +</extraparam> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +</Modeling> + + + + +</TURTLEGMODELING> \ No newline at end of file diff --git a/ttool/src/test/resources/ui/diagram2avatar/input/ebook_reader_01.xml b/ttool/src/test/resources/ui/diagram2avatar/input/ebook_reader_01.xml new file mode 100644 index 0000000000000000000000000000000000000000..186d52671d4de03c396fdc74ef63229c013a3f4d --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/input/ebook_reader_01.xml @@ -0,0 +1,3797 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> + +<TURTLEGMODELING version="0.99-beta4"> + +<Modeling type="AVATAR Design" nameTab="AVATAR Design" > +<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="1400" minY="10" maxY="900" > +<MainCode value="void __user_init() {"/> +<MainCode value="}"/> +<Optimized value="true" /> +<Validated value="PageLoader;UserModel;DisplayDriver;EReaderController;" /> +<Ignored value="" /> + +<CONNECTOR type="5002" id="2" > +<cdparam x="504" y="199" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block0 to Block0" value="" /> +<TGConnectingPoint num="0" id="1" /> +<P1 x="491" y="260" id="57" /> +<P2 x="491" y="282" id="127" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in loadPage(Document doc, int pageid)" /> +<osd value="out loadPage(Document doc, int pageid)" /> +<isd value="in getPage(Page aPage)" /> +<oso value="out pageReady(Page aPage)" /> +<FIFOType asynchronous="true" size="4" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="5002" id="4" > +<cdparam x="490" y="519" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block0 to Block0" value="" /> +<TGConnectingPoint num="0" id="3" /> +<P1 x="639" y="375" id="79" /> +<P2 x="606" y="374" id="130" /> +<AutomaticDrawing data="true" /> +<extraparam> +<isd value="in home()" /> +<isd value="in openDocument(Document doc)" /> +<isd value="in flipNextPage()" /> +<isd value="in flipPreviousPage()" /> +<isd value="in goToPage(int index)" /> +<oso value="out home()" /> +<oso value="out openDocument(Document doc)" /> +<oso value="out flipNextPage()" /> +<oso value="out flipPreviousPage()" /> +<oso value="out goToPage(int index)" /> +<FIFOType asynchronous="true" size="10" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="5002" id="6" > +<cdparam x="248" y="317" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Block0 to Block0" value="" /> +<TGConnectingPoint num="0" id="5" /> +<P1 x="342" y="375" id="105" /> +<P2 x="377" y="374" id="129" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in displayPage(Page page)" /> +<osd value="out displayPage(Page page)" /> +<FIFOType asynchronous="false" size="1" blocking="false" private="true" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<COMPONENT type="5003" id="15" > +<cdparam x="633" y="78" /> +<sizeparam width="212" height="167" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DataType0" value="MemoryForPages" /> +<TGConnectingPoint num="0" id="7" /> +<TGConnectingPoint num="1" id="8" /> +<TGConnectingPoint num="2" id="9" /> +<TGConnectingPoint num="3" id="10" /> +<TGConnectingPoint num="4" id="11" /> +<TGConnectingPoint num="5" id="12" /> +<TGConnectingPoint num="6" id="13" /> +<TGConnectingPoint num="7" id="14" /> +<extraparam> +<Attribute access="0" id="index1" value="" type="8" typeOther="" /> +<Attribute access="0" id="data1" value="" type="8" typeOther="" /> +<Attribute access="0" id="index2" value="" type="8" typeOther="" /> +<Attribute access="0" id="data2" value="" type="8" typeOther="" /> +<Attribute access="0" id="index3" value="" type="8" typeOther="" /> +<Attribute access="0" id="data3" value="" type="8" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="32" > +<cdparam x="636" y="10" /> +<sizeparam width="366" height="27" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value="Add the possibility to prefetch pages, and keep the old +ones in memory (for example, the three last!) +" /> +<TGConnectingPoint num="0" id="16" /> +<TGConnectingPoint num="1" id="17" /> +<TGConnectingPoint num="2" id="18" /> +<TGConnectingPoint num="3" id="19" /> +<TGConnectingPoint num="4" id="20" /> +<TGConnectingPoint num="5" id="21" /> +<TGConnectingPoint num="6" id="22" /> +<TGConnectingPoint num="7" id="23" /> +<TGConnectingPoint num="8" id="24" /> +<TGConnectingPoint num="9" id="25" /> +<TGConnectingPoint num="10" id="26" /> +<TGConnectingPoint num="11" id="27" /> +<TGConnectingPoint num="12" id="28" /> +<TGConnectingPoint num="13" id="29" /> +<TGConnectingPoint num="14" id="30" /> +<TGConnectingPoint num="15" id="31" /> +<extraparam> +<Line value="Add the possibility to prefetch pages, and keep the old" /> +<Line value="ones in memory (for example, the three last!)" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5003" id="41" > +<cdparam x="147" y="167" /> +<sizeparam width="163" height="96" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DataType0" value="Page" /> +<TGConnectingPoint num="0" id="33" /> +<TGConnectingPoint num="1" id="34" /> +<TGConnectingPoint num="2" id="35" /> +<TGConnectingPoint num="3" id="36" /> +<TGConnectingPoint num="4" id="37" /> +<TGConnectingPoint num="5" id="38" /> +<TGConnectingPoint num="6" id="39" /> +<TGConnectingPoint num="7" id="40" /> +<extraparam> +<Attribute access="0" id="data" value="" type="8" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5003" id="50" > +<cdparam x="148" y="66" /> +<sizeparam width="162" height="92" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DataType0" value="Document" /> +<TGConnectingPoint num="0" id="42" /> +<TGConnectingPoint num="1" id="43" /> +<TGConnectingPoint num="2" id="44" /> +<TGConnectingPoint num="3" id="45" /> +<TGConnectingPoint num="4" id="46" /> +<TGConnectingPoint num="5" id="47" /> +<TGConnectingPoint num="6" id="48" /> +<TGConnectingPoint num="7" id="49" /> +<extraparam> +<Attribute access="0" id="id" value="" type="8" typeOther="" /> +<Attribute access="0" id="nbOfPages" value="" type="8" typeOther="" /> +<Attribute access="0" id="currentPage" value="0" type="8" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="75" > +<cdparam x="379" y="69" /> +<sizeparam width="225" height="191" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="PageLoader" /> +<TGConnectingPoint num="0" id="51" /> +<TGConnectingPoint num="1" id="52" /> +<TGConnectingPoint num="2" id="53" /> +<TGConnectingPoint num="3" id="54" /> +<TGConnectingPoint num="4" id="55" /> +<TGConnectingPoint num="5" id="56" /> +<TGConnectingPoint num="6" id="57" /> +<TGConnectingPoint num="7" id="58" /> +<TGConnectingPoint num="8" id="59" /> +<TGConnectingPoint num="9" id="60" /> +<TGConnectingPoint num="10" id="61" /> +<TGConnectingPoint num="11" id="62" /> +<TGConnectingPoint num="12" id="63" /> +<TGConnectingPoint num="13" id="64" /> +<TGConnectingPoint num="14" id="65" /> +<TGConnectingPoint num="15" id="66" /> +<TGConnectingPoint num="16" id="67" /> +<TGConnectingPoint num="17" id="68" /> +<TGConnectingPoint num="18" id="69" /> +<TGConnectingPoint num="19" id="70" /> +<TGConnectingPoint num="20" id="71" /> +<TGConnectingPoint num="21" id="72" /> +<TGConnectingPoint num="22" id="73" /> +<TGConnectingPoint num="23" id="74" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="doc" value="" type="5" typeOther="Document" /> +<Attribute access="0" id="page" value="" type="5" typeOther="Page" /> +<Attribute access="0" id="pageid" value="" type="8" typeOther="" /> +<Attribute access="0" id="minPageLoadingTime" value="10" type="8" typeOther="" /> +<Attribute access="0" id="maxPageLoadingTime" value="2000" type="8" typeOther="" /> +<Attribute access="0" id="x" value="" type="8" typeOther="" /> +<Attribute access="0" id="memoryPageAccessTime" value="2" type="8" typeOther="" /> +<Attribute access="0" id="memory" value="" type="5" typeOther="MemoryForPages" /> +<Signal value="in loadPage(Document doc, int pageid)" attached="true" /> +<Signal value="out pageReady(Page aPage)" attached="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="100" > +<cdparam x="639" y="283" /> +<sizeparam width="198" height="184" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="UserModel" /> +<TGConnectingPoint num="0" id="76" /> +<TGConnectingPoint num="1" id="77" /> +<TGConnectingPoint num="2" id="78" /> +<TGConnectingPoint num="3" id="79" /> +<TGConnectingPoint num="4" id="80" /> +<TGConnectingPoint num="5" id="81" /> +<TGConnectingPoint num="6" id="82" /> +<TGConnectingPoint num="7" id="83" /> +<TGConnectingPoint num="8" id="84" /> +<TGConnectingPoint num="9" id="85" /> +<TGConnectingPoint num="10" id="86" /> +<TGConnectingPoint num="11" id="87" /> +<TGConnectingPoint num="12" id="88" /> +<TGConnectingPoint num="13" id="89" /> +<TGConnectingPoint num="14" id="90" /> +<TGConnectingPoint num="15" id="91" /> +<TGConnectingPoint num="16" id="92" /> +<TGConnectingPoint num="17" id="93" /> +<TGConnectingPoint num="18" id="94" /> +<TGConnectingPoint num="19" id="95" /> +<TGConnectingPoint num="20" id="96" /> +<TGConnectingPoint num="21" id="97" /> +<TGConnectingPoint num="22" id="98" /> +<TGConnectingPoint num="23" id="99" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="doc1" value="" type="5" typeOther="Document" /> +<Attribute access="0" id="doc2" value="" type="5" typeOther="Document" /> +<Attribute access="0" id="index" value="" type="8" typeOther="" /> +<Signal value="out home()" attached="false" /> +<Signal value="out openDocument(Document doc)" attached="true" /> +<Signal value="out flipNextPage()" attached="true" /> +<Signal value="out flipPreviousPage()" attached="false" /> +<Signal value="out goToPage(int index)" attached="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="125" > +<cdparam x="92" y="287" /> +<sizeparam width="250" height="177" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="DisplayDriver" /> +<TGConnectingPoint num="0" id="101" /> +<TGConnectingPoint num="1" id="102" /> +<TGConnectingPoint num="2" id="103" /> +<TGConnectingPoint num="3" id="104" /> +<TGConnectingPoint num="4" id="105" /> +<TGConnectingPoint num="5" id="106" /> +<TGConnectingPoint num="6" id="107" /> +<TGConnectingPoint num="7" id="108" /> +<TGConnectingPoint num="8" id="109" /> +<TGConnectingPoint num="9" id="110" /> +<TGConnectingPoint num="10" id="111" /> +<TGConnectingPoint num="11" id="112" /> +<TGConnectingPoint num="12" id="113" /> +<TGConnectingPoint num="13" id="114" /> +<TGConnectingPoint num="14" id="115" /> +<TGConnectingPoint num="15" id="116" /> +<TGConnectingPoint num="16" id="117" /> +<TGConnectingPoint num="17" id="118" /> +<TGConnectingPoint num="18" id="119" /> +<TGConnectingPoint num="19" id="120" /> +<TGConnectingPoint num="20" id="121" /> +<TGConnectingPoint num="21" id="122" /> +<TGConnectingPoint num="22" id="123" /> +<TGConnectingPoint num="23" id="124" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="page" value="" type="5" typeOther="Page" /> +<Attribute access="0" id="data" value="" type="8" typeOther="" /> +<Method value="printPage(int data)" /> +<Signal value="in displayPage(Page page)" attached="true" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="150" > +<cdparam x="377" y="282" /> +<sizeparam width="229" height="184" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Block0" value="EReaderController" /> +<TGConnectingPoint num="0" id="126" /> +<TGConnectingPoint num="1" id="127" /> +<TGConnectingPoint num="2" id="128" /> +<TGConnectingPoint num="3" id="129" /> +<TGConnectingPoint num="4" id="130" /> +<TGConnectingPoint num="5" id="131" /> +<TGConnectingPoint num="6" id="132" /> +<TGConnectingPoint num="7" id="133" /> +<TGConnectingPoint num="8" id="134" /> +<TGConnectingPoint num="9" id="135" /> +<TGConnectingPoint num="10" id="136" /> +<TGConnectingPoint num="11" id="137" /> +<TGConnectingPoint num="12" id="138" /> +<TGConnectingPoint num="13" id="139" /> +<TGConnectingPoint num="14" id="140" /> +<TGConnectingPoint num="15" id="141" /> +<TGConnectingPoint num="16" id="142" /> +<TGConnectingPoint num="17" id="143" /> +<TGConnectingPoint num="18" id="144" /> +<TGConnectingPoint num="19" id="145" /> +<TGConnectingPoint num="20" id="146" /> +<TGConnectingPoint num="21" id="147" /> +<TGConnectingPoint num="22" id="148" /> +<TGConnectingPoint num="23" id="149" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="currentDocument" value="" type="5" typeOther="Document" /> +<Attribute access="0" id="currentPage" value="" type="8" typeOther="" /> +<Attribute access="0" id="page" value="" type="5" typeOther="Page" /> +<Signal value="out displayPage(Page page)" attached="true" /> +<Signal value="in openDocument(Document doc)" attached="true" /> +<Signal value="in flipNextPage()" attached="true" /> +<Signal value="in flipPreviousPage()" attached="true" /> +<Signal value="in goToPage(int index)" attached="true" /> +<Signal value="in home()" attached="true" /> +<Signal value="out loadPage(Document doc, int pageid)" attached="true" /> +<Signal value="in getPage(Page aPage)" attached="true" /> +</extraparam> +</COMPONENT> + + +</AVATARBlockDiagramPanel> + +<AVATARStateMachineDiagramPanel name="PageLoader" minX="10" maxX="1400" minY="10" maxY="1900" > +<CONNECTOR type="5102" id="159" > +<cdparam x="403" y="844" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to state0" value="null" /> +<TGConnectingPoint num="0" id="157" /> +<TGConnectingPoint num="1" id="158" /> +<P1 x="403" y="844" id="369" /> +<P2 x="703" y="1149" id="392" /> +<Point x="703" y="1048" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="151" > +<father id="159" num="0" /> +<cdparam x="703" y="1048" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="156" > +<father id="159" num="1" /> +<cdparam x="476" y="889" /> +<sizeparam width="44" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="152" /> +<TGConnectingPoint num="1" id="153" /> +<TGConnectingPoint num="2" id="154" /> +<TGConnectingPoint num="3" id="155" /> +<extraparam> +<guard value="[ else ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="168" > +<cdparam x="409" y="1462" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to state0" value="null" /> +<TGConnectingPoint num="0" id="166" /> +<TGConnectingPoint num="1" id="167" /> +<P1 x="400" y="1459" id="873" /> +<P2 x="631" y="1199" id="389" /> +<Point x="631" y="1459" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="160" > +<father id="168" num="0" /> +<cdparam x="631" y="1459" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="165" > +<father id="168" num="1" /> +<cdparam x="562" y="1447" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="161" /> +<TGConnectingPoint num="1" id="162" /> +<TGConnectingPoint num="2" id="163" /> +<TGConnectingPoint num="3" id="164" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="175" > +<cdparam x="256" y="1075" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to TGComponent" value="null" /> +<TGConnectingPoint num="0" id="174" /> +<P1 x="256" y="1075" id="942" /> +<P2 x="263" y="1113" id="985" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="173" > +<father id="175" num="0" /> +<cdparam x="148" y="1101" /> +<sizeparam width="315" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="169" /> +<TGConnectingPoint num="1" id="170" /> +<TGConnectingPoint num="2" id="171" /> +<TGConnectingPoint num="3" id="172" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="minPageLoadingTime" /> +<afterMax value="maxPageLoadingTime" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="182" > +<cdparam x="257" y="1176" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to state0" value="null" /> +<TGConnectingPoint num="0" id="181" /> +<P1 x="263" y="1205" id="950" /> +<P2 x="263" y="1270" id="902" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="180" > +<father id="182" num="0" /> +<cdparam x="257" y="1216" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="176" /> +<TGConnectingPoint num="1" id="177" /> +<TGConnectingPoint num="2" id="178" /> +<TGConnectingPoint num="3" id="179" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="189" > +<cdparam x="206" y="1353" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to state0" value="null" /> +<TGConnectingPoint num="0" id="188" /> +<P1 x="263" y="1312" id="907" /> +<P2 x="263" y="1431" id="861" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="187" > +<father id="189" num="0" /> +<cdparam x="273" y="1333" /> +<sizeparam width="206" height="90" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="183" /> +<TGConnectingPoint num="1" id="184" /> +<TGConnectingPoint num="2" id="185" /> +<TGConnectingPoint num="3" id="186" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="memory.index1 = memory.index2" /> +<actions value="memory.data1 = memory.data2" /> +<actions value="memory.index2 = memory.index3" /> +<actions value="memory.data2 = memory.data3" /> +<actions value="memory.index3 = pageid" /> +<actions value="memory.data3 = x" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="196" > +<cdparam x="265" y="1112" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to state0" value="null" /> +<TGConnectingPoint num="0" id="195" /> +<P1 x="263" y="1143" id="986" /> +<P2 x="263" y="1155" id="945" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="194" > +<father id="196" num="0" /> +<cdparam x="265" y="1152" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="190" /> +<TGConnectingPoint num="1" id="191" /> +<TGConnectingPoint num="2" id="192" /> +<TGConnectingPoint num="3" id="193" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="203" > +<cdparam x="414" y="820" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to choice" value="null" /> +<TGConnectingPoint num="0" id="202" /> +<P1 x="378" y="779" id="425" /> +<P2 x="378" y="819" id="367" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="201" > +<father id="203" num="0" /> +<cdparam x="391" y="807" /> +<sizeparam width="130" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="197" /> +<TGConnectingPoint num="1" id="198" /> +<TGConnectingPoint num="2" id="199" /> +<TGConnectingPoint num="3" id="200" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="pageid = pageid + 1" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="210" > +<cdparam x="459" y="979" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="209" /> +<P1 x="385" y="1078" id="999" /> +<P2 x="559" y="1078" id="838" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="208" > +<father id="210" num="0" /> +<cdparam x="459" y="1019" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="204" /> +<TGConnectingPoint num="1" id="205" /> +<TGConnectingPoint num="2" id="206" /> +<TGConnectingPoint num="3" id="207" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="223" > +<cdparam x="1046" y="703" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to state0" value="null" /> +<TGConnectingPoint num="0" id="219" /> +<TGConnectingPoint num="1" id="220" /> +<TGConnectingPoint num="2" id="221" /> +<TGConnectingPoint num="3" id="222" /> +<P1 x="1046" y="703" id="662" /> +<P2 x="560" y="295" id="578" /> +<Point x="1046" y="731" /> +<Point x="1153" y="731" /> +<Point x="1153" y="378" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="211" > +<father id="223" num="0" /> +<cdparam x="1046" y="731" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="212" > +<father id="223" num="1" /> +<cdparam x="1153" y="731" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="213" > +<father id="223" num="2" /> +<cdparam x="1153" y="378" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="218" > +<father id="223" num="3" /> +<cdparam x="1046" y="743" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="214" /> +<TGConnectingPoint num="1" id="215" /> +<TGConnectingPoint num="2" id="216" /> +<TGConnectingPoint num="3" id="217" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="234" > +<cdparam x="647" y="977" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to state0" value="null" /> +<TGConnectingPoint num="0" id="231" /> +<TGConnectingPoint num="1" id="232" /> +<TGConnectingPoint num="2" id="233" /> +<P1 x="679" y="947" id="545" /> +<P2 x="428" y="709" id="448" /> +<Point x="527" y="823" /> +<Point x="493" y="709" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="224" > +<father id="234" num="0" /> +<cdparam x="527" y="823" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="225" > +<father id="234" num="1" /> +<cdparam x="493" y="709" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="230" > +<father id="234" num="2" /> +<cdparam x="647" y="1017" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="226" /> +<TGConnectingPoint num="1" id="227" /> +<TGConnectingPoint num="2" id="228" /> +<TGConnectingPoint num="3" id="229" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="243" > +<cdparam x="459" y="427" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to state0" value="null" /> +<TGConnectingPoint num="0" id="241" /> +<TGConnectingPoint num="1" id="242" /> +<P1 x="422" y="361" id="519" /> +<P2 x="735" y="510" id="798" /> +<Point x="735" y="443" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="235" > +<father id="243" num="0" /> +<cdparam x="735" y="443" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="240" > +<father id="243" num="1" /> +<cdparam x="591" y="430" /> +<sizeparam width="44" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="236" /> +<TGConnectingPoint num="1" id="237" /> +<TGConnectingPoint num="2" id="238" /> +<TGConnectingPoint num="3" id="239" /> +<extraparam> +<guard value="[ else ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="254" > +<cdparam x="459" y="427" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to state0" value="null" /> +<TGConnectingPoint num="0" id="251" /> +<TGConnectingPoint num="1" id="252" /> +<TGConnectingPoint num="2" id="253" /> +<P1 x="397" y="386" id="520" /> +<P2 x="392" y="511" id="480" /> +<Point x="440" y="406" /> +<Point x="441" y="488" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="244" > +<father id="254" num="0" /> +<cdparam x="440" y="406" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="245" > +<father id="254" num="1" /> +<cdparam x="441" y="488" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="250" > +<father id="254" num="2" /> +<cdparam x="350" y="446" /> +<sizeparam width="179" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="246" /> +<TGConnectingPoint num="1" id="247" /> +<TGConnectingPoint num="2" id="248" /> +<TGConnectingPoint num="3" id="249" /> +<extraparam> +<guard value="[pageid == memory.index3 ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="page.data = memory.data3" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="261" > +<cdparam x="409" y="427" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to state0" value="null" /> +<TGConnectingPoint num="0" id="260" /> +<P1 x="372" y="361" id="518" /> +<P2 x="276" y="486" id="484" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="259" > +<father id="261" num="0" /> +<cdparam x="200" y="368" /> +<sizeparam width="179" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="255" /> +<TGConnectingPoint num="1" id="256" /> +<TGConnectingPoint num="2" id="257" /> +<TGConnectingPoint num="3" id="258" /> +<extraparam> +<guard value="[ pageid == memory.index1]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="page.data = memory.data1" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="268" > +<cdparam x="766" y="710" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="267" /> +<P1 x="816" y="710" id="703" /> +<P2 x="816" y="762" id="616" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="266" > +<father id="268" num="0" /> +<cdparam x="766" y="750" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="262" /> +<TGConnectingPoint num="1" id="263" /> +<TGConnectingPoint num="2" id="264" /> +<TGConnectingPoint num="3" id="265" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="275" > +<cdparam x="760" y="560" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="274" /> +<P1 x="934" y="567" id="808" /> +<P2 x="1046" y="605" id="781" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="273" > +<father id="275" num="0" /> +<cdparam x="760" y="600" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="269" /> +<TGConnectingPoint num="1" id="270" /> +<TGConnectingPoint num="2" id="271" /> +<TGConnectingPoint num="3" id="272" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="282" > +<cdparam x="859" y="632" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to state0" value="null" /> +<TGConnectingPoint num="0" id="281" /> +<P1 x="1046" y="635" id="782" /> +<P2 x="1046" y="653" id="657" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="280" > +<father id="282" num="0" /> +<cdparam x="859" y="672" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="276" /> +<TGConnectingPoint num="1" id="277" /> +<TGConnectingPoint num="2" id="278" /> +<TGConnectingPoint num="3" id="279" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="289" > +<cdparam x="428" y="125" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="288" /> +<P1 x="428" y="125" id="779" /> +<P2 x="428" y="166" id="739" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="287" > +<father id="289" num="0" /> +<cdparam x="428" y="165" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="283" /> +<TGConnectingPoint num="1" id="284" /> +<TGConnectingPoint num="2" id="285" /> +<TGConnectingPoint num="3" id="286" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="296" > +<cdparam x="428" y="216" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="295" /> +<P1 x="428" y="216" id="744" /> +<P2 x="428" y="223" id="849" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="294" > +<father id="296" num="0" /> +<cdparam x="428" y="256" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="290" /> +<TGConnectingPoint num="1" id="291" /> +<TGConnectingPoint num="2" id="292" /> +<TGConnectingPoint num="3" id="293" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="303" > +<cdparam x="428" y="272" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to state0" value="null" /> +<TGConnectingPoint num="0" id="302" /> +<P1 x="428" y="253" id="850" /> +<P2 x="428" y="270" id="575" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="301" > +<father id="303" num="0" /> +<cdparam x="428" y="312" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="297" /> +<TGConnectingPoint num="1" id="298" /> +<TGConnectingPoint num="2" id="299" /> +<TGConnectingPoint num="3" id="300" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="310" > +<cdparam x="685" y="560" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to state0" value="null" /> +<TGConnectingPoint num="0" id="309" /> +<P1 x="864" y="565" id="792" /> +<P2 x="858" y="606" id="794" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="308" > +<father id="310" num="0" /> +<cdparam x="574" y="578" /> +<sizeparam width="315" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="304" /> +<TGConnectingPoint num="1" id="305" /> +<TGConnectingPoint num="2" id="306" /> +<TGConnectingPoint num="3" id="307" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="minPageLoadingTime" /> +<afterMax value="maxPageLoadingTime" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="317" > +<cdparam x="714" y="662" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to state0" value="null" /> +<TGConnectingPoint num="0" id="316" /> +<P1 x="858" y="636" id="795" /> +<P2 x="816" y="660" id="698" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="315" > +<father id="317" num="0" /> +<cdparam x="719" y="648" /> +<sizeparam width="89" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="311" /> +<TGConnectingPoint num="1" id="312" /> +<TGConnectingPoint num="2" id="313" /> +<TGConnectingPoint num="3" id="314" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="page.data = x" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="324" > +<cdparam x="718" y="868" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to state0" value="null" /> +<TGConnectingPoint num="0" id="323" /> +<P1 x="816" y="804" id="621" /> +<P2 x="816" y="919" id="534" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="322" > +<father id="324" num="0" /> +<cdparam x="737" y="820" /> +<sizeparam width="206" height="90" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="318" /> +<TGConnectingPoint num="1" id="319" /> +<TGConnectingPoint num="2" id="320" /> +<TGConnectingPoint num="3" id="321" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="memory.index1 = memory.index2" /> +<actions value="memory.data1 = memory.data2" /> +<actions value="memory.index2 = memory.index3" /> +<actions value="memory.data2 = memory.data3" /> +<actions value="memory.index3 = pageid" /> +<actions value="memory.data3 = page.data" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="331" > +<cdparam x="434" y="368" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to choice" value="null" /> +<TGConnectingPoint num="0" id="330" /> +<P1 x="428" y="320" id="580" /> +<P2 x="397" y="336" id="517" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="329" > +<father id="331" num="0" /> +<cdparam x="434" y="408" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="325" /> +<TGConnectingPoint num="1" id="326" /> +<TGConnectingPoint num="2" id="327" /> +<TGConnectingPoint num="3" id="328" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="338" > +<cdparam x="434" y="452" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to state0" value="null" /> +<TGConnectingPoint num="0" id="337" /> +<P1 x="397" y="386" id="523" /> +<P2 x="315" y="486" id="477" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="336" > +<father id="338" num="0" /> +<cdparam x="272" y="436" /> +<sizeparam width="179" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="332" /> +<TGConnectingPoint num="1" id="333" /> +<TGConnectingPoint num="2" id="334" /> +<TGConnectingPoint num="3" id="335" /> +<extraparam> +<guard value="[pageid == memory.index2 ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="page.data = memory.data2" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="345" > +<cdparam x="380" y="628" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to state0" value="null" /> +<TGConnectingPoint num="0" id="344" /> +<P1 x="353" y="536" id="491" /> +<P2 x="353" y="672" id="443" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="343" > +<father id="345" num="0" /> +<cdparam x="201" y="658" /> +<sizeparam width="356" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="339" /> +<TGConnectingPoint num="1" id="340" /> +<TGConnectingPoint num="2" id="341" /> +<TGConnectingPoint num="3" id="342" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="memoryPageAccessTime" /> +<afterMax value="memoryPageAccessTime" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="352" > +<cdparam x="456" y="730" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to state0" value="null" /> +<TGConnectingPoint num="0" id="351" /> +<P1 x="378" y="722" id="441" /> +<P2 x="378" y="749" id="424" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="350" > +<father id="352" num="0" /> +<cdparam x="456" y="770" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="346" /> +<TGConnectingPoint num="1" id="347" /> +<TGConnectingPoint num="2" id="348" /> +<TGConnectingPoint num="3" id="349" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="359" > +<cdparam x="581" y="1079" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to state0" value="null" /> +<TGConnectingPoint num="0" id="358" /> +<P1 x="559" y="1108" id="839" /> +<P2 x="559" y="1149" id="391" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="357" > +<father id="359" num="0" /> +<cdparam x="581" y="1119" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="353" /> +<TGConnectingPoint num="1" id="354" /> +<TGConnectingPoint num="2" id="355" /> +<TGConnectingPoint num="3" id="356" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="366" > +<cdparam x="384" y="893" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to state0" value="null" /> +<TGConnectingPoint num="0" id="365" /> +<P1 x="378" y="869" id="373" /> +<P2 x="256" y="1028" id="989" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="364" > +<father id="366" num="0" /> +<cdparam x="26" y="1011" /> +<sizeparam width="910" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="360" /> +<TGConnectingPoint num="1" id="361" /> +<TGConnectingPoint num="2" id="362" /> +<TGConnectingPoint num="3" id="363" /> +<extraparam> +<guard value="[(pageid < doc.nbOfPages) and (not(memory.index1 == pageid)) and (not(memory.index2 == pageid)) and (not(memory.index3 == pageid)) ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5107" id="382" > +<cdparam x="363" y="829" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="367" /> +<TGConnectingPoint num="1" id="368" /> +<TGConnectingPoint num="2" id="369" /> +<TGConnectingPoint num="3" id="370" /> +<TGConnectingPoint num="4" id="371" /> +<TGConnectingPoint num="5" id="372" /> +<TGConnectingPoint num="6" id="373" /> +<TGConnectingPoint num="7" id="374" /> +<TGConnectingPoint num="8" id="375" /> +<TGConnectingPoint num="9" id="376" /> +<TGConnectingPoint num="10" id="377" /> +<TGConnectingPoint num="11" id="378" /> +<TGConnectingPoint num="12" id="379" /> +<TGConnectingPoint num="13" id="380" /> +<TGConnectingPoint num="14" id="381" /> +</COMPONENT> + +<COMPONENT type="5106" id="423" > +<cdparam x="487" y="1149" /> +<sizeparam width="289" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="WaitingForPageToLoad" /> +<TGConnectingPoint num="0" id="383" /> +<TGConnectingPoint num="1" id="384" /> +<TGConnectingPoint num="2" id="385" /> +<TGConnectingPoint num="3" id="386" /> +<TGConnectingPoint num="4" id="387" /> +<TGConnectingPoint num="5" id="388" /> +<TGConnectingPoint num="6" id="389" /> +<TGConnectingPoint num="7" id="390" /> +<TGConnectingPoint num="8" id="391" /> +<TGConnectingPoint num="9" id="392" /> +<TGConnectingPoint num="10" id="393" /> +<TGConnectingPoint num="11" id="394" /> +<TGConnectingPoint num="12" id="395" /> +<TGConnectingPoint num="13" id="396" /> +<TGConnectingPoint num="14" id="397" /> +<TGConnectingPoint num="15" id="398" /> +<TGConnectingPoint num="16" id="399" /> +<TGConnectingPoint num="17" id="400" /> +<TGConnectingPoint num="18" id="401" /> +<TGConnectingPoint num="19" id="402" /> +<TGConnectingPoint num="20" id="403" /> +<TGConnectingPoint num="21" id="404" /> +<TGConnectingPoint num="22" id="405" /> +<TGConnectingPoint num="23" id="406" /> +<TGConnectingPoint num="24" id="407" /> +<TGConnectingPoint num="25" id="408" /> +<TGConnectingPoint num="26" id="409" /> +<TGConnectingPoint num="27" id="410" /> +<TGConnectingPoint num="28" id="411" /> +<TGConnectingPoint num="29" id="412" /> +<TGConnectingPoint num="30" id="413" /> +<TGConnectingPoint num="31" id="414" /> +<TGConnectingPoint num="32" id="415" /> +<TGConnectingPoint num="33" id="416" /> +<TGConnectingPoint num="34" id="417" /> +<TGConnectingPoint num="35" id="418" /> +<TGConnectingPoint num="36" id="419" /> +<TGConnectingPoint num="37" id="420" /> +<TGConnectingPoint num="38" id="421" /> +<TGConnectingPoint num="39" id="422" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5103" id="434" > +<cdparam x="317" y="754" /> +<sizeparam width="122" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="Send signal" value="pageReady(page)" /> +<TGConnectingPoint num="0" id="424" /> +<TGConnectingPoint num="1" id="425" /> +<TGConnectingPoint num="2" id="426" /> +<TGConnectingPoint num="3" id="427" /> +<TGConnectingPoint num="4" id="428" /> +<TGConnectingPoint num="5" id="429" /> +<TGConnectingPoint num="6" id="430" /> +<TGConnectingPoint num="7" id="431" /> +<TGConnectingPoint num="8" id="432" /> +<TGConnectingPoint num="9" id="433" /> +</COMPONENT> + +<COMPONENT type="5106" id="475" > +<cdparam x="328" y="672" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="PageReady" /> +<TGConnectingPoint num="0" id="435" /> +<TGConnectingPoint num="1" id="436" /> +<TGConnectingPoint num="2" id="437" /> +<TGConnectingPoint num="3" id="438" /> +<TGConnectingPoint num="4" id="439" /> +<TGConnectingPoint num="5" id="440" /> +<TGConnectingPoint num="6" id="441" /> +<TGConnectingPoint num="7" id="442" /> +<TGConnectingPoint num="8" id="443" /> +<TGConnectingPoint num="9" id="444" /> +<TGConnectingPoint num="10" id="445" /> +<TGConnectingPoint num="11" id="446" /> +<TGConnectingPoint num="12" id="447" /> +<TGConnectingPoint num="13" id="448" /> +<TGConnectingPoint num="14" id="449" /> +<TGConnectingPoint num="15" id="450" /> +<TGConnectingPoint num="16" id="451" /> +<TGConnectingPoint num="17" id="452" /> +<TGConnectingPoint num="18" id="453" /> +<TGConnectingPoint num="19" id="454" /> +<TGConnectingPoint num="20" id="455" /> +<TGConnectingPoint num="21" id="456" /> +<TGConnectingPoint num="22" id="457" /> +<TGConnectingPoint num="23" id="458" /> +<TGConnectingPoint num="24" id="459" /> +<TGConnectingPoint num="25" id="460" /> +<TGConnectingPoint num="26" id="461" /> +<TGConnectingPoint num="27" id="462" /> +<TGConnectingPoint num="28" id="463" /> +<TGConnectingPoint num="29" id="464" /> +<TGConnectingPoint num="30" id="465" /> +<TGConnectingPoint num="31" id="466" /> +<TGConnectingPoint num="32" id="467" /> +<TGConnectingPoint num="33" id="468" /> +<TGConnectingPoint num="34" id="469" /> +<TGConnectingPoint num="35" id="470" /> +<TGConnectingPoint num="36" id="471" /> +<TGConnectingPoint num="37" id="472" /> +<TGConnectingPoint num="38" id="473" /> +<TGConnectingPoint num="39" id="474" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="516" > +<cdparam x="238" y="486" /> +<sizeparam width="154" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="gotItFromMemory" /> +<TGConnectingPoint num="0" id="476" /> +<TGConnectingPoint num="1" id="477" /> +<TGConnectingPoint num="2" id="478" /> +<TGConnectingPoint num="3" id="479" /> +<TGConnectingPoint num="4" id="480" /> +<TGConnectingPoint num="5" id="481" /> +<TGConnectingPoint num="6" id="482" /> +<TGConnectingPoint num="7" id="483" /> +<TGConnectingPoint num="8" id="484" /> +<TGConnectingPoint num="9" id="485" /> +<TGConnectingPoint num="10" id="486" /> +<TGConnectingPoint num="11" id="487" /> +<TGConnectingPoint num="12" id="488" /> +<TGConnectingPoint num="13" id="489" /> +<TGConnectingPoint num="14" id="490" /> +<TGConnectingPoint num="15" id="491" /> +<TGConnectingPoint num="16" id="492" /> +<TGConnectingPoint num="17" id="493" /> +<TGConnectingPoint num="18" id="494" /> +<TGConnectingPoint num="19" id="495" /> +<TGConnectingPoint num="20" id="496" /> +<TGConnectingPoint num="21" id="497" /> +<TGConnectingPoint num="22" id="498" /> +<TGConnectingPoint num="23" id="499" /> +<TGConnectingPoint num="24" id="500" /> +<TGConnectingPoint num="25" id="501" /> +<TGConnectingPoint num="26" id="502" /> +<TGConnectingPoint num="27" id="503" /> +<TGConnectingPoint num="28" id="504" /> +<TGConnectingPoint num="29" id="505" /> +<TGConnectingPoint num="30" id="506" /> +<TGConnectingPoint num="31" id="507" /> +<TGConnectingPoint num="32" id="508" /> +<TGConnectingPoint num="33" id="509" /> +<TGConnectingPoint num="34" id="510" /> +<TGConnectingPoint num="35" id="511" /> +<TGConnectingPoint num="36" id="512" /> +<TGConnectingPoint num="37" id="513" /> +<TGConnectingPoint num="38" id="514" /> +<TGConnectingPoint num="39" id="515" /> +<invariant /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5107" id="532" > +<cdparam x="382" y="346" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="517" /> +<TGConnectingPoint num="1" id="518" /> +<TGConnectingPoint num="2" id="519" /> +<TGConnectingPoint num="3" id="520" /> +<TGConnectingPoint num="4" id="521" /> +<TGConnectingPoint num="5" id="522" /> +<TGConnectingPoint num="6" id="523" /> +<TGConnectingPoint num="7" id="524" /> +<TGConnectingPoint num="8" id="525" /> +<TGConnectingPoint num="9" id="526" /> +<TGConnectingPoint num="10" id="527" /> +<TGConnectingPoint num="11" id="528" /> +<TGConnectingPoint num="12" id="529" /> +<TGConnectingPoint num="13" id="530" /> +<TGConnectingPoint num="14" id="531" /> +</COMPONENT> + +<COMPONENT type="5106" id="573" > +<cdparam x="679" y="919" /> +<sizeparam width="274" height="38" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="PutPageInMemoryDone" /> +<TGConnectingPoint num="0" id="533" /> +<TGConnectingPoint num="1" id="534" /> +<TGConnectingPoint num="2" id="535" /> +<TGConnectingPoint num="3" id="536" /> +<TGConnectingPoint num="4" id="537" /> +<TGConnectingPoint num="5" id="538" /> +<TGConnectingPoint num="6" id="539" /> +<TGConnectingPoint num="7" id="540" /> +<TGConnectingPoint num="8" id="541" /> +<TGConnectingPoint num="9" id="542" /> +<TGConnectingPoint num="10" id="543" /> +<TGConnectingPoint num="11" id="544" /> +<TGConnectingPoint num="12" id="545" /> +<TGConnectingPoint num="13" id="546" /> +<TGConnectingPoint num="14" id="547" /> +<TGConnectingPoint num="15" id="548" /> +<TGConnectingPoint num="16" id="549" /> +<TGConnectingPoint num="17" id="550" /> +<TGConnectingPoint num="18" id="551" /> +<TGConnectingPoint num="19" id="552" /> +<TGConnectingPoint num="20" id="553" /> +<TGConnectingPoint num="21" id="554" /> +<TGConnectingPoint num="22" id="555" /> +<TGConnectingPoint num="23" id="556" /> +<TGConnectingPoint num="24" id="557" /> +<TGConnectingPoint num="25" id="558" /> +<TGConnectingPoint num="26" id="559" /> +<TGConnectingPoint num="27" id="560" /> +<TGConnectingPoint num="28" id="561" /> +<TGConnectingPoint num="29" id="562" /> +<TGConnectingPoint num="30" id="563" /> +<TGConnectingPoint num="31" id="564" /> +<TGConnectingPoint num="32" id="565" /> +<TGConnectingPoint num="33" id="566" /> +<TGConnectingPoint num="34" id="567" /> +<TGConnectingPoint num="35" id="568" /> +<TGConnectingPoint num="36" id="569" /> +<TGConnectingPoint num="37" id="570" /> +<TGConnectingPoint num="38" id="571" /> +<TGConnectingPoint num="39" id="572" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="614" > +<cdparam x="296" y="270" /> +<sizeparam width="264" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="getFromMemory" /> +<TGConnectingPoint num="0" id="574" /> +<TGConnectingPoint num="1" id="575" /> +<TGConnectingPoint num="2" id="576" /> +<TGConnectingPoint num="3" id="577" /> +<TGConnectingPoint num="4" id="578" /> +<TGConnectingPoint num="5" id="579" /> +<TGConnectingPoint num="6" id="580" /> +<TGConnectingPoint num="7" id="581" /> +<TGConnectingPoint num="8" id="582" /> +<TGConnectingPoint num="9" id="583" /> +<TGConnectingPoint num="10" id="584" /> +<TGConnectingPoint num="11" id="585" /> +<TGConnectingPoint num="12" id="586" /> +<TGConnectingPoint num="13" id="587" /> +<TGConnectingPoint num="14" id="588" /> +<TGConnectingPoint num="15" id="589" /> +<TGConnectingPoint num="16" id="590" /> +<TGConnectingPoint num="17" id="591" /> +<TGConnectingPoint num="18" id="592" /> +<TGConnectingPoint num="19" id="593" /> +<TGConnectingPoint num="20" id="594" /> +<TGConnectingPoint num="21" id="595" /> +<TGConnectingPoint num="22" id="596" /> +<TGConnectingPoint num="23" id="597" /> +<TGConnectingPoint num="24" id="598" /> +<TGConnectingPoint num="25" id="599" /> +<TGConnectingPoint num="26" id="600" /> +<TGConnectingPoint num="27" id="601" /> +<TGConnectingPoint num="28" id="602" /> +<TGConnectingPoint num="29" id="603" /> +<TGConnectingPoint num="30" id="604" /> +<TGConnectingPoint num="31" id="605" /> +<TGConnectingPoint num="32" id="606" /> +<TGConnectingPoint num="33" id="607" /> +<TGConnectingPoint num="34" id="608" /> +<TGConnectingPoint num="35" id="609" /> +<TGConnectingPoint num="36" id="610" /> +<TGConnectingPoint num="37" id="611" /> +<TGConnectingPoint num="38" id="612" /> +<TGConnectingPoint num="39" id="613" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="655" > +<cdparam x="685" y="762" /> +<sizeparam width="263" height="42" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="PutPageInMemory" /> +<TGConnectingPoint num="0" id="615" /> +<TGConnectingPoint num="1" id="616" /> +<TGConnectingPoint num="2" id="617" /> +<TGConnectingPoint num="3" id="618" /> +<TGConnectingPoint num="4" id="619" /> +<TGConnectingPoint num="5" id="620" /> +<TGConnectingPoint num="6" id="621" /> +<TGConnectingPoint num="7" id="622" /> +<TGConnectingPoint num="8" id="623" /> +<TGConnectingPoint num="9" id="624" /> +<TGConnectingPoint num="10" id="625" /> +<TGConnectingPoint num="11" id="626" /> +<TGConnectingPoint num="12" id="627" /> +<TGConnectingPoint num="13" id="628" /> +<TGConnectingPoint num="14" id="629" /> +<TGConnectingPoint num="15" id="630" /> +<TGConnectingPoint num="16" id="631" /> +<TGConnectingPoint num="17" id="632" /> +<TGConnectingPoint num="18" id="633" /> +<TGConnectingPoint num="19" id="634" /> +<TGConnectingPoint num="20" id="635" /> +<TGConnectingPoint num="21" id="636" /> +<TGConnectingPoint num="22" id="637" /> +<TGConnectingPoint num="23" id="638" /> +<TGConnectingPoint num="24" id="639" /> +<TGConnectingPoint num="25" id="640" /> +<TGConnectingPoint num="26" id="641" /> +<TGConnectingPoint num="27" id="642" /> +<TGConnectingPoint num="28" id="643" /> +<TGConnectingPoint num="29" id="644" /> +<TGConnectingPoint num="30" id="645" /> +<TGConnectingPoint num="31" id="646" /> +<TGConnectingPoint num="32" id="647" /> +<TGConnectingPoint num="33" id="648" /> +<TGConnectingPoint num="34" id="649" /> +<TGConnectingPoint num="35" id="650" /> +<TGConnectingPoint num="36" id="651" /> +<TGConnectingPoint num="37" id="652" /> +<TGConnectingPoint num="38" id="653" /> +<TGConnectingPoint num="39" id="654" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="696" > +<cdparam x="996" y="653" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="Interrupted" /> +<TGConnectingPoint num="0" id="656" /> +<TGConnectingPoint num="1" id="657" /> +<TGConnectingPoint num="2" id="658" /> +<TGConnectingPoint num="3" id="659" /> +<TGConnectingPoint num="4" id="660" /> +<TGConnectingPoint num="5" id="661" /> +<TGConnectingPoint num="6" id="662" /> +<TGConnectingPoint num="7" id="663" /> +<TGConnectingPoint num="8" id="664" /> +<TGConnectingPoint num="9" id="665" /> +<TGConnectingPoint num="10" id="666" /> +<TGConnectingPoint num="11" id="667" /> +<TGConnectingPoint num="12" id="668" /> +<TGConnectingPoint num="13" id="669" /> +<TGConnectingPoint num="14" id="670" /> +<TGConnectingPoint num="15" id="671" /> +<TGConnectingPoint num="16" id="672" /> +<TGConnectingPoint num="17" id="673" /> +<TGConnectingPoint num="18" id="674" /> +<TGConnectingPoint num="19" id="675" /> +<TGConnectingPoint num="20" id="676" /> +<TGConnectingPoint num="21" id="677" /> +<TGConnectingPoint num="22" id="678" /> +<TGConnectingPoint num="23" id="679" /> +<TGConnectingPoint num="24" id="680" /> +<TGConnectingPoint num="25" id="681" /> +<TGConnectingPoint num="26" id="682" /> +<TGConnectingPoint num="27" id="683" /> +<TGConnectingPoint num="28" id="684" /> +<TGConnectingPoint num="29" id="685" /> +<TGConnectingPoint num="30" id="686" /> +<TGConnectingPoint num="31" id="687" /> +<TGConnectingPoint num="32" id="688" /> +<TGConnectingPoint num="33" id="689" /> +<TGConnectingPoint num="34" id="690" /> +<TGConnectingPoint num="35" id="691" /> +<TGConnectingPoint num="36" id="692" /> +<TGConnectingPoint num="37" id="693" /> +<TGConnectingPoint num="38" id="694" /> +<TGConnectingPoint num="39" id="695" /> +<accessibility /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="737" > +<cdparam x="766" y="660" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="PageLoaded" /> +<TGConnectingPoint num="0" id="697" /> +<TGConnectingPoint num="1" id="698" /> +<TGConnectingPoint num="2" id="699" /> +<TGConnectingPoint num="3" id="700" /> +<TGConnectingPoint num="4" id="701" /> +<TGConnectingPoint num="5" id="702" /> +<TGConnectingPoint num="6" id="703" /> +<TGConnectingPoint num="7" id="704" /> +<TGConnectingPoint num="8" id="705" /> +<TGConnectingPoint num="9" id="706" /> +<TGConnectingPoint num="10" id="707" /> +<TGConnectingPoint num="11" id="708" /> +<TGConnectingPoint num="12" id="709" /> +<TGConnectingPoint num="13" id="710" /> +<TGConnectingPoint num="14" id="711" /> +<TGConnectingPoint num="15" id="712" /> +<TGConnectingPoint num="16" id="713" /> +<TGConnectingPoint num="17" id="714" /> +<TGConnectingPoint num="18" id="715" /> +<TGConnectingPoint num="19" id="716" /> +<TGConnectingPoint num="20" id="717" /> +<TGConnectingPoint num="21" id="718" /> +<TGConnectingPoint num="22" id="719" /> +<TGConnectingPoint num="23" id="720" /> +<TGConnectingPoint num="24" id="721" /> +<TGConnectingPoint num="25" id="722" /> +<TGConnectingPoint num="26" id="723" /> +<TGConnectingPoint num="27" id="724" /> +<TGConnectingPoint num="28" id="725" /> +<TGConnectingPoint num="29" id="726" /> +<TGConnectingPoint num="30" id="727" /> +<TGConnectingPoint num="31" id="728" /> +<TGConnectingPoint num="32" id="729" /> +<TGConnectingPoint num="33" id="730" /> +<TGConnectingPoint num="34" id="731" /> +<TGConnectingPoint num="35" id="732" /> +<TGConnectingPoint num="36" id="733" /> +<TGConnectingPoint num="37" id="734" /> +<TGConnectingPoint num="38" id="735" /> +<TGConnectingPoint num="39" id="736" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="778" > +<cdparam x="320" y="166" /> +<sizeparam width="217" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="WaitingForPageToLoad" /> +<TGConnectingPoint num="0" id="738" /> +<TGConnectingPoint num="1" id="739" /> +<TGConnectingPoint num="2" id="740" /> +<TGConnectingPoint num="3" id="741" /> +<TGConnectingPoint num="4" id="742" /> +<TGConnectingPoint num="5" id="743" /> +<TGConnectingPoint num="6" id="744" /> +<TGConnectingPoint num="7" id="745" /> +<TGConnectingPoint num="8" id="746" /> +<TGConnectingPoint num="9" id="747" /> +<TGConnectingPoint num="10" id="748" /> +<TGConnectingPoint num="11" id="749" /> +<TGConnectingPoint num="12" id="750" /> +<TGConnectingPoint num="13" id="751" /> +<TGConnectingPoint num="14" id="752" /> +<TGConnectingPoint num="15" id="753" /> +<TGConnectingPoint num="16" id="754" /> +<TGConnectingPoint num="17" id="755" /> +<TGConnectingPoint num="18" id="756" /> +<TGConnectingPoint num="19" id="757" /> +<TGConnectingPoint num="20" id="758" /> +<TGConnectingPoint num="21" id="759" /> +<TGConnectingPoint num="22" id="760" /> +<TGConnectingPoint num="23" id="761" /> +<TGConnectingPoint num="24" id="762" /> +<TGConnectingPoint num="25" id="763" /> +<TGConnectingPoint num="26" id="764" /> +<TGConnectingPoint num="27" id="765" /> +<TGConnectingPoint num="28" id="766" /> +<TGConnectingPoint num="29" id="767" /> +<TGConnectingPoint num="30" id="768" /> +<TGConnectingPoint num="31" id="769" /> +<TGConnectingPoint num="32" id="770" /> +<TGConnectingPoint num="33" id="771" /> +<TGConnectingPoint num="34" id="772" /> +<TGConnectingPoint num="35" id="773" /> +<TGConnectingPoint num="36" id="774" /> +<TGConnectingPoint num="37" id="775" /> +<TGConnectingPoint num="38" id="776" /> +<TGConnectingPoint num="39" id="777" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="780" > +<cdparam x="421" y="105" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="779" /> +</COMPONENT> + +<COMPONENT type="5104" id="791" > +<cdparam x="966" y="610" /> +<sizeparam width="161" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="Receive signal" value="loadPage(doc, pageid)" /> +<TGConnectingPoint num="0" id="781" /> +<TGConnectingPoint num="1" id="782" /> +<TGConnectingPoint num="2" id="783" /> +<TGConnectingPoint num="3" id="784" /> +<TGConnectingPoint num="4" id="785" /> +<TGConnectingPoint num="5" id="786" /> +<TGConnectingPoint num="6" id="787" /> +<TGConnectingPoint num="7" id="788" /> +<TGConnectingPoint num="8" id="789" /> +<TGConnectingPoint num="9" id="790" /> +</COMPONENT> + +<COMPONENT type="5106" id="837" > +<cdparam x="537" y="510" /> +<sizeparam width="397" height="230" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="LoadingPage" /> +<TGConnectingPoint num="0" id="797" /> +<TGConnectingPoint num="1" id="798" /> +<TGConnectingPoint num="2" id="799" /> +<TGConnectingPoint num="3" id="800" /> +<TGConnectingPoint num="4" id="801" /> +<TGConnectingPoint num="5" id="802" /> +<TGConnectingPoint num="6" id="803" /> +<TGConnectingPoint num="7" id="804" /> +<TGConnectingPoint num="8" id="805" /> +<TGConnectingPoint num="9" id="806" /> +<TGConnectingPoint num="10" id="807" /> +<TGConnectingPoint num="11" id="808" /> +<TGConnectingPoint num="12" id="809" /> +<TGConnectingPoint num="13" id="810" /> +<TGConnectingPoint num="14" id="811" /> +<TGConnectingPoint num="15" id="812" /> +<TGConnectingPoint num="16" id="813" /> +<TGConnectingPoint num="17" id="814" /> +<TGConnectingPoint num="18" id="815" /> +<TGConnectingPoint num="19" id="816" /> +<TGConnectingPoint num="20" id="817" /> +<TGConnectingPoint num="21" id="818" /> +<TGConnectingPoint num="22" id="819" /> +<TGConnectingPoint num="23" id="820" /> +<TGConnectingPoint num="24" id="821" /> +<TGConnectingPoint num="25" id="822" /> +<TGConnectingPoint num="26" id="823" /> +<TGConnectingPoint num="27" id="824" /> +<TGConnectingPoint num="28" id="825" /> +<TGConnectingPoint num="29" id="826" /> +<TGConnectingPoint num="30" id="827" /> +<TGConnectingPoint num="31" id="828" /> +<TGConnectingPoint num="32" id="829" /> +<TGConnectingPoint num="33" id="830" /> +<TGConnectingPoint num="34" id="831" /> +<TGConnectingPoint num="35" id="832" /> +<TGConnectingPoint num="36" id="833" /> +<TGConnectingPoint num="37" id="834" /> +<TGConnectingPoint num="38" id="835" /> +<TGConnectingPoint num="39" id="836" /> +<extraparam> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="5100" id="793" > +<father id="837" num="0" /> +<cdparam x="857" y="545" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="382" minY="0" maxY="215" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="792" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5108" id="796" > +<father id="837" num="1" /> +<cdparam x="790" y="611" /> +<sizeparam width="137" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="261" minY="0" maxY="210" /> +<infoparam name="TGComponent" value="null" /> +<TGConnectingPoint num="0" id="794" /> +<TGConnectingPoint num="1" id="795" /> +<extraparam> +<Data variable="x" minValue="0" maxValue="10" functionId="0" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5104" id="848" > +<cdparam x="479" y="1083" /> +<sizeparam width="161" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="Receive signal" value="loadPage(doc, pageid)" /> +<TGConnectingPoint num="0" id="838" /> +<TGConnectingPoint num="1" id="839" /> +<TGConnectingPoint num="2" id="840" /> +<TGConnectingPoint num="3" id="841" /> +<TGConnectingPoint num="4" id="842" /> +<TGConnectingPoint num="5" id="843" /> +<TGConnectingPoint num="6" id="844" /> +<TGConnectingPoint num="7" id="845" /> +<TGConnectingPoint num="8" id="846" /> +<TGConnectingPoint num="9" id="847" /> +</COMPONENT> + +<COMPONENT type="5104" id="859" > +<cdparam x="348" y="228" /> +<sizeparam width="161" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="Receive signal" value="loadPage(doc, pageid)" /> +<TGConnectingPoint num="0" id="849" /> +<TGConnectingPoint num="1" id="850" /> +<TGConnectingPoint num="2" id="851" /> +<TGConnectingPoint num="3" id="852" /> +<TGConnectingPoint num="4" id="853" /> +<TGConnectingPoint num="5" id="854" /> +<TGConnectingPoint num="6" id="855" /> +<TGConnectingPoint num="7" id="856" /> +<TGConnectingPoint num="8" id="857" /> +<TGConnectingPoint num="9" id="858" /> +</COMPONENT> + +<COMPONENT type="5106" id="900" > +<cdparam x="126" y="1431" /> +<sizeparam width="274" height="38" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="PutPrefetchInMemoryDone" /> +<TGConnectingPoint num="0" id="860" /> +<TGConnectingPoint num="1" id="861" /> +<TGConnectingPoint num="2" id="862" /> +<TGConnectingPoint num="3" id="863" /> +<TGConnectingPoint num="4" id="864" /> +<TGConnectingPoint num="5" id="865" /> +<TGConnectingPoint num="6" id="866" /> +<TGConnectingPoint num="7" id="867" /> +<TGConnectingPoint num="8" id="868" /> +<TGConnectingPoint num="9" id="869" /> +<TGConnectingPoint num="10" id="870" /> +<TGConnectingPoint num="11" id="871" /> +<TGConnectingPoint num="12" id="872" /> +<TGConnectingPoint num="13" id="873" /> +<TGConnectingPoint num="14" id="874" /> +<TGConnectingPoint num="15" id="875" /> +<TGConnectingPoint num="16" id="876" /> +<TGConnectingPoint num="17" id="877" /> +<TGConnectingPoint num="18" id="878" /> +<TGConnectingPoint num="19" id="879" /> +<TGConnectingPoint num="20" id="880" /> +<TGConnectingPoint num="21" id="881" /> +<TGConnectingPoint num="22" id="882" /> +<TGConnectingPoint num="23" id="883" /> +<TGConnectingPoint num="24" id="884" /> +<TGConnectingPoint num="25" id="885" /> +<TGConnectingPoint num="26" id="886" /> +<TGConnectingPoint num="27" id="887" /> +<TGConnectingPoint num="28" id="888" /> +<TGConnectingPoint num="29" id="889" /> +<TGConnectingPoint num="30" id="890" /> +<TGConnectingPoint num="31" id="891" /> +<TGConnectingPoint num="32" id="892" /> +<TGConnectingPoint num="33" id="893" /> +<TGConnectingPoint num="34" id="894" /> +<TGConnectingPoint num="35" id="895" /> +<TGConnectingPoint num="36" id="896" /> +<TGConnectingPoint num="37" id="897" /> +<TGConnectingPoint num="38" id="898" /> +<TGConnectingPoint num="39" id="899" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="941" > +<cdparam x="132" y="1270" /> +<sizeparam width="263" height="42" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="PutPrefetchInMemory" /> +<TGConnectingPoint num="0" id="901" /> +<TGConnectingPoint num="1" id="902" /> +<TGConnectingPoint num="2" id="903" /> +<TGConnectingPoint num="3" id="904" /> +<TGConnectingPoint num="4" id="905" /> +<TGConnectingPoint num="5" id="906" /> +<TGConnectingPoint num="6" id="907" /> +<TGConnectingPoint num="7" id="908" /> +<TGConnectingPoint num="8" id="909" /> +<TGConnectingPoint num="9" id="910" /> +<TGConnectingPoint num="10" id="911" /> +<TGConnectingPoint num="11" id="912" /> +<TGConnectingPoint num="12" id="913" /> +<TGConnectingPoint num="13" id="914" /> +<TGConnectingPoint num="14" id="915" /> +<TGConnectingPoint num="15" id="916" /> +<TGConnectingPoint num="16" id="917" /> +<TGConnectingPoint num="17" id="918" /> +<TGConnectingPoint num="18" id="919" /> +<TGConnectingPoint num="19" id="920" /> +<TGConnectingPoint num="20" id="921" /> +<TGConnectingPoint num="21" id="922" /> +<TGConnectingPoint num="22" id="923" /> +<TGConnectingPoint num="23" id="924" /> +<TGConnectingPoint num="24" id="925" /> +<TGConnectingPoint num="25" id="926" /> +<TGConnectingPoint num="26" id="927" /> +<TGConnectingPoint num="27" id="928" /> +<TGConnectingPoint num="28" id="929" /> +<TGConnectingPoint num="29" id="930" /> +<TGConnectingPoint num="30" id="931" /> +<TGConnectingPoint num="31" id="932" /> +<TGConnectingPoint num="32" id="933" /> +<TGConnectingPoint num="33" id="934" /> +<TGConnectingPoint num="34" id="935" /> +<TGConnectingPoint num="35" id="936" /> +<TGConnectingPoint num="36" id="937" /> +<TGConnectingPoint num="37" id="938" /> +<TGConnectingPoint num="38" id="939" /> +<TGConnectingPoint num="39" id="940" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5106" id="1028" > +<cdparam x="127" y="1028" /> +<sizeparam width="258" height="201" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1900" /> +<infoparam name="state0" value="Prefetching" /> +<TGConnectingPoint num="0" id="988" /> +<TGConnectingPoint num="1" id="989" /> +<TGConnectingPoint num="2" id="990" /> +<TGConnectingPoint num="3" id="991" /> +<TGConnectingPoint num="4" id="992" /> +<TGConnectingPoint num="5" id="993" /> +<TGConnectingPoint num="6" id="994" /> +<TGConnectingPoint num="7" id="995" /> +<TGConnectingPoint num="8" id="996" /> +<TGConnectingPoint num="9" id="997" /> +<TGConnectingPoint num="10" id="998" /> +<TGConnectingPoint num="11" id="999" /> +<TGConnectingPoint num="12" id="1000" /> +<TGConnectingPoint num="13" id="1001" /> +<TGConnectingPoint num="14" id="1002" /> +<TGConnectingPoint num="15" id="1003" /> +<TGConnectingPoint num="16" id="1004" /> +<TGConnectingPoint num="17" id="1005" /> +<TGConnectingPoint num="18" id="1006" /> +<TGConnectingPoint num="19" id="1007" /> +<TGConnectingPoint num="20" id="1008" /> +<TGConnectingPoint num="21" id="1009" /> +<TGConnectingPoint num="22" id="1010" /> +<TGConnectingPoint num="23" id="1011" /> +<TGConnectingPoint num="24" id="1012" /> +<TGConnectingPoint num="25" id="1013" /> +<TGConnectingPoint num="26" id="1014" /> +<TGConnectingPoint num="27" id="1015" /> +<TGConnectingPoint num="28" id="1016" /> +<TGConnectingPoint num="29" id="1017" /> +<TGConnectingPoint num="30" id="1018" /> +<TGConnectingPoint num="31" id="1019" /> +<TGConnectingPoint num="32" id="1020" /> +<TGConnectingPoint num="33" id="1021" /> +<TGConnectingPoint num="34" id="1022" /> +<TGConnectingPoint num="35" id="1023" /> +<TGConnectingPoint num="36" id="1024" /> +<TGConnectingPoint num="37" id="1025" /> +<TGConnectingPoint num="38" id="1026" /> +<TGConnectingPoint num="39" id="1027" /> +<extraparam> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="5100" id="943" > +<father id="1028" num="0" /> +<cdparam x="249" y="1055" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="243" minY="0" maxY="186" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="942" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5106" id="984" > +<father id="1028" num="1" /> +<cdparam x="213" y="1155" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="158" minY="0" maxY="151" /> +<infoparam name="state0" value="PagePrefetched" /> +<TGConnectingPoint num="0" id="944" /> +<TGConnectingPoint num="1" id="945" /> +<TGConnectingPoint num="2" id="946" /> +<TGConnectingPoint num="3" id="947" /> +<TGConnectingPoint num="4" id="948" /> +<TGConnectingPoint num="5" id="949" /> +<TGConnectingPoint num="6" id="950" /> +<TGConnectingPoint num="7" id="951" /> +<TGConnectingPoint num="8" id="952" /> +<TGConnectingPoint num="9" id="953" /> +<TGConnectingPoint num="10" id="954" /> +<TGConnectingPoint num="11" id="955" /> +<TGConnectingPoint num="12" id="956" /> +<TGConnectingPoint num="13" id="957" /> +<TGConnectingPoint num="14" id="958" /> +<TGConnectingPoint num="15" id="959" /> +<TGConnectingPoint num="16" id="960" /> +<TGConnectingPoint num="17" id="961" /> +<TGConnectingPoint num="18" id="962" /> +<TGConnectingPoint num="19" id="963" /> +<TGConnectingPoint num="20" id="964" /> +<TGConnectingPoint num="21" id="965" /> +<TGConnectingPoint num="22" id="966" /> +<TGConnectingPoint num="23" id="967" /> +<TGConnectingPoint num="24" id="968" /> +<TGConnectingPoint num="25" id="969" /> +<TGConnectingPoint num="26" id="970" /> +<TGConnectingPoint num="27" id="971" /> +<TGConnectingPoint num="28" id="972" /> +<TGConnectingPoint num="29" id="973" /> +<TGConnectingPoint num="30" id="974" /> +<TGConnectingPoint num="31" id="975" /> +<TGConnectingPoint num="32" id="976" /> +<TGConnectingPoint num="33" id="977" /> +<TGConnectingPoint num="34" id="978" /> +<TGConnectingPoint num="35" id="979" /> +<TGConnectingPoint num="36" id="980" /> +<TGConnectingPoint num="37" id="981" /> +<TGConnectingPoint num="38" id="982" /> +<TGConnectingPoint num="39" id="983" /> +<extraparam> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="5108" id="987" > +<father id="1028" num="2" /> +<cdparam x="195" y="1118" /> +<sizeparam width="137" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="228" minY="0" maxY="181" /> +<infoparam name="TGComponent" value="null" /> +<TGConnectingPoint num="0" id="985" /> +<TGConnectingPoint num="1" id="986" /> +<extraparam> +<Data variable="x" minValue="0" maxValue="10" functionId="0" /> +</extraparam> +</SUBCOMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="UserModel" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="1035" > +<cdparam x="460" y="447" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1034" /> +<P1 x="460" y="447" id="1186" /> +<P2 x="460" y="456" id="1174" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1033" > +<father id="1035" num="0" /> +<cdparam x="478" y="456" /> +<sizeparam width="68" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1029" /> +<TGConnectingPoint num="1" id="1030" /> +<TGConnectingPoint num="2" id="1031" /> +<TGConnectingPoint num="3" id="1032" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="100" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1042" > +<cdparam x="460" y="405" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1041" /> +<P1 x="460" y="405" id="1164" /> +<P2 x="460" y="417" id="1185" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1040" > +<father id="1042" num="0" /> +<cdparam x="472" y="417" /> +<sizeparam width="68" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1036" /> +<TGConnectingPoint num="1" id="1037" /> +<TGConnectingPoint num="2" id="1038" /> +<TGConnectingPoint num="3" id="1039" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="100" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1049" > +<cdparam x="458" y="358" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1048" /> +<P1 x="458" y="358" id="1153" /> +<P2 x="460" y="375" id="1163" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1047" > +<father id="1049" num="0" /> +<cdparam x="479" y="374" /> +<sizeparam width="68" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1043" /> +<TGConnectingPoint num="1" id="1044" /> +<TGConnectingPoint num="2" id="1045" /> +<TGConnectingPoint num="3" id="1046" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="100" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1056" > +<cdparam x="448" y="147" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="1055" /> +<P1 x="434" y="106" id="1150" /> +<P2 x="457" y="160" id="1110" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1054" > +<father id="1056" num="0" /> +<cdparam x="448" y="187" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1050" /> +<TGConnectingPoint num="1" id="1051" /> +<TGConnectingPoint num="2" id="1052" /> +<TGConnectingPoint num="3" id="1053" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1063" > +<cdparam x="457" y="240" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1062" /> +<P1 x="457" y="225" id="1115" /> +<P2 x="457" y="281" id="1098" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1061" > +<father id="1063" num="0" /> +<cdparam x="488" y="245" /> +<sizeparam width="139" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1057" /> +<TGConnectingPoint num="1" id="1058" /> +<TGConnectingPoint num="2" id="1059" /> +<TGConnectingPoint num="3" id="1060" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="doc1.id = 1" /> +<actions value="doc1.nbOfPages = 5" /> +<actions value="doc1.currentPage = 2" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1070" > +<cdparam x="457" y="311" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1069" /> +<P1 x="457" y="311" id="1099" /> +<P2 x="458" y="328" id="1152" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1068" > +<father id="1070" num="0" /> +<cdparam x="474" y="327" /> +<sizeparam width="68" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1064" /> +<TGConnectingPoint num="1" id="1065" /> +<TGConnectingPoint num="2" id="1066" /> +<TGConnectingPoint num="3" id="1067" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="100" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1077" > +<cdparam x="460" y="486" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1076" /> +<P1 x="460" y="486" id="1175" /> +<P2 x="460" y="534" id="1087" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1075" > +<father id="1077" num="0" /> +<cdparam x="473" y="504" /> +<sizeparam width="68" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1071" /> +<TGConnectingPoint num="1" id="1072" /> +<TGConnectingPoint num="2" id="1073" /> +<TGConnectingPoint num="3" id="1074" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="250" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="index = 1" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1084" > +<cdparam x="460" y="564" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to stop state" value="null" /> +<TGConnectingPoint num="0" id="1083" /> +<P1 x="460" y="564" id="1088" /> +<P2 x="461" y="584" id="1085" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1082" > +<father id="1084" num="0" /> +<cdparam x="460" y="604" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1078" /> +<TGConnectingPoint num="1" id="1079" /> +<TGConnectingPoint num="2" id="1080" /> +<TGConnectingPoint num="3" id="1081" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5101" id="1086" > +<cdparam x="451" y="589" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1085" /> +</COMPONENT> + +<COMPONENT type="5103" id="1097" > +<cdparam x="402" y="539" /> +<sizeparam width="116" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="goToPage(index)" /> +<TGConnectingPoint num="0" id="1087" /> +<TGConnectingPoint num="1" id="1088" /> +<TGConnectingPoint num="2" id="1089" /> +<TGConnectingPoint num="3" id="1090" /> +<TGConnectingPoint num="4" id="1091" /> +<TGConnectingPoint num="5" id="1092" /> +<TGConnectingPoint num="6" id="1093" /> +<TGConnectingPoint num="7" id="1094" /> +<TGConnectingPoint num="8" id="1095" /> +<TGConnectingPoint num="9" id="1096" /> +</COMPONENT> + +<COMPONENT type="5103" id="1108" > +<cdparam x="384" y="286" /> +<sizeparam width="147" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="openDocument(doc1)" /> +<TGConnectingPoint num="0" id="1098" /> +<TGConnectingPoint num="1" id="1099" /> +<TGConnectingPoint num="2" id="1100" /> +<TGConnectingPoint num="3" id="1101" /> +<TGConnectingPoint num="4" id="1102" /> +<TGConnectingPoint num="5" id="1103" /> +<TGConnectingPoint num="6" id="1104" /> +<TGConnectingPoint num="7" id="1105" /> +<TGConnectingPoint num="8" id="1106" /> +<TGConnectingPoint num="9" id="1107" /> +</COMPONENT> + +<COMPONENT type="5106" id="1149" > +<cdparam x="319" y="160" /> +<sizeparam width="276" height="65" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="firstDoc" /> +<TGConnectingPoint num="0" id="1109" /> +<TGConnectingPoint num="1" id="1110" /> +<TGConnectingPoint num="2" id="1111" /> +<TGConnectingPoint num="3" id="1112" /> +<TGConnectingPoint num="4" id="1113" /> +<TGConnectingPoint num="5" id="1114" /> +<TGConnectingPoint num="6" id="1115" /> +<TGConnectingPoint num="7" id="1116" /> +<TGConnectingPoint num="8" id="1117" /> +<TGConnectingPoint num="9" id="1118" /> +<TGConnectingPoint num="10" id="1119" /> +<TGConnectingPoint num="11" id="1120" /> +<TGConnectingPoint num="12" id="1121" /> +<TGConnectingPoint num="13" id="1122" /> +<TGConnectingPoint num="14" id="1123" /> +<TGConnectingPoint num="15" id="1124" /> +<TGConnectingPoint num="16" id="1125" /> +<TGConnectingPoint num="17" id="1126" /> +<TGConnectingPoint num="18" id="1127" /> +<TGConnectingPoint num="19" id="1128" /> +<TGConnectingPoint num="20" id="1129" /> +<TGConnectingPoint num="21" id="1130" /> +<TGConnectingPoint num="22" id="1131" /> +<TGConnectingPoint num="23" id="1132" /> +<TGConnectingPoint num="24" id="1133" /> +<TGConnectingPoint num="25" id="1134" /> +<TGConnectingPoint num="26" id="1135" /> +<TGConnectingPoint num="27" id="1136" /> +<TGConnectingPoint num="28" id="1137" /> +<TGConnectingPoint num="29" id="1138" /> +<TGConnectingPoint num="30" id="1139" /> +<TGConnectingPoint num="31" id="1140" /> +<TGConnectingPoint num="32" id="1141" /> +<TGConnectingPoint num="33" id="1142" /> +<TGConnectingPoint num="34" id="1143" /> +<TGConnectingPoint num="35" id="1144" /> +<TGConnectingPoint num="36" id="1145" /> +<TGConnectingPoint num="37" id="1146" /> +<TGConnectingPoint num="38" id="1147" /> +<TGConnectingPoint num="39" id="1148" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="1151" > +<cdparam x="427" y="86" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1150" /> +</COMPONENT> + +<COMPONENT type="5103" id="1162" > +<cdparam x="409" y="333" /> +<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="flipNextPage()" /> +<TGConnectingPoint num="0" id="1152" /> +<TGConnectingPoint num="1" id="1153" /> +<TGConnectingPoint num="2" id="1154" /> +<TGConnectingPoint num="3" id="1155" /> +<TGConnectingPoint num="4" id="1156" /> +<TGConnectingPoint num="5" id="1157" /> +<TGConnectingPoint num="6" id="1158" /> +<TGConnectingPoint num="7" id="1159" /> +<TGConnectingPoint num="8" id="1160" /> +<TGConnectingPoint num="9" id="1161" /> +</COMPONENT> + +<COMPONENT type="5103" id="1173" > +<cdparam x="411" y="380" /> +<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="flipNextPage()" /> +<TGConnectingPoint num="0" id="1163" /> +<TGConnectingPoint num="1" id="1164" /> +<TGConnectingPoint num="2" id="1165" /> +<TGConnectingPoint num="3" id="1166" /> +<TGConnectingPoint num="4" id="1167" /> +<TGConnectingPoint num="5" id="1168" /> +<TGConnectingPoint num="6" id="1169" /> +<TGConnectingPoint num="7" id="1170" /> +<TGConnectingPoint num="8" id="1171" /> +<TGConnectingPoint num="9" id="1172" /> +</COMPONENT> + +<COMPONENT type="5103" id="1184" > +<cdparam x="411" y="461" /> +<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="flipNextPage()" /> +<TGConnectingPoint num="0" id="1174" /> +<TGConnectingPoint num="1" id="1175" /> +<TGConnectingPoint num="2" id="1176" /> +<TGConnectingPoint num="3" id="1177" /> +<TGConnectingPoint num="4" id="1178" /> +<TGConnectingPoint num="5" id="1179" /> +<TGConnectingPoint num="6" id="1180" /> +<TGConnectingPoint num="7" id="1181" /> +<TGConnectingPoint num="8" id="1182" /> +<TGConnectingPoint num="9" id="1183" /> +</COMPONENT> + +<COMPONENT type="5103" id="1195" > +<cdparam x="411" y="422" /> +<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Send signal" value="flipNextPage()" /> +<TGConnectingPoint num="0" id="1185" /> +<TGConnectingPoint num="1" id="1186" /> +<TGConnectingPoint num="2" id="1187" /> +<TGConnectingPoint num="3" id="1188" /> +<TGConnectingPoint num="4" id="1189" /> +<TGConnectingPoint num="5" id="1190" /> +<TGConnectingPoint num="6" id="1191" /> +<TGConnectingPoint num="7" id="1192" /> +<TGConnectingPoint num="8" id="1193" /> +<TGConnectingPoint num="9" id="1194" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="DisplayDriver" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="1208" > +<cdparam x="400" y="247" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1204" /> +<TGConnectingPoint num="1" id="1205" /> +<TGConnectingPoint num="2" id="1206" /> +<TGConnectingPoint num="3" id="1207" /> +<P1 x="400" y="247" id="1224" /> +<P2 x="295" y="167" id="1237" /> +<Point x="400" y="312" /> +<Point x="250" y="312" /> +<Point x="250" y="167" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1196" > +<father id="1208" num="0" /> +<cdparam x="400" y="312" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1197" > +<father id="1208" num="1" /> +<cdparam x="250" y="312" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1198" > +<father id="1208" num="2" /> +<cdparam x="250" y="167" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1203" > +<father id="1208" num="3" /> +<cdparam x="410" y="275" /> +<sizeparam width="112" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1199" /> +<TGConnectingPoint num="1" id="1200" /> +<TGConnectingPoint num="2" id="1201" /> +<TGConnectingPoint num="3" id="1202" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="20" /> +<afterMax value="40" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="data = page.data" /> +<actions value="printPage(data)" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1215" > +<cdparam x="398" y="95" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="1214" /> +<P1 x="398" y="95" id="1275" /> +<P2 x="399" y="142" id="1235" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1213" > +<father id="1215" num="0" /> +<cdparam x="398" y="135" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1209" /> +<TGConnectingPoint num="1" id="1210" /> +<TGConnectingPoint num="2" id="1211" /> +<TGConnectingPoint num="3" id="1212" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1222" > +<cdparam x="399" y="192" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="1221" /> +<P1 x="399" y="192" id="1240" /> +<P2 x="400" y="217" id="1223" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1220" > +<father id="1222" num="0" /> +<cdparam x="399" y="232" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1216" /> +<TGConnectingPoint num="1" id="1217" /> +<TGConnectingPoint num="2" id="1218" /> +<TGConnectingPoint num="3" id="1219" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5104" id="1233" > +<cdparam x="333" y="222" /> +<sizeparam width="135" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Receive signal" value="displayPage(page)" /> +<TGConnectingPoint num="0" id="1223" /> +<TGConnectingPoint num="1" id="1224" /> +<TGConnectingPoint num="2" id="1225" /> +<TGConnectingPoint num="3" id="1226" /> +<TGConnectingPoint num="4" id="1227" /> +<TGConnectingPoint num="5" id="1228" /> +<TGConnectingPoint num="6" id="1229" /> +<TGConnectingPoint num="7" id="1230" /> +<TGConnectingPoint num="8" id="1231" /> +<TGConnectingPoint num="9" id="1232" /> +</COMPONENT> + +<COMPONENT type="5106" id="1274" > +<cdparam x="295" y="142" /> +<sizeparam width="209" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="WaitingForPageToDisplay" /> +<TGConnectingPoint num="0" id="1234" /> +<TGConnectingPoint num="1" id="1235" /> +<TGConnectingPoint num="2" id="1236" /> +<TGConnectingPoint num="3" id="1237" /> +<TGConnectingPoint num="4" id="1238" /> +<TGConnectingPoint num="5" id="1239" /> +<TGConnectingPoint num="6" id="1240" /> +<TGConnectingPoint num="7" id="1241" /> +<TGConnectingPoint num="8" id="1242" /> +<TGConnectingPoint num="9" id="1243" /> +<TGConnectingPoint num="10" id="1244" /> +<TGConnectingPoint num="11" id="1245" /> +<TGConnectingPoint num="12" id="1246" /> +<TGConnectingPoint num="13" id="1247" /> +<TGConnectingPoint num="14" id="1248" /> +<TGConnectingPoint num="15" id="1249" /> +<TGConnectingPoint num="16" id="1250" /> +<TGConnectingPoint num="17" id="1251" /> +<TGConnectingPoint num="18" id="1252" /> +<TGConnectingPoint num="19" id="1253" /> +<TGConnectingPoint num="20" id="1254" /> +<TGConnectingPoint num="21" id="1255" /> +<TGConnectingPoint num="22" id="1256" /> +<TGConnectingPoint num="23" id="1257" /> +<TGConnectingPoint num="24" id="1258" /> +<TGConnectingPoint num="25" id="1259" /> +<TGConnectingPoint num="26" id="1260" /> +<TGConnectingPoint num="27" id="1261" /> +<TGConnectingPoint num="28" id="1262" /> +<TGConnectingPoint num="29" id="1263" /> +<TGConnectingPoint num="30" id="1264" /> +<TGConnectingPoint num="31" id="1265" /> +<TGConnectingPoint num="32" id="1266" /> +<TGConnectingPoint num="33" id="1267" /> +<TGConnectingPoint num="34" id="1268" /> +<TGConnectingPoint num="35" id="1269" /> +<TGConnectingPoint num="36" id="1270" /> +<TGConnectingPoint num="37" id="1271" /> +<TGConnectingPoint num="38" id="1272" /> +<TGConnectingPoint num="39" id="1273" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="1276" > +<cdparam x="391" y="75" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1275" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="EReaderController" minX="10" maxX="1400" minY="10" maxY="1400" > +<CONNECTOR type="5102" id="1283" > +<cdparam x="828" y="336" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1282" /> +<P1 x="809" y="327" id="1645" /> +<P2 x="682" y="361" id="1607" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1281" > +<father id="1283" num="0" /> +<cdparam x="828" y="376" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1277" /> +<TGConnectingPoint num="1" id="1278" /> +<TGConnectingPoint num="2" id="1279" /> +<TGConnectingPoint num="3" id="1280" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1294" > +<cdparam x="870" y="518" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="1291" /> +<TGConnectingPoint num="1" id="1292" /> +<TGConnectingPoint num="2" id="1293" /> +<P1 x="870" y="481" id="1553" /> +<P2 x="809" y="297" id="1644" /> +<Point x="965" y="368" /> +<Point x="965" y="273" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1284" > +<father id="1294" num="0" /> +<cdparam x="965" y="368" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1285" > +<father id="1294" num="1" /> +<cdparam x="965" y="273" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1290" > +<father id="1294" num="2" /> +<cdparam x="870" y="558" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1286" /> +<TGConnectingPoint num="1" id="1287" /> +<TGConnectingPoint num="2" id="1288" /> +<TGConnectingPoint num="3" id="1289" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1301" > +<cdparam x="870" y="493" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="1300" /> +<P1 x="870" y="506" id="1555" /> +<P2 x="998" y="530" id="1655" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1299" > +<father id="1301" num="0" /> +<cdparam x="870" y="533" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1295" /> +<TGConnectingPoint num="1" id="1296" /> +<TGConnectingPoint num="2" id="1297" /> +<TGConnectingPoint num="3" id="1298" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1308" > +<cdparam x="556" y="222" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1307" /> +<P1 x="556" y="222" id="1667" /> +<P2 x="575" y="336" id="1604" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1306" > +<father id="1308" num="0" /> +<cdparam x="556" y="262" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1302" /> +<TGConnectingPoint num="1" id="1303" /> +<TGConnectingPoint num="2" id="1304" /> +<TGConnectingPoint num="3" id="1305" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1321" > +<cdparam x="800" y="680" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to state0" value="null" /> +<TGConnectingPoint num="0" id="1317" /> +<TGConnectingPoint num="1" id="1318" /> +<TGConnectingPoint num="2" id="1319" /> +<TGConnectingPoint num="3" id="1320" /> +<P1 x="800" y="680" id="1515" /> +<P2 x="870" y="531" id="1558" /> +<Point x="836" y="703" /> +<Point x="894" y="703" /> +<Point x="894" y="558" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1309" > +<father id="1321" num="0" /> +<cdparam x="836" y="703" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1310" > +<father id="1321" num="1" /> +<cdparam x="894" y="703" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1311" > +<father id="1321" num="2" /> +<cdparam x="894" y="558" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1316" > +<father id="1321" num="3" /> +<cdparam x="852" y="669" /> +<sizeparam width="44" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1312" /> +<TGConnectingPoint num="1" id="1313" /> +<TGConnectingPoint num="2" id="1314" /> +<TGConnectingPoint num="3" id="1315" /> +<extraparam> +<guard value="[ else ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1328" > +<cdparam x="750" y="680" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to state0" value="null" /> +<TGConnectingPoint num="0" id="1327" /> +<P1 x="750" y="680" id="1514" /> +<P2 x="604" y="748" id="1481" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1326" > +<father id="1328" num="0" /> +<cdparam x="492" y="725" /> +<sizeparam width="448" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1322" /> +<TGConnectingPoint num="1" id="1323" /> +<TGConnectingPoint num="2" id="1324" /> +<TGConnectingPoint num="3" id="1325" /> +<extraparam> +<guard value="[(currentPage > 0) and (currentPage < currentDocument.nbOfPages) ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="currentDocument.currentPage = currentPage" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1335" > +<cdparam x="775" y="611" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1334" /> +<P1 x="754" y="614" id="1530" /> +<P2 x="775" y="655" id="1513" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1333" > +<father id="1335" num="0" /> +<cdparam x="604" y="727" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1329" /> +<TGConnectingPoint num="1" id="1330" /> +<TGConnectingPoint num="2" id="1331" /> +<TGConnectingPoint num="3" id="1332" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1342" > +<cdparam x="722" y="531" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="1341" /> +<P1 x="722" y="531" id="1566" /> +<P2 x="754" y="584" id="1529" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1340" > +<father id="1342" num="0" /> +<cdparam x="722" y="571" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1336" /> +<TGConnectingPoint num="1" id="1337" /> +<TGConnectingPoint num="2" id="1338" /> +<TGConnectingPoint num="3" id="1339" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1349" > +<cdparam x="612" y="624" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1348" /> +<P1 x="575" y="615" id="1541" /> +<P2 x="540" y="748" id="1473" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1347" > +<father id="1349" num="0" /> +<cdparam x="448" y="646" /> +<sizeparam width="428" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1343" /> +<TGConnectingPoint num="1" id="1344" /> +<TGConnectingPoint num="2" id="1345" /> +<TGConnectingPoint num="3" id="1346" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="currentDocument.currentPage = currentDocument.currentPage + 1" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1356" > +<cdparam x="575" y="531" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="1355" /> +<P1 x="575" y="531" id="1557" /> +<P2 x="575" y="585" id="1540" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1354" > +<father id="1356" num="0" /> +<cdparam x="580" y="551" /> +<sizeparam width="163" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1350" /> +<TGConnectingPoint num="1" id="1351" /> +<TGConnectingPoint num="2" id="1352" /> +<TGConnectingPoint num="3" id="1353" /> +<extraparam> +<guard value="[ not(currentPage == 0) ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<filesToIncludeLine value="" /> +<codeToIncludeLine value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1363" > +<cdparam x="427" y="615" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1362" /> +<P1 x="427" y="615" id="1462" /> +<P2 x="476" y="748" id="1480" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1361" > +<father id="1363" num="0" /> +<cdparam x="292" y="682" /> +<sizeparam width="428" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1357" /> +<TGConnectingPoint num="1" id="1358" /> +<TGConnectingPoint num="2" id="1359" /> +<TGConnectingPoint num="3" id="1360" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="currentDocument.currentPage = currentDocument.currentPage + 1" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1370" > +<cdparam x="408" y="540" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="1369" /> +<P1 x="427" y="531" id="1565" /> +<P2 x="427" y="585" id="1461" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1368" > +<father id="1370" num="0" /> +<cdparam x="284" y="574" /> +<sizeparam width="292" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1364" /> +<TGConnectingPoint num="1" id="1365" /> +<TGConnectingPoint num="2" id="1366" /> +<TGConnectingPoint num="3" id="1367" /> +<extraparam> +<guard value="[currentPage < currentDocument.nbOfPages ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1383" > +<cdparam x="277" y="657" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1379" /> +<TGConnectingPoint num="1" id="1380" /> +<TGConnectingPoint num="2" id="1381" /> +<TGConnectingPoint num="3" id="1382" /> +<P1 x="269" y="647" id="1440" /> +<P2 x="280" y="506" id="1554" /> +<Point x="269" y="676" /> +<Point x="186" y="676" /> +<Point x="186" y="515" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1371" > +<father id="1383" num="0" /> +<cdparam x="269" y="676" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1372" > +<father id="1383" num="1" /> +<cdparam x="186" y="676" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1373" > +<father id="1383" num="2" /> +<cdparam x="186" y="515" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1378" > +<father id="1383" num="3" /> +<cdparam x="255" y="697" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1374" /> +<TGConnectingPoint num="1" id="1375" /> +<TGConnectingPoint num="2" id="1376" /> +<TGConnectingPoint num="3" id="1377" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1390" > +<cdparam x="306" y="622" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1389" /> +<P1 x="269" y="595" id="1451" /> +<P2 x="269" y="617" id="1439" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1388" > +<father id="1390" num="0" /> +<cdparam x="306" y="662" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1384" /> +<TGConnectingPoint num="1" id="1385" /> +<TGConnectingPoint num="2" id="1386" /> +<TGConnectingPoint num="3" id="1387" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1397" > +<cdparam x="366" y="547" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="1396" /> +<P1 x="280" y="531" id="1556" /> +<P2 x="269" y="565" id="1450" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1395" > +<father id="1397" num="0" /> +<cdparam x="366" y="587" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1391" /> +<TGConnectingPoint num="1" id="1392" /> +<TGConnectingPoint num="2" id="1393" /> +<TGConnectingPoint num="3" id="1394" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1404" > +<cdparam x="408" y="468" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1403" /> +<P1 x="575" y="455" id="1593" /> +<P2 x="575" y="481" id="1552" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1402" > +<father id="1404" num="0" /> +<cdparam x="408" y="508" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1398" /> +<TGConnectingPoint num="1" id="1399" /> +<TGConnectingPoint num="2" id="1400" /> +<TGConnectingPoint num="3" id="1401" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1411" > +<cdparam x="408" y="397" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1410" /> +<P1 x="575" y="386" id="1609" /> +<P2 x="575" y="425" id="1592" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1409" > +<father id="1411" num="0" /> +<cdparam x="607" y="405" /> +<sizeparam width="288" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1405" /> +<TGConnectingPoint num="1" id="1406" /> +<TGConnectingPoint num="2" id="1407" /> +<TGConnectingPoint num="3" id="1408" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="currentPage = currentDocument.currentPage" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1418" > +<cdparam x="565" y="76" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="1417" /> +<P1 x="556" y="87" id="1718" /> +<P2 x="556" y="128" id="1678" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1416" > +<father id="1418" num="0" /> +<cdparam x="565" y="116" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1412" /> +<TGConnectingPoint num="1" id="1413" /> +<TGConnectingPoint num="2" id="1414" /> +<TGConnectingPoint num="3" id="1415" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1425" > +<cdparam x="565" y="171" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from state0 to Receive signal" value="null" /> +<TGConnectingPoint num="0" id="1424" /> +<P1 x="556" y="178" id="1683" /> +<P2 x="556" y="192" id="1666" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1423" > +<father id="1425" num="0" /> +<cdparam x="565" y="211" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1419" /> +<TGConnectingPoint num="1" id="1420" /> +<TGConnectingPoint num="2" id="1421" /> +<TGConnectingPoint num="3" id="1422" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="1438" > +<cdparam x="747" y="421" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Receive signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1434" /> +<TGConnectingPoint num="1" id="1435" /> +<TGConnectingPoint num="2" id="1436" /> +<TGConnectingPoint num="3" id="1437" /> +<P1 x="998" y="560" id="1656" /> +<P2 x="625" y="153" id="1681" /> +<Point x="1075" y="569" /> +<Point x="1080" y="272" /> +<Point x="882" y="153" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1426" > +<father id="1438" num="0" /> +<cdparam x="1075" y="569" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1427" > +<father id="1438" num="1" /> +<cdparam x="1080" y="272" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1428" > +<father id="1438" num="2" /> +<cdparam x="882" y="153" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1433" > +<father id="1438" num="3" /> +<cdparam x="747" y="461" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1429" /> +<TGConnectingPoint num="1" id="1430" /> +<TGConnectingPoint num="2" id="1431" /> +<TGConnectingPoint num="3" id="1432" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5103" id="1449" > +<cdparam x="206" y="622" /> +<sizeparam width="127" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Send signal" value="displayPage(page)" /> +<TGConnectingPoint num="0" id="1439" /> +<TGConnectingPoint num="1" id="1440" /> +<TGConnectingPoint num="2" id="1441" /> +<TGConnectingPoint num="3" id="1442" /> +<TGConnectingPoint num="4" id="1443" /> +<TGConnectingPoint num="5" id="1444" /> +<TGConnectingPoint num="6" id="1445" /> +<TGConnectingPoint num="7" id="1446" /> +<TGConnectingPoint num="8" id="1447" /> +<TGConnectingPoint num="9" id="1448" /> +</COMPONENT> + +<COMPONENT type="5104" id="1460" > +<cdparam x="213" y="570" /> +<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="getPage(page)" /> +<TGConnectingPoint num="0" id="1450" /> +<TGConnectingPoint num="1" id="1451" /> +<TGConnectingPoint num="2" id="1452" /> +<TGConnectingPoint num="3" id="1453" /> +<TGConnectingPoint num="4" id="1454" /> +<TGConnectingPoint num="5" id="1455" /> +<TGConnectingPoint num="6" id="1456" /> +<TGConnectingPoint num="7" id="1457" /> +<TGConnectingPoint num="8" id="1458" /> +<TGConnectingPoint num="9" id="1459" /> +</COMPONENT> + +<COMPONENT type="5104" id="1471" > +<cdparam x="374" y="590" /> +<sizeparam width="106" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="flipNextPage()" /> +<TGConnectingPoint num="0" id="1461" /> +<TGConnectingPoint num="1" id="1462" /> +<TGConnectingPoint num="2" id="1463" /> +<TGConnectingPoint num="3" id="1464" /> +<TGConnectingPoint num="4" id="1465" /> +<TGConnectingPoint num="5" id="1466" /> +<TGConnectingPoint num="6" id="1467" /> +<TGConnectingPoint num="7" id="1468" /> +<TGConnectingPoint num="8" id="1469" /> +<TGConnectingPoint num="9" id="1470" /> +</COMPONENT> + +<COMPONENT type="5106" id="1512" > +<cdparam x="412" y="748" /> +<sizeparam width="256" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="PageLoadingManagement" /> +<TGConnectingPoint num="0" id="1472" /> +<TGConnectingPoint num="1" id="1473" /> +<TGConnectingPoint num="2" id="1474" /> +<TGConnectingPoint num="3" id="1475" /> +<TGConnectingPoint num="4" id="1476" /> +<TGConnectingPoint num="5" id="1477" /> +<TGConnectingPoint num="6" id="1478" /> +<TGConnectingPoint num="7" id="1479" /> +<TGConnectingPoint num="8" id="1480" /> +<TGConnectingPoint num="9" id="1481" /> +<TGConnectingPoint num="10" id="1482" /> +<TGConnectingPoint num="11" id="1483" /> +<TGConnectingPoint num="12" id="1484" /> +<TGConnectingPoint num="13" id="1485" /> +<TGConnectingPoint num="14" id="1486" /> +<TGConnectingPoint num="15" id="1487" /> +<TGConnectingPoint num="16" id="1488" /> +<TGConnectingPoint num="17" id="1489" /> +<TGConnectingPoint num="18" id="1490" /> +<TGConnectingPoint num="19" id="1491" /> +<TGConnectingPoint num="20" id="1492" /> +<TGConnectingPoint num="21" id="1493" /> +<TGConnectingPoint num="22" id="1494" /> +<TGConnectingPoint num="23" id="1495" /> +<TGConnectingPoint num="24" id="1496" /> +<TGConnectingPoint num="25" id="1497" /> +<TGConnectingPoint num="26" id="1498" /> +<TGConnectingPoint num="27" id="1499" /> +<TGConnectingPoint num="28" id="1500" /> +<TGConnectingPoint num="29" id="1501" /> +<TGConnectingPoint num="30" id="1502" /> +<TGConnectingPoint num="31" id="1503" /> +<TGConnectingPoint num="32" id="1504" /> +<TGConnectingPoint num="33" id="1505" /> +<TGConnectingPoint num="34" id="1506" /> +<TGConnectingPoint num="35" id="1507" /> +<TGConnectingPoint num="36" id="1508" /> +<TGConnectingPoint num="37" id="1509" /> +<TGConnectingPoint num="38" id="1510" /> +<TGConnectingPoint num="39" id="1511" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5107" id="1528" > +<cdparam x="760" y="665" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="1513" /> +<TGConnectingPoint num="1" id="1514" /> +<TGConnectingPoint num="2" id="1515" /> +<TGConnectingPoint num="3" id="1516" /> +<TGConnectingPoint num="4" id="1517" /> +<TGConnectingPoint num="5" id="1518" /> +<TGConnectingPoint num="6" id="1519" /> +<TGConnectingPoint num="7" id="1520" /> +<TGConnectingPoint num="8" id="1521" /> +<TGConnectingPoint num="9" id="1522" /> +<TGConnectingPoint num="10" id="1523" /> +<TGConnectingPoint num="11" id="1524" /> +<TGConnectingPoint num="12" id="1525" /> +<TGConnectingPoint num="13" id="1526" /> +<TGConnectingPoint num="14" id="1527" /> +</COMPONENT> + +<COMPONENT type="5104" id="1539" > +<cdparam x="670" y="589" /> +<sizeparam width="169" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="goToPage(currentPage)" /> +<TGConnectingPoint num="0" id="1529" /> +<TGConnectingPoint num="1" id="1530" /> +<TGConnectingPoint num="2" id="1531" /> +<TGConnectingPoint num="3" id="1532" /> +<TGConnectingPoint num="4" id="1533" /> +<TGConnectingPoint num="5" id="1534" /> +<TGConnectingPoint num="6" id="1535" /> +<TGConnectingPoint num="7" id="1536" /> +<TGConnectingPoint num="8" id="1537" /> +<TGConnectingPoint num="9" id="1538" /> +</COMPONENT> + +<COMPONENT type="5104" id="1550" > +<cdparam x="510" y="590" /> +<sizeparam width="131" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="flipPreviousPage()" /> +<TGConnectingPoint num="0" id="1540" /> +<TGConnectingPoint num="1" id="1541" /> +<TGConnectingPoint num="2" id="1542" /> +<TGConnectingPoint num="3" id="1543" /> +<TGConnectingPoint num="4" id="1544" /> +<TGConnectingPoint num="5" id="1545" /> +<TGConnectingPoint num="6" id="1546" /> +<TGConnectingPoint num="7" id="1547" /> +<TGConnectingPoint num="8" id="1548" /> +<TGConnectingPoint num="9" id="1549" /> +</COMPONENT> + +<COMPONENT type="5106" id="1591" > +<cdparam x="280" y="481" /> +<sizeparam width="590" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForPageBeingLoadedOrUserEvent" /> +<TGConnectingPoint num="0" id="1551" /> +<TGConnectingPoint num="1" id="1552" /> +<TGConnectingPoint num="2" id="1553" /> +<TGConnectingPoint num="3" id="1554" /> +<TGConnectingPoint num="4" id="1555" /> +<TGConnectingPoint num="5" id="1556" /> +<TGConnectingPoint num="6" id="1557" /> +<TGConnectingPoint num="7" id="1558" /> +<TGConnectingPoint num="8" id="1559" /> +<TGConnectingPoint num="9" id="1560" /> +<TGConnectingPoint num="10" id="1561" /> +<TGConnectingPoint num="11" id="1562" /> +<TGConnectingPoint num="12" id="1563" /> +<TGConnectingPoint num="13" id="1564" /> +<TGConnectingPoint num="14" id="1565" /> +<TGConnectingPoint num="15" id="1566" /> +<TGConnectingPoint num="16" id="1567" /> +<TGConnectingPoint num="17" id="1568" /> +<TGConnectingPoint num="18" id="1569" /> +<TGConnectingPoint num="19" id="1570" /> +<TGConnectingPoint num="20" id="1571" /> +<TGConnectingPoint num="21" id="1572" /> +<TGConnectingPoint num="22" id="1573" /> +<TGConnectingPoint num="23" id="1574" /> +<TGConnectingPoint num="24" id="1575" /> +<TGConnectingPoint num="25" id="1576" /> +<TGConnectingPoint num="26" id="1577" /> +<TGConnectingPoint num="27" id="1578" /> +<TGConnectingPoint num="28" id="1579" /> +<TGConnectingPoint num="29" id="1580" /> +<TGConnectingPoint num="30" id="1581" /> +<TGConnectingPoint num="31" id="1582" /> +<TGConnectingPoint num="32" id="1583" /> +<TGConnectingPoint num="33" id="1584" /> +<TGConnectingPoint num="34" id="1585" /> +<TGConnectingPoint num="35" id="1586" /> +<TGConnectingPoint num="36" id="1587" /> +<TGConnectingPoint num="37" id="1588" /> +<TGConnectingPoint num="38" id="1589" /> +<TGConnectingPoint num="39" id="1590" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5103" id="1602" > +<cdparam x="438" y="430" /> +<sizeparam width="275" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Send signal" value="loadPage(currentDocument, currentPage)" /> +<TGConnectingPoint num="0" id="1592" /> +<TGConnectingPoint num="1" id="1593" /> +<TGConnectingPoint num="2" id="1594" /> +<TGConnectingPoint num="3" id="1595" /> +<TGConnectingPoint num="4" id="1596" /> +<TGConnectingPoint num="5" id="1597" /> +<TGConnectingPoint num="6" id="1598" /> +<TGConnectingPoint num="7" id="1599" /> +<TGConnectingPoint num="8" id="1600" /> +<TGConnectingPoint num="9" id="1601" /> +</COMPONENT> + +<COMPONENT type="5106" id="1643" > +<cdparam x="468" y="336" /> +<sizeparam width="214" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="PageLoadingManagement" /> +<TGConnectingPoint num="0" id="1603" /> +<TGConnectingPoint num="1" id="1604" /> +<TGConnectingPoint num="2" id="1605" /> +<TGConnectingPoint num="3" id="1606" /> +<TGConnectingPoint num="4" id="1607" /> +<TGConnectingPoint num="5" id="1608" /> +<TGConnectingPoint num="6" id="1609" /> +<TGConnectingPoint num="7" id="1610" /> +<TGConnectingPoint num="8" id="1611" /> +<TGConnectingPoint num="9" id="1612" /> +<TGConnectingPoint num="10" id="1613" /> +<TGConnectingPoint num="11" id="1614" /> +<TGConnectingPoint num="12" id="1615" /> +<TGConnectingPoint num="13" id="1616" /> +<TGConnectingPoint num="14" id="1617" /> +<TGConnectingPoint num="15" id="1618" /> +<TGConnectingPoint num="16" id="1619" /> +<TGConnectingPoint num="17" id="1620" /> +<TGConnectingPoint num="18" id="1621" /> +<TGConnectingPoint num="19" id="1622" /> +<TGConnectingPoint num="20" id="1623" /> +<TGConnectingPoint num="21" id="1624" /> +<TGConnectingPoint num="22" id="1625" /> +<TGConnectingPoint num="23" id="1626" /> +<TGConnectingPoint num="24" id="1627" /> +<TGConnectingPoint num="25" id="1628" /> +<TGConnectingPoint num="26" id="1629" /> +<TGConnectingPoint num="27" id="1630" /> +<TGConnectingPoint num="28" id="1631" /> +<TGConnectingPoint num="29" id="1632" /> +<TGConnectingPoint num="30" id="1633" /> +<TGConnectingPoint num="31" id="1634" /> +<TGConnectingPoint num="32" id="1635" /> +<TGConnectingPoint num="33" id="1636" /> +<TGConnectingPoint num="34" id="1637" /> +<TGConnectingPoint num="35" id="1638" /> +<TGConnectingPoint num="36" id="1639" /> +<TGConnectingPoint num="37" id="1640" /> +<TGConnectingPoint num="38" id="1641" /> +<TGConnectingPoint num="39" id="1642" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5104" id="1654" > +<cdparam x="692" y="302" /> +<sizeparam width="234" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="openDocument(currentDocument)" /> +<TGConnectingPoint num="0" id="1644" /> +<TGConnectingPoint num="1" id="1645" /> +<TGConnectingPoint num="2" id="1646" /> +<TGConnectingPoint num="3" id="1647" /> +<TGConnectingPoint num="4" id="1648" /> +<TGConnectingPoint num="5" id="1649" /> +<TGConnectingPoint num="6" id="1650" /> +<TGConnectingPoint num="7" id="1651" /> +<TGConnectingPoint num="8" id="1652" /> +<TGConnectingPoint num="9" id="1653" /> +</COMPONENT> + +<COMPONENT type="5104" id="1665" > +<cdparam x="967" y="535" /> +<sizeparam width="63" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="home()" /> +<TGConnectingPoint num="0" id="1655" /> +<TGConnectingPoint num="1" id="1656" /> +<TGConnectingPoint num="2" id="1657" /> +<TGConnectingPoint num="3" id="1658" /> +<TGConnectingPoint num="4" id="1659" /> +<TGConnectingPoint num="5" id="1660" /> +<TGConnectingPoint num="6" id="1661" /> +<TGConnectingPoint num="7" id="1662" /> +<TGConnectingPoint num="8" id="1663" /> +<TGConnectingPoint num="9" id="1664" /> +</COMPONENT> + +<COMPONENT type="5104" id="1676" > +<cdparam x="439" y="197" /> +<sizeparam width="234" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="Receive signal" value="openDocument(currentDocument)" /> +<TGConnectingPoint num="0" id="1666" /> +<TGConnectingPoint num="1" id="1667" /> +<TGConnectingPoint num="2" id="1668" /> +<TGConnectingPoint num="3" id="1669" /> +<TGConnectingPoint num="4" id="1670" /> +<TGConnectingPoint num="5" id="1671" /> +<TGConnectingPoint num="6" id="1672" /> +<TGConnectingPoint num="7" id="1673" /> +<TGConnectingPoint num="8" id="1674" /> +<TGConnectingPoint num="9" id="1675" /> +</COMPONENT> + +<COMPONENT type="5106" id="1717" > +<cdparam x="488" y="128" /> +<sizeparam width="137" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="state0" value="WaitingForDocument" /> +<TGConnectingPoint num="0" id="1677" /> +<TGConnectingPoint num="1" id="1678" /> +<TGConnectingPoint num="2" id="1679" /> +<TGConnectingPoint num="3" id="1680" /> +<TGConnectingPoint num="4" id="1681" /> +<TGConnectingPoint num="5" id="1682" /> +<TGConnectingPoint num="6" id="1683" /> +<TGConnectingPoint num="7" id="1684" /> +<TGConnectingPoint num="8" id="1685" /> +<TGConnectingPoint num="9" id="1686" /> +<TGConnectingPoint num="10" id="1687" /> +<TGConnectingPoint num="11" id="1688" /> +<TGConnectingPoint num="12" id="1689" /> +<TGConnectingPoint num="13" id="1690" /> +<TGConnectingPoint num="14" id="1691" /> +<TGConnectingPoint num="15" id="1692" /> +<TGConnectingPoint num="16" id="1693" /> +<TGConnectingPoint num="17" id="1694" /> +<TGConnectingPoint num="18" id="1695" /> +<TGConnectingPoint num="19" id="1696" /> +<TGConnectingPoint num="20" id="1697" /> +<TGConnectingPoint num="21" id="1698" /> +<TGConnectingPoint num="22" id="1699" /> +<TGConnectingPoint num="23" id="1700" /> +<TGConnectingPoint num="24" id="1701" /> +<TGConnectingPoint num="25" id="1702" /> +<TGConnectingPoint num="26" id="1703" /> +<TGConnectingPoint num="27" id="1704" /> +<TGConnectingPoint num="28" id="1705" /> +<TGConnectingPoint num="29" id="1706" /> +<TGConnectingPoint num="30" id="1707" /> +<TGConnectingPoint num="31" id="1708" /> +<TGConnectingPoint num="32" id="1709" /> +<TGConnectingPoint num="33" id="1710" /> +<TGConnectingPoint num="34" id="1711" /> +<TGConnectingPoint num="35" id="1712" /> +<TGConnectingPoint num="36" id="1713" /> +<TGConnectingPoint num="37" id="1714" /> +<TGConnectingPoint num="38" id="1715" /> +<TGConnectingPoint num="39" id="1716" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="1719" > +<cdparam x="549" y="67" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1718" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +</Modeling> + + + + +</TURTLEGMODELING> \ No newline at end of file diff --git a/ttool/src/test/resources/ui/diagram2avatar/input/exampleFunctionCall.xml b/ttool/src/test/resources/ui/diagram2avatar/input/exampleFunctionCall.xml new file mode 100644 index 0000000000000000000000000000000000000000..5b50e31e36d50f2a653e3537551e462e4f98a7a3 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2avatar/input/exampleFunctionCall.xml @@ -0,0 +1,1500 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> + +<TURTLEGMODELING version="0.98-beta4"> + +<Modeling type="AVATAR Design" nameTab="Design" > +<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="2500" minY="10" maxY="1500" > +<MainCode value="void __user_init() {"/> +<MainCode value="}"/> +<Optimized value="true" /> +<Validated value="" /> +<Ignored value="" /> + +<CONNECTOR type="5002" id="2" > +<cdparam x="289" y="131" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="1" /> +<P1 x="288" y="129" id="76" /> +<P2 x="451" y="138" id="50" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in chin(int v)" /> +<osd value="out chout(int v)" /> +<isd value="in chin(int v)" /> +<oso value="out chout(int v)" /> +<FIFOType asynchronous="false" size="1" blocking="false" private="false" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<COMPONENT type="302" id="19" > +<cdparam x="351" y="389" /> +<sizeparam width="375" height="97" minWidth="80" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Proverif Pragma" value="#InitialSystemKnowledge Bob.skey Alice.skey +#InitialSystemKnowledge Bob.secretData Alice.secretData +#Confidentiality Bob.secretData +" /> +<TGConnectingPoint num="0" id="3" /> +<TGConnectingPoint num="1" id="4" /> +<TGConnectingPoint num="2" id="5" /> +<TGConnectingPoint num="3" id="6" /> +<TGConnectingPoint num="4" id="7" /> +<TGConnectingPoint num="5" id="8" /> +<TGConnectingPoint num="6" id="9" /> +<TGConnectingPoint num="7" id="10" /> +<TGConnectingPoint num="8" id="11" /> +<TGConnectingPoint num="9" id="12" /> +<TGConnectingPoint num="10" id="13" /> +<TGConnectingPoint num="11" id="14" /> +<TGConnectingPoint num="12" id="15" /> +<TGConnectingPoint num="13" id="16" /> +<TGConnectingPoint num="14" id="17" /> +<TGConnectingPoint num="15" id="18" /> +<extraparam> +<Line value="#InitialSystemKnowledge Bob.skey Alice.skey" /> +<Line value="#InitialSystemKnowledge Bob.secretData Alice.secretData" /> +<Line value="#Confidentiality Bob.secretData" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5003" id="28" > +<cdparam x="622" y="271" /> +<sizeparam width="250" height="68" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="DataType0" value="Key" /> +<TGConnectingPoint num="0" id="20" /> +<TGConnectingPoint num="1" id="21" /> +<TGConnectingPoint num="2" id="22" /> +<TGConnectingPoint num="3" id="23" /> +<TGConnectingPoint num="4" id="24" /> +<TGConnectingPoint num="5" id="25" /> +<TGConnectingPoint num="6" id="26" /> +<TGConnectingPoint num="7" id="27" /> +<extraparam> +<Attribute access="0" id="data" value="" type="8" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5003" id="37" > +<cdparam x="345" y="273" /> +<sizeparam width="250" height="68" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="DataType0" value="Message" /> +<TGConnectingPoint num="0" id="29" /> +<TGConnectingPoint num="1" id="30" /> +<TGConnectingPoint num="2" id="31" /> +<TGConnectingPoint num="3" id="32" /> +<TGConnectingPoint num="4" id="33" /> +<TGConnectingPoint num="5" id="34" /> +<TGConnectingPoint num="6" id="35" /> +<TGConnectingPoint num="7" id="36" /> +<extraparam> +<Attribute access="0" id="data" value="" type="8" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5005" id="46" > +<cdparam x="89" y="278" /> +<sizeparam width="160" height="144" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="SendReceiveMessage" value="SendReceiveMessage" /> +<TGConnectingPoint num="0" id="38" /> +<TGConnectingPoint num="1" id="39" /> +<TGConnectingPoint num="2" id="40" /> +<TGConnectingPoint num="3" id="41" /> +<TGConnectingPoint num="4" id="42" /> +<TGConnectingPoint num="5" id="43" /> +<TGConnectingPoint num="6" id="44" /> +<TGConnectingPoint num="7" id="45" /> +<extraparam> +<CryptoLibraryFunction value="false" /> +<Parameter access="0" id="msg" value="" type="5" typeOther="Message" /> +<Parameter access="0" id="key" value="" type="5" typeOther="Key" /> +<Signal value="in inch(int v)" /> +<Signal value="out outch(int v)" /> +<ReturnAttribute access="0" id="msgRet" value="" type="5" typeOther="Message" /> +<Attribute access="0" id="d" value="" type="8" typeOther="" /> +<Attribute access="0" id="dummy" value="" type="5" typeOther="Message" /> +<Method value="Message sencrypt(Message msg, Key k)" /> +<Method value="Message sdecrypt(Message msg, Key k)" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="71" > +<cdparam x="451" y="38" /> +<sizeparam width="250" height="200" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Block1" value="Alice" /> +<TGConnectingPoint num="0" id="47" /> +<TGConnectingPoint num="1" id="48" /> +<TGConnectingPoint num="2" id="49" /> +<TGConnectingPoint num="3" id="50" /> +<TGConnectingPoint num="4" id="51" /> +<TGConnectingPoint num="5" id="52" /> +<TGConnectingPoint num="6" id="53" /> +<TGConnectingPoint num="7" id="54" /> +<TGConnectingPoint num="8" id="55" /> +<TGConnectingPoint num="9" id="56" /> +<TGConnectingPoint num="10" id="57" /> +<TGConnectingPoint num="11" id="58" /> +<TGConnectingPoint num="12" id="59" /> +<TGConnectingPoint num="13" id="60" /> +<TGConnectingPoint num="14" id="61" /> +<TGConnectingPoint num="15" id="62" /> +<TGConnectingPoint num="16" id="63" /> +<TGConnectingPoint num="17" id="64" /> +<TGConnectingPoint num="18" id="65" /> +<TGConnectingPoint num="19" id="66" /> +<TGConnectingPoint num="20" id="67" /> +<TGConnectingPoint num="21" id="68" /> +<TGConnectingPoint num="22" id="69" /> +<TGConnectingPoint num="23" id="70" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="send" value="" type="5" typeOther="Message" /> +<Attribute access="0" id="recv" value="" type="5" typeOther="Message" /> +<Attribute access="0" id="skey" value="" type="5" typeOther="Key" /> +<Attribute access="0" id="secretData" value="" type="8" typeOther="" /> +<Signal value="in chin(int v)" /> +<Signal value="out chout(int v)" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="96" > +<cdparam x="38" y="44" /> +<sizeparam width="250" height="170" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Block0" value="Bob" /> +<TGConnectingPoint num="0" id="72" /> +<TGConnectingPoint num="1" id="73" /> +<TGConnectingPoint num="2" id="74" /> +<TGConnectingPoint num="3" id="75" /> +<TGConnectingPoint num="4" id="76" /> +<TGConnectingPoint num="5" id="77" /> +<TGConnectingPoint num="6" id="78" /> +<TGConnectingPoint num="7" id="79" /> +<TGConnectingPoint num="8" id="80" /> +<TGConnectingPoint num="9" id="81" /> +<TGConnectingPoint num="10" id="82" /> +<TGConnectingPoint num="11" id="83" /> +<TGConnectingPoint num="12" id="84" /> +<TGConnectingPoint num="13" id="85" /> +<TGConnectingPoint num="14" id="86" /> +<TGConnectingPoint num="15" id="87" /> +<TGConnectingPoint num="16" id="88" /> +<TGConnectingPoint num="17" id="89" /> +<TGConnectingPoint num="18" id="90" /> +<TGConnectingPoint num="19" id="91" /> +<TGConnectingPoint num="20" id="92" /> +<TGConnectingPoint num="21" id="93" /> +<TGConnectingPoint num="22" id="94" /> +<TGConnectingPoint num="23" id="95" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="send" value="" type="5" typeOther="Message" /> +<Attribute access="0" id="recv" value="" type="5" typeOther="Message" /> +<Attribute access="0" id="skey" value="" type="5" typeOther="Key" /> +<Attribute access="0" id="secretData" value="" type="8" typeOther="" /> +<Signal value="in chin(int v)" /> +<Signal value="out chout(int v)" /> +</extraparam> +</COMPONENT> + + +</AVATARBlockDiagramPanel> + +<AVATARStateMachineDiagramPanel name="SendReceiveMessage" minX="10" maxX="2500" minY="10" maxY="1500" > +<CONNECTOR type="5102" id="103" > +<cdparam x="388" y="143" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="102" /> +<P1 x="388" y="143" id="132" /> +<P2 x="388" y="205" id="118" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="101" > +<father id="103" num="0" /> +<cdparam x="388" y="183" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="97" /> +<TGConnectingPoint num="1" id="98" /> +<TGConnectingPoint num="2" id="99" /> +<TGConnectingPoint num="3" id="100" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="110" > +<cdparam x="416" y="149" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="109" /> +<P1 x="388" y="235" id="119" /> +<P2 x="409" y="305" id="129" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="108" > +<father id="110" num="0" /> +<cdparam x="420" y="262" /> +<sizeparam width="202" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="104" /> +<TGConnectingPoint num="1" id="105" /> +<TGConnectingPoint num="2" id="106" /> +<TGConnectingPoint num="3" id="107" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="dummy.data = d" /> +<actions value="msgRet = sdecrypt(dummy, key)" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="117" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="116" /> +<P1 x="407" y="70" id="142" /> +<P2 x="388" y="113" id="131" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="115" > +<father id="117" num="0" /> +<cdparam x="423" y="87" /> +<sizeparam width="181" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="111" /> +<TGConnectingPoint num="1" id="112" /> +<TGConnectingPoint num="2" id="113" /> +<TGConnectingPoint num="3" id="114" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="dummy = sencrypt(msg, key)" /> +<actions value="d = dummy.data" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5104" id="128" > +<cdparam x="357" y="210" /> +<sizeparam width="62" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Receive signal" value="inch(d)" /> +<TGConnectingPoint num="0" id="118" /> +<TGConnectingPoint num="1" id="119" /> +<TGConnectingPoint num="2" id="120" /> +<TGConnectingPoint num="3" id="121" /> +<TGConnectingPoint num="4" id="122" /> +<TGConnectingPoint num="5" id="123" /> +<TGConnectingPoint num="6" id="124" /> +<TGConnectingPoint num="7" id="125" /> +<TGConnectingPoint num="8" id="126" /> +<TGConnectingPoint num="9" id="127" /> +</COMPONENT> + +<COMPONENT type="5101" id="130" > +<cdparam x="399" y="310" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="129" /> +</COMPONENT> + +<COMPONENT type="5103" id="141" > +<cdparam x="356" y="118" /> +<sizeparam width="64" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Send signal" value="outch(d)" /> +<TGConnectingPoint num="0" id="131" /> +<TGConnectingPoint num="1" id="132" /> +<TGConnectingPoint num="2" id="133" /> +<TGConnectingPoint num="3" id="134" /> +<TGConnectingPoint num="4" id="135" /> +<TGConnectingPoint num="5" id="136" /> +<TGConnectingPoint num="6" id="137" /> +<TGConnectingPoint num="7" id="138" /> +<TGConnectingPoint num="8" id="139" /> +<TGConnectingPoint num="9" id="140" /> +</COMPONENT> + +<COMPONENT type="5100" id="143" > +<cdparam x="400" y="50" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="142" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="Alice" minX="10" maxX="2500" minY="10" maxY="1500" > +<CONNECTOR type="5102" id="150" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="149" /> +<P1 x="407" y="70" id="219" /> +<P2 x="525" y="118" id="208" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="148" > +<father id="150" num="0" /> +<cdparam x="489" y="81" /> +<sizeparam width="152" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="144" /> +<TGConnectingPoint num="1" id="145" /> +<TGConnectingPoint num="2" id="146" /> +<TGConnectingPoint num="3" id="147" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="send.data = secretData" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="157" > +<cdparam x="426" y="161" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="156" /> +<P1 x="525" y="161" id="209" /> +<P2 x="429" y="199" id="167" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="155" > +<father id="157" num="0" /> +<cdparam x="426" y="201" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="151" /> +<TGConnectingPoint num="1" id="152" /> +<TGConnectingPoint num="2" id="153" /> +<TGConnectingPoint num="3" id="154" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="164" > +<cdparam x="479" y="249" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="163" /> +<P1 x="479" y="249" id="173" /> +<P2 x="480" y="281" id="165" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="162" > +<father id="164" num="0" /> +<cdparam x="479" y="289" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="158" /> +<TGConnectingPoint num="1" id="159" /> +<TGConnectingPoint num="2" id="160" /> +<TGConnectingPoint num="3" id="161" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5101" id="166" > +<cdparam x="470" y="286" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="165" /> +</COMPONENT> + +<COMPONENT type="5106" id="207" > +<cdparam x="429" y="199" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="State" value="state0" /> +<TGConnectingPoint num="0" id="167" /> +<TGConnectingPoint num="1" id="168" /> +<TGConnectingPoint num="2" id="169" /> +<TGConnectingPoint num="3" id="170" /> +<TGConnectingPoint num="4" id="171" /> +<TGConnectingPoint num="5" id="172" /> +<TGConnectingPoint num="6" id="173" /> +<TGConnectingPoint num="7" id="174" /> +<TGConnectingPoint num="8" id="175" /> +<TGConnectingPoint num="9" id="176" /> +<TGConnectingPoint num="10" id="177" /> +<TGConnectingPoint num="11" id="178" /> +<TGConnectingPoint num="12" id="179" /> +<TGConnectingPoint num="13" id="180" /> +<TGConnectingPoint num="14" id="181" /> +<TGConnectingPoint num="15" id="182" /> +<TGConnectingPoint num="16" id="183" /> +<TGConnectingPoint num="17" id="184" /> +<TGConnectingPoint num="18" id="185" /> +<TGConnectingPoint num="19" id="186" /> +<TGConnectingPoint num="20" id="187" /> +<TGConnectingPoint num="21" id="188" /> +<TGConnectingPoint num="22" id="189" /> +<TGConnectingPoint num="23" id="190" /> +<TGConnectingPoint num="24" id="191" /> +<TGConnectingPoint num="25" id="192" /> +<TGConnectingPoint num="26" id="193" /> +<TGConnectingPoint num="27" id="194" /> +<TGConnectingPoint num="28" id="195" /> +<TGConnectingPoint num="29" id="196" /> +<TGConnectingPoint num="30" id="197" /> +<TGConnectingPoint num="31" id="198" /> +<TGConnectingPoint num="32" id="199" /> +<TGConnectingPoint num="33" id="200" /> +<TGConnectingPoint num="34" id="201" /> +<TGConnectingPoint num="35" id="202" /> +<TGConnectingPoint num="36" id="203" /> +<TGConnectingPoint num="37" id="204" /> +<TGConnectingPoint num="38" id="205" /> +<TGConnectingPoint num="39" id="206" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5112" id="218" > +<cdparam x="376" y="123" /> +<sizeparam width="298" height="33" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Library function call" value="recv = SendReceiveMessage (send, skey)" /> +<TGConnectingPoint num="0" id="208" /> +<TGConnectingPoint num="1" id="209" /> +<TGConnectingPoint num="2" id="210" /> +<TGConnectingPoint num="3" id="211" /> +<TGConnectingPoint num="4" id="212" /> +<TGConnectingPoint num="5" id="213" /> +<TGConnectingPoint num="6" id="214" /> +<TGConnectingPoint num="7" id="215" /> +<TGConnectingPoint num="8" id="216" /> +<TGConnectingPoint num="9" id="217" /> +<extraparam> +<LibraryFunction name="SendReceiveMessage" /> +<Parameter id="send" /> +<Parameter id="skey" /> +<Signal value="in chin(int v)" /> +<Signal value="out chout(int v)" /> +<ReturnAttribute id="recv" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="220" > +<cdparam x="400" y="50" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="219" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="Bob" minX="10" maxX="2500" minY="10" maxY="1500" > +<CONNECTOR type="5102" id="227" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="226" /> +<P1 x="407" y="70" id="296" /> +<P2 x="534" y="130" id="285" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="225" > +<father id="227" num="0" /> +<cdparam x="495" y="86" /> +<sizeparam width="152" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="221" /> +<TGConnectingPoint num="1" id="222" /> +<TGConnectingPoint num="2" id="223" /> +<TGConnectingPoint num="3" id="224" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="send.data = secretData" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="234" > +<cdparam x="423" y="173" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="233" /> +<P1 x="534" y="173" id="286" /> +<P2 x="435" y="259" id="244" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="232" > +<father id="234" num="0" /> +<cdparam x="509" y="214" /> +<sizeparam width="175" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="228" /> +<TGConnectingPoint num="1" id="229" /> +<TGConnectingPoint num="2" id="230" /> +<TGConnectingPoint num="3" id="231" /> +<extraparam> +<guard value="[ recv.data == secretData ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="241" > +<cdparam x="472" y="309" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="240" /> +<P1 x="472" y="309" id="273" /> +<P2 x="467" y="336" id="242" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="239" > +<father id="241" num="0" /> +<cdparam x="472" y="349" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="235" /> +<TGConnectingPoint num="1" id="236" /> +<TGConnectingPoint num="2" id="237" /> +<TGConnectingPoint num="3" id="238" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5101" id="243" > +<cdparam x="457" y="341" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="242" /> +</COMPONENT> + +<COMPONENT type="5106" id="284" > +<cdparam x="435" y="259" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="State" value="state0" /> +<TGConnectingPoint num="0" id="244" /> +<TGConnectingPoint num="1" id="245" /> +<TGConnectingPoint num="2" id="246" /> +<TGConnectingPoint num="3" id="247" /> +<TGConnectingPoint num="4" id="248" /> +<TGConnectingPoint num="5" id="249" /> +<TGConnectingPoint num="6" id="250" /> +<TGConnectingPoint num="7" id="251" /> +<TGConnectingPoint num="8" id="252" /> +<TGConnectingPoint num="9" id="253" /> +<TGConnectingPoint num="10" id="254" /> +<TGConnectingPoint num="11" id="255" /> +<TGConnectingPoint num="12" id="256" /> +<TGConnectingPoint num="13" id="257" /> +<TGConnectingPoint num="14" id="258" /> +<TGConnectingPoint num="15" id="259" /> +<TGConnectingPoint num="16" id="260" /> +<TGConnectingPoint num="17" id="261" /> +<TGConnectingPoint num="18" id="262" /> +<TGConnectingPoint num="19" id="263" /> +<TGConnectingPoint num="20" id="264" /> +<TGConnectingPoint num="21" id="265" /> +<TGConnectingPoint num="22" id="266" /> +<TGConnectingPoint num="23" id="267" /> +<TGConnectingPoint num="24" id="268" /> +<TGConnectingPoint num="25" id="269" /> +<TGConnectingPoint num="26" id="270" /> +<TGConnectingPoint num="27" id="271" /> +<TGConnectingPoint num="28" id="272" /> +<TGConnectingPoint num="29" id="273" /> +<TGConnectingPoint num="30" id="274" /> +<TGConnectingPoint num="31" id="275" /> +<TGConnectingPoint num="32" id="276" /> +<TGConnectingPoint num="33" id="277" /> +<TGConnectingPoint num="34" id="278" /> +<TGConnectingPoint num="35" id="279" /> +<TGConnectingPoint num="36" id="280" /> +<TGConnectingPoint num="37" id="281" /> +<TGConnectingPoint num="38" id="282" /> +<TGConnectingPoint num="39" id="283" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5112" id="295" > +<cdparam x="373" y="135" /> +<sizeparam width="323" height="33" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Library function call" value="recv = SendReceiveMessage (send, skey)" /> +<TGConnectingPoint num="0" id="285" /> +<TGConnectingPoint num="1" id="286" /> +<TGConnectingPoint num="2" id="287" /> +<TGConnectingPoint num="3" id="288" /> +<TGConnectingPoint num="4" id="289" /> +<TGConnectingPoint num="5" id="290" /> +<TGConnectingPoint num="6" id="291" /> +<TGConnectingPoint num="7" id="292" /> +<TGConnectingPoint num="8" id="293" /> +<TGConnectingPoint num="9" id="294" /> +<extraparam> +<LibraryFunction name="SendReceiveMessage" /> +<Parameter id="send" /> +<Parameter id="skey" /> +<Signal value="in chin(int v)" /> +<Signal value="out chout(int v)" /> +<ReturnAttribute id="recv" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="297" > +<cdparam x="400" y="50" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="296" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +</Modeling> + + + + +<Modeling type="AVATAR Design" nameTab="DesignNonConfidential" > +<AVATARBlockDiagramPanel name="Block Diagram" minX="10" maxX="2500" minY="10" maxY="1500" > +<MainCode value="void __user_init() {"/> +<MainCode value="}"/> +<Optimized value="true" /> +<Validated value="SendReceiveMessage;Alice;Bob;" /> +<Ignored value="" /> + +<CONNECTOR type="5002" id="299" > +<cdparam x="289" y="131" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="" /> +<TGConnectingPoint num="0" id="298" /> +<P1 x="288" y="129" id="373" /> +<P2 x="466" y="136" id="347" /> +<AutomaticDrawing data="true" /> +<extraparam> +<iso value="in chin(int v)" /> +<osd value="out chout(int v)" /> +<isd value="in chin(int v)" /> +<oso value="out chout(int v)" /> +<FIFOType asynchronous="false" size="1" blocking="false" private="false" broadcast="false" lossy="false" /> +</extraparam> +</CONNECTOR> +<COMPONENT type="302" id="316" > +<cdparam x="350" y="372" /> +<sizeparam width="375" height="97" minWidth="80" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Proverif Pragma" value="#InitialSystemKnowledge Bob.skey Alice.skey +#InitialSystemKnowledge Bob.secretData Alice.secretData +#Confidentiality Bob.secretData +" /> +<TGConnectingPoint num="0" id="300" /> +<TGConnectingPoint num="1" id="301" /> +<TGConnectingPoint num="2" id="302" /> +<TGConnectingPoint num="3" id="303" /> +<TGConnectingPoint num="4" id="304" /> +<TGConnectingPoint num="5" id="305" /> +<TGConnectingPoint num="6" id="306" /> +<TGConnectingPoint num="7" id="307" /> +<TGConnectingPoint num="8" id="308" /> +<TGConnectingPoint num="9" id="309" /> +<TGConnectingPoint num="10" id="310" /> +<TGConnectingPoint num="11" id="311" /> +<TGConnectingPoint num="12" id="312" /> +<TGConnectingPoint num="13" id="313" /> +<TGConnectingPoint num="14" id="314" /> +<TGConnectingPoint num="15" id="315" /> +<extraparam> +<Line value="#InitialSystemKnowledge Bob.skey Alice.skey" /> +<Line value="#InitialSystemKnowledge Bob.secretData Alice.secretData" /> +<Line value="#Confidentiality Bob.secretData" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5003" id="325" > +<cdparam x="622" y="271" /> +<sizeparam width="250" height="68" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="DataType0" value="Key" /> +<TGConnectingPoint num="0" id="317" /> +<TGConnectingPoint num="1" id="318" /> +<TGConnectingPoint num="2" id="319" /> +<TGConnectingPoint num="3" id="320" /> +<TGConnectingPoint num="4" id="321" /> +<TGConnectingPoint num="5" id="322" /> +<TGConnectingPoint num="6" id="323" /> +<TGConnectingPoint num="7" id="324" /> +<extraparam> +<Attribute access="0" id="data" value="" type="8" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5003" id="334" > +<cdparam x="345" y="273" /> +<sizeparam width="250" height="68" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="DataType0" value="Message" /> +<TGConnectingPoint num="0" id="326" /> +<TGConnectingPoint num="1" id="327" /> +<TGConnectingPoint num="2" id="328" /> +<TGConnectingPoint num="3" id="329" /> +<TGConnectingPoint num="4" id="330" /> +<TGConnectingPoint num="5" id="331" /> +<TGConnectingPoint num="6" id="332" /> +<TGConnectingPoint num="7" id="333" /> +<extraparam> +<Attribute access="0" id="data" value="" type="8" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5005" id="343" > +<cdparam x="89" y="278" /> +<sizeparam width="160" height="144" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="SendReceiveMessage" value="SendReceiveMessage" /> +<TGConnectingPoint num="0" id="335" /> +<TGConnectingPoint num="1" id="336" /> +<TGConnectingPoint num="2" id="337" /> +<TGConnectingPoint num="3" id="338" /> +<TGConnectingPoint num="4" id="339" /> +<TGConnectingPoint num="5" id="340" /> +<TGConnectingPoint num="6" id="341" /> +<TGConnectingPoint num="7" id="342" /> +<extraparam> +<CryptoLibraryFunction value="false" /> +<Parameter access="0" id="msg" value="" type="5" typeOther="Message" /> +<Parameter access="0" id="key" value="" type="5" typeOther="Key" /> +<Signal value="in inch(int v)" /> +<Signal value="out outch(int v)" /> +<ReturnAttribute access="0" id="msgRet" value="" type="5" typeOther="Message" /> +<Attribute access="0" id="d" value="" type="8" typeOther="" /> +<Attribute access="0" id="dummy" value="" type="5" typeOther="Message" /> +<Method value="Message sencrypt(Message msg, Key k)" /> +<Method value="Message sdecrypt(Message msg, Key k)" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="368" > +<cdparam x="466" y="36" /> +<sizeparam width="250" height="200" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Block1" value="Alice" /> +<TGConnectingPoint num="0" id="344" /> +<TGConnectingPoint num="1" id="345" /> +<TGConnectingPoint num="2" id="346" /> +<TGConnectingPoint num="3" id="347" /> +<TGConnectingPoint num="4" id="348" /> +<TGConnectingPoint num="5" id="349" /> +<TGConnectingPoint num="6" id="350" /> +<TGConnectingPoint num="7" id="351" /> +<TGConnectingPoint num="8" id="352" /> +<TGConnectingPoint num="9" id="353" /> +<TGConnectingPoint num="10" id="354" /> +<TGConnectingPoint num="11" id="355" /> +<TGConnectingPoint num="12" id="356" /> +<TGConnectingPoint num="13" id="357" /> +<TGConnectingPoint num="14" id="358" /> +<TGConnectingPoint num="15" id="359" /> +<TGConnectingPoint num="16" id="360" /> +<TGConnectingPoint num="17" id="361" /> +<TGConnectingPoint num="18" id="362" /> +<TGConnectingPoint num="19" id="363" /> +<TGConnectingPoint num="20" id="364" /> +<TGConnectingPoint num="21" id="365" /> +<TGConnectingPoint num="22" id="366" /> +<TGConnectingPoint num="23" id="367" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="send" value="" type="5" typeOther="Message" /> +<Attribute access="0" id="recv" value="" type="5" typeOther="Message" /> +<Attribute access="0" id="skey" value="" type="5" typeOther="Key" /> +<Attribute access="0" id="secretData" value="" type="8" typeOther="" /> +<Signal value="in chin(int v)" /> +<Signal value="out chout(int v)" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5000" id="393" > +<cdparam x="38" y="44" /> +<sizeparam width="250" height="170" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Block0" value="Bob" /> +<TGConnectingPoint num="0" id="369" /> +<TGConnectingPoint num="1" id="370" /> +<TGConnectingPoint num="2" id="371" /> +<TGConnectingPoint num="3" id="372" /> +<TGConnectingPoint num="4" id="373" /> +<TGConnectingPoint num="5" id="374" /> +<TGConnectingPoint num="6" id="375" /> +<TGConnectingPoint num="7" id="376" /> +<TGConnectingPoint num="8" id="377" /> +<TGConnectingPoint num="9" id="378" /> +<TGConnectingPoint num="10" id="379" /> +<TGConnectingPoint num="11" id="380" /> +<TGConnectingPoint num="12" id="381" /> +<TGConnectingPoint num="13" id="382" /> +<TGConnectingPoint num="14" id="383" /> +<TGConnectingPoint num="15" id="384" /> +<TGConnectingPoint num="16" id="385" /> +<TGConnectingPoint num="17" id="386" /> +<TGConnectingPoint num="18" id="387" /> +<TGConnectingPoint num="19" id="388" /> +<TGConnectingPoint num="20" id="389" /> +<TGConnectingPoint num="21" id="390" /> +<TGConnectingPoint num="22" id="391" /> +<TGConnectingPoint num="23" id="392" /> +<extraparam> +<CryptoBlock value="false" /> +<Attribute access="0" id="send" value="" type="5" typeOther="Message" /> +<Attribute access="0" id="recv" value="" type="5" typeOther="Message" /> +<Attribute access="0" id="skey" value="" type="5" typeOther="Key" /> +<Attribute access="0" id="secretData" value="" type="8" typeOther="" /> +<Signal value="in chin(int v)" /> +<Signal value="out chout(int v)" /> +</extraparam> +</COMPONENT> + + +</AVATARBlockDiagramPanel> + +<AVATARStateMachineDiagramPanel name="SendReceiveMessage" minX="10" maxX="2500" minY="10" maxY="1500" > +<CONNECTOR type="5102" id="400" > +<cdparam x="388" y="143" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="399" /> +<P1 x="388" y="143" id="429" /> +<P2 x="388" y="205" id="415" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="398" > +<father id="400" num="0" /> +<cdparam x="388" y="183" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="394" /> +<TGConnectingPoint num="1" id="395" /> +<TGConnectingPoint num="2" id="396" /> +<TGConnectingPoint num="3" id="397" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="407" > +<cdparam x="416" y="149" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="406" /> +<P1 x="388" y="235" id="416" /> +<P2 x="409" y="305" id="426" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="405" > +<father id="407" num="0" /> +<cdparam x="420" y="262" /> +<sizeparam width="202" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="401" /> +<TGConnectingPoint num="1" id="402" /> +<TGConnectingPoint num="2" id="403" /> +<TGConnectingPoint num="3" id="404" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="dummy.data = d" /> +<actions value="msgRet = sdecrypt(dummy, key)" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="414" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="413" /> +<P1 x="407" y="70" id="439" /> +<P2 x="388" y="113" id="428" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="412" > +<father id="414" num="0" /> +<cdparam x="423" y="87" /> +<sizeparam width="181" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="408" /> +<TGConnectingPoint num="1" id="409" /> +<TGConnectingPoint num="2" id="410" /> +<TGConnectingPoint num="3" id="411" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="dummy = sencrypt(msg, key)" /> +<actions value="d = dummy.data" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5104" id="425" > +<cdparam x="357" y="210" /> +<sizeparam width="62" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Receive signal" value="inch(d)" /> +<TGConnectingPoint num="0" id="415" /> +<TGConnectingPoint num="1" id="416" /> +<TGConnectingPoint num="2" id="417" /> +<TGConnectingPoint num="3" id="418" /> +<TGConnectingPoint num="4" id="419" /> +<TGConnectingPoint num="5" id="420" /> +<TGConnectingPoint num="6" id="421" /> +<TGConnectingPoint num="7" id="422" /> +<TGConnectingPoint num="8" id="423" /> +<TGConnectingPoint num="9" id="424" /> +</COMPONENT> + +<COMPONENT type="5101" id="427" > +<cdparam x="399" y="310" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="426" /> +</COMPONENT> + +<COMPONENT type="5103" id="438" > +<cdparam x="356" y="118" /> +<sizeparam width="64" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Send signal" value="outch(d)" /> +<TGConnectingPoint num="0" id="428" /> +<TGConnectingPoint num="1" id="429" /> +<TGConnectingPoint num="2" id="430" /> +<TGConnectingPoint num="3" id="431" /> +<TGConnectingPoint num="4" id="432" /> +<TGConnectingPoint num="5" id="433" /> +<TGConnectingPoint num="6" id="434" /> +<TGConnectingPoint num="7" id="435" /> +<TGConnectingPoint num="8" id="436" /> +<TGConnectingPoint num="9" id="437" /> +</COMPONENT> + +<COMPONENT type="5100" id="440" > +<cdparam x="400" y="50" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="439" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="Alice" minX="10" maxX="2500" minY="10" maxY="1500" > +<CONNECTOR type="5102" id="447" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="446" /> +<P1 x="407" y="70" id="516" /> +<P2 x="525" y="118" id="505" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="445" > +<father id="447" num="0" /> +<cdparam x="489" y="81" /> +<sizeparam width="152" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="441" /> +<TGConnectingPoint num="1" id="442" /> +<TGConnectingPoint num="2" id="443" /> +<TGConnectingPoint num="3" id="444" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="send.data = secretData" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="454" > +<cdparam x="426" y="161" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="453" /> +<P1 x="525" y="161" id="506" /> +<P2 x="429" y="199" id="464" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="452" > +<father id="454" num="0" /> +<cdparam x="426" y="201" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="448" /> +<TGConnectingPoint num="1" id="449" /> +<TGConnectingPoint num="2" id="450" /> +<TGConnectingPoint num="3" id="451" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="461" > +<cdparam x="479" y="249" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="460" /> +<P1 x="479" y="249" id="470" /> +<P2 x="480" y="281" id="462" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="459" > +<father id="461" num="0" /> +<cdparam x="479" y="289" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="455" /> +<TGConnectingPoint num="1" id="456" /> +<TGConnectingPoint num="2" id="457" /> +<TGConnectingPoint num="3" id="458" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5101" id="463" > +<cdparam x="470" y="286" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="462" /> +</COMPONENT> + +<COMPONENT type="5106" id="504" > +<cdparam x="429" y="199" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="State" value="state0" /> +<TGConnectingPoint num="0" id="464" /> +<TGConnectingPoint num="1" id="465" /> +<TGConnectingPoint num="2" id="466" /> +<TGConnectingPoint num="3" id="467" /> +<TGConnectingPoint num="4" id="468" /> +<TGConnectingPoint num="5" id="469" /> +<TGConnectingPoint num="6" id="470" /> +<TGConnectingPoint num="7" id="471" /> +<TGConnectingPoint num="8" id="472" /> +<TGConnectingPoint num="9" id="473" /> +<TGConnectingPoint num="10" id="474" /> +<TGConnectingPoint num="11" id="475" /> +<TGConnectingPoint num="12" id="476" /> +<TGConnectingPoint num="13" id="477" /> +<TGConnectingPoint num="14" id="478" /> +<TGConnectingPoint num="15" id="479" /> +<TGConnectingPoint num="16" id="480" /> +<TGConnectingPoint num="17" id="481" /> +<TGConnectingPoint num="18" id="482" /> +<TGConnectingPoint num="19" id="483" /> +<TGConnectingPoint num="20" id="484" /> +<TGConnectingPoint num="21" id="485" /> +<TGConnectingPoint num="22" id="486" /> +<TGConnectingPoint num="23" id="487" /> +<TGConnectingPoint num="24" id="488" /> +<TGConnectingPoint num="25" id="489" /> +<TGConnectingPoint num="26" id="490" /> +<TGConnectingPoint num="27" id="491" /> +<TGConnectingPoint num="28" id="492" /> +<TGConnectingPoint num="29" id="493" /> +<TGConnectingPoint num="30" id="494" /> +<TGConnectingPoint num="31" id="495" /> +<TGConnectingPoint num="32" id="496" /> +<TGConnectingPoint num="33" id="497" /> +<TGConnectingPoint num="34" id="498" /> +<TGConnectingPoint num="35" id="499" /> +<TGConnectingPoint num="36" id="500" /> +<TGConnectingPoint num="37" id="501" /> +<TGConnectingPoint num="38" id="502" /> +<TGConnectingPoint num="39" id="503" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5112" id="515" > +<cdparam x="376" y="123" /> +<sizeparam width="298" height="33" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Library function call" value="recv = SendReceiveMessage (send, skey)" /> +<TGConnectingPoint num="0" id="505" /> +<TGConnectingPoint num="1" id="506" /> +<TGConnectingPoint num="2" id="507" /> +<TGConnectingPoint num="3" id="508" /> +<TGConnectingPoint num="4" id="509" /> +<TGConnectingPoint num="5" id="510" /> +<TGConnectingPoint num="6" id="511" /> +<TGConnectingPoint num="7" id="512" /> +<TGConnectingPoint num="8" id="513" /> +<TGConnectingPoint num="9" id="514" /> +<extraparam> +<LibraryFunction name="SendReceiveMessage" /> +<Parameter id="send" /> +<Parameter id="skey" /> +<Signal value="in chin(int v)" /> +<Signal value="out chout(int v)" /> +<ReturnAttribute id="recv" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="517" > +<cdparam x="400" y="50" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="516" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +<AVATARStateMachineDiagramPanel name="Bob" minX="10" maxX="2500" minY="10" maxY="1500" > +<CONNECTOR type="5102" id="524" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="523" /> +<P1 x="407" y="70" id="611" /> +<P2 x="534" y="130" id="600" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="522" > +<father id="524" num="0" /> +<cdparam x="495" y="86" /> +<sizeparam width="152" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="518" /> +<TGConnectingPoint num="1" id="519" /> +<TGConnectingPoint num="2" id="520" /> +<TGConnectingPoint num="3" id="521" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="send.data = secretData" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="531" > +<cdparam x="423" y="173" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="530" /> +<P1 x="534" y="173" id="601" /> +<P2 x="411" y="233" id="559" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="529" > +<father id="531" num="0" /> +<cdparam x="509" y="214" /> +<sizeparam width="175" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="525" /> +<TGConnectingPoint num="1" id="526" /> +<TGConnectingPoint num="2" id="527" /> +<TGConnectingPoint num="3" id="528" /> +<extraparam> +<guard value="[ recv.data == secretData ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="538" > +<cdparam x="472" y="309" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="537" /> +<P1 x="412" y="373" id="547" /> +<P2 x="444" y="425" id="557" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="536" > +<father id="538" num="0" /> +<cdparam x="472" y="349" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="532" /> +<TGConnectingPoint num="1" id="533" /> +<TGConnectingPoint num="2" id="534" /> +<TGConnectingPoint num="3" id="535" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="5102" id="545" > +<cdparam x="423" y="283" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<TGConnectingPoint num="0" id="544" /> +<P1 x="423" y="283" id="587" /> +<P2 x="412" y="343" id="546" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="543" > +<father id="545" num="0" /> +<cdparam x="423" y="323" /> +<sizeparam width="149" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="539" /> +<TGConnectingPoint num="1" id="540" /> +<TGConnectingPoint num="2" id="541" /> +<TGConnectingPoint num="3" id="542" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<actions value="secretData = skey.data" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="5103" id="556" > +<cdparam x="349" y="348" /> +<sizeparam width="126" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Send signal" value="chout(secretData)" /> +<TGConnectingPoint num="0" id="546" /> +<TGConnectingPoint num="1" id="547" /> +<TGConnectingPoint num="2" id="548" /> +<TGConnectingPoint num="3" id="549" /> +<TGConnectingPoint num="4" id="550" /> +<TGConnectingPoint num="5" id="551" /> +<TGConnectingPoint num="6" id="552" /> +<TGConnectingPoint num="7" id="553" /> +<TGConnectingPoint num="8" id="554" /> +<TGConnectingPoint num="9" id="555" /> +</COMPONENT> + +<COMPONENT type="5101" id="558" > +<cdparam x="434" y="430" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="557" /> +</COMPONENT> + +<COMPONENT type="5106" id="599" > +<cdparam x="411" y="233" /> +<sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="State" value="state0" /> +<TGConnectingPoint num="0" id="559" /> +<TGConnectingPoint num="1" id="560" /> +<TGConnectingPoint num="2" id="561" /> +<TGConnectingPoint num="3" id="562" /> +<TGConnectingPoint num="4" id="563" /> +<TGConnectingPoint num="5" id="564" /> +<TGConnectingPoint num="6" id="565" /> +<TGConnectingPoint num="7" id="566" /> +<TGConnectingPoint num="8" id="567" /> +<TGConnectingPoint num="9" id="568" /> +<TGConnectingPoint num="10" id="569" /> +<TGConnectingPoint num="11" id="570" /> +<TGConnectingPoint num="12" id="571" /> +<TGConnectingPoint num="13" id="572" /> +<TGConnectingPoint num="14" id="573" /> +<TGConnectingPoint num="15" id="574" /> +<TGConnectingPoint num="16" id="575" /> +<TGConnectingPoint num="17" id="576" /> +<TGConnectingPoint num="18" id="577" /> +<TGConnectingPoint num="19" id="578" /> +<TGConnectingPoint num="20" id="579" /> +<TGConnectingPoint num="21" id="580" /> +<TGConnectingPoint num="22" id="581" /> +<TGConnectingPoint num="23" id="582" /> +<TGConnectingPoint num="24" id="583" /> +<TGConnectingPoint num="25" id="584" /> +<TGConnectingPoint num="26" id="585" /> +<TGConnectingPoint num="27" id="586" /> +<TGConnectingPoint num="28" id="587" /> +<TGConnectingPoint num="29" id="588" /> +<TGConnectingPoint num="30" id="589" /> +<TGConnectingPoint num="31" id="590" /> +<TGConnectingPoint num="32" id="591" /> +<TGConnectingPoint num="33" id="592" /> +<TGConnectingPoint num="34" id="593" /> +<TGConnectingPoint num="35" id="594" /> +<TGConnectingPoint num="36" id="595" /> +<TGConnectingPoint num="37" id="596" /> +<TGConnectingPoint num="38" id="597" /> +<TGConnectingPoint num="39" id="598" /> +<extraparam> +</extraparam> +</COMPONENT> + +<COMPONENT type="5112" id="610" > +<cdparam x="373" y="135" /> +<sizeparam width="323" height="33" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Library function call" value="recv = SendReceiveMessage (send, skey)" /> +<TGConnectingPoint num="0" id="600" /> +<TGConnectingPoint num="1" id="601" /> +<TGConnectingPoint num="2" id="602" /> +<TGConnectingPoint num="3" id="603" /> +<TGConnectingPoint num="4" id="604" /> +<TGConnectingPoint num="5" id="605" /> +<TGConnectingPoint num="6" id="606" /> +<TGConnectingPoint num="7" id="607" /> +<TGConnectingPoint num="8" id="608" /> +<TGConnectingPoint num="9" id="609" /> +<extraparam> +<LibraryFunction name="SendReceiveMessage" /> +<Parameter id="send" /> +<Parameter id="skey" /> +<Signal value="in chin(int v)" /> +<Signal value="out chout(int v)" /> +<ReturnAttribute id="recv" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5100" id="612" > +<cdparam x="400" y="50" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="611" /> +</COMPONENT> + + +</AVATARStateMachineDiagramPanel> + +</Modeling> + + + + +</TURTLEGMODELING> \ No newline at end of file diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/Mapping_0.xml b/ttool/src/test/resources/ui/diagram2tml/expected/Mapping_0.xml new file mode 100644 index 0000000000000000000000000000000000000000..7ce0df3d609b86ff84d801f7ee2b0455119f0744 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/Mapping_0.xml @@ -0,0 +1,557 @@ +<TMLMAPPING> +<TMLMODELING> +<TASK name="Zigbee_TX__X_Sink" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwpI_ch_out__cwpQ_ch_out__sink_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_Source" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue="127"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event"> +<CUSTOM event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request"> +<CUSTOM request="Zigbee_TX__source_req" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action"> +<CUSTOM action="size = 127" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_Source" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="3" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in " /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_Symbol2ChipSeq" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event"> +<CUSTOM event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event"> +<CUSTOM event="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request"> +<CUSTOM request="Zigbee_TX__bit2chip_req" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_Chip2Octet" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecC" value="size" id="1" name="execc"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_Sink" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="size_1" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="2" name="send request"> +<CUSTOM request="Zigbee_TX__sink_req" params="size+size_1" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="3" name="wait event"> +<CUSTOM event="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" params="size_1" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="4" name="wait event"> +<CUSTOM event="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_CWL" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event"> +<CUSTOM event="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request"> +<CUSTOM request="Zigbee_TX__cwl_req" params="size" /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="4" name="send event"> +<CUSTOM event="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="5" name="send event"> +<CUSTOM event="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_CWP_Q" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event"> +<CUSTOM event="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event"> +<CUSTOM event="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request"> +<CUSTOM request="Zigbee_TX__cwpQ_req" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_CWP_I" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event"> +<CUSTOM event="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event"> +<CUSTOM event="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request"> +<CUSTOM request="Zigbee_TX__cwpI_req" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_Chip2Octet" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event"> +<CUSTOM event="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event"> +<CUSTOM event="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request"> +<CUSTOM request="Zigbee_TX__chip2octet_req" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_CWP_I" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwpI_ch_out__cwpQ_ch_out__sink_ch_in " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_CWP_Q" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwpI_ch_out__cwpQ_ch_out__sink_ch_in " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_CWL" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_Symbol2ChipSeq" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecC" value="size" id="1" name="execc"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TMLCHANNEL name="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in" origintask="Zigbee_TX__X_Source" originport="Source_ch_out" destinationtask="Zigbee_TX__X_Symbol2ChipSeq" destinationport="symbol2ChipSeq_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8" /> +<TMLCHANNEL name="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in" origintask="Zigbee_TX__X_Chip2Octet" originport="chip2octet_ch_out" destinationtask="Zigbee_TX__X_CWL" destinationport="cwl_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8" /> +<TMLCHANNEL name="Zigbee_TX__cwpI_ch_out__cwpQ_ch_out__sink_ch_in" destinationtask="Zigbee_TX__X_Sink" destinationport="sink_ch_in" origintask="Zigbee_TX__X_CWP_I;Zigbee_TX__X_CWP_Q;" originport="cwpI_ch_out;cwpQ_ch_out;" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8" /> +<TMLCHANNEL name="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in" origintask="Zigbee_TX__X_CWL" originport="cwl_ch_out" destinationtask="Zigbee_TX__X_CWP_Q;Zigbee_TX__X_CWP_I;" destinationport="cwpQ_ch_in;cwpI_ch_in;" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8" /> +<TMLCHANNEL name="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in" origintask="Zigbee_TX__X_Symbol2ChipSeq" originport="symbol2ChipSeq_ch_out" destinationtask="Zigbee_TX__X_Chip2Octet" destinationport="chip2octet_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8" /> +<TMLREQUEST name="Zigbee_TX__sink_req" destinationtask="Zigbee_TX__X_Sink" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_Sink" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__source_req" destinationtask="Zigbee_TX__X_Source" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_Source" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__chip2octet_req" destinationtask="Zigbee_TX__X_Chip2Octet" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_Chip2Octet" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__cwpI_req" destinationtask="Zigbee_TX__X_CWP_I" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_CWP_I" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__cwpQ_req" destinationtask="Zigbee_TX__X_CWP_Q" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_CWP_Q" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__cwl_req" destinationtask="Zigbee_TX__X_CWL" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_CWL" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__bit2chip_req" destinationtask="Zigbee_TX__X_Symbol2ChipSeq" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_Symbol2ChipSeq" /> <PARAM type="int" /></TMLREQUEST> +<TMLEVENT name="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" origintask="Zigbee_TX__F_Source" destinationtask="Zigbee_TX__F_Symbol2ChipSeq" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" origintask="Zigbee_TX__F_Symbol2ChipSeq" destinationtask="Zigbee_TX__F_Chip2Octet" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" origintask="Zigbee_TX__F_CWL" destinationtask="Zigbee_TX__F_CWP_I" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" origintask="Zigbee_TX__F_CWL" destinationtask="Zigbee_TX__F_CWP_Q" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" origintask="Zigbee_TX__F_CWP_Q" destinationtask="Zigbee_TX__F_Sink" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" origintask="Zigbee_TX__F_CWP_I" destinationtask="Zigbee_TX__F_Sink" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" origintask="Zigbee_TX__F_Chip2Octet" destinationtask="Zigbee_TX__F_CWL" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +</TMLMODELING> +<TMLARCHITECTURE freq="100" > +<CPU name="INTL_DMA" clockRatio="1" byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5" schedulingPolicy="0" sliceTime="10000" MEC="CPU" /> +<CPU name="ADAIF_DMA" clockRatio="1" byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5" schedulingPolicy="0" sliceTime="10000" MEC="CPU" /> +<MEMORY name="ADAIF_MSS" clockRatio="1" byteDataSize="4" memorySize="1024" bufferType="2" /> +<CPU name="ADAIF_PSS" clockRatio="1" byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5" schedulingPolicy="0" sliceTime="10000" MEC="ADAIF" /> +<BRIDGE name="ADAIF_Bridge" clockRatio="1" bufferByteSize="4" /> +<MEMORY name="MainMemory" clockRatio="1" byteDataSize="4" memorySize="1024" bufferType="4" /> +<CPU name="MainCPU" clockRatio="6" byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5" schedulingPolicy="0" sliceTime="10000" MEC="CPU" /> +<BUS name="MainBus" clockRatio="1" byteDataSize="4" pipelineSize="1" arbitration="0" sliceTime="10000" /> +<BRIDGE name="MainBridge" clockRatio="1" bufferByteSize="4" /> +<BUS name="Crossbar" clockRatio="1" byteDataSize="8" pipelineSize="1" arbitration="0" sliceTime="10000" /> +<BRIDGE name="INTL_Bridge" clockRatio="1" bufferByteSize="4" /> +<MEMORY name="INTL_MSS" clockRatio="1" byteDataSize="4" memorySize="1024" bufferType="3" /> +<CPU name="INTL_PSS" clockRatio="1" byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5" schedulingPolicy="0" sliceTime="10000" MEC="INTL" /> +<BUS name="INTL_Bus" clockRatio="1" byteDataSize="8" pipelineSize="1" arbitration="0" sliceTime="10000" /> +<BUS name="ADAIF_Bus" clockRatio="1" byteDataSize="8" pipelineSize="1" arbitration="0" sliceTime="10000" /> +<CPU name="FEP_DMA" clockRatio="1" byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5" schedulingPolicy="0" sliceTime="10000" MEC="CPU" /> +<MEMORY name="FEP_MSS" clockRatio="1" byteDataSize="4" memorySize="1024" bufferType="0" /> +<CPU name="FEP_PSS" clockRatio="1" byteDataSize="4" execiTime="2" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5" schedulingPolicy="0" sliceTime="10000" MEC="FEP" /> +<BRIDGE name="FEP_Bridge" clockRatio="1" bufferByteSize="4" /> +<BUS name="FEP_Bus" clockRatio="1" byteDataSize="8" pipelineSize="1" arbitration="0" sliceTime="10000" /> +<CPU name="MAPPER_DMA" clockRatio="1" byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5" schedulingPolicy="0" sliceTime="10000" MEC="CPU" /> +<BRIDGE name="MAPPER_Bridge" clockRatio="1" bufferByteSize="4" /> +<MEMORY name="MAPPER_MSS" clockRatio="1" byteDataSize="4" memorySize="1024" bufferType="1" /> +<CPU name="MAPPER_PSS" clockRatio="1" byteDataSize="4" execiTime="1" execcTime="1" pipelineSize="5" goIdleTime="10" maxConsecutiveIdleCycles="10" taskSwitchingTime="20" cacheMiss="5" schedulingPolicy="0" sliceTime="10000" MEC="MAPP" /> +<BUS name="MAPPER_Bus" clockRatio="1" byteDataSize="8" pipelineSize="1" arbitration="0" sliceTime="10000" /> +<LINK name="link_MainBridge_to_Crossbar" bus="Crossbar" hwnode="MainBridge" priority="0" /> +<LINK name="link_FEP_DMA_to_Crossbar" bus="Crossbar" hwnode="FEP_DMA" priority="0" /> +<LINK name="link_MAPPER_DMA_to_Crossbar" bus="Crossbar" hwnode="MAPPER_DMA" priority="0" /> +<LINK name="link_MAPPER_Bridge_to_Crossbar" bus="Crossbar" hwnode="MAPPER_Bridge" priority="0" /> +<LINK name="link_FEP_Bridge_to_Crossbar" bus="Crossbar" hwnode="FEP_Bridge" priority="0" /> +<LINK name="link_MainBridge_to_MainBus" bus="MainBus" hwnode="MainBridge" priority="0" /> +<LINK name="link_INTL_Bridge_to_INTL_Bus" bus="INTL_Bus" hwnode="INTL_Bridge" priority="0" /> +<LINK name="link_INTL_DMA_to_Crossbar" bus="Crossbar" hwnode="INTL_DMA" priority="0" /> +<LINK name="link_INTL_DMA_to_INTL_Bus" bus="INTL_Bus" hwnode="INTL_DMA" priority="0" /> +<LINK name="link_INTL_MSS_to_INTL_Bus" bus="INTL_Bus" hwnode="INTL_MSS" priority="0" /> +<LINK name="link_INTL_PSS_to_INTL_Bus" bus="INTL_Bus" hwnode="INTL_PSS" priority="0" /> +<LINK name="link_ADAIF_Bridge_to_Crossbar" bus="Crossbar" hwnode="ADAIF_Bridge" priority="0" /> +<LINK name="link_ADAIF_Bridge_to_ADAIF_Bus" bus="ADAIF_Bus" hwnode="ADAIF_Bridge" priority="0" /> +<LINK name="link_ADAIF_DMA_to_Crossbar" bus="Crossbar" hwnode="ADAIF_DMA" priority="0" /> +<LINK name="link_ADAIF_DMA_to_ADAIF_Bus" bus="ADAIF_Bus" hwnode="ADAIF_DMA" priority="0" /> +<LINK name="link_ADAIF_MSS_to_ADAIF_Bus" bus="ADAIF_Bus" hwnode="ADAIF_MSS" priority="0" /> +<LINK name="link_ADAIF_PSS_to_ADAIF_Bus" bus="ADAIF_Bus" hwnode="ADAIF_PSS" priority="0" /> +<LINK name="link_INTL_Bridge_to_Crossbar" bus="Crossbar" hwnode="INTL_Bridge" priority="0" /> +<LINK name="link_MainMemory_to_MainBus" bus="MainBus" hwnode="MainMemory" priority="0" /> +<LINK name="link_MainCPU_to_MainBus" bus="MainBus" hwnode="MainCPU" priority="0" /> +<LINK name="link_FEP_Bridge_to_FEP_Bus" bus="FEP_Bus" hwnode="FEP_Bridge" priority="0" /> +<LINK name="link_FEP_DMA_to_FEP_Bus" bus="FEP_Bus" hwnode="FEP_DMA" priority="0" /> +<LINK name="link_FEP_MSS_to_FEP_Bus" bus="FEP_Bus" hwnode="FEP_MSS" priority="0" /> +<LINK name="link_FEP_PSS_to_FEP_Bus" bus="FEP_Bus" hwnode="FEP_PSS" priority="0" /> +<LINK name="link_MAPPER_Bridge_to_MAPPER_Bus" bus="MAPPER_Bus" hwnode="MAPPER_Bridge" priority="0" /> +<LINK name="link_MAPPER_DMA_to_MAPPER_Bus" bus="MAPPER_Bus" hwnode="MAPPER_DMA" priority="0" /> +<LINK name="link_MAPPER_MSS_to_MAPPER_Bus" bus="MAPPER_Bus" hwnode="MAPPER_MSS" priority="0" /> +<LINK name="link_MAPPER_PSS_to_MAPPER_Bus" bus="MAPPER_Bus" hwnode="MAPPER_PSS" priority="0" /> +</TMLARCHITECTURE><TASKMAP node="ADAIF_PSS" task="Zigbee_TX__X_Sink" /> +<TASKMAP node="MainCPU" task="Zigbee_TX__F_Source" /> +<TASKMAP node="MainCPU" task="Zigbee_TX__X_Source" /> +<TASKMAP node="MainCPU" task="Zigbee_TX__F_Symbol2ChipSeq" /> +<TASKMAP node="MainCPU" task="Zigbee_TX__X_Chip2Octet" /> +<TASKMAP node="MainCPU" task="Zigbee_TX__F_Sink" /> +<TASKMAP node="MainCPU" task="Zigbee_TX__F_CWL" /> +<TASKMAP node="MainCPU" task="Zigbee_TX__F_CWP_Q" /> +<TASKMAP node="MainCPU" task="Zigbee_TX__F_CWP_I" /> +<TASKMAP node="INTL_PSS" task="Zigbee_TX__F_Chip2Octet" /> +<TASKMAP node="FEP_PSS" task="Zigbee_TX__X_CWP_I" /> +<TASKMAP node="FEP_PSS" task="Zigbee_TX__X_CWP_Q" /> +<TASKMAP node="FEP_PSS" task="Zigbee_TX__X_CWL" /> +<TASKMAP node="MAPPER_PSS" task="Zigbee_TX__X_Symbol2ChipSeq" /> +<TMLCPLIB name="CP_Symbol2ChipSeq_Chips2Octet::DMA_transfer" cpMECType="1" typeName="DMA_transfer"> +<TMLCPLIBARTIFACT taskName="Zigbee_TX::chip2octet_ch_in" portName="chip2octet_ch_in" memoryName="INTL_MSS" priority="5" > +<BUFFERPARAMETERS param="3" /> +<BUFFERPARAMETERS param="" /> +<BUFFERPARAMETERS param="" /> +<BUFFERPARAMETERS param="" /> +<BUFFERPARAMETERS param="" /> +<BUFFERPARAMETERS param="" /> +<BUFFERPARAMETERS param="" /> +<BUFFERPARAMETERS param="" /> +<BUFFERPARAMETERS param="" /> +<BUFFERPARAMETERS param="" /> +<BUFFERPARAMETERS param="" /> +<BUFFERPARAMETERS param="" /> +</TMLCPLIBARTIFACT> +<MAPPEUNIT unit="DMA_transfer.CPU_Controller_1 : MainCPU" /> +<MAPPEUNIT unit="DMA_transfer.DMA_Controller_1 : MAPPER_DMA" /> +<MAPPEUNIT unit="DMA_transfer.Src_Storage_Instance_1 : MAPPER_MSS" /> +<MAPPEUNIT unit="DMA_transfer.Dst_Storage_Instance_1 : INTL_MSS" /> +<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_1 : MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_2 : MAPPER_Bus" /> +<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_3 : Crossbar, INTL_Bridge, INTL_Bus, MAPPER_Bridge, MAPPER_Bus" /> +<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_4 : MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<TRANSFERTYPE type="0" /> +<TRANSFERTYPE type="0" /> +</TMLCPLIB><TMLCPLIB name="CP_Chip2Octet_CWL::DMA_transfer" cpMECType="1" typeName="DMA_transfer"> +<TMLCPLIBARTIFACT taskName="Zigbee_TX::cwl_ch_in" portName="cwl_ch_in" memoryName="FEP_MSS" priority="5" > +<BUFFERPARAMETERS param="0" /> +<BUFFERPARAMETERS param="1" /> +<BUFFERPARAMETERS param="0x2" /> +<BUFFERPARAMETERS param="0" /> +<BUFFERPARAMETERS param="int8" /> +</TMLCPLIBARTIFACT> +<MAPPEUNIT unit="DMA_transfer.CPU_Controller_1 : MainCPU" /> +<MAPPEUNIT unit="DMA_transfer.DMA_Controller_1 : INTL_DMA" /> +<MAPPEUNIT unit="DMA_transfer.Src_Storage_Instance_1 : INTL_MSS" /> +<MAPPEUNIT unit="DMA_transfer.Dst_Storage_Instance_1 : FEP_MSS" /> +<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_1 : MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" /> +<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_2 : INTL_Bus" /> +<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_3 : ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" /> +<MAPPEUNIT unit="DMA_transfer.Transfer_Instance_4 : MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<TRANSFERTYPE type="0" /> +<TRANSFERTYPE type="0" /> +</TMLCPLIB><TMLCPLIB name="CP_sink::Double_DMA_transfer" cpMECType="2" typeName="Double_DMA_transfer"> +<TMLCPLIBARTIFACT taskName="Zigbee_TX::sink_ch_in" portName="sink_ch_in" memoryName="ADAIF_MSS" priority="5" > +<BUFFERPARAMETERS param="2" /> +<BUFFERPARAMETERS param="1" /> +<BUFFERPARAMETERS param="0x2" /> +</TMLCPLIBARTIFACT> +<MAPPEUNIT unit="Double_DMA_transfer.CPU_Controller_1 : MainCPU" /> +<MAPPEUNIT unit="Double_DMA_transfer.CPU_Controller_2 : MainCPU" /> +<MAPPEUNIT unit="Double_DMA_transfer.DMA_Controller_1 : FEP_DMA" /> +<MAPPEUNIT unit="Double_DMA_transfer.DMA_Controller_2 : FEP_DMA" /> +<MAPPEUNIT unit="Double_DMA_transfer.Src_Storage_Instance_1 : FEP_MSS" /> +<MAPPEUNIT unit="Double_DMA_transfer.Src_Storage_Instance_2 : FEP_MSS" /> +<MAPPEUNIT unit="Double_DMA_transfer.Dst_Storage_Instance_2 : ADAIF_MSS" /> +<MAPPEUNIT unit="Double_DMA_transfer.Dst_Storage_Instance_1 : ADAIF_MSS" /> +<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_1 : MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_2 : FEP_Bus" /> +<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_3 : ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" /> +<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_4 : MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_5 : MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_6 : FEP_Bus" /> +<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_7 : ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" /> +<MAPPEUNIT unit="Double_DMA_transfer.Transfer_Instance_8 : MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<TRANSFERTYPE type="0" /> +<TRANSFERTYPE type="0" /> +</TMLCPLIB><TMLCPLIB name="CP_Source_to_Bits2Symbol::CP_Memory_Copy" cpMECType="0" typeName="CP_Memory_Copy"> +<TMLCPLIBARTIFACT taskName="Zigbee_TX::symbol2ChipSeq_ch_in" portName="symbol2ChipSeq_ch_in" memoryName="MAPPER_MSS" priority="5" > +<BUFFERPARAMETERS param="1" /> +<BUFFERPARAMETERS param="1" /> +<BUFFERPARAMETERS param="0x2" /> +<BUFFERPARAMETERS param="3" /> +<BUFFERPARAMETERS param="OFF" /> +<BUFFERPARAMETERS param="0x4" /> +<BUFFERPARAMETERS param="0x5" /> +</TMLCPLIBARTIFACT> +<MAPPEUNIT unit="CP_Memory_Copy.CPU_Controller : MainCPU" /> +<MAPPEUNIT unit="CP_Memory_Copy.Dst_Storage_Instance : MAPPER_MSS" /> +<MAPPEUNIT unit="CP_Memory_Copy.Src_Storage_Instance : MainMemory" /> +<MAPPEUNIT unit="CP_Memory_Copy.Transfer_Instance_1 : MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<MAPPEUNIT unit="CP_Memory_Copy.Transfer_Instance2 : MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<TRANSFERTYPE type="0" /> +<TRANSFERTYPE type="0" /> +</TMLCPLIB></TMLMAPPING> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/Zigbee_TX.xml b/ttool/src/test/resources/ui/diagram2tml/expected/Zigbee_TX.xml new file mode 100644 index 0000000000000000000000000000000000000000..cb58209c789f8d272336e795981888f9a34cda7d --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/Zigbee_TX.xml @@ -0,0 +1,403 @@ +<TMLMODELING> +<TASK name="Zigbee_TX__X_Source" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="3" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in " /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_Source" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue="127"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event"> +<CUSTOM event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request"> +<CUSTOM request="Zigbee_TX__source_req" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action"> +<CUSTOM action="size = 127" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_Symbol2ChipSeq" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecC" value="size" id="1" name="execc"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_Symbol2ChipSeq" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event"> +<CUSTOM event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event"> +<CUSTOM event="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request"> +<CUSTOM request="Zigbee_TX__bit2chip_req" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_Chip2Octet" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecC" value="size" id="1" name="execc"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_Chip2Octet" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event"> +<CUSTOM event="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event"> +<CUSTOM event="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request"> +<CUSTOM request="Zigbee_TX__chip2octet_req" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_CWL" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_CWL" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event"> +<CUSTOM event="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request"> +<CUSTOM request="Zigbee_TX__cwl_req" params="size" /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="4" name="send event"> +<CUSTOM event="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="5" name="send event"> +<CUSTOM event="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_Sink" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwpQ_ch_out__sink_ch_in__cwpI_ch_out " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_Sink" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="size_1" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="2" name="send request"> +<CUSTOM request="Zigbee_TX__sink_req" params="size+size_1" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="3" name="wait event"> +<CUSTOM event="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" params="size_1" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="4" name="wait event"> +<CUSTOM event="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_CWP_Q" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwpQ_ch_out__sink_ch_in__cwpI_ch_out " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_CWP_Q" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event"> +<CUSTOM event="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event"> +<CUSTOM event="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request"> +<CUSTOM request="Zigbee_TX__cwpQ_req" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__X_CWP_I" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ATTRIBUTE type="1" name="arg1__req" initialValue="0"/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="2" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="3" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="4" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__cwpQ_ch_out__sink_ch_in__cwpI_ch_out " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="5" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TASK name="Zigbee_TX__F_CWP_I" priority="0" > +<ATTRIBUTE type="1" name="size" initialValue=""/> +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="1" name="wait event"> +<CUSTOM event="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="3" name="send event"> +<CUSTOM event="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="4" name="send request"> +<CUSTOM request="Zigbee_TX__cwpI_req" params="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +</ACTIVITY> +</TASK> +<TMLCHANNEL name="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in" origintask="Zigbee_TX__X_Source" originport="Source_ch_out" destinationtask="Zigbee_TX__X_Symbol2ChipSeq" destinationport="symbol2ChipSeq_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8" /> +<TMLCHANNEL name="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in" origintask="Zigbee_TX__X_Symbol2ChipSeq" originport="symbol2ChipSeq_ch_out" destinationtask="Zigbee_TX__X_Chip2Octet" destinationport="chip2octet_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8" /> +<TMLCHANNEL name="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in" origintask="Zigbee_TX__X_Chip2Octet" originport="chip2octet_ch_out" destinationtask="Zigbee_TX__X_CWL" destinationport="cwl_ch_in" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8" /> +<TMLCHANNEL name="Zigbee_TX__cwl_ch_out__cwpQ_ch_in__cwpI_ch_in" origintask="Zigbee_TX__X_CWL" originport="cwl_ch_out" destinationtask="Zigbee_TX__X_CWP_Q;Zigbee_TX__X_CWP_I;" destinationport="cwpQ_ch_in;cwpI_ch_in;" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8" /> +<TMLCHANNEL name="Zigbee_TX__cwpQ_ch_out__sink_ch_in__cwpI_ch_out" destinationtask="Zigbee_TX__X_Sink" destinationport="sink_ch_in" origintask="Zigbee_TX__X_CWP_Q;Zigbee_TX__X_CWP_I;" originport="cwpQ_ch_out;cwpI_ch_out;" dataFlowType="uint_16" isLossy="false" lossPercentage="0" maxNbOfLoss="0" type="BRBW" size="4" max="8" /> +<TMLREQUEST name="Zigbee_TX__source_req" destinationtask="Zigbee_TX__X_Source" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_Source" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__bit2chip_req" destinationtask="Zigbee_TX__X_Symbol2ChipSeq" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_Symbol2ChipSeq" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__chip2octet_req" destinationtask="Zigbee_TX__X_Chip2Octet" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_Chip2Octet" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__cwl_req" destinationtask="Zigbee_TX__X_CWL" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_CWL" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__sink_req" destinationtask="Zigbee_TX__X_Sink" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_Sink" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__cwpQ_req" destinationtask="Zigbee_TX__X_CWP_Q" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_CWP_Q" /> <PARAM type="int" /></TMLREQUEST> +<TMLREQUEST name="Zigbee_TX__cwpI_req" destinationtask="Zigbee_TX__X_CWP_I" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<ORIGINTASK name="Zigbee_TX__F_CWP_I" /> <PARAM type="int" /></TMLREQUEST> +<TMLEVENT name="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" origintask="Zigbee_TX__F_Source" destinationtask="Zigbee_TX__F_Symbol2ChipSeq" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" origintask="Zigbee_TX__F_Symbol2ChipSeq" destinationtask="Zigbee_TX__F_Chip2Octet" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__chip2octet_evt_out__Zigbee_TX__cwl_evt_in" origintask="Zigbee_TX__F_Chip2Octet" destinationtask="Zigbee_TX__F_CWL" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__cwl_evt_out__Zigbee_TX__cwpI_evt_in" origintask="Zigbee_TX__F_CWL" destinationtask="Zigbee_TX__F_CWP_I" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__cwl_evt_out_1__Zigbee_TX__cwpQ_evt_in" origintask="Zigbee_TX__F_CWL" destinationtask="Zigbee_TX__F_CWP_Q" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__cwpQ_evt_out__Zigbee_TX__sink_evt_in_1" origintask="Zigbee_TX__F_CWP_Q" destinationtask="Zigbee_TX__F_Sink" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +<TMLEVENT name="Zigbee_TX__cwpI_evt_out__Zigbee_TX__sink_evt_in" origintask="Zigbee_TX__F_CWP_I" destinationtask="Zigbee_TX__F_Sink" maxEvt="-1" isBlocking="false" canBeNotified="false" isLossy="false" lossPercentage="0" maxNbOfLoss="0" > +<PARAM type="int" /></TMLEVENT> +</TMLMODELING> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionState.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionState.xml new file mode 100644 index 0000000000000000000000000000000000000000..95d407d311c5f77b0090c8cb0aac2c432efd1099 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionState.xml @@ -0,0 +1,17 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event"> +<CUSTOM event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request"> +<CUSTOM request="Zigbee_TX__source_req" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendEvent.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendEvent.xml new file mode 100644 index 0000000000000000000000000000000000000000..04bfc6487d87942f825bf4c085a5d8a11442672b --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendEvent.xml @@ -0,0 +1,13 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="2" name="send request"> +<CUSTOM request="Zigbee_TX__source_req" params="size" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequest.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequest.xml new file mode 100644 index 0000000000000000000000000000000000000000..47fef1cbf4fb1854794a2c3229ed41c4470ebef9 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequest.xml @@ -0,0 +1,13 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event"> +<CUSTOM event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequestSendEvent.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequestSendEvent.xml new file mode 100644 index 0000000000000000000000000000000000000000..eeb8817b4b041db81d761ea7530a90d4da8a36ec --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_ActionStateSendRequestSendEvent.xml @@ -0,0 +1,9 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendEvent.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendEvent.xml new file mode 100644 index 0000000000000000000000000000000000000000..e77484a53de2f374ff68021b10b22f8ea58d4ed1 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendEvent.xml @@ -0,0 +1,17 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="2" name="send request"> +<CUSTOM request="Zigbee_TX__source_req" params="size" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="3" name="action"> +<CUSTOM action="size = 127" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequest.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequest.xml new file mode 100644 index 0000000000000000000000000000000000000000..5a6db0d5b06bc3258592b634ffaf52ed6f51f742 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequest.xml @@ -0,0 +1,17 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event"> +<CUSTOM event="Zigbee_TX__Source_evt_out__Zigbee_TX__bit2symbol_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="3" name="action"> +<CUSTOM action="size = 127" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequestSendEvent.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequestSendEvent.xml new file mode 100644 index 0000000000000000000000000000000000000000..9d0d3fcc6070372ce42c71fada55038f262ab4ba --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Source_Disable_SendRequestSendEvent.xml @@ -0,0 +1,13 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="2" name="action"> +<CUSTOM action="size = 127" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Symbol2ChipSeq_Disable_WaitEvent.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Symbol2ChipSeq_Disable_WaitEvent.xml new file mode 100644 index 0000000000000000000000000000000000000000..c6da6d2ea972aa16c9c43f86cc47d6262878426f --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/F_Symbol2ChipSeq_Disable_WaitEvent.xml @@ -0,0 +1,17 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event"> +<CUSTOM event="Zigbee_TX__bit2symbol_evt_out__Zigbee_TX__chip2octet_evt_in" params="size" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request"> +<CUSTOM request="Zigbee_TX__bit2chip_req" params="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ChoiceLeft.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ChoiceLeft.xml new file mode 100644 index 0000000000000000000000000000000000000000..eb03280482b70bf3b11253153813a7fa7adcafa5 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ChoiceLeft.xml @@ -0,0 +1,73 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="1" name="choice"> +<CUSTOM guards="[ ];[ ];" /> +<NEXTACTIVITYELEMENT id="8" /> +<NEXTACTIVITYELEMENT id="11" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="2" name="choice"> +<CUSTOM guards="[ true ];[ x>0 ];" /> +<NEXTACTIVITYELEMENT id="12" /> +<NEXTACTIVITYELEMENT id="14" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request"> +<CUSTOM request="AppC__activation" params="" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="4" name="send event"> +<CUSTOM event="AppC__reset__AppC__reset" params="" /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="5" name="wait event"> +<CUSTOM event="AppC__answerToReset__AppC__answerToReset" params="" /> +<NEXTACTIVITYELEMENT id="6" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="6" name="send event"> +<CUSTOM event="AppC__pTS__AppC__pTS" params="" /> +<NEXTACTIVITYELEMENT id="7" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="7" name="wait event"> +<CUSTOM event="AppC__pTSConfirm__AppC__pTSConfirm" params="" /> +<NEXTACTIVITYELEMENT id="16" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="8" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromDtoSC " /> +<NEXTACTIVITYELEMENT id="9" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="9" name="send event"> +<CUSTOM event="AppC__data_Ready__AppC__data_Ready" params="x,b" /> +<NEXTACTIVITYELEMENT id="10" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="10" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLNotifiedEvent" value="" id="11" name="notified event"> +<CUSTOM event="AppC__data_Ready_SC__AppC__data_Ready_SC" params="" variable="x" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="12" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="13" name="read channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromSCtoD " /> +<NEXTACTIVITYELEMENT id="15" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="14" name="wait event"> +<CUSTOM event="AppC__data_Ready_SC__AppC__data_Ready_SC" params="" /> +<NEXTACTIVITYELEMENT id="13" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="15" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLForLoop" value="" id="16" name="loop"> +<CUSTOM init="i=0" condition="i<nbOfComputedPackets" increment="i = i +1" isInfinite="false" /> +<NEXTACTIVITYELEMENT id="1" /> +<NEXTACTIVITYELEMENT id="17" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="17" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ConnectorChoice.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ConnectorChoice.xml new file mode 100644 index 0000000000000000000000000000000000000000..ee58a0c10c43eb1f3247daecd47c6429aed5ae00 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ConnectorChoice.xml @@ -0,0 +1,61 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="1" name="choice"> +<CUSTOM guards="[ ];[ ];" /> +<NEXTACTIVITYELEMENT id="8" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="2" name="choice"> +<CUSTOM guards="[ true ];[ true ];" /> +<NEXTACTIVITYELEMENT id="11" /> +<NEXTACTIVITYELEMENT id="12" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="3" name="send request"> +<CUSTOM request="AppC__activation" params="" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="4" name="send event"> +<CUSTOM event="AppC__reset__AppC__reset" params="" /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="5" name="wait event"> +<CUSTOM event="AppC__answerToReset__AppC__answerToReset" params="" /> +<NEXTACTIVITYELEMENT id="6" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="6" name="send event"> +<CUSTOM event="AppC__pTS__AppC__pTS" params="" /> +<NEXTACTIVITYELEMENT id="7" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="7" name="wait event"> +<CUSTOM event="AppC__pTSConfirm__AppC__pTSConfirm" params="" /> +<NEXTACTIVITYELEMENT id="13" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="8" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromDtoSC " /> +<NEXTACTIVITYELEMENT id="9" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="9" name="send event"> +<CUSTOM event="AppC__data_Ready__AppC__data_Ready" params="x,b" /> +<NEXTACTIVITYELEMENT id="10" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="10" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="11" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="12" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLForLoop" value="" id="13" name="loop"> +<CUSTOM init="i=0" condition="i<nbOfComputedPackets" increment="i = i +1" isInfinite="false" /> +<NEXTACTIVITYELEMENT id="1" /> +<NEXTACTIVITYELEMENT id="14" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="14" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ForLoop.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ForLoop.xml new file mode 100644 index 0000000000000000000000000000000000000000..22d98880ac49d77677d5823aa0c88555daffd3a0 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/InterfaceDevice_Disable_ForLoop.xml @@ -0,0 +1,29 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="1" name="send request"> +<CUSTOM request="AppC__activation" params="" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="2" name="send event"> +<CUSTOM event="AppC__reset__AppC__reset" params="" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="3" name="wait event"> +<CUSTOM event="AppC__answerToReset__AppC__answerToReset" params="" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="4" name="send event"> +<CUSTOM event="AppC__pTS__AppC__pTS" params="" /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="5" name="wait event"> +<CUSTOM event="AppC__pTSConfirm__AppC__pTSConfirm" params="" /> +<NEXTACTIVITYELEMENT id="6" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="6" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottom.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottom.xml new file mode 100644 index 0000000000000000000000000000000000000000..ec7277413c327edb8e816284446eaf15ae1b1eb4 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottom.xml @@ -0,0 +1,561 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="35" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="1" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==10 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="120" /> +<NEXTACTIVITYELEMENT id="136" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="2" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==1 ];[ tcpctrl__state ==3 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="11" /> +<NEXTACTIVITYELEMENT id="12" /> +<NEXTACTIVITYELEMENT id="137" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="3" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==5 ];[ tcpctrl__state == 7 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="117" /> +<NEXTACTIVITYELEMENT id="123" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="4" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==2 ];[ tcpctrl__state ==4 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="115" /> +<NEXTACTIVITYELEMENT id="114" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="5" name="choice"> +<CUSTOM guards="[ ];[ ];" /> +<NEXTACTIVITYELEMENT id="10" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="6" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="107" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="7" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="106" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="8" name="choice"> +<CUSTOM guards="[ tcpctrl__state == 4 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="7" /> +<NEXTACTIVITYELEMENT id="135" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="9" name="choice"> +<CUSTOM guards="[ ];[ ];[ ];" /> +<NEXTACTIVITYELEMENT id="108" /> +<NEXTACTIVITYELEMENT id="8" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="10" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="109" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="11" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="128" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="12" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="131" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="13" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==6 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="14" /> +<NEXTACTIVITYELEMENT id="104" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="14" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="99" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="15" name="choice"> +<CUSTOM guards="[ tcpctrl__state == 1 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="66" /> +<NEXTACTIVITYELEMENT id="97" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="16" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="74" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="17" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="68" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="18" name="choice"> +<CUSTOM guards="[ tcpctrl__state == 5];[ tcpctrl__state ==4 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="27" /> +<NEXTACTIVITYELEMENT id="17" /> +<NEXTACTIVITYELEMENT id="13" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="19" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="64" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="20" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==0 ];[ tcpctrl__state==0 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="62" /> +<NEXTACTIVITYELEMENT id="19" /> +<NEXTACTIVITYELEMENT id="98" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="21" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="88" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="22" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="85" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="23" name="choice"> +<CUSTOM guards="[ ];[ ];[ ];" /> +<NEXTACTIVITYELEMENT id="9" /> +<NEXTACTIVITYELEMENT id="20" /> +<NEXTACTIVITYELEMENT id="18" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="24" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="23" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="25" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="87" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="26" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="86" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="27" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="71" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="28" name="choice"> +<CUSTOM guards="[ tcpctrl__state==0 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="32" /> +<NEXTACTIVITYELEMENT id="46" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="29" name="choice"> +<CUSTOM guards="[ tcpctrl__a>0 ];[ tcpctrl__a==0 ];" /> +<NEXTACTIVITYELEMENT id="48" /> +<NEXTACTIVITYELEMENT id="45" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="30" name="choice"> +<CUSTOM guards="[ true ];[ true ];[ else ];" /> +<NEXTACTIVITYELEMENT id="25" /> +<NEXTACTIVITYELEMENT id="21" /> +<NEXTACTIVITYELEMENT id="15" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="31" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==4 ];[ tcpctrl__state == 1];[ else ];" /> +<NEXTACTIVITYELEMENT id="50" /> +<NEXTACTIVITYELEMENT id="22" /> +<NEXTACTIVITYELEMENT id="47" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="32" name="action"> +<CUSTOM action="tcpctrl__state =1" /> +<NEXTACTIVITYELEMENT id="33" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="33" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="34" name="read channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromPtoT " /> +<NEXTACTIVITYELEMENT id="24" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLForLoop" value="" id="35" name="loop"> +<CUSTOM init="i=0" condition="(tcpctrl__a==0)" increment="i = i" isInfinite="false" /> +<NEXTACTIVITYELEMENT id="38" /> +<NEXTACTIVITYELEMENT id="37" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="36" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="37" name="action"> +<CUSTOM action="tcpctrl__state=0" /> +<NEXTACTIVITYELEMENT id="36" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLNotifiedEvent" value="" id="38" name="notified event"> +<CUSTOM event="AppC__abort__AppC__abort" params="" variable="tcpctrl__a" /> +<NEXTACTIVITYELEMENT id="29" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="39" name="read channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="16" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="40" name="wait event"> +<CUSTOM event="AppC__timeOut__AppC__timeOut" params="" /> +<NEXTACTIVITYELEMENT id="39" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="41" name="wait event"> +<CUSTOM event="AppC__receive__AppC__receive" params="" /> +<NEXTACTIVITYELEMENT id="34" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="42" name="wait event"> +<CUSTOM event="AppC__close__AppC__close" params="" /> +<NEXTACTIVITYELEMENT id="30" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="43" name="wait event"> +<CUSTOM event="AppC__send_TCP__AppC__send_TCP" params="" /> +<NEXTACTIVITYELEMENT id="31" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="44" name="wait event"> +<CUSTOM event="AppC__open__AppC__open" params="" /> +<NEXTACTIVITYELEMENT id="28" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSelectEvt" value="" id="45" name="select"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="40" /> +<NEXTACTIVITYELEMENT id="41" /> +<NEXTACTIVITYELEMENT id="42" /> +<NEXTACTIVITYELEMENT id="43" /> +<NEXTACTIVITYELEMENT id="44" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="46" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="47" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="48" name="wait event"> +<CUSTOM event="AppC__abort__AppC__abort" params="" /> +<NEXTACTIVITYELEMENT id="49" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="49" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="50" name="read channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromAtoT " /> +<NEXTACTIVITYELEMENT id="26" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="51" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="89" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="52" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="53" name="action"> +<CUSTOM action="tcpctrl__state =5" /> +<NEXTACTIVITYELEMENT id="83" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="54" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="55" name="action"> +<CUSTOM action="tcpctrl__state=3" /> +<NEXTACTIVITYELEMENT id="76" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="56" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="92" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="57" name="action"> +<CUSTOM action="tcpctrl__state =10" /> +<NEXTACTIVITYELEMENT id="81" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="58" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="59" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="91" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="60" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="90" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="61" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="62" name="action"> +<CUSTOM action="tcpctrl__state =1" /> +<NEXTACTIVITYELEMENT id="63" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="63" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="64" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="94" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="65" name="action"> +<CUSTOM action="tcpctrl__state =3" /> +<NEXTACTIVITYELEMENT id="61" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="66" name="action"> +<CUSTOM action="tcpctrl__state =0" /> +<NEXTACTIVITYELEMENT id="67" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="67" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="68" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="95" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="69" name="action"> +<CUSTOM action="tcpctrl__state =9" /> +<NEXTACTIVITYELEMENT id="70" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="70" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="71" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="96" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="72" name="action"> +<CUSTOM action="tcpctrl__state =7" /> +<NEXTACTIVITYELEMENT id="73" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="73" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="74" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="93" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="75" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="76" name="send request"> +<CUSTOM request="AppC__req_Timer" params="" /> +<NEXTACTIVITYELEMENT id="77" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="77" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="78" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="78" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="79" name="send request"> +<CUSTOM request="AppC__req_Timer" params="" /> +<NEXTACTIVITYELEMENT id="80" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="80" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="52" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="81" name="send request"> +<CUSTOM request="AppC__req_Timer" params="" /> +<NEXTACTIVITYELEMENT id="82" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="82" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="58" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="83" name="send request"> +<CUSTOM request="AppC__req_Timer" params="" /> +<NEXTACTIVITYELEMENT id="84" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="84" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="54" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="85" name="action"> +<CUSTOM action="seqNum=seqNum+wind" /> +<NEXTACTIVITYELEMENT id="56" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="86" name="action"> +<CUSTOM action="seqNum=seqNum+wind" /> +<NEXTACTIVITYELEMENT id="51" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="87" name="action"> +<CUSTOM action="seqNum=seqNum+wind" /> +<NEXTACTIVITYELEMENT id="59" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="88" name="action"> +<CUSTOM action="seqNum=seqNum+wind" /> +<NEXTACTIVITYELEMENT id="60" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="89" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="79" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="90" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="57" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="91" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="53" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="92" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="55" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="93" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="75" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="94" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="65" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="95" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="69" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="96" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="72" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="97" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="98" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="99" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="100" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="100" name="action"> +<CUSTOM action="tcpctrl__state =8" /> +<NEXTACTIVITYELEMENT id="103" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="101" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="102" name="action"> +<CUSTOM action="tcpctrl__state =0" /> +<NEXTACTIVITYELEMENT id="101" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="103" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="102" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="104" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="105" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="106" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoA " /> +<NEXTACTIVITYELEMENT id="138" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="107" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="111" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="108" name="send event"> +<CUSTOM event="AppC__stop__AppC__stop" params="" /> +<NEXTACTIVITYELEMENT id="139" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="109" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="112" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="110" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="111" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="105" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="112" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="113" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="113" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="110" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="114" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="115" name="action"> +<CUSTOM action="tcpctrl__state =4" /> +<NEXTACTIVITYELEMENT id="116" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="116" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="117" name="action"> +<CUSTOM action="tcpctrl__state =6" /> +<NEXTACTIVITYELEMENT id="118" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="118" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="119" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="120" name="action"> +<CUSTOM action="tcpctrl__state =0" /> +<NEXTACTIVITYELEMENT id="121" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="121" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="122" name="action"> +<CUSTOM action="tcpctrl__state =0" /> +<NEXTACTIVITYELEMENT id="119" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="123" name="action"> +<CUSTOM action="tcpctrl__state =8" /> +<NEXTACTIVITYELEMENT id="122" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="124" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="129" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="125" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="126" name="send request"> +<CUSTOM request="AppC__req_Timer" params="" /> +<NEXTACTIVITYELEMENT id="127" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="127" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="130" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="128" name="action"> +<CUSTOM action="seqNum=seqNum+wind" /> +<NEXTACTIVITYELEMENT id="124" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="129" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="126" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="130" name="action"> +<CUSTOM action="tcpctrl__state =2" /> +<NEXTACTIVITYELEMENT id="125" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="131" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="134" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="132" name="action"> +<CUSTOM action="tcpctrl__state =2" /> +<NEXTACTIVITYELEMENT id="133" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="133" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="134" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="132" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="135" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="136" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="137" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="138" name="send event"> +<CUSTOM event="AppC__receive_Application__AppC__receive_Application" params="" /> +<NEXTACTIVITYELEMENT id="6" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="139" name="read channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottomRight.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottomRight.xml new file mode 100644 index 0000000000000000000000000000000000000000..d0e74ad7a1a44bf5103ccc974523e4a5b750a2dd --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ChoiceLeftBottomRight.xml @@ -0,0 +1,561 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="35" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="1" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==10 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="120" /> +<NEXTACTIVITYELEMENT id="136" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="2" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==1 ];[ tcpctrl__state ==3 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="11" /> +<NEXTACTIVITYELEMENT id="12" /> +<NEXTACTIVITYELEMENT id="137" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="3" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==5 ];[ tcpctrl__state == 7 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="117" /> +<NEXTACTIVITYELEMENT id="123" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="4" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==2 ];[ tcpctrl__state ==4 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="115" /> +<NEXTACTIVITYELEMENT id="114" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="5" name="choice"> +<CUSTOM guards="[ ];[ ];" /> +<NEXTACTIVITYELEMENT id="10" /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="6" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="107" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="7" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="106" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="8" name="choice"> +<CUSTOM guards="[ tcpctrl__state == 4 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="7" /> +<NEXTACTIVITYELEMENT id="135" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="9" name="choice"> +<CUSTOM guards="[ ];[ ];[ ];" /> +<NEXTACTIVITYELEMENT id="108" /> +<NEXTACTIVITYELEMENT id="8" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="10" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="109" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="11" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="128" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="12" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="131" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="13" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==6 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="14" /> +<NEXTACTIVITYELEMENT id="104" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="14" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="99" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="15" name="choice"> +<CUSTOM guards="[ tcpctrl__state == 1 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="66" /> +<NEXTACTIVITYELEMENT id="97" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="16" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="74" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="17" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="68" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="18" name="choice"> +<CUSTOM guards="[ tcpctrl__state == 5];[ tcpctrl__state ==4 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="27" /> +<NEXTACTIVITYELEMENT id="17" /> +<NEXTACTIVITYELEMENT id="13" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="19" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="64" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="20" name="choice"> +<CUSTOM guards="[ tcpctrl__state ==0 ];[ tcpctrl__state==0 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="62" /> +<NEXTACTIVITYELEMENT id="19" /> +<NEXTACTIVITYELEMENT id="98" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="21" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="88" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="22" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="85" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="23" name="choice"> +<CUSTOM guards="[ ];[ ];[ ];" /> +<NEXTACTIVITYELEMENT id="9" /> +<NEXTACTIVITYELEMENT id="20" /> +<NEXTACTIVITYELEMENT id="18" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="24" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="23" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="25" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="87" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="26" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="86" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="b" id="27" name="execi"> +<CUSTOM action="b" /> +<NEXTACTIVITYELEMENT id="71" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="28" name="choice"> +<CUSTOM guards="[ tcpctrl__state==0 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="32" /> +<NEXTACTIVITYELEMENT id="46" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="29" name="choice"> +<CUSTOM guards="[ tcpctrl__a>0 ];[ tcpctrl__a==0 ];" /> +<NEXTACTIVITYELEMENT id="48" /> +<NEXTACTIVITYELEMENT id="45" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="30" name="choice"> +<CUSTOM guards="[ (tcpctrl__state ==2) or (tcpctrl__state ==4) ];[ tcpctrl__state ==9 ];[ else ];" /> +<NEXTACTIVITYELEMENT id="25" /> +<NEXTACTIVITYELEMENT id="21" /> +<NEXTACTIVITYELEMENT id="15" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLChoice" value="" id="31" name="choice"> +<CUSTOM guards="[ true ];[ true ];[ true ];" /> +<NEXTACTIVITYELEMENT id="50" /> +<NEXTACTIVITYELEMENT id="22" /> +<NEXTACTIVITYELEMENT id="47" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="32" name="action"> +<CUSTOM action="tcpctrl__state =1" /> +<NEXTACTIVITYELEMENT id="33" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="33" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="34" name="read channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromPtoT " /> +<NEXTACTIVITYELEMENT id="24" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLForLoop" value="" id="35" name="loop"> +<CUSTOM init="i=0" condition="(tcpctrl__a==0)" increment="i = i" isInfinite="false" /> +<NEXTACTIVITYELEMENT id="38" /> +<NEXTACTIVITYELEMENT id="37" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="36" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="37" name="action"> +<CUSTOM action="tcpctrl__state=0" /> +<NEXTACTIVITYELEMENT id="36" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLNotifiedEvent" value="" id="38" name="notified event"> +<CUSTOM event="AppC__abort__AppC__abort" params="" variable="tcpctrl__a" /> +<NEXTACTIVITYELEMENT id="29" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="39" name="read channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="16" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="40" name="wait event"> +<CUSTOM event="AppC__timeOut__AppC__timeOut" params="" /> +<NEXTACTIVITYELEMENT id="39" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="41" name="wait event"> +<CUSTOM event="AppC__receive__AppC__receive" params="" /> +<NEXTACTIVITYELEMENT id="34" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="42" name="wait event"> +<CUSTOM event="AppC__close__AppC__close" params="" /> +<NEXTACTIVITYELEMENT id="30" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="43" name="wait event"> +<CUSTOM event="AppC__send_TCP__AppC__send_TCP" params="" /> +<NEXTACTIVITYELEMENT id="31" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="44" name="wait event"> +<CUSTOM event="AppC__open__AppC__open" params="" /> +<NEXTACTIVITYELEMENT id="28" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSelectEvt" value="" id="45" name="select"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="40" /> +<NEXTACTIVITYELEMENT id="41" /> +<NEXTACTIVITYELEMENT id="42" /> +<NEXTACTIVITYELEMENT id="43" /> +<NEXTACTIVITYELEMENT id="44" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="46" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="47" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWaitEvent" value="" id="48" name="wait event"> +<CUSTOM event="AppC__abort__AppC__abort" params="" /> +<NEXTACTIVITYELEMENT id="49" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="49" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="50" name="read channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromAtoT " /> +<NEXTACTIVITYELEMENT id="26" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="51" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="89" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="52" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="53" name="action"> +<CUSTOM action="tcpctrl__state =5" /> +<NEXTACTIVITYELEMENT id="83" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="54" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="55" name="action"> +<CUSTOM action="tcpctrl__state=3" /> +<NEXTACTIVITYELEMENT id="76" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="56" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="92" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="57" name="action"> +<CUSTOM action="tcpctrl__state =10" /> +<NEXTACTIVITYELEMENT id="81" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="58" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="59" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="91" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="60" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="90" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="61" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="62" name="action"> +<CUSTOM action="tcpctrl__state =1" /> +<NEXTACTIVITYELEMENT id="63" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="63" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="64" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="94" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="65" name="action"> +<CUSTOM action="tcpctrl__state =3" /> +<NEXTACTIVITYELEMENT id="61" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="66" name="action"> +<CUSTOM action="tcpctrl__state =0" /> +<NEXTACTIVITYELEMENT id="67" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="67" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="68" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="95" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="69" name="action"> +<CUSTOM action="tcpctrl__state =9" /> +<NEXTACTIVITYELEMENT id="70" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="70" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="71" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="96" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="72" name="action"> +<CUSTOM action="tcpctrl__state =7" /> +<NEXTACTIVITYELEMENT id="73" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="73" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="74" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="93" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="75" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="76" name="send request"> +<CUSTOM request="AppC__req_Timer" params="" /> +<NEXTACTIVITYELEMENT id="77" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="77" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="78" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="78" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="79" name="send request"> +<CUSTOM request="AppC__req_Timer" params="" /> +<NEXTACTIVITYELEMENT id="80" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="80" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="52" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="81" name="send request"> +<CUSTOM request="AppC__req_Timer" params="" /> +<NEXTACTIVITYELEMENT id="82" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="82" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="58" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="83" name="send request"> +<CUSTOM request="AppC__req_Timer" params="" /> +<NEXTACTIVITYELEMENT id="84" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="84" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="54" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="85" name="action"> +<CUSTOM action="seqNum=seqNum+wind" /> +<NEXTACTIVITYELEMENT id="56" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="86" name="action"> +<CUSTOM action="seqNum=seqNum+wind" /> +<NEXTACTIVITYELEMENT id="51" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="87" name="action"> +<CUSTOM action="seqNum=seqNum+wind" /> +<NEXTACTIVITYELEMENT id="59" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="88" name="action"> +<CUSTOM action="seqNum=seqNum+wind" /> +<NEXTACTIVITYELEMENT id="60" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="89" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="79" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="90" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="57" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="91" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="53" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="92" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="55" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="93" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="75" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="94" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="65" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="95" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="69" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="96" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="72" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="97" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="98" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="99" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="100" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="100" name="action"> +<CUSTOM action="tcpctrl__state =8" /> +<NEXTACTIVITYELEMENT id="103" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="101" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="102" name="action"> +<CUSTOM action="tcpctrl__state =0" /> +<NEXTACTIVITYELEMENT id="101" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="103" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="102" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="104" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="105" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="106" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoA " /> +<NEXTACTIVITYELEMENT id="138" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="107" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="111" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="108" name="send event"> +<CUSTOM event="AppC__stop__AppC__stop" params="" /> +<NEXTACTIVITYELEMENT id="139" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="109" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="112" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="110" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="111" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="105" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="112" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="113" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="113" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="110" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="114" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="115" name="action"> +<CUSTOM action="tcpctrl__state =4" /> +<NEXTACTIVITYELEMENT id="116" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="116" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="117" name="action"> +<CUSTOM action="tcpctrl__state =6" /> +<NEXTACTIVITYELEMENT id="118" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="118" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="119" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="120" name="action"> +<CUSTOM action="tcpctrl__state =0" /> +<NEXTACTIVITYELEMENT id="121" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="121" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="122" name="action"> +<CUSTOM action="tcpctrl__state =0" /> +<NEXTACTIVITYELEMENT id="119" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="123" name="action"> +<CUSTOM action="tcpctrl__state =8" /> +<NEXTACTIVITYELEMENT id="122" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="124" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="129" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="125" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendRequest" value="" id="126" name="send request"> +<CUSTOM request="AppC__req_Timer" params="" /> +<NEXTACTIVITYELEMENT id="127" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="127" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="130" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="128" name="action"> +<CUSTOM action="seqNum=seqNum+wind" /> +<NEXTACTIVITYELEMENT id="124" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="129" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="126" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="130" name="action"> +<CUSTOM action="tcpctrl__state =2" /> +<NEXTACTIVITYELEMENT id="125" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="131" name="write channel"> +<CUSTOM nbOfSamples="1" channels="AppC__fromTtoP " /> +<NEXTACTIVITYELEMENT id="134" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="132" name="action"> +<CUSTOM action="tcpctrl__state =2" /> +<NEXTACTIVITYELEMENT id="133" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="133" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="134" name="send event"> +<CUSTOM event="AppC__send__AppC__send" params="" /> +<NEXTACTIVITYELEMENT id="132" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="135" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="136" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="137" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLSendEvent" value="" id="138" name="send event"> +<CUSTOM event="AppC__receive_Application__AppC__receive_Application" params="" /> +<NEXTACTIVITYELEMENT id="6" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="139" name="read channel"> +<CUSTOM nbOfSamples="1" channels="AppC__temp " /> +<NEXTACTIVITYELEMENT id="5" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ForLoopAfterStart.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ForLoopAfterStart.xml new file mode 100644 index 0000000000000000000000000000000000000000..7479397f0f2202943bfecfca5fb690378645f589 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/TCPIP_Disable_ForLoopAfterStart.xml @@ -0,0 +1,13 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="2" name="action"> +<CUSTOM action="tcpctrl__state=0" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Chip2Octet_Disable_ExecC.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Chip2Octet_Disable_ExecC.xml new file mode 100644 index 0000000000000000000000000000000000000000..706ae6f37486134961ceb73781f29e69ea8b0460 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Chip2Octet_Disable_ExecC.xml @@ -0,0 +1,21 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLReadChannel" value="" id="1" name="read channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in " /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="3" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__chip2octet_ch_out__Zigbee_TX__cwl_ch_in " /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ExecI.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ExecI.xml new file mode 100644 index 0000000000000000000000000000000000000000..84b8bcd6405104de27303c3ae18a0e704b089be9 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ExecI.xml @@ -0,0 +1,17 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="1" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="2" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in " /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="3" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ReadRequestArg.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ReadRequestArg.xml new file mode 100644 index 0000000000000000000000000000000000000000..a9555fc44af24ca8919929de5093707ad2f48cc1 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_ReadRequestArg.xml @@ -0,0 +1,17 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="3" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__Source_ch_out__Zigbee_TX__symbol2ChipSeq_ch_in " /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_WriteChannel.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_WriteChannel.xml new file mode 100644 index 0000000000000000000000000000000000000000..6d3ff961e140db7b6633a619536b6f03392732aa --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Source_Disable_WriteChannel.xml @@ -0,0 +1,17 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecI" value="size" id="1" name="execi"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="3" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Symbol2ChipSeq_Disable_ReadChannel.xml b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Symbol2ChipSeq_Disable_ReadChannel.xml new file mode 100644 index 0000000000000000000000000000000000000000..756b85ad30cd16cad7e5c82f6f7b75d1db25fbe0 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/expected/components_disabling/X_Symbol2ChipSeq_Disable_ReadChannel.xml @@ -0,0 +1,21 @@ +<ACTIVITY first="0"> +<ACTIVITYELEMENT type="tmltranslator.TMLStartState" value="" id="0" name="start"> +<CUSTOM /> +<NEXTACTIVITYELEMENT id="4" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLExecC" value="size" id="1" name="execc"> +<CUSTOM action="size" /> +<NEXTACTIVITYELEMENT id="3" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLStopState" value="" id="2" name="stop state"> +<CUSTOM /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLWriteChannel" value="" id="3" name="write channel"> +<CUSTOM nbOfSamples="size" channels="Zigbee_TX__symbol2ChipSeq_ch_out__Zigbee_TX__chip2octet_ch_in " /> +<NEXTACTIVITYELEMENT id="2" /> +</ACTIVITYELEMENT> +<ACTIVITYELEMENT type="tmltranslator.TMLActionState" value="" id="4" name="action reading args"> +<CUSTOM action="size = arg1__req" /> +<NEXTACTIVITYELEMENT id="1" /> +</ACTIVITYELEMENT> +</ACTIVITY> diff --git a/ttool/src/test/resources/ui/diagram2tml/input/SmartCardProtocol.xml b/ttool/src/test/resources/ui/diagram2tml/input/SmartCardProtocol.xml new file mode 100644 index 0000000000000000000000000000000000000000..745f29ca72e6e06344d46fa433e4bbfc42836353 --- /dev/null +++ b/ttool/src/test/resources/ui/diagram2tml/input/SmartCardProtocol.xml @@ -0,0 +1,6916 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> + +<TURTLEGMODELING version="1.0beta"> + +<Modeling type="TML Component Design" nameTab="AppC" > +<TMLComponentTaskDiagramPanel name="TML Component Task Diagram" minX="0" maxX="1724" minY="0" maxY="916" channels="true" events="true" requests="true" zoom="1.0000000000000018" > +<CONNECTOR type="126" id="1" > +<cdparam x="522" y="390" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="522" y="390" id="60" /> +<P2 x="468" y="336" id="39" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="2" > +<cdparam x="409" y="124" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="402" y="84" id="37" /> +<P2 x="593" y="85" id="186" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="3" > +<cdparam x="652" y="444" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="816" y="554" id="89" /> +<P2 x="971" y="502" id="152" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="4" > +<cdparam x="652" y="418" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="816" y="522" id="87" /> +<P2 x="922" y="482" id="154" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="5" > +<cdparam x="602" y="327" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="752" y="408" id="79" /> +<P2 x="831" y="376" id="103" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="6" > +<cdparam x="685" y="310" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="857" y="376" id="107" /> +<P2 x="922" y="368" id="144" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="7" > +<cdparam x="652" y="395" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="816" y="493" id="83" /> +<P2 x="922" y="459" id="146" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="8" > +<cdparam x="652" y="369" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="816" y="461" id="85" /> +<P2 x="922" y="432" id="148" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="9" > +<cdparam x="737" y="314" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="922" y="403" id="150" /> +<P2 x="816" y="432" id="81" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="10" > +<cdparam x="735" y="260" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="919" y="336" id="142" /> +<P2 x="749" y="284" id="198" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="11" > +<cdparam x="641" y="230" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="749" y="248" id="200" /> +<P2 x="919" y="297" id="140" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="12" > +<cdparam x="641" y="195" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="749" y="204" id="202" /> +<P2 x="919" y="254" id="138" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="13" > +<cdparam x="740" y="353" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="831" y="376" id="102" /> +<P2 x="749" y="315" id="204" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="14" > +<cdparam x="460" y="270" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="522" y="304" id="194" /> +<P2 x="468" y="304" id="45" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="15" > +<cdparam x="387" y="129" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="466" y="127" id="49" /> +<P2 x="525" y="127" id="206" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="16" > +<cdparam x="389" y="200" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="468" y="216" id="43" /> +<P2 x="522" y="216" id="192" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="17" > +<cdparam x="460" y="236" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="522" y="261" id="190" /> +<P2 x="468" y="261" id="41" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="18" > +<cdparam x="460" y="296" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="536" y="349" id="188" /> +<P2 x="548" y="390" id="65" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="19" > +<cdparam x="389" y="163" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="468" y="170" id="47" /> +<P2 x="522" y="170" id="196" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="20" > +<cdparam x="967" y="190" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> +<P1 x="919" y="204" id="136" /> +<P2 x="749" y="125" id="184" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="21" > +<cdparam x="1028" y="535" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> +<P1 x="630" y="347" id="208" /> +<P2 x="671" y="408" id="91" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="22" > +<cdparam x="1304" y="321" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> +<P1 x="1224" y="379" id="121" /> +<P2 x="1180" y="386" id="156" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="23" > +<cdparam x="1168" y="455" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> +<P1 x="1180" y="421" id="158" /> +<P2 x="1224" y="414" id="123" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="26" > +<cdparam x="1037" y="180" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> +<P1 x="1180" y="214" id="160" /> +<P2 x="1180" y="282" id="162" /> +<Point x="1224" y="226" /> +<Point x="1224" y="266" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="24" > +<father id="26" num="0" /> +<cdparam x="1224" y="226" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="25" > +<father id="26" num="1" /> +<cdparam x="1224" y="266" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="126" id="27" > +<cdparam x="873" y="361" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> +<P1 x="1180" y="461" id="164" /> +<P2 x="1224" y="442" id="125" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<COMPONENT type="1205" id="36" > +<cdparam x="1152" y="505" /> +<sizeparam width="206" height="105" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1725" minY="0" maxY="917" /> +<infoparam name="Record component" value="TCP_CTRL" /> +<TGConnectingPoint num="0" id="28" /> +<TGConnectingPoint num="1" id="29" /> +<TGConnectingPoint num="2" id="30" /> +<TGConnectingPoint num="3" id="31" /> +<TGConnectingPoint num="4" id="32" /> +<TGConnectingPoint num="5" id="33" /> +<TGConnectingPoint num="6" id="34" /> +<TGConnectingPoint num="7" id="35" /> +<extraparam> +<Attribute access="2" id="a" value="" type="0" typeOther="" /> +<Attribute access="2" id="state" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1202" id="59" > +<cdparam x="164" y="97" /> +<sizeparam width="291" height="277" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1725" minY="0" maxY="917" /> +<infoparam name="TGComponent" value="InterfaceDevice" /> +<TGConnectingPoint num="0" id="51" /> +<TGConnectingPoint num="1" id="52" /> +<TGConnectingPoint num="2" id="53" /> +<TGConnectingPoint num="3" id="54" /> +<TGConnectingPoint num="4" id="55" /> +<TGConnectingPoint num="5" id="56" /> +<TGConnectingPoint num="6" id="57" /> +<TGConnectingPoint num="7" id="58" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="resetType" value="0" type="0" typeOther="" /> +<Attribute access="2" id="x" value="0" type="0" typeOther="" /> +<Attribute access="2" id="i" value="0" type="0" typeOther="" /> +<Attribute access="2" id="nbOfComputedPackets" value="1" type="0" typeOther="" /> +<Attribute access="2" id="b" value="" type="4" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1203" id="38" > +<father id="59" num="0" /> +<cdparam x="389" y="84" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" /> +<infoparam name="TGComponent" value="Event reset, pTS" /> +<TGConnectingPoint num="0" id="37" /> +<extraparam> +<Prop commName="reset, pTS" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="40" > +<father id="59" num="1" /> +<cdparam x="442" y="323" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" /> +<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" /> +<TGConnectingPoint num="0" id="39" /> +<extraparam> +<Prop commName="answerToReset, pTSConfirm" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="42" > +<father id="59" num="2" /> +<cdparam x="442" y="248" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" /> +<infoparam name="TGComponent" value="Channel fromSCtoD" /> +<TGConnectingPoint num="0" id="41" /> +<extraparam> +<Prop commName="fromSCtoD" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="44" > +<father id="59" num="3" /> +<cdparam x="442" y="203" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" /> +<infoparam name="TGComponent" value="Channel fromDtoSC" /> +<TGConnectingPoint num="0" id="43" /> +<extraparam> +<Prop commName="fromDtoSC" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="46" > +<father id="59" num="4" /> +<cdparam x="442" y="291" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" /> +<infoparam name="TGComponent" value="Event data_Ready_SC" /> +<TGConnectingPoint num="0" id="45" /> +<extraparam> +<Prop commName="data_Ready_SC" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="48" > +<father id="59" num="5" /> +<cdparam x="442" y="157" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" /> +<infoparam name="TGComponent" value="Event data_Ready" /> +<TGConnectingPoint num="0" id="47" /> +<extraparam> +<Prop commName="data_Ready" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="2" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="50" > +<father id="59" num="6" /> +<cdparam x="445" y="117" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="281" minY="-10" maxY="267" /> +<infoparam name="TGComponent" value="Request activation" /> +<TGConnectingPoint num="0" id="49" /> +<extraparam> +<Prop commName="activation" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1200" id="227" > +<cdparam x="535" y="94" /> +<sizeparam width="936" height="530" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1725" minY="0" maxY="917" /> +<infoparam name="TGComponent" value="SmartCard" /> +<TGConnectingPoint num="0" id="219" /> +<TGConnectingPoint num="1" id="220" /> +<TGConnectingPoint num="2" id="221" /> +<TGConnectingPoint num="3" id="222" /> +<TGConnectingPoint num="4" id="223" /> +<TGConnectingPoint num="5" id="224" /> +<TGConnectingPoint num="6" id="225" /> +<TGConnectingPoint num="7" id="226" /> +<extraparam> +<info hiddeni="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1201" id="78" > +<father id="227" num="0" /> +<cdparam x="522" y="377" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="923" minY="-13" maxY="517" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="60" /> +<TGConnectingPoint num="1" id="61" /> +<TGConnectingPoint num="2" id="62" /> +<TGConnectingPoint num="3" id="63" /> +<TGConnectingPoint num="4" id="64" /> +<TGConnectingPoint num="5" id="65" /> +<TGConnectingPoint num="6" id="66" /> +<TGConnectingPoint num="7" id="67" /> +<TGConnectingPoint num="8" id="68" /> +<TGConnectingPoint num="9" id="69" /> +<TGConnectingPoint num="10" id="70" /> +<TGConnectingPoint num="11" id="71" /> +<TGConnectingPoint num="12" id="72" /> +<TGConnectingPoint num="13" id="73" /> +<TGConnectingPoint num="14" id="74" /> +<TGConnectingPoint num="15" id="75" /> +<TGConnectingPoint num="16" id="76" /> +<TGConnectingPoint num="17" id="77" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="101" > +<father id="227" num="1" /> +<cdparam x="565" y="418" /> +<sizeparam width="240" height="146" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="696" minY="0" maxY="384" /> +<infoparam name="TGComponent" value="Application" /> +<TGConnectingPoint num="0" id="93" /> +<TGConnectingPoint num="1" id="94" /> +<TGConnectingPoint num="2" id="95" /> +<TGConnectingPoint num="3" id="96" /> +<TGConnectingPoint num="4" id="97" /> +<TGConnectingPoint num="5" id="98" /> +<TGConnectingPoint num="6" id="99" /> +<TGConnectingPoint num="7" id="100" /> +<extraparam> +<Data isAttacker="No" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="80" > +<father id="101" num="0" /> +<cdparam x="742" y="408" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Request start_TCP_IP" /> +<TGConnectingPoint num="0" id="79" /> +<extraparam> +<Prop commName="start_TCP_IP" commType="2" origin="true" finite="false" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="82" > +<father id="101" num="1" /> +<cdparam x="795" y="422" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Channel fromTtoA" /> +<TGConnectingPoint num="0" id="81" /> +<extraparam> +<Prop commName="fromTtoA" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="84" > +<father id="101" num="2" /> +<cdparam x="795" y="483" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Event send_TCP" /> +<TGConnectingPoint num="0" id="83" /> +<extraparam> +<Prop commName="send_TCP" commType="1" origin="true" finite="false" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="86" > +<father id="101" num="3" /> +<cdparam x="795" y="451" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Event open, abort, close" /> +<TGConnectingPoint num="0" id="85" /> +<extraparam> +<Prop commName="open, abort, close" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="88" > +<father id="101" num="4" /> +<cdparam x="795" y="512" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Event receive_Application" /> +<TGConnectingPoint num="0" id="87" /> +<extraparam> +<Prop commName="receive_Application" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="90" > +<father id="101" num="5" /> +<cdparam x="795" y="544" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Channel fromAtoT" /> +<TGConnectingPoint num="0" id="89" /> +<extraparam> +<Prop commName="fromAtoT" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="92" > +<father id="101" num="6" /> +<cdparam x="661" y="408" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Request start_Application" /> +<TGConnectingPoint num="0" id="91" /> +<extraparam> +<Prop commName="start_Application" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1200" id="183" > +<father id="227" num="2" /> +<cdparam x="844" y="134" /> +<sizeparam width="570" height="486" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="366" minY="0" maxY="44" /> +<infoparam name="TGComponent" value="TCPIP Entities" /> +<TGConnectingPoint num="0" id="175" /> +<TGConnectingPoint num="1" id="176" /> +<TGConnectingPoint num="2" id="177" /> +<TGConnectingPoint num="3" id="178" /> +<TGConnectingPoint num="4" id="179" /> +<TGConnectingPoint num="5" id="180" /> +<TGConnectingPoint num="6" id="181" /> +<TGConnectingPoint num="7" id="182" /> +<extraparam> +<info hiddeni="false" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="120" > +<father id="183" num="0" /> +<cdparam x="831" y="363" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="557" minY="-13" maxY="473" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="102" /> +<TGConnectingPoint num="1" id="103" /> +<TGConnectingPoint num="2" id="104" /> +<TGConnectingPoint num="3" id="105" /> +<TGConnectingPoint num="4" id="106" /> +<TGConnectingPoint num="5" id="107" /> +<TGConnectingPoint num="6" id="108" /> +<TGConnectingPoint num="7" id="109" /> +<TGConnectingPoint num="8" id="110" /> +<TGConnectingPoint num="9" id="111" /> +<TGConnectingPoint num="10" id="112" /> +<TGConnectingPoint num="11" id="113" /> +<TGConnectingPoint num="12" id="114" /> +<TGConnectingPoint num="13" id="115" /> +<TGConnectingPoint num="14" id="116" /> +<TGConnectingPoint num="15" id="117" /> +<TGConnectingPoint num="16" id="118" /> +<TGConnectingPoint num="17" id="119" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="135" > +<father id="183" num="1" /> +<cdparam x="1234" y="329" /> +<sizeparam width="141" height="142" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="429" minY="0" maxY="344" /> +<infoparam name="TGComponent" value="Timer" /> +<TGConnectingPoint num="0" id="127" /> +<TGConnectingPoint num="1" id="128" /> +<TGConnectingPoint num="2" id="129" /> +<TGConnectingPoint num="3" id="130" /> +<TGConnectingPoint num="4" id="131" /> +<TGConnectingPoint num="5" id="132" /> +<TGConnectingPoint num="6" id="133" /> +<TGConnectingPoint num="7" id="134" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="x" value="0" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="122" > +<father id="135" num="0" /> +<cdparam x="1224" y="369" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="131" minY="-10" maxY="132" /> +<infoparam name="TGComponent" value="Event timeOut" /> +<TGConnectingPoint num="0" id="121" /> +<extraparam> +<Prop commName="timeOut" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="124" > +<father id="135" num="1" /> +<cdparam x="1224" y="404" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="131" minY="-10" maxY="132" /> +<infoparam name="TGComponent" value="Request req_Timer" /> +<TGConnectingPoint num="0" id="123" /> +<extraparam> +<Prop commName="req_Timer" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="126" > +<father id="135" num="2" /> +<cdparam x="1224" y="432" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="131" minY="-10" maxY="132" /> +<infoparam name="TGComponent" value="Event stop" /> +<TGConnectingPoint num="0" id="125" /> +<extraparam> +<Prop commName="stop" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="174" > +<father id="183" num="2" /> +<cdparam x="932" y="173" /> +<sizeparam width="237" height="318" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="333" minY="0" maxY="168" /> +<infoparam name="TGComponent" value="TCPIP" /> +<TGConnectingPoint num="0" id="166" /> +<TGConnectingPoint num="1" id="167" /> +<TGConnectingPoint num="2" id="168" /> +<TGConnectingPoint num="3" id="169" /> +<TGConnectingPoint num="4" id="170" /> +<TGConnectingPoint num="5" id="171" /> +<TGConnectingPoint num="6" id="172" /> +<TGConnectingPoint num="7" id="173" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="wind" value="64" type="0" typeOther="" /> +<Attribute access="2" id="seqNum" value="0" type="0" typeOther="" /> +<Attribute access="2" id="i" value="" type="0" typeOther="" /> +<Attribute access="2" id="j" value="" type="0" typeOther="" /> +<Attribute access="2" id="a" value="0" type="0" typeOther="" /> +<Attribute access="2" id="b" value="0" type="0" typeOther="" /> +<Attribute access="2" id="tcpctrl" value="" type="5" typeOther="TCP_CTRL" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="137" > +<father id="174" num="0" /> +<cdparam x="919" y="191" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" /> +<infoparam name="TGComponent" value="Event send" /> +<TGConnectingPoint num="0" id="136" /> +<extraparam> +<Prop commName="send" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="139" > +<father id="174" num="1" /> +<cdparam x="919" y="241" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" /> +<infoparam name="TGComponent" value="Event receive" /> +<TGConnectingPoint num="0" id="138" /> +<extraparam> +<Prop commName="receive" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="141" > +<father id="174" num="2" /> +<cdparam x="919" y="284" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" /> +<infoparam name="TGComponent" value="Channel fromPtoT" /> +<TGConnectingPoint num="0" id="140" /> +<extraparam> +<Prop commName="fromPtoT" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="143" > +<father id="174" num="3" /> +<cdparam x="919" y="323" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" /> +<infoparam name="TGComponent" value="Channel fromTtoP" /> +<TGConnectingPoint num="0" id="142" /> +<extraparam> +<Prop commName="fromTtoP" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="145" > +<father id="174" num="4" /> +<cdparam x="922" y="358" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Request start_TCP_IP" /> +<TGConnectingPoint num="0" id="144" /> +<extraparam> +<Prop commName="start_TCP_IP" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="147" > +<father id="174" num="5" /> +<cdparam x="922" y="449" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Event send_TCP" /> +<TGConnectingPoint num="0" id="146" /> +<extraparam> +<Prop commName="send_TCP" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="149" > +<father id="174" num="6" /> +<cdparam x="922" y="422" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Event open, abort, close" /> +<TGConnectingPoint num="0" id="148" /> +<extraparam> +<Prop commName="open, abort, close" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="151" > +<father id="174" num="7" /> +<cdparam x="922" y="393" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Channel fromTtoA" /> +<TGConnectingPoint num="0" id="150" /> +<extraparam> +<Prop commName="fromTtoA" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="153" > +<father id="174" num="8" /> +<cdparam x="961" y="481" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Channel fromAtoT" /> +<TGConnectingPoint num="0" id="152" /> +<extraparam> +<Prop commName="fromAtoT" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="155" > +<father id="174" num="9" /> +<cdparam x="922" y="472" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Event receive_Application" /> +<TGConnectingPoint num="0" id="154" /> +<extraparam> +<Prop commName="receive_Application" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="157" > +<father id="174" num="10" /> +<cdparam x="1159" y="376" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Event timeOut" /> +<TGConnectingPoint num="0" id="156" /> +<extraparam> +<Prop commName="timeOut" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="159" > +<father id="174" num="11" /> +<cdparam x="1159" y="411" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Request req_Timer" /> +<TGConnectingPoint num="0" id="158" /> +<extraparam> +<Prop commName="req_Timer" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="161" > +<father id="174" num="12" /> +<cdparam x="1159" y="204" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Channel temp" /> +<TGConnectingPoint num="0" id="160" /> +<extraparam> +<Prop commName="temp" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="163" > +<father id="174" num="13" /> +<cdparam x="1159" y="272" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Channel temp" /> +<TGConnectingPoint num="0" id="162" /> +<extraparam> +<Prop commName="temp" commType="0" origin="false" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="165" > +<father id="174" num="14" /> +<cdparam x="1159" y="451" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="227" minY="-10" maxY="308" /> +<infoparam name="TGComponent" value="Event stop" /> +<TGConnectingPoint num="0" id="164" /> +<extraparam> +<Prop commName="stop" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="218" > +<father id="227" num="3" /> +<cdparam x="535" y="98" /> +<sizeparam width="201" height="238" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="735" minY="0" maxY="292" /> +<infoparam name="TGComponent" value="SmartCard" /> +<TGConnectingPoint num="0" id="210" /> +<TGConnectingPoint num="1" id="211" /> +<TGConnectingPoint num="2" id="212" /> +<TGConnectingPoint num="3" id="213" /> +<TGConnectingPoint num="4" id="214" /> +<TGConnectingPoint num="5" id="215" /> +<TGConnectingPoint num="6" id="216" /> +<TGConnectingPoint num="7" id="217" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="resetType" value="0" type="0" typeOther="" /> +<Attribute access="2" id="a" value="0" type="0" typeOther="" /> +<Attribute access="2" id="b" value="" type="4" typeOther="" /> +<Attribute access="2" id="i" value="0" type="0" typeOther="" /> +<Attribute access="2" id="j" value="0" type="0" typeOther="" /> +<Attribute access="2" id="x" value="0" type="0" typeOther="" /> +<Attribute access="2" id="tcpctrl" value="" type="5" typeOther="TCP_CTRL" /> +<Attribute access="2" id="t" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="185" > +<father id="218" num="0" /> +<cdparam x="723" y="112" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event send" /> +<TGConnectingPoint num="0" id="184" /> +<extraparam> +<Prop commName="send" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="187" > +<father id="218" num="1" /> +<cdparam x="580" y="85" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event reset, pTS" /> +<TGConnectingPoint num="0" id="186" /> +<extraparam> +<Prop commName="reset, pTS" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="189" > +<father id="218" num="2" /> +<cdparam x="523" y="323" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" /> +<TGConnectingPoint num="0" id="188" /> +<extraparam> +<Prop commName="answerToReset, pTSConfirm" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="191" > +<father id="218" num="3" /> +<cdparam x="522" y="248" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Channel fromSCtoD" /> +<TGConnectingPoint num="0" id="190" /> +<extraparam> +<Prop commName="fromSCtoD" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="193" > +<father id="218" num="4" /> +<cdparam x="522" y="203" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Channel fromDtoSC" /> +<TGConnectingPoint num="0" id="192" /> +<extraparam> +<Prop commName="fromDtoSC" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="195" > +<father id="218" num="5" /> +<cdparam x="522" y="291" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event data_Ready_SC" /> +<TGConnectingPoint num="0" id="194" /> +<extraparam> +<Prop commName="data_Ready_SC" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="197" > +<father id="218" num="6" /> +<cdparam x="522" y="157" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event data_Ready" /> +<TGConnectingPoint num="0" id="196" /> +<extraparam> +<Prop commName="data_Ready" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="2" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="199" > +<father id="218" num="7" /> +<cdparam x="723" y="271" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Channel fromTtoP" /> +<TGConnectingPoint num="0" id="198" /> +<extraparam> +<Prop commName="fromTtoP" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="201" > +<father id="218" num="8" /> +<cdparam x="723" y="235" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Channel fromPtoT" /> +<TGConnectingPoint num="0" id="200" /> +<extraparam> +<Prop commName="fromPtoT" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="203" > +<father id="218" num="9" /> +<cdparam x="723" y="191" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event receive" /> +<TGConnectingPoint num="0" id="202" /> +<extraparam> +<Prop commName="receive" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="205" > +<father id="218" num="10" /> +<cdparam x="723" y="302" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Request start_TCP_IP" /> +<TGConnectingPoint num="0" id="204" /> +<extraparam> +<Prop commName="start_TCP_IP" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="207" > +<father id="218" num="11" /> +<cdparam x="525" y="117" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="191" minY="-10" maxY="228" /> +<infoparam name="TGComponent" value="Request activation" /> +<TGConnectingPoint num="0" id="206" /> +<extraparam> +<Prop commName="activation" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="209" > +<father id="218" num="12" /> +<cdparam x="620" y="326" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-10" maxX="191" minY="-10" maxY="228" /> +<infoparam name="TGComponent" value="Request start_Application" /> +<TGConnectingPoint num="0" id="208" /> +<extraparam> +<Prop commName="start_Application" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> + + +</TMLComponentTaskDiagramPanel> + +<TMLActivityDiagramPanel name="InterfaceDevice" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1012" id="235" > +<cdparam x="553" y="376" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="231" /> +<TGConnectingPoint num="1" id="232" /> +<TGConnectingPoint num="2" id="233" /> +<TGConnectingPoint num="3" id="234" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="228" > +<father id="235" num="0" /> +<cdparam x="528" y="386" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="229" > +<father id="235" num="1" /> +<cdparam x="588" y="386" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="230" > +<father id="235" num="2" /> +<cdparam x="573" y="421" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="243" > +<cdparam x="644" y="517" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="239" /> +<TGConnectingPoint num="1" id="240" /> +<TGConnectingPoint num="2" id="241" /> +<TGConnectingPoint num="3" id="242" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="236" > +<father id="243" num="0" /> +<cdparam x="599" y="527" /> +<sizeparam width="52" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ x==0 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="237" > +<father id="243" num="1" /> +<cdparam x="679" y="527" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="238" > +<father id="243" num="2" /> +<cdparam x="664" y="562" /> +<sizeparam width="42" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ x>0 ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1000" id="245" > +<cdparam x="222" y="58" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="244" /> +</COMPONENT> + +<COMPONENT type="1007" id="248" > +<cdparam x="188" y="137" /> +<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send request" value="activation()" /> +<TGConnectingPoint num="0" id="246" /> +<TGConnectingPoint num="1" id="247" /> +<extraparam> +<Data requestName="activation" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="251" > +<cdparam x="202" y="237" /> +<sizeparam width="53" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="reset()" /> +<TGConnectingPoint num="0" id="249" /> +<TGConnectingPoint num="1" id="250" /> +<latencyCheck /> +<extraparam> +<Data eventName="reset" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="254" > +<cdparam x="167" y="288" /> +<sizeparam width="120" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="answerToReset() " /> +<TGConnectingPoint num="0" id="252" /> +<TGConnectingPoint num="1" id="253" /> +<extraparam> +<Data eventName="answerToReset" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="257" > +<cdparam x="207" y="337" /> +<sizeparam width="43" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="pTS()" /> +<TGConnectingPoint num="0" id="255" /> +<TGConnectingPoint num="1" id="256" /> +<extraparam> +<Data eventName="pTS" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="260" > +<cdparam x="356" y="165" /> +<sizeparam width="94" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="pTSConfirm() " /> +<TGConnectingPoint num="0" id="258" /> +<TGConnectingPoint num="1" id="259" /> +<latencyCheck /> +<breakpoint /> +<extraparam> +<Data eventName="pTSConfirm" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="277" > +<cdparam x="367" y="222" /> +<sizeparam width="114" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value="data exchange +" /> +<TGConnectingPoint num="0" id="261" /> +<TGConnectingPoint num="1" id="262" /> +<TGConnectingPoint num="2" id="263" /> +<TGConnectingPoint num="3" id="264" /> +<TGConnectingPoint num="4" id="265" /> +<TGConnectingPoint num="5" id="266" /> +<TGConnectingPoint num="6" id="267" /> +<TGConnectingPoint num="7" id="268" /> +<TGConnectingPoint num="8" id="269" /> +<TGConnectingPoint num="9" id="270" /> +<TGConnectingPoint num="10" id="271" /> +<TGConnectingPoint num="11" id="272" /> +<TGConnectingPoint num="12" id="273" /> +<TGConnectingPoint num="13" id="274" /> +<TGConnectingPoint num="14" id="275" /> +<TGConnectingPoint num="15" id="276" /> +<extraparam> +<Line value="data exchange" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="280" > +<cdparam x="429" y="448" /> +<sizeparam width="94" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="write channel" value="fromDtoSC(1)" /> +<TGConnectingPoint num="0" id="278" /> +<TGConnectingPoint num="1" id="279" /> +<extraparam> +<Data channelName="fromDtoSC" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="283" > +<cdparam x="419" y="507" /> +<sizeparam width="115" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="data_Ready(x, b)" /> +<TGConnectingPoint num="0" id="281" /> +<TGConnectingPoint num="1" id="282" /> +<latencyCheck /> +<extraparam> +<Data eventName="data_Ready" nbOfParams="5" /> +<Param index="0" value="x" /> +<Param index="1" value="b" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="285" > +<cdparam x="466" y="570" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="284" /> +</COMPONENT> + +<COMPONENT type="1017" id="288" > +<cdparam x="588" y="447" /> +<sizeparam width="142" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="notified event" value="x=?data_Ready_SC()" /> +<TGConnectingPoint num="0" id="286" /> +<TGConnectingPoint num="1" id="287" /> +<extraparam> +<Data eventName="data_Ready_SC" variable="x" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="290" > +<cdparam x="569" y="577" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="289" /> +</COMPONENT> + +<COMPONENT type="1009" id="293" > +<cdparam x="610" y="700" /> +<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read channel" value="fromSCtoD(1) " /> +<TGConnectingPoint num="0" id="291" /> +<TGConnectingPoint num="1" id="292" /> +<extraparam> +<Data channelName="fromSCtoD" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="296" > +<cdparam x="600" y="619" /> +<sizeparam width="119" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="data_Ready_SC() " /> +<TGConnectingPoint num="0" id="294" /> +<TGConnectingPoint num="1" id="295" /> +<accessibility /> +<extraparam> +<Data eventName="data_Ready_SC" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="298" > +<cdparam x="649" y="774" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="297" /> +</COMPONENT> + +<COMPONENT type="1014" id="302" > +<cdparam x="300" y="287" /> +<sizeparam width="268" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="for loop" value="for(i=0;i<nbOfComputedPackets;i = i +1)" /> +<TGConnectingPoint num="0" id="299" /> +<TGConnectingPoint num="1" id="300" /> +<TGConnectingPoint num="2" id="301" /> +<extraparam> +<Data init="i=0" condition="i<nbOfComputedPackets" increment="i = i +1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="304" > +<cdparam x="382" y="380" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="303" /> +</COMPONENT> + +<CONNECTOR type="115" id="305" > +<cdparam x="434" y="312" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="434" y="312" id="301" /> +<P2 x="392" y="375" id="303" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="306" > +<cdparam x="561" y="301" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="568" y="301" id="300" /> +<P2 x="568" y="366" id="231" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="311" > +<cdparam x="78" y="363" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to wait event" value="null" /> +<P1 x="228" y="362" id="256" /> +<P2 x="403" y="160" id="258" /> +<Point x="228" y="383" /> +<Point x="307" y="383" /> +<Point x="307" y="140" /> +<Point x="403" y="140" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="307" > +<father id="311" num="0" /> +<cdparam x="228" y="383" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="308" > +<father id="311" num="1" /> +<cdparam x="307" y="383" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="309" > +<father id="311" num="2" /> +<cdparam x="307" y="140" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="310" > +<father id="311" num="3" /> +<cdparam x="403" y="140" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="115" id="312" > +<cdparam x="228" y="57" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to send request" value="null" /> +<P1 x="229" y="78" id="244" /> +<P2 x="228" y="132" id="246" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="313" > +<cdparam x="228" y="162" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send request to send event" value="null" /> +<P1 x="228" y="162" id="247" /> +<P2 x="228" y="232" id="249" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="314" > +<cdparam x="228" y="284" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to send event" value="null" /> +<P1 x="227" y="313" id="253" /> +<P2 x="228" y="332" id="255" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="315" > +<cdparam x="528" y="391" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to write channel" value="null" /> +<P1 x="528" y="391" id="232" /> +<P2 x="476" y="443" id="278" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="316" > +<cdparam x="476" y="473" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="476" y="473" id="279" /> +<P2 x="476" y="502" id="281" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="317" > +<cdparam x="471" y="529" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to stop state" value="null" /> +<P1 x="476" y="532" id="282" /> +<P2 x="476" y="565" id="284" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="318" > +<cdparam x="619" y="532" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to stop state" value="null" /> +<P1 x="619" y="532" id="240" /> +<P2 x="579" y="572" id="289" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="319" > +<cdparam x="580" y="405" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to notified event" value="null" /> +<P1 x="608" y="391" id="233" /> +<P2 x="659" y="442" id="286" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="320" > +<cdparam x="659" y="472" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from notified event to choice" value="null" /> +<P1 x="659" y="472" id="287" /> +<P2 x="659" y="507" id="239" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="321" > +<cdparam x="659" y="572" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to wait event" value="null" /> +<P1 x="659" y="572" id="242" /> +<P2 x="659" y="614" id="294" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="322" > +<cdparam x="670" y="644" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to read channel" value="null" /> +<P1 x="659" y="644" id="295" /> +<P2 x="659" y="695" id="291" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="323" > +<cdparam x="659" y="725" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from read channel to stop state" value="null" /> +<P1 x="659" y="725" id="292" /> +<P2 x="659" y="769" id="297" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="324" > +<cdparam x="403" y="190" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to for loop" value="null" /> +<P1 x="403" y="190" id="259" /> +<P2 x="434" y="282" id="299" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="325" > +<cdparam x="228" y="262" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to wait event" value="null" /> +<P1 x="228" y="262" id="250" /> +<P2 x="227" y="283" id="252" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="SmartCard" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1000" id="327" > +<cdparam x="159" y="66" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="326" /> +</COMPONENT> + +<COMPONENT type="1010" id="330" > +<cdparam x="138" y="129" /> +<sizeparam width="57" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="reset() " /> +<TGConnectingPoint num="0" id="328" /> +<TGConnectingPoint num="1" id="329" /> +<extraparam> +<Data eventName="reset" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="333" > +<cdparam x="108" y="182" /> +<sizeparam width="116" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="answerToReset()" /> +<TGConnectingPoint num="0" id="331" /> +<TGConnectingPoint num="1" id="332" /> +<extraparam> +<Data eventName="answerToReset" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="336" > +<cdparam x="143" y="237" /> +<sizeparam width="47" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="pTS() " /> +<TGConnectingPoint num="0" id="334" /> +<TGConnectingPoint num="1" id="335" /> +<extraparam> +<Data eventName="pTS" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="339" > +<cdparam x="121" y="308" /> +<sizeparam width="90" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="pTSConfirm()" /> +<TGConnectingPoint num="0" id="337" /> +<TGConnectingPoint num="1" id="338" /> +<extraparam> +<Data eventName="pTSConfirm" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="356" > +<cdparam x="376" y="98" /> +<sizeparam width="249" height="39" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value="The first two layers of the OSI model +are used to communicate between +the smart card and the terminal +" /> +<TGConnectingPoint num="0" id="340" /> +<TGConnectingPoint num="1" id="341" /> +<TGConnectingPoint num="2" id="342" /> +<TGConnectingPoint num="3" id="343" /> +<TGConnectingPoint num="4" id="344" /> +<TGConnectingPoint num="5" id="345" /> +<TGConnectingPoint num="6" id="346" /> +<TGConnectingPoint num="7" id="347" /> +<TGConnectingPoint num="8" id="348" /> +<TGConnectingPoint num="9" id="349" /> +<TGConnectingPoint num="10" id="350" /> +<TGConnectingPoint num="11" id="351" /> +<TGConnectingPoint num="12" id="352" /> +<TGConnectingPoint num="13" id="353" /> +<TGConnectingPoint num="14" id="354" /> +<TGConnectingPoint num="15" id="355" /> +<extraparam> +<Line value="The first two layers of the OSI model " /> +<Line value="are used to communicate between " /> +<Line value="the smart card and the terminal" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1007" id="359" > +<cdparam x="250" y="97" /> +<sizeparam width="96" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send request" value="start_TCP_IP()" /> +<TGConnectingPoint num="0" id="357" /> +<TGConnectingPoint num="1" id="358" /> +<extraparam> +<Data requestName="start_TCP_IP" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1007" id="362" > +<cdparam x="236" y="148" /> +<sizeparam width="125" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send request" value="start_Application()" /> +<TGConnectingPoint num="0" id="360" /> +<TGConnectingPoint num="1" id="361" /> +<extraparam> +<Data requestName="start_Application" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="364" > +<cdparam x="515" y="428" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="363" /> +</COMPONENT> + +<COMPONENT type="1008" id="367" > +<cdparam x="305" y="350" /> +<sizeparam width="115" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="data_Ready_SC()" /> +<TGConnectingPoint num="0" id="365" /> +<TGConnectingPoint num="1" id="366" /> +<extraparam> +<Data eventName="data_Ready_SC" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="369" > +<cdparam x="352" y="426" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="368" /> +</COMPONENT> + +<COMPONENT type="1009" id="372" > +<cdparam x="318" y="308" /> +<sizeparam width="88" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read channel" value="fromTtoP(1) " /> +<TGConnectingPoint num="0" id="370" /> +<TGConnectingPoint num="1" id="371" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="375" > +<cdparam x="335" y="264" /> +<sizeparam width="55" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="send() " /> +<TGConnectingPoint num="0" id="373" /> +<TGConnectingPoint num="1" id="374" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="378" > +<cdparam x="315" y="392" /> +<sizeparam width="94" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="write channel" value="fromSCtoD(1)" /> +<TGConnectingPoint num="0" id="376" /> +<TGConnectingPoint num="1" id="377" /> +<extraparam> +<Data channelName="fromSCtoD" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="381" > +<cdparam x="493" y="350" /> +<sizeparam width="65" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="receive()" /> +<TGConnectingPoint num="0" id="379" /> +<TGConnectingPoint num="1" id="380" /> +<extraparam> +<Data eventName="receive" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1009" id="384" > +<cdparam x="476" y="311" /> +<sizeparam width="98" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read channel" value="fromDtoSC(1) " /> +<TGConnectingPoint num="0" id="382" /> +<TGConnectingPoint num="1" id="383" /> +<extraparam> +<Data channelName="fromDtoSC" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="387" > +<cdparam x="483" y="387" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="write channel" value="fromPtoT(1)" /> +<TGConnectingPoint num="0" id="385" /> +<TGConnectingPoint num="1" id="386" /> +<extraparam> +<Data channelName="fromPtoT" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="390" > +<cdparam x="466" y="268" /> +<sizeparam width="118" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="data_Ready(t, b) " /> +<TGConnectingPoint num="0" id="388" /> +<TGConnectingPoint num="1" id="389" /> +<breakpoint /> +<extraparam> +<Data eventName="data_Ready" nbOfParams="5" /> +<Param index="0" value="t" /> +<Param index="1" value="b" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1014" id="394" > +<cdparam x="236" y="202" /> +<sizeparam width="124" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="for loop" value="for(j=0;x==0;j = j)" /> +<TGConnectingPoint num="0" id="391" /> +<TGConnectingPoint num="1" id="392" /> +<TGConnectingPoint num="2" id="393" /> +<extraparam> +<Data init="j=0" condition="x==0" increment="j = j" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="396" > +<cdparam x="297" y="231" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="395" /> +</COMPONENT> + +<COMPONENT type="1018" id="407" > +<cdparam x="424" y="226" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="select" value="null" /> +<TGConnectingPoint num="0" id="397" /> +<TGConnectingPoint num="1" id="398" /> +<TGConnectingPoint num="2" id="399" /> +<TGConnectingPoint num="3" id="400" /> +<TGConnectingPoint num="4" id="401" /> +<TGConnectingPoint num="5" id="402" /> +<TGConnectingPoint num="6" id="403" /> +<TGConnectingPoint num="7" id="404" /> +<TGConnectingPoint num="8" id="405" /> +<TGConnectingPoint num="9" id="406" /> +</COMPONENT> + +<CONNECTOR type="115" id="412" > +<cdparam x="111" y="331" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to send request" value="null" /> +<P1 x="166" y="333" id="338" /> +<P2 x="298" y="92" id="357" /> +<Point x="166" y="351" /> +<Point x="231" y="351" /> +<Point x="231" y="72" /> +<Point x="298" y="72" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="408" > +<father id="412" num="0" /> +<cdparam x="166" y="351" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="409" > +<father id="412" num="1" /> +<cdparam x="231" y="351" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="410" > +<father id="412" num="2" /> +<cdparam x="231" y="72" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="411" > +<father id="412" num="3" /> +<cdparam x="298" y="72" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="115" id="413" > +<cdparam x="166" y="64" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to wait event" value="null" /> +<P1 x="166" y="86" id="326" /> +<P2 x="166" y="124" id="328" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="414" > +<cdparam x="166" y="154" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to send event" value="null" /> +<P1 x="166" y="154" id="329" /> +<P2 x="166" y="177" id="331" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="415" > +<cdparam x="312" y="133" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send request to send request" value="null" /> +<P1 x="298" y="122" id="358" /> +<P2 x="298" y="143" id="360" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="416" > +<cdparam x="355" y="300" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to read channel" value="null" /> +<P1 x="362" y="289" id="374" /> +<P2 x="362" y="303" id="370" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="417" > +<cdparam x="355" y="365" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from read channel to send event" value="null" /> +<P1 x="362" y="333" id="371" /> +<P2 x="362" y="345" id="365" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="418" > +<cdparam x="355" y="417" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to write channel" value="null" /> +<P1 x="362" y="375" id="366" /> +<P2 x="362" y="387" id="376" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="419" > +<cdparam x="355" y="473" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to stop state" value="null" /> +<P1 x="362" y="417" id="377" /> +<P2 x="362" y="421" id="368" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="420" > +<cdparam x="541" y="358" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from read channel to send event" value="null" /> +<P1 x="525" y="336" id="383" /> +<P2 x="525" y="345" id="379" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="421" > +<cdparam x="540" y="402" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to write channel" value="null" /> +<P1 x="525" y="375" id="380" /> +<P2 x="525" y="382" id="385" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="422" > +<cdparam x="543" y="305" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to read channel" value="null" /> +<P1 x="525" y="293" id="389" /> +<P2 x="525" y="306" id="382" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="423" > +<cdparam x="540" y="464" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to stop state" value="null" /> +<P1 x="525" y="412" id="386" /> +<P2 x="525" y="423" id="363" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="424" > +<cdparam x="298" y="173" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send request to for loop" value="null" /> +<P1 x="298" y="173" id="361" /> +<P2 x="298" y="197" id="391" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="425" > +<cdparam x="328" y="232" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from for loop to stop state" value="null" /> +<P1 x="298" y="227" id="393" /> +<P2 x="307" y="226" id="395" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="426" > +<cdparam x="395" y="283" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from select to wait event" value="null" /> +<P1 x="399" y="241" id="398" /> +<P2 x="362" y="259" id="373" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="427" > +<cdparam x="543" y="341" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from select to wait event" value="null" /> +<P1 x="479" y="241" id="399" /> +<P2 x="525" y="263" id="388" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="428" > +<cdparam x="391" y="282" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from for loop to select" value="null" /> +<P1 x="360" y="216" id="392" /> +<P2 x="439" y="216" id="397" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="429" > +<cdparam x="164" y="262" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to send event" value="null" /> +<P1 x="166" y="262" id="335" /> +<P2 x="166" y="303" id="337" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="430" > +<cdparam x="166" y="207" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to wait event" value="null" /> +<P1 x="166" y="207" id="332" /> +<P2 x="166" y="232" id="334" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="TCPIP" minX="10" maxX="2900" minY="10" maxY="1900" > +<COMPONENT type="1012" id="438" > +<cdparam x="2086" y="1378" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="434" /> +<TGConnectingPoint num="1" id="435" /> +<TGConnectingPoint num="2" id="436" /> +<TGConnectingPoint num="3" id="437" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="431" > +<father id="438" num="0" /> +<cdparam x="2061" y="1388" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="432" > +<father id="438" num="1" /> +<cdparam x="2121" y="1388" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="433" > +<father id="438" num="2" /> +<cdparam x="2106" y="1426" /> +<sizeparam width="135" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ tcpctrl.state ==10 ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="446" > +<cdparam x="2262" y="951" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="442" /> +<TGConnectingPoint num="1" id="443" /> +<TGConnectingPoint num="2" id="444" /> +<TGConnectingPoint num="3" id="445" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="439" > +<father id="446" num="0" /> +<cdparam x="2212" y="961" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.state ==1 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="440" > +<father id="446" num="1" /> +<cdparam x="2297" y="961" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ tcpctrl.state ==3 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="441" > +<father id="446" num="2" /> +<cdparam x="2282" y="996" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ else ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="454" > +<cdparam x="1981" y="1346" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="450" /> +<TGConnectingPoint num="1" id="451" /> +<TGConnectingPoint num="2" id="452" /> +<TGConnectingPoint num="3" id="453" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="447" > +<father id="454" num="0" /> +<cdparam x="1934" y="1356" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.state ==5 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="448" > +<father id="454" num="1" /> +<cdparam x="2016" y="1356" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="449" > +<father id="454" num="2" /> +<cdparam x="2001" y="1391" /> +<sizeparam width="131" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ tcpctrl.state == 7 ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="462" > +<cdparam x="1811" y="1269" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="458" /> +<TGConnectingPoint num="1" id="459" /> +<TGConnectingPoint num="2" id="460" /> +<TGConnectingPoint num="3" id="461" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="455" > +<father id="462" num="0" /> +<cdparam x="1762" y="1279" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.state ==4 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="456" > +<father id="462" num="1" /> +<cdparam x="1846" y="1279" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="457" > +<father id="462" num="2" /> +<cdparam x="1831" y="1314" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ tcpctrl.state ==2 ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="470" > +<cdparam x="1716" y="1141" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="466" /> +<TGConnectingPoint num="1" id="467" /> +<TGConnectingPoint num="2" id="468" /> +<TGConnectingPoint num="3" id="469" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="463" > +<father id="470" num="0" /> +<cdparam x="1691" y="1151" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="464" > +<father id="470" num="1" /> +<cdparam x="1751" y="1151" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="465" > +<father id="470" num="2" /> +<cdparam x="1736" y="1186" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="474" > +<cdparam x="1524" y="1254" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="472" /> +<TGConnectingPoint num="1" id="473" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="471" > +<father id="474" num="0" /> +<cdparam x="1539" y="1274" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="478" > +<cdparam x="1524" y="1064" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="476" /> +<TGConnectingPoint num="1" id="477" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="475" > +<father id="478" num="0" /> +<cdparam x="1538" y="1088" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="486" > +<cdparam x="1592" y="1006" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="482" /> +<TGConnectingPoint num="1" id="483" /> +<TGConnectingPoint num="2" id="484" /> +<TGConnectingPoint num="3" id="485" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="479" > +<father id="486" num="0" /> +<cdparam x="1542" y="1016" /> +<sizeparam width="135" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.state == 4 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="480" > +<father id="486" num="1" /> +<cdparam x="1627" y="1016" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="481" > +<father id="486" num="2" /> +<cdparam x="1612" y="1051" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="494" > +<cdparam x="1713" y="875" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="490" /> +<TGConnectingPoint num="1" id="491" /> +<TGConnectingPoint num="2" id="492" /> +<TGConnectingPoint num="3" id="493" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="487" > +<father id="494" num="0" /> +<cdparam x="1688" y="885" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="488" > +<father id="494" num="1" /> +<cdparam x="1748" y="885" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="489" > +<father id="494" num="2" /> +<cdparam x="1733" y="920" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="498" > +<cdparam x="1636" y="1235" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="496" /> +<TGConnectingPoint num="1" id="497" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="495" > +<father id="498" num="0" /> +<cdparam x="1655" y="1254" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="502" > +<cdparam x="2213" y="1059" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="500" /> +<TGConnectingPoint num="1" id="501" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="499" > +<father id="502" num="0" /> +<cdparam x="2200" y="1083" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="506" > +<cdparam x="2336" y="1024" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="504" /> +<TGConnectingPoint num="1" id="505" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="503" > +<father id="506" num="0" /> +<cdparam x="2312" y="1044" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="514" > +<cdparam x="1193" y="1020" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="510" /> +<TGConnectingPoint num="1" id="511" /> +<TGConnectingPoint num="2" id="512" /> +<TGConnectingPoint num="3" id="513" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="507" > +<father id="514" num="0" /> +<cdparam x="1168" y="1030" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="508" > +<father id="514" num="1" /> +<cdparam x="1228" y="1030" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="509" > +<father id="514" num="2" /> +<cdparam x="1213" y="1065" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ tcpctrl.state ==6 ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="518" > +<cdparam x="1203" y="1107" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="516" /> +<TGConnectingPoint num="1" id="517" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="515" > +<father id="518" num="0" /> +<cdparam x="1218" y="1127" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="526" > +<cdparam x="557" y="712" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="522" /> +<TGConnectingPoint num="1" id="523" /> +<TGConnectingPoint num="2" id="524" /> +<TGConnectingPoint num="3" id="525" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="519" > +<father id="526" num="0" /> +<cdparam x="514" y="722" /> +<sizeparam width="131" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.state == 1 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="520" > +<father id="526" num="1" /> +<cdparam x="592" y="722" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="521" > +<father id="526" num="2" /> +<cdparam x="577" y="757" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="530" > +<cdparam x="717" y="694" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="528" /> +<TGConnectingPoint num="1" id="529" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="527" > +<father id="530" num="0" /> +<cdparam x="732" y="714" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="534" > +<cdparam x="938" y="1025" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="532" /> +<TGConnectingPoint num="1" id="533" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="531" > +<father id="534" num="0" /> +<cdparam x="953" y="1045" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="542" > +<cdparam x="1034" y="939" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="538" /> +<TGConnectingPoint num="1" id="539" /> +<TGConnectingPoint num="2" id="540" /> +<TGConnectingPoint num="3" id="541" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="535" > +<father id="542" num="0" /> +<cdparam x="989" y="949" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.state ==4 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="536" > +<father id="542" num="1" /> +<cdparam x="1070" y="949" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="537" > +<father id="542" num="2" /> +<cdparam x="1054" y="984" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ tcpctrl.state == 5]" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="546" > +<cdparam x="795" y="1009" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="544" /> +<TGConnectingPoint num="1" id="545" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="543" > +<father id="546" num="0" /> +<cdparam x="818" y="1031" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="554" > +<cdparam x="828" y="869" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="550" /> +<TGConnectingPoint num="1" id="551" /> +<TGConnectingPoint num="2" id="552" /> +<TGConnectingPoint num="3" id="553" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="547" > +<father id="554" num="0" /> +<cdparam x="753" y="885" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.state ==0 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="548" > +<father id="554" num="1" /> +<cdparam x="863" y="879" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="549" > +<father id="554" num="2" /> +<cdparam x="848" y="914" /> +<sizeparam width="123" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ tcpctrl.state==0 ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="558" > +<cdparam x="341" y="764" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="556" /> +<TGConnectingPoint num="1" id="557" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="555" > +<father id="558" num="0" /> +<cdparam x="354" y="785" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="562" > +<cdparam x="127" y="794" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="560" /> +<TGConnectingPoint num="1" id="561" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="559" > +<father id="562" num="0" /> +<cdparam x="146" y="818" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="570" > +<cdparam x="993" y="780" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="566" /> +<TGConnectingPoint num="1" id="567" /> +<TGConnectingPoint num="2" id="568" /> +<TGConnectingPoint num="3" id="569" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="563" > +<father id="570" num="0" /> +<cdparam x="949" y="793" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="564" > +<father id="570" num="1" /> +<cdparam x="1028" y="790" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="565" > +<father id="570" num="2" /> +<cdparam x="1013" y="825" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="574" > +<cdparam x="1003" y="701" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="572" /> +<TGConnectingPoint num="1" id="573" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="571" > +<father id="574" num="0" /> +<cdparam x="1018" y="721" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="578" > +<cdparam x="434" y="783" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="576" /> +<TGConnectingPoint num="1" id="577" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="575" > +<father id="578" num="0" /> +<cdparam x="449" y="802" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="582" > +<cdparam x="225" y="863" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="580" /> +<TGConnectingPoint num="1" id="581" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="579" > +<father id="582" num="0" /> +<cdparam x="245" y="885" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1013" id="586" > +<cdparam x="1044" y="1057" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="584" /> +<TGConnectingPoint num="1" id="585" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="583" > +<father id="586" num="0" /> +<cdparam x="1059" y="1077" /> +<sizeparam width="8" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="b" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="594" > +<cdparam x="173" y="486" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="590" /> +<TGConnectingPoint num="1" id="591" /> +<TGConnectingPoint num="2" id="592" /> +<TGConnectingPoint num="3" id="593" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="587" > +<father id="594" num="0" /> +<cdparam x="98" y="496" /> +<sizeparam width="123" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.state==0 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="588" > +<father id="594" num="1" /> +<cdparam x="208" y="496" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="589" > +<father id="594" num="2" /> +<cdparam x="193" y="531" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="602" > +<cdparam x="359" y="192" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="598" /> +<TGConnectingPoint num="1" id="599" /> +<TGConnectingPoint num="2" id="600" /> +<TGConnectingPoint num="3" id="601" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="595" > +<father id="602" num="0" /> +<cdparam x="317" y="202" /> +<sizeparam width="88" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.a>0 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="596" > +<father id="602" num="1" /> +<cdparam x="394" y="202" /> +<sizeparam width="98" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ tcpctrl.a==0 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="597" > +<father id="602" num="2" /> +<cdparam x="379" y="237" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="610" > +<cdparam x="449" y="582" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="606" /> +<TGConnectingPoint num="1" id="607" /> +<TGConnectingPoint num="2" id="608" /> +<TGConnectingPoint num="3" id="609" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="603" > +<father id="610" num="0" /> +<cdparam x="398" y="592" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.state ==9 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="604" > +<father id="610" num="1" /> +<cdparam x="500" y="599" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="605" > +<father id="610" num="2" /> +<cdparam x="469" y="627" /> +<sizeparam width="277" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ (tcpctrl.state ==2) or (tcpctrl.state ==4) ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1012" id="618" > +<cdparam x="274" y="564" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="614" /> +<TGConnectingPoint num="1" id="615" /> +<TGConnectingPoint num="2" id="616" /> +<TGConnectingPoint num="3" id="617" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="611" > +<father id="618" num="0" /> +<cdparam x="228" y="574" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ tcpctrl.state == 1]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="612" > +<father id="618" num="1" /> +<cdparam x="317" y="584" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ else ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="613" > +<father id="618" num="2" /> +<cdparam x="294" y="613" /> +<sizeparam width="127" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ tcpctrl.state ==4 ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1000" id="620" > +<cdparam x="227" y="27" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="619" /> +</COMPONENT> + +<COMPONENT type="301" id="637" > +<cdparam x="10" y="30" /> +<sizeparam width="98" height="135" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="0: closed +1: Listen +2: SYN rcvd +3: SYN sent +4: Estab +5: Fin wait1 +6: Fin wait2 +7: closing +8: Time wait +9: close wait +10:last ack +" /> +<TGConnectingPoint num="0" id="621" /> +<TGConnectingPoint num="1" id="622" /> +<TGConnectingPoint num="2" id="623" /> +<TGConnectingPoint num="3" id="624" /> +<TGConnectingPoint num="4" id="625" /> +<TGConnectingPoint num="5" id="626" /> +<TGConnectingPoint num="6" id="627" /> +<TGConnectingPoint num="7" id="628" /> +<TGConnectingPoint num="8" id="629" /> +<TGConnectingPoint num="9" id="630" /> +<TGConnectingPoint num="10" id="631" /> +<TGConnectingPoint num="11" id="632" /> +<TGConnectingPoint num="12" id="633" /> +<TGConnectingPoint num="13" id="634" /> +<TGConnectingPoint num="14" id="635" /> +<TGConnectingPoint num="15" id="636" /> +<extraparam> +<Line value="0: closed" /> +<Line value="1: Listen" /> +<Line value="2: SYN rcvd" /> +<Line value="3: SYN sent" /> +<Line value="4: Estab" /> +<Line value="5: Fin wait1" /> +<Line value="6: Fin wait2" /> +<Line value="7: closing" /> +<Line value="8: Time wait" /> +<Line value="9: close wait" /> +<Line value="10:last ack" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="640" > +<cdparam x="72" y="549" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =1" /> +<TGConnectingPoint num="0" id="638" /> +<TGConnectingPoint num="1" id="639" /> +</COMPONENT> + +<COMPONENT type="1001" id="642" > +<cdparam x="116" y="615" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="641" /> +</COMPONENT> + +<COMPONENT type="1009" id="645" > +<cdparam x="964" y="585" /> +<sizeparam width="88" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="read channel" value="fromPtoT(1) " /> +<TGConnectingPoint num="0" id="643" /> +<TGConnectingPoint num="1" id="644" /> +<extraparam> +<Data channelName="fromPtoT" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1014" id="649" > +<cdparam x="145" y="85" /> +<sizeparam width="180" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="for loop" value="for(i=0;(tcpctrl.a==0);i = i)" /> +<TGConnectingPoint num="0" id="646" /> +<TGConnectingPoint num="1" id="647" /> +<TGConnectingPoint num="2" id="648" /> +<extraparam> +<Data init="i=0" condition="(tcpctrl.a==0)" increment="i = i" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="651" > +<cdparam x="224" y="207" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="650" /> +</COMPONENT> + +<COMPONENT type="1011" id="654" > +<cdparam x="182" y="144" /> +<sizeparam width="105" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state=0" /> +<TGConnectingPoint num="0" id="652" /> +<TGConnectingPoint num="1" id="653" /> +</COMPONENT> + +<COMPONENT type="1017" id="657" > +<cdparam x="311" y="133" /> +<sizeparam width="127" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="notified event" value="tcpctrl.a=?abort()" /> +<TGConnectingPoint num="0" id="655" /> +<TGConnectingPoint num="1" id="656" /> +<extraparam> +<Data eventName="abort" variable="tcpctrl.a" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1009" id="660" > +<cdparam x="690" y="589" /> +<sizeparam width="64" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="read channel" value="temp(1) " /> +<TGConnectingPoint num="0" id="658" /> +<TGConnectingPoint num="1" id="659" /> +<extraparam> +<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="663" > +<cdparam x="686" y="534" /> +<sizeparam width="73" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="wait event" value="timeOut() " /> +<TGConnectingPoint num="0" id="661" /> +<TGConnectingPoint num="1" id="662" /> +<extraparam> +<Data eventName="timeOut" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="666" > +<cdparam x="974" y="528" /> +<sizeparam width="69" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="wait event" value="receive() " /> +<TGConnectingPoint num="0" id="664" /> +<TGConnectingPoint num="1" id="665" /> +<extraparam> +<Data eventName="receive" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="669" > +<cdparam x="436" y="492" /> +<sizeparam width="57" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="wait event" value="close() " /> +<TGConnectingPoint num="0" id="667" /> +<TGConnectingPoint num="1" id="668" /> +<extraparam> +<Data eventName="close" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="672" > +<cdparam x="247" y="468" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="wait event" value="send_TCP() " /> +<TGConnectingPoint num="0" id="670" /> +<TGConnectingPoint num="1" id="671" /> +<extraparam> +<Data eventName="send_TCP" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="675" > +<cdparam x="160" y="419" /> +<sizeparam width="56" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="wait event" value="open() " /> +<TGConnectingPoint num="0" id="673" /> +<TGConnectingPoint num="1" id="674" /> +<breakpoint /> +<extraparam> +<Data eventName="open" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1018" id="686" > +<cdparam x="449" y="267" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="select" value="null" /> +<TGConnectingPoint num="0" id="676" /> +<TGConnectingPoint num="1" id="677" /> +<TGConnectingPoint num="2" id="678" /> +<TGConnectingPoint num="3" id="679" /> +<TGConnectingPoint num="4" id="680" /> +<TGConnectingPoint num="5" id="681" /> +<TGConnectingPoint num="6" id="682" /> +<TGConnectingPoint num="7" id="683" /> +<TGConnectingPoint num="8" id="684" /> +<TGConnectingPoint num="9" id="685" /> +<breakpoint /> +</COMPONENT> + +<COMPONENT type="1001" id="688" > +<cdparam x="226" y="529" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="687" /> +</COMPONENT> + +<COMPONENT type="1001" id="690" > +<cdparam x="343" y="614" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="689" /> +</COMPONENT> + +<COMPONENT type="1010" id="693" > +<cdparam x="272" y="228" /> +<sizeparam width="58" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="wait event" value="abort() " /> +<TGConnectingPoint num="0" id="691" /> +<TGConnectingPoint num="1" id="692" /> +<extraparam> +<Data eventName="abort" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="695" > +<cdparam x="291" y="290" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="694" /> +</COMPONENT> + +<COMPONENT type="301" id="712" > +<cdparam x="602" y="86" /> +<sizeparam width="393" height="51" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="b est le nombre d'instructions necessaires pour paquetiser +ou depaquitiser un paquet TCP + +On prend b=1 comme exemple +" /> +<TGConnectingPoint num="0" id="696" /> +<TGConnectingPoint num="1" id="697" /> +<TGConnectingPoint num="2" id="698" /> +<TGConnectingPoint num="3" id="699" /> +<TGConnectingPoint num="4" id="700" /> +<TGConnectingPoint num="5" id="701" /> +<TGConnectingPoint num="6" id="702" /> +<TGConnectingPoint num="7" id="703" /> +<TGConnectingPoint num="8" id="704" /> +<TGConnectingPoint num="9" id="705" /> +<TGConnectingPoint num="10" id="706" /> +<TGConnectingPoint num="11" id="707" /> +<TGConnectingPoint num="12" id="708" /> +<TGConnectingPoint num="13" id="709" /> +<TGConnectingPoint num="14" id="710" /> +<TGConnectingPoint num="15" id="711" /> +<extraparam> +<Line value="b est le nombre d'instructions necessaires pour paquetiser" /> +<Line value="ou depaquitiser un paquet TCP" /> +<Line value="" /> +<Line value="On prend b=1 comme exemple" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1009" id="715" > +<cdparam x="186" y="808" /> +<sizeparam width="88" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="read channel" value="fromAtoT(1) " /> +<TGConnectingPoint num="0" id="713" /> +<TGConnectingPoint num="1" id="714" /> +<extraparam> +<Data channelName="fromAtoT" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="718" > +<cdparam x="188" y="1002" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="716" /> +<TGConnectingPoint num="1" id="717" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="720" > +<cdparam x="219" y="1237" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="719" /> +</COMPONENT> + +<COMPONENT type="1011" id="723" > +<cdparam x="384" y="1032" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =5" /> +<TGConnectingPoint num="0" id="721" /> +<TGConnectingPoint num="1" id="722" /> +</COMPONENT> + +<COMPONENT type="1001" id="725" > +<cdparam x="428" y="1213" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="724" /> +</COMPONENT> + +<COMPONENT type="1011" id="728" > +<cdparam x="80" y="1041" /> +<sizeparam width="105" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state=3" /> +<TGConnectingPoint num="0" id="726" /> +<TGConnectingPoint num="1" id="727" /> +</COMPONENT> + +<COMPONENT type="1006" id="731" > +<cdparam x="90" y="938" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="729" /> +<TGConnectingPoint num="1" id="730" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="734" > +<cdparam x="288" y="1026" /> +<sizeparam width="117" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =10" /> +<TGConnectingPoint num="0" id="732" /> +<TGConnectingPoint num="1" id="733" /> +</COMPONENT> + +<COMPONENT type="1001" id="736" > +<cdparam x="334" y="1229" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="735" /> +</COMPONENT> + +<COMPONENT type="1006" id="739" > +<cdparam x="397" y="941" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="737" /> +<TGConnectingPoint num="1" id="738" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="742" > +<cdparam x="304" y="900" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="740" /> +<TGConnectingPoint num="1" id="741" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="744" > +<cdparam x="789" y="1270" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="743" /> +</COMPONENT> + +<COMPONENT type="301" id="761" > +<cdparam x="998" y="850" /> +<sizeparam width="50" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="Fin +" /> +<TGConnectingPoint num="0" id="745" /> +<TGConnectingPoint num="1" id="746" /> +<TGConnectingPoint num="2" id="747" /> +<TGConnectingPoint num="3" id="748" /> +<TGConnectingPoint num="4" id="749" /> +<TGConnectingPoint num="5" id="750" /> +<TGConnectingPoint num="6" id="751" /> +<TGConnectingPoint num="7" id="752" /> +<TGConnectingPoint num="8" id="753" /> +<TGConnectingPoint num="9" id="754" /> +<TGConnectingPoint num="10" id="755" /> +<TGConnectingPoint num="11" id="756" /> +<TGConnectingPoint num="12" id="757" /> +<TGConnectingPoint num="13" id="758" /> +<TGConnectingPoint num="14" id="759" /> +<TGConnectingPoint num="15" id="760" /> +<extraparam> +<Line value="Fin" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="764" > +<cdparam x="674" y="965" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =1" /> +<TGConnectingPoint num="0" id="762" /> +<TGConnectingPoint num="1" id="763" /> +</COMPONENT> + +<COMPONENT type="1001" id="766" > +<cdparam x="718" y="1032" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="765" /> +</COMPONENT> + +<COMPONENT type="1006" id="769" > +<cdparam x="758" y="1086" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="767" /> +<TGConnectingPoint num="1" id="768" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="786" > +<cdparam x="781" y="950" /> +<sizeparam width="94" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="Active Open +" /> +<TGConnectingPoint num="0" id="770" /> +<TGConnectingPoint num="1" id="771" /> +<TGConnectingPoint num="2" id="772" /> +<TGConnectingPoint num="3" id="773" /> +<TGConnectingPoint num="4" id="774" /> +<TGConnectingPoint num="5" id="775" /> +<TGConnectingPoint num="6" id="776" /> +<TGConnectingPoint num="7" id="777" /> +<TGConnectingPoint num="8" id="778" /> +<TGConnectingPoint num="9" id="779" /> +<TGConnectingPoint num="10" id="780" /> +<TGConnectingPoint num="11" id="781" /> +<TGConnectingPoint num="12" id="782" /> +<TGConnectingPoint num="13" id="783" /> +<TGConnectingPoint num="14" id="784" /> +<TGConnectingPoint num="15" id="785" /> +<extraparam> +<Line value="Active Open" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="803" > +<cdparam x="715" y="907" /> +<sizeparam width="104" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="Passive Open +" /> +<TGConnectingPoint num="0" id="787" /> +<TGConnectingPoint num="1" id="788" /> +<TGConnectingPoint num="2" id="789" /> +<TGConnectingPoint num="3" id="790" /> +<TGConnectingPoint num="4" id="791" /> +<TGConnectingPoint num="5" id="792" /> +<TGConnectingPoint num="6" id="793" /> +<TGConnectingPoint num="7" id="794" /> +<TGConnectingPoint num="8" id="795" /> +<TGConnectingPoint num="9" id="796" /> +<TGConnectingPoint num="10" id="797" /> +<TGConnectingPoint num="11" id="798" /> +<TGConnectingPoint num="12" id="799" /> +<TGConnectingPoint num="13" id="800" /> +<TGConnectingPoint num="14" id="801" /> +<TGConnectingPoint num="15" id="802" /> +<extraparam> +<Line value="Passive Open" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="806" > +<cdparam x="745" y="1193" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =3" /> +<TGConnectingPoint num="0" id="804" /> +<TGConnectingPoint num="1" id="805" /> +</COMPONENT> + +<COMPONENT type="1011" id="809" > +<cdparam x="442" y="768" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =0" /> +<TGConnectingPoint num="0" id="807" /> +<TGConnectingPoint num="1" id="808" /> +</COMPONENT> + +<COMPONENT type="1001" id="811" > +<cdparam x="486" y="830" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="810" /> +</COMPONENT> + +<COMPONENT type="1006" id="814" > +<cdparam x="901" y="1123" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="812" /> +<TGConnectingPoint num="1" id="813" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="831" > +<cdparam x="884" y="1068" /> +<sizeparam width="115" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="send Ack of Fin +" /> +<TGConnectingPoint num="0" id="815" /> +<TGConnectingPoint num="1" id="816" /> +<TGConnectingPoint num="2" id="817" /> +<TGConnectingPoint num="3" id="818" /> +<TGConnectingPoint num="4" id="819" /> +<TGConnectingPoint num="5" id="820" /> +<TGConnectingPoint num="6" id="821" /> +<TGConnectingPoint num="7" id="822" /> +<TGConnectingPoint num="8" id="823" /> +<TGConnectingPoint num="9" id="824" /> +<TGConnectingPoint num="10" id="825" /> +<TGConnectingPoint num="11" id="826" /> +<TGConnectingPoint num="12" id="827" /> +<TGConnectingPoint num="13" id="828" /> +<TGConnectingPoint num="14" id="829" /> +<TGConnectingPoint num="15" id="830" /> +<extraparam> +<Line value="send Ack of Fin" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="834" > +<cdparam x="889" y="1234" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =9" /> +<TGConnectingPoint num="0" id="832" /> +<TGConnectingPoint num="1" id="833" /> +</COMPONENT> + +<COMPONENT type="1001" id="836" > +<cdparam x="933" y="1311" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="835" /> +</COMPONENT> + +<COMPONENT type="1006" id="839" > +<cdparam x="1007" y="1155" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="837" /> +<TGConnectingPoint num="1" id="838" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="856" > +<cdparam x="1000" y="1094" /> +<sizeparam width="115" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="send Ack of Fin +" /> +<TGConnectingPoint num="0" id="840" /> +<TGConnectingPoint num="1" id="841" /> +<TGConnectingPoint num="2" id="842" /> +<TGConnectingPoint num="3" id="843" /> +<TGConnectingPoint num="4" id="844" /> +<TGConnectingPoint num="5" id="845" /> +<TGConnectingPoint num="6" id="846" /> +<TGConnectingPoint num="7" id="847" /> +<TGConnectingPoint num="8" id="848" /> +<TGConnectingPoint num="9" id="849" /> +<TGConnectingPoint num="10" id="850" /> +<TGConnectingPoint num="11" id="851" /> +<TGConnectingPoint num="12" id="852" /> +<TGConnectingPoint num="13" id="853" /> +<TGConnectingPoint num="14" id="854" /> +<TGConnectingPoint num="15" id="855" /> +<extraparam> +<Line value="send Ack of Fin" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="859" > +<cdparam x="995" y="1266" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =7" /> +<TGConnectingPoint num="0" id="857" /> +<TGConnectingPoint num="1" id="858" /> +</COMPONENT> + +<COMPONENT type="1001" id="861" > +<cdparam x="1039" y="1341" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="860" /> +</COMPONENT> + +<COMPONENT type="1006" id="864" > +<cdparam x="680" y="758" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="862" /> +<TGConnectingPoint num="1" id="863" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="866" > +<cdparam x="712" y="865" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="865" /> +</COMPONENT> + +<COMPONENT type="1007" id="869" > +<cdparam x="92" y="1100" /> +<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send request" value="req_Timer()" /> +<TGConnectingPoint num="0" id="867" /> +<TGConnectingPoint num="1" id="868" /> +<extraparam> +<Data requestName="req_Timer" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="872" > +<cdparam x="102" y="1167" /> +<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="temp(1)" /> +<TGConnectingPoint num="0" id="870" /> +<TGConnectingPoint num="1" id="871" /> +<extraparam> +<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="874" > +<cdparam x="122" y="1236" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="873" /> +</COMPONENT> + +<COMPONENT type="1007" id="877" > +<cdparam x="189" y="1102" /> +<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send request" value="req_Timer()" /> +<TGConnectingPoint num="0" id="875" /> +<TGConnectingPoint num="1" id="876" /> +<extraparam> +<Data requestName="req_Timer" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="880" > +<cdparam x="199" y="1169" /> +<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="temp(1)" /> +<TGConnectingPoint num="0" id="878" /> +<TGConnectingPoint num="1" id="879" /> +<extraparam> +<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1007" id="883" > +<cdparam x="306" y="1106" /> +<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send request" value="req_Timer()" /> +<TGConnectingPoint num="0" id="881" /> +<TGConnectingPoint num="1" id="882" /> +<extraparam> +<Data requestName="req_Timer" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="886" > +<cdparam x="316" y="1173" /> +<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="temp(1)" /> +<TGConnectingPoint num="0" id="884" /> +<TGConnectingPoint num="1" id="885" /> +<extraparam> +<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1007" id="889" > +<cdparam x="398" y="1090" /> +<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send request" value="req_Timer()" /> +<TGConnectingPoint num="0" id="887" /> +<TGConnectingPoint num="1" id="888" /> +<extraparam> +<Data requestName="req_Timer" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="892" > +<cdparam x="408" y="1159" /> +<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="temp(1)" /> +<TGConnectingPoint num="0" id="890" /> +<TGConnectingPoint num="1" id="891" /> +<extraparam> +<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="895" > +<cdparam x="52" y="861" /> +<sizeparam width="160" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="seqNum=seqNum+wind" /> +<TGConnectingPoint num="0" id="893" /> +<TGConnectingPoint num="1" id="894" /> +</COMPONENT> + +<COMPONENT type="1011" id="898" > +<cdparam x="150" y="940" /> +<sizeparam width="160" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="seqNum=seqNum+wind" /> +<TGConnectingPoint num="0" id="896" /> +<TGConnectingPoint num="1" id="897" /> +</COMPONENT> + +<COMPONENT type="1011" id="901" > +<cdparam x="359" y="865" /> +<sizeparam width="160" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="seqNum=seqNum+wind" /> +<TGConnectingPoint num="0" id="899" /> +<TGConnectingPoint num="1" id="900" /> +</COMPONENT> + +<COMPONENT type="1011" id="904" > +<cdparam x="266" y="831" /> +<sizeparam width="160" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="seqNum=seqNum+wind" /> +<TGConnectingPoint num="0" id="902" /> +<TGConnectingPoint num="1" id="903" /> +</COMPONENT> + +<COMPONENT type="1008" id="907" > +<cdparam x="204" y="1052" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="905" /> +<TGConnectingPoint num="1" id="906" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="910" > +<cdparam x="321" y="962" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="908" /> +<TGConnectingPoint num="1" id="909" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="913" > +<cdparam x="413" y="983" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="911" /> +<TGConnectingPoint num="1" id="912" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="916" > +<cdparam x="107" y="986" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="914" /> +<TGConnectingPoint num="1" id="915" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="919" > +<cdparam x="697" y="813" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="917" /> +<TGConnectingPoint num="1" id="918" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="922" > +<cdparam x="773" y="1141" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="920" /> +<TGConnectingPoint num="1" id="921" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="925" > +<cdparam x="918" y="1178" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="923" /> +<TGConnectingPoint num="1" id="924" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="928" > +<cdparam x="1024" y="1211" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="926" /> +<TGConnectingPoint num="1" id="927" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="930" > +<cdparam x="612" y="762" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="929" /> +</COMPONENT> + +<COMPONENT type="1001" id="932" > +<cdparam x="899" y="922" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="931" /> +</COMPONENT> + +<COMPONENT type="1006" id="935" > +<cdparam x="1166" y="1214" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="933" /> +<TGConnectingPoint num="1" id="934" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="952" > +<cdparam x="1159" y="1153" /> +<sizeparam width="115" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="send Ack of Fin +" /> +<TGConnectingPoint num="0" id="936" /> +<TGConnectingPoint num="1" id="937" /> +<TGConnectingPoint num="2" id="938" /> +<TGConnectingPoint num="3" id="939" /> +<TGConnectingPoint num="4" id="940" /> +<TGConnectingPoint num="5" id="941" /> +<TGConnectingPoint num="6" id="942" /> +<TGConnectingPoint num="7" id="943" /> +<TGConnectingPoint num="8" id="944" /> +<TGConnectingPoint num="9" id="945" /> +<TGConnectingPoint num="10" id="946" /> +<TGConnectingPoint num="11" id="947" /> +<TGConnectingPoint num="12" id="948" /> +<TGConnectingPoint num="13" id="949" /> +<TGConnectingPoint num="14" id="950" /> +<TGConnectingPoint num="15" id="951" /> +<extraparam> +<Line value="send Ack of Fin" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="955" > +<cdparam x="1154" y="1295" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =8" /> +<TGConnectingPoint num="0" id="953" /> +<TGConnectingPoint num="1" id="954" /> +</COMPONENT> + +<COMPONENT type="1001" id="957" > +<cdparam x="1197" y="1471" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="956" /> +</COMPONENT> + +<COMPONENT type="1011" id="960" > +<cdparam x="1153" y="1402" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =0" /> +<TGConnectingPoint num="0" id="958" /> +<TGConnectingPoint num="1" id="959" /> +</COMPONENT> + +<COMPONENT type="1008" id="963" > +<cdparam x="1183" y="1351" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="961" /> +<TGConnectingPoint num="1" id="962" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="965" > +<cdparam x="1277" y="1070" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="964" /> +</COMPONENT> + +<COMPONENT type="1001" id="967" > +<cdparam x="1519" y="1457" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="966" /> +</COMPONENT> + +<COMPONENT type="1006" id="970" > +<cdparam x="1487" y="1132" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoA(1)" /> +<TGConnectingPoint num="0" id="968" /> +<TGConnectingPoint num="1" id="969" /> +<extraparam> +<Data channelName="fromTtoA" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="973" > +<cdparam x="1487" y="1348" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="971" /> +<TGConnectingPoint num="1" id="972" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="976" > +<cdparam x="1707" y="1026" /> +<sizeparam width="48" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="stop()" /> +<TGConnectingPoint num="0" id="974" /> +<TGConnectingPoint num="1" id="975" /> +<extraparam> +<Data eventName="stop" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="993" > +<cdparam x="1759" y="1192" /> +<sizeparam width="92" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="Correct ack +" /> +<TGConnectingPoint num="0" id="977" /> +<TGConnectingPoint num="1" id="978" /> +<TGConnectingPoint num="2" id="979" /> +<TGConnectingPoint num="3" id="980" /> +<TGConnectingPoint num="4" id="981" /> +<TGConnectingPoint num="5" id="982" /> +<TGConnectingPoint num="6" id="983" /> +<TGConnectingPoint num="7" id="984" /> +<TGConnectingPoint num="8" id="985" /> +<TGConnectingPoint num="9" id="986" /> +<TGConnectingPoint num="10" id="987" /> +<TGConnectingPoint num="11" id="988" /> +<TGConnectingPoint num="12" id="989" /> +<TGConnectingPoint num="13" id="990" /> +<TGConnectingPoint num="14" id="991" /> +<TGConnectingPoint num="15" id="992" /> +<extraparam> +<Line value="Correct ack" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="1010" > +<cdparam x="1635" y="1168" /> +<sizeparam width="76" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="false ack +" /> +<TGConnectingPoint num="0" id="994" /> +<TGConnectingPoint num="1" id="995" /> +<TGConnectingPoint num="2" id="996" /> +<TGConnectingPoint num="3" id="997" /> +<TGConnectingPoint num="4" id="998" /> +<TGConnectingPoint num="5" id="999" /> +<TGConnectingPoint num="6" id="1000" /> +<TGConnectingPoint num="7" id="1001" /> +<TGConnectingPoint num="8" id="1002" /> +<TGConnectingPoint num="9" id="1003" /> +<TGConnectingPoint num="10" id="1004" /> +<TGConnectingPoint num="11" id="1005" /> +<TGConnectingPoint num="12" id="1006" /> +<TGConnectingPoint num="13" id="1007" /> +<TGConnectingPoint num="14" id="1008" /> +<TGConnectingPoint num="15" id="1009" /> +<extraparam> +<Line value="false ack" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="1013" > +<cdparam x="1599" y="1299" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="1011" /> +<TGConnectingPoint num="1" id="1012" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1015" > +<cdparam x="1632" y="1468" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1014" /> +</COMPONENT> + +<COMPONENT type="301" id="1032" > +<cdparam x="1469" y="1295" /> +<sizeparam width="137" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="return acknowldge +" /> +<TGConnectingPoint num="0" id="1016" /> +<TGConnectingPoint num="1" id="1017" /> +<TGConnectingPoint num="2" id="1018" /> +<TGConnectingPoint num="3" id="1019" /> +<TGConnectingPoint num="4" id="1020" /> +<TGConnectingPoint num="5" id="1021" /> +<TGConnectingPoint num="6" id="1022" /> +<TGConnectingPoint num="7" id="1023" /> +<TGConnectingPoint num="8" id="1024" /> +<TGConnectingPoint num="9" id="1025" /> +<TGConnectingPoint num="10" id="1026" /> +<TGConnectingPoint num="11" id="1027" /> +<TGConnectingPoint num="12" id="1028" /> +<TGConnectingPoint num="13" id="1029" /> +<TGConnectingPoint num="14" id="1030" /> +<TGConnectingPoint num="15" id="1031" /> +<extraparam> +<Line value="return acknowldge" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="1049" > +<cdparam x="1620" y="927" /> +<sizeparam width="50" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="data +" /> +<TGConnectingPoint num="0" id="1033" /> +<TGConnectingPoint num="1" id="1034" /> +<TGConnectingPoint num="2" id="1035" /> +<TGConnectingPoint num="3" id="1036" /> +<TGConnectingPoint num="4" id="1037" /> +<TGConnectingPoint num="5" id="1038" /> +<TGConnectingPoint num="6" id="1039" /> +<TGConnectingPoint num="7" id="1040" /> +<TGConnectingPoint num="8" id="1041" /> +<TGConnectingPoint num="9" id="1042" /> +<TGConnectingPoint num="10" id="1043" /> +<TGConnectingPoint num="11" id="1044" /> +<TGConnectingPoint num="12" id="1045" /> +<TGConnectingPoint num="13" id="1046" /> +<TGConnectingPoint num="14" id="1047" /> +<TGConnectingPoint num="15" id="1048" /> +<extraparam> +<Line value="data" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="1052" > +<cdparam x="1504" y="1405" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="1050" /> +<TGConnectingPoint num="1" id="1051" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="1055" > +<cdparam x="1617" y="1348" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="1053" /> +<TGConnectingPoint num="1" id="1054" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="1058" > +<cdparam x="1612" y="1404" /> +<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="temp(1)" /> +<TGConnectingPoint num="0" id="1056" /> +<TGConnectingPoint num="1" id="1057" /> +<extraparam> +<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1060" > +<cdparam x="1730" y="1335" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1059" /> +</COMPONENT> + +<COMPONENT type="1011" id="1063" > +<cdparam x="1772" y="1349" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =4" /> +<TGConnectingPoint num="0" id="1061" /> +<TGConnectingPoint num="1" id="1062" /> +</COMPONENT> + +<COMPONENT type="1001" id="1065" > +<cdparam x="1818" y="1457" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1064" /> +</COMPONENT> + +<COMPONENT type="1011" id="1068" > +<cdparam x="1866" y="1411" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =6" /> +<TGConnectingPoint num="0" id="1066" /> +<TGConnectingPoint num="1" id="1067" /> +</COMPONENT> + +<COMPONENT type="1001" id="1070" > +<cdparam x="1910" y="1481" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1069" /> +</COMPONENT> + +<COMPONENT type="1001" id="1072" > +<cdparam x="1986" y="1543" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1071" /> +</COMPONENT> + +<COMPONENT type="1011" id="1075" > +<cdparam x="2047" y="1466" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =0" /> +<TGConnectingPoint num="0" id="1073" /> +<TGConnectingPoint num="1" id="1074" /> +</COMPONENT> + +<COMPONENT type="1001" id="1077" > +<cdparam x="2091" y="1537" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1076" /> +</COMPONENT> + +<COMPONENT type="1011" id="1080" > +<cdparam x="1942" y="1493" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =0" /> +<TGConnectingPoint num="0" id="1078" /> +<TGConnectingPoint num="1" id="1079" /> +</COMPONENT> + +<COMPONENT type="1011" id="1083" > +<cdparam x="1942" y="1434" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =8" /> +<TGConnectingPoint num="0" id="1081" /> +<TGConnectingPoint num="1" id="1082" /> +</COMPONENT> + +<COMPONENT type="301" id="1100" > +<cdparam x="1825" y="889" /> +<sizeparam width="50" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="Syn +" /> +<TGConnectingPoint num="0" id="1084" /> +<TGConnectingPoint num="1" id="1085" /> +<TGConnectingPoint num="2" id="1086" /> +<TGConnectingPoint num="3" id="1087" /> +<TGConnectingPoint num="4" id="1088" /> +<TGConnectingPoint num="5" id="1089" /> +<TGConnectingPoint num="6" id="1090" /> +<TGConnectingPoint num="7" id="1091" /> +<TGConnectingPoint num="8" id="1092" /> +<TGConnectingPoint num="9" id="1093" /> +<TGConnectingPoint num="10" id="1094" /> +<TGConnectingPoint num="11" id="1095" /> +<TGConnectingPoint num="12" id="1096" /> +<TGConnectingPoint num="13" id="1097" /> +<TGConnectingPoint num="14" id="1098" /> +<TGConnectingPoint num="15" id="1099" /> +<extraparam> +<Line value="Syn" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="1117" > +<cdparam x="1707" y="945" /> +<sizeparam width="50" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="ack +" /> +<TGConnectingPoint num="0" id="1101" /> +<TGConnectingPoint num="1" id="1102" /> +<TGConnectingPoint num="2" id="1103" /> +<TGConnectingPoint num="3" id="1104" /> +<TGConnectingPoint num="4" id="1105" /> +<TGConnectingPoint num="5" id="1106" /> +<TGConnectingPoint num="6" id="1107" /> +<TGConnectingPoint num="7" id="1108" /> +<TGConnectingPoint num="8" id="1109" /> +<TGConnectingPoint num="9" id="1110" /> +<TGConnectingPoint num="10" id="1111" /> +<TGConnectingPoint num="11" id="1112" /> +<TGConnectingPoint num="12" id="1113" /> +<TGConnectingPoint num="13" id="1114" /> +<TGConnectingPoint num="14" id="1115" /> +<TGConnectingPoint num="15" id="1116" /> +<extraparam> +<Line value="ack" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="1120" > +<cdparam x="2176" y="1198" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="1118" /> +<TGConnectingPoint num="1" id="1119" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1122" > +<cdparam x="2207" y="1483" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1121" /> +</COMPONENT> + +<COMPONENT type="1007" id="1125" > +<cdparam x="2177" y="1298" /> +<sizeparam width="81" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send request" value="req_Timer()" /> +<TGConnectingPoint num="0" id="1123" /> +<TGConnectingPoint num="1" id="1124" /> +<extraparam> +<Data requestName="req_Timer" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="1128" > +<cdparam x="2187" y="1365" /> +<sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="temp(1)" /> +<TGConnectingPoint num="0" id="1126" /> +<TGConnectingPoint num="1" id="1127" /> +<extraparam> +<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="1131" > +<cdparam x="2138" y="1136" /> +<sizeparam width="160" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="seqNum=seqNum+wind" /> +<TGConnectingPoint num="0" id="1129" /> +<TGConnectingPoint num="1" id="1130" /> +</COMPONENT> + +<COMPONENT type="1008" id="1134" > +<cdparam x="2192" y="1248" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="1132" /> +<TGConnectingPoint num="1" id="1133" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="1137" > +<cdparam x="2163" y="1424" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =2" /> +<TGConnectingPoint num="0" id="1135" /> +<TGConnectingPoint num="1" id="1136" /> +</COMPONENT> + +<COMPONENT type="1006" id="1140" > +<cdparam x="2299" y="1122" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="write channel" value="fromTtoP(1)" /> +<TGConnectingPoint num="0" id="1138" /> +<TGConnectingPoint num="1" id="1139" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="1157" > +<cdparam x="2283" y="1065" /> +<sizeparam width="121" height="15" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="UML Note" value="send Ack of SYN +" /> +<TGConnectingPoint num="0" id="1141" /> +<TGConnectingPoint num="1" id="1142" /> +<TGConnectingPoint num="2" id="1143" /> +<TGConnectingPoint num="3" id="1144" /> +<TGConnectingPoint num="4" id="1145" /> +<TGConnectingPoint num="5" id="1146" /> +<TGConnectingPoint num="6" id="1147" /> +<TGConnectingPoint num="7" id="1148" /> +<TGConnectingPoint num="8" id="1149" /> +<TGConnectingPoint num="9" id="1150" /> +<TGConnectingPoint num="10" id="1151" /> +<TGConnectingPoint num="11" id="1152" /> +<TGConnectingPoint num="12" id="1153" /> +<TGConnectingPoint num="13" id="1154" /> +<TGConnectingPoint num="14" id="1155" /> +<TGConnectingPoint num="15" id="1156" /> +<extraparam> +<Line value="send Ack of SYN" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="1160" > +<cdparam x="2287" y="1267" /> +<sizeparam width="109" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="action state" value="tcpctrl.state =2" /> +<TGConnectingPoint num="0" id="1158" /> +<TGConnectingPoint num="1" id="1159" /> +</COMPONENT> + +<COMPONENT type="1001" id="1162" > +<cdparam x="2330" y="1324" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1161" /> +</COMPONENT> + +<COMPONENT type="1008" id="1165" > +<cdparam x="2316" y="1199" /> +<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="send()" /> +<TGConnectingPoint num="0" id="1163" /> +<TGConnectingPoint num="1" id="1164" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1167" > +<cdparam x="1649" y="1057" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1166" /> +</COMPONENT> + +<COMPONENT type="1001" id="1169" > +<cdparam x="2168" y="1421" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1168" /> +</COMPONENT> + +<COMPONENT type="1001" id="1171" > +<cdparam x="2268" y="1039" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1170" /> +</COMPONENT> + +<COMPONENT type="1008" id="1174" > +<cdparam x="1459" y="1192" /> +<sizeparam width="140" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="send event" value="receive_Application()" /> +<TGConnectingPoint num="0" id="1172" /> +<TGConnectingPoint num="1" id="1173" /> +<extraparam> +<Data eventName="receive_Application" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1009" id="1177" > +<cdparam x="1699" y="1086" /> +<sizeparam width="64" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> +<infoparam name="read channel" value="temp(1) " /> +<TGConnectingPoint num="0" id="1175" /> +<TGConnectingPoint num="1" id="1176" /> +<extraparam> +<Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="115" id="1178" > +<cdparam x="1048" y="795" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to choice" value="null" /> +<P1 x="1048" y="795" id="568" /> +<P2 x="1728" y="865" id="490" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1179" > +<cdparam x="1048" y="795" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to choice" value="null" /> +<P1 x="1089" y="954" id="540" /> +<P2 x="1208" y="1010" id="510" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1180" > +<cdparam x="1008" y="610" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from read channel to execI" value="null" /> +<P1 x="1008" y="610" id="644" /> +<P2 x="1008" y="696" id="572" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1181" > +<cdparam x="722" y="614" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from read channel to execI" value="null" /> +<P1 x="722" y="614" id="659" /> +<P2 x="722" y="689" id="528" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1182" > +<cdparam x="504" y="597" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to choice" value="null" /> +<P1 x="504" y="597" id="608" /> +<P2 x="572" y="702" id="522" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1183" > +<cdparam x="464" y="637" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="464" y="637" id="609" /> +<P2 x="439" y="778" id="576" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1184" > +<cdparam x="424" y="597" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="424" y="597" id="607" /> +<P2 x="346" y="759" id="556" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1185" > +<cdparam x="289" y="619" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to read channel" value="null" /> +<P1 x="289" y="619" id="617" /> +<P2 x="230" y="803" id="713" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1186" > +<cdparam x="249" y="579" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="249" y="579" id="615" /> +<P2 x="132" y="789" id="560" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1187" > +<cdparam x="371" y="93" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from for loop to notified event" value="null" /> +<P1 x="325" y="99" id="647" /> +<P2 x="374" y="128" id="655" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1188" > +<cdparam x="234" y="169" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="234" y="169" id="653" /> +<P2 x="234" y="202" id="650" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1189" > +<cdparam x="234" y="104" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from for loop to action state" value="null" /> +<P1 x="235" y="110" id="648" /> +<P2 x="234" y="139" id="652" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1190" > +<cdparam x="234" y="47" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to for loop" value="null" /> +<P1 x="234" y="47" id="619" /> +<P2 x="235" y="80" id="646" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1191" > +<cdparam x="425" y="162" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from notified event to choice" value="null" /> +<P1 x="374" y="158" id="656" /> +<P2 x="374" y="182" id="598" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1192" > +<cdparam x="564" y="482" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to wait event" value="null" /> +<P1 x="464" y="322" id="682" /> +<P2 x="722" y="529" id="661" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1193" > +<cdparam x="722" y="559" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to read channel" value="null" /> +<P1 x="722" y="559" id="662" /> +<P2 x="722" y="584" id="658" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1194" > +<cdparam x="604" y="442" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to wait event" value="null" /> +<P1 x="504" y="282" id="678" /> +<P2 x="1008" y="523" id="664" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1195" > +<cdparam x="1007" y="553" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to read channel" value="null" /> +<P1 x="1008" y="553" id="665" /> +<P2 x="1008" y="580" id="643" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1196" > +<cdparam x="524" y="442" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to wait event" value="null" /> +<P1 x="464" y="322" id="679" /> +<P2 x="464" y="487" id="667" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1197" > +<cdparam x="330" y="428" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to wait event" value="null" /> +<P1 x="424" y="282" id="680" /> +<P2 x="289" y="463" id="670" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1198" > +<cdparam x="318" y="520" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to choice" value="null" /> +<P1 x="289" y="493" id="671" /> +<P2 x="289" y="554" id="614" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1199" > +<cdparam x="160" y="481" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to action state" value="null" /> +<P1 x="148" y="501" id="591" /> +<P2 x="126" y="544" id="638" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1200" > +<cdparam x="290" y="388" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to wait event" value="null" /> +<P1 x="424" y="282" id="677" /> +<P2 x="188" y="414" id="673" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1201" > +<cdparam x="229" y="467" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to choice" value="null" /> +<P1 x="188" y="444" id="674" /> +<P2 x="188" y="476" id="590" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1202" > +<cdparam x="228" y="501" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to stop state" value="null" /> +<P1 x="228" y="501" id="592" /> +<P2 x="236" y="524" id="687" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1203" > +<cdparam x="334" y="207" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to wait event" value="null" /> +<P1 x="334" y="207" id="599" /> +<P2 x="301" y="223" id="691" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1204" > +<cdparam x="301" y="253" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to stop state" value="null" /> +<P1 x="301" y="253" id="692" /> +<P2 x="301" y="285" id="694" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1205" > +<cdparam x="464" y="517" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to choice" value="null" /> +<P1 x="464" y="517" id="668" /> +<P2 x="464" y="572" id="606" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1206" > +<cdparam x="329" y="579" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to stop state" value="null" /> +<P1 x="329" y="579" id="616" /> +<P2 x="353" y="609" id="689" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1207" > +<cdparam x="126" y="574" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="126" y="574" id="639" /> +<P2 x="126" y="610" id="641" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1208" > +<cdparam x="414" y="207" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to select" value="null" /> +<P1 x="414" y="207" id="600" /> +<P2 x="464" y="257" id="676" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1209" > +<cdparam x="230" y="833" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from read channel to execI" value="null" /> +<P1 x="230" y="833" id="714" /> +<P2 x="230" y="858" id="580" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1210" > +<cdparam x="716" y="749" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to choice" value="null" /> +<P1 x="968" y="795" id="567" /> +<P2 x="843" y="859" id="550" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1211" > +<cdparam x="720" y="1074" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="728" y="990" id="763" /> +<P2 x="728" y="1027" id="765" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1212" > +<cdparam x="733" y="899" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to action state" value="null" /> +<P1 x="803" y="884" id="551" /> +<P2 x="728" y="960" id="762" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1213" > +<cdparam x="800" y="938" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="843" y="924" id="553" /> +<P2 x="800" y="1004" id="544" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1214" > +<cdparam x="800" y="1057" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to write channel" value="null" /> +<P1 x="800" y="1044" id="545" /> +<P2 x="800" y="1081" id="767" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1215" > +<cdparam x="132" y="886" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to write channel" value="null" /> +<P1 x="132" y="886" id="894" /> +<P2 x="132" y="933" id="729" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1216" > +<cdparam x="943" y="1061" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to write channel" value="null" /> +<P1 x="943" y="1060" id="533" /> +<P2 x="943" y="1118" id="812" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1217" > +<cdparam x="1049" y="1093" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to write channel" value="null" /> +<P1 x="1049" y="1092" id="585" /> +<P2 x="1049" y="1150" id="837" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1218" > +<cdparam x="1049" y="994" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="1049" y="994" id="541" /> +<P2 x="1049" y="1052" id="584" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1219" > +<cdparam x="696" y="742" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to write channel" value="null" /> +<P1 x="722" y="729" id="529" /> +<P2 x="722" y="753" id="862" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1220" > +<cdparam x="132" y="1125" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send request to write channel" value="null" /> +<P1 x="132" y="1125" id="868" /> +<P2 x="132" y="1162" id="870" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1221" > +<cdparam x="132" y="1192" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to stop state" value="null" /> +<P1 x="132" y="1192" id="871" /> +<P2 x="132" y="1231" id="873" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1222" > +<cdparam x="132" y="1066" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to send request" value="null" /> +<P1 x="132" y="1066" id="727" /> +<P2 x="132" y="1095" id="867" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1223" > +<cdparam x="229" y="1127" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send request to write channel" value="null" /> +<P1 x="229" y="1127" id="876" /> +<P2 x="229" y="1164" id="878" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1224" > +<cdparam x="346" y="1131" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send request to write channel" value="null" /> +<P1 x="346" y="1131" id="882" /> +<P2 x="346" y="1168" id="884" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1225" > +<cdparam x="346" y="1051" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to send request" value="null" /> +<P1 x="346" y="1051" id="733" /> +<P2 x="346" y="1101" id="881" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1226" > +<cdparam x="437" y="1118" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send request to write channel" value="null" /> +<P1 x="438" y="1115" id="888" /> +<P2 x="438" y="1154" id="890" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1227" > +<cdparam x="438" y="1057" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to send request" value="null" /> +<P1 x="438" y="1057" id="722" /> +<P2 x="438" y="1085" id="887" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1228" > +<cdparam x="132" y="808" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to action state" value="null" /> +<P1 x="132" y="829" id="561" /> +<P2 x="132" y="856" id="893" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1229" > +<cdparam x="230" y="898" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to action state" value="null" /> +<P1 x="230" y="898" id="581" /> +<P2 x="230" y="935" id="896" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1230" > +<cdparam x="230" y="965" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to write channel" value="null" /> +<P1 x="230" y="965" id="897" /> +<P2 x="230" y="997" id="716" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1231" > +<cdparam x="346" y="799" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to action state" value="null" /> +<P1 x="346" y="799" id="557" /> +<P2 x="346" y="826" id="902" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1232" > +<cdparam x="346" y="856" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to write channel" value="null" /> +<P1 x="346" y="856" id="903" /> +<P2 x="346" y="895" id="740" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1233" > +<cdparam x="439" y="818" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to action state" value="null" /> +<P1 x="439" y="818" id="577" /> +<P2 x="439" y="860" id="899" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1234" > +<cdparam x="439" y="890" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to write channel" value="null" /> +<P1 x="439" y="890" id="900" /> +<P2 x="439" y="936" id="737" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1235" > +<cdparam x="132" y="963" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="132" y="963" id="730" /> +<P2 x="132" y="981" id="914" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1236" > +<cdparam x="132" y="1011" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to action state" value="null" /> +<P1 x="132" y="1011" id="915" /> +<P2 x="132" y="1036" id="726" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1237" > +<cdparam x="230" y="1027" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="230" y="1027" id="717" /> +<P2 x="229" y="1047" id="905" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1238" > +<cdparam x="228" y="1088" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to send request" value="null" /> +<P1 x="229" y="1077" id="906" /> +<P2 x="229" y="1097" id="875" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1239" > +<cdparam x="346" y="925" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="346" y="925" id="741" /> +<P2 x="346" y="957" id="908" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1240" > +<cdparam x="348" y="987" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to action state" value="null" /> +<P1 x="346" y="987" id="909" /> +<P2 x="346" y="1021" id="732" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1241" > +<cdparam x="439" y="966" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="439" y="966" id="738" /> +<P2 x="438" y="978" id="911" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1242" > +<cdparam x="438" y="1008" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to action state" value="null" /> +<P1 x="438" y="1008" id="912" /> +<P2 x="438" y="1027" id="721" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1243" > +<cdparam x="722" y="783" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="722" y="783" id="863" /> +<P2 x="722" y="808" id="917" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1244" > +<cdparam x="722" y="838" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to stop state" value="null" /> +<P1 x="722" y="838" id="918" /> +<P2 x="722" y="860" id="865" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1245" > +<cdparam x="800" y="1111" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="800" y="1111" id="768" /> +<P2 x="798" y="1136" id="920" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1246" > +<cdparam x="798" y="1166" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to action state" value="null" /> +<P1 x="798" y="1166" id="921" /> +<P2 x="799" y="1188" id="804" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1247" > +<cdparam x="943" y="1148" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="943" y="1148" id="813" /> +<P2 x="943" y="1173" id="923" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1248" > +<cdparam x="950" y="1201" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to action state" value="null" /> +<P1 x="943" y="1203" id="924" /> +<P2 x="943" y="1229" id="832" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1249" > +<cdparam x="1049" y="1180" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="1049" y="1180" id="838" /> +<P2 x="1049" y="1206" id="926" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1250" > +<cdparam x="1049" y="1223" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to action state" value="null" /> +<P1 x="1049" y="1236" id="927" /> +<P2 x="1049" y="1261" id="857" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1251" > +<cdparam x="883" y="884" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to stop state" value="null" /> +<P1 x="883" y="884" id="552" /> +<P2 x="909" y="917" id="931" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1252" > +<cdparam x="612" y="727" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to stop state" value="null" /> +<P1 x="612" y="727" id="524" /> +<P2 x="622" y="757" id="929" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1253" > +<cdparam x="532" y="727" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to action state" value="null" /> +<P1 x="532" y="727" id="523" /> +<P2 x="496" y="763" id="807" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1254" > +<cdparam x="799" y="1218" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="799" y="1218" id="805" /> +<P2 x="799" y="1265" id="743" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1255" > +<cdparam x="1009" y="954" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="1009" y="954" id="539" /> +<P2 x="943" y="1020" id="532" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1256" > +<cdparam x="229" y="1194" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to stop state" value="null" /> +<P1 x="229" y="1194" id="879" /> +<P2 x="229" y="1232" id="719" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1257" > +<cdparam x="346" y="1198" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to stop state" value="null" /> +<P1 x="346" y="1198" id="885" /> +<P2 x="344" y="1224" id="735" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1258" > +<cdparam x="438" y="1184" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to stop state" value="null" /> +<P1 x="438" y="1184" id="891" /> +<P2 x="438" y="1208" id="724" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1259" > +<cdparam x="496" y="793" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="496" y="793" id="808" /> +<P2 x="496" y="825" id="810" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1260" > +<cdparam x="943" y="1259" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="943" y="1259" id="833" /> +<P2 x="943" y="1306" id="835" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1261" > +<cdparam x="1008" y="736" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to choice" value="null" /> +<P1 x="1008" y="736" id="573" /> +<P2 x="1008" y="770" id="566" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1262" > +<cdparam x="1008" y="835" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to choice" value="null" /> +<P1 x="1008" y="835" id="569" /> +<P2 x="1049" y="929" id="538" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1263" > +<cdparam x="1049" y="1291" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="1049" y="1291" id="858" /> +<P2 x="1049" y="1336" id="860" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1264" > +<cdparam x="1208" y="1152" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to write channel" value="null" /> +<P1 x="1208" y="1142" id="517" /> +<P2 x="1208" y="1209" id="933" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1265" > +<cdparam x="1208" y="1239" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to action state" value="null" /> +<P1 x="1208" y="1239" id="934" /> +<P2 x="1208" y="1290" id="953" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1266" > +<cdparam x="1208" y="1320" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to send event" value="null" /> +<P1 x="1208" y="1320" id="954" /> +<P2 x="1208" y="1346" id="961" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1267" > +<cdparam x="1206" y="1385" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to action state" value="null" /> +<P1 x="1208" y="1376" id="962" /> +<P2 x="1207" y="1397" id="958" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1268" > +<cdparam x="1206" y="1088" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="1208" y="1075" id="513" /> +<P2 x="1208" y="1102" id="516" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1269" > +<cdparam x="1248" y="1035" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to stop state" value="null" /> +<P1 x="1248" y="1035" id="512" /> +<P2 x="1287" y="1065" id="964" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1270" > +<cdparam x="1207" y="1427" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="1207" y="1427" id="959" /> +<P2 x="1207" y="1466" id="956" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1271" > +<cdparam x="1553" y="1019" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="1567" y="1021" id="483" /> +<P2 x="1529" y="1059" id="476" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1272" > +<cdparam x="1529" y="1324" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to write channel" value="null" /> +<P1 x="1529" y="1289" id="473" /> +<P2 x="1529" y="1343" id="971" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1273" > +<cdparam x="1684" y="929" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to send event" value="null" /> +<P1 x="1728" y="930" id="493" /> +<P2 x="1731" y="1021" id="974" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1274" > +<cdparam x="1615" y="1283" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to write channel" value="null" /> +<P1 x="1641" y="1270" id="497" /> +<P2 x="1641" y="1294" id="1011" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1275" > +<cdparam x="1641" y="1324" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="1641" y="1324" id="1012" /> +<P2 x="1642" y="1343" id="1053" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1276" > +<cdparam x="1529" y="1373" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="1529" y="1373" id="972" /> +<P2 x="1529" y="1400" id="1050" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1277" > +<cdparam x="1529" y="1422" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to stop state" value="null" /> +<P1 x="1529" y="1430" id="1051" /> +<P2 x="1529" y="1452" id="966" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1278" > +<cdparam x="1642" y="1373" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to write channel" value="null" /> +<P1 x="1642" y="1373" id="1054" /> +<P2 x="1642" y="1399" id="1056" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1279" > +<cdparam x="1956" y="1361" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to action state" value="null" /> +<P1 x="1956" y="1361" id="451" /> +<P2 x="1920" y="1406" id="1066" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1280" > +<cdparam x="2100" y="1490" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="2101" y="1491" id="1074" /> +<P2 x="2101" y="1532" id="1076" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1281" > +<cdparam x="1996" y="1401" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to action state" value="null" /> +<P1 x="1996" y="1401" id="453" /> +<P2 x="1996" y="1429" id="1081" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1282" > +<cdparam x="1996" y="1459" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to action state" value="null" /> +<P1 x="1996" y="1459" id="1082" /> +<P2 x="1996" y="1488" id="1078" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1283" > +<cdparam x="2021" y="1038" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="2237" y="966" id="443" /> +<P2 x="2218" y="1054" id="500" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1284" > +<cdparam x="2217" y="1323" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send request to write channel" value="null" /> +<P1 x="2217" y="1323" id="1124" /> +<P2 x="2217" y="1360" id="1126" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1285" > +<cdparam x="2218" y="1094" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to action state" value="null" /> +<P1 x="2218" y="1094" id="501" /> +<P2 x="2218" y="1131" id="1129" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1286" > +<cdparam x="2218" y="1161" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to write channel" value="null" /> +<P1 x="2218" y="1161" id="1130" /> +<P2 x="2218" y="1193" id="1118" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1287" > +<cdparam x="2218" y="1223" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="2218" y="1223" id="1119" /> +<P2 x="2217" y="1243" id="1132" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1288" > +<cdparam x="2216" y="1284" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to send request" value="null" /> +<P1 x="2217" y="1273" id="1133" /> +<P2 x="2217" y="1293" id="1123" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1289" > +<cdparam x="2217" y="1390" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to action state" value="null" /> +<P1 x="2217" y="1390" id="1127" /> +<P2 x="2217" y="1419" id="1135" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1290" > +<cdparam x="2341" y="1060" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to write channel" value="null" /> +<P1 x="2341" y="1059" id="505" /> +<P2 x="2341" y="1117" id="1138" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1291" > +<cdparam x="1529" y="1099" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from execI to write channel" value="null" /> +<P1 x="1529" y="1099" id="477" /> +<P2 x="1529" y="1127" id="968" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1292" > +<cdparam x="2101" y="1433" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to action state" value="null" /> +<P1 x="2101" y="1433" id="437" /> +<P2 x="2101" y="1461" id="1073" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1293" > +<cdparam x="2158" y="1460" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to stop state" value="null" /> +<P1 x="2141" y="1393" id="436" /> +<P2 x="2178" y="1416" id="1168" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1294" > +<cdparam x="1688" y="890" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to choice" value="null" /> +<P1 x="1688" y="890" id="491" /> +<P2 x="1607" y="996" id="482" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1295" > +<cdparam x="1768" y="890" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to choice" value="null" /> +<P1 x="1768" y="890" id="492" /> +<P2 x="2277" y="941" id="442" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1296" > +<cdparam x="2317" y="966" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="2317" y="966" id="444" /> +<P2 x="2341" y="1019" id="504" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1297" > +<cdparam x="2341" y="1147" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="2341" y="1147" id="1139" /> +<P2 x="2341" y="1194" id="1163" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1298" > +<cdparam x="2341" y="1224" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to send event" value="null" /> +<P1 x="2341" y="1224" id="1164" /> +<P2 x="2341" y="1262" id="1158" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1299" > +<cdparam x="1731" y="1051" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to choice" value="null" /> +<P1 x="1731" y="1051" id="975" /> +<P2 x="1731" y="1081" id="1175" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1300" > +<cdparam x="1647" y="1021" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to stop state" value="null" /> +<P1 x="1647" y="1021" id="484" /> +<P2 x="1659" y="1052" id="1166" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1301" > +<cdparam x="1826" y="1324" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to action state" value="null" /> +<P1 x="1826" y="1324" id="461" /> +<P2 x="1826" y="1344" id="1061" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1302" > +<cdparam x="1826" y="1374" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="1826" y="1374" id="1062" /> +<P2 x="1828" y="1452" id="1064" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1303" > +<cdparam x="1786" y="1284" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to stop state" value="null" /> +<P1 x="1786" y="1284" id="459" /> +<P2 x="1740" y="1330" id="1059" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1304" > +<cdparam x="1920" y="1436" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="1920" y="1436" id="1067" /> +<P2 x="1920" y="1476" id="1069" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1305" > +<cdparam x="1996" y="1518" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="1996" y="1518" id="1079" /> +<P2 x="1996" y="1538" id="1071" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1306" > +<cdparam x="2036" y="1361" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to choice" value="null" /> +<P1 x="2036" y="1361" id="452" /> +<P2 x="2101" y="1368" id="434" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1307" > +<cdparam x="1866" y="1284" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to choice" value="null" /> +<P1 x="1866" y="1284" id="460" /> +<P2 x="1996" y="1336" id="450" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1308" > +<cdparam x="2341" y="1292" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="2341" y="1292" id="1159" /> +<P2 x="2340" y="1319" id="1161" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1309" > +<cdparam x="2217" y="1449" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from action state to stop state" value="null" /> +<P1 x="2217" y="1449" id="1136" /> +<P2 x="2217" y="1478" id="1121" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1310" > +<cdparam x="2277" y="1006" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to stop state" value="null" /> +<P1 x="2277" y="1006" id="445" /> +<P2 x="2278" y="1034" id="1170" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1311" > +<cdparam x="1642" y="1429" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to stop state" value="null" /> +<P1 x="1642" y="1429" id="1057" /> +<P2 x="1642" y="1463" id="1014" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1312" > +<cdparam x="1529" y="1157" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="1529" y="1157" id="969" /> +<P2 x="1529" y="1187" id="1172" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1313" > +<cdparam x="1529" y="1217" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to execI" value="null" /> +<P1 x="1529" y="1217" id="1173" /> +<P2 x="1529" y="1249" id="472" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1314" > +<cdparam x="1691" y="1156" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to execI" value="null" /> +<P1 x="1691" y="1156" id="467" /> +<P2 x="1641" y="1230" id="496" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1315" > +<cdparam x="1771" y="1156" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to choice" value="null" /> +<P1 x="1771" y="1156" id="468" /> +<P2 x="1826" y="1259" id="458" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1316" > +<cdparam x="1731" y="1111" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from read channel to choice" value="null" /> +<P1 x="1731" y="1111" id="1176" /> +<P2 x="1731" y="1131" id="466" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="Timer" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1012" id="1324" > +<cdparam x="509" y="222" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="1320" /> +<TGConnectingPoint num="1" id="1321" /> +<TGConnectingPoint num="2" id="1322" /> +<TGConnectingPoint num="3" id="1323" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="1317" > +<father id="1324" num="0" /> +<cdparam x="464" y="232" /> +<sizeparam width="52" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ x==0 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1318" > +<father id="1324" num="1" /> +<cdparam x="544" y="234" /> +<sizeparam width="42" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ x>0 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1319" > +<father id="1324" num="2" /> +<cdparam x="529" y="267" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1000" id="1326" > +<cdparam x="517" y="87" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1325" /> +</COMPONENT> + +<COMPONENT type="1001" id="1328" > +<cdparam x="417" y="367" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1327" /> +</COMPONENT> + +<COMPONENT type="1008" id="1331" > +<cdparam x="393" y="299" /> +<sizeparam width="69" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="timeOut()" /> +<TGConnectingPoint num="0" id="1329" /> +<TGConnectingPoint num="1" id="1330" /> +<extraparam> +<Data eventName="timeOut" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="1334" > +<cdparam x="596" y="300" /> +<sizeparam width="52" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="stop() " /> +<TGConnectingPoint num="0" id="1332" /> +<TGConnectingPoint num="1" id="1333" /> +<extraparam> +<Data eventName="stop" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1336" > +<cdparam x="612" y="365" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1335" /> +</COMPONENT> + +<COMPONENT type="1017" id="1339" > +<cdparam x="487" y="150" /> +<sizeparam width="75" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="notified event" value="x=?stop()" /> +<TGConnectingPoint num="0" id="1337" /> +<TGConnectingPoint num="1" id="1338" /> +<extraparam> +<Data eventName="stop" variable="x" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="115" id="1340" > +<cdparam x="427" y="324" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to stop state" value="null" /> +<P1 x="427" y="324" id="1330" /> +<P2 x="427" y="362" id="1327" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1341" > +<cdparam x="622" y="325" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from wait event to stop state" value="null" /> +<P1 x="622" y="325" id="1333" /> +<P2 x="622" y="360" id="1335" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1342" > +<cdparam x="524" y="107" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to notified event" value="null" /> +<P1 x="524" y="107" id="1325" /> +<P2 x="524" y="145" id="1337" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1343" > +<cdparam x="524" y="175" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from notified event to choice" value="null" /> +<P1 x="524" y="175" id="1338" /> +<P2 x="524" y="212" id="1320" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1344" > +<cdparam x="484" y="237" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to send event" value="null" /> +<P1 x="484" y="237" id="1321" /> +<P2 x="427" y="294" id="1329" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1345" > +<cdparam x="564" y="237" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to wait event" value="null" /> +<P1 x="564" y="237" id="1322" /> +<P2 x="622" y="295" id="1332" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="Application" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1012" id="1353" > +<cdparam x="491" y="277" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="1349" /> +<TGConnectingPoint num="1" id="1350" /> +<TGConnectingPoint num="2" id="1351" /> +<TGConnectingPoint num="3" id="1352" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="1346" > +<father id="1353" num="0" /> +<cdparam x="466" y="287" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1347" > +<father id="1353" num="1" /> +<cdparam x="526" y="287" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="1348" > +<father id="1353" num="2" /> +<cdparam x="511" y="322" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1000" id="1355" > +<cdparam x="501" y="91" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1354" /> +</COMPONENT> + +<COMPONENT type="1008" id="1358" > +<cdparam x="482" y="129" /> +<sizeparam width="52" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="open()" /> +<TGConnectingPoint num="0" id="1356" /> +<TGConnectingPoint num="1" id="1357" /> +<extraparam> +<Data eventName="open" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1006" id="1361" > +<cdparam x="466" y="178" /> +<sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="write channel" value="fromAtoT(1)" /> +<TGConnectingPoint num="0" id="1359" /> +<TGConnectingPoint num="1" id="1360" /> +<extraparam> +<Data channelName="fromAtoT" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="1364" > +<cdparam x="467" y="226" /> +<sizeparam width="80" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="send_TCP()" /> +<TGConnectingPoint num="0" id="1362" /> +<TGConnectingPoint num="1" id="1363" /> +<extraparam> +<Data eventName="send_TCP" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1366" > +<cdparam x="576" y="388" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1365" /> +</COMPONENT> + +<COMPONENT type="1008" id="1369" > +<cdparam x="559" y="329" /> +<sizeparam width="54" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="abort()" /> +<TGConnectingPoint num="0" id="1367" /> +<TGConnectingPoint num="1" id="1368" /> +<extraparam> +<Data eventName="abort" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="1372" > +<cdparam x="406" y="337" /> +<sizeparam width="53" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<enabled value="true" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="close()" /> +<TGConnectingPoint num="0" id="1370" /> +<TGConnectingPoint num="1" id="1371" /> +<extraparam> +<Data eventName="close" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1374" > +<cdparam x="422" y="386" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1373" /> +</COMPONENT> + +<CONNECTOR type="115" id="1375" > +<cdparam x="509" y="94" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from start state to send event" value="null" /> +<P1 x="508" y="111" id="1354" /> +<P2 x="508" y="124" id="1356" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1376" > +<cdparam x="508" y="154" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to write channel" value="null" /> +<P1 x="508" y="154" id="1357" /> +<P2 x="508" y="173" id="1359" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1377" > +<cdparam x="508" y="222" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from write channel to send event" value="null" /> +<P1 x="508" y="203" id="1360" /> +<P2 x="507" y="221" id="1362" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1378" > +<cdparam x="586" y="354" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to stop state" value="null" /> +<P1 x="586" y="354" id="1368" /> +<P2 x="586" y="383" id="1365" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1379" > +<cdparam x="508" y="298" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to choice" value="null" /> +<P1 x="507" y="251" id="1363" /> +<P2 x="506" y="267" id="1349" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1380" > +<cdparam x="470" y="348" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to send event" value="null" /> +<P1 x="466" y="292" id="1350" /> +<P2 x="432" y="332" id="1370" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1381" > +<cdparam x="432" y="362" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from send event to stop state" value="null" /> +<P1 x="432" y="362" id="1371" /> +<P2 x="432" y="381" id="1373" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1382" > +<cdparam x="550" y="348" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="600" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from choice to send event" value="null" /> +<P1 x="546" y="292" id="1351" /> +<P2 x="586" y="324" id="1367" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +</Modeling> + + + + +<Modeling type="TML Architecture" nameTab="Mapping1" > +<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1400" minY="10" maxY="900" attributes="0" masterClockFrequency="200" > +<COMPONENT type="1100" id="1452" > +<cdparam x="51" y="90" /> +<sizeparam width="459" height="321" minWidth="150" minHeight="150" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="cpu0" value="name" /> +<TGConnectingPoint num="0" id="1428" /> +<TGConnectingPoint num="1" id="1429" /> +<TGConnectingPoint num="2" id="1430" /> +<TGConnectingPoint num="3" id="1431" /> +<TGConnectingPoint num="4" id="1432" /> +<TGConnectingPoint num="5" id="1433" /> +<TGConnectingPoint num="6" id="1434" /> +<TGConnectingPoint num="7" id="1435" /> +<TGConnectingPoint num="8" id="1436" /> +<TGConnectingPoint num="9" id="1437" /> +<TGConnectingPoint num="10" id="1438" /> +<TGConnectingPoint num="11" id="1439" /> +<TGConnectingPoint num="12" id="1440" /> +<TGConnectingPoint num="13" id="1441" /> +<TGConnectingPoint num="14" id="1442" /> +<TGConnectingPoint num="15" id="1443" /> +<TGConnectingPoint num="16" id="1444" /> +<TGConnectingPoint num="17" id="1445" /> +<TGConnectingPoint num="18" id="1446" /> +<TGConnectingPoint num="19" id="1447" /> +<TGConnectingPoint num="20" id="1448" /> +<TGConnectingPoint num="21" id="1449" /> +<TGConnectingPoint num="22" id="1450" /> +<TGConnectingPoint num="23" id="1451" /> +<extraparam> +<info stereotype="CPURRPB" nodeName="cpu0" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="1" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="99" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="1391" > +<father id="1452" num="0" /> +<cdparam x="226" y="304" /> +<sizeparam width="109" height="50" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="350" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::Timer" /> +<TGConnectingPoint num="0" id="1383" /> +<TGConnectingPoint num="1" id="1384" /> +<TGConnectingPoint num="2" id="1385" /> +<TGConnectingPoint num="3" id="1386" /> +<TGConnectingPoint num="4" id="1387" /> +<TGConnectingPoint num="5" id="1388" /> +<TGConnectingPoint num="6" id="1389" /> +<TGConnectingPoint num="7" id="1390" /> +<extraparam> +<info value="AppC::Timer" taskName="Timer" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="1400" > +<father id="1452" num="1" /> +<cdparam x="290" y="234" /> +<sizeparam width="144" height="50" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="315" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::Application" /> +<TGConnectingPoint num="0" id="1392" /> +<TGConnectingPoint num="1" id="1393" /> +<TGConnectingPoint num="2" id="1394" /> +<TGConnectingPoint num="3" id="1395" /> +<TGConnectingPoint num="4" id="1396" /> +<TGConnectingPoint num="5" id="1397" /> +<TGConnectingPoint num="6" id="1398" /> +<TGConnectingPoint num="7" id="1399" /> +<extraparam> +<info value="AppC::Application" taskName="Application" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="1409" > +<father id="1452" num="2" /> +<cdparam x="96" y="246" /> +<sizeparam width="109" height="50" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="350" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::TCPIP" /> +<TGConnectingPoint num="0" id="1401" /> +<TGConnectingPoint num="1" id="1402" /> +<TGConnectingPoint num="2" id="1403" /> +<TGConnectingPoint num="3" id="1404" /> +<TGConnectingPoint num="4" id="1405" /> +<TGConnectingPoint num="5" id="1406" /> +<TGConnectingPoint num="6" id="1407" /> +<TGConnectingPoint num="7" id="1408" /> +<extraparam> +<info value="AppC::TCPIP" taskName="TCPIP" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="1418" > +<father id="1452" num="3" /> +<cdparam x="291" y="153" /> +<sizeparam width="141" height="50" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="318" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::SmartCard" /> +<TGConnectingPoint num="0" id="1410" /> +<TGConnectingPoint num="1" id="1411" /> +<TGConnectingPoint num="2" id="1412" /> +<TGConnectingPoint num="3" id="1413" /> +<TGConnectingPoint num="4" id="1414" /> +<TGConnectingPoint num="5" id="1415" /> +<TGConnectingPoint num="6" id="1416" /> +<TGConnectingPoint num="7" id="1417" /> +<extraparam> +<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="1427" > +<father id="1452" num="4" /> +<cdparam x="92" y="154" /> +<sizeparam width="172" height="50" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="287" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::InterfaceDevice" /> +<TGConnectingPoint num="0" id="1419" /> +<TGConnectingPoint num="1" id="1420" /> +<TGConnectingPoint num="2" id="1421" /> +<TGConnectingPoint num="3" id="1422" /> +<TGConnectingPoint num="4" id="1423" /> +<TGConnectingPoint num="5" id="1424" /> +<TGConnectingPoint num="6" id="1425" /> +<TGConnectingPoint num="7" id="1426" /> +<extraparam> +<info value="AppC::InterfaceDevice" taskName="InterfaceDevice" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> + + +</TMLArchiDiagramPanel> + +</Modeling> + + + + +<Modeling type="TML Architecture" nameTab="Mapping2" > +<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1400" minY="10" maxY="900" attributes="0" masterClockFrequency="200" > +<COMPONENT type="1105" id="1477" > +<cdparam x="420" y="527" /> +<sizeparam width="189" height="131" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Memory0" value="name" /> +<TGConnectingPoint num="0" id="1453" /> +<TGConnectingPoint num="1" id="1454" /> +<TGConnectingPoint num="2" id="1455" /> +<TGConnectingPoint num="3" id="1456" /> +<TGConnectingPoint num="4" id="1457" /> +<TGConnectingPoint num="5" id="1458" /> +<TGConnectingPoint num="6" id="1459" /> +<TGConnectingPoint num="7" id="1460" /> +<TGConnectingPoint num="8" id="1461" /> +<TGConnectingPoint num="9" id="1462" /> +<TGConnectingPoint num="10" id="1463" /> +<TGConnectingPoint num="11" id="1464" /> +<TGConnectingPoint num="12" id="1465" /> +<TGConnectingPoint num="13" id="1466" /> +<TGConnectingPoint num="14" id="1467" /> +<TGConnectingPoint num="15" id="1468" /> +<TGConnectingPoint num="16" id="1469" /> +<TGConnectingPoint num="17" id="1470" /> +<TGConnectingPoint num="18" id="1471" /> +<TGConnectingPoint num="19" id="1472" /> +<TGConnectingPoint num="20" id="1473" /> +<TGConnectingPoint num="21" id="1474" /> +<TGConnectingPoint num="22" id="1475" /> +<TGConnectingPoint num="23" id="1476" /> +<extraparam> +<info stereotype="MEMORY" nodeName="Memory0" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="0" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="1502" > +<cdparam x="389" y="438" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Bus0" value="name" /> +<TGConnectingPoint num="0" id="1478" /> +<TGConnectingPoint num="1" id="1479" /> +<TGConnectingPoint num="2" id="1480" /> +<TGConnectingPoint num="3" id="1481" /> +<TGConnectingPoint num="4" id="1482" /> +<TGConnectingPoint num="5" id="1483" /> +<TGConnectingPoint num="6" id="1484" /> +<TGConnectingPoint num="7" id="1485" /> +<TGConnectingPoint num="8" id="1486" /> +<TGConnectingPoint num="9" id="1487" /> +<TGConnectingPoint num="10" id="1488" /> +<TGConnectingPoint num="11" id="1489" /> +<TGConnectingPoint num="12" id="1490" /> +<TGConnectingPoint num="13" id="1491" /> +<TGConnectingPoint num="14" id="1492" /> +<TGConnectingPoint num="15" id="1493" /> +<TGConnectingPoint num="16" id="1494" /> +<TGConnectingPoint num="17" id="1495" /> +<TGConnectingPoint num="18" id="1496" /> +<TGConnectingPoint num="19" id="1497" /> +<TGConnectingPoint num="20" id="1498" /> +<TGConnectingPoint num="21" id="1499" /> +<TGConnectingPoint num="22" id="1500" /> +<TGConnectingPoint num="23" id="1501" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="Bus0" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="5" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="1536" > +<cdparam x="685" y="396" /> +<sizeparam width="174" height="135" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CPU2" value="name" /> +<TGConnectingPoint num="0" id="1512" /> +<TGConnectingPoint num="1" id="1513" /> +<TGConnectingPoint num="2" id="1514" /> +<TGConnectingPoint num="3" id="1515" /> +<TGConnectingPoint num="4" id="1516" /> +<TGConnectingPoint num="5" id="1517" /> +<TGConnectingPoint num="6" id="1518" /> +<TGConnectingPoint num="7" id="1519" /> +<TGConnectingPoint num="8" id="1520" /> +<TGConnectingPoint num="9" id="1521" /> +<TGConnectingPoint num="10" id="1522" /> +<TGConnectingPoint num="11" id="1523" /> +<TGConnectingPoint num="12" id="1524" /> +<TGConnectingPoint num="13" id="1525" /> +<TGConnectingPoint num="14" id="1526" /> +<TGConnectingPoint num="15" id="1527" /> +<TGConnectingPoint num="16" id="1528" /> +<TGConnectingPoint num="17" id="1529" /> +<TGConnectingPoint num="18" id="1530" /> +<TGConnectingPoint num="19" id="1531" /> +<TGConnectingPoint num="20" id="1532" /> +<TGConnectingPoint num="21" id="1533" /> +<TGConnectingPoint num="22" id="1534" /> +<TGConnectingPoint num="23" id="1535" /> +<extraparam> +<info stereotype="CPURR" nodeName="CPU2" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="4" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="1511" > +<father id="1536" num="0" /> +<cdparam x="715" y="448" /> +<sizeparam width="109" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="65" minY="0" maxY="95" /> +<infoparam name="TGComponent" value="AppC::Timer" /> +<TGConnectingPoint num="0" id="1503" /> +<TGConnectingPoint num="1" id="1504" /> +<TGConnectingPoint num="2" id="1505" /> +<TGConnectingPoint num="3" id="1506" /> +<TGConnectingPoint num="4" id="1507" /> +<TGConnectingPoint num="5" id="1508" /> +<TGConnectingPoint num="6" id="1509" /> +<TGConnectingPoint num="7" id="1510" /> +<extraparam> +<info value="AppC::Timer" taskName="Timer" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1100" id="1570" > +<cdparam x="167" y="400" /> +<sizeparam width="165" height="126" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CPU1" value="name" /> +<TGConnectingPoint num="0" id="1546" /> +<TGConnectingPoint num="1" id="1547" /> +<TGConnectingPoint num="2" id="1548" /> +<TGConnectingPoint num="3" id="1549" /> +<TGConnectingPoint num="4" id="1550" /> +<TGConnectingPoint num="5" id="1551" /> +<TGConnectingPoint num="6" id="1552" /> +<TGConnectingPoint num="7" id="1553" /> +<TGConnectingPoint num="8" id="1554" /> +<TGConnectingPoint num="9" id="1555" /> +<TGConnectingPoint num="10" id="1556" /> +<TGConnectingPoint num="11" id="1557" /> +<TGConnectingPoint num="12" id="1558" /> +<TGConnectingPoint num="13" id="1559" /> +<TGConnectingPoint num="14" id="1560" /> +<TGConnectingPoint num="15" id="1561" /> +<TGConnectingPoint num="16" id="1562" /> +<TGConnectingPoint num="17" id="1563" /> +<TGConnectingPoint num="18" id="1564" /> +<TGConnectingPoint num="19" id="1565" /> +<TGConnectingPoint num="20" id="1566" /> +<TGConnectingPoint num="21" id="1567" /> +<TGConnectingPoint num="22" id="1568" /> +<TGConnectingPoint num="23" id="1569" /> +<extraparam> +<info stereotype="CPURR" nodeName="CPU1" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="2" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="1545" > +<father id="1570" num="0" /> +<cdparam x="167" y="445" /> +<sizeparam width="163" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2" minY="0" maxY="86" /> +<infoparam name="TGComponent" value="AppC::InterfaceDevice" /> +<TGConnectingPoint num="0" id="1537" /> +<TGConnectingPoint num="1" id="1538" /> +<TGConnectingPoint num="2" id="1539" /> +<TGConnectingPoint num="3" id="1540" /> +<TGConnectingPoint num="4" id="1541" /> +<TGConnectingPoint num="5" id="1542" /> +<TGConnectingPoint num="6" id="1543" /> +<TGConnectingPoint num="7" id="1544" /> +<extraparam> +<info value="AppC::InterfaceDevice" taskName="InterfaceDevice" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1100" id="1622" > +<cdparam x="389" y="243" /> +<sizeparam width="250" height="146" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CPU0" value="name" /> +<TGConnectingPoint num="0" id="1598" /> +<TGConnectingPoint num="1" id="1599" /> +<TGConnectingPoint num="2" id="1600" /> +<TGConnectingPoint num="3" id="1601" /> +<TGConnectingPoint num="4" id="1602" /> +<TGConnectingPoint num="5" id="1603" /> +<TGConnectingPoint num="6" id="1604" /> +<TGConnectingPoint num="7" id="1605" /> +<TGConnectingPoint num="8" id="1606" /> +<TGConnectingPoint num="9" id="1607" /> +<TGConnectingPoint num="10" id="1608" /> +<TGConnectingPoint num="11" id="1609" /> +<TGConnectingPoint num="12" id="1610" /> +<TGConnectingPoint num="13" id="1611" /> +<TGConnectingPoint num="14" id="1612" /> +<TGConnectingPoint num="15" id="1613" /> +<TGConnectingPoint num="16" id="1614" /> +<TGConnectingPoint num="17" id="1615" /> +<TGConnectingPoint num="18" id="1616" /> +<TGConnectingPoint num="19" id="1617" /> +<TGConnectingPoint num="20" id="1618" /> +<TGConnectingPoint num="21" id="1619" /> +<TGConnectingPoint num="22" id="1620" /> +<TGConnectingPoint num="23" id="1621" /> +<extraparam> +<info stereotype="CPURR" nodeName="CPU0" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="18" execiTime="1" execcTime="1" clockRatio="3" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="1579" > +<father id="1622" num="0" /> +<cdparam x="486" y="303" /> +<sizeparam width="136" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="114" minY="0" maxY="106" /> +<infoparam name="TGComponent" value="AppC::SmartCard" /> +<TGConnectingPoint num="0" id="1571" /> +<TGConnectingPoint num="1" id="1572" /> +<TGConnectingPoint num="2" id="1573" /> +<TGConnectingPoint num="3" id="1574" /> +<TGConnectingPoint num="4" id="1575" /> +<TGConnectingPoint num="5" id="1576" /> +<TGConnectingPoint num="6" id="1577" /> +<TGConnectingPoint num="7" id="1578" /> +<extraparam> +<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="1588" > +<father id="1622" num="1" /> +<cdparam x="415" y="349" /> +<sizeparam width="139" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="111" minY="0" maxY="106" /> +<infoparam name="TGComponent" value="AppC::Application" /> +<TGConnectingPoint num="0" id="1580" /> +<TGConnectingPoint num="1" id="1581" /> +<TGConnectingPoint num="2" id="1582" /> +<TGConnectingPoint num="3" id="1583" /> +<TGConnectingPoint num="4" id="1584" /> +<TGConnectingPoint num="5" id="1585" /> +<TGConnectingPoint num="6" id="1586" /> +<TGConnectingPoint num="7" id="1587" /> +<extraparam> +<info value="AppC::Application" taskName="Application" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="1597" > +<father id="1622" num="2" /> +<cdparam x="396" y="258" /> +<sizeparam width="108" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="142" minY="0" maxY="106" /> +<infoparam name="TGComponent" value="AppC::TCPIP" /> +<TGConnectingPoint num="0" id="1589" /> +<TGConnectingPoint num="1" id="1590" /> +<TGConnectingPoint num="2" id="1591" /> +<TGConnectingPoint num="3" id="1592" /> +<TGConnectingPoint num="4" id="1593" /> +<TGConnectingPoint num="5" id="1594" /> +<TGConnectingPoint num="6" id="1595" /> +<TGConnectingPoint num="7" id="1596" /> +<extraparam> +<info value="AppC::TCPIP" taskName="TCPIP" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="125" id="1623" > +<cdparam x="513" y="536" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Memory0 to Bus0" value="{info}" /> +<P1 x="514" y="527" id="1454" /> +<P2 x="514" y="488" id="1484" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="1624" > +<cdparam x="301" y="469" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from CPU1 to Bus0" value="{info}" /> +<P1 x="332" y="463" id="1550" /> +<P2 x="389" y="463" id="1481" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="1625" > +<cdparam x="773" y="479" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from CPU2 to Bus0" value="{info}" /> +<P1 x="685" y="463" id="1515" /> +<P2 x="639" y="463" id="1482" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="1626" > +<cdparam x="499" y="331" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from CPU0 to Bus0" value="{info}" /> +<P1 x="514" y="389" id="1604" /> +<P2 x="514" y="438" id="1479" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> + +</TMLArchiDiagramPanel> + +</Modeling> + + + + +<Modeling type="Diplodocus Methodology" nameTab="DIPLODOCUS_Methodology" > +<DiplodocusMethodologyDiagramPanel name="DIPLODOCUS_Methodology" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" > +<COMPONENT type="6003" id="1631" > +<cdparam x="60" y="417" /> +<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="Requirements" /> +<TGConnectingPoint num="0" id="1627" /> +<TGConnectingPoint num="1" id="1628" /> +<TGConnectingPoint num="2" id="1629" /> +<TGConnectingPoint num="3" id="1630" /> +</COMPONENT> + +<COMPONENT type="6006" id="1636" > +<cdparam x="600" y="100" /> +<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="Com. Patterns" /> +<TGConnectingPoint num="0" id="1632" /> +<TGConnectingPoint num="1" id="1633" /> +<TGConnectingPoint num="2" id="1634" /> +<TGConnectingPoint num="3" id="1635" /> +</COMPONENT> + +<COMPONENT type="6002" id="1645" > +<cdparam x="518" y="306" /> +<sizeparam width="318" height="136" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="Mapping" /> +<TGConnectingPoint num="0" id="1639" /> +<TGConnectingPoint num="1" id="1640" /> +<TGConnectingPoint num="2" id="1641" /> +<TGConnectingPoint num="3" id="1642" /> +<TGConnectingPoint num="4" id="1643" /> +<TGConnectingPoint num="5" id="1644" /> +</COMPONENT> +<SUBCOMPONENT type="6005" id="1637" > +<father id="1645" num="0" /> +<cdparam x="523" y="361" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="605" maxX="605" minY="355" maxY="355" /> +<infoparam name="value " value="Mapping2" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="6005" id="1638" > +<father id="1645" num="1" /> +<cdparam x="523" y="346" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="605" maxX="605" minY="340" maxY="340" /> +<infoparam name="value " value="Mapping1" /> +</SUBCOMPONENT> + +<COMPONENT type="6001" id="1652" > +<cdparam x="850" y="100" /> +<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="Architecture" /> +<TGConnectingPoint num="0" id="1648" /> +<TGConnectingPoint num="1" id="1649" /> +<TGConnectingPoint num="2" id="1650" /> +<TGConnectingPoint num="3" id="1651" /> +</COMPONENT> +<SUBCOMPONENT type="6005" id="1646" > +<father id="1652" num="0" /> +<cdparam x="855" y="155" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="855" maxX="855" minY="155" maxY="155" /> +<infoparam name="value " value="Mapping2" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="6005" id="1647" > +<father id="1652" num="1" /> +<cdparam x="855" y="140" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="855" maxX="855" minY="140" maxY="140" /> +<infoparam name="value " value="Mapping1" /> +</SUBCOMPONENT> + +<COMPONENT type="6000" id="1658" > +<cdparam x="233" y="101" /> +<sizeparam width="334" height="161" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="Application" /> +<TGConnectingPoint num="0" id="1654" /> +<TGConnectingPoint num="1" id="1655" /> +<TGConnectingPoint num="2" id="1656" /> +<TGConnectingPoint num="3" id="1657" /> +</COMPONENT> +<SUBCOMPONENT type="6005" id="1653" > +<father id="1658" num="0" /> +<cdparam x="238" y="141" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="355" maxX="355" minY="140" maxY="140" /> +<infoparam name="value " value="AppC" /> +</SUBCOMPONENT> + +<CONNECTOR type="6004" id="1660" > +<cdparam x="950" y="220" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="1659" /> +<P1 x="950" y="220" id="1648" /> +<P2 x="740" y="306" id="1640" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="6004" id="1662" > +<cdparam x="700" y="220" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="1661" /> +<P1 x="700" y="220" id="1632" /> +<P2 x="677" y="306" id="1641" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="6004" id="1664" > +<cdparam x="450" y="220" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="1663" /> +<P1 x="400" y="262" id="1654" /> +<P2 x="613" y="306" id="1639" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</DiplodocusMethodologyDiagramPanel> + +</Modeling> + + + + +</TURTLEGMODELING> \ No newline at end of file diff --git a/ttool/src/test/resources/ui/generateccode/models/ZigBeeTutorial.xml b/ttool/src/test/resources/ui/diagram2tml/input/ZigBeeTutorial.xml similarity index 99% rename from ttool/src/test/resources/ui/generateccode/models/ZigBeeTutorial.xml rename to ttool/src/test/resources/ui/diagram2tml/input/ZigBeeTutorial.xml index ab65b34d37b0fa0253202101f22b732d2ad68a46..88b4b46794d09a5f5169b0b1669bf5bdc8ecc40d 100644 --- a/ttool/src/test/resources/ui/generateccode/models/ZigBeeTutorial.xml +++ b/ttool/src/test/resources/ui/diagram2tml/input/ZigBeeTutorial.xml @@ -6235,7 +6235,7 @@ POLLING <TGConnectingPoint num="0" id="2490" /> </COMPONENT> -<COMPONENT type="1508" id="2496" > +<!-- Issue #69 COMPONENT type="1508" id="2496" > <cdparam x="360" y="163" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -6245,7 +6245,7 @@ POLLING <TGConnectingPoint num="1" id="2493" /> <TGConnectingPoint num="2" id="2494" /> <TGConnectingPoint num="3" id="2495" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="2507" > <cdparam x="182" y="332" /> @@ -6911,7 +6911,7 @@ POLLING <infoparam name="guard 3" value="[ transferTerminated == true ]" /> </SUBCOMPONENT> -<COMPONENT type="1508" id="2866" > +<!-- Issue #69 COMPONENT type="1508" id="2866" > <cdparam x="279" y="127" /> <sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -6921,7 +6921,7 @@ POLLING <TGConnectingPoint num="1" id="2863" /> <TGConnectingPoint num="2" id="2864" /> <TGConnectingPoint num="3" id="2865" /> -</COMPONENT> +</COMPONENT--> <COMPONENT type="1505" id="2877" > <cdparam x="101" y="296" /> diff --git a/ttool/src/test/resources/ui/generateccode/input/ZigBeeTutorial.xml b/ttool/src/test/resources/ui/generateccode/input/ZigBeeTutorial.xml new file mode 100644 index 0000000000000000000000000000000000000000..88b4b46794d09a5f5169b0b1669bf5bdc8ecc40d --- /dev/null +++ b/ttool/src/test/resources/ui/generateccode/input/ZigBeeTutorial.xml @@ -0,0 +1,15816 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> + +<TURTLEGMODELING version="0.99-beta4"> + +<Modeling type="Diplodocus Methodology" nameTab="DIPLODOCUS_Methodology" > +<DiplodocusMethodologyDiagramPanel name="DIPLODOCUS_Methodology" minX="10" maxX="2500" minY="10" maxY="1500" zoom="1.0" > +<COMPONENT type="6003" id="5" > +<cdparam x="63" y="99" /> +<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="Requirements" /> +<TGConnectingPoint num="0" id="1" /> +<TGConnectingPoint num="1" id="2" /> +<TGConnectingPoint num="2" id="3" /> +<TGConnectingPoint num="3" id="4" /> +</COMPONENT> + +<COMPONENT type="6006" id="13" > +<cdparam x="600" y="100" /> +<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="Com. Patterns" /> +<TGConnectingPoint num="0" id="9" /> +<TGConnectingPoint num="1" id="10" /> +<TGConnectingPoint num="2" id="11" /> +<TGConnectingPoint num="3" id="12" /> +</COMPONENT> +<SUBCOMPONENT type="6005" id="6" > +<father id="13" num="0" /> +<cdparam x="605" y="140" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="605" maxX="605" minY="140" maxY="140" /> +<infoparam name="value " value="DMA_transfer" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="6005" id="7" > +<father id="13" num="1" /> +<cdparam x="605" y="155" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="605" maxX="605" minY="155" maxY="155" /> +<infoparam name="value " value="Double_DMA_transfer" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="6005" id="8" > +<father id="13" num="2" /> +<cdparam x="605" y="170" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="605" maxX="605" minY="170" maxY="170" /> +<infoparam name="value " value="CP_Memory_Copy" /> +</SUBCOMPONENT> + +<COMPONENT type="6002" id="23" > +<cdparam x="600" y="300" /> +<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="Mapping" /> +<TGConnectingPoint num="0" id="17" /> +<TGConnectingPoint num="1" id="18" /> +<TGConnectingPoint num="2" id="19" /> +<TGConnectingPoint num="3" id="20" /> +<TGConnectingPoint num="4" id="21" /> +<TGConnectingPoint num="5" id="22" /> +</COMPONENT> +<SUBCOMPONENT type="6005" id="14" > +<father id="23" num="0" /> +<cdparam x="605" y="340" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="605" maxX="605" minY="340" maxY="340" /> +<infoparam name="value " value="Mapping_0" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="6005" id="15" > +<father id="23" num="1" /> +<cdparam x="605" y="355" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="605" maxX="605" minY="355" maxY="355" /> +<infoparam name="value " value="Mapping_1" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="6005" id="16" > +<father id="23" num="2" /> +<cdparam x="605" y="370" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="605" maxX="605" minY="370" maxY="370" /> +<infoparam name="value " value="Mapping_2" /> +</SUBCOMPONENT> + +<COMPONENT type="6001" id="29" > +<cdparam x="850" y="100" /> +<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="Architecture" /> +<TGConnectingPoint num="0" id="25" /> +<TGConnectingPoint num="1" id="26" /> +<TGConnectingPoint num="2" id="27" /> +<TGConnectingPoint num="3" id="28" /> +</COMPONENT> +<SUBCOMPONENT type="6005" id="24" > +<father id="29" num="0" /> +<cdparam x="855" y="140" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="855" maxX="855" minY="140" maxY="140" /> +<infoparam name="value " value="Embb" /> +</SUBCOMPONENT> + +<COMPONENT type="6000" id="35" > +<cdparam x="350" y="100" /> +<sizeparam width="200" height="120" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="TGComponent" value="Application" /> +<TGConnectingPoint num="0" id="31" /> +<TGConnectingPoint num="1" id="32" /> +<TGConnectingPoint num="2" id="33" /> +<TGConnectingPoint num="3" id="34" /> +</COMPONENT> +<SUBCOMPONENT type="6005" id="30" > +<father id="35" num="0" /> +<cdparam x="355" y="140" /> +<sizeparam width="10" height="10" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="355" maxX="355" minY="140" maxY="140" /> +<infoparam name="value " value="Zigbee_TX" /> +</SUBCOMPONENT> + +<CONNECTOR type="6004" id="37" > +<cdparam x="950" y="220" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="36" /> +<P1 x="950" y="220" id="25" /> +<P2 x="740" y="300" id="18" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="6004" id="39" > +<cdparam x="700" y="220" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="38" /> +<P1 x="700" y="220" id="9" /> +<P2 x="700" y="300" id="19" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="6004" id="41" > +<cdparam x="450" y="220" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="40" /> +<P1 x="450" y="220" id="31" /> +<P2 x="660" y="300" id="17" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</DiplodocusMethodologyDiagramPanel> + +</Modeling> + + + + +<Modeling type="TML Component Design" nameTab="Zigbee_TX" > +<TMLComponentTaskDiagramPanel name="TML Component Task Diagram" minX="0" maxX="1702" minY="0" maxY="563" channels="true" events="true" requests="true" zoom="1.0000000000000007" > +<CONNECTOR type="126" id="43" > +<cdparam x="1409" y="343" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1397" y="380" id="772" /> +<P2 x="1446" y="258" id="125" /> +<Point x="1446" y="393" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="42" > +<father id="43" num="0" /> +<cdparam x="1446" y="393" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="126" id="44" > +<cdparam x="1383" y="381" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1364" y="380" id="723" /> +<P2 x="1397" y="406" id="777" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="45" > +<cdparam x="1507" y="228" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1494" y="263" id="662" /> +<P2 x="1535" y="237" id="608" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="46" > +<cdparam x="1462" y="247" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1463" y="250" id="120" /> +<P2 x="1494" y="237" id="657" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="47" > +<cdparam x="1507" y="420" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1494" y="423" id="643" /> +<P2 x="1536" y="397" id="591" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="50" > +<cdparam x="1409" y="471" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1397" y="510" id="753" /> +<P2 x="1494" y="397" id="638" /> +<Point x="1432" y="523" /> +<Point x="1432" y="410" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="48" > +<father id="50" num="0" /> +<cdparam x="1432" y="523" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="49" > +<father id="50" num="1" /> +<cdparam x="1432" y="410" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="126" id="51" > +<cdparam x="1379" y="511" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1362" y="510" id="708" /> +<P2 x="1397" y="536" id="758" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="52" > +<cdparam x="1507" y="344" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1494" y="367" id="624" /> +<P2 x="1536" y="341" id="595" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="55" > +<cdparam x="1413" y="226" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1400" y="249" id="887" /> +<P2 x="1494" y="341" id="619" /> +<Point x="1430" y="262" /> +<Point x="1430" y="354" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="53" > +<father id="55" num="0" /> +<cdparam x="1430" y="262" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="54" > +<father id="55" num="1" /> +<cdparam x="1430" y="354" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="126" id="56" > +<cdparam x="1388" y="262" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1365" y="249" id="823" /> +<P2 x="1400" y="275" id="892" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="58" > +<cdparam x="1413" y="97" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1400" y="111" id="800" /> +<P2 x="1446" y="241" id="123" /> +<Point x="1446" y="124" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="57" > +<father id="58" num="0" /> +<cdparam x="1446" y="124" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="126" id="59" > +<cdparam x="1384" y="124" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1364" y="111" id="838" /> +<P2 x="1400" y="137" id="805" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="60" > +<cdparam x="1208" y="347" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1186" y="401" id="690" /> +<P2 x="1220" y="375" id="721" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="62" > +<cdparam x="1133" y="246" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1133" y="251" id="141" /> +<P2 x="1186" y="375" id="685" /> +<Point x="1133" y="388" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="61" > +<father id="62" num="0" /> +<cdparam x="1133" y="388" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="126" id="63" > +<cdparam x="1105" y="254" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1046" y="230" id="455" /> +<P2 x="1117" y="243" id="136" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="64" > +<cdparam x="1068" y="239" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1010" y="230" id="531" /> +<P2 x="1046" y="256" id="460" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="67" > +<cdparam x="1105" y="374" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1046" y="363" id="563" /> +<P2 x="1186" y="249" id="849" /> +<Point x="1103" y="376" /> +<Point x="1103" y="262" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="65" > +<father id="67" num="0" /> +<cdparam x="1103" y="376" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="66" > +<father id="67" num="1" /> +<cdparam x="1103" y="262" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="126" id="68" > +<cdparam x="1065" y="372" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1008" y="363" id="516" /> +<P2 x="1046" y="389" id="568" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="69" > +<cdparam x="1208" y="499" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1186" y="513" id="739" /> +<P2 x="1224" y="487" id="706" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="72" > +<cdparam x="1105" y="408" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1046" y="395" id="544" /> +<P2 x="1186" y="487" id="734" /> +<Point x="1101" y="408" /> +<Point x="1101" y="500" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="70" > +<father id="72" num="0" /> +<cdparam x="1101" y="408" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="71" > +<father id="72" num="1" /> +<cdparam x="1101" y="500" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="2489" minY="0" maxY="1569" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="126" id="73" > +<cdparam x="1065" y="404" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1008" y="395" id="512" /> +<P2 x="1046" y="421" id="549" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="74" > +<cdparam x="907" y="352" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="838" y="400" id="479" /> +<P2 x="874" y="374" id="518" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="75" > +<cdparam x="867" y="334" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="799" y="374" id="340" /> +<P2 x="838" y="374" id="474" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="76" > +<cdparam x="840" y="380" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="756" y="374" id="382" /> +<P2 x="799" y="400" id="345" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="77" > +<cdparam x="915" y="228" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="838" y="274" id="498" /> +<P2 x="876" y="248" id="533" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="78" > +<cdparam x="867" y="229" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="799" y="248" id="359" /> +<P2 x="838" y="248" id="493" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="79" > +<cdparam x="829" y="257" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="754" y="248" id="397" /> +<P2 x="799" y="274" id="364" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="80" > +<cdparam x="669" y="349" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="555" y="399" id="432" /> +<P2 x="597" y="373" id="380" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="81" > +<cdparam x="586" y="350" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="516" y="373" id="312" /> +<P2 x="555" y="373" id="427" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="82" > +<cdparam x="550" y="379" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="470" y="373" id="267" /> +<P2 x="516" y="399" id="317" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="83" > +<cdparam x="687" y="234" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="555" y="282" id="413" /> +<P2 x="598" y="256" id="395" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="84" > +<cdparam x="586" y="233" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="516" y="256" id="293" /> +<P2 x="555" y="256" id="408" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="85" > +<cdparam x="549" y="263" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="473" y="256" id="282" /> +<P2 x="516" y="282" id="298" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="86" > +<cdparam x="364" y="356" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="275" y="394" id="230" /> +<P2 x="316" y="368" id="265" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="87" > +<cdparam x="321" y="350" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="231" y="368" id="152" /> +<P2 x="275" y="368" id="225" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="88" > +<cdparam x="200" y="373" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="187" y="368" id="173" /> +<P2 x="231" y="394" id="157" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="89" > +<cdparam x="356" y="223" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="275" y="271" id="249" /> +<P2 x="317" y="245" id="280" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="90" > +<cdparam x="314" y="221" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="231" y="245" id="197" /> +<P2 x="275" y="245" id="244" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="91" > +<cdparam x="175" y="251" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="154" y="245" id="186" /> +<P2 x="231" y="271" id="202" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="92" > +<cdparam x="1792" y="148" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1186" y="275" id="854" /> +<P2 x="1222" y="249" id="821" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="94" > +<cdparam x="1750" y="240" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1133" y="234" id="139" /> +<P2 x="1186" y="110" id="868" /> +<Point x="1133" y="123" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="93" > +<father id="94" num="0" /> +<cdparam x="1133" y="123" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="3161" minY="0" maxY="1161" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="126" id="95" > +<cdparam x="1792" y="8" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1186" y="136" id="873" /> +<P2 x="1220" y="110" id="836" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="96" > +<cdparam x="280" y="67" /> +<sizeparam width="10" height="10" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1657" y="318" id="593" /> +<P2 x="1562" y="278" id="606" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="97" > +<cdparam x="390" y="97" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1333" y="181" id="819" /> +<P2 x="1257" y="145" id="834" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="98" > +<cdparam x="390" y="507" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="1335" y="458" id="704" /> +<P2 x="1249" y="424" id="719" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="99" > +<cdparam x="1161" y="396" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="989" y="321" id="514" /> +<P2 x="912" y="285" id="529" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="100" > +<cdparam x="1160" y="500" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="729" y="327" id="378" /> +<P2 x="639" y="286" id="393" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="101" > +<cdparam x="755" y="498" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="442" y="319" id="263" /> +<P2 x="350" y="277" id="278" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="102" > +<cdparam x="217" y="495" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="108" y="320" id="171" /> +<P2 x="53" y="276" id="184" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<COMPONENT type="301" id="119" > +<cdparam x="18" y="45" /> +<sizeparam width="237" height="51" minWidth="60" minHeight="23" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" /> +<infoparam name="UML Note" value="In this model THE PARAMETER SIZE +IS NOT MODIFIED according to the +operations performed by the +processing tasks +" /> +<TGConnectingPoint num="0" id="103" /> +<TGConnectingPoint num="1" id="104" /> +<TGConnectingPoint num="2" id="105" /> +<TGConnectingPoint num="3" id="106" /> +<TGConnectingPoint num="4" id="107" /> +<TGConnectingPoint num="5" id="108" /> +<TGConnectingPoint num="6" id="109" /> +<TGConnectingPoint num="7" id="110" /> +<TGConnectingPoint num="8" id="111" /> +<TGConnectingPoint num="9" id="112" /> +<TGConnectingPoint num="10" id="113" /> +<TGConnectingPoint num="11" id="114" /> +<TGConnectingPoint num="12" id="115" /> +<TGConnectingPoint num="13" id="116" /> +<TGConnectingPoint num="14" id="117" /> +<TGConnectingPoint num="15" id="118" /> +<extraparam> +<Line value="In this model THE PARAMETER SIZE" /> +<Line value="IS NOT MODIFIED according to the" /> +<Line value="operations performed by the" /> +<Line value="processing tasks" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1208" id="135" > +<cdparam x="1441" y="239" /> +<sizeparam width="22" height="22" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" /> +<infoparam name="Composite port" value="J" /> +<TGConnectingPoint num="0" id="120" /> +<TGConnectingPoint num="1" id="121" /> +<TGConnectingPoint num="2" id="122" /> +<TGConnectingPoint num="3" id="123" /> +<TGConnectingPoint num="4" id="124" /> +<TGConnectingPoint num="5" id="125" /> +<TGConnectingPoint num="6" id="126" /> +<TGConnectingPoint num="7" id="127" /> +<TGConnectingPoint num="8" id="128" /> +<TGConnectingPoint num="9" id="129" /> +<TGConnectingPoint num="10" id="130" /> +<TGConnectingPoint num="11" id="131" /> +<TGConnectingPoint num="12" id="132" /> +<TGConnectingPoint num="13" id="133" /> +<TGConnectingPoint num="14" id="134" /> +</COMPONENT> + +<COMPONENT type="1207" id="151" > +<cdparam x="1117" y="232" /> +<sizeparam width="22" height="22" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" /> +<infoparam name="Composite port" value="F" /> +<TGConnectingPoint num="0" id="136" /> +<TGConnectingPoint num="1" id="137" /> +<TGConnectingPoint num="2" id="138" /> +<TGConnectingPoint num="3" id="139" /> +<TGConnectingPoint num="4" id="140" /> +<TGConnectingPoint num="5" id="141" /> +<TGConnectingPoint num="6" id="142" /> +<TGConnectingPoint num="7" id="143" /> +<TGConnectingPoint num="8" id="144" /> +<TGConnectingPoint num="9" id="145" /> +<TGConnectingPoint num="10" id="146" /> +<TGConnectingPoint num="11" id="147" /> +<TGConnectingPoint num="12" id="148" /> +<TGConnectingPoint num="13" id="149" /> +<TGConnectingPoint num="14" id="150" /> +</COMPONENT> + +<COMPONENT type="1200" id="224" > +<cdparam x="0" y="164" /> +<sizeparam width="231" height="254" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" /> +<infoparam name="Composite component" value="Source" /> +<TGConnectingPoint num="0" id="216" /> +<TGConnectingPoint num="1" id="217" /> +<TGConnectingPoint num="2" id="218" /> +<TGConnectingPoint num="3" id="219" /> +<TGConnectingPoint num="4" id="220" /> +<TGConnectingPoint num="5" id="221" /> +<TGConnectingPoint num="6" id="222" /> +<TGConnectingPoint num="7" id="223" /> +<extraparam> +<info hiddeni="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1201" id="170" > +<father id="224" num="0" /> +<cdparam x="218" y="368" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="218" minY="-13" maxY="241" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="152" /> +<TGConnectingPoint num="1" id="153" /> +<TGConnectingPoint num="2" id="154" /> +<TGConnectingPoint num="3" id="155" /> +<TGConnectingPoint num="4" id="156" /> +<TGConnectingPoint num="5" id="157" /> +<TGConnectingPoint num="6" id="158" /> +<TGConnectingPoint num="7" id="159" /> +<TGConnectingPoint num="8" id="160" /> +<TGConnectingPoint num="9" id="161" /> +<TGConnectingPoint num="10" id="162" /> +<TGConnectingPoint num="11" id="163" /> +<TGConnectingPoint num="12" id="164" /> +<TGConnectingPoint num="13" id="165" /> +<TGConnectingPoint num="14" id="166" /> +<TGConnectingPoint num="15" id="167" /> +<TGConnectingPoint num="16" id="168" /> +<TGConnectingPoint num="17" id="169" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="183" > +<father id="224" num="1" /> +<cdparam x="2" y="333" /> +<sizeparam width="185" height="74" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="46" minY="0" maxY="180" /> +<infoparam name="Primitive component" value="F_Source" /> +<TGConnectingPoint num="0" id="175" /> +<TGConnectingPoint num="1" id="176" /> +<TGConnectingPoint num="2" id="177" /> +<TGConnectingPoint num="3" id="178" /> +<TGConnectingPoint num="4" id="179" /> +<TGConnectingPoint num="5" id="180" /> +<TGConnectingPoint num="6" id="181" /> +<TGConnectingPoint num="7" id="182" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="127" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="172" > +<father id="183" num="0" /> +<cdparam x="95" y="320" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="172" minY="-13" maxY="61" /> +<infoparam name="Primitive port" value="Request source_req" /> +<TGConnectingPoint num="0" id="171" /> +<extraparam> +<Prop commName="source_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="174" > +<father id="183" num="1" /> +<cdparam x="174" y="368" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="172" minY="-13" maxY="61" /> +<infoparam name="Primitive port" value="Event Source_evt_out" /> +<TGConnectingPoint num="0" id="173" /> +<extraparam> +<Prop commName="Source_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="196" > +<father id="224" num="2" /> +<cdparam x="18" y="208" /> +<sizeparam width="136" height="81" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="95" minY="0" maxY="173" /> +<infoparam name="Primitive component" value="X_Source" /> +<TGConnectingPoint num="0" id="188" /> +<TGConnectingPoint num="1" id="189" /> +<TGConnectingPoint num="2" id="190" /> +<TGConnectingPoint num="3" id="191" /> +<TGConnectingPoint num="4" id="192" /> +<TGConnectingPoint num="5" id="193" /> +<TGConnectingPoint num="6" id="194" /> +<TGConnectingPoint num="7" id="195" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="185" > +<father id="196" num="0" /> +<cdparam x="40" y="276" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="123" minY="-13" maxY="68" /> +<infoparam name="Primitive port" value="Request source_req" /> +<TGConnectingPoint num="0" id="184" /> +<extraparam> +<Prop commName="source_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="187" > +<father id="196" num="1" /> +<cdparam x="141" y="245" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="123" minY="-13" maxY="68" /> +<infoparam name="Primitive port" value="Channel Source_ch_out" /> +<TGConnectingPoint num="0" id="186" /> +<extraparam> +<Prop commName="Source_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="true" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="Source_evt_out" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="215" > +<father id="224" num="3" /> +<cdparam x="218" y="245" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="218" minY="-13" maxY="241" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="197" /> +<TGConnectingPoint num="1" id="198" /> +<TGConnectingPoint num="2" id="199" /> +<TGConnectingPoint num="3" id="200" /> +<TGConnectingPoint num="4" id="201" /> +<TGConnectingPoint num="5" id="202" /> +<TGConnectingPoint num="6" id="203" /> +<TGConnectingPoint num="7" id="204" /> +<TGConnectingPoint num="8" id="205" /> +<TGConnectingPoint num="9" id="206" /> +<TGConnectingPoint num="10" id="207" /> +<TGConnectingPoint num="11" id="208" /> +<TGConnectingPoint num="12" id="209" /> +<TGConnectingPoint num="13" id="210" /> +<TGConnectingPoint num="14" id="211" /> +<TGConnectingPoint num="15" id="212" /> +<TGConnectingPoint num="16" id="213" /> +<TGConnectingPoint num="17" id="214" /> +</SUBCOMPONENT> + +<COMPONENT type="1200" id="339" > +<cdparam x="275" y="165" /> +<sizeparam width="241" height="259" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" /> +<infoparam name="Composite component" value="Symbol2ChipSeq" /> +<TGConnectingPoint num="0" id="331" /> +<TGConnectingPoint num="1" id="332" /> +<TGConnectingPoint num="2" id="333" /> +<TGConnectingPoint num="3" id="334" /> +<TGConnectingPoint num="4" id="335" /> +<TGConnectingPoint num="5" id="336" /> +<TGConnectingPoint num="6" id="337" /> +<TGConnectingPoint num="7" id="338" /> +<extraparam> +<info hiddeni="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1201" id="243" > +<father id="339" num="0" /> +<cdparam x="262" y="368" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="228" minY="-13" maxY="246" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="225" /> +<TGConnectingPoint num="1" id="226" /> +<TGConnectingPoint num="2" id="227" /> +<TGConnectingPoint num="3" id="228" /> +<TGConnectingPoint num="4" id="229" /> +<TGConnectingPoint num="5" id="230" /> +<TGConnectingPoint num="6" id="231" /> +<TGConnectingPoint num="7" id="232" /> +<TGConnectingPoint num="8" id="233" /> +<TGConnectingPoint num="9" id="234" /> +<TGConnectingPoint num="10" id="235" /> +<TGConnectingPoint num="11" id="236" /> +<TGConnectingPoint num="12" id="237" /> +<TGConnectingPoint num="13" id="238" /> +<TGConnectingPoint num="14" id="239" /> +<TGConnectingPoint num="15" id="240" /> +<TGConnectingPoint num="16" id="241" /> +<TGConnectingPoint num="17" id="242" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="262" > +<father id="339" num="1" /> +<cdparam x="262" y="245" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="228" minY="-13" maxY="246" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="244" /> +<TGConnectingPoint num="1" id="245" /> +<TGConnectingPoint num="2" id="246" /> +<TGConnectingPoint num="3" id="247" /> +<TGConnectingPoint num="4" id="248" /> +<TGConnectingPoint num="5" id="249" /> +<TGConnectingPoint num="6" id="250" /> +<TGConnectingPoint num="7" id="251" /> +<TGConnectingPoint num="8" id="252" /> +<TGConnectingPoint num="9" id="253" /> +<TGConnectingPoint num="10" id="254" /> +<TGConnectingPoint num="11" id="255" /> +<TGConnectingPoint num="12" id="256" /> +<TGConnectingPoint num="13" id="257" /> +<TGConnectingPoint num="14" id="258" /> +<TGConnectingPoint num="15" id="259" /> +<TGConnectingPoint num="16" id="260" /> +<TGConnectingPoint num="17" id="261" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="277" > +<father id="339" num="2" /> +<cdparam x="316" y="332" /> +<sizeparam width="154" height="81" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="87" minY="0" maxY="178" /> +<infoparam name="Primitive component" value="F_Symbol2ChipSeq" /> +<TGConnectingPoint num="0" id="269" /> +<TGConnectingPoint num="1" id="270" /> +<TGConnectingPoint num="2" id="271" /> +<TGConnectingPoint num="3" id="272" /> +<TGConnectingPoint num="4" id="273" /> +<TGConnectingPoint num="5" id="274" /> +<TGConnectingPoint num="6" id="275" /> +<TGConnectingPoint num="7" id="276" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="264" > +<father id="277" num="0" /> +<cdparam x="429" y="319" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="141" minY="-13" maxY="68" /> +<infoparam name="Primitive port" value="Request bit2chip_req" /> +<TGConnectingPoint num="0" id="263" /> +<extraparam> +<Prop commName="bit2chip_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="266" > +<father id="277" num="1" /> +<cdparam x="303" y="368" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="141" minY="-13" maxY="68" /> +<infoparam name="Primitive port" value="Event bit2symbol_evt_in" /> +<TGConnectingPoint num="0" id="265" /> +<extraparam> +<Prop commName="bit2symbol_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="268" > +<father id="277" num="2" /> +<cdparam x="457" y="373" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="141" minY="-13" maxY="68" /> +<infoparam name="Primitive port" value="Event bit2symbol_evt_out" /> +<TGConnectingPoint num="0" id="267" /> +<extraparam> +<Prop commName="bit2symbol_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="292" > +<father id="339" num="3" /> +<cdparam x="317" y="208" /> +<sizeparam width="156" height="82" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="85" minY="0" maxY="177" /> +<infoparam name="Primitive component" value="X_Symbol2ChipSeq" /> +<TGConnectingPoint num="0" id="284" /> +<TGConnectingPoint num="1" id="285" /> +<TGConnectingPoint num="2" id="286" /> +<TGConnectingPoint num="3" id="287" /> +<TGConnectingPoint num="4" id="288" /> +<TGConnectingPoint num="5" id="289" /> +<TGConnectingPoint num="6" id="290" /> +<TGConnectingPoint num="7" id="291" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="279" > +<father id="292" num="0" /> +<cdparam x="337" y="277" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="69" /> +<infoparam name="Primitive port" value="Request bit2chip_req" /> +<TGConnectingPoint num="0" id="278" /> +<extraparam> +<Prop commName="bit2chip_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="281" > +<father id="292" num="1" /> +<cdparam x="304" y="245" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="69" /> +<infoparam name="Primitive port" value="Channel symbol2ChipSeq_ch_in" /> +<TGConnectingPoint num="0" id="280" /> +<extraparam> +<Prop commName="symbol2ChipSeq_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="bit2chip_evt_in" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="283" > +<father id="292" num="2" /> +<cdparam x="460" y="256" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="69" /> +<infoparam name="Primitive port" value="Channel symbol2ChipSeq_ch_out" /> +<TGConnectingPoint num="0" id="282" /> +<extraparam> +<Prop commName="symbol2ChipSeq_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="bit2chip_evt_out" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="311" > +<father id="339" num="4" /> +<cdparam x="503" y="256" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="228" minY="-13" maxY="246" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="293" /> +<TGConnectingPoint num="1" id="294" /> +<TGConnectingPoint num="2" id="295" /> +<TGConnectingPoint num="3" id="296" /> +<TGConnectingPoint num="4" id="297" /> +<TGConnectingPoint num="5" id="298" /> +<TGConnectingPoint num="6" id="299" /> +<TGConnectingPoint num="7" id="300" /> +<TGConnectingPoint num="8" id="301" /> +<TGConnectingPoint num="9" id="302" /> +<TGConnectingPoint num="10" id="303" /> +<TGConnectingPoint num="11" id="304" /> +<TGConnectingPoint num="12" id="305" /> +<TGConnectingPoint num="13" id="306" /> +<TGConnectingPoint num="14" id="307" /> +<TGConnectingPoint num="15" id="308" /> +<TGConnectingPoint num="16" id="309" /> +<TGConnectingPoint num="17" id="310" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="330" > +<father id="339" num="5" /> +<cdparam x="503" y="373" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="228" minY="-13" maxY="246" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="312" /> +<TGConnectingPoint num="1" id="313" /> +<TGConnectingPoint num="2" id="314" /> +<TGConnectingPoint num="3" id="315" /> +<TGConnectingPoint num="4" id="316" /> +<TGConnectingPoint num="5" id="317" /> +<TGConnectingPoint num="6" id="318" /> +<TGConnectingPoint num="7" id="319" /> +<TGConnectingPoint num="8" id="320" /> +<TGConnectingPoint num="9" id="321" /> +<TGConnectingPoint num="10" id="322" /> +<TGConnectingPoint num="11" id="323" /> +<TGConnectingPoint num="12" id="324" /> +<TGConnectingPoint num="13" id="325" /> +<TGConnectingPoint num="14" id="326" /> +<TGConnectingPoint num="15" id="327" /> +<TGConnectingPoint num="16" id="328" /> +<TGConnectingPoint num="17" id="329" /> +</SUBCOMPONENT> + +<COMPONENT type="1200" id="454" > +<cdparam x="555" y="168" /> +<sizeparam width="244" height="262" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" /> +<infoparam name="Composite component" value="Chip2Octet" /> +<TGConnectingPoint num="0" id="446" /> +<TGConnectingPoint num="1" id="447" /> +<TGConnectingPoint num="2" id="448" /> +<TGConnectingPoint num="3" id="449" /> +<TGConnectingPoint num="4" id="450" /> +<TGConnectingPoint num="5" id="451" /> +<TGConnectingPoint num="6" id="452" /> +<TGConnectingPoint num="7" id="453" /> +<extraparam> +<info hiddeni="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1201" id="358" > +<father id="454" num="0" /> +<cdparam x="786" y="374" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="231" minY="-13" maxY="249" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="340" /> +<TGConnectingPoint num="1" id="341" /> +<TGConnectingPoint num="2" id="342" /> +<TGConnectingPoint num="3" id="343" /> +<TGConnectingPoint num="4" id="344" /> +<TGConnectingPoint num="5" id="345" /> +<TGConnectingPoint num="6" id="346" /> +<TGConnectingPoint num="7" id="347" /> +<TGConnectingPoint num="8" id="348" /> +<TGConnectingPoint num="9" id="349" /> +<TGConnectingPoint num="10" id="350" /> +<TGConnectingPoint num="11" id="351" /> +<TGConnectingPoint num="12" id="352" /> +<TGConnectingPoint num="13" id="353" /> +<TGConnectingPoint num="14" id="354" /> +<TGConnectingPoint num="15" id="355" /> +<TGConnectingPoint num="16" id="356" /> +<TGConnectingPoint num="17" id="357" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="377" > +<father id="454" num="1" /> +<cdparam x="786" y="248" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="231" minY="-13" maxY="249" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="359" /> +<TGConnectingPoint num="1" id="360" /> +<TGConnectingPoint num="2" id="361" /> +<TGConnectingPoint num="3" id="362" /> +<TGConnectingPoint num="4" id="363" /> +<TGConnectingPoint num="5" id="364" /> +<TGConnectingPoint num="6" id="365" /> +<TGConnectingPoint num="7" id="366" /> +<TGConnectingPoint num="8" id="367" /> +<TGConnectingPoint num="9" id="368" /> +<TGConnectingPoint num="10" id="369" /> +<TGConnectingPoint num="11" id="370" /> +<TGConnectingPoint num="12" id="371" /> +<TGConnectingPoint num="13" id="372" /> +<TGConnectingPoint num="14" id="373" /> +<TGConnectingPoint num="15" id="374" /> +<TGConnectingPoint num="16" id="375" /> +<TGConnectingPoint num="17" id="376" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="392" > +<father id="454" num="2" /> +<cdparam x="597" y="340" /> +<sizeparam width="159" height="73" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="85" minY="0" maxY="189" /> +<infoparam name="Primitive component" value="F_Chip2Octet" /> +<TGConnectingPoint num="0" id="384" /> +<TGConnectingPoint num="1" id="385" /> +<TGConnectingPoint num="2" id="386" /> +<TGConnectingPoint num="3" id="387" /> +<TGConnectingPoint num="4" id="388" /> +<TGConnectingPoint num="5" id="389" /> +<TGConnectingPoint num="6" id="390" /> +<TGConnectingPoint num="7" id="391" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="379" > +<father id="392" num="0" /> +<cdparam x="716" y="327" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="146" minY="-13" maxY="60" /> +<infoparam name="Primitive port" value="Request chip2octet_req" /> +<TGConnectingPoint num="0" id="378" /> +<extraparam> +<Prop commName="chip2octet_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="381" > +<father id="392" num="1" /> +<cdparam x="584" y="373" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="146" minY="-13" maxY="60" /> +<infoparam name="Primitive port" value="Event chip2octet_evt_in" /> +<TGConnectingPoint num="0" id="380" /> +<extraparam> +<Prop commName="chip2octet_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="383" > +<father id="392" num="2" /> +<cdparam x="743" y="374" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="146" minY="-13" maxY="60" /> +<infoparam name="Primitive port" value="Event chip2octet_evt_out" /> +<TGConnectingPoint num="0" id="382" /> +<extraparam> +<Prop commName="chip2octet_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="407" > +<father id="454" num="3" /> +<cdparam x="598" y="214" /> +<sizeparam width="156" height="85" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="88" minY="0" maxY="177" /> +<infoparam name="Primitive component" value="X_Chip2Octet" /> +<TGConnectingPoint num="0" id="399" /> +<TGConnectingPoint num="1" id="400" /> +<TGConnectingPoint num="2" id="401" /> +<TGConnectingPoint num="3" id="402" /> +<TGConnectingPoint num="4" id="403" /> +<TGConnectingPoint num="5" id="404" /> +<TGConnectingPoint num="6" id="405" /> +<TGConnectingPoint num="7" id="406" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="394" > +<father id="407" num="0" /> +<cdparam x="626" y="286" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="72" /> +<infoparam name="Primitive port" value="Request chip2octet_req" /> +<TGConnectingPoint num="0" id="393" /> +<extraparam> +<Prop commName="chip2octet_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="396" > +<father id="407" num="1" /> +<cdparam x="585" y="256" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="72" /> +<infoparam name="Primitive port" value="Channel chip2octet_ch_in" /> +<TGConnectingPoint num="0" id="395" /> +<extraparam> +<Prop commName="chip2octet_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="chip2octet_evt_in" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="398" > +<father id="407" num="2" /> +<cdparam x="741" y="248" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="143" minY="-13" maxY="72" /> +<infoparam name="Primitive port" value="Channel chip2octet_ch_out" /> +<TGConnectingPoint num="0" id="397" /> +<extraparam> +<Prop commName="chip2octet_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="chip2octet_evt_out" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="426" > +<father id="454" num="4" /> +<cdparam x="542" y="256" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="231" minY="-13" maxY="249" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="408" /> +<TGConnectingPoint num="1" id="409" /> +<TGConnectingPoint num="2" id="410" /> +<TGConnectingPoint num="3" id="411" /> +<TGConnectingPoint num="4" id="412" /> +<TGConnectingPoint num="5" id="413" /> +<TGConnectingPoint num="6" id="414" /> +<TGConnectingPoint num="7" id="415" /> +<TGConnectingPoint num="8" id="416" /> +<TGConnectingPoint num="9" id="417" /> +<TGConnectingPoint num="10" id="418" /> +<TGConnectingPoint num="11" id="419" /> +<TGConnectingPoint num="12" id="420" /> +<TGConnectingPoint num="13" id="421" /> +<TGConnectingPoint num="14" id="422" /> +<TGConnectingPoint num="15" id="423" /> +<TGConnectingPoint num="16" id="424" /> +<TGConnectingPoint num="17" id="425" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="445" > +<father id="454" num="5" /> +<cdparam x="542" y="373" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="231" minY="-13" maxY="249" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="427" /> +<TGConnectingPoint num="1" id="428" /> +<TGConnectingPoint num="2" id="429" /> +<TGConnectingPoint num="3" id="430" /> +<TGConnectingPoint num="4" id="431" /> +<TGConnectingPoint num="5" id="432" /> +<TGConnectingPoint num="6" id="433" /> +<TGConnectingPoint num="7" id="434" /> +<TGConnectingPoint num="8" id="435" /> +<TGConnectingPoint num="9" id="436" /> +<TGConnectingPoint num="10" id="437" /> +<TGConnectingPoint num="11" id="438" /> +<TGConnectingPoint num="12" id="439" /> +<TGConnectingPoint num="13" id="440" /> +<TGConnectingPoint num="14" id="441" /> +<TGConnectingPoint num="15" id="442" /> +<TGConnectingPoint num="16" id="443" /> +<TGConnectingPoint num="17" id="444" /> +</SUBCOMPONENT> + +<COMPONENT type="1200" id="590" > +<cdparam x="838" y="154" /> +<sizeparam width="208" height="281" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" /> +<infoparam name="Composite component" value="CWL" /> +<TGConnectingPoint num="0" id="582" /> +<TGConnectingPoint num="1" id="583" /> +<TGConnectingPoint num="2" id="584" /> +<TGConnectingPoint num="3" id="585" /> +<TGConnectingPoint num="4" id="586" /> +<TGConnectingPoint num="5" id="587" /> +<TGConnectingPoint num="6" id="588" /> +<TGConnectingPoint num="7" id="589" /> +<extraparam> +<info hiddeni="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1201" id="473" > +<father id="590" num="0" /> +<cdparam x="1033" y="230" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="268" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="455" /> +<TGConnectingPoint num="1" id="456" /> +<TGConnectingPoint num="2" id="457" /> +<TGConnectingPoint num="3" id="458" /> +<TGConnectingPoint num="4" id="459" /> +<TGConnectingPoint num="5" id="460" /> +<TGConnectingPoint num="6" id="461" /> +<TGConnectingPoint num="7" id="462" /> +<TGConnectingPoint num="8" id="463" /> +<TGConnectingPoint num="9" id="464" /> +<TGConnectingPoint num="10" id="465" /> +<TGConnectingPoint num="11" id="466" /> +<TGConnectingPoint num="12" id="467" /> +<TGConnectingPoint num="13" id="468" /> +<TGConnectingPoint num="14" id="469" /> +<TGConnectingPoint num="15" id="470" /> +<TGConnectingPoint num="16" id="471" /> +<TGConnectingPoint num="17" id="472" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="492" > +<father id="590" num="1" /> +<cdparam x="825" y="374" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="268" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="474" /> +<TGConnectingPoint num="1" id="475" /> +<TGConnectingPoint num="2" id="476" /> +<TGConnectingPoint num="3" id="477" /> +<TGConnectingPoint num="4" id="478" /> +<TGConnectingPoint num="5" id="479" /> +<TGConnectingPoint num="6" id="480" /> +<TGConnectingPoint num="7" id="481" /> +<TGConnectingPoint num="8" id="482" /> +<TGConnectingPoint num="9" id="483" /> +<TGConnectingPoint num="10" id="484" /> +<TGConnectingPoint num="11" id="485" /> +<TGConnectingPoint num="12" id="486" /> +<TGConnectingPoint num="13" id="487" /> +<TGConnectingPoint num="14" id="488" /> +<TGConnectingPoint num="15" id="489" /> +<TGConnectingPoint num="16" id="490" /> +<TGConnectingPoint num="17" id="491" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="511" > +<father id="590" num="2" /> +<cdparam x="825" y="248" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="268" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="493" /> +<TGConnectingPoint num="1" id="494" /> +<TGConnectingPoint num="2" id="495" /> +<TGConnectingPoint num="3" id="496" /> +<TGConnectingPoint num="4" id="497" /> +<TGConnectingPoint num="5" id="498" /> +<TGConnectingPoint num="6" id="499" /> +<TGConnectingPoint num="7" id="500" /> +<TGConnectingPoint num="8" id="501" /> +<TGConnectingPoint num="9" id="502" /> +<TGConnectingPoint num="10" id="503" /> +<TGConnectingPoint num="11" id="504" /> +<TGConnectingPoint num="12" id="505" /> +<TGConnectingPoint num="13" id="506" /> +<TGConnectingPoint num="14" id="507" /> +<TGConnectingPoint num="15" id="508" /> +<TGConnectingPoint num="16" id="509" /> +<TGConnectingPoint num="17" id="510" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="528" > +<father id="590" num="3" /> +<cdparam x="874" y="334" /> +<sizeparam width="134" height="92" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="74" minY="0" maxY="189" /> +<infoparam name="Primitive component" value="F_CWL" /> +<TGConnectingPoint num="0" id="520" /> +<TGConnectingPoint num="1" id="521" /> +<TGConnectingPoint num="2" id="522" /> +<TGConnectingPoint num="3" id="523" /> +<TGConnectingPoint num="4" id="524" /> +<TGConnectingPoint num="5" id="525" /> +<TGConnectingPoint num="6" id="526" /> +<TGConnectingPoint num="7" id="527" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="513" > +<father id="528" num="0" /> +<cdparam x="995" y="395" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="79" /> +<infoparam name="Primitive port" value="Event cwl_evt_out_1" /> +<TGConnectingPoint num="0" id="512" /> +<extraparam> +<Prop commName="cwl_evt_out_1" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="515" > +<father id="528" num="1" /> +<cdparam x="976" y="321" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="79" /> +<infoparam name="Primitive port" value="Request cwl_req" /> +<TGConnectingPoint num="0" id="514" /> +<extraparam> +<Prop commName="cwl_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="517" > +<father id="528" num="2" /> +<cdparam x="995" y="363" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="79" /> +<infoparam name="Primitive port" value="Event cwl_evt_out" /> +<TGConnectingPoint num="0" id="516" /> +<extraparam> +<Prop commName="cwl_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="519" > +<father id="528" num="3" /> +<cdparam x="861" y="374" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="79" /> +<infoparam name="Primitive port" value="Event cwl_evt_in" /> +<TGConnectingPoint num="0" id="518" /> +<extraparam> +<Prop commName="cwl_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="543" > +<father id="590" num="4" /> +<cdparam x="876" y="202" /> +<sizeparam width="134" height="96" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="74" minY="0" maxY="185" /> +<infoparam name="Primitive component" value="X_CWL" /> +<TGConnectingPoint num="0" id="535" /> +<TGConnectingPoint num="1" id="536" /> +<TGConnectingPoint num="2" id="537" /> +<TGConnectingPoint num="3" id="538" /> +<TGConnectingPoint num="4" id="539" /> +<TGConnectingPoint num="5" id="540" /> +<TGConnectingPoint num="6" id="541" /> +<TGConnectingPoint num="7" id="542" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="530" > +<father id="543" num="0" /> +<cdparam x="899" y="285" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="83" /> +<infoparam name="Primitive port" value="Request cwl_req" /> +<TGConnectingPoint num="0" id="529" /> +<extraparam> +<Prop commName="cwl_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="532" > +<father id="543" num="1" /> +<cdparam x="997" y="230" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="83" /> +<infoparam name="Primitive port" value="Channel cwl_ch_out" /> +<TGConnectingPoint num="0" id="531" /> +<extraparam> +<Prop commName="cwl_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="cwl_evt_out" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="534" > +<father id="543" num="2" /> +<cdparam x="863" y="248" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="121" minY="-13" maxY="83" /> +<infoparam name="Primitive port" value="Channel cwl_ch_in" /> +<TGConnectingPoint num="0" id="533" /> +<extraparam> +<Prop commName="cwl_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="cwl_evt_in" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="562" > +<father id="590" num="5" /> +<cdparam x="1033" y="395" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="268" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="544" /> +<TGConnectingPoint num="1" id="545" /> +<TGConnectingPoint num="2" id="546" /> +<TGConnectingPoint num="3" id="547" /> +<TGConnectingPoint num="4" id="548" /> +<TGConnectingPoint num="5" id="549" /> +<TGConnectingPoint num="6" id="550" /> +<TGConnectingPoint num="7" id="551" /> +<TGConnectingPoint num="8" id="552" /> +<TGConnectingPoint num="9" id="553" /> +<TGConnectingPoint num="10" id="554" /> +<TGConnectingPoint num="11" id="555" /> +<TGConnectingPoint num="12" id="556" /> +<TGConnectingPoint num="13" id="557" /> +<TGConnectingPoint num="14" id="558" /> +<TGConnectingPoint num="15" id="559" /> +<TGConnectingPoint num="16" id="560" /> +<TGConnectingPoint num="17" id="561" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="581" > +<father id="590" num="6" /> +<cdparam x="1033" y="363" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="268" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="563" /> +<TGConnectingPoint num="1" id="564" /> +<TGConnectingPoint num="2" id="565" /> +<TGConnectingPoint num="3" id="566" /> +<TGConnectingPoint num="4" id="567" /> +<TGConnectingPoint num="5" id="568" /> +<TGConnectingPoint num="6" id="569" /> +<TGConnectingPoint num="7" id="570" /> +<TGConnectingPoint num="8" id="571" /> +<TGConnectingPoint num="9" id="572" /> +<TGConnectingPoint num="10" id="573" /> +<TGConnectingPoint num="11" id="574" /> +<TGConnectingPoint num="12" id="575" /> +<TGConnectingPoint num="13" id="576" /> +<TGConnectingPoint num="14" id="577" /> +<TGConnectingPoint num="15" id="578" /> +<TGConnectingPoint num="16" id="579" /> +<TGConnectingPoint num="17" id="580" /> +</SUBCOMPONENT> + +<COMPONENT type="1200" id="684" > +<cdparam x="1494" y="155" /> +<sizeparam width="208" height="282" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" /> +<infoparam name="Composite component" value="Sink" /> +<TGConnectingPoint num="0" id="676" /> +<TGConnectingPoint num="1" id="677" /> +<TGConnectingPoint num="2" id="678" /> +<TGConnectingPoint num="3" id="679" /> +<TGConnectingPoint num="4" id="680" /> +<TGConnectingPoint num="5" id="681" /> +<TGConnectingPoint num="6" id="682" /> +<TGConnectingPoint num="7" id="683" /> +<extraparam> +<info hiddeni="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1202" id="605" > +<father id="684" num="0" /> +<cdparam x="1536" y="331" /> +<sizeparam width="153" height="94" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="55" minY="0" maxY="188" /> +<infoparam name="Primitive component" value="F_Sink" /> +<TGConnectingPoint num="0" id="597" /> +<TGConnectingPoint num="1" id="598" /> +<TGConnectingPoint num="2" id="599" /> +<TGConnectingPoint num="3" id="600" /> +<TGConnectingPoint num="4" id="601" /> +<TGConnectingPoint num="5" id="602" /> +<TGConnectingPoint num="6" id="603" /> +<TGConnectingPoint num="7" id="604" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +<Attribute access="2" id="size_1" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="592" > +<father id="605" num="0" /> +<cdparam x="1523" y="397" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="140" minY="-13" maxY="81" /> +<infoparam name="Primitive port" value="Event sink_evt_in_1" /> +<TGConnectingPoint num="0" id="591" /> +<extraparam> +<Prop commName="sink_evt_in_1" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="594" > +<father id="605" num="1" /> +<cdparam x="1644" y="318" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="140" minY="-13" maxY="81" /> +<infoparam name="Primitive port" value="Request sink_req" /> +<TGConnectingPoint num="0" id="593" /> +<extraparam> +<Prop commName="sink_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="596" > +<father id="605" num="2" /> +<cdparam x="1523" y="341" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="140" minY="-13" maxY="81" /> +<infoparam name="Primitive port" value="Event sink_evt_in" /> +<TGConnectingPoint num="0" id="595" /> +<extraparam> +<Prop commName="sink_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="618" > +<father id="684" num="1" /> +<cdparam x="1535" y="205" /> +<sizeparam width="148" height="86" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="60" minY="0" maxY="196" /> +<infoparam name="Primitive component" value="X_Sink" /> +<TGConnectingPoint num="0" id="610" /> +<TGConnectingPoint num="1" id="611" /> +<TGConnectingPoint num="2" id="612" /> +<TGConnectingPoint num="3" id="613" /> +<TGConnectingPoint num="4" id="614" /> +<TGConnectingPoint num="5" id="615" /> +<TGConnectingPoint num="6" id="616" /> +<TGConnectingPoint num="7" id="617" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="607" > +<father id="618" num="0" /> +<cdparam x="1549" y="278" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="135" minY="-13" maxY="73" /> +<infoparam name="Primitive port" value="Request sink_req" /> +<TGConnectingPoint num="0" id="606" /> +<extraparam> +<Prop commName="sink_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="609" > +<father id="618" num="1" /> +<cdparam x="1522" y="237" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="135" minY="-13" maxY="73" /> +<infoparam name="Primitive port" value="Channel sink_ch_in" /> +<TGConnectingPoint num="0" id="608" /> +<extraparam> +<Prop commName="sink_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="true" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="sink_evt_in" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="637" > +<father id="684" num="2" /> +<cdparam x="1481" y="341" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="269" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="619" /> +<TGConnectingPoint num="1" id="620" /> +<TGConnectingPoint num="2" id="621" /> +<TGConnectingPoint num="3" id="622" /> +<TGConnectingPoint num="4" id="623" /> +<TGConnectingPoint num="5" id="624" /> +<TGConnectingPoint num="6" id="625" /> +<TGConnectingPoint num="7" id="626" /> +<TGConnectingPoint num="8" id="627" /> +<TGConnectingPoint num="9" id="628" /> +<TGConnectingPoint num="10" id="629" /> +<TGConnectingPoint num="11" id="630" /> +<TGConnectingPoint num="12" id="631" /> +<TGConnectingPoint num="13" id="632" /> +<TGConnectingPoint num="14" id="633" /> +<TGConnectingPoint num="15" id="634" /> +<TGConnectingPoint num="16" id="635" /> +<TGConnectingPoint num="17" id="636" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="656" > +<father id="684" num="3" /> +<cdparam x="1481" y="397" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="269" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="638" /> +<TGConnectingPoint num="1" id="639" /> +<TGConnectingPoint num="2" id="640" /> +<TGConnectingPoint num="3" id="641" /> +<TGConnectingPoint num="4" id="642" /> +<TGConnectingPoint num="5" id="643" /> +<TGConnectingPoint num="6" id="644" /> +<TGConnectingPoint num="7" id="645" /> +<TGConnectingPoint num="8" id="646" /> +<TGConnectingPoint num="9" id="647" /> +<TGConnectingPoint num="10" id="648" /> +<TGConnectingPoint num="11" id="649" /> +<TGConnectingPoint num="12" id="650" /> +<TGConnectingPoint num="13" id="651" /> +<TGConnectingPoint num="14" id="652" /> +<TGConnectingPoint num="15" id="653" /> +<TGConnectingPoint num="16" id="654" /> +<TGConnectingPoint num="17" id="655" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="675" > +<father id="684" num="4" /> +<cdparam x="1481" y="237" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="195" minY="-13" maxY="269" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="657" /> +<TGConnectingPoint num="1" id="658" /> +<TGConnectingPoint num="2" id="659" /> +<TGConnectingPoint num="3" id="660" /> +<TGConnectingPoint num="4" id="661" /> +<TGConnectingPoint num="5" id="662" /> +<TGConnectingPoint num="6" id="663" /> +<TGConnectingPoint num="7" id="664" /> +<TGConnectingPoint num="8" id="665" /> +<TGConnectingPoint num="9" id="666" /> +<TGConnectingPoint num="10" id="667" /> +<TGConnectingPoint num="11" id="668" /> +<TGConnectingPoint num="12" id="669" /> +<TGConnectingPoint num="13" id="670" /> +<TGConnectingPoint num="14" id="671" /> +<TGConnectingPoint num="15" id="672" /> +<TGConnectingPoint num="16" id="673" /> +<TGConnectingPoint num="17" id="674" /> +</SUBCOMPONENT> + +<COMPONENT type="1200" id="799" > +<cdparam x="1186" y="309" /> +<sizeparam width="211" height="254" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" /> +<infoparam name="Composite component" value="CWP_Q" /> +<TGConnectingPoint num="0" id="791" /> +<TGConnectingPoint num="1" id="792" /> +<TGConnectingPoint num="2" id="793" /> +<TGConnectingPoint num="3" id="794" /> +<TGConnectingPoint num="4" id="795" /> +<TGConnectingPoint num="5" id="796" /> +<TGConnectingPoint num="6" id="797" /> +<TGConnectingPoint num="7" id="798" /> +<extraparam> +<info hiddeni="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1201" id="703" > +<father id="799" num="0" /> +<cdparam x="1173" y="375" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="198" minY="-13" maxY="241" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="685" /> +<TGConnectingPoint num="1" id="686" /> +<TGConnectingPoint num="2" id="687" /> +<TGConnectingPoint num="3" id="688" /> +<TGConnectingPoint num="4" id="689" /> +<TGConnectingPoint num="5" id="690" /> +<TGConnectingPoint num="6" id="691" /> +<TGConnectingPoint num="7" id="692" /> +<TGConnectingPoint num="8" id="693" /> +<TGConnectingPoint num="9" id="694" /> +<TGConnectingPoint num="10" id="695" /> +<TGConnectingPoint num="11" id="696" /> +<TGConnectingPoint num="12" id="697" /> +<TGConnectingPoint num="13" id="698" /> +<TGConnectingPoint num="14" id="699" /> +<TGConnectingPoint num="15" id="700" /> +<TGConnectingPoint num="16" id="701" /> +<TGConnectingPoint num="17" id="702" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="718" > +<father id="799" num="1" /> +<cdparam x="1224" y="471" /> +<sizeparam width="138" height="82" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="73" minY="0" maxY="172" /> +<infoparam name="Primitive component" value="F_CWP_Q" /> +<TGConnectingPoint num="0" id="710" /> +<TGConnectingPoint num="1" id="711" /> +<TGConnectingPoint num="2" id="712" /> +<TGConnectingPoint num="3" id="713" /> +<TGConnectingPoint num="4" id="714" /> +<TGConnectingPoint num="5" id="715" /> +<TGConnectingPoint num="6" id="716" /> +<TGConnectingPoint num="7" id="717" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="705" > +<father id="718" num="0" /> +<cdparam x="1322" y="458" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="125" minY="-13" maxY="69" /> +<infoparam name="Primitive port" value="Request cwpQ_req" /> +<TGConnectingPoint num="0" id="704" /> +<extraparam> +<Prop commName="cwpQ_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="707" > +<father id="718" num="1" /> +<cdparam x="1211" y="487" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="125" minY="-13" maxY="69" /> +<infoparam name="Primitive port" value="Event cwpQ_evt_in" /> +<TGConnectingPoint num="0" id="706" /> +<extraparam> +<Prop commName="cwpQ_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="709" > +<father id="718" num="2" /> +<cdparam x="1349" y="510" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="125" minY="-13" maxY="69" /> +<infoparam name="Primitive port" value="Event cwpQ_evt_out" /> +<TGConnectingPoint num="0" id="708" /> +<extraparam> +<Prop commName="cwpQ_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="733" > +<father id="799" num="2" /> +<cdparam x="1220" y="353" /> +<sizeparam width="144" height="84" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="67" minY="0" maxY="170" /> +<infoparam name="Primitive component" value="X_CWP_Q" /> +<TGConnectingPoint num="0" id="725" /> +<TGConnectingPoint num="1" id="726" /> +<TGConnectingPoint num="2" id="727" /> +<TGConnectingPoint num="3" id="728" /> +<TGConnectingPoint num="4" id="729" /> +<TGConnectingPoint num="5" id="730" /> +<TGConnectingPoint num="6" id="731" /> +<TGConnectingPoint num="7" id="732" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="720" > +<father id="733" num="0" /> +<cdparam x="1236" y="424" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="71" /> +<infoparam name="Primitive port" value="Request cwpQ_req" /> +<TGConnectingPoint num="0" id="719" /> +<extraparam> +<Prop commName="cwpQ_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="722" > +<father id="733" num="1" /> +<cdparam x="1207" y="375" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="71" /> +<infoparam name="Primitive port" value="Channel cwpQ_ch_in" /> +<TGConnectingPoint num="0" id="721" /> +<extraparam> +<Prop commName="cwpQ_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="724" > +<father id="733" num="2" /> +<cdparam x="1351" y="380" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="71" /> +<infoparam name="Primitive port" value="Channel cwpQ_ch_out" /> +<TGConnectingPoint num="0" id="723" /> +<extraparam> +<Prop commName="cwpQ_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="752" > +<father id="799" num="3" /> +<cdparam x="1173" y="487" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="198" minY="-13" maxY="241" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="734" /> +<TGConnectingPoint num="1" id="735" /> +<TGConnectingPoint num="2" id="736" /> +<TGConnectingPoint num="3" id="737" /> +<TGConnectingPoint num="4" id="738" /> +<TGConnectingPoint num="5" id="739" /> +<TGConnectingPoint num="6" id="740" /> +<TGConnectingPoint num="7" id="741" /> +<TGConnectingPoint num="8" id="742" /> +<TGConnectingPoint num="9" id="743" /> +<TGConnectingPoint num="10" id="744" /> +<TGConnectingPoint num="11" id="745" /> +<TGConnectingPoint num="12" id="746" /> +<TGConnectingPoint num="13" id="747" /> +<TGConnectingPoint num="14" id="748" /> +<TGConnectingPoint num="15" id="749" /> +<TGConnectingPoint num="16" id="750" /> +<TGConnectingPoint num="17" id="751" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="771" > +<father id="799" num="4" /> +<cdparam x="1384" y="510" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="198" minY="-13" maxY="241" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="753" /> +<TGConnectingPoint num="1" id="754" /> +<TGConnectingPoint num="2" id="755" /> +<TGConnectingPoint num="3" id="756" /> +<TGConnectingPoint num="4" id="757" /> +<TGConnectingPoint num="5" id="758" /> +<TGConnectingPoint num="6" id="759" /> +<TGConnectingPoint num="7" id="760" /> +<TGConnectingPoint num="8" id="761" /> +<TGConnectingPoint num="9" id="762" /> +<TGConnectingPoint num="10" id="763" /> +<TGConnectingPoint num="11" id="764" /> +<TGConnectingPoint num="12" id="765" /> +<TGConnectingPoint num="13" id="766" /> +<TGConnectingPoint num="14" id="767" /> +<TGConnectingPoint num="15" id="768" /> +<TGConnectingPoint num="16" id="769" /> +<TGConnectingPoint num="17" id="770" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="790" > +<father id="799" num="5" /> +<cdparam x="1384" y="380" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="198" minY="-13" maxY="241" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="772" /> +<TGConnectingPoint num="1" id="773" /> +<TGConnectingPoint num="2" id="774" /> +<TGConnectingPoint num="3" id="775" /> +<TGConnectingPoint num="4" id="776" /> +<TGConnectingPoint num="5" id="777" /> +<TGConnectingPoint num="6" id="778" /> +<TGConnectingPoint num="7" id="779" /> +<TGConnectingPoint num="8" id="780" /> +<TGConnectingPoint num="9" id="781" /> +<TGConnectingPoint num="10" id="782" /> +<TGConnectingPoint num="11" id="783" /> +<TGConnectingPoint num="12" id="784" /> +<TGConnectingPoint num="13" id="785" /> +<TGConnectingPoint num="14" id="786" /> +<TGConnectingPoint num="15" id="787" /> +<TGConnectingPoint num="16" id="788" /> +<TGConnectingPoint num="17" id="789" /> +</SUBCOMPONENT> + +<COMPONENT type="1200" id="914" > +<cdparam x="1186" y="17" /> +<sizeparam width="214" height="280" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="1703" minY="0" maxY="564" /> +<infoparam name="Composite component" value="CWP_I" /> +<TGConnectingPoint num="0" id="906" /> +<TGConnectingPoint num="1" id="907" /> +<TGConnectingPoint num="2" id="908" /> +<TGConnectingPoint num="3" id="909" /> +<TGConnectingPoint num="4" id="910" /> +<TGConnectingPoint num="5" id="911" /> +<TGConnectingPoint num="6" id="912" /> +<TGConnectingPoint num="7" id="913" /> +<extraparam> +<info hiddeni="false" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1201" id="818" > +<father id="914" num="0" /> +<cdparam x="1387" y="111" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="201" minY="-13" maxY="267" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="800" /> +<TGConnectingPoint num="1" id="801" /> +<TGConnectingPoint num="2" id="802" /> +<TGConnectingPoint num="3" id="803" /> +<TGConnectingPoint num="4" id="804" /> +<TGConnectingPoint num="5" id="805" /> +<TGConnectingPoint num="6" id="806" /> +<TGConnectingPoint num="7" id="807" /> +<TGConnectingPoint num="8" id="808" /> +<TGConnectingPoint num="9" id="809" /> +<TGConnectingPoint num="10" id="810" /> +<TGConnectingPoint num="11" id="811" /> +<TGConnectingPoint num="12" id="812" /> +<TGConnectingPoint num="13" id="813" /> +<TGConnectingPoint num="14" id="814" /> +<TGConnectingPoint num="15" id="815" /> +<TGConnectingPoint num="16" id="816" /> +<TGConnectingPoint num="17" id="817" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="833" > +<father id="914" num="1" /> +<cdparam x="1222" y="194" /> +<sizeparam width="143" height="86" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="71" minY="0" maxY="194" /> +<infoparam name="Primitive component" value="F_CWP_I" /> +<TGConnectingPoint num="0" id="825" /> +<TGConnectingPoint num="1" id="826" /> +<TGConnectingPoint num="2" id="827" /> +<TGConnectingPoint num="3" id="828" /> +<TGConnectingPoint num="4" id="829" /> +<TGConnectingPoint num="5" id="830" /> +<TGConnectingPoint num="6" id="831" /> +<TGConnectingPoint num="7" id="832" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="820" > +<father id="833" num="0" /> +<cdparam x="1320" y="181" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="130" minY="-13" maxY="73" /> +<infoparam name="Primitive port" value="Request cwpI_req" /> +<TGConnectingPoint num="0" id="819" /> +<extraparam> +<Prop commName="cwpI_req" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="822" > +<father id="833" num="1" /> +<cdparam x="1209" y="249" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="130" minY="-13" maxY="73" /> +<infoparam name="Primitive port" value="Event cwpI_evt_in" /> +<TGConnectingPoint num="0" id="821" /> +<extraparam> +<Prop commName="cwpI_evt_in" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="824" > +<father id="833" num="2" /> +<cdparam x="1352" y="249" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="130" minY="-13" maxY="73" /> +<infoparam name="Primitive port" value="Event cwpI_evt_out" /> +<TGConnectingPoint num="0" id="823" /> +<extraparam> +<Prop commName="cwpI_evt_out" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="848" > +<father id="914" num="2" /> +<cdparam x="1220" y="62" /> +<sizeparam width="144" height="96" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="70" minY="0" maxY="184" /> +<infoparam name="Primitive component" value="X_CWP_I" /> +<TGConnectingPoint num="0" id="840" /> +<TGConnectingPoint num="1" id="841" /> +<TGConnectingPoint num="2" id="842" /> +<TGConnectingPoint num="3" id="843" /> +<TGConnectingPoint num="4" id="844" /> +<TGConnectingPoint num="5" id="845" /> +<TGConnectingPoint num="6" id="846" /> +<TGConnectingPoint num="7" id="847" /> +<extraparam> +<Data isAttacker="No" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="835" > +<father id="848" num="0" /> +<cdparam x="1244" y="145" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="83" /> +<infoparam name="Primitive port" value="Request cwpI_req" /> +<TGConnectingPoint num="0" id="834" /> +<extraparam> +<Prop commName="cwpI_req" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="837" > +<father id="848" num="1" /> +<cdparam x="1207" y="110" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="83" /> +<infoparam name="Primitive port" value="Channel cwpI_ch_in" /> +<TGConnectingPoint num="0" id="836" /> +<extraparam> +<Prop commName="cwpI_ch_in" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="839" > +<father id="848" num="2" /> +<cdparam x="1351" y="111" /> +<sizeparam width="26" height="26" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="131" minY="-13" maxY="83" /> +<infoparam name="Primitive port" value="Channel cwpI_ch_out" /> +<TGConnectingPoint num="0" id="838" /> +<extraparam> +<Prop commName="cwpI_ch_out" commType="0" origin="true" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" referenceReq="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="867" > +<father id="914" num="3" /> +<cdparam x="1173" y="249" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="201" minY="-13" maxY="267" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="849" /> +<TGConnectingPoint num="1" id="850" /> +<TGConnectingPoint num="2" id="851" /> +<TGConnectingPoint num="3" id="852" /> +<TGConnectingPoint num="4" id="853" /> +<TGConnectingPoint num="5" id="854" /> +<TGConnectingPoint num="6" id="855" /> +<TGConnectingPoint num="7" id="856" /> +<TGConnectingPoint num="8" id="857" /> +<TGConnectingPoint num="9" id="858" /> +<TGConnectingPoint num="10" id="859" /> +<TGConnectingPoint num="11" id="860" /> +<TGConnectingPoint num="12" id="861" /> +<TGConnectingPoint num="13" id="862" /> +<TGConnectingPoint num="14" id="863" /> +<TGConnectingPoint num="15" id="864" /> +<TGConnectingPoint num="16" id="865" /> +<TGConnectingPoint num="17" id="866" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="886" > +<father id="914" num="4" /> +<cdparam x="1173" y="110" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="201" minY="-13" maxY="267" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="868" /> +<TGConnectingPoint num="1" id="869" /> +<TGConnectingPoint num="2" id="870" /> +<TGConnectingPoint num="3" id="871" /> +<TGConnectingPoint num="4" id="872" /> +<TGConnectingPoint num="5" id="873" /> +<TGConnectingPoint num="6" id="874" /> +<TGConnectingPoint num="7" id="875" /> +<TGConnectingPoint num="8" id="876" /> +<TGConnectingPoint num="9" id="877" /> +<TGConnectingPoint num="10" id="878" /> +<TGConnectingPoint num="11" id="879" /> +<TGConnectingPoint num="12" id="880" /> +<TGConnectingPoint num="13" id="881" /> +<TGConnectingPoint num="14" id="882" /> +<TGConnectingPoint num="15" id="883" /> +<TGConnectingPoint num="16" id="884" /> +<TGConnectingPoint num="17" id="885" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="905" > +<father id="914" num="5" /> +<cdparam x="1387" y="249" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="201" minY="-13" maxY="267" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="887" /> +<TGConnectingPoint num="1" id="888" /> +<TGConnectingPoint num="2" id="889" /> +<TGConnectingPoint num="3" id="890" /> +<TGConnectingPoint num="4" id="891" /> +<TGConnectingPoint num="5" id="892" /> +<TGConnectingPoint num="6" id="893" /> +<TGConnectingPoint num="7" id="894" /> +<TGConnectingPoint num="8" id="895" /> +<TGConnectingPoint num="9" id="896" /> +<TGConnectingPoint num="10" id="897" /> +<TGConnectingPoint num="11" id="898" /> +<TGConnectingPoint num="12" id="899" /> +<TGConnectingPoint num="13" id="900" /> +<TGConnectingPoint num="14" id="901" /> +<TGConnectingPoint num="15" id="902" /> +<TGConnectingPoint num="16" id="903" /> +<TGConnectingPoint num="17" id="904" /> +</SUBCOMPONENT> + + +</TMLComponentTaskDiagramPanel> + +<TMLActivityDiagramPanel name="X_Source" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1013" id="918" > +<cdparam x="402" y="189" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="916" /> +<TGConnectingPoint num="1" id="917" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="915" > +<father id="918" num="0" /> +<cdparam x="417" y="209" /> +<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="size" /> +</SUBCOMPONENT> + +<COMPONENT type="1001" id="920" > +<cdparam x="397" y="342" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="919" /> +</COMPONENT> + +<COMPONENT type="1006" id="923" > +<cdparam x="340" y="270" /> +<sizeparam width="135" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="write channel" value="Source_ch_out(size)" /> +<TGConnectingPoint num="0" id="921" /> +<TGConnectingPoint num="1" id="922" /> +<accessibility /> +<extraparam> +<Data channelName="Source_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1034" id="926" > +<cdparam x="351" y="113" /> +<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read args" value="getReqArg (size)" /> +<TGConnectingPoint num="0" id="924" /> +<TGConnectingPoint num="1" id="925" /> +<extraparam> +<Data nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="928" > +<cdparam x="400" y="50" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="927" /> +</COMPONENT> + +<CONNECTOR type="115" id="929" > +<cdparam x="462" y="222" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="224" id="917" /> +<P2 x="407" y="265" id="921" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="930" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="70" id="927" /> +<P2 x="407" y="108" id="924" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="931" > +<cdparam x="402" y="256" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="295" id="922" /> +<P2 x="407" y="337" id="919" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="932" > +<cdparam x="407" y="155" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="138" id="925" /> +<P2 x="407" y="184" id="916" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="F_Source" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1001" id="934" > +<cdparam x="397" y="338" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="933" /> +</COMPONENT> + +<COMPONENT type="1008" id="937" > +<cdparam x="338" y="262" /> +<sizeparam width="139" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="Source_evt_out(size)" /> +<TGConnectingPoint num="0" id="935" /> +<TGConnectingPoint num="1" id="936" /> +<extraparam> +<Data eventName="Source_evt_out" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1007" id="940" > +<cdparam x="351" y="188" /> +<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send request" value="source_req(size)" /> +<TGConnectingPoint num="0" id="938" /> +<TGConnectingPoint num="1" id="939" /> +<extraparam> +<Data requestName="source_req" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1011" id="943" > +<cdparam x="370" y="116" /> +<sizeparam width="75" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="action state" value="size = 127" /> +<TGConnectingPoint num="0" id="941" /> +<TGConnectingPoint num="1" id="942" /> +</COMPONENT> + +<COMPONENT type="1000" id="945" > +<cdparam x="400" y="50" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="944" /> +</COMPONENT> + +<CONNECTOR type="115" id="946" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="70" id="944" /> +<P2 x="407" y="111" id="941" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="947" > +<cdparam x="407" y="141" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="141" id="942" /> +<P2 x="407" y="183" id="938" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="948" > +<cdparam x="407" y="213" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="213" id="939" /> +<P2 x="407" y="257" id="935" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="949" > +<cdparam x="407" y="287" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="287" id="936" /> +<P2 x="407" y="333" id="933" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="X_Symbol2ChipSeq" minX="10" maxX="495" minY="10" maxY="467" > +<COMPONENT type="1021" id="953" > +<cdparam x="393" y="289" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" /> +<infoparam name="execC" value="null" /> +<TGConnectingPoint num="0" id="951" /> +<TGConnectingPoint num="1" id="952" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="950" > +<father id="953" num="0" /> +<cdparam x="408" y="309" /> +<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="size" /> +</SUBCOMPONENT> + +<COMPONENT type="1009" id="956" > +<cdparam x="305" y="213" /> +<sizeparam width="187" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" /> +<infoparam name="read channel" value="symbol2ChipSeq_ch_in(size) " /> +<TGConnectingPoint num="0" id="954" /> +<TGConnectingPoint num="1" id="955" /> +<extraparam> +<Data channelName="symbol2ChipSeq_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="958" > +<cdparam x="388" y="447" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="957" /> +</COMPONENT> + +<COMPONENT type="1006" id="961" > +<cdparam x="302" y="375" /> +<sizeparam width="193" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" /> +<infoparam name="write channel" value="symbol2ChipSeq_ch_out(size)" /> +<TGConnectingPoint num="0" id="959" /> +<TGConnectingPoint num="1" id="960" /> +<extraparam> +<Data channelName="symbol2ChipSeq_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1034" id="964" > +<cdparam x="342" y="137" /> +<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" /> +<infoparam name="read args" value="getReqArg (size)" /> +<TGConnectingPoint num="0" id="962" /> +<TGConnectingPoint num="1" id="963" /> +<extraparam> +<Data nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="966" > +<cdparam x="391" y="74" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="495" minY="10" maxY="467" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="965" /> +</COMPONENT> + +<CONNECTOR type="115" id="967" > +<cdparam x="541" y="169" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="398" y="238" id="955" /> +<P2 x="398" y="284" id="951" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="968" > +<cdparam x="453" y="327" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="398" y="324" id="952" /> +<P2 x="398" y="370" id="959" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="969" > +<cdparam x="398" y="94" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="398" y="94" id="965" /> +<P2 x="398" y="132" id="962" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="970" > +<cdparam x="393" y="361" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="398" y="400" id="960" /> +<P2 x="398" y="442" id="957" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="971" > +<cdparam x="398" y="179" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="398" y="162" id="963" /> +<P2 x="398" y="208" id="954" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="F_Symbol2ChipSeq" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1010" id="974" > +<cdparam x="317" y="132" /> +<sizeparam width="156" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="bit2symbol_evt_in(size) " /> +<TGConnectingPoint num="0" id="972" /> +<TGConnectingPoint num="1" id="973" /> +<extraparam> +<Data eventName="bit2symbol_evt_in" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="976" > +<cdparam x="385" y="354" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="975" /> +</COMPONENT> + +<COMPONENT type="1008" id="979" > +<cdparam x="314" y="278" /> +<sizeparam width="162" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="bit2symbol_evt_out(size)" /> +<TGConnectingPoint num="0" id="977" /> +<TGConnectingPoint num="1" id="978" /> +<accessibility /> +<extraparam> +<Data eventName="bit2symbol_evt_out" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1007" id="982" > +<cdparam x="335" y="204" /> +<sizeparam width="120" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send request" value="bit2chip_req(size)" /> +<TGConnectingPoint num="0" id="980" /> +<TGConnectingPoint num="1" id="981" /> +<extraparam> +<Data requestName="bit2chip_req" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="984" > +<cdparam x="388" y="66" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="983" /> +</COMPONENT> + +<CONNECTOR type="115" id="985" > +<cdparam x="395" y="229" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="395" y="229" id="981" /> +<P2 x="395" y="273" id="977" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="986" > +<cdparam x="395" y="303" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="395" y="303" id="978" /> +<P2 x="395" y="349" id="975" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="987" > +<cdparam x="395" y="86" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="395" y="86" id="983" /> +<P2 x="395" y="127" id="972" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="988" > +<cdparam x="435" y="149" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="395" y="157" id="973" /> +<P2 x="395" y="199" id="980" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="X_Chip2Octet" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1021" id="992" > +<cdparam x="377" y="300" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="execC" value="null" /> +<TGConnectingPoint num="0" id="990" /> +<TGConnectingPoint num="1" id="991" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="989" > +<father id="992" num="0" /> +<cdparam x="392" y="320" /> +<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="size" /> +</SUBCOMPONENT> + +<COMPONENT type="1009" id="995" > +<cdparam x="306" y="215" /> +<sizeparam width="152" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read channel" value="chip2octet_ch_in(size) " /> +<TGConnectingPoint num="0" id="993" /> +<TGConnectingPoint num="1" id="994" /> +<extraparam> +<Data channelName="chip2octet_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="997" > +<cdparam x="372" y="449" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="996" /> +</COMPONENT> + +<COMPONENT type="1006" id="1000" > +<cdparam x="303" y="377" /> +<sizeparam width="158" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="write channel" value="chip2octet_ch_out(size)" /> +<TGConnectingPoint num="0" id="998" /> +<TGConnectingPoint num="1" id="999" /> +<extraparam> +<Data channelName="chip2octet_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1034" id="1003" > +<cdparam x="326" y="139" /> +<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read args" value="getReqArg (size)" /> +<TGConnectingPoint num="0" id="1001" /> +<TGConnectingPoint num="1" id="1002" /> +<extraparam> +<Data nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="1005" > +<cdparam x="375" y="76" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1004" /> +</COMPONENT> + +<CONNECTOR type="115" id="1006" > +<cdparam x="525" y="171" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="382" y="240" id="994" /> +<P2 x="382" y="295" id="990" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1007" > +<cdparam x="437" y="329" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="382" y="335" id="991" /> +<P2 x="382" y="372" id="998" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1008" > +<cdparam x="382" y="96" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="382" y="96" id="1004" /> +<P2 x="382" y="134" id="1001" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1009" > +<cdparam x="377" y="363" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="382" y="402" id="999" /> +<P2 x="382" y="444" id="996" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1010" > +<cdparam x="382" y="181" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="382" y="164" id="1002" /> +<P2 x="382" y="210" id="993" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="F_Chip2Octet" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1010" id="1013" > +<cdparam x="333" y="128" /> +<sizeparam width="156" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="chip2octet_evt_in(size) " /> +<TGConnectingPoint num="0" id="1011" /> +<TGConnectingPoint num="1" id="1012" /> +<extraparam> +<Data eventName="chip2octet_evt_in" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1015" > +<cdparam x="401" y="350" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1014" /> +</COMPONENT> + +<COMPONENT type="1008" id="1018" > +<cdparam x="330" y="274" /> +<sizeparam width="162" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="chip2octet_evt_out(size)" /> +<TGConnectingPoint num="0" id="1016" /> +<TGConnectingPoint num="1" id="1017" /> +<extraparam> +<Data eventName="chip2octet_evt_out" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1007" id="1021" > +<cdparam x="343" y="200" /> +<sizeparam width="137" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send request" value="chip2octet_req(size)" /> +<TGConnectingPoint num="0" id="1019" /> +<TGConnectingPoint num="1" id="1020" /> +<extraparam> +<Data requestName="chip2octet_req" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="1023" > +<cdparam x="404" y="62" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1022" /> +</COMPONENT> + +<CONNECTOR type="115" id="1024" > +<cdparam x="411" y="225" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="411" y="225" id="1020" /> +<P2 x="411" y="269" id="1016" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1025" > +<cdparam x="411" y="299" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="411" y="299" id="1017" /> +<P2 x="411" y="345" id="1014" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1026" > +<cdparam x="411" y="82" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="411" y="82" id="1022" /> +<P2 x="411" y="123" id="1011" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1027" > +<cdparam x="451" y="145" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="411" y="153" id="1012" /> +<P2 x="411" y="195" id="1019" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="X_CWL" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1013" id="1031" > +<cdparam x="402" y="277" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="1029" /> +<TGConnectingPoint num="1" id="1030" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="1028" > +<father id="1031" num="0" /> +<cdparam x="417" y="297" /> +<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="size" /> +</SUBCOMPONENT> + +<COMPONENT type="1009" id="1034" > +<cdparam x="355" y="196" /> +<sizeparam width="104" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read channel" value="cwl_ch_in(size) " /> +<TGConnectingPoint num="0" id="1032" /> +<TGConnectingPoint num="1" id="1033" /> +<extraparam> +<Data channelName="cwl_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1036" > +<cdparam x="397" y="430" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1035" /> +</COMPONENT> + +<COMPONENT type="1006" id="1039" > +<cdparam x="352" y="358" /> +<sizeparam width="110" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="write channel" value="cwl_ch_out(size)" /> +<TGConnectingPoint num="0" id="1037" /> +<TGConnectingPoint num="1" id="1038" /> +<extraparam> +<Data channelName="cwl_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1034" id="1042" > +<cdparam x="351" y="120" /> +<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read args" value="getReqArg (size)" /> +<TGConnectingPoint num="0" id="1040" /> +<TGConnectingPoint num="1" id="1041" /> +<extraparam> +<Data nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="1044" > +<cdparam x="400" y="57" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1043" /> +</COMPONENT> + +<CONNECTOR type="115" id="1045" > +<cdparam x="550" y="152" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="221" id="1033" /> +<P2 x="407" y="272" id="1029" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1046" > +<cdparam x="462" y="310" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="312" id="1030" /> +<P2 x="407" y="353" id="1037" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1047" > +<cdparam x="407" y="77" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="77" id="1043" /> +<P2 x="407" y="115" id="1040" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1048" > +<cdparam x="402" y="344" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="383" id="1038" /> +<P2 x="407" y="425" id="1035" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1049" > +<cdparam x="407" y="162" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="145" id="1041" /> +<P2 x="407" y="191" id="1032" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="F_CWL" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1010" id="1052" > +<cdparam x="360" y="134" /> +<sizeparam width="108" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="cwl_evt_in(size) " /> +<TGConnectingPoint num="0" id="1050" /> +<TGConnectingPoint num="1" id="1051" /> +<extraparam> +<Data eventName="cwl_evt_in" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1054" > +<cdparam x="407" y="397" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1053" /> +</COMPONENT> + +<COMPONENT type="1007" id="1057" > +<cdparam x="370" y="206" /> +<sizeparam width="89" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send request" value="cwl_req(size)" /> +<TGConnectingPoint num="0" id="1055" /> +<TGConnectingPoint num="1" id="1056" /> +<extraparam> +<Data requestName="cwl_req" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="1059" > +<cdparam x="407" y="68" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1058" /> +</COMPONENT> + +<COMPONENT type="1008" id="1062" > +<cdparam x="352" y="333" /> +<sizeparam width="128" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="cwl_evt_out_1(size)" /> +<TGConnectingPoint num="0" id="1060" /> +<TGConnectingPoint num="1" id="1061" /> +<extraparam> +<Data eventName="cwl_evt_out_1" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="1065" > +<cdparam x="357" y="280" /> +<sizeparam width="114" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="cwl_evt_out(size)" /> +<TGConnectingPoint num="0" id="1063" /> +<TGConnectingPoint num="1" id="1064" /> +<extraparam> +<Data eventName="cwl_evt_out" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="115" id="1066" > +<cdparam x="416" y="358" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="416" y="358" id="1061" /> +<P2 x="417" y="392" id="1053" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1067" > +<cdparam x="414" y="231" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="414" y="231" id="1056" /> +<P2 x="414" y="275" id="1063" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1068" > +<cdparam x="414" y="305" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="414" y="305" id="1064" /> +<P2 x="416" y="328" id="1060" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1069" > +<cdparam x="414" y="88" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="414" y="88" id="1058" /> +<P2 x="414" y="129" id="1050" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1070" > +<cdparam x="454" y="151" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="414" y="159" id="1051" /> +<P2 x="414" y="201" id="1055" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="X_Sink" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1013" id="1074" > +<cdparam x="445" y="298" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="1072" /> +<TGConnectingPoint num="1" id="1073" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="1071" > +<father id="1074" num="0" /> +<cdparam x="460" y="318" /> +<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="size" /> +</SUBCOMPONENT> + +<COMPONENT type="1009" id="1077" > +<cdparam x="395" y="217" /> +<sizeparam width="110" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read channel" value="sink_ch_in(size) " /> +<TGConnectingPoint num="0" id="1075" /> +<TGConnectingPoint num="1" id="1076" /> +<extraparam> +<Data channelName="sink_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1079" > +<cdparam x="440" y="384" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1078" /> +</COMPONENT> + +<COMPONENT type="1034" id="1082" > +<cdparam x="394" y="141" /> +<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read args" value="getReqArg (size)" /> +<TGConnectingPoint num="0" id="1080" /> +<TGConnectingPoint num="1" id="1081" /> +<extraparam> +<Data nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="1084" > +<cdparam x="443" y="78" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1083" /> +</COMPONENT> + +<CONNECTOR type="115" id="1085" > +<cdparam x="450" y="333" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="450" y="333" id="1073" /> +<P2 x="450" y="379" id="1078" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1086" > +<cdparam x="593" y="173" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="450" y="242" id="1076" /> +<P2 x="450" y="293" id="1072" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1087" > +<cdparam x="450" y="98" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="450" y="98" id="1083" /> +<P2 x="450" y="136" id="1080" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1088" > +<cdparam x="450" y="183" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="450" y="166" id="1081" /> +<P2 x="450" y="212" id="1075" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="F_Sink" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1001" id="1090" > +<cdparam x="396" y="355" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1089" /> +</COMPONENT> + +<COMPONENT type="1007" id="1093" > +<cdparam x="331" y="265" /> +<sizeparam width="150" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send request" value="sink_req(size + size_1)" /> +<TGConnectingPoint num="0" id="1091" /> +<TGConnectingPoint num="1" id="1092" /> +<extraparam> +<Data requestName="sink_req" nbOfParams="5" /> +<Param index="0" value="size + size_1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="1095" > +<cdparam x="400" y="73" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1094" /> +</COMPONENT> + +<COMPONENT type="1010" id="1098" > +<cdparam x="336" y="187" /> +<sizeparam width="142" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="sink_evt_in_1(size_1) " /> +<TGConnectingPoint num="0" id="1096" /> +<TGConnectingPoint num="1" id="1097" /> +<extraparam> +<Data eventName="sink_evt_in_1" nbOfParams="5" /> +<Param index="0" value="size_1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="1101" > +<cdparam x="350" y="139" /> +<sizeparam width="114" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="sink_evt_in(size) " /> +<TGConnectingPoint num="0" id="1099" /> +<TGConnectingPoint num="1" id="1100" /> +<extraparam> +<Data eventName="sink_evt_in" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="115" id="1102" > +<cdparam x="407" y="212" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="212" id="1097" /> +<P2 x="406" y="260" id="1091" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1103" > +<cdparam x="406" y="290" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="406" y="290" id="1092" /> +<P2 x="406" y="350" id="1089" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1104" > +<cdparam x="407" y="93" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="93" id="1094" /> +<P2 x="407" y="134" id="1099" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1105" > +<cdparam x="447" y="156" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="164" id="1100" /> +<P2 x="407" y="182" id="1096" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="X_CWP_Q" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1013" id="1109" > +<cdparam x="365" y="275" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="1107" /> +<TGConnectingPoint num="1" id="1108" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="1106" > +<father id="1109" num="0" /> +<cdparam x="380" y="295" /> +<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="size" /> +</SUBCOMPONENT> + +<COMPONENT type="1009" id="1112" > +<cdparam x="311" y="194" /> +<sizeparam width="118" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read channel" value="cwpQ_ch_in(size) " /> +<TGConnectingPoint num="0" id="1110" /> +<TGConnectingPoint num="1" id="1111" /> +<extraparam> +<Data channelName="cwpQ_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1114" > +<cdparam x="360" y="428" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1113" /> +</COMPONENT> + +<COMPONENT type="1006" id="1117" > +<cdparam x="308" y="356" /> +<sizeparam width="124" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="write channel" value="cwpQ_ch_out(size)" /> +<TGConnectingPoint num="0" id="1115" /> +<TGConnectingPoint num="1" id="1116" /> +<extraparam> +<Data channelName="cwpQ_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1034" id="1120" > +<cdparam x="314" y="118" /> +<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read args" value="getReqArg (size)" /> +<TGConnectingPoint num="0" id="1118" /> +<TGConnectingPoint num="1" id="1119" /> +<extraparam> +<Data nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="1122" > +<cdparam x="363" y="55" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1121" /> +</COMPONENT> + +<CONNECTOR type="115" id="1123" > +<cdparam x="513" y="150" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="370" y="219" id="1111" /> +<P2 x="370" y="270" id="1107" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1124" > +<cdparam x="425" y="308" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="370" y="310" id="1108" /> +<P2 x="370" y="351" id="1115" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1125" > +<cdparam x="370" y="75" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="370" y="75" id="1121" /> +<P2 x="370" y="113" id="1118" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1126" > +<cdparam x="365" y="342" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="370" y="381" id="1116" /> +<P2 x="370" y="423" id="1113" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1127" > +<cdparam x="370" y="160" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="370" y="143" id="1119" /> +<P2 x="370" y="189" id="1110" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="F_CWP_Q" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1010" id="1130" > +<cdparam x="342" y="117" /> +<sizeparam width="122" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="cwpQ_evt_in(size) " /> +<TGConnectingPoint num="0" id="1128" /> +<TGConnectingPoint num="1" id="1129" /> +<extraparam> +<Data eventName="cwpQ_evt_in" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1132" > +<cdparam x="393" y="339" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1131" /> +</COMPONENT> + +<COMPONENT type="1008" id="1135" > +<cdparam x="339" y="263" /> +<sizeparam width="128" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="cwpQ_evt_out(size)" /> +<TGConnectingPoint num="0" id="1133" /> +<TGConnectingPoint num="1" id="1134" /> +<extraparam> +<Data eventName="cwpQ_evt_out" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1007" id="1138" > +<cdparam x="352" y="189" /> +<sizeparam width="103" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send request" value="cwpQ_req(size)" /> +<TGConnectingPoint num="0" id="1136" /> +<TGConnectingPoint num="1" id="1137" /> +<extraparam> +<Data requestName="cwpQ_req" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="1140" > +<cdparam x="396" y="51" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1139" /> +</COMPONENT> + +<CONNECTOR type="115" id="1141" > +<cdparam x="403" y="214" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="403" y="214" id="1137" /> +<P2 x="403" y="258" id="1133" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1142" > +<cdparam x="403" y="288" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="403" y="288" id="1134" /> +<P2 x="403" y="334" id="1131" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1143" > +<cdparam x="403" y="71" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="403" y="71" id="1139" /> +<P2 x="403" y="112" id="1128" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1144" > +<cdparam x="443" y="134" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="403" y="142" id="1129" /> +<P2 x="403" y="184" id="1136" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="X_CWP_I" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1013" id="1148" > +<cdparam x="369" y="290" /> +<sizeparam width="10" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="execI" value="null" /> +<TGConnectingPoint num="0" id="1146" /> +<TGConnectingPoint num="1" id="1147" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="1145" > +<father id="1148" num="0" /> +<cdparam x="384" y="310" /> +<sizeparam width="23" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="30" minY="10" maxY="30" /> +<infoparam name="value of the delay" value="size" /> +</SUBCOMPONENT> + +<COMPONENT type="1009" id="1151" > +<cdparam x="318" y="209" /> +<sizeparam width="112" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read channel" value="cwpI_ch_in(size) " /> +<TGConnectingPoint num="0" id="1149" /> +<TGConnectingPoint num="1" id="1150" /> +<extraparam> +<Data channelName="cwpI_ch_in" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1153" > +<cdparam x="364" y="443" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1152" /> +</COMPONENT> + +<COMPONENT type="1006" id="1156" > +<cdparam x="315" y="371" /> +<sizeparam width="118" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="write channel" value="cwpI_ch_out(size)" /> +<TGConnectingPoint num="0" id="1154" /> +<TGConnectingPoint num="1" id="1155" /> +<extraparam> +<Data channelName="cwpI_ch_out" nbOfSamples="size" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1034" id="1159" > +<cdparam x="318" y="133" /> +<sizeparam width="113" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read args" value="getReqArg (size)" /> +<TGConnectingPoint num="0" id="1157" /> +<TGConnectingPoint num="1" id="1158" /> +<extraparam> +<Data nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="1161" > +<cdparam x="367" y="70" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1160" /> +</COMPONENT> + +<CONNECTOR type="115" id="1162" > +<cdparam x="517" y="165" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="374" y="234" id="1150" /> +<P2 x="374" y="285" id="1146" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1163" > +<cdparam x="429" y="323" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="374" y="325" id="1147" /> +<P2 x="374" y="366" id="1154" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1164" > +<cdparam x="374" y="90" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="374" y="90" id="1160" /> +<P2 x="374" y="128" id="1157" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1165" > +<cdparam x="369" y="357" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="374" y="396" id="1155" /> +<P2 x="374" y="438" id="1152" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1166" > +<cdparam x="374" y="175" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="374" y="158" id="1158" /> +<P2 x="374" y="204" id="1149" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="F_CWP_I" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1010" id="1169" > +<cdparam x="321" y="132" /> +<sizeparam width="116" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="cwpI_evt_in(size) " /> +<TGConnectingPoint num="0" id="1167" /> +<TGConnectingPoint num="1" id="1168" /> +<extraparam> +<Data eventName="cwpI_evt_in" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="1171" > +<cdparam x="369" y="354" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1170" /> +</COMPONENT> + +<COMPONENT type="1008" id="1174" > +<cdparam x="318" y="278" /> +<sizeparam width="122" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="cwpI_evt_out(size)" /> +<TGConnectingPoint num="0" id="1172" /> +<TGConnectingPoint num="1" id="1173" /> +<extraparam> +<Data eventName="cwpI_evt_out" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1007" id="1177" > +<cdparam x="331" y="204" /> +<sizeparam width="97" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send request" value="cwpI_req(size)" /> +<TGConnectingPoint num="0" id="1175" /> +<TGConnectingPoint num="1" id="1176" /> +<extraparam> +<Data requestName="cwpI_req" nbOfParams="5" /> +<Param index="0" value="size" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="1179" > +<cdparam x="372" y="66" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1178" /> +</COMPONENT> + +<CONNECTOR type="115" id="1180" > +<cdparam x="379" y="229" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="379" y="229" id="1176" /> +<P2 x="379" y="273" id="1172" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1181" > +<cdparam x="379" y="303" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="379" y="303" id="1173" /> +<P2 x="379" y="349" id="1170" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1182" > +<cdparam x="379" y="86" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="379" y="86" id="1178" /> +<P2 x="379" y="127" id="1167" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1183" > +<cdparam x="419" y="149" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="379" y="157" id="1168" /> +<P2 x="379" y="199" id="1175" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +</Modeling> + + + + +<Modeling type="TML CP" nameTab="CP_Memory_Copy" > +<CommunicationPatternDiagramPanel name="MainCP" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1507" id="1185" > +<cdparam x="390" y="343" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1184" /> +</COMPONENT> + +<COMPONENT type="1510" id="1189" > +<cdparam x="141" y="185" /> +<sizeparam width="164" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="for loop" value="for(i=counter;i>0;i = i-1)" /> +<TGConnectingPoint num="0" id="1186" /> +<TGConnectingPoint num="1" id="1187" /> +<TGConnectingPoint num="2" id="1188" /> +<extraparam> +<Data init="i=counter" condition="i>0" increment="i = i-1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="1206" > +<cdparam x="559" y="109" /> +<sizeparam width="354" height="39" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value="Some parameters are mapping dependent: +- samplesToLoad (depends on the application model) +- the source and destination addresses +" /> +<TGConnectingPoint num="0" id="1190" /> +<TGConnectingPoint num="1" id="1191" /> +<TGConnectingPoint num="2" id="1192" /> +<TGConnectingPoint num="3" id="1193" /> +<TGConnectingPoint num="4" id="1194" /> +<TGConnectingPoint num="5" id="1195" /> +<TGConnectingPoint num="6" id="1196" /> +<TGConnectingPoint num="7" id="1197" /> +<TGConnectingPoint num="8" id="1198" /> +<TGConnectingPoint num="9" id="1199" /> +<TGConnectingPoint num="10" id="1200" /> +<TGConnectingPoint num="11" id="1201" /> +<TGConnectingPoint num="12" id="1202" /> +<TGConnectingPoint num="13" id="1203" /> +<TGConnectingPoint num="14" id="1204" /> +<TGConnectingPoint num="15" id="1205" /> +<extraparam> +<Line value="Some parameters are mapping dependent:" /> +<Line value="- samplesToLoad (depends on the application model)" /> +<Line value="- the source and destination addresses" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1505" id="1217" > +<cdparam x="161" y="108" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Configure" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="1207" /> +<TGConnectingPoint num="1" id="1208" /> +<TGConnectingPoint num="2" id="1209" /> +<TGConnectingPoint num="3" id="1210" /> +<TGConnectingPoint num="4" id="1211" /> +<TGConnectingPoint num="5" id="1212" /> +<TGConnectingPoint num="6" id="1213" /> +<TGConnectingPoint num="7" id="1214" /> +<TGConnectingPoint num="8" id="1215" /> +<TGConnectingPoint num="9" id="1216" /> +</COMPONENT> + +<COMPONENT type="1507" id="1219" > +<cdparam x="213" y="280" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1218" /> +</COMPONENT> + +<COMPONENT type="1505" id="1230" > +<cdparam x="338" y="245" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TransferCycle" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="1220" /> +<TGConnectingPoint num="1" id="1221" /> +<TGConnectingPoint num="2" id="1222" /> +<TGConnectingPoint num="3" id="1223" /> +<TGConnectingPoint num="4" id="1224" /> +<TGConnectingPoint num="5" id="1225" /> +<TGConnectingPoint num="6" id="1226" /> +<TGConnectingPoint num="7" id="1227" /> +<TGConnectingPoint num="8" id="1228" /> +<TGConnectingPoint num="9" id="1229" /> +</COMPONENT> + +<COMPONENT type="1506" id="1232" > +<cdparam x="216" y="37" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1231" /> +</COMPONENT> + +<CONNECTOR type="1501" id="1234" > +<cdparam x="78" y="272" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="305" y="199" id="1187" /> +<P2 x="400" y="240" id="1220" /> +<Point x="400" y="199" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1233" > +<father id="1234" num="0" /> +<cdparam x="400" y="199" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="1501" id="1235" > +<cdparam x="13" y="363" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="400" y="285" id="1221" /> +<P2 x="400" y="338" id="1184" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="1236" > +<cdparam x="118" y="312" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="223" y="210" id="1188" /> +<P2 x="223" y="275" id="1218" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="1237" > +<cdparam x="221" y="23" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="223" y="57" id="1231" /> +<P2 x="223" y="103" id="1207" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="1238" > +<cdparam x="118" y="129" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="223" y="148" id="1208" /> +<P2 x="223" y="180" id="1186" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</CommunicationPatternDiagramPanel> + +<TMLSDPanel name="Configure" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1522" id="1313" > +<cdparam x="220" y="55" /> +<sizeparam width="10" height="750" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CPU_Controller" value="Controller instance name" /> +<TGConnectingPoint num="0" id="1239" /> +<TGConnectingPoint num="1" id="1240" /> +<TGConnectingPoint num="2" id="1241" /> +<TGConnectingPoint num="3" id="1242" /> +<TGConnectingPoint num="4" id="1243" /> +<TGConnectingPoint num="5" id="1244" /> +<TGConnectingPoint num="6" id="1245" /> +<TGConnectingPoint num="7" id="1246" /> +<TGConnectingPoint num="8" id="1247" /> +<TGConnectingPoint num="9" id="1248" /> +<TGConnectingPoint num="10" id="1249" /> +<TGConnectingPoint num="11" id="1250" /> +<TGConnectingPoint num="12" id="1251" /> +<TGConnectingPoint num="13" id="1252" /> +<TGConnectingPoint num="14" id="1253" /> +<TGConnectingPoint num="15" id="1254" /> +<TGConnectingPoint num="16" id="1255" /> +<TGConnectingPoint num="17" id="1256" /> +<TGConnectingPoint num="18" id="1257" /> +<TGConnectingPoint num="19" id="1258" /> +<TGConnectingPoint num="20" id="1259" /> +<TGConnectingPoint num="21" id="1260" /> +<TGConnectingPoint num="22" id="1261" /> +<TGConnectingPoint num="23" id="1262" /> +<TGConnectingPoint num="24" id="1263" /> +<TGConnectingPoint num="25" id="1264" /> +<TGConnectingPoint num="26" id="1265" /> +<TGConnectingPoint num="27" id="1266" /> +<TGConnectingPoint num="28" id="1267" /> +<TGConnectingPoint num="29" id="1268" /> +<TGConnectingPoint num="30" id="1269" /> +<TGConnectingPoint num="31" id="1270" /> +<TGConnectingPoint num="32" id="1271" /> +<TGConnectingPoint num="33" id="1272" /> +<TGConnectingPoint num="34" id="1273" /> +<TGConnectingPoint num="35" id="1274" /> +<TGConnectingPoint num="36" id="1275" /> +<TGConnectingPoint num="37" id="1276" /> +<TGConnectingPoint num="38" id="1277" /> +<TGConnectingPoint num="39" id="1278" /> +<TGConnectingPoint num="40" id="1279" /> +<TGConnectingPoint num="41" id="1280" /> +<TGConnectingPoint num="42" id="1281" /> +<TGConnectingPoint num="43" id="1282" /> +<TGConnectingPoint num="44" id="1283" /> +<TGConnectingPoint num="45" id="1284" /> +<TGConnectingPoint num="46" id="1285" /> +<TGConnectingPoint num="47" id="1286" /> +<TGConnectingPoint num="48" id="1287" /> +<TGConnectingPoint num="49" id="1288" /> +<TGConnectingPoint num="50" id="1289" /> +<TGConnectingPoint num="51" id="1290" /> +<TGConnectingPoint num="52" id="1291" /> +<TGConnectingPoint num="53" id="1292" /> +<TGConnectingPoint num="54" id="1293" /> +<TGConnectingPoint num="55" id="1294" /> +<TGConnectingPoint num="56" id="1295" /> +<TGConnectingPoint num="57" id="1296" /> +<TGConnectingPoint num="58" id="1297" /> +<TGConnectingPoint num="59" id="1298" /> +<TGConnectingPoint num="60" id="1299" /> +<TGConnectingPoint num="61" id="1300" /> +<TGConnectingPoint num="62" id="1301" /> +<TGConnectingPoint num="63" id="1302" /> +<TGConnectingPoint num="64" id="1303" /> +<TGConnectingPoint num="65" id="1304" /> +<TGConnectingPoint num="66" id="1305" /> +<TGConnectingPoint num="67" id="1306" /> +<TGConnectingPoint num="68" id="1307" /> +<TGConnectingPoint num="69" id="1308" /> +<TGConnectingPoint num="70" id="1309" /> +<TGConnectingPoint num="71" id="1310" /> +<TGConnectingPoint num="72" id="1311" /> +<TGConnectingPoint num="73" id="1312" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + + +</TMLSDPanel> + +<TMLSDPanel name="TransferCycle" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1520" id="1363" > +<cdparam x="1079" y="58" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Dst_Storage_Instance" value="Storage instance name" /> +<TGConnectingPoint num="0" id="1314" /> +<TGConnectingPoint num="1" id="1315" /> +<TGConnectingPoint num="2" id="1316" /> +<TGConnectingPoint num="3" id="1317" /> +<TGConnectingPoint num="4" id="1318" /> +<TGConnectingPoint num="5" id="1319" /> +<TGConnectingPoint num="6" id="1320" /> +<TGConnectingPoint num="7" id="1321" /> +<TGConnectingPoint num="8" id="1322" /> +<TGConnectingPoint num="9" id="1323" /> +<TGConnectingPoint num="10" id="1324" /> +<TGConnectingPoint num="11" id="1325" /> +<TGConnectingPoint num="12" id="1326" /> +<TGConnectingPoint num="13" id="1327" /> +<TGConnectingPoint num="14" id="1328" /> +<TGConnectingPoint num="15" id="1329" /> +<TGConnectingPoint num="16" id="1330" /> +<TGConnectingPoint num="17" id="1331" /> +<TGConnectingPoint num="18" id="1332" /> +<TGConnectingPoint num="19" id="1333" /> +<TGConnectingPoint num="20" id="1334" /> +<TGConnectingPoint num="21" id="1335" /> +<TGConnectingPoint num="22" id="1336" /> +<TGConnectingPoint num="23" id="1337" /> +<TGConnectingPoint num="24" id="1338" /> +<TGConnectingPoint num="25" id="1339" /> +<TGConnectingPoint num="26" id="1340" /> +<TGConnectingPoint num="27" id="1341" /> +<TGConnectingPoint num="28" id="1342" /> +<TGConnectingPoint num="29" id="1343" /> +<TGConnectingPoint num="30" id="1344" /> +<TGConnectingPoint num="31" id="1345" /> +<TGConnectingPoint num="32" id="1346" /> +<TGConnectingPoint num="33" id="1347" /> +<TGConnectingPoint num="34" id="1348" /> +<TGConnectingPoint num="35" id="1349" /> +<TGConnectingPoint num="36" id="1350" /> +<TGConnectingPoint num="37" id="1351" /> +<TGConnectingPoint num="38" id="1352" /> +<TGConnectingPoint num="39" id="1353" /> +<TGConnectingPoint num="40" id="1354" /> +<TGConnectingPoint num="41" id="1355" /> +<TGConnectingPoint num="42" id="1356" /> +<TGConnectingPoint num="43" id="1357" /> +<TGConnectingPoint num="44" id="1358" /> +<TGConnectingPoint num="45" id="1359" /> +<TGConnectingPoint num="46" id="1360" /> +<TGConnectingPoint num="47" id="1361" /> +<TGConnectingPoint num="48" id="1362" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="numData" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="1413" > +<cdparam x="832" y="58" /> +<sizeparam width="10" height="501" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance2" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="1364" /> +<TGConnectingPoint num="1" id="1365" /> +<TGConnectingPoint num="2" id="1366" /> +<TGConnectingPoint num="3" id="1367" /> +<TGConnectingPoint num="4" id="1368" /> +<TGConnectingPoint num="5" id="1369" /> +<TGConnectingPoint num="6" id="1370" /> +<TGConnectingPoint num="7" id="1371" /> +<TGConnectingPoint num="8" id="1372" /> +<TGConnectingPoint num="9" id="1373" /> +<TGConnectingPoint num="10" id="1374" /> +<TGConnectingPoint num="11" id="1375" /> +<TGConnectingPoint num="12" id="1376" /> +<TGConnectingPoint num="13" id="1377" /> +<TGConnectingPoint num="14" id="1378" /> +<TGConnectingPoint num="15" id="1379" /> +<TGConnectingPoint num="16" id="1380" /> +<TGConnectingPoint num="17" id="1381" /> +<TGConnectingPoint num="18" id="1382" /> +<TGConnectingPoint num="19" id="1383" /> +<TGConnectingPoint num="20" id="1384" /> +<TGConnectingPoint num="21" id="1385" /> +<TGConnectingPoint num="22" id="1386" /> +<TGConnectingPoint num="23" id="1387" /> +<TGConnectingPoint num="24" id="1388" /> +<TGConnectingPoint num="25" id="1389" /> +<TGConnectingPoint num="26" id="1390" /> +<TGConnectingPoint num="27" id="1391" /> +<TGConnectingPoint num="28" id="1392" /> +<TGConnectingPoint num="29" id="1393" /> +<TGConnectingPoint num="30" id="1394" /> +<TGConnectingPoint num="31" id="1395" /> +<TGConnectingPoint num="32" id="1396" /> +<TGConnectingPoint num="33" id="1397" /> +<TGConnectingPoint num="34" id="1398" /> +<TGConnectingPoint num="35" id="1399" /> +<TGConnectingPoint num="36" id="1400" /> +<TGConnectingPoint num="37" id="1401" /> +<TGConnectingPoint num="38" id="1402" /> +<TGConnectingPoint num="39" id="1403" /> +<TGConnectingPoint num="40" id="1404" /> +<TGConnectingPoint num="41" id="1405" /> +<TGConnectingPoint num="42" id="1406" /> +<TGConnectingPoint num="43" id="1407" /> +<TGConnectingPoint num="44" id="1408" /> +<TGConnectingPoint num="45" id="1409" /> +<TGConnectingPoint num="46" id="1410" /> +<TGConnectingPoint num="47" id="1411" /> +<TGConnectingPoint num="48" id="1412" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="numData" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="1463" > +<cdparam x="367" y="58" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance_1" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="1414" /> +<TGConnectingPoint num="1" id="1415" /> +<TGConnectingPoint num="2" id="1416" /> +<TGConnectingPoint num="3" id="1417" /> +<TGConnectingPoint num="4" id="1418" /> +<TGConnectingPoint num="5" id="1419" /> +<TGConnectingPoint num="6" id="1420" /> +<TGConnectingPoint num="7" id="1421" /> +<TGConnectingPoint num="8" id="1422" /> +<TGConnectingPoint num="9" id="1423" /> +<TGConnectingPoint num="10" id="1424" /> +<TGConnectingPoint num="11" id="1425" /> +<TGConnectingPoint num="12" id="1426" /> +<TGConnectingPoint num="13" id="1427" /> +<TGConnectingPoint num="14" id="1428" /> +<TGConnectingPoint num="15" id="1429" /> +<TGConnectingPoint num="16" id="1430" /> +<TGConnectingPoint num="17" id="1431" /> +<TGConnectingPoint num="18" id="1432" /> +<TGConnectingPoint num="19" id="1433" /> +<TGConnectingPoint num="20" id="1434" /> +<TGConnectingPoint num="21" id="1435" /> +<TGConnectingPoint num="22" id="1436" /> +<TGConnectingPoint num="23" id="1437" /> +<TGConnectingPoint num="24" id="1438" /> +<TGConnectingPoint num="25" id="1439" /> +<TGConnectingPoint num="26" id="1440" /> +<TGConnectingPoint num="27" id="1441" /> +<TGConnectingPoint num="28" id="1442" /> +<TGConnectingPoint num="29" id="1443" /> +<TGConnectingPoint num="30" id="1444" /> +<TGConnectingPoint num="31" id="1445" /> +<TGConnectingPoint num="32" id="1446" /> +<TGConnectingPoint num="33" id="1447" /> +<TGConnectingPoint num="34" id="1448" /> +<TGConnectingPoint num="35" id="1449" /> +<TGConnectingPoint num="36" id="1450" /> +<TGConnectingPoint num="37" id="1451" /> +<TGConnectingPoint num="38" id="1452" /> +<TGConnectingPoint num="39" id="1453" /> +<TGConnectingPoint num="40" id="1454" /> +<TGConnectingPoint num="41" id="1455" /> +<TGConnectingPoint num="42" id="1456" /> +<TGConnectingPoint num="43" id="1457" /> +<TGConnectingPoint num="44" id="1458" /> +<TGConnectingPoint num="45" id="1459" /> +<TGConnectingPoint num="46" id="1460" /> +<TGConnectingPoint num="47" id="1461" /> +<TGConnectingPoint num="48" id="1462" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="numData" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1520" id="1513" > +<cdparam x="608" y="58" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Src_Storage_Instance" value="Storage instance name" /> +<TGConnectingPoint num="0" id="1464" /> +<TGConnectingPoint num="1" id="1465" /> +<TGConnectingPoint num="2" id="1466" /> +<TGConnectingPoint num="3" id="1467" /> +<TGConnectingPoint num="4" id="1468" /> +<TGConnectingPoint num="5" id="1469" /> +<TGConnectingPoint num="6" id="1470" /> +<TGConnectingPoint num="7" id="1471" /> +<TGConnectingPoint num="8" id="1472" /> +<TGConnectingPoint num="9" id="1473" /> +<TGConnectingPoint num="10" id="1474" /> +<TGConnectingPoint num="11" id="1475" /> +<TGConnectingPoint num="12" id="1476" /> +<TGConnectingPoint num="13" id="1477" /> +<TGConnectingPoint num="14" id="1478" /> +<TGConnectingPoint num="15" id="1479" /> +<TGConnectingPoint num="16" id="1480" /> +<TGConnectingPoint num="17" id="1481" /> +<TGConnectingPoint num="18" id="1482" /> +<TGConnectingPoint num="19" id="1483" /> +<TGConnectingPoint num="20" id="1484" /> +<TGConnectingPoint num="21" id="1485" /> +<TGConnectingPoint num="22" id="1486" /> +<TGConnectingPoint num="23" id="1487" /> +<TGConnectingPoint num="24" id="1488" /> +<TGConnectingPoint num="25" id="1489" /> +<TGConnectingPoint num="26" id="1490" /> +<TGConnectingPoint num="27" id="1491" /> +<TGConnectingPoint num="28" id="1492" /> +<TGConnectingPoint num="29" id="1493" /> +<TGConnectingPoint num="30" id="1494" /> +<TGConnectingPoint num="31" id="1495" /> +<TGConnectingPoint num="32" id="1496" /> +<TGConnectingPoint num="33" id="1497" /> +<TGConnectingPoint num="34" id="1498" /> +<TGConnectingPoint num="35" id="1499" /> +<TGConnectingPoint num="36" id="1500" /> +<TGConnectingPoint num="37" id="1501" /> +<TGConnectingPoint num="38" id="1502" /> +<TGConnectingPoint num="39" id="1503" /> +<TGConnectingPoint num="40" id="1504" /> +<TGConnectingPoint num="41" id="1505" /> +<TGConnectingPoint num="42" id="1506" /> +<TGConnectingPoint num="43" id="1507" /> +<TGConnectingPoint num="44" id="1508" /> +<TGConnectingPoint num="45" id="1509" /> +<TGConnectingPoint num="46" id="1510" /> +<TGConnectingPoint num="47" id="1511" /> +<TGConnectingPoint num="48" id="1512" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="numData" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="1563" > +<cdparam x="136" y="58" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CPU_Controller" value="Controller instance name" /> +<TGConnectingPoint num="0" id="1514" /> +<TGConnectingPoint num="1" id="1515" /> +<TGConnectingPoint num="2" id="1516" /> +<TGConnectingPoint num="3" id="1517" /> +<TGConnectingPoint num="4" id="1518" /> +<TGConnectingPoint num="5" id="1519" /> +<TGConnectingPoint num="6" id="1520" /> +<TGConnectingPoint num="7" id="1521" /> +<TGConnectingPoint num="8" id="1522" /> +<TGConnectingPoint num="9" id="1523" /> +<TGConnectingPoint num="10" id="1524" /> +<TGConnectingPoint num="11" id="1525" /> +<TGConnectingPoint num="12" id="1526" /> +<TGConnectingPoint num="13" id="1527" /> +<TGConnectingPoint num="14" id="1528" /> +<TGConnectingPoint num="15" id="1529" /> +<TGConnectingPoint num="16" id="1530" /> +<TGConnectingPoint num="17" id="1531" /> +<TGConnectingPoint num="18" id="1532" /> +<TGConnectingPoint num="19" id="1533" /> +<TGConnectingPoint num="20" id="1534" /> +<TGConnectingPoint num="21" id="1535" /> +<TGConnectingPoint num="22" id="1536" /> +<TGConnectingPoint num="23" id="1537" /> +<TGConnectingPoint num="24" id="1538" /> +<TGConnectingPoint num="25" id="1539" /> +<TGConnectingPoint num="26" id="1540" /> +<TGConnectingPoint num="27" id="1541" /> +<TGConnectingPoint num="28" id="1542" /> +<TGConnectingPoint num="29" id="1543" /> +<TGConnectingPoint num="30" id="1544" /> +<TGConnectingPoint num="31" id="1545" /> +<TGConnectingPoint num="32" id="1546" /> +<TGConnectingPoint num="33" id="1547" /> +<TGConnectingPoint num="34" id="1548" /> +<TGConnectingPoint num="35" id="1549" /> +<TGConnectingPoint num="36" id="1550" /> +<TGConnectingPoint num="37" id="1551" /> +<TGConnectingPoint num="38" id="1552" /> +<TGConnectingPoint num="39" id="1553" /> +<TGConnectingPoint num="40" id="1554" /> +<TGConnectingPoint num="41" id="1555" /> +<TGConnectingPoint num="42" id="1556" /> +<TGConnectingPoint num="43" id="1557" /> +<TGConnectingPoint num="44" id="1558" /> +<TGConnectingPoint num="45" id="1559" /> +<TGConnectingPoint num="46" id="1560" /> +<TGConnectingPoint num="47" id="1561" /> +<TGConnectingPoint num="48" id="1562" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="numData" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="1523" id="1564" > +<cdparam x="846" y="309" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Write" value="Write(destinationAddress, numData)" /> +<P1 x="837" y="208" id="1378" /> +<P2 x="1084" y="208" id="1328" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="destinationAddress" /> +<Param index="1" id="numData" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="1565" > +<cdparam x="141" y="278" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Write" value="Write(destinationAddress, numData)" /> +<P1 x="141" y="178" id="1525" /> +<P2 x="837" y="178" id="1375" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="destinationAddress" /> +<Param index="1" id="numData" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="1566" > +<cdparam x="372" y="118" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Read" value="Read(sourceAddress, numData)" /> +<P1 x="372" y="148" id="1422" /> +<P2 x="613" y="148" id="1472" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="sourceAddress" /> +<Param index="1" id="numData" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="1567" > +<cdparam x="158" y="87" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Read" value="Read(sourceAddress, numData)" /> +<P1 x="141" y="118" id="1519" /> +<P2 x="372" y="118" id="1419" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="sourceAddress" /> +<Param index="1" id="numData" /> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +</Modeling> + + + + +<Modeling type="TML CP" nameTab="DMA_transfer" > +<CommunicationPatternDiagramPanel name="MainCP" minX="10" maxX="583" minY="10" maxY="412" > +<COMPONENT type="1507" id="1569" > +<cdparam x="381" y="392" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1568" /> +</COMPONENT> + +<COMPONENT type="1510" id="1573" > +<cdparam x="107" y="220" /> +<sizeparam width="164" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" /> +<infoparam name="for loop" value="for(i=counter;i>0;i = i-1)" /> +<TGConnectingPoint num="0" id="1570" /> +<TGConnectingPoint num="1" id="1571" /> +<TGConnectingPoint num="2" id="1572" /> +<extraparam> +<Data init="i=counter" condition="i>0" increment="i = i-1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="301" id="1590" > +<cdparam x="270" y="67" /> +<sizeparam width="313" height="75" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" /> +<infoparam name="UML Note" value="Some parameters are mapping dependent: +- counter (depends on the application) +- the source and destination addresses + +This model supposes that the DMA informs the +CPU via interrupts (no polling messages) +" /> +<TGConnectingPoint num="0" id="1574" /> +<TGConnectingPoint num="1" id="1575" /> +<TGConnectingPoint num="2" id="1576" /> +<TGConnectingPoint num="3" id="1577" /> +<TGConnectingPoint num="4" id="1578" /> +<TGConnectingPoint num="5" id="1579" /> +<TGConnectingPoint num="6" id="1580" /> +<TGConnectingPoint num="7" id="1581" /> +<TGConnectingPoint num="8" id="1582" /> +<TGConnectingPoint num="9" id="1583" /> +<TGConnectingPoint num="10" id="1584" /> +<TGConnectingPoint num="11" id="1585" /> +<TGConnectingPoint num="12" id="1586" /> +<TGConnectingPoint num="13" id="1587" /> +<TGConnectingPoint num="14" id="1588" /> +<TGConnectingPoint num="15" id="1589" /> +<extraparam> +<Line value="Some parameters are mapping dependent:" /> +<Line value="- counter (depends on the application)" /> +<Line value="- the source and destination addresses" /> +<Line value="" /> +<Line value="This model supposes that the DMA informs the" /> +<Line value="CPU via interrupts (no polling messages)" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1507" id="1592" > +<cdparam x="179" y="374" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1591" /> +</COMPONENT> + +<COMPONENT type="1505" id="1603" > +<cdparam x="329" y="300" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" /> +<infoparam name="DMACycle_SD" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="1593" /> +<TGConnectingPoint num="1" id="1594" /> +<TGConnectingPoint num="2" id="1595" /> +<TGConnectingPoint num="3" id="1596" /> +<TGConnectingPoint num="4" id="1597" /> +<TGConnectingPoint num="5" id="1598" /> +<TGConnectingPoint num="6" id="1599" /> +<TGConnectingPoint num="7" id="1600" /> +<TGConnectingPoint num="8" id="1601" /> +<TGConnectingPoint num="9" id="1602" /> +</COMPONENT> + +<COMPONENT type="1505" id="1614" > +<cdparam x="127" y="299" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" /> +<infoparam name="TerminateDMA_SD" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="1604" /> +<TGConnectingPoint num="1" id="1605" /> +<TGConnectingPoint num="2" id="1606" /> +<TGConnectingPoint num="3" id="1607" /> +<TGConnectingPoint num="4" id="1608" /> +<TGConnectingPoint num="5" id="1609" /> +<TGConnectingPoint num="6" id="1610" /> +<TGConnectingPoint num="7" id="1611" /> +<TGConnectingPoint num="8" id="1612" /> +<TGConnectingPoint num="9" id="1613" /> +</COMPONENT> + +<COMPONENT type="1505" id="1625" > +<cdparam x="127" y="129" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" /> +<infoparam name="ConfigureDMA_SD" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="1615" /> +<TGConnectingPoint num="1" id="1616" /> +<TGConnectingPoint num="2" id="1617" /> +<TGConnectingPoint num="3" id="1618" /> +<TGConnectingPoint num="4" id="1619" /> +<TGConnectingPoint num="5" id="1620" /> +<TGConnectingPoint num="6" id="1621" /> +<TGConnectingPoint num="7" id="1622" /> +<TGConnectingPoint num="8" id="1623" /> +<TGConnectingPoint num="9" id="1624" /> +</COMPONENT> + +<COMPONENT type="1506" id="1627" > +<cdparam x="182" y="65" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="583" minY="10" maxY="412" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1626" /> +</COMPONENT> + +<CONNECTOR type="1501" id="1628" > +<cdparam x="189" y="339" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="189" y="339" id="1605" /> +<P2 x="189" y="369" id="1591" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="1629" > +<cdparam x="10" y="379" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="391" y="340" id="1594" /> +<P2 x="391" y="387" id="1568" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="1631" > +<cdparam x="10" y="293" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="271" y="234" id="1571" /> +<P2 x="391" y="295" id="1593" /> +<Point x="391" y="234" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1630" > +<father id="1631" num="0" /> +<cdparam x="391" y="234" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="1501" id="1632" > +<cdparam x="37" y="293" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="189" y="245" id="1572" /> +<P2 x="189" y="294" id="1604" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="1633" > +<cdparam x="10" y="124" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="189" y="169" id="1616" /> +<P2 x="189" y="215" id="1570" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="1634" > +<cdparam x="187" y="61" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="189" y="85" id="1626" /> +<P2 x="189" y="124" id="1615" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</CommunicationPatternDiagramPanel> + +<TMLSDPanel name="ConfigureDMA_SD" minX="10" maxX="926" minY="10" maxY="556" > +<COMPONENT type="1521" id="1684" > +<cdparam x="466" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="926" minY="10" maxY="556" /> +<infoparam name="Transfer_Instance_1" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="1635" /> +<TGConnectingPoint num="1" id="1636" /> +<TGConnectingPoint num="2" id="1637" /> +<TGConnectingPoint num="3" id="1638" /> +<TGConnectingPoint num="4" id="1639" /> +<TGConnectingPoint num="5" id="1640" /> +<TGConnectingPoint num="6" id="1641" /> +<TGConnectingPoint num="7" id="1642" /> +<TGConnectingPoint num="8" id="1643" /> +<TGConnectingPoint num="9" id="1644" /> +<TGConnectingPoint num="10" id="1645" /> +<TGConnectingPoint num="11" id="1646" /> +<TGConnectingPoint num="12" id="1647" /> +<TGConnectingPoint num="13" id="1648" /> +<TGConnectingPoint num="14" id="1649" /> +<TGConnectingPoint num="15" id="1650" /> +<TGConnectingPoint num="16" id="1651" /> +<TGConnectingPoint num="17" id="1652" /> +<TGConnectingPoint num="18" id="1653" /> +<TGConnectingPoint num="19" id="1654" /> +<TGConnectingPoint num="20" id="1655" /> +<TGConnectingPoint num="21" id="1656" /> +<TGConnectingPoint num="22" id="1657" /> +<TGConnectingPoint num="23" id="1658" /> +<TGConnectingPoint num="24" id="1659" /> +<TGConnectingPoint num="25" id="1660" /> +<TGConnectingPoint num="26" id="1661" /> +<TGConnectingPoint num="27" id="1662" /> +<TGConnectingPoint num="28" id="1663" /> +<TGConnectingPoint num="29" id="1664" /> +<TGConnectingPoint num="30" id="1665" /> +<TGConnectingPoint num="31" id="1666" /> +<TGConnectingPoint num="32" id="1667" /> +<TGConnectingPoint num="33" id="1668" /> +<TGConnectingPoint num="34" id="1669" /> +<TGConnectingPoint num="35" id="1670" /> +<TGConnectingPoint num="36" id="1671" /> +<TGConnectingPoint num="37" id="1672" /> +<TGConnectingPoint num="38" id="1673" /> +<TGConnectingPoint num="39" id="1674" /> +<TGConnectingPoint num="40" id="1675" /> +<TGConnectingPoint num="41" id="1676" /> +<TGConnectingPoint num="42" id="1677" /> +<TGConnectingPoint num="43" id="1678" /> +<TGConnectingPoint num="44" id="1679" /> +<TGConnectingPoint num="45" id="1680" /> +<TGConnectingPoint num="46" id="1681" /> +<TGConnectingPoint num="47" id="1682" /> +<TGConnectingPoint num="48" id="1683" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="1734" > +<cdparam x="867" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="926" minY="10" maxY="556" /> +<infoparam name="DMA_Controller_1" value="Controller instance name" /> +<TGConnectingPoint num="0" id="1685" /> +<TGConnectingPoint num="1" id="1686" /> +<TGConnectingPoint num="2" id="1687" /> +<TGConnectingPoint num="3" id="1688" /> +<TGConnectingPoint num="4" id="1689" /> +<TGConnectingPoint num="5" id="1690" /> +<TGConnectingPoint num="6" id="1691" /> +<TGConnectingPoint num="7" id="1692" /> +<TGConnectingPoint num="8" id="1693" /> +<TGConnectingPoint num="9" id="1694" /> +<TGConnectingPoint num="10" id="1695" /> +<TGConnectingPoint num="11" id="1696" /> +<TGConnectingPoint num="12" id="1697" /> +<TGConnectingPoint num="13" id="1698" /> +<TGConnectingPoint num="14" id="1699" /> +<TGConnectingPoint num="15" id="1700" /> +<TGConnectingPoint num="16" id="1701" /> +<TGConnectingPoint num="17" id="1702" /> +<TGConnectingPoint num="18" id="1703" /> +<TGConnectingPoint num="19" id="1704" /> +<TGConnectingPoint num="20" id="1705" /> +<TGConnectingPoint num="21" id="1706" /> +<TGConnectingPoint num="22" id="1707" /> +<TGConnectingPoint num="23" id="1708" /> +<TGConnectingPoint num="24" id="1709" /> +<TGConnectingPoint num="25" id="1710" /> +<TGConnectingPoint num="26" id="1711" /> +<TGConnectingPoint num="27" id="1712" /> +<TGConnectingPoint num="28" id="1713" /> +<TGConnectingPoint num="29" id="1714" /> +<TGConnectingPoint num="30" id="1715" /> +<TGConnectingPoint num="31" id="1716" /> +<TGConnectingPoint num="32" id="1717" /> +<TGConnectingPoint num="33" id="1718" /> +<TGConnectingPoint num="34" id="1719" /> +<TGConnectingPoint num="35" id="1720" /> +<TGConnectingPoint num="36" id="1721" /> +<TGConnectingPoint num="37" id="1722" /> +<TGConnectingPoint num="38" id="1723" /> +<TGConnectingPoint num="39" id="1724" /> +<TGConnectingPoint num="40" id="1725" /> +<TGConnectingPoint num="41" id="1726" /> +<TGConnectingPoint num="42" id="1727" /> +<TGConnectingPoint num="43" id="1728" /> +<TGConnectingPoint num="44" id="1729" /> +<TGConnectingPoint num="45" id="1730" /> +<TGConnectingPoint num="46" id="1731" /> +<TGConnectingPoint num="47" id="1732" /> +<TGConnectingPoint num="48" id="1733" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="1784" > +<cdparam x="58" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="926" minY="10" maxY="556" /> +<infoparam name="CPU_Controller_1" value="Controller instance name" /> +<TGConnectingPoint num="0" id="1735" /> +<TGConnectingPoint num="1" id="1736" /> +<TGConnectingPoint num="2" id="1737" /> +<TGConnectingPoint num="3" id="1738" /> +<TGConnectingPoint num="4" id="1739" /> +<TGConnectingPoint num="5" id="1740" /> +<TGConnectingPoint num="6" id="1741" /> +<TGConnectingPoint num="7" id="1742" /> +<TGConnectingPoint num="8" id="1743" /> +<TGConnectingPoint num="9" id="1744" /> +<TGConnectingPoint num="10" id="1745" /> +<TGConnectingPoint num="11" id="1746" /> +<TGConnectingPoint num="12" id="1747" /> +<TGConnectingPoint num="13" id="1748" /> +<TGConnectingPoint num="14" id="1749" /> +<TGConnectingPoint num="15" id="1750" /> +<TGConnectingPoint num="16" id="1751" /> +<TGConnectingPoint num="17" id="1752" /> +<TGConnectingPoint num="18" id="1753" /> +<TGConnectingPoint num="19" id="1754" /> +<TGConnectingPoint num="20" id="1755" /> +<TGConnectingPoint num="21" id="1756" /> +<TGConnectingPoint num="22" id="1757" /> +<TGConnectingPoint num="23" id="1758" /> +<TGConnectingPoint num="24" id="1759" /> +<TGConnectingPoint num="25" id="1760" /> +<TGConnectingPoint num="26" id="1761" /> +<TGConnectingPoint num="27" id="1762" /> +<TGConnectingPoint num="28" id="1763" /> +<TGConnectingPoint num="29" id="1764" /> +<TGConnectingPoint num="30" id="1765" /> +<TGConnectingPoint num="31" id="1766" /> +<TGConnectingPoint num="32" id="1767" /> +<TGConnectingPoint num="33" id="1768" /> +<TGConnectingPoint num="34" id="1769" /> +<TGConnectingPoint num="35" id="1770" /> +<TGConnectingPoint num="36" id="1771" /> +<TGConnectingPoint num="37" id="1772" /> +<TGConnectingPoint num="38" id="1773" /> +<TGConnectingPoint num="39" id="1774" /> +<TGConnectingPoint num="40" id="1775" /> +<TGConnectingPoint num="41" id="1776" /> +<TGConnectingPoint num="42" id="1777" /> +<TGConnectingPoint num="43" id="1778" /> +<TGConnectingPoint num="44" id="1779" /> +<TGConnectingPoint num="45" id="1780" /> +<TGConnectingPoint num="46" id="1781" /> +<TGConnectingPoint num="47" id="1782" /> +<TGConnectingPoint num="48" id="1783" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="1523" id="1785" > +<cdparam x="391" y="166" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferRequest" value="TransferRequest(counter, sourceAddress, destinationAddress)" /> +<P1 x="471" y="126" id="1641" /> +<P2 x="872" y="126" id="1691" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="counter" /> +<Param index="1" id="sourceAddress" /> +<Param index="2" id="destinationAddress" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="1786" > +<cdparam x="172" y="136" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferRequest" value="TransferRequest(counter, sourceAddress, destinationAddress)" /> +<P1 x="63" y="96" id="1738" /> +<P2 x="471" y="96" id="1638" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="counter" /> +<Param index="1" id="sourceAddress" /> +<Param index="2" id="destinationAddress" /> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +<TMLSDPanel name="DMACycle_SD" minX="10" maxX="912" minY="10" maxY="540" > +<COMPONENT type="1520" id="1836" > +<cdparam x="832" y="39" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="912" minY="10" maxY="540" /> +<infoparam name="Dst_Storage_Instance_1" value="Storage instance name" /> +<TGConnectingPoint num="0" id="1787" /> +<TGConnectingPoint num="1" id="1788" /> +<TGConnectingPoint num="2" id="1789" /> +<TGConnectingPoint num="3" id="1790" /> +<TGConnectingPoint num="4" id="1791" /> +<TGConnectingPoint num="5" id="1792" /> +<TGConnectingPoint num="6" id="1793" /> +<TGConnectingPoint num="7" id="1794" /> +<TGConnectingPoint num="8" id="1795" /> +<TGConnectingPoint num="9" id="1796" /> +<TGConnectingPoint num="10" id="1797" /> +<TGConnectingPoint num="11" id="1798" /> +<TGConnectingPoint num="12" id="1799" /> +<TGConnectingPoint num="13" id="1800" /> +<TGConnectingPoint num="14" id="1801" /> +<TGConnectingPoint num="15" id="1802" /> +<TGConnectingPoint num="16" id="1803" /> +<TGConnectingPoint num="17" id="1804" /> +<TGConnectingPoint num="18" id="1805" /> +<TGConnectingPoint num="19" id="1806" /> +<TGConnectingPoint num="20" id="1807" /> +<TGConnectingPoint num="21" id="1808" /> +<TGConnectingPoint num="22" id="1809" /> +<TGConnectingPoint num="23" id="1810" /> +<TGConnectingPoint num="24" id="1811" /> +<TGConnectingPoint num="25" id="1812" /> +<TGConnectingPoint num="26" id="1813" /> +<TGConnectingPoint num="27" id="1814" /> +<TGConnectingPoint num="28" id="1815" /> +<TGConnectingPoint num="29" id="1816" /> +<TGConnectingPoint num="30" id="1817" /> +<TGConnectingPoint num="31" id="1818" /> +<TGConnectingPoint num="32" id="1819" /> +<TGConnectingPoint num="33" id="1820" /> +<TGConnectingPoint num="34" id="1821" /> +<TGConnectingPoint num="35" id="1822" /> +<TGConnectingPoint num="36" id="1823" /> +<TGConnectingPoint num="37" id="1824" /> +<TGConnectingPoint num="38" id="1825" /> +<TGConnectingPoint num="39" id="1826" /> +<TGConnectingPoint num="40" id="1827" /> +<TGConnectingPoint num="41" id="1828" /> +<TGConnectingPoint num="42" id="1829" /> +<TGConnectingPoint num="43" id="1830" /> +<TGConnectingPoint num="44" id="1831" /> +<TGConnectingPoint num="45" id="1832" /> +<TGConnectingPoint num="46" id="1833" /> +<TGConnectingPoint num="47" id="1834" /> +<TGConnectingPoint num="48" id="1835" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="1886" > +<cdparam x="624" y="39" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="912" minY="10" maxY="540" /> +<infoparam name="Transfer_Instance_3" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="1837" /> +<TGConnectingPoint num="1" id="1838" /> +<TGConnectingPoint num="2" id="1839" /> +<TGConnectingPoint num="3" id="1840" /> +<TGConnectingPoint num="4" id="1841" /> +<TGConnectingPoint num="5" id="1842" /> +<TGConnectingPoint num="6" id="1843" /> +<TGConnectingPoint num="7" id="1844" /> +<TGConnectingPoint num="8" id="1845" /> +<TGConnectingPoint num="9" id="1846" /> +<TGConnectingPoint num="10" id="1847" /> +<TGConnectingPoint num="11" id="1848" /> +<TGConnectingPoint num="12" id="1849" /> +<TGConnectingPoint num="13" id="1850" /> +<TGConnectingPoint num="14" id="1851" /> +<TGConnectingPoint num="15" id="1852" /> +<TGConnectingPoint num="16" id="1853" /> +<TGConnectingPoint num="17" id="1854" /> +<TGConnectingPoint num="18" id="1855" /> +<TGConnectingPoint num="19" id="1856" /> +<TGConnectingPoint num="20" id="1857" /> +<TGConnectingPoint num="21" id="1858" /> +<TGConnectingPoint num="22" id="1859" /> +<TGConnectingPoint num="23" id="1860" /> +<TGConnectingPoint num="24" id="1861" /> +<TGConnectingPoint num="25" id="1862" /> +<TGConnectingPoint num="26" id="1863" /> +<TGConnectingPoint num="27" id="1864" /> +<TGConnectingPoint num="28" id="1865" /> +<TGConnectingPoint num="29" id="1866" /> +<TGConnectingPoint num="30" id="1867" /> +<TGConnectingPoint num="31" id="1868" /> +<TGConnectingPoint num="32" id="1869" /> +<TGConnectingPoint num="33" id="1870" /> +<TGConnectingPoint num="34" id="1871" /> +<TGConnectingPoint num="35" id="1872" /> +<TGConnectingPoint num="36" id="1873" /> +<TGConnectingPoint num="37" id="1874" /> +<TGConnectingPoint num="38" id="1875" /> +<TGConnectingPoint num="39" id="1876" /> +<TGConnectingPoint num="40" id="1877" /> +<TGConnectingPoint num="41" id="1878" /> +<TGConnectingPoint num="42" id="1879" /> +<TGConnectingPoint num="43" id="1880" /> +<TGConnectingPoint num="44" id="1881" /> +<TGConnectingPoint num="45" id="1882" /> +<TGConnectingPoint num="46" id="1883" /> +<TGConnectingPoint num="47" id="1884" /> +<TGConnectingPoint num="48" id="1885" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="1936" > +<cdparam x="249" y="39" /> +<sizeparam width="10" height="501" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="912" minY="10" maxY="540" /> +<infoparam name="Transfer_Instance_2" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="1887" /> +<TGConnectingPoint num="1" id="1888" /> +<TGConnectingPoint num="2" id="1889" /> +<TGConnectingPoint num="3" id="1890" /> +<TGConnectingPoint num="4" id="1891" /> +<TGConnectingPoint num="5" id="1892" /> +<TGConnectingPoint num="6" id="1893" /> +<TGConnectingPoint num="7" id="1894" /> +<TGConnectingPoint num="8" id="1895" /> +<TGConnectingPoint num="9" id="1896" /> +<TGConnectingPoint num="10" id="1897" /> +<TGConnectingPoint num="11" id="1898" /> +<TGConnectingPoint num="12" id="1899" /> +<TGConnectingPoint num="13" id="1900" /> +<TGConnectingPoint num="14" id="1901" /> +<TGConnectingPoint num="15" id="1902" /> +<TGConnectingPoint num="16" id="1903" /> +<TGConnectingPoint num="17" id="1904" /> +<TGConnectingPoint num="18" id="1905" /> +<TGConnectingPoint num="19" id="1906" /> +<TGConnectingPoint num="20" id="1907" /> +<TGConnectingPoint num="21" id="1908" /> +<TGConnectingPoint num="22" id="1909" /> +<TGConnectingPoint num="23" id="1910" /> +<TGConnectingPoint num="24" id="1911" /> +<TGConnectingPoint num="25" id="1912" /> +<TGConnectingPoint num="26" id="1913" /> +<TGConnectingPoint num="27" id="1914" /> +<TGConnectingPoint num="28" id="1915" /> +<TGConnectingPoint num="29" id="1916" /> +<TGConnectingPoint num="30" id="1917" /> +<TGConnectingPoint num="31" id="1918" /> +<TGConnectingPoint num="32" id="1919" /> +<TGConnectingPoint num="33" id="1920" /> +<TGConnectingPoint num="34" id="1921" /> +<TGConnectingPoint num="35" id="1922" /> +<TGConnectingPoint num="36" id="1923" /> +<TGConnectingPoint num="37" id="1924" /> +<TGConnectingPoint num="38" id="1925" /> +<TGConnectingPoint num="39" id="1926" /> +<TGConnectingPoint num="40" id="1927" /> +<TGConnectingPoint num="41" id="1928" /> +<TGConnectingPoint num="42" id="1929" /> +<TGConnectingPoint num="43" id="1930" /> +<TGConnectingPoint num="44" id="1931" /> +<TGConnectingPoint num="45" id="1932" /> +<TGConnectingPoint num="46" id="1933" /> +<TGConnectingPoint num="47" id="1934" /> +<TGConnectingPoint num="48" id="1935" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1520" id="1986" > +<cdparam x="454" y="39" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="912" minY="10" maxY="540" /> +<infoparam name="Src_Storage_Instance_1" value="Storage instance name" /> +<TGConnectingPoint num="0" id="1937" /> +<TGConnectingPoint num="1" id="1938" /> +<TGConnectingPoint num="2" id="1939" /> +<TGConnectingPoint num="3" id="1940" /> +<TGConnectingPoint num="4" id="1941" /> +<TGConnectingPoint num="5" id="1942" /> +<TGConnectingPoint num="6" id="1943" /> +<TGConnectingPoint num="7" id="1944" /> +<TGConnectingPoint num="8" id="1945" /> +<TGConnectingPoint num="9" id="1946" /> +<TGConnectingPoint num="10" id="1947" /> +<TGConnectingPoint num="11" id="1948" /> +<TGConnectingPoint num="12" id="1949" /> +<TGConnectingPoint num="13" id="1950" /> +<TGConnectingPoint num="14" id="1951" /> +<TGConnectingPoint num="15" id="1952" /> +<TGConnectingPoint num="16" id="1953" /> +<TGConnectingPoint num="17" id="1954" /> +<TGConnectingPoint num="18" id="1955" /> +<TGConnectingPoint num="19" id="1956" /> +<TGConnectingPoint num="20" id="1957" /> +<TGConnectingPoint num="21" id="1958" /> +<TGConnectingPoint num="22" id="1959" /> +<TGConnectingPoint num="23" id="1960" /> +<TGConnectingPoint num="24" id="1961" /> +<TGConnectingPoint num="25" id="1962" /> +<TGConnectingPoint num="26" id="1963" /> +<TGConnectingPoint num="27" id="1964" /> +<TGConnectingPoint num="28" id="1965" /> +<TGConnectingPoint num="29" id="1966" /> +<TGConnectingPoint num="30" id="1967" /> +<TGConnectingPoint num="31" id="1968" /> +<TGConnectingPoint num="32" id="1969" /> +<TGConnectingPoint num="33" id="1970" /> +<TGConnectingPoint num="34" id="1971" /> +<TGConnectingPoint num="35" id="1972" /> +<TGConnectingPoint num="36" id="1973" /> +<TGConnectingPoint num="37" id="1974" /> +<TGConnectingPoint num="38" id="1975" /> +<TGConnectingPoint num="39" id="1976" /> +<TGConnectingPoint num="40" id="1977" /> +<TGConnectingPoint num="41" id="1978" /> +<TGConnectingPoint num="42" id="1979" /> +<TGConnectingPoint num="43" id="1980" /> +<TGConnectingPoint num="44" id="1981" /> +<TGConnectingPoint num="45" id="1982" /> +<TGConnectingPoint num="46" id="1983" /> +<TGConnectingPoint num="47" id="1984" /> +<TGConnectingPoint num="48" id="1985" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="2045" > +<cdparam x="79" y="39" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="912" minY="10" maxY="540" /> +<infoparam name="DMA_Controller_1" value="Controller instance name" /> +<TGConnectingPoint num="0" id="1996" /> +<TGConnectingPoint num="1" id="1997" /> +<TGConnectingPoint num="2" id="1998" /> +<TGConnectingPoint num="3" id="1999" /> +<TGConnectingPoint num="4" id="2000" /> +<TGConnectingPoint num="5" id="2001" /> +<TGConnectingPoint num="6" id="2002" /> +<TGConnectingPoint num="7" id="2003" /> +<TGConnectingPoint num="8" id="2004" /> +<TGConnectingPoint num="9" id="2005" /> +<TGConnectingPoint num="10" id="2006" /> +<TGConnectingPoint num="11" id="2007" /> +<TGConnectingPoint num="12" id="2008" /> +<TGConnectingPoint num="13" id="2009" /> +<TGConnectingPoint num="14" id="2010" /> +<TGConnectingPoint num="15" id="2011" /> +<TGConnectingPoint num="16" id="2012" /> +<TGConnectingPoint num="17" id="2013" /> +<TGConnectingPoint num="18" id="2014" /> +<TGConnectingPoint num="19" id="2015" /> +<TGConnectingPoint num="20" id="2016" /> +<TGConnectingPoint num="21" id="2017" /> +<TGConnectingPoint num="22" id="2018" /> +<TGConnectingPoint num="23" id="2019" /> +<TGConnectingPoint num="24" id="2020" /> +<TGConnectingPoint num="25" id="2021" /> +<TGConnectingPoint num="26" id="2022" /> +<TGConnectingPoint num="27" id="2023" /> +<TGConnectingPoint num="28" id="2024" /> +<TGConnectingPoint num="29" id="2025" /> +<TGConnectingPoint num="30" id="2026" /> +<TGConnectingPoint num="31" id="2027" /> +<TGConnectingPoint num="32" id="2028" /> +<TGConnectingPoint num="33" id="2029" /> +<TGConnectingPoint num="34" id="2030" /> +<TGConnectingPoint num="35" id="2031" /> +<TGConnectingPoint num="36" id="2032" /> +<TGConnectingPoint num="37" id="2033" /> +<TGConnectingPoint num="38" id="2034" /> +<TGConnectingPoint num="39" id="2035" /> +<TGConnectingPoint num="40" id="2036" /> +<TGConnectingPoint num="41" id="2037" /> +<TGConnectingPoint num="42" id="2038" /> +<TGConnectingPoint num="43" id="2039" /> +<TGConnectingPoint num="44" id="2040" /> +<TGConnectingPoint num="45" id="2041" /> +<TGConnectingPoint num="46" id="2042" /> +<TGConnectingPoint num="47" id="2043" /> +<TGConnectingPoint num="48" id="2044" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1524" id="1995" > +<father id="2045" num="0" /> +<cdparam x="84" y="180" /> +<sizeparam width="146" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" /> +<infoparam name="action state" value="counter = counter - 1" /> +<TGConnectingPoint num="0" id="1987" /> +<TGConnectingPoint num="1" id="1988" /> +<TGConnectingPoint num="2" id="1989" /> +<TGConnectingPoint num="3" id="1990" /> +<TGConnectingPoint num="4" id="1991" /> +<TGConnectingPoint num="5" id="1992" /> +<TGConnectingPoint num="6" id="1993" /> +<TGConnectingPoint num="7" id="1994" /> +</SUBCOMPONENT> + +<CONNECTOR type="1523" id="2046" > +<cdparam x="784" y="229" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Write" value="Write(destinationAddress, size)" /> +<P1 x="629" y="189" id="1851" /> +<P2 x="837" y="189" id="1801" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="destinationAddress" /> +<Param index="1" id="size" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="2047" > +<cdparam x="84" y="199" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Write" value="Write(destinationAddress, size)" /> +<P1 x="84" y="159" id="2007" /> +<P2 x="629" y="159" id="1848" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="destinationAddress" /> +<Param index="1" id="size" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="2048" > +<cdparam x="315" y="109" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Read" value="Read(sourceAddress, size)" /> +<P1 x="254" y="129" id="1895" /> +<P2 x="459" y="129" id="1945" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="sourceAddress" /> +<Param index="1" id="size" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="2049" > +<cdparam x="101" y="78" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Read" value="Read(sourceAddress, size)" /> +<P1 x="84" y="99" id="2001" /> +<P2 x="254" y="99" id="1892" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="sourceAddress" /> +<Param index="1" id="size" /> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +<TMLSDPanel name="TerminateDMA_SD" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1521" id="2099" > +<cdparam x="332" y="52" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance_4" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="2050" /> +<TGConnectingPoint num="1" id="2051" /> +<TGConnectingPoint num="2" id="2052" /> +<TGConnectingPoint num="3" id="2053" /> +<TGConnectingPoint num="4" id="2054" /> +<TGConnectingPoint num="5" id="2055" /> +<TGConnectingPoint num="6" id="2056" /> +<TGConnectingPoint num="7" id="2057" /> +<TGConnectingPoint num="8" id="2058" /> +<TGConnectingPoint num="9" id="2059" /> +<TGConnectingPoint num="10" id="2060" /> +<TGConnectingPoint num="11" id="2061" /> +<TGConnectingPoint num="12" id="2062" /> +<TGConnectingPoint num="13" id="2063" /> +<TGConnectingPoint num="14" id="2064" /> +<TGConnectingPoint num="15" id="2065" /> +<TGConnectingPoint num="16" id="2066" /> +<TGConnectingPoint num="17" id="2067" /> +<TGConnectingPoint num="18" id="2068" /> +<TGConnectingPoint num="19" id="2069" /> +<TGConnectingPoint num="20" id="2070" /> +<TGConnectingPoint num="21" id="2071" /> +<TGConnectingPoint num="22" id="2072" /> +<TGConnectingPoint num="23" id="2073" /> +<TGConnectingPoint num="24" id="2074" /> +<TGConnectingPoint num="25" id="2075" /> +<TGConnectingPoint num="26" id="2076" /> +<TGConnectingPoint num="27" id="2077" /> +<TGConnectingPoint num="28" id="2078" /> +<TGConnectingPoint num="29" id="2079" /> +<TGConnectingPoint num="30" id="2080" /> +<TGConnectingPoint num="31" id="2081" /> +<TGConnectingPoint num="32" id="2082" /> +<TGConnectingPoint num="33" id="2083" /> +<TGConnectingPoint num="34" id="2084" /> +<TGConnectingPoint num="35" id="2085" /> +<TGConnectingPoint num="36" id="2086" /> +<TGConnectingPoint num="37" id="2087" /> +<TGConnectingPoint num="38" id="2088" /> +<TGConnectingPoint num="39" id="2089" /> +<TGConnectingPoint num="40" id="2090" /> +<TGConnectingPoint num="41" id="2091" /> +<TGConnectingPoint num="42" id="2092" /> +<TGConnectingPoint num="43" id="2093" /> +<TGConnectingPoint num="44" id="2094" /> +<TGConnectingPoint num="45" id="2095" /> +<TGConnectingPoint num="46" id="2096" /> +<TGConnectingPoint num="47" id="2097" /> +<TGConnectingPoint num="48" id="2098" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="2149" > +<cdparam x="557" y="52" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMA_Controller_1" value="Controller instance name" /> +<TGConnectingPoint num="0" id="2100" /> +<TGConnectingPoint num="1" id="2101" /> +<TGConnectingPoint num="2" id="2102" /> +<TGConnectingPoint num="3" id="2103" /> +<TGConnectingPoint num="4" id="2104" /> +<TGConnectingPoint num="5" id="2105" /> +<TGConnectingPoint num="6" id="2106" /> +<TGConnectingPoint num="7" id="2107" /> +<TGConnectingPoint num="8" id="2108" /> +<TGConnectingPoint num="9" id="2109" /> +<TGConnectingPoint num="10" id="2110" /> +<TGConnectingPoint num="11" id="2111" /> +<TGConnectingPoint num="12" id="2112" /> +<TGConnectingPoint num="13" id="2113" /> +<TGConnectingPoint num="14" id="2114" /> +<TGConnectingPoint num="15" id="2115" /> +<TGConnectingPoint num="16" id="2116" /> +<TGConnectingPoint num="17" id="2117" /> +<TGConnectingPoint num="18" id="2118" /> +<TGConnectingPoint num="19" id="2119" /> +<TGConnectingPoint num="20" id="2120" /> +<TGConnectingPoint num="21" id="2121" /> +<TGConnectingPoint num="22" id="2122" /> +<TGConnectingPoint num="23" id="2123" /> +<TGConnectingPoint num="24" id="2124" /> +<TGConnectingPoint num="25" id="2125" /> +<TGConnectingPoint num="26" id="2126" /> +<TGConnectingPoint num="27" id="2127" /> +<TGConnectingPoint num="28" id="2128" /> +<TGConnectingPoint num="29" id="2129" /> +<TGConnectingPoint num="30" id="2130" /> +<TGConnectingPoint num="31" id="2131" /> +<TGConnectingPoint num="32" id="2132" /> +<TGConnectingPoint num="33" id="2133" /> +<TGConnectingPoint num="34" id="2134" /> +<TGConnectingPoint num="35" id="2135" /> +<TGConnectingPoint num="36" id="2136" /> +<TGConnectingPoint num="37" id="2137" /> +<TGConnectingPoint num="38" id="2138" /> +<TGConnectingPoint num="39" id="2139" /> +<TGConnectingPoint num="40" id="2140" /> +<TGConnectingPoint num="41" id="2141" /> +<TGConnectingPoint num="42" id="2142" /> +<TGConnectingPoint num="43" id="2143" /> +<TGConnectingPoint num="44" id="2144" /> +<TGConnectingPoint num="45" id="2145" /> +<TGConnectingPoint num="46" id="2146" /> +<TGConnectingPoint num="47" id="2147" /> +<TGConnectingPoint num="48" id="2148" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="counter" value="" type="10" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="2199" > +<cdparam x="113" y="52" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CPU_Controller_1" value="Controller instance name" /> +<TGConnectingPoint num="0" id="2150" /> +<TGConnectingPoint num="1" id="2151" /> +<TGConnectingPoint num="2" id="2152" /> +<TGConnectingPoint num="3" id="2153" /> +<TGConnectingPoint num="4" id="2154" /> +<TGConnectingPoint num="5" id="2155" /> +<TGConnectingPoint num="6" id="2156" /> +<TGConnectingPoint num="7" id="2157" /> +<TGConnectingPoint num="8" id="2158" /> +<TGConnectingPoint num="9" id="2159" /> +<TGConnectingPoint num="10" id="2160" /> +<TGConnectingPoint num="11" id="2161" /> +<TGConnectingPoint num="12" id="2162" /> +<TGConnectingPoint num="13" id="2163" /> +<TGConnectingPoint num="14" id="2164" /> +<TGConnectingPoint num="15" id="2165" /> +<TGConnectingPoint num="16" id="2166" /> +<TGConnectingPoint num="17" id="2167" /> +<TGConnectingPoint num="18" id="2168" /> +<TGConnectingPoint num="19" id="2169" /> +<TGConnectingPoint num="20" id="2170" /> +<TGConnectingPoint num="21" id="2171" /> +<TGConnectingPoint num="22" id="2172" /> +<TGConnectingPoint num="23" id="2173" /> +<TGConnectingPoint num="24" id="2174" /> +<TGConnectingPoint num="25" id="2175" /> +<TGConnectingPoint num="26" id="2176" /> +<TGConnectingPoint num="27" id="2177" /> +<TGConnectingPoint num="28" id="2178" /> +<TGConnectingPoint num="29" id="2179" /> +<TGConnectingPoint num="30" id="2180" /> +<TGConnectingPoint num="31" id="2181" /> +<TGConnectingPoint num="32" id="2182" /> +<TGConnectingPoint num="33" id="2183" /> +<TGConnectingPoint num="34" id="2184" /> +<TGConnectingPoint num="35" id="2185" /> +<TGConnectingPoint num="36" id="2186" /> +<TGConnectingPoint num="37" id="2187" /> +<TGConnectingPoint num="38" id="2188" /> +<TGConnectingPoint num="39" id="2189" /> +<TGConnectingPoint num="40" id="2190" /> +<TGConnectingPoint num="41" id="2191" /> +<TGConnectingPoint num="42" id="2192" /> +<TGConnectingPoint num="43" id="2193" /> +<TGConnectingPoint num="44" id="2194" /> +<TGConnectingPoint num="45" id="2195" /> +<TGConnectingPoint num="46" id="2196" /> +<TGConnectingPoint num="47" id="2197" /> +<TGConnectingPoint num="48" id="2198" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="1523" id="2200" > +<cdparam x="337" y="112" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferTerminated" value="TransferTerminated()" /> +<P1 x="337" y="112" id="2055" /> +<P2 x="118" y="112" id="2155" /> +<AutomaticDrawing data="true" /> +<extraparam> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="2201" > +<cdparam x="562" y="82" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferTerminated" value="TransferTerminated()" /> +<P1 x="562" y="82" id="2102" /> +<P2 x="337" y="82" id="2052" /> +<AutomaticDrawing data="true" /> +<extraparam> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +</Modeling> + + + + +<Modeling type="TML CP" nameTab="DMATransferPolling" > +<CommunicationPatternDiagramPanel name="MainCP" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1504" id="2212" > +<cdparam x="86" y="250" /> +<sizeparam width="123" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TransferCycleAD" value="Reference to a CP" /> +<TGConnectingPoint num="0" id="2202" /> +<TGConnectingPoint num="1" id="2203" /> +<TGConnectingPoint num="2" id="2204" /> +<TGConnectingPoint num="3" id="2205" /> +<TGConnectingPoint num="4" id="2206" /> +<TGConnectingPoint num="5" id="2207" /> +<TGConnectingPoint num="6" id="2208" /> +<TGConnectingPoint num="7" id="2209" /> +<TGConnectingPoint num="8" id="2210" /> +<TGConnectingPoint num="9" id="2211" /> +</COMPONENT> + +<COMPONENT type="1504" id="2223" > +<cdparam x="319" y="250" /> +<sizeparam width="123" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="PollingCycleAD" value="Reference to a CP" /> +<TGConnectingPoint num="0" id="2213" /> +<TGConnectingPoint num="1" id="2214" /> +<TGConnectingPoint num="2" id="2215" /> +<TGConnectingPoint num="3" id="2216" /> +<TGConnectingPoint num="4" id="2217" /> +<TGConnectingPoint num="5" id="2218" /> +<TGConnectingPoint num="6" id="2219" /> +<TGConnectingPoint num="7" id="2220" /> +<TGConnectingPoint num="8" id="2221" /> +<TGConnectingPoint num="9" id="2222" /> +</COMPONENT> + +<COMPONENT type="1503" id="2238" > +<cdparam x="181" y="347" /> +<sizeparam width="150" height="5" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="join2" value="null" /> +<TGConnectingPoint num="0" id="2224" /> +<TGConnectingPoint num="1" id="2225" /> +<TGConnectingPoint num="2" id="2226" /> +<TGConnectingPoint num="3" id="2227" /> +<TGConnectingPoint num="4" id="2228" /> +<TGConnectingPoint num="5" id="2229" /> +<TGConnectingPoint num="6" id="2230" /> +<TGConnectingPoint num="7" id="2231" /> +<TGConnectingPoint num="8" id="2232" /> +<TGConnectingPoint num="9" id="2233" /> +<TGConnectingPoint num="10" id="2234" /> +<TGConnectingPoint num="11" id="2235" /> +<TGConnectingPoint num="12" id="2236" /> +<TGConnectingPoint num="13" id="2237" /> +</COMPONENT> + +<COMPONENT type="1502" id="2253" > +<cdparam x="177" y="186" /> +<sizeparam width="150" height="5" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="fork2" value="null" /> +<TGConnectingPoint num="0" id="2239" /> +<TGConnectingPoint num="1" id="2240" /> +<TGConnectingPoint num="2" id="2241" /> +<TGConnectingPoint num="3" id="2242" /> +<TGConnectingPoint num="4" id="2243" /> +<TGConnectingPoint num="5" id="2244" /> +<TGConnectingPoint num="6" id="2245" /> +<TGConnectingPoint num="7" id="2246" /> +<TGConnectingPoint num="8" id="2247" /> +<TGConnectingPoint num="9" id="2248" /> +<TGConnectingPoint num="10" id="2249" /> +<TGConnectingPoint num="11" id="2250" /> +<TGConnectingPoint num="12" id="2251" /> +<TGConnectingPoint num="13" id="2252" /> +</COMPONENT> + +<COMPONENT type="301" id="2270" > +<cdparam x="339" y="69" /> +<sizeparam width="305" height="75" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value="Some parameters are mapping dependent: +- size in ExecuteTransfer +- the source and destination addresses + +This model supposes that the DMA replies via +POLLING +" /> +<TGConnectingPoint num="0" id="2254" /> +<TGConnectingPoint num="1" id="2255" /> +<TGConnectingPoint num="2" id="2256" /> +<TGConnectingPoint num="3" id="2257" /> +<TGConnectingPoint num="4" id="2258" /> +<TGConnectingPoint num="5" id="2259" /> +<TGConnectingPoint num="6" id="2260" /> +<TGConnectingPoint num="7" id="2261" /> +<TGConnectingPoint num="8" id="2262" /> +<TGConnectingPoint num="9" id="2263" /> +<TGConnectingPoint num="10" id="2264" /> +<TGConnectingPoint num="11" id="2265" /> +<TGConnectingPoint num="12" id="2266" /> +<TGConnectingPoint num="13" id="2267" /> +<TGConnectingPoint num="14" id="2268" /> +<TGConnectingPoint num="15" id="2269" /> +<extraparam> +<Line value="Some parameters are mapping dependent:" /> +<Line value="- size in ExecuteTransfer " /> +<Line value="- the source and destination addresses" /> +<Line value="" /> +<Line value="This model supposes that the DMA replies via" /> +<Line value="POLLING" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1507" id="2272" > +<cdparam x="246" y="399" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="2271" /> +</COMPONENT> + +<COMPONENT type="1505" id="2283" > +<cdparam x="190" y="105" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="ConfigureTransfer" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="2273" /> +<TGConnectingPoint num="1" id="2274" /> +<TGConnectingPoint num="2" id="2275" /> +<TGConnectingPoint num="3" id="2276" /> +<TGConnectingPoint num="4" id="2277" /> +<TGConnectingPoint num="5" id="2278" /> +<TGConnectingPoint num="6" id="2279" /> +<TGConnectingPoint num="7" id="2280" /> +<TGConnectingPoint num="8" id="2281" /> +<TGConnectingPoint num="9" id="2282" /> +</COMPONENT> + +<COMPONENT type="1506" id="2285" > +<cdparam x="245" y="42" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="2284" /> +</COMPONENT> + +<CONNECTOR type="1501" id="2286" > +<cdparam x="256" y="352" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="256" y="352" id="2229" /> +<P2 x="256" y="394" id="2271" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2287" > +<cdparam x="145" y="291" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="147" y="290" id="2203" /> +<P2 x="206" y="347" id="2224" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2288" > +<cdparam x="301" y="191" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="301" y="191" id="2243" /> +<P2 x="380" y="245" id="2213" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2289" > +<cdparam x="202" y="191" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="202" y="191" id="2239" /> +<P2 x="147" y="245" id="2202" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2290" > +<cdparam x="252" y="62" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="252" y="62" id="2284" /> +<P2 x="252" y="100" id="2273" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2291" > +<cdparam x="252" y="145" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="252" y="145" id="2274" /> +<P2 x="252" y="186" id="2244" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2292" > +<cdparam x="381" y="290" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="380" y="290" id="2214" /> +<P2 x="305" y="347" id="2228" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</CommunicationPatternDiagramPanel> + +<TMLSDPanel name="ConfigureTransfer" minX="10" maxX="1259" minY="10" maxY="543" > +<COMPONENT type="1521" id="2342" > +<cdparam x="600" y="43" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1259" minY="10" maxY="543" /> +<infoparam name="TransferInstance_1" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="2293" /> +<TGConnectingPoint num="1" id="2294" /> +<TGConnectingPoint num="2" id="2295" /> +<TGConnectingPoint num="3" id="2296" /> +<TGConnectingPoint num="4" id="2297" /> +<TGConnectingPoint num="5" id="2298" /> +<TGConnectingPoint num="6" id="2299" /> +<TGConnectingPoint num="7" id="2300" /> +<TGConnectingPoint num="8" id="2301" /> +<TGConnectingPoint num="9" id="2302" /> +<TGConnectingPoint num="10" id="2303" /> +<TGConnectingPoint num="11" id="2304" /> +<TGConnectingPoint num="12" id="2305" /> +<TGConnectingPoint num="13" id="2306" /> +<TGConnectingPoint num="14" id="2307" /> +<TGConnectingPoint num="15" id="2308" /> +<TGConnectingPoint num="16" id="2309" /> +<TGConnectingPoint num="17" id="2310" /> +<TGConnectingPoint num="18" id="2311" /> +<TGConnectingPoint num="19" id="2312" /> +<TGConnectingPoint num="20" id="2313" /> +<TGConnectingPoint num="21" id="2314" /> +<TGConnectingPoint num="22" id="2315" /> +<TGConnectingPoint num="23" id="2316" /> +<TGConnectingPoint num="24" id="2317" /> +<TGConnectingPoint num="25" id="2318" /> +<TGConnectingPoint num="26" id="2319" /> +<TGConnectingPoint num="27" id="2320" /> +<TGConnectingPoint num="28" id="2321" /> +<TGConnectingPoint num="29" id="2322" /> +<TGConnectingPoint num="30" id="2323" /> +<TGConnectingPoint num="31" id="2324" /> +<TGConnectingPoint num="32" id="2325" /> +<TGConnectingPoint num="33" id="2326" /> +<TGConnectingPoint num="34" id="2327" /> +<TGConnectingPoint num="35" id="2328" /> +<TGConnectingPoint num="36" id="2329" /> +<TGConnectingPoint num="37" id="2330" /> +<TGConnectingPoint num="38" id="2331" /> +<TGConnectingPoint num="39" id="2332" /> +<TGConnectingPoint num="40" id="2333" /> +<TGConnectingPoint num="41" id="2334" /> +<TGConnectingPoint num="42" id="2335" /> +<TGConnectingPoint num="43" id="2336" /> +<TGConnectingPoint num="44" id="2337" /> +<TGConnectingPoint num="45" id="2338" /> +<TGConnectingPoint num="46" id="2339" /> +<TGConnectingPoint num="47" id="2340" /> +<TGConnectingPoint num="48" id="2341" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="ID" value="" type="0" typeOther="" /> +<Attribute access="2" id="bytesToTransfer" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="2401" > +<cdparam x="1076" y="43" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1259" minY="10" maxY="543" /> +<infoparam name="DMA_Controller" value="Controller instance name" /> +<TGConnectingPoint num="0" id="2352" /> +<TGConnectingPoint num="1" id="2353" /> +<TGConnectingPoint num="2" id="2354" /> +<TGConnectingPoint num="3" id="2355" /> +<TGConnectingPoint num="4" id="2356" /> +<TGConnectingPoint num="5" id="2357" /> +<TGConnectingPoint num="6" id="2358" /> +<TGConnectingPoint num="7" id="2359" /> +<TGConnectingPoint num="8" id="2360" /> +<TGConnectingPoint num="9" id="2361" /> +<TGConnectingPoint num="10" id="2362" /> +<TGConnectingPoint num="11" id="2363" /> +<TGConnectingPoint num="12" id="2364" /> +<TGConnectingPoint num="13" id="2365" /> +<TGConnectingPoint num="14" id="2366" /> +<TGConnectingPoint num="15" id="2367" /> +<TGConnectingPoint num="16" id="2368" /> +<TGConnectingPoint num="17" id="2369" /> +<TGConnectingPoint num="18" id="2370" /> +<TGConnectingPoint num="19" id="2371" /> +<TGConnectingPoint num="20" id="2372" /> +<TGConnectingPoint num="21" id="2373" /> +<TGConnectingPoint num="22" id="2374" /> +<TGConnectingPoint num="23" id="2375" /> +<TGConnectingPoint num="24" id="2376" /> +<TGConnectingPoint num="25" id="2377" /> +<TGConnectingPoint num="26" id="2378" /> +<TGConnectingPoint num="27" id="2379" /> +<TGConnectingPoint num="28" id="2380" /> +<TGConnectingPoint num="29" id="2381" /> +<TGConnectingPoint num="30" id="2382" /> +<TGConnectingPoint num="31" id="2383" /> +<TGConnectingPoint num="32" id="2384" /> +<TGConnectingPoint num="33" id="2385" /> +<TGConnectingPoint num="34" id="2386" /> +<TGConnectingPoint num="35" id="2387" /> +<TGConnectingPoint num="36" id="2388" /> +<TGConnectingPoint num="37" id="2389" /> +<TGConnectingPoint num="38" id="2390" /> +<TGConnectingPoint num="39" id="2391" /> +<TGConnectingPoint num="40" id="2392" /> +<TGConnectingPoint num="41" id="2393" /> +<TGConnectingPoint num="42" id="2394" /> +<TGConnectingPoint num="43" id="2395" /> +<TGConnectingPoint num="44" id="2396" /> +<TGConnectingPoint num="45" id="2397" /> +<TGConnectingPoint num="46" id="2398" /> +<TGConnectingPoint num="47" id="2399" /> +<TGConnectingPoint num="48" id="2400" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="ID" value="" type="0" typeOther="" /> +<Attribute access="2" id="transferTerminated" value="false" type="4" typeOther="" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +<Attribute access="2" id="bytesToTransfer" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1524" id="2351" > +<father id="2401" num="0" /> +<cdparam x="1081" y="150" /> +<sizeparam width="178" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" /> +<infoparam name="action state" value="counter = bytesToTransfer" /> +<TGConnectingPoint num="0" id="2343" /> +<TGConnectingPoint num="1" id="2344" /> +<TGConnectingPoint num="2" id="2345" /> +<TGConnectingPoint num="3" id="2346" /> +<TGConnectingPoint num="4" id="2347" /> +<TGConnectingPoint num="5" id="2348" /> +<TGConnectingPoint num="6" id="2349" /> +<TGConnectingPoint num="7" id="2350" /> +</SUBCOMPONENT> + +<COMPONENT type="1522" id="2460" > +<cdparam x="129" y="43" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1259" minY="10" maxY="543" /> +<infoparam name="CPU_Controller" value="Controller instance name" /> +<TGConnectingPoint num="0" id="2411" /> +<TGConnectingPoint num="1" id="2412" /> +<TGConnectingPoint num="2" id="2413" /> +<TGConnectingPoint num="3" id="2414" /> +<TGConnectingPoint num="4" id="2415" /> +<TGConnectingPoint num="5" id="2416" /> +<TGConnectingPoint num="6" id="2417" /> +<TGConnectingPoint num="7" id="2418" /> +<TGConnectingPoint num="8" id="2419" /> +<TGConnectingPoint num="9" id="2420" /> +<TGConnectingPoint num="10" id="2421" /> +<TGConnectingPoint num="11" id="2422" /> +<TGConnectingPoint num="12" id="2423" /> +<TGConnectingPoint num="13" id="2424" /> +<TGConnectingPoint num="14" id="2425" /> +<TGConnectingPoint num="15" id="2426" /> +<TGConnectingPoint num="16" id="2427" /> +<TGConnectingPoint num="17" id="2428" /> +<TGConnectingPoint num="18" id="2429" /> +<TGConnectingPoint num="19" id="2430" /> +<TGConnectingPoint num="20" id="2431" /> +<TGConnectingPoint num="21" id="2432" /> +<TGConnectingPoint num="22" id="2433" /> +<TGConnectingPoint num="23" id="2434" /> +<TGConnectingPoint num="24" id="2435" /> +<TGConnectingPoint num="25" id="2436" /> +<TGConnectingPoint num="26" id="2437" /> +<TGConnectingPoint num="27" id="2438" /> +<TGConnectingPoint num="28" id="2439" /> +<TGConnectingPoint num="29" id="2440" /> +<TGConnectingPoint num="30" id="2441" /> +<TGConnectingPoint num="31" id="2442" /> +<TGConnectingPoint num="32" id="2443" /> +<TGConnectingPoint num="33" id="2444" /> +<TGConnectingPoint num="34" id="2445" /> +<TGConnectingPoint num="35" id="2446" /> +<TGConnectingPoint num="36" id="2447" /> +<TGConnectingPoint num="37" id="2448" /> +<TGConnectingPoint num="38" id="2449" /> +<TGConnectingPoint num="39" id="2450" /> +<TGConnectingPoint num="40" id="2451" /> +<TGConnectingPoint num="41" id="2452" /> +<TGConnectingPoint num="42" id="2453" /> +<TGConnectingPoint num="43" id="2454" /> +<TGConnectingPoint num="44" id="2455" /> +<TGConnectingPoint num="45" id="2456" /> +<TGConnectingPoint num="46" id="2457" /> +<TGConnectingPoint num="47" id="2458" /> +<TGConnectingPoint num="48" id="2459" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="bytesToTransfer" value="" type="0" typeOther="" /> +<Attribute access="2" id="transferTrerminated" value="" type="4" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="ID" value="" type="0" typeOther="" /> +<Attribute access="2" id="transferTerminated" value="" type="4" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1524" id="2410" > +<father id="2460" num="0" /> +<cdparam x="134" y="139" /> +<sizeparam width="179" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" /> +<infoparam name="action state" value="transferTerminated = false" /> +<TGConnectingPoint num="0" id="2402" /> +<TGConnectingPoint num="1" id="2403" /> +<TGConnectingPoint num="2" id="2404" /> +<TGConnectingPoint num="3" id="2405" /> +<TGConnectingPoint num="4" id="2406" /> +<TGConnectingPoint num="5" id="2407" /> +<TGConnectingPoint num="6" id="2408" /> +<TGConnectingPoint num="7" id="2409" /> +</SUBCOMPONENT> + +<CONNECTOR type="1523" id="2461" > +<cdparam x="358" y="151" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferRequest" value="TransferRequest(bytesToTransfer, sourceAddress, destinationAddress, ID)" /> +<P1 x="605" y="123" id="2300" /> +<P2 x="1081" y="123" id="2359" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="bytesToTransfer" /> +<Param index="1" id="sourceAddress" /> +<Param index="2" id="destinationAddress" /> +<Param index="3" id="ID" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="2462" > +<cdparam x="139" y="121" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferRequest" value="TransferRequest(bytesToTransfer, sourceAddress, destinationAddress, ID)" /> +<P1 x="134" y="83" id="2414" /> +<P2 x="605" y="83" id="2296" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="bytesToTransfer" /> +<Param index="1" id="sourceAddress" /> +<Param index="2" id="destinationAddress" /> +<Param index="3" id="ID" /> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +<CommunicationPatternDiagramPanel name="TransferCycleAD" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1505" id="2473" > +<cdparam x="313" y="391" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="EnableFlag" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="2463" /> +<TGConnectingPoint num="1" id="2464" /> +<TGConnectingPoint num="2" id="2465" /> +<TGConnectingPoint num="3" id="2466" /> +<TGConnectingPoint num="4" id="2467" /> +<TGConnectingPoint num="5" id="2468" /> +<TGConnectingPoint num="6" id="2469" /> +<TGConnectingPoint num="7" id="2470" /> +<TGConnectingPoint num="8" id="2471" /> +<TGConnectingPoint num="9" id="2472" /> +</COMPONENT> + +<COMPONENT type="1500" id="2489" > +<cdparam x="360" y="259" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="choice6" value="null" /> +<TGConnectingPoint num="0" id="2477" /> +<TGConnectingPoint num="1" id="2478" /> +<TGConnectingPoint num="2" id="2479" /> +<TGConnectingPoint num="3" id="2480" /> +<TGConnectingPoint num="4" id="2481" /> +<TGConnectingPoint num="5" id="2482" /> +<TGConnectingPoint num="6" id="2483" /> +<TGConnectingPoint num="7" id="2484" /> +<TGConnectingPoint num="8" id="2485" /> +<TGConnectingPoint num="9" id="2486" /> +<TGConnectingPoint num="10" id="2487" /> +<TGConnectingPoint num="11" id="2488" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="2474" > +<father id="2489" num="0" /> +<cdparam x="285" y="269" /> +<sizeparam width="93" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ counter > 0 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="2475" > +<father id="2489" num="1" /> +<cdparam x="395" y="269" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="2476" > +<father id="2489" num="2" /> +<cdparam x="380" y="304" /> +<sizeparam width="44" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ else ]" /> +</SUBCOMPONENT> + +<COMPONENT type="1507" id="2491" > +<cdparam x="365" y="470" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="2490" /> +</COMPONENT> + +<!-- Issue #69 COMPONENT type="1508" id="2496" > +<cdparam x="360" y="163" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="junction6" value="" /> +<TGConnectingPoint num="0" id="2492" /> +<TGConnectingPoint num="1" id="2493" /> +<TGConnectingPoint num="2" id="2494" /> +<TGConnectingPoint num="3" id="2495" /> +</COMPONENT--> + +<COMPONENT type="1505" id="2507" > +<cdparam x="182" y="332" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TransferCycleSD" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="2497" /> +<TGConnectingPoint num="1" id="2498" /> +<TGConnectingPoint num="2" id="2499" /> +<TGConnectingPoint num="3" id="2500" /> +<TGConnectingPoint num="4" id="2501" /> +<TGConnectingPoint num="5" id="2502" /> +<TGConnectingPoint num="6" id="2503" /> +<TGConnectingPoint num="7" id="2504" /> +<TGConnectingPoint num="8" id="2505" /> +<TGConnectingPoint num="9" id="2506" /> +</COMPONENT> + +<COMPONENT type="1506" id="2509" > +<cdparam x="368" y="95" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="2508" /> +</COMPONENT> + +<CONNECTOR type="1501" id="2510" > +<cdparam x="375" y="431" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="375" y="431" id="2464" /> +<P2 x="375" y="465" id="2490" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2512" > +<cdparam x="335" y="274" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="335" y="274" id="2478" /> +<P2 x="244" y="327" id="2497" /> +<Point x="244" y="274" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2511" > +<father id="2512" num="0" /> +<cdparam x="244" y="274" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="1501" id="2516" > +<cdparam x="244" y="372" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="244" y="372" id="2498" /> +<P2 x="360" y="178" id="2493" /> +<Point x="244" y="425" /> +<Point x="136" y="425" /> +<Point x="136" y="178" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2513" > +<father id="2516" num="0" /> +<cdparam x="244" y="425" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="2514" > +<father id="2516" num="1" /> +<cdparam x="136" y="425" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="2515" > +<father id="2516" num="2" /> +<cdparam x="136" y="178" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="1501" id="2517" > +<cdparam x="375" y="314" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="375" y="314" id="2480" /> +<P2 x="375" y="386" id="2463" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2518" > +<cdparam x="375" y="193" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="375" y="193" id="2495" /> +<P2 x="375" y="249" id="2477" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2519" > +<cdparam x="375" y="115" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="375" y="115" id="2508" /> +<P2 x="375" y="163" id="2492" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</CommunicationPatternDiagramPanel> + +<TMLSDPanel name="TransferCycleSD" minX="10" maxX="1102" minY="10" maxY="556" > +<COMPONENT type="1520" id="2569" > +<cdparam x="1029" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1102" minY="10" maxY="556" /> +<infoparam name="DESTINATION_Storage" value="Storage instance name" /> +<TGConnectingPoint num="0" id="2520" /> +<TGConnectingPoint num="1" id="2521" /> +<TGConnectingPoint num="2" id="2522" /> +<TGConnectingPoint num="3" id="2523" /> +<TGConnectingPoint num="4" id="2524" /> +<TGConnectingPoint num="5" id="2525" /> +<TGConnectingPoint num="6" id="2526" /> +<TGConnectingPoint num="7" id="2527" /> +<TGConnectingPoint num="8" id="2528" /> +<TGConnectingPoint num="9" id="2529" /> +<TGConnectingPoint num="10" id="2530" /> +<TGConnectingPoint num="11" id="2531" /> +<TGConnectingPoint num="12" id="2532" /> +<TGConnectingPoint num="13" id="2533" /> +<TGConnectingPoint num="14" id="2534" /> +<TGConnectingPoint num="15" id="2535" /> +<TGConnectingPoint num="16" id="2536" /> +<TGConnectingPoint num="17" id="2537" /> +<TGConnectingPoint num="18" id="2538" /> +<TGConnectingPoint num="19" id="2539" /> +<TGConnectingPoint num="20" id="2540" /> +<TGConnectingPoint num="21" id="2541" /> +<TGConnectingPoint num="22" id="2542" /> +<TGConnectingPoint num="23" id="2543" /> +<TGConnectingPoint num="24" id="2544" /> +<TGConnectingPoint num="25" id="2545" /> +<TGConnectingPoint num="26" id="2546" /> +<TGConnectingPoint num="27" id="2547" /> +<TGConnectingPoint num="28" id="2548" /> +<TGConnectingPoint num="29" id="2549" /> +<TGConnectingPoint num="30" id="2550" /> +<TGConnectingPoint num="31" id="2551" /> +<TGConnectingPoint num="32" id="2552" /> +<TGConnectingPoint num="33" id="2553" /> +<TGConnectingPoint num="34" id="2554" /> +<TGConnectingPoint num="35" id="2555" /> +<TGConnectingPoint num="36" id="2556" /> +<TGConnectingPoint num="37" id="2557" /> +<TGConnectingPoint num="38" id="2558" /> +<TGConnectingPoint num="39" id="2559" /> +<TGConnectingPoint num="40" id="2560" /> +<TGConnectingPoint num="41" id="2561" /> +<TGConnectingPoint num="42" id="2562" /> +<TGConnectingPoint num="43" id="2563" /> +<TGConnectingPoint num="44" id="2564" /> +<TGConnectingPoint num="45" id="2565" /> +<TGConnectingPoint num="46" id="2566" /> +<TGConnectingPoint num="47" id="2567" /> +<TGConnectingPoint num="48" id="2568" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="2619" > +<cdparam x="818" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1102" minY="10" maxY="556" /> +<infoparam name="TransferInstance_3" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="2570" /> +<TGConnectingPoint num="1" id="2571" /> +<TGConnectingPoint num="2" id="2572" /> +<TGConnectingPoint num="3" id="2573" /> +<TGConnectingPoint num="4" id="2574" /> +<TGConnectingPoint num="5" id="2575" /> +<TGConnectingPoint num="6" id="2576" /> +<TGConnectingPoint num="7" id="2577" /> +<TGConnectingPoint num="8" id="2578" /> +<TGConnectingPoint num="9" id="2579" /> +<TGConnectingPoint num="10" id="2580" /> +<TGConnectingPoint num="11" id="2581" /> +<TGConnectingPoint num="12" id="2582" /> +<TGConnectingPoint num="13" id="2583" /> +<TGConnectingPoint num="14" id="2584" /> +<TGConnectingPoint num="15" id="2585" /> +<TGConnectingPoint num="16" id="2586" /> +<TGConnectingPoint num="17" id="2587" /> +<TGConnectingPoint num="18" id="2588" /> +<TGConnectingPoint num="19" id="2589" /> +<TGConnectingPoint num="20" id="2590" /> +<TGConnectingPoint num="21" id="2591" /> +<TGConnectingPoint num="22" id="2592" /> +<TGConnectingPoint num="23" id="2593" /> +<TGConnectingPoint num="24" id="2594" /> +<TGConnectingPoint num="25" id="2595" /> +<TGConnectingPoint num="26" id="2596" /> +<TGConnectingPoint num="27" id="2597" /> +<TGConnectingPoint num="28" id="2598" /> +<TGConnectingPoint num="29" id="2599" /> +<TGConnectingPoint num="30" id="2600" /> +<TGConnectingPoint num="31" id="2601" /> +<TGConnectingPoint num="32" id="2602" /> +<TGConnectingPoint num="33" id="2603" /> +<TGConnectingPoint num="34" id="2604" /> +<TGConnectingPoint num="35" id="2605" /> +<TGConnectingPoint num="36" id="2606" /> +<TGConnectingPoint num="37" id="2607" /> +<TGConnectingPoint num="38" id="2608" /> +<TGConnectingPoint num="39" id="2609" /> +<TGConnectingPoint num="40" id="2610" /> +<TGConnectingPoint num="41" id="2611" /> +<TGConnectingPoint num="42" id="2612" /> +<TGConnectingPoint num="43" id="2613" /> +<TGConnectingPoint num="44" id="2614" /> +<TGConnectingPoint num="45" id="2615" /> +<TGConnectingPoint num="46" id="2616" /> +<TGConnectingPoint num="47" id="2617" /> +<TGConnectingPoint num="48" id="2618" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="2669" > +<cdparam x="392" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1102" minY="10" maxY="556" /> +<infoparam name="TransferInstance_2" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="2620" /> +<TGConnectingPoint num="1" id="2621" /> +<TGConnectingPoint num="2" id="2622" /> +<TGConnectingPoint num="3" id="2623" /> +<TGConnectingPoint num="4" id="2624" /> +<TGConnectingPoint num="5" id="2625" /> +<TGConnectingPoint num="6" id="2626" /> +<TGConnectingPoint num="7" id="2627" /> +<TGConnectingPoint num="8" id="2628" /> +<TGConnectingPoint num="9" id="2629" /> +<TGConnectingPoint num="10" id="2630" /> +<TGConnectingPoint num="11" id="2631" /> +<TGConnectingPoint num="12" id="2632" /> +<TGConnectingPoint num="13" id="2633" /> +<TGConnectingPoint num="14" id="2634" /> +<TGConnectingPoint num="15" id="2635" /> +<TGConnectingPoint num="16" id="2636" /> +<TGConnectingPoint num="17" id="2637" /> +<TGConnectingPoint num="18" id="2638" /> +<TGConnectingPoint num="19" id="2639" /> +<TGConnectingPoint num="20" id="2640" /> +<TGConnectingPoint num="21" id="2641" /> +<TGConnectingPoint num="22" id="2642" /> +<TGConnectingPoint num="23" id="2643" /> +<TGConnectingPoint num="24" id="2644" /> +<TGConnectingPoint num="25" id="2645" /> +<TGConnectingPoint num="26" id="2646" /> +<TGConnectingPoint num="27" id="2647" /> +<TGConnectingPoint num="28" id="2648" /> +<TGConnectingPoint num="29" id="2649" /> +<TGConnectingPoint num="30" id="2650" /> +<TGConnectingPoint num="31" id="2651" /> +<TGConnectingPoint num="32" id="2652" /> +<TGConnectingPoint num="33" id="2653" /> +<TGConnectingPoint num="34" id="2654" /> +<TGConnectingPoint num="35" id="2655" /> +<TGConnectingPoint num="36" id="2656" /> +<TGConnectingPoint num="37" id="2657" /> +<TGConnectingPoint num="38" id="2658" /> +<TGConnectingPoint num="39" id="2659" /> +<TGConnectingPoint num="40" id="2660" /> +<TGConnectingPoint num="41" id="2661" /> +<TGConnectingPoint num="42" id="2662" /> +<TGConnectingPoint num="43" id="2663" /> +<TGConnectingPoint num="44" id="2664" /> +<TGConnectingPoint num="45" id="2665" /> +<TGConnectingPoint num="46" id="2666" /> +<TGConnectingPoint num="47" id="2667" /> +<TGConnectingPoint num="48" id="2668" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1520" id="2719" > +<cdparam x="643" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1102" minY="10" maxY="556" /> +<infoparam name="SOURCE_Storage" value="Storage instance name" /> +<TGConnectingPoint num="0" id="2670" /> +<TGConnectingPoint num="1" id="2671" /> +<TGConnectingPoint num="2" id="2672" /> +<TGConnectingPoint num="3" id="2673" /> +<TGConnectingPoint num="4" id="2674" /> +<TGConnectingPoint num="5" id="2675" /> +<TGConnectingPoint num="6" id="2676" /> +<TGConnectingPoint num="7" id="2677" /> +<TGConnectingPoint num="8" id="2678" /> +<TGConnectingPoint num="9" id="2679" /> +<TGConnectingPoint num="10" id="2680" /> +<TGConnectingPoint num="11" id="2681" /> +<TGConnectingPoint num="12" id="2682" /> +<TGConnectingPoint num="13" id="2683" /> +<TGConnectingPoint num="14" id="2684" /> +<TGConnectingPoint num="15" id="2685" /> +<TGConnectingPoint num="16" id="2686" /> +<TGConnectingPoint num="17" id="2687" /> +<TGConnectingPoint num="18" id="2688" /> +<TGConnectingPoint num="19" id="2689" /> +<TGConnectingPoint num="20" id="2690" /> +<TGConnectingPoint num="21" id="2691" /> +<TGConnectingPoint num="22" id="2692" /> +<TGConnectingPoint num="23" id="2693" /> +<TGConnectingPoint num="24" id="2694" /> +<TGConnectingPoint num="25" id="2695" /> +<TGConnectingPoint num="26" id="2696" /> +<TGConnectingPoint num="27" id="2697" /> +<TGConnectingPoint num="28" id="2698" /> +<TGConnectingPoint num="29" id="2699" /> +<TGConnectingPoint num="30" id="2700" /> +<TGConnectingPoint num="31" id="2701" /> +<TGConnectingPoint num="32" id="2702" /> +<TGConnectingPoint num="33" id="2703" /> +<TGConnectingPoint num="34" id="2704" /> +<TGConnectingPoint num="35" id="2705" /> +<TGConnectingPoint num="36" id="2706" /> +<TGConnectingPoint num="37" id="2707" /> +<TGConnectingPoint num="38" id="2708" /> +<TGConnectingPoint num="39" id="2709" /> +<TGConnectingPoint num="40" id="2710" /> +<TGConnectingPoint num="41" id="2711" /> +<TGConnectingPoint num="42" id="2712" /> +<TGConnectingPoint num="43" id="2713" /> +<TGConnectingPoint num="44" id="2714" /> +<TGConnectingPoint num="45" id="2715" /> +<TGConnectingPoint num="46" id="2716" /> +<TGConnectingPoint num="47" id="2717" /> +<TGConnectingPoint num="48" id="2718" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="2778" > +<cdparam x="161" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1102" minY="10" maxY="556" /> +<infoparam name="DMA_Controller" value="Controller instance name" /> +<TGConnectingPoint num="0" id="2729" /> +<TGConnectingPoint num="1" id="2730" /> +<TGConnectingPoint num="2" id="2731" /> +<TGConnectingPoint num="3" id="2732" /> +<TGConnectingPoint num="4" id="2733" /> +<TGConnectingPoint num="5" id="2734" /> +<TGConnectingPoint num="6" id="2735" /> +<TGConnectingPoint num="7" id="2736" /> +<TGConnectingPoint num="8" id="2737" /> +<TGConnectingPoint num="9" id="2738" /> +<TGConnectingPoint num="10" id="2739" /> +<TGConnectingPoint num="11" id="2740" /> +<TGConnectingPoint num="12" id="2741" /> +<TGConnectingPoint num="13" id="2742" /> +<TGConnectingPoint num="14" id="2743" /> +<TGConnectingPoint num="15" id="2744" /> +<TGConnectingPoint num="16" id="2745" /> +<TGConnectingPoint num="17" id="2746" /> +<TGConnectingPoint num="18" id="2747" /> +<TGConnectingPoint num="19" id="2748" /> +<TGConnectingPoint num="20" id="2749" /> +<TGConnectingPoint num="21" id="2750" /> +<TGConnectingPoint num="22" id="2751" /> +<TGConnectingPoint num="23" id="2752" /> +<TGConnectingPoint num="24" id="2753" /> +<TGConnectingPoint num="25" id="2754" /> +<TGConnectingPoint num="26" id="2755" /> +<TGConnectingPoint num="27" id="2756" /> +<TGConnectingPoint num="28" id="2757" /> +<TGConnectingPoint num="29" id="2758" /> +<TGConnectingPoint num="30" id="2759" /> +<TGConnectingPoint num="31" id="2760" /> +<TGConnectingPoint num="32" id="2761" /> +<TGConnectingPoint num="33" id="2762" /> +<TGConnectingPoint num="34" id="2763" /> +<TGConnectingPoint num="35" id="2764" /> +<TGConnectingPoint num="36" id="2765" /> +<TGConnectingPoint num="37" id="2766" /> +<TGConnectingPoint num="38" id="2767" /> +<TGConnectingPoint num="39" id="2768" /> +<TGConnectingPoint num="40" id="2769" /> +<TGConnectingPoint num="41" id="2770" /> +<TGConnectingPoint num="42" id="2771" /> +<TGConnectingPoint num="43" id="2772" /> +<TGConnectingPoint num="44" id="2773" /> +<TGConnectingPoint num="45" id="2774" /> +<TGConnectingPoint num="46" id="2775" /> +<TGConnectingPoint num="47" id="2776" /> +<TGConnectingPoint num="48" id="2777" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="10" typeOther="" /> +<Attribute access="2" id="ID" value="" type="0" typeOther="" /> +<Attribute access="2" id="transferCompleted" value="false" type="4" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1524" id="2728" > +<father id="2778" num="0" /> +<cdparam x="166" y="252" /> +<sizeparam width="161" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" /> +<infoparam name="action state" value="counter = counter - size" /> +<TGConnectingPoint num="0" id="2720" /> +<TGConnectingPoint num="1" id="2721" /> +<TGConnectingPoint num="2" id="2722" /> +<TGConnectingPoint num="3" id="2723" /> +<TGConnectingPoint num="4" id="2724" /> +<TGConnectingPoint num="5" id="2725" /> +<TGConnectingPoint num="6" id="2726" /> +<TGConnectingPoint num="7" id="2727" /> +</SUBCOMPONENT> + +<CONNECTOR type="1523" id="2779" > +<cdparam x="823" y="244" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Write" value="Write(destinationAddress, size)" /> +<P1 x="823" y="266" id="2590" /> +<P2 x="1034" y="266" id="2540" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="destinationAddress" /> +<Param index="1" id="size" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="2780" > +<cdparam x="166" y="216" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Write" value="Write(destinationAddress, size)" /> +<P1 x="166" y="236" id="2746" /> +<P2 x="823" y="236" id="2587" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="destinationAddress" /> +<Param index="1" id="size" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="2781" > +<cdparam x="397" y="186" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Transfer" value="Transfer(size)" /> +<P1 x="397" y="206" id="2634" /> +<P2 x="166" y="206" id="2743" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="size" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="2782" > +<cdparam x="648" y="155" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Transfer" value="Transfer(size)" /> +<P1 x="648" y="176" id="2681" /> +<P2 x="397" y="176" id="2631" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="size" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="2783" > +<cdparam x="397" y="126" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Read" value="Read(sourceAddress, size)" /> +<P1 x="397" y="146" id="2628" /> +<P2 x="648" y="146" id="2678" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="sourceAddress" /> +<Param index="1" id="size" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="2784" > +<cdparam x="183" y="95" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Read" value="Read(sourceAddress, size)" /> +<P1 x="166" y="116" id="2734" /> +<P2 x="397" y="116" id="2625" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="sourceAddress" /> +<Param index="1" id="size" /> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +<TMLSDPanel name="EnableFlag" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1522" id="2843" > +<cdparam x="354" y="61" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMA_controller" value="Controller instance name" /> +<TGConnectingPoint num="0" id="2794" /> +<TGConnectingPoint num="1" id="2795" /> +<TGConnectingPoint num="2" id="2796" /> +<TGConnectingPoint num="3" id="2797" /> +<TGConnectingPoint num="4" id="2798" /> +<TGConnectingPoint num="5" id="2799" /> +<TGConnectingPoint num="6" id="2800" /> +<TGConnectingPoint num="7" id="2801" /> +<TGConnectingPoint num="8" id="2802" /> +<TGConnectingPoint num="9" id="2803" /> +<TGConnectingPoint num="10" id="2804" /> +<TGConnectingPoint num="11" id="2805" /> +<TGConnectingPoint num="12" id="2806" /> +<TGConnectingPoint num="13" id="2807" /> +<TGConnectingPoint num="14" id="2808" /> +<TGConnectingPoint num="15" id="2809" /> +<TGConnectingPoint num="16" id="2810" /> +<TGConnectingPoint num="17" id="2811" /> +<TGConnectingPoint num="18" id="2812" /> +<TGConnectingPoint num="19" id="2813" /> +<TGConnectingPoint num="20" id="2814" /> +<TGConnectingPoint num="21" id="2815" /> +<TGConnectingPoint num="22" id="2816" /> +<TGConnectingPoint num="23" id="2817" /> +<TGConnectingPoint num="24" id="2818" /> +<TGConnectingPoint num="25" id="2819" /> +<TGConnectingPoint num="26" id="2820" /> +<TGConnectingPoint num="27" id="2821" /> +<TGConnectingPoint num="28" id="2822" /> +<TGConnectingPoint num="29" id="2823" /> +<TGConnectingPoint num="30" id="2824" /> +<TGConnectingPoint num="31" id="2825" /> +<TGConnectingPoint num="32" id="2826" /> +<TGConnectingPoint num="33" id="2827" /> +<TGConnectingPoint num="34" id="2828" /> +<TGConnectingPoint num="35" id="2829" /> +<TGConnectingPoint num="36" id="2830" /> +<TGConnectingPoint num="37" id="2831" /> +<TGConnectingPoint num="38" id="2832" /> +<TGConnectingPoint num="39" id="2833" /> +<TGConnectingPoint num="40" id="2834" /> +<TGConnectingPoint num="41" id="2835" /> +<TGConnectingPoint num="42" id="2836" /> +<TGConnectingPoint num="43" id="2837" /> +<TGConnectingPoint num="44" id="2838" /> +<TGConnectingPoint num="45" id="2839" /> +<TGConnectingPoint num="46" id="2840" /> +<TGConnectingPoint num="47" id="2841" /> +<TGConnectingPoint num="48" id="2842" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="transferCompleted" value="false" type="4" typeOther="" /> +<Attribute access="2" id="ID" value="" type="0" typeOther="" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1524" id="2793" > +<father id="2843" num="0" /> +<cdparam x="359" y="94" /> +<sizeparam width="171" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" /> +<infoparam name="action state" value="transferCompleted = true" /> +<TGConnectingPoint num="0" id="2785" /> +<TGConnectingPoint num="1" id="2786" /> +<TGConnectingPoint num="2" id="2787" /> +<TGConnectingPoint num="3" id="2788" /> +<TGConnectingPoint num="4" id="2789" /> +<TGConnectingPoint num="5" id="2790" /> +<TGConnectingPoint num="6" id="2791" /> +<TGConnectingPoint num="7" id="2792" /> +</SUBCOMPONENT> + + +</TMLSDPanel> + +<CommunicationPatternDiagramPanel name="PollingCycleAD" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1507" id="2845" > +<cdparam x="284" y="342" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="2844" /> +</COMPONENT> + +<COMPONENT type="1500" id="2861" > +<cdparam x="279" y="223" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="choice6" value="null" /> +<TGConnectingPoint num="0" id="2849" /> +<TGConnectingPoint num="1" id="2850" /> +<TGConnectingPoint num="2" id="2851" /> +<TGConnectingPoint num="3" id="2852" /> +<TGConnectingPoint num="4" id="2853" /> +<TGConnectingPoint num="5" id="2854" /> +<TGConnectingPoint num="6" id="2855" /> +<TGConnectingPoint num="7" id="2856" /> +<TGConnectingPoint num="8" id="2857" /> +<TGConnectingPoint num="9" id="2858" /> +<TGConnectingPoint num="10" id="2859" /> +<TGConnectingPoint num="11" id="2860" /> +</COMPONENT> +<SUBCOMPONENT type="-1" id="2846" > +<father id="2861" num="0" /> +<cdparam x="204" y="233" /> +<sizeparam width="197" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ transferTerminated == false ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="2847" > +<father id="2861" num="1" /> +<cdparam x="314" y="233" /> +<sizeparam width="14" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="2848" > +<father id="2861" num="2" /> +<cdparam x="299" y="268" /> +<sizeparam width="193" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ transferTerminated == true ]" /> +</SUBCOMPONENT> + +<!-- Issue #69 COMPONENT type="1508" id="2866" > +<cdparam x="279" y="127" /> +<sizeparam width="30" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="junction6" value="" /> +<TGConnectingPoint num="0" id="2862" /> +<TGConnectingPoint num="1" id="2863" /> +<TGConnectingPoint num="2" id="2864" /> +<TGConnectingPoint num="3" id="2865" /> +</COMPONENT--> + +<COMPONENT type="1505" id="2877" > +<cdparam x="101" y="296" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="PollingCycleSD" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="2867" /> +<TGConnectingPoint num="1" id="2868" /> +<TGConnectingPoint num="2" id="2869" /> +<TGConnectingPoint num="3" id="2870" /> +<TGConnectingPoint num="4" id="2871" /> +<TGConnectingPoint num="5" id="2872" /> +<TGConnectingPoint num="6" id="2873" /> +<TGConnectingPoint num="7" id="2874" /> +<TGConnectingPoint num="8" id="2875" /> +<TGConnectingPoint num="9" id="2876" /> +</COMPONENT> + +<COMPONENT type="1506" id="2879" > +<cdparam x="287" y="59" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="2878" /> +</COMPONENT> + +<CONNECTOR type="1501" id="2880" > +<cdparam x="294" y="278" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="294" y="278" id="2852" /> +<P2 x="294" y="337" id="2844" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2884" > +<cdparam x="163" y="336" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="163" y="336" id="2868" /> +<P2 x="279" y="142" id="2863" /> +<Point x="163" y="389" /> +<Point x="55" y="389" /> +<Point x="55" y="142" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2881" > +<father id="2884" num="0" /> +<cdparam x="163" y="389" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="2882" > +<father id="2884" num="1" /> +<cdparam x="55" y="389" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="2883" > +<father id="2884" num="2" /> +<cdparam x="55" y="142" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="1501" id="2886" > +<cdparam x="254" y="238" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="254" y="238" id="2850" /> +<P2 x="163" y="291" id="2867" /> +<Point x="163" y="238" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="2885" > +<father id="2886" num="0" /> +<cdparam x="163" y="238" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="1501" id="2887" > +<cdparam x="294" y="157" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="294" y="157" id="2865" /> +<P2 x="294" y="213" id="2849" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="2888" > +<cdparam x="294" y="79" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="294" y="79" id="2878" /> +<P2 x="294" y="127" id="2862" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</CommunicationPatternDiagramPanel> + +<TMLSDPanel name="PollingCycleSD" minX="10" maxX="720" minY="10" maxY="563" > +<COMPONENT type="1521" id="2938" > +<cdparam x="414" y="63" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="720" minY="10" maxY="563" /> +<infoparam name="TransferInstance_4" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="2889" /> +<TGConnectingPoint num="1" id="2890" /> +<TGConnectingPoint num="2" id="2891" /> +<TGConnectingPoint num="3" id="2892" /> +<TGConnectingPoint num="4" id="2893" /> +<TGConnectingPoint num="5" id="2894" /> +<TGConnectingPoint num="6" id="2895" /> +<TGConnectingPoint num="7" id="2896" /> +<TGConnectingPoint num="8" id="2897" /> +<TGConnectingPoint num="9" id="2898" /> +<TGConnectingPoint num="10" id="2899" /> +<TGConnectingPoint num="11" id="2900" /> +<TGConnectingPoint num="12" id="2901" /> +<TGConnectingPoint num="13" id="2902" /> +<TGConnectingPoint num="14" id="2903" /> +<TGConnectingPoint num="15" id="2904" /> +<TGConnectingPoint num="16" id="2905" /> +<TGConnectingPoint num="17" id="2906" /> +<TGConnectingPoint num="18" id="2907" /> +<TGConnectingPoint num="19" id="2908" /> +<TGConnectingPoint num="20" id="2909" /> +<TGConnectingPoint num="21" id="2910" /> +<TGConnectingPoint num="22" id="2911" /> +<TGConnectingPoint num="23" id="2912" /> +<TGConnectingPoint num="24" id="2913" /> +<TGConnectingPoint num="25" id="2914" /> +<TGConnectingPoint num="26" id="2915" /> +<TGConnectingPoint num="27" id="2916" /> +<TGConnectingPoint num="28" id="2917" /> +<TGConnectingPoint num="29" id="2918" /> +<TGConnectingPoint num="30" id="2919" /> +<TGConnectingPoint num="31" id="2920" /> +<TGConnectingPoint num="32" id="2921" /> +<TGConnectingPoint num="33" id="2922" /> +<TGConnectingPoint num="34" id="2923" /> +<TGConnectingPoint num="35" id="2924" /> +<TGConnectingPoint num="36" id="2925" /> +<TGConnectingPoint num="37" id="2926" /> +<TGConnectingPoint num="38" id="2927" /> +<TGConnectingPoint num="39" id="2928" /> +<TGConnectingPoint num="40" id="2929" /> +<TGConnectingPoint num="41" id="2930" /> +<TGConnectingPoint num="42" id="2931" /> +<TGConnectingPoint num="43" id="2932" /> +<TGConnectingPoint num="44" id="2933" /> +<TGConnectingPoint num="45" id="2934" /> +<TGConnectingPoint num="46" id="2935" /> +<TGConnectingPoint num="47" id="2936" /> +<TGConnectingPoint num="48" id="2937" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="ID" value="" type="0" typeOther="" /> +<Attribute access="2" id="transferTerminated" value="" type="4" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="2988" > +<cdparam x="668" y="63" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="720" minY="10" maxY="563" /> +<infoparam name="DMA_Controller" value="Controller instance name" /> +<TGConnectingPoint num="0" id="2939" /> +<TGConnectingPoint num="1" id="2940" /> +<TGConnectingPoint num="2" id="2941" /> +<TGConnectingPoint num="3" id="2942" /> +<TGConnectingPoint num="4" id="2943" /> +<TGConnectingPoint num="5" id="2944" /> +<TGConnectingPoint num="6" id="2945" /> +<TGConnectingPoint num="7" id="2946" /> +<TGConnectingPoint num="8" id="2947" /> +<TGConnectingPoint num="9" id="2948" /> +<TGConnectingPoint num="10" id="2949" /> +<TGConnectingPoint num="11" id="2950" /> +<TGConnectingPoint num="12" id="2951" /> +<TGConnectingPoint num="13" id="2952" /> +<TGConnectingPoint num="14" id="2953" /> +<TGConnectingPoint num="15" id="2954" /> +<TGConnectingPoint num="16" id="2955" /> +<TGConnectingPoint num="17" id="2956" /> +<TGConnectingPoint num="18" id="2957" /> +<TGConnectingPoint num="19" id="2958" /> +<TGConnectingPoint num="20" id="2959" /> +<TGConnectingPoint num="21" id="2960" /> +<TGConnectingPoint num="22" id="2961" /> +<TGConnectingPoint num="23" id="2962" /> +<TGConnectingPoint num="24" id="2963" /> +<TGConnectingPoint num="25" id="2964" /> +<TGConnectingPoint num="26" id="2965" /> +<TGConnectingPoint num="27" id="2966" /> +<TGConnectingPoint num="28" id="2967" /> +<TGConnectingPoint num="29" id="2968" /> +<TGConnectingPoint num="30" id="2969" /> +<TGConnectingPoint num="31" id="2970" /> +<TGConnectingPoint num="32" id="2971" /> +<TGConnectingPoint num="33" id="2972" /> +<TGConnectingPoint num="34" id="2973" /> +<TGConnectingPoint num="35" id="2974" /> +<TGConnectingPoint num="36" id="2975" /> +<TGConnectingPoint num="37" id="2976" /> +<TGConnectingPoint num="38" id="2977" /> +<TGConnectingPoint num="39" id="2978" /> +<TGConnectingPoint num="40" id="2979" /> +<TGConnectingPoint num="41" id="2980" /> +<TGConnectingPoint num="42" id="2981" /> +<TGConnectingPoint num="43" id="2982" /> +<TGConnectingPoint num="44" id="2983" /> +<TGConnectingPoint num="45" id="2984" /> +<TGConnectingPoint num="46" id="2985" /> +<TGConnectingPoint num="47" id="2986" /> +<TGConnectingPoint num="48" id="2987" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="counter" value="" type="0" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="ID" value="" type="0" typeOther="" /> +<Attribute access="2" id="size" value="" type="0" typeOther="" /> +<Attribute access="2" id="transferTerminated" value="false" type="4" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="3047" > +<cdparam x="153" y="63" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="720" minY="10" maxY="563" /> +<infoparam name="CPU_Controller" value="Controller instance name" /> +<TGConnectingPoint num="0" id="2998" /> +<TGConnectingPoint num="1" id="2999" /> +<TGConnectingPoint num="2" id="3000" /> +<TGConnectingPoint num="3" id="3001" /> +<TGConnectingPoint num="4" id="3002" /> +<TGConnectingPoint num="5" id="3003" /> +<TGConnectingPoint num="6" id="3004" /> +<TGConnectingPoint num="7" id="3005" /> +<TGConnectingPoint num="8" id="3006" /> +<TGConnectingPoint num="9" id="3007" /> +<TGConnectingPoint num="10" id="3008" /> +<TGConnectingPoint num="11" id="3009" /> +<TGConnectingPoint num="12" id="3010" /> +<TGConnectingPoint num="13" id="3011" /> +<TGConnectingPoint num="14" id="3012" /> +<TGConnectingPoint num="15" id="3013" /> +<TGConnectingPoint num="16" id="3014" /> +<TGConnectingPoint num="17" id="3015" /> +<TGConnectingPoint num="18" id="3016" /> +<TGConnectingPoint num="19" id="3017" /> +<TGConnectingPoint num="20" id="3018" /> +<TGConnectingPoint num="21" id="3019" /> +<TGConnectingPoint num="22" id="3020" /> +<TGConnectingPoint num="23" id="3021" /> +<TGConnectingPoint num="24" id="3022" /> +<TGConnectingPoint num="25" id="3023" /> +<TGConnectingPoint num="26" id="3024" /> +<TGConnectingPoint num="27" id="3025" /> +<TGConnectingPoint num="28" id="3026" /> +<TGConnectingPoint num="29" id="3027" /> +<TGConnectingPoint num="30" id="3028" /> +<TGConnectingPoint num="31" id="3029" /> +<TGConnectingPoint num="32" id="3030" /> +<TGConnectingPoint num="33" id="3031" /> +<TGConnectingPoint num="34" id="3032" /> +<TGConnectingPoint num="35" id="3033" /> +<TGConnectingPoint num="36" id="3034" /> +<TGConnectingPoint num="37" id="3035" /> +<TGConnectingPoint num="38" id="3036" /> +<TGConnectingPoint num="39" id="3037" /> +<TGConnectingPoint num="40" id="3038" /> +<TGConnectingPoint num="41" id="3039" /> +<TGConnectingPoint num="42" id="3040" /> +<TGConnectingPoint num="43" id="3041" /> +<TGConnectingPoint num="44" id="3042" /> +<TGConnectingPoint num="45" id="3043" /> +<TGConnectingPoint num="46" id="3044" /> +<TGConnectingPoint num="47" id="3045" /> +<TGConnectingPoint num="48" id="3046" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="bytesToTransfer" value="" type="0" typeOther="" /> +<Attribute access="2" id="transferTerminated" value="" type="4" typeOther="" /> +<Attribute access="2" id="sourceAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="destinationAddress" value="" type="0" typeOther="" /> +<Attribute access="2" id="ID" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1524" id="2997" > +<father id="3047" num="0" /> +<cdparam x="158" y="79" /> +<sizeparam width="122" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" /> +<infoparam name="action state" value="wait(waiting_time)" /> +<TGConnectingPoint num="0" id="2989" /> +<TGConnectingPoint num="1" id="2990" /> +<TGConnectingPoint num="2" id="2991" /> +<TGConnectingPoint num="3" id="2992" /> +<TGConnectingPoint num="4" id="2993" /> +<TGConnectingPoint num="5" id="2994" /> +<TGConnectingPoint num="6" id="2995" /> +<TGConnectingPoint num="7" id="2996" /> +</SUBCOMPONENT> + +<CONNECTOR type="1523" id="3048" > +<cdparam x="419" y="223" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Polling" value="Polling(ID, transferTerminated)" /> +<P1 x="419" y="223" id="2904" /> +<P2 x="158" y="223" id="3013" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="ID" /> +<Param index="1" id="transferTerminated" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="3049" > +<cdparam x="644" y="183" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Polling" value="Polling(ID, transferTerminated)" /> +<P1 x="673" y="183" id="2950" /> +<P2 x="419" y="183" id="2900" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="ID" /> +<Param index="1" id="transferTerminated" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="3050" > +<cdparam x="419" y="173" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="PollingRequest" value="PollingRequest(ID, transferTerminated)" /> +<P1 x="419" y="143" id="2896" /> +<P2 x="673" y="143" id="2946" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="ID" /> +<Param index="1" id="transferTerminated" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="3051" > +<cdparam x="200" y="143" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="PollingRequest" value="PollingRequest(ID, transferTerminated)" /> +<P1 x="158" y="123" id="3003" /> +<P2 x="419" y="123" id="2894" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="ID" /> +<Param index="1" id="transferTerminated" /> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +</Modeling> + + + + +<Modeling type="TML CP" nameTab="Double_DMA_transfer" > +<CommunicationPatternDiagramPanel name="MainCP" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1507" id="3053" > +<cdparam x="234" y="316" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="3052" /> +</COMPONENT> + +<COMPONENT type="1506" id="3055" > +<cdparam x="237" y="80" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="3054" /> +</COMPONENT> + +<COMPONENT type="301" id="3072" > +<cdparam x="448" y="98" /> +<sizeparam width="396" height="75" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value="Some parameters are mapping dependent: +- counter1 and counter2 (depend on the application model) +- the source and destination addresses + +This model supposes that the DMA replies via +INTERRUPTS +" /> +<TGConnectingPoint num="0" id="3056" /> +<TGConnectingPoint num="1" id="3057" /> +<TGConnectingPoint num="2" id="3058" /> +<TGConnectingPoint num="3" id="3059" /> +<TGConnectingPoint num="4" id="3060" /> +<TGConnectingPoint num="5" id="3061" /> +<TGConnectingPoint num="6" id="3062" /> +<TGConnectingPoint num="7" id="3063" /> +<TGConnectingPoint num="8" id="3064" /> +<TGConnectingPoint num="9" id="3065" /> +<TGConnectingPoint num="10" id="3066" /> +<TGConnectingPoint num="11" id="3067" /> +<TGConnectingPoint num="12" id="3068" /> +<TGConnectingPoint num="13" id="3069" /> +<TGConnectingPoint num="14" id="3070" /> +<TGConnectingPoint num="15" id="3071" /> +<extraparam> +<Line value="Some parameters are mapping dependent:" /> +<Line value="- counter1 and counter2 (depend on the application model)" /> +<Line value="- the source and destination addresses" /> +<Line value="" /> +<Line value="This model supposes that the DMA replies via" /> +<Line value="INTERRUPTS" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1504" id="3083" > +<cdparam x="183" y="230" /> +<sizeparam width="123" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMATransfer2" value="Reference to a CP" /> +<TGConnectingPoint num="0" id="3073" /> +<TGConnectingPoint num="1" id="3074" /> +<TGConnectingPoint num="2" id="3075" /> +<TGConnectingPoint num="3" id="3076" /> +<TGConnectingPoint num="4" id="3077" /> +<TGConnectingPoint num="5" id="3078" /> +<TGConnectingPoint num="6" id="3079" /> +<TGConnectingPoint num="7" id="3080" /> +<TGConnectingPoint num="8" id="3081" /> +<TGConnectingPoint num="9" id="3082" /> +</COMPONENT> + +<COMPONENT type="1504" id="3094" > +<cdparam x="183" y="139" /> +<sizeparam width="123" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMATransfer1" value="Reference to a CP" /> +<TGConnectingPoint num="0" id="3084" /> +<TGConnectingPoint num="1" id="3085" /> +<TGConnectingPoint num="2" id="3086" /> +<TGConnectingPoint num="3" id="3087" /> +<TGConnectingPoint num="4" id="3088" /> +<TGConnectingPoint num="5" id="3089" /> +<TGConnectingPoint num="6" id="3090" /> +<TGConnectingPoint num="7" id="3091" /> +<TGConnectingPoint num="8" id="3092" /> +<TGConnectingPoint num="9" id="3093" /> +</COMPONENT> + +<CONNECTOR type="1501" id="3095" > +<cdparam x="246" y="268" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="244" y="270" id="3074" /> +<P2 x="244" y="311" id="3052" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="3096" > +<cdparam x="244" y="179" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="244" y="179" id="3085" /> +<P2 x="244" y="225" id="3073" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="3097" > +<cdparam x="242" y="116" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="244" y="100" id="3054" /> +<P2 x="244" y="134" id="3084" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</CommunicationPatternDiagramPanel> + +<CommunicationPatternDiagramPanel name="DMATransfer1" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1507" id="3099" > +<cdparam x="437" y="337" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="3098" /> +</COMPONENT> + +<COMPONENT type="1510" id="3103" > +<cdparam x="184" y="193" /> +<sizeparam width="164" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="for loop" value="for(i=counter1;i>0;i=i-1)" /> +<TGConnectingPoint num="0" id="3100" /> +<TGConnectingPoint num="1" id="3101" /> +<TGConnectingPoint num="2" id="3102" /> +<extraparam> +<Data init="i=counter1" condition="i>0" increment="i=i-1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1507" id="3105" > +<cdparam x="256" y="350" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="3104" /> +</COMPONENT> + +<COMPONENT type="1505" id="3116" > +<cdparam x="385" y="250" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMACycle_SD1" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="3106" /> +<TGConnectingPoint num="1" id="3107" /> +<TGConnectingPoint num="2" id="3108" /> +<TGConnectingPoint num="3" id="3109" /> +<TGConnectingPoint num="4" id="3110" /> +<TGConnectingPoint num="5" id="3111" /> +<TGConnectingPoint num="6" id="3112" /> +<TGConnectingPoint num="7" id="3113" /> +<TGConnectingPoint num="8" id="3114" /> +<TGConnectingPoint num="9" id="3115" /> +</COMPONENT> + +<COMPONENT type="1505" id="3127" > +<cdparam x="204" y="275" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TerminateDMA_SD1" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="3117" /> +<TGConnectingPoint num="1" id="3118" /> +<TGConnectingPoint num="2" id="3119" /> +<TGConnectingPoint num="3" id="3120" /> +<TGConnectingPoint num="4" id="3121" /> +<TGConnectingPoint num="5" id="3122" /> +<TGConnectingPoint num="6" id="3123" /> +<TGConnectingPoint num="7" id="3124" /> +<TGConnectingPoint num="8" id="3125" /> +<TGConnectingPoint num="9" id="3126" /> +</COMPONENT> + +<COMPONENT type="1505" id="3138" > +<cdparam x="203" y="99" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="ConfigureDMA_SD1" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="3128" /> +<TGConnectingPoint num="1" id="3129" /> +<TGConnectingPoint num="2" id="3130" /> +<TGConnectingPoint num="3" id="3131" /> +<TGConnectingPoint num="4" id="3132" /> +<TGConnectingPoint num="5" id="3133" /> +<TGConnectingPoint num="6" id="3134" /> +<TGConnectingPoint num="7" id="3135" /> +<TGConnectingPoint num="8" id="3136" /> +<TGConnectingPoint num="9" id="3137" /> +</COMPONENT> + +<COMPONENT type="1506" id="3140" > +<cdparam x="258" y="35" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="3139" /> +</COMPONENT> + +<CONNECTOR type="1501" id="3142" > +<cdparam x="331" y="207" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="348" y="207" id="3101" /> +<P2 x="447" y="245" id="3106" /> +<Point x="447" y="207" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3141" > +<father id="3142" num="0" /> +<cdparam x="447" y="207" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="1501" id="3143" > +<cdparam x="99" y="298" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="266" y="218" id="3102" /> +<P2 x="266" y="270" id="3117" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="3144" > +<cdparam x="77" y="391" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="447" y="290" id="3107" /> +<P2 x="447" y="332" id="3098" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="3145" > +<cdparam x="266" y="315" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="266" y="315" id="3118" /> +<P2 x="266" y="345" id="3104" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="3146" > +<cdparam x="265" y="139" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="265" y="139" id="3129" /> +<P2 x="266" y="188" id="3100" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="3147" > +<cdparam x="263" y="31" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="265" y="55" id="3139" /> +<P2 x="265" y="94" id="3128" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</CommunicationPatternDiagramPanel> + +<CommunicationPatternDiagramPanel name="DMATransfer2" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1507" id="3149" > +<cdparam x="416" y="344" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="3148" /> +</COMPONENT> + +<COMPONENT type="1510" id="3153" > +<cdparam x="154" y="195" /> +<sizeparam width="172" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="for loop" value="for(i=counter2;i>0;i = i-1)" /> +<TGConnectingPoint num="0" id="3150" /> +<TGConnectingPoint num="1" id="3151" /> +<TGConnectingPoint num="2" id="3152" /> +<extraparam> +<Data init="i=counter2" condition="i>0" increment="i = i-1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1507" id="3155" > +<cdparam x="230" y="371" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="3154" /> +</COMPONENT> + +<COMPONENT type="1505" id="3166" > +<cdparam x="364" y="256" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMACycle_SD2" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="3156" /> +<TGConnectingPoint num="1" id="3157" /> +<TGConnectingPoint num="2" id="3158" /> +<TGConnectingPoint num="3" id="3159" /> +<TGConnectingPoint num="4" id="3160" /> +<TGConnectingPoint num="5" id="3161" /> +<TGConnectingPoint num="6" id="3162" /> +<TGConnectingPoint num="7" id="3163" /> +<TGConnectingPoint num="8" id="3164" /> +<TGConnectingPoint num="9" id="3165" /> +</COMPONENT> + +<COMPONENT type="1505" id="3177" > +<cdparam x="178" y="296" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="TerminateDMA_SD2" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="3167" /> +<TGConnectingPoint num="1" id="3168" /> +<TGConnectingPoint num="2" id="3169" /> +<TGConnectingPoint num="3" id="3170" /> +<TGConnectingPoint num="4" id="3171" /> +<TGConnectingPoint num="5" id="3172" /> +<TGConnectingPoint num="6" id="3173" /> +<TGConnectingPoint num="7" id="3174" /> +<TGConnectingPoint num="8" id="3175" /> +<TGConnectingPoint num="9" id="3176" /> +</COMPONENT> + +<COMPONENT type="1505" id="3188" > +<cdparam x="178" y="103" /> +<sizeparam width="124" height="35" minWidth="70" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="ConfigureDMA_SD2" value="Reference to a SD" /> +<TGConnectingPoint num="0" id="3178" /> +<TGConnectingPoint num="1" id="3179" /> +<TGConnectingPoint num="2" id="3180" /> +<TGConnectingPoint num="3" id="3181" /> +<TGConnectingPoint num="4" id="3182" /> +<TGConnectingPoint num="5" id="3183" /> +<TGConnectingPoint num="6" id="3184" /> +<TGConnectingPoint num="7" id="3185" /> +<TGConnectingPoint num="8" id="3186" /> +<TGConnectingPoint num="9" id="3187" /> +</COMPONENT> + +<COMPONENT type="1506" id="3190" > +<cdparam x="233" y="39" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="3189" /> +</COMPONENT> + +<CONNECTOR type="1501" id="3192" > +<cdparam x="322" y="209" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="326" y="209" id="3151" /> +<P2 x="426" y="251" id="3156" /> +<Point x="426" y="209" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="3191" > +<father id="3192" num="0" /> +<cdparam x="426" y="209" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="1501" id="3193" > +<cdparam x="12" y="432" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="426" y="296" id="3157" /> +<P2 x="426" y="339" id="3148" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="3194" > +<cdparam x="58" y="331" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="240" y="220" id="3152" /> +<P2 x="240" y="291" id="3167" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="3195" > +<cdparam x="240" y="336" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="240" y="336" id="3168" /> +<P2 x="240" y="366" id="3154" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="3196" > +<cdparam x="240" y="143" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="240" y="143" id="3179" /> +<P2 x="240" y="190" id="3150" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="1501" id="3197" > +<cdparam x="238" y="35" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="240" y="59" id="3189" /> +<P2 x="240" y="98" id="3178" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</CommunicationPatternDiagramPanel> + +<TMLSDPanel name="ConfigureDMA_SD1" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1521" id="3247" > +<cdparam x="386" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance_1" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="3198" /> +<TGConnectingPoint num="1" id="3199" /> +<TGConnectingPoint num="2" id="3200" /> +<TGConnectingPoint num="3" id="3201" /> +<TGConnectingPoint num="4" id="3202" /> +<TGConnectingPoint num="5" id="3203" /> +<TGConnectingPoint num="6" id="3204" /> +<TGConnectingPoint num="7" id="3205" /> +<TGConnectingPoint num="8" id="3206" /> +<TGConnectingPoint num="9" id="3207" /> +<TGConnectingPoint num="10" id="3208" /> +<TGConnectingPoint num="11" id="3209" /> +<TGConnectingPoint num="12" id="3210" /> +<TGConnectingPoint num="13" id="3211" /> +<TGConnectingPoint num="14" id="3212" /> +<TGConnectingPoint num="15" id="3213" /> +<TGConnectingPoint num="16" id="3214" /> +<TGConnectingPoint num="17" id="3215" /> +<TGConnectingPoint num="18" id="3216" /> +<TGConnectingPoint num="19" id="3217" /> +<TGConnectingPoint num="20" id="3218" /> +<TGConnectingPoint num="21" id="3219" /> +<TGConnectingPoint num="22" id="3220" /> +<TGConnectingPoint num="23" id="3221" /> +<TGConnectingPoint num="24" id="3222" /> +<TGConnectingPoint num="25" id="3223" /> +<TGConnectingPoint num="26" id="3224" /> +<TGConnectingPoint num="27" id="3225" /> +<TGConnectingPoint num="28" id="3226" /> +<TGConnectingPoint num="29" id="3227" /> +<TGConnectingPoint num="30" id="3228" /> +<TGConnectingPoint num="31" id="3229" /> +<TGConnectingPoint num="32" id="3230" /> +<TGConnectingPoint num="33" id="3231" /> +<TGConnectingPoint num="34" id="3232" /> +<TGConnectingPoint num="35" id="3233" /> +<TGConnectingPoint num="36" id="3234" /> +<TGConnectingPoint num="37" id="3235" /> +<TGConnectingPoint num="38" id="3236" /> +<TGConnectingPoint num="39" id="3237" /> +<TGConnectingPoint num="40" id="3238" /> +<TGConnectingPoint num="41" id="3239" /> +<TGConnectingPoint num="42" id="3240" /> +<TGConnectingPoint num="43" id="3241" /> +<TGConnectingPoint num="44" id="3242" /> +<TGConnectingPoint num="45" id="3243" /> +<TGConnectingPoint num="46" id="3244" /> +<TGConnectingPoint num="47" id="3245" /> +<TGConnectingPoint num="48" id="3246" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="3306" > +<cdparam x="611" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMA_Controller_1" value="Controller instance name" /> +<TGConnectingPoint num="0" id="3257" /> +<TGConnectingPoint num="1" id="3258" /> +<TGConnectingPoint num="2" id="3259" /> +<TGConnectingPoint num="3" id="3260" /> +<TGConnectingPoint num="4" id="3261" /> +<TGConnectingPoint num="5" id="3262" /> +<TGConnectingPoint num="6" id="3263" /> +<TGConnectingPoint num="7" id="3264" /> +<TGConnectingPoint num="8" id="3265" /> +<TGConnectingPoint num="9" id="3266" /> +<TGConnectingPoint num="10" id="3267" /> +<TGConnectingPoint num="11" id="3268" /> +<TGConnectingPoint num="12" id="3269" /> +<TGConnectingPoint num="13" id="3270" /> +<TGConnectingPoint num="14" id="3271" /> +<TGConnectingPoint num="15" id="3272" /> +<TGConnectingPoint num="16" id="3273" /> +<TGConnectingPoint num="17" id="3274" /> +<TGConnectingPoint num="18" id="3275" /> +<TGConnectingPoint num="19" id="3276" /> +<TGConnectingPoint num="20" id="3277" /> +<TGConnectingPoint num="21" id="3278" /> +<TGConnectingPoint num="22" id="3279" /> +<TGConnectingPoint num="23" id="3280" /> +<TGConnectingPoint num="24" id="3281" /> +<TGConnectingPoint num="25" id="3282" /> +<TGConnectingPoint num="26" id="3283" /> +<TGConnectingPoint num="27" id="3284" /> +<TGConnectingPoint num="28" id="3285" /> +<TGConnectingPoint num="29" id="3286" /> +<TGConnectingPoint num="30" id="3287" /> +<TGConnectingPoint num="31" id="3288" /> +<TGConnectingPoint num="32" id="3289" /> +<TGConnectingPoint num="33" id="3290" /> +<TGConnectingPoint num="34" id="3291" /> +<TGConnectingPoint num="35" id="3292" /> +<TGConnectingPoint num="36" id="3293" /> +<TGConnectingPoint num="37" id="3294" /> +<TGConnectingPoint num="38" id="3295" /> +<TGConnectingPoint num="39" id="3296" /> +<TGConnectingPoint num="40" id="3297" /> +<TGConnectingPoint num="41" id="3298" /> +<TGConnectingPoint num="42" id="3299" /> +<TGConnectingPoint num="43" id="3300" /> +<TGConnectingPoint num="44" id="3301" /> +<TGConnectingPoint num="45" id="3302" /> +<TGConnectingPoint num="46" id="3303" /> +<TGConnectingPoint num="47" id="3304" /> +<TGConnectingPoint num="48" id="3305" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1524" id="3256" > +<father id="3306" num="0" /> +<cdparam x="616" y="151" /> +<sizeparam width="194" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" /> +<infoparam name="action state" value="counter1 = bytesToTransfer1" /> +<TGConnectingPoint num="0" id="3248" /> +<TGConnectingPoint num="1" id="3249" /> +<TGConnectingPoint num="2" id="3250" /> +<TGConnectingPoint num="3" id="3251" /> +<TGConnectingPoint num="4" id="3252" /> +<TGConnectingPoint num="5" id="3253" /> +<TGConnectingPoint num="6" id="3254" /> +<TGConnectingPoint num="7" id="3255" /> +</SUBCOMPONENT> + +<COMPONENT type="1522" id="3356" > +<cdparam x="167" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CPU_Controller_1" value="Controller instance name" /> +<TGConnectingPoint num="0" id="3307" /> +<TGConnectingPoint num="1" id="3308" /> +<TGConnectingPoint num="2" id="3309" /> +<TGConnectingPoint num="3" id="3310" /> +<TGConnectingPoint num="4" id="3311" /> +<TGConnectingPoint num="5" id="3312" /> +<TGConnectingPoint num="6" id="3313" /> +<TGConnectingPoint num="7" id="3314" /> +<TGConnectingPoint num="8" id="3315" /> +<TGConnectingPoint num="9" id="3316" /> +<TGConnectingPoint num="10" id="3317" /> +<TGConnectingPoint num="11" id="3318" /> +<TGConnectingPoint num="12" id="3319" /> +<TGConnectingPoint num="13" id="3320" /> +<TGConnectingPoint num="14" id="3321" /> +<TGConnectingPoint num="15" id="3322" /> +<TGConnectingPoint num="16" id="3323" /> +<TGConnectingPoint num="17" id="3324" /> +<TGConnectingPoint num="18" id="3325" /> +<TGConnectingPoint num="19" id="3326" /> +<TGConnectingPoint num="20" id="3327" /> +<TGConnectingPoint num="21" id="3328" /> +<TGConnectingPoint num="22" id="3329" /> +<TGConnectingPoint num="23" id="3330" /> +<TGConnectingPoint num="24" id="3331" /> +<TGConnectingPoint num="25" id="3332" /> +<TGConnectingPoint num="26" id="3333" /> +<TGConnectingPoint num="27" id="3334" /> +<TGConnectingPoint num="28" id="3335" /> +<TGConnectingPoint num="29" id="3336" /> +<TGConnectingPoint num="30" id="3337" /> +<TGConnectingPoint num="31" id="3338" /> +<TGConnectingPoint num="32" id="3339" /> +<TGConnectingPoint num="33" id="3340" /> +<TGConnectingPoint num="34" id="3341" /> +<TGConnectingPoint num="35" id="3342" /> +<TGConnectingPoint num="36" id="3343" /> +<TGConnectingPoint num="37" id="3344" /> +<TGConnectingPoint num="38" id="3345" /> +<TGConnectingPoint num="39" id="3346" /> +<TGConnectingPoint num="40" id="3347" /> +<TGConnectingPoint num="41" id="3348" /> +<TGConnectingPoint num="42" id="3349" /> +<TGConnectingPoint num="43" id="3350" /> +<TGConnectingPoint num="44" id="3351" /> +<TGConnectingPoint num="45" id="3352" /> +<TGConnectingPoint num="46" id="3353" /> +<TGConnectingPoint num="47" id="3354" /> +<TGConnectingPoint num="48" id="3355" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="1523" id="3357" > +<cdparam x="391" y="166" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferRequest" value="TransferRequest(counter1, sourceAddress1, destinationAddress1)" /> +<P1 x="391" y="126" id="3204" /> +<P2 x="616" y="126" id="3263" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="counter1" /> +<Param index="1" id="sourceAddress1" /> +<Param index="2" id="destinationAddress1" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="3358" > +<cdparam x="172" y="136" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferRequest" value="TransferRequest(counter1, sourceAddress1, destinationAddress1)" /> +<P1 x="172" y="96" id="3310" /> +<P2 x="391" y="96" id="3201" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="counter1" /> +<Param index="1" id="sourceAddress1" /> +<Param index="2" id="destinationAddress1" /> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +<TMLSDPanel name="DMACycle_SD1" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1520" id="3408" > +<cdparam x="1072" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Dst_Storage_Instance_1" value="Storage instance name" /> +<TGConnectingPoint num="0" id="3359" /> +<TGConnectingPoint num="1" id="3360" /> +<TGConnectingPoint num="2" id="3361" /> +<TGConnectingPoint num="3" id="3362" /> +<TGConnectingPoint num="4" id="3363" /> +<TGConnectingPoint num="5" id="3364" /> +<TGConnectingPoint num="6" id="3365" /> +<TGConnectingPoint num="7" id="3366" /> +<TGConnectingPoint num="8" id="3367" /> +<TGConnectingPoint num="9" id="3368" /> +<TGConnectingPoint num="10" id="3369" /> +<TGConnectingPoint num="11" id="3370" /> +<TGConnectingPoint num="12" id="3371" /> +<TGConnectingPoint num="13" id="3372" /> +<TGConnectingPoint num="14" id="3373" /> +<TGConnectingPoint num="15" id="3374" /> +<TGConnectingPoint num="16" id="3375" /> +<TGConnectingPoint num="17" id="3376" /> +<TGConnectingPoint num="18" id="3377" /> +<TGConnectingPoint num="19" id="3378" /> +<TGConnectingPoint num="20" id="3379" /> +<TGConnectingPoint num="21" id="3380" /> +<TGConnectingPoint num="22" id="3381" /> +<TGConnectingPoint num="23" id="3382" /> +<TGConnectingPoint num="24" id="3383" /> +<TGConnectingPoint num="25" id="3384" /> +<TGConnectingPoint num="26" id="3385" /> +<TGConnectingPoint num="27" id="3386" /> +<TGConnectingPoint num="28" id="3387" /> +<TGConnectingPoint num="29" id="3388" /> +<TGConnectingPoint num="30" id="3389" /> +<TGConnectingPoint num="31" id="3390" /> +<TGConnectingPoint num="32" id="3391" /> +<TGConnectingPoint num="33" id="3392" /> +<TGConnectingPoint num="34" id="3393" /> +<TGConnectingPoint num="35" id="3394" /> +<TGConnectingPoint num="36" id="3395" /> +<TGConnectingPoint num="37" id="3396" /> +<TGConnectingPoint num="38" id="3397" /> +<TGConnectingPoint num="39" id="3398" /> +<TGConnectingPoint num="40" id="3399" /> +<TGConnectingPoint num="41" id="3400" /> +<TGConnectingPoint num="42" id="3401" /> +<TGConnectingPoint num="43" id="3402" /> +<TGConnectingPoint num="44" id="3403" /> +<TGConnectingPoint num="45" id="3404" /> +<TGConnectingPoint num="46" id="3405" /> +<TGConnectingPoint num="47" id="3406" /> +<TGConnectingPoint num="48" id="3407" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="3458" > +<cdparam x="861" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance_3" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="3409" /> +<TGConnectingPoint num="1" id="3410" /> +<TGConnectingPoint num="2" id="3411" /> +<TGConnectingPoint num="3" id="3412" /> +<TGConnectingPoint num="4" id="3413" /> +<TGConnectingPoint num="5" id="3414" /> +<TGConnectingPoint num="6" id="3415" /> +<TGConnectingPoint num="7" id="3416" /> +<TGConnectingPoint num="8" id="3417" /> +<TGConnectingPoint num="9" id="3418" /> +<TGConnectingPoint num="10" id="3419" /> +<TGConnectingPoint num="11" id="3420" /> +<TGConnectingPoint num="12" id="3421" /> +<TGConnectingPoint num="13" id="3422" /> +<TGConnectingPoint num="14" id="3423" /> +<TGConnectingPoint num="15" id="3424" /> +<TGConnectingPoint num="16" id="3425" /> +<TGConnectingPoint num="17" id="3426" /> +<TGConnectingPoint num="18" id="3427" /> +<TGConnectingPoint num="19" id="3428" /> +<TGConnectingPoint num="20" id="3429" /> +<TGConnectingPoint num="21" id="3430" /> +<TGConnectingPoint num="22" id="3431" /> +<TGConnectingPoint num="23" id="3432" /> +<TGConnectingPoint num="24" id="3433" /> +<TGConnectingPoint num="25" id="3434" /> +<TGConnectingPoint num="26" id="3435" /> +<TGConnectingPoint num="27" id="3436" /> +<TGConnectingPoint num="28" id="3437" /> +<TGConnectingPoint num="29" id="3438" /> +<TGConnectingPoint num="30" id="3439" /> +<TGConnectingPoint num="31" id="3440" /> +<TGConnectingPoint num="32" id="3441" /> +<TGConnectingPoint num="33" id="3442" /> +<TGConnectingPoint num="34" id="3443" /> +<TGConnectingPoint num="35" id="3444" /> +<TGConnectingPoint num="36" id="3445" /> +<TGConnectingPoint num="37" id="3446" /> +<TGConnectingPoint num="38" id="3447" /> +<TGConnectingPoint num="39" id="3448" /> +<TGConnectingPoint num="40" id="3449" /> +<TGConnectingPoint num="41" id="3450" /> +<TGConnectingPoint num="42" id="3451" /> +<TGConnectingPoint num="43" id="3452" /> +<TGConnectingPoint num="44" id="3453" /> +<TGConnectingPoint num="45" id="3454" /> +<TGConnectingPoint num="46" id="3455" /> +<TGConnectingPoint num="47" id="3456" /> +<TGConnectingPoint num="48" id="3457" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="3508" > +<cdparam x="392" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance_2" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="3459" /> +<TGConnectingPoint num="1" id="3460" /> +<TGConnectingPoint num="2" id="3461" /> +<TGConnectingPoint num="3" id="3462" /> +<TGConnectingPoint num="4" id="3463" /> +<TGConnectingPoint num="5" id="3464" /> +<TGConnectingPoint num="6" id="3465" /> +<TGConnectingPoint num="7" id="3466" /> +<TGConnectingPoint num="8" id="3467" /> +<TGConnectingPoint num="9" id="3468" /> +<TGConnectingPoint num="10" id="3469" /> +<TGConnectingPoint num="11" id="3470" /> +<TGConnectingPoint num="12" id="3471" /> +<TGConnectingPoint num="13" id="3472" /> +<TGConnectingPoint num="14" id="3473" /> +<TGConnectingPoint num="15" id="3474" /> +<TGConnectingPoint num="16" id="3475" /> +<TGConnectingPoint num="17" id="3476" /> +<TGConnectingPoint num="18" id="3477" /> +<TGConnectingPoint num="19" id="3478" /> +<TGConnectingPoint num="20" id="3479" /> +<TGConnectingPoint num="21" id="3480" /> +<TGConnectingPoint num="22" id="3481" /> +<TGConnectingPoint num="23" id="3482" /> +<TGConnectingPoint num="24" id="3483" /> +<TGConnectingPoint num="25" id="3484" /> +<TGConnectingPoint num="26" id="3485" /> +<TGConnectingPoint num="27" id="3486" /> +<TGConnectingPoint num="28" id="3487" /> +<TGConnectingPoint num="29" id="3488" /> +<TGConnectingPoint num="30" id="3489" /> +<TGConnectingPoint num="31" id="3490" /> +<TGConnectingPoint num="32" id="3491" /> +<TGConnectingPoint num="33" id="3492" /> +<TGConnectingPoint num="34" id="3493" /> +<TGConnectingPoint num="35" id="3494" /> +<TGConnectingPoint num="36" id="3495" /> +<TGConnectingPoint num="37" id="3496" /> +<TGConnectingPoint num="38" id="3497" /> +<TGConnectingPoint num="39" id="3498" /> +<TGConnectingPoint num="40" id="3499" /> +<TGConnectingPoint num="41" id="3500" /> +<TGConnectingPoint num="42" id="3501" /> +<TGConnectingPoint num="43" id="3502" /> +<TGConnectingPoint num="44" id="3503" /> +<TGConnectingPoint num="45" id="3504" /> +<TGConnectingPoint num="46" id="3505" /> +<TGConnectingPoint num="47" id="3506" /> +<TGConnectingPoint num="48" id="3507" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1520" id="3558" > +<cdparam x="643" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Src_Storage_Instance_1" value="Storage instance name" /> +<TGConnectingPoint num="0" id="3509" /> +<TGConnectingPoint num="1" id="3510" /> +<TGConnectingPoint num="2" id="3511" /> +<TGConnectingPoint num="3" id="3512" /> +<TGConnectingPoint num="4" id="3513" /> +<TGConnectingPoint num="5" id="3514" /> +<TGConnectingPoint num="6" id="3515" /> +<TGConnectingPoint num="7" id="3516" /> +<TGConnectingPoint num="8" id="3517" /> +<TGConnectingPoint num="9" id="3518" /> +<TGConnectingPoint num="10" id="3519" /> +<TGConnectingPoint num="11" id="3520" /> +<TGConnectingPoint num="12" id="3521" /> +<TGConnectingPoint num="13" id="3522" /> +<TGConnectingPoint num="14" id="3523" /> +<TGConnectingPoint num="15" id="3524" /> +<TGConnectingPoint num="16" id="3525" /> +<TGConnectingPoint num="17" id="3526" /> +<TGConnectingPoint num="18" id="3527" /> +<TGConnectingPoint num="19" id="3528" /> +<TGConnectingPoint num="20" id="3529" /> +<TGConnectingPoint num="21" id="3530" /> +<TGConnectingPoint num="22" id="3531" /> +<TGConnectingPoint num="23" id="3532" /> +<TGConnectingPoint num="24" id="3533" /> +<TGConnectingPoint num="25" id="3534" /> +<TGConnectingPoint num="26" id="3535" /> +<TGConnectingPoint num="27" id="3536" /> +<TGConnectingPoint num="28" id="3537" /> +<TGConnectingPoint num="29" id="3538" /> +<TGConnectingPoint num="30" id="3539" /> +<TGConnectingPoint num="31" id="3540" /> +<TGConnectingPoint num="32" id="3541" /> +<TGConnectingPoint num="33" id="3542" /> +<TGConnectingPoint num="34" id="3543" /> +<TGConnectingPoint num="35" id="3544" /> +<TGConnectingPoint num="36" id="3545" /> +<TGConnectingPoint num="37" id="3546" /> +<TGConnectingPoint num="38" id="3547" /> +<TGConnectingPoint num="39" id="3548" /> +<TGConnectingPoint num="40" id="3549" /> +<TGConnectingPoint num="41" id="3550" /> +<TGConnectingPoint num="42" id="3551" /> +<TGConnectingPoint num="43" id="3552" /> +<TGConnectingPoint num="44" id="3553" /> +<TGConnectingPoint num="45" id="3554" /> +<TGConnectingPoint num="46" id="3555" /> +<TGConnectingPoint num="47" id="3556" /> +<TGConnectingPoint num="48" id="3557" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="3617" > +<cdparam x="161" y="56" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMA_Controller_1" value="Controller instance name" /> +<TGConnectingPoint num="0" id="3568" /> +<TGConnectingPoint num="1" id="3569" /> +<TGConnectingPoint num="2" id="3570" /> +<TGConnectingPoint num="3" id="3571" /> +<TGConnectingPoint num="4" id="3572" /> +<TGConnectingPoint num="5" id="3573" /> +<TGConnectingPoint num="6" id="3574" /> +<TGConnectingPoint num="7" id="3575" /> +<TGConnectingPoint num="8" id="3576" /> +<TGConnectingPoint num="9" id="3577" /> +<TGConnectingPoint num="10" id="3578" /> +<TGConnectingPoint num="11" id="3579" /> +<TGConnectingPoint num="12" id="3580" /> +<TGConnectingPoint num="13" id="3581" /> +<TGConnectingPoint num="14" id="3582" /> +<TGConnectingPoint num="15" id="3583" /> +<TGConnectingPoint num="16" id="3584" /> +<TGConnectingPoint num="17" id="3585" /> +<TGConnectingPoint num="18" id="3586" /> +<TGConnectingPoint num="19" id="3587" /> +<TGConnectingPoint num="20" id="3588" /> +<TGConnectingPoint num="21" id="3589" /> +<TGConnectingPoint num="22" id="3590" /> +<TGConnectingPoint num="23" id="3591" /> +<TGConnectingPoint num="24" id="3592" /> +<TGConnectingPoint num="25" id="3593" /> +<TGConnectingPoint num="26" id="3594" /> +<TGConnectingPoint num="27" id="3595" /> +<TGConnectingPoint num="28" id="3596" /> +<TGConnectingPoint num="29" id="3597" /> +<TGConnectingPoint num="30" id="3598" /> +<TGConnectingPoint num="31" id="3599" /> +<TGConnectingPoint num="32" id="3600" /> +<TGConnectingPoint num="33" id="3601" /> +<TGConnectingPoint num="34" id="3602" /> +<TGConnectingPoint num="35" id="3603" /> +<TGConnectingPoint num="36" id="3604" /> +<TGConnectingPoint num="37" id="3605" /> +<TGConnectingPoint num="38" id="3606" /> +<TGConnectingPoint num="39" id="3607" /> +<TGConnectingPoint num="40" id="3608" /> +<TGConnectingPoint num="41" id="3609" /> +<TGConnectingPoint num="42" id="3610" /> +<TGConnectingPoint num="43" id="3611" /> +<TGConnectingPoint num="44" id="3612" /> +<TGConnectingPoint num="45" id="3613" /> +<TGConnectingPoint num="46" id="3614" /> +<TGConnectingPoint num="47" id="3615" /> +<TGConnectingPoint num="48" id="3616" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1524" id="3567" > +<father id="3617" num="0" /> +<cdparam x="166" y="252" /> +<sizeparam width="146" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" /> +<infoparam name="action state" value="counter = counter - 1" /> +<TGConnectingPoint num="0" id="3559" /> +<TGConnectingPoint num="1" id="3560" /> +<TGConnectingPoint num="2" id="3561" /> +<TGConnectingPoint num="3" id="3562" /> +<TGConnectingPoint num="4" id="3563" /> +<TGConnectingPoint num="5" id="3564" /> +<TGConnectingPoint num="6" id="3565" /> +<TGConnectingPoint num="7" id="3566" /> +</SUBCOMPONENT> + +<CONNECTOR type="1523" id="3618" > +<cdparam x="866" y="246" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Write" value="Write(destinationAddress1, 1)" /> +<P1 x="866" y="266" id="3429" /> +<P2 x="1077" y="266" id="3379" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="destinationAddress1" /> +<Param index="1" id="1" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="3619" > +<cdparam x="166" y="216" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Write" value="Write(destinationAddress1, 1)" /> +<P1 x="166" y="236" id="3585" /> +<P2 x="866" y="236" id="3426" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="destinationAddress1" /> +<Param index="1" id="1" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="3620" > +<cdparam x="397" y="126" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Read" value="Read(sourceAddress1, 1)" /> +<P1 x="397" y="146" id="3467" /> +<P2 x="648" y="146" id="3517" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="sourceAddress1" /> +<Param index="1" id="1" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="3621" > +<cdparam x="183" y="95" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Read" value="Read(sourceAddress1, 1)" /> +<P1 x="166" y="116" id="3573" /> +<P2 x="397" y="116" id="3464" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="sourceAddress1" /> +<Param index="1" id="1" /> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +<TMLSDPanel name="TerminateDMA_SD1" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="301" id="3638" > +<cdparam x="716" y="60" /> +<sizeparam width="344" height="39" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="UML Note" value="The transfer instance is different w.r.t. the +transfer instance of the ConfigureTransfer +sequence diagram. +" /> +<TGConnectingPoint num="0" id="3622" /> +<TGConnectingPoint num="1" id="3623" /> +<TGConnectingPoint num="2" id="3624" /> +<TGConnectingPoint num="3" id="3625" /> +<TGConnectingPoint num="4" id="3626" /> +<TGConnectingPoint num="5" id="3627" /> +<TGConnectingPoint num="6" id="3628" /> +<TGConnectingPoint num="7" id="3629" /> +<TGConnectingPoint num="8" id="3630" /> +<TGConnectingPoint num="9" id="3631" /> +<TGConnectingPoint num="10" id="3632" /> +<TGConnectingPoint num="11" id="3633" /> +<TGConnectingPoint num="12" id="3634" /> +<TGConnectingPoint num="13" id="3635" /> +<TGConnectingPoint num="14" id="3636" /> +<TGConnectingPoint num="15" id="3637" /> +<extraparam> +<Line value="The transfer instance is different w.r.t. the" /> +<Line value="transfer instance of the ConfigureTransfer" /> +<Line value="sequence diagram." /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="3688" > +<cdparam x="332" y="52" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance_4" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="3639" /> +<TGConnectingPoint num="1" id="3640" /> +<TGConnectingPoint num="2" id="3641" /> +<TGConnectingPoint num="3" id="3642" /> +<TGConnectingPoint num="4" id="3643" /> +<TGConnectingPoint num="5" id="3644" /> +<TGConnectingPoint num="6" id="3645" /> +<TGConnectingPoint num="7" id="3646" /> +<TGConnectingPoint num="8" id="3647" /> +<TGConnectingPoint num="9" id="3648" /> +<TGConnectingPoint num="10" id="3649" /> +<TGConnectingPoint num="11" id="3650" /> +<TGConnectingPoint num="12" id="3651" /> +<TGConnectingPoint num="13" id="3652" /> +<TGConnectingPoint num="14" id="3653" /> +<TGConnectingPoint num="15" id="3654" /> +<TGConnectingPoint num="16" id="3655" /> +<TGConnectingPoint num="17" id="3656" /> +<TGConnectingPoint num="18" id="3657" /> +<TGConnectingPoint num="19" id="3658" /> +<TGConnectingPoint num="20" id="3659" /> +<TGConnectingPoint num="21" id="3660" /> +<TGConnectingPoint num="22" id="3661" /> +<TGConnectingPoint num="23" id="3662" /> +<TGConnectingPoint num="24" id="3663" /> +<TGConnectingPoint num="25" id="3664" /> +<TGConnectingPoint num="26" id="3665" /> +<TGConnectingPoint num="27" id="3666" /> +<TGConnectingPoint num="28" id="3667" /> +<TGConnectingPoint num="29" id="3668" /> +<TGConnectingPoint num="30" id="3669" /> +<TGConnectingPoint num="31" id="3670" /> +<TGConnectingPoint num="32" id="3671" /> +<TGConnectingPoint num="33" id="3672" /> +<TGConnectingPoint num="34" id="3673" /> +<TGConnectingPoint num="35" id="3674" /> +<TGConnectingPoint num="36" id="3675" /> +<TGConnectingPoint num="37" id="3676" /> +<TGConnectingPoint num="38" id="3677" /> +<TGConnectingPoint num="39" id="3678" /> +<TGConnectingPoint num="40" id="3679" /> +<TGConnectingPoint num="41" id="3680" /> +<TGConnectingPoint num="42" id="3681" /> +<TGConnectingPoint num="43" id="3682" /> +<TGConnectingPoint num="44" id="3683" /> +<TGConnectingPoint num="45" id="3684" /> +<TGConnectingPoint num="46" id="3685" /> +<TGConnectingPoint num="47" id="3686" /> +<TGConnectingPoint num="48" id="3687" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="3738" > +<cdparam x="557" y="52" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMA_Controller_1" value="Controller instance name" /> +<TGConnectingPoint num="0" id="3689" /> +<TGConnectingPoint num="1" id="3690" /> +<TGConnectingPoint num="2" id="3691" /> +<TGConnectingPoint num="3" id="3692" /> +<TGConnectingPoint num="4" id="3693" /> +<TGConnectingPoint num="5" id="3694" /> +<TGConnectingPoint num="6" id="3695" /> +<TGConnectingPoint num="7" id="3696" /> +<TGConnectingPoint num="8" id="3697" /> +<TGConnectingPoint num="9" id="3698" /> +<TGConnectingPoint num="10" id="3699" /> +<TGConnectingPoint num="11" id="3700" /> +<TGConnectingPoint num="12" id="3701" /> +<TGConnectingPoint num="13" id="3702" /> +<TGConnectingPoint num="14" id="3703" /> +<TGConnectingPoint num="15" id="3704" /> +<TGConnectingPoint num="16" id="3705" /> +<TGConnectingPoint num="17" id="3706" /> +<TGConnectingPoint num="18" id="3707" /> +<TGConnectingPoint num="19" id="3708" /> +<TGConnectingPoint num="20" id="3709" /> +<TGConnectingPoint num="21" id="3710" /> +<TGConnectingPoint num="22" id="3711" /> +<TGConnectingPoint num="23" id="3712" /> +<TGConnectingPoint num="24" id="3713" /> +<TGConnectingPoint num="25" id="3714" /> +<TGConnectingPoint num="26" id="3715" /> +<TGConnectingPoint num="27" id="3716" /> +<TGConnectingPoint num="28" id="3717" /> +<TGConnectingPoint num="29" id="3718" /> +<TGConnectingPoint num="30" id="3719" /> +<TGConnectingPoint num="31" id="3720" /> +<TGConnectingPoint num="32" id="3721" /> +<TGConnectingPoint num="33" id="3722" /> +<TGConnectingPoint num="34" id="3723" /> +<TGConnectingPoint num="35" id="3724" /> +<TGConnectingPoint num="36" id="3725" /> +<TGConnectingPoint num="37" id="3726" /> +<TGConnectingPoint num="38" id="3727" /> +<TGConnectingPoint num="39" id="3728" /> +<TGConnectingPoint num="40" id="3729" /> +<TGConnectingPoint num="41" id="3730" /> +<TGConnectingPoint num="42" id="3731" /> +<TGConnectingPoint num="43" id="3732" /> +<TGConnectingPoint num="44" id="3733" /> +<TGConnectingPoint num="45" id="3734" /> +<TGConnectingPoint num="46" id="3735" /> +<TGConnectingPoint num="47" id="3736" /> +<TGConnectingPoint num="48" id="3737" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="3788" > +<cdparam x="113" y="52" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CPU_Controller_1" value="Controller instance name" /> +<TGConnectingPoint num="0" id="3739" /> +<TGConnectingPoint num="1" id="3740" /> +<TGConnectingPoint num="2" id="3741" /> +<TGConnectingPoint num="3" id="3742" /> +<TGConnectingPoint num="4" id="3743" /> +<TGConnectingPoint num="5" id="3744" /> +<TGConnectingPoint num="6" id="3745" /> +<TGConnectingPoint num="7" id="3746" /> +<TGConnectingPoint num="8" id="3747" /> +<TGConnectingPoint num="9" id="3748" /> +<TGConnectingPoint num="10" id="3749" /> +<TGConnectingPoint num="11" id="3750" /> +<TGConnectingPoint num="12" id="3751" /> +<TGConnectingPoint num="13" id="3752" /> +<TGConnectingPoint num="14" id="3753" /> +<TGConnectingPoint num="15" id="3754" /> +<TGConnectingPoint num="16" id="3755" /> +<TGConnectingPoint num="17" id="3756" /> +<TGConnectingPoint num="18" id="3757" /> +<TGConnectingPoint num="19" id="3758" /> +<TGConnectingPoint num="20" id="3759" /> +<TGConnectingPoint num="21" id="3760" /> +<TGConnectingPoint num="22" id="3761" /> +<TGConnectingPoint num="23" id="3762" /> +<TGConnectingPoint num="24" id="3763" /> +<TGConnectingPoint num="25" id="3764" /> +<TGConnectingPoint num="26" id="3765" /> +<TGConnectingPoint num="27" id="3766" /> +<TGConnectingPoint num="28" id="3767" /> +<TGConnectingPoint num="29" id="3768" /> +<TGConnectingPoint num="30" id="3769" /> +<TGConnectingPoint num="31" id="3770" /> +<TGConnectingPoint num="32" id="3771" /> +<TGConnectingPoint num="33" id="3772" /> +<TGConnectingPoint num="34" id="3773" /> +<TGConnectingPoint num="35" id="3774" /> +<TGConnectingPoint num="36" id="3775" /> +<TGConnectingPoint num="37" id="3776" /> +<TGConnectingPoint num="38" id="3777" /> +<TGConnectingPoint num="39" id="3778" /> +<TGConnectingPoint num="40" id="3779" /> +<TGConnectingPoint num="41" id="3780" /> +<TGConnectingPoint num="42" id="3781" /> +<TGConnectingPoint num="43" id="3782" /> +<TGConnectingPoint num="44" id="3783" /> +<TGConnectingPoint num="45" id="3784" /> +<TGConnectingPoint num="46" id="3785" /> +<TGConnectingPoint num="47" id="3786" /> +<TGConnectingPoint num="48" id="3787" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress1" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter1" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="1523" id="3789" > +<cdparam x="337" y="112" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferTerminated" value="TransferTerminated()" /> +<P1 x="337" y="112" id="3644" /> +<P2 x="118" y="112" id="3744" /> +<AutomaticDrawing data="true" /> +<extraparam> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="3790" > +<cdparam x="562" y="82" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferTerminated" value="TransferTerminated()" /> +<P1 x="562" y="82" id="3691" /> +<P2 x="337" y="82" id="3641" /> +<AutomaticDrawing data="true" /> +<extraparam> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +<TMLSDPanel name="ConfigureDMA_SD2" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1521" id="3840" > +<cdparam x="384" y="54" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance_5" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="3791" /> +<TGConnectingPoint num="1" id="3792" /> +<TGConnectingPoint num="2" id="3793" /> +<TGConnectingPoint num="3" id="3794" /> +<TGConnectingPoint num="4" id="3795" /> +<TGConnectingPoint num="5" id="3796" /> +<TGConnectingPoint num="6" id="3797" /> +<TGConnectingPoint num="7" id="3798" /> +<TGConnectingPoint num="8" id="3799" /> +<TGConnectingPoint num="9" id="3800" /> +<TGConnectingPoint num="10" id="3801" /> +<TGConnectingPoint num="11" id="3802" /> +<TGConnectingPoint num="12" id="3803" /> +<TGConnectingPoint num="13" id="3804" /> +<TGConnectingPoint num="14" id="3805" /> +<TGConnectingPoint num="15" id="3806" /> +<TGConnectingPoint num="16" id="3807" /> +<TGConnectingPoint num="17" id="3808" /> +<TGConnectingPoint num="18" id="3809" /> +<TGConnectingPoint num="19" id="3810" /> +<TGConnectingPoint num="20" id="3811" /> +<TGConnectingPoint num="21" id="3812" /> +<TGConnectingPoint num="22" id="3813" /> +<TGConnectingPoint num="23" id="3814" /> +<TGConnectingPoint num="24" id="3815" /> +<TGConnectingPoint num="25" id="3816" /> +<TGConnectingPoint num="26" id="3817" /> +<TGConnectingPoint num="27" id="3818" /> +<TGConnectingPoint num="28" id="3819" /> +<TGConnectingPoint num="29" id="3820" /> +<TGConnectingPoint num="30" id="3821" /> +<TGConnectingPoint num="31" id="3822" /> +<TGConnectingPoint num="32" id="3823" /> +<TGConnectingPoint num="33" id="3824" /> +<TGConnectingPoint num="34" id="3825" /> +<TGConnectingPoint num="35" id="3826" /> +<TGConnectingPoint num="36" id="3827" /> +<TGConnectingPoint num="37" id="3828" /> +<TGConnectingPoint num="38" id="3829" /> +<TGConnectingPoint num="39" id="3830" /> +<TGConnectingPoint num="40" id="3831" /> +<TGConnectingPoint num="41" id="3832" /> +<TGConnectingPoint num="42" id="3833" /> +<TGConnectingPoint num="43" id="3834" /> +<TGConnectingPoint num="44" id="3835" /> +<TGConnectingPoint num="45" id="3836" /> +<TGConnectingPoint num="46" id="3837" /> +<TGConnectingPoint num="47" id="3838" /> +<TGConnectingPoint num="48" id="3839" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="3890" > +<cdparam x="609" y="54" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMA_Controller_2" value="Controller instance name" /> +<TGConnectingPoint num="0" id="3841" /> +<TGConnectingPoint num="1" id="3842" /> +<TGConnectingPoint num="2" id="3843" /> +<TGConnectingPoint num="3" id="3844" /> +<TGConnectingPoint num="4" id="3845" /> +<TGConnectingPoint num="5" id="3846" /> +<TGConnectingPoint num="6" id="3847" /> +<TGConnectingPoint num="7" id="3848" /> +<TGConnectingPoint num="8" id="3849" /> +<TGConnectingPoint num="9" id="3850" /> +<TGConnectingPoint num="10" id="3851" /> +<TGConnectingPoint num="11" id="3852" /> +<TGConnectingPoint num="12" id="3853" /> +<TGConnectingPoint num="13" id="3854" /> +<TGConnectingPoint num="14" id="3855" /> +<TGConnectingPoint num="15" id="3856" /> +<TGConnectingPoint num="16" id="3857" /> +<TGConnectingPoint num="17" id="3858" /> +<TGConnectingPoint num="18" id="3859" /> +<TGConnectingPoint num="19" id="3860" /> +<TGConnectingPoint num="20" id="3861" /> +<TGConnectingPoint num="21" id="3862" /> +<TGConnectingPoint num="22" id="3863" /> +<TGConnectingPoint num="23" id="3864" /> +<TGConnectingPoint num="24" id="3865" /> +<TGConnectingPoint num="25" id="3866" /> +<TGConnectingPoint num="26" id="3867" /> +<TGConnectingPoint num="27" id="3868" /> +<TGConnectingPoint num="28" id="3869" /> +<TGConnectingPoint num="29" id="3870" /> +<TGConnectingPoint num="30" id="3871" /> +<TGConnectingPoint num="31" id="3872" /> +<TGConnectingPoint num="32" id="3873" /> +<TGConnectingPoint num="33" id="3874" /> +<TGConnectingPoint num="34" id="3875" /> +<TGConnectingPoint num="35" id="3876" /> +<TGConnectingPoint num="36" id="3877" /> +<TGConnectingPoint num="37" id="3878" /> +<TGConnectingPoint num="38" id="3879" /> +<TGConnectingPoint num="39" id="3880" /> +<TGConnectingPoint num="40" id="3881" /> +<TGConnectingPoint num="41" id="3882" /> +<TGConnectingPoint num="42" id="3883" /> +<TGConnectingPoint num="43" id="3884" /> +<TGConnectingPoint num="44" id="3885" /> +<TGConnectingPoint num="45" id="3886" /> +<TGConnectingPoint num="46" id="3887" /> +<TGConnectingPoint num="47" id="3888" /> +<TGConnectingPoint num="48" id="3889" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="3940" > +<cdparam x="165" y="54" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CPU_Controller_2" value="Controller instance name" /> +<TGConnectingPoint num="0" id="3891" /> +<TGConnectingPoint num="1" id="3892" /> +<TGConnectingPoint num="2" id="3893" /> +<TGConnectingPoint num="3" id="3894" /> +<TGConnectingPoint num="4" id="3895" /> +<TGConnectingPoint num="5" id="3896" /> +<TGConnectingPoint num="6" id="3897" /> +<TGConnectingPoint num="7" id="3898" /> +<TGConnectingPoint num="8" id="3899" /> +<TGConnectingPoint num="9" id="3900" /> +<TGConnectingPoint num="10" id="3901" /> +<TGConnectingPoint num="11" id="3902" /> +<TGConnectingPoint num="12" id="3903" /> +<TGConnectingPoint num="13" id="3904" /> +<TGConnectingPoint num="14" id="3905" /> +<TGConnectingPoint num="15" id="3906" /> +<TGConnectingPoint num="16" id="3907" /> +<TGConnectingPoint num="17" id="3908" /> +<TGConnectingPoint num="18" id="3909" /> +<TGConnectingPoint num="19" id="3910" /> +<TGConnectingPoint num="20" id="3911" /> +<TGConnectingPoint num="21" id="3912" /> +<TGConnectingPoint num="22" id="3913" /> +<TGConnectingPoint num="23" id="3914" /> +<TGConnectingPoint num="24" id="3915" /> +<TGConnectingPoint num="25" id="3916" /> +<TGConnectingPoint num="26" id="3917" /> +<TGConnectingPoint num="27" id="3918" /> +<TGConnectingPoint num="28" id="3919" /> +<TGConnectingPoint num="29" id="3920" /> +<TGConnectingPoint num="30" id="3921" /> +<TGConnectingPoint num="31" id="3922" /> +<TGConnectingPoint num="32" id="3923" /> +<TGConnectingPoint num="33" id="3924" /> +<TGConnectingPoint num="34" id="3925" /> +<TGConnectingPoint num="35" id="3926" /> +<TGConnectingPoint num="36" id="3927" /> +<TGConnectingPoint num="37" id="3928" /> +<TGConnectingPoint num="38" id="3929" /> +<TGConnectingPoint num="39" id="3930" /> +<TGConnectingPoint num="40" id="3931" /> +<TGConnectingPoint num="41" id="3932" /> +<TGConnectingPoint num="42" id="3933" /> +<TGConnectingPoint num="43" id="3934" /> +<TGConnectingPoint num="44" id="3935" /> +<TGConnectingPoint num="45" id="3936" /> +<TGConnectingPoint num="46" id="3937" /> +<TGConnectingPoint num="47" id="3938" /> +<TGConnectingPoint num="48" id="3939" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="1523" id="3941" > +<cdparam x="389" y="164" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferRequest" value="TransferRequest(counter2, sourceAddress2, destinationAddress2)" /> +<P1 x="389" y="124" id="3797" /> +<P2 x="614" y="124" id="3847" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="counter2" /> +<Param index="1" id="sourceAddress2" /> +<Param index="2" id="destinationAddress2" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="3942" > +<cdparam x="170" y="134" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferRequest" value="TransferRequest(counter2, sourceAddress2, destinationAddress2)" /> +<P1 x="170" y="94" id="3894" /> +<P2 x="389" y="94" id="3794" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="counter2" /> +<Param index="1" id="sourceAddress2" /> +<Param index="2" id="destinationAddress2" /> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +<TMLSDPanel name="DMACycle_SD2" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1520" id="3992" > +<cdparam x="1037" y="57" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Dst_Storage_Instance_2" value="Storage instance name" /> +<TGConnectingPoint num="0" id="3943" /> +<TGConnectingPoint num="1" id="3944" /> +<TGConnectingPoint num="2" id="3945" /> +<TGConnectingPoint num="3" id="3946" /> +<TGConnectingPoint num="4" id="3947" /> +<TGConnectingPoint num="5" id="3948" /> +<TGConnectingPoint num="6" id="3949" /> +<TGConnectingPoint num="7" id="3950" /> +<TGConnectingPoint num="8" id="3951" /> +<TGConnectingPoint num="9" id="3952" /> +<TGConnectingPoint num="10" id="3953" /> +<TGConnectingPoint num="11" id="3954" /> +<TGConnectingPoint num="12" id="3955" /> +<TGConnectingPoint num="13" id="3956" /> +<TGConnectingPoint num="14" id="3957" /> +<TGConnectingPoint num="15" id="3958" /> +<TGConnectingPoint num="16" id="3959" /> +<TGConnectingPoint num="17" id="3960" /> +<TGConnectingPoint num="18" id="3961" /> +<TGConnectingPoint num="19" id="3962" /> +<TGConnectingPoint num="20" id="3963" /> +<TGConnectingPoint num="21" id="3964" /> +<TGConnectingPoint num="22" id="3965" /> +<TGConnectingPoint num="23" id="3966" /> +<TGConnectingPoint num="24" id="3967" /> +<TGConnectingPoint num="25" id="3968" /> +<TGConnectingPoint num="26" id="3969" /> +<TGConnectingPoint num="27" id="3970" /> +<TGConnectingPoint num="28" id="3971" /> +<TGConnectingPoint num="29" id="3972" /> +<TGConnectingPoint num="30" id="3973" /> +<TGConnectingPoint num="31" id="3974" /> +<TGConnectingPoint num="32" id="3975" /> +<TGConnectingPoint num="33" id="3976" /> +<TGConnectingPoint num="34" id="3977" /> +<TGConnectingPoint num="35" id="3978" /> +<TGConnectingPoint num="36" id="3979" /> +<TGConnectingPoint num="37" id="3980" /> +<TGConnectingPoint num="38" id="3981" /> +<TGConnectingPoint num="39" id="3982" /> +<TGConnectingPoint num="40" id="3983" /> +<TGConnectingPoint num="41" id="3984" /> +<TGConnectingPoint num="42" id="3985" /> +<TGConnectingPoint num="43" id="3986" /> +<TGConnectingPoint num="44" id="3987" /> +<TGConnectingPoint num="45" id="3988" /> +<TGConnectingPoint num="46" id="3989" /> +<TGConnectingPoint num="47" id="3990" /> +<TGConnectingPoint num="48" id="3991" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="4042" > +<cdparam x="826" y="57" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance_7" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="3993" /> +<TGConnectingPoint num="1" id="3994" /> +<TGConnectingPoint num="2" id="3995" /> +<TGConnectingPoint num="3" id="3996" /> +<TGConnectingPoint num="4" id="3997" /> +<TGConnectingPoint num="5" id="3998" /> +<TGConnectingPoint num="6" id="3999" /> +<TGConnectingPoint num="7" id="4000" /> +<TGConnectingPoint num="8" id="4001" /> +<TGConnectingPoint num="9" id="4002" /> +<TGConnectingPoint num="10" id="4003" /> +<TGConnectingPoint num="11" id="4004" /> +<TGConnectingPoint num="12" id="4005" /> +<TGConnectingPoint num="13" id="4006" /> +<TGConnectingPoint num="14" id="4007" /> +<TGConnectingPoint num="15" id="4008" /> +<TGConnectingPoint num="16" id="4009" /> +<TGConnectingPoint num="17" id="4010" /> +<TGConnectingPoint num="18" id="4011" /> +<TGConnectingPoint num="19" id="4012" /> +<TGConnectingPoint num="20" id="4013" /> +<TGConnectingPoint num="21" id="4014" /> +<TGConnectingPoint num="22" id="4015" /> +<TGConnectingPoint num="23" id="4016" /> +<TGConnectingPoint num="24" id="4017" /> +<TGConnectingPoint num="25" id="4018" /> +<TGConnectingPoint num="26" id="4019" /> +<TGConnectingPoint num="27" id="4020" /> +<TGConnectingPoint num="28" id="4021" /> +<TGConnectingPoint num="29" id="4022" /> +<TGConnectingPoint num="30" id="4023" /> +<TGConnectingPoint num="31" id="4024" /> +<TGConnectingPoint num="32" id="4025" /> +<TGConnectingPoint num="33" id="4026" /> +<TGConnectingPoint num="34" id="4027" /> +<TGConnectingPoint num="35" id="4028" /> +<TGConnectingPoint num="36" id="4029" /> +<TGConnectingPoint num="37" id="4030" /> +<TGConnectingPoint num="38" id="4031" /> +<TGConnectingPoint num="39" id="4032" /> +<TGConnectingPoint num="40" id="4033" /> +<TGConnectingPoint num="41" id="4034" /> +<TGConnectingPoint num="42" id="4035" /> +<TGConnectingPoint num="43" id="4036" /> +<TGConnectingPoint num="44" id="4037" /> +<TGConnectingPoint num="45" id="4038" /> +<TGConnectingPoint num="46" id="4039" /> +<TGConnectingPoint num="47" id="4040" /> +<TGConnectingPoint num="48" id="4041" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1521" id="4092" > +<cdparam x="357" y="57" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance_6" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="4043" /> +<TGConnectingPoint num="1" id="4044" /> +<TGConnectingPoint num="2" id="4045" /> +<TGConnectingPoint num="3" id="4046" /> +<TGConnectingPoint num="4" id="4047" /> +<TGConnectingPoint num="5" id="4048" /> +<TGConnectingPoint num="6" id="4049" /> +<TGConnectingPoint num="7" id="4050" /> +<TGConnectingPoint num="8" id="4051" /> +<TGConnectingPoint num="9" id="4052" /> +<TGConnectingPoint num="10" id="4053" /> +<TGConnectingPoint num="11" id="4054" /> +<TGConnectingPoint num="12" id="4055" /> +<TGConnectingPoint num="13" id="4056" /> +<TGConnectingPoint num="14" id="4057" /> +<TGConnectingPoint num="15" id="4058" /> +<TGConnectingPoint num="16" id="4059" /> +<TGConnectingPoint num="17" id="4060" /> +<TGConnectingPoint num="18" id="4061" /> +<TGConnectingPoint num="19" id="4062" /> +<TGConnectingPoint num="20" id="4063" /> +<TGConnectingPoint num="21" id="4064" /> +<TGConnectingPoint num="22" id="4065" /> +<TGConnectingPoint num="23" id="4066" /> +<TGConnectingPoint num="24" id="4067" /> +<TGConnectingPoint num="25" id="4068" /> +<TGConnectingPoint num="26" id="4069" /> +<TGConnectingPoint num="27" id="4070" /> +<TGConnectingPoint num="28" id="4071" /> +<TGConnectingPoint num="29" id="4072" /> +<TGConnectingPoint num="30" id="4073" /> +<TGConnectingPoint num="31" id="4074" /> +<TGConnectingPoint num="32" id="4075" /> +<TGConnectingPoint num="33" id="4076" /> +<TGConnectingPoint num="34" id="4077" /> +<TGConnectingPoint num="35" id="4078" /> +<TGConnectingPoint num="36" id="4079" /> +<TGConnectingPoint num="37" id="4080" /> +<TGConnectingPoint num="38" id="4081" /> +<TGConnectingPoint num="39" id="4082" /> +<TGConnectingPoint num="40" id="4083" /> +<TGConnectingPoint num="41" id="4084" /> +<TGConnectingPoint num="42" id="4085" /> +<TGConnectingPoint num="43" id="4086" /> +<TGConnectingPoint num="44" id="4087" /> +<TGConnectingPoint num="45" id="4088" /> +<TGConnectingPoint num="46" id="4089" /> +<TGConnectingPoint num="47" id="4090" /> +<TGConnectingPoint num="48" id="4091" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1520" id="4142" > +<cdparam x="608" y="57" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Src_Storage_Instance_2" value="Storage instance name" /> +<TGConnectingPoint num="0" id="4093" /> +<TGConnectingPoint num="1" id="4094" /> +<TGConnectingPoint num="2" id="4095" /> +<TGConnectingPoint num="3" id="4096" /> +<TGConnectingPoint num="4" id="4097" /> +<TGConnectingPoint num="5" id="4098" /> +<TGConnectingPoint num="6" id="4099" /> +<TGConnectingPoint num="7" id="4100" /> +<TGConnectingPoint num="8" id="4101" /> +<TGConnectingPoint num="9" id="4102" /> +<TGConnectingPoint num="10" id="4103" /> +<TGConnectingPoint num="11" id="4104" /> +<TGConnectingPoint num="12" id="4105" /> +<TGConnectingPoint num="13" id="4106" /> +<TGConnectingPoint num="14" id="4107" /> +<TGConnectingPoint num="15" id="4108" /> +<TGConnectingPoint num="16" id="4109" /> +<TGConnectingPoint num="17" id="4110" /> +<TGConnectingPoint num="18" id="4111" /> +<TGConnectingPoint num="19" id="4112" /> +<TGConnectingPoint num="20" id="4113" /> +<TGConnectingPoint num="21" id="4114" /> +<TGConnectingPoint num="22" id="4115" /> +<TGConnectingPoint num="23" id="4116" /> +<TGConnectingPoint num="24" id="4117" /> +<TGConnectingPoint num="25" id="4118" /> +<TGConnectingPoint num="26" id="4119" /> +<TGConnectingPoint num="27" id="4120" /> +<TGConnectingPoint num="28" id="4121" /> +<TGConnectingPoint num="29" id="4122" /> +<TGConnectingPoint num="30" id="4123" /> +<TGConnectingPoint num="31" id="4124" /> +<TGConnectingPoint num="32" id="4125" /> +<TGConnectingPoint num="33" id="4126" /> +<TGConnectingPoint num="34" id="4127" /> +<TGConnectingPoint num="35" id="4128" /> +<TGConnectingPoint num="36" id="4129" /> +<TGConnectingPoint num="37" id="4130" /> +<TGConnectingPoint num="38" id="4131" /> +<TGConnectingPoint num="39" id="4132" /> +<TGConnectingPoint num="40" id="4133" /> +<TGConnectingPoint num="41" id="4134" /> +<TGConnectingPoint num="42" id="4135" /> +<TGConnectingPoint num="43" id="4136" /> +<TGConnectingPoint num="44" id="4137" /> +<TGConnectingPoint num="45" id="4138" /> +<TGConnectingPoint num="46" id="4139" /> +<TGConnectingPoint num="47" id="4140" /> +<TGConnectingPoint num="48" id="4141" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="4201" > +<cdparam x="126" y="57" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMA_Controller_2" value="Controller instance name" /> +<TGConnectingPoint num="0" id="4152" /> +<TGConnectingPoint num="1" id="4153" /> +<TGConnectingPoint num="2" id="4154" /> +<TGConnectingPoint num="3" id="4155" /> +<TGConnectingPoint num="4" id="4156" /> +<TGConnectingPoint num="5" id="4157" /> +<TGConnectingPoint num="6" id="4158" /> +<TGConnectingPoint num="7" id="4159" /> +<TGConnectingPoint num="8" id="4160" /> +<TGConnectingPoint num="9" id="4161" /> +<TGConnectingPoint num="10" id="4162" /> +<TGConnectingPoint num="11" id="4163" /> +<TGConnectingPoint num="12" id="4164" /> +<TGConnectingPoint num="13" id="4165" /> +<TGConnectingPoint num="14" id="4166" /> +<TGConnectingPoint num="15" id="4167" /> +<TGConnectingPoint num="16" id="4168" /> +<TGConnectingPoint num="17" id="4169" /> +<TGConnectingPoint num="18" id="4170" /> +<TGConnectingPoint num="19" id="4171" /> +<TGConnectingPoint num="20" id="4172" /> +<TGConnectingPoint num="21" id="4173" /> +<TGConnectingPoint num="22" id="4174" /> +<TGConnectingPoint num="23" id="4175" /> +<TGConnectingPoint num="24" id="4176" /> +<TGConnectingPoint num="25" id="4177" /> +<TGConnectingPoint num="26" id="4178" /> +<TGConnectingPoint num="27" id="4179" /> +<TGConnectingPoint num="28" id="4180" /> +<TGConnectingPoint num="29" id="4181" /> +<TGConnectingPoint num="30" id="4182" /> +<TGConnectingPoint num="31" id="4183" /> +<TGConnectingPoint num="32" id="4184" /> +<TGConnectingPoint num="33" id="4185" /> +<TGConnectingPoint num="34" id="4186" /> +<TGConnectingPoint num="35" id="4187" /> +<TGConnectingPoint num="36" id="4188" /> +<TGConnectingPoint num="37" id="4189" /> +<TGConnectingPoint num="38" id="4190" /> +<TGConnectingPoint num="39" id="4191" /> +<TGConnectingPoint num="40" id="4192" /> +<TGConnectingPoint num="41" id="4193" /> +<TGConnectingPoint num="42" id="4194" /> +<TGConnectingPoint num="43" id="4195" /> +<TGConnectingPoint num="44" id="4196" /> +<TGConnectingPoint num="45" id="4197" /> +<TGConnectingPoint num="46" id="4198" /> +<TGConnectingPoint num="47" id="4199" /> +<TGConnectingPoint num="48" id="4200" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1524" id="4151" > +<father id="4201" num="0" /> +<cdparam x="131" y="253" /> +<sizeparam width="146" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="5" maxX="5" minY="10" maxY="470" /> +<infoparam name="action state" value="counter = counter - 1" /> +<TGConnectingPoint num="0" id="4143" /> +<TGConnectingPoint num="1" id="4144" /> +<TGConnectingPoint num="2" id="4145" /> +<TGConnectingPoint num="3" id="4146" /> +<TGConnectingPoint num="4" id="4147" /> +<TGConnectingPoint num="5" id="4148" /> +<TGConnectingPoint num="6" id="4149" /> +<TGConnectingPoint num="7" id="4150" /> +</SUBCOMPONENT> + +<CONNECTOR type="1523" id="4202" > +<cdparam x="831" y="247" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Write" value="Write(destinationAddress2, 1)" /> +<P1 x="831" y="267" id="4013" /> +<P2 x="1042" y="267" id="3963" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="destinationAddress2" /> +<Param index="1" id="1" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="4203" > +<cdparam x="131" y="217" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Write" value="Write(destinationAddress2, 1)" /> +<P1 x="131" y="237" id="4169" /> +<P2 x="831" y="237" id="4010" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="destinationAddress2" /> +<Param index="1" id="1" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="4204" > +<cdparam x="362" y="127" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Read" value="Read(sourceAddress2, 1)" /> +<P1 x="362" y="147" id="4051" /> +<P2 x="613" y="147" id="4101" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="sourceAddress2" /> +<Param index="1" id="1" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="4205" > +<cdparam x="148" y="96" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="Read" value="Read(sourceAddress2, 1)" /> +<P1 x="131" y="117" id="4157" /> +<P2 x="362" y="117" id="4048" /> +<AutomaticDrawing data="true" /> +<extraparam> +<Param index="0" id="sourceAddress2" /> +<Param index="1" id="1" /> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +<TMLSDPanel name="TerminateDMA_SD2" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1521" id="4255" > +<cdparam x="280" y="53" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="Transfer_Instance_8" value="Transfer instance name" /> +<TGConnectingPoint num="0" id="4206" /> +<TGConnectingPoint num="1" id="4207" /> +<TGConnectingPoint num="2" id="4208" /> +<TGConnectingPoint num="3" id="4209" /> +<TGConnectingPoint num="4" id="4210" /> +<TGConnectingPoint num="5" id="4211" /> +<TGConnectingPoint num="6" id="4212" /> +<TGConnectingPoint num="7" id="4213" /> +<TGConnectingPoint num="8" id="4214" /> +<TGConnectingPoint num="9" id="4215" /> +<TGConnectingPoint num="10" id="4216" /> +<TGConnectingPoint num="11" id="4217" /> +<TGConnectingPoint num="12" id="4218" /> +<TGConnectingPoint num="13" id="4219" /> +<TGConnectingPoint num="14" id="4220" /> +<TGConnectingPoint num="15" id="4221" /> +<TGConnectingPoint num="16" id="4222" /> +<TGConnectingPoint num="17" id="4223" /> +<TGConnectingPoint num="18" id="4224" /> +<TGConnectingPoint num="19" id="4225" /> +<TGConnectingPoint num="20" id="4226" /> +<TGConnectingPoint num="21" id="4227" /> +<TGConnectingPoint num="22" id="4228" /> +<TGConnectingPoint num="23" id="4229" /> +<TGConnectingPoint num="24" id="4230" /> +<TGConnectingPoint num="25" id="4231" /> +<TGConnectingPoint num="26" id="4232" /> +<TGConnectingPoint num="27" id="4233" /> +<TGConnectingPoint num="28" id="4234" /> +<TGConnectingPoint num="29" id="4235" /> +<TGConnectingPoint num="30" id="4236" /> +<TGConnectingPoint num="31" id="4237" /> +<TGConnectingPoint num="32" id="4238" /> +<TGConnectingPoint num="33" id="4239" /> +<TGConnectingPoint num="34" id="4240" /> +<TGConnectingPoint num="35" id="4241" /> +<TGConnectingPoint num="36" id="4242" /> +<TGConnectingPoint num="37" id="4243" /> +<TGConnectingPoint num="38" id="4244" /> +<TGConnectingPoint num="39" id="4245" /> +<TGConnectingPoint num="40" id="4246" /> +<TGConnectingPoint num="41" id="4247" /> +<TGConnectingPoint num="42" id="4248" /> +<TGConnectingPoint num="43" id="4249" /> +<TGConnectingPoint num="44" id="4250" /> +<TGConnectingPoint num="45" id="4251" /> +<TGConnectingPoint num="46" id="4252" /> +<TGConnectingPoint num="47" id="4253" /> +<TGConnectingPoint num="48" id="4254" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="4305" > +<cdparam x="505" y="53" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="DMA_Controller_2" value="Controller instance name" /> +<TGConnectingPoint num="0" id="4256" /> +<TGConnectingPoint num="1" id="4257" /> +<TGConnectingPoint num="2" id="4258" /> +<TGConnectingPoint num="3" id="4259" /> +<TGConnectingPoint num="4" id="4260" /> +<TGConnectingPoint num="5" id="4261" /> +<TGConnectingPoint num="6" id="4262" /> +<TGConnectingPoint num="7" id="4263" /> +<TGConnectingPoint num="8" id="4264" /> +<TGConnectingPoint num="9" id="4265" /> +<TGConnectingPoint num="10" id="4266" /> +<TGConnectingPoint num="11" id="4267" /> +<TGConnectingPoint num="12" id="4268" /> +<TGConnectingPoint num="13" id="4269" /> +<TGConnectingPoint num="14" id="4270" /> +<TGConnectingPoint num="15" id="4271" /> +<TGConnectingPoint num="16" id="4272" /> +<TGConnectingPoint num="17" id="4273" /> +<TGConnectingPoint num="18" id="4274" /> +<TGConnectingPoint num="19" id="4275" /> +<TGConnectingPoint num="20" id="4276" /> +<TGConnectingPoint num="21" id="4277" /> +<TGConnectingPoint num="22" id="4278" /> +<TGConnectingPoint num="23" id="4279" /> +<TGConnectingPoint num="24" id="4280" /> +<TGConnectingPoint num="25" id="4281" /> +<TGConnectingPoint num="26" id="4282" /> +<TGConnectingPoint num="27" id="4283" /> +<TGConnectingPoint num="28" id="4284" /> +<TGConnectingPoint num="29" id="4285" /> +<TGConnectingPoint num="30" id="4286" /> +<TGConnectingPoint num="31" id="4287" /> +<TGConnectingPoint num="32" id="4288" /> +<TGConnectingPoint num="33" id="4289" /> +<TGConnectingPoint num="34" id="4290" /> +<TGConnectingPoint num="35" id="4291" /> +<TGConnectingPoint num="36" id="4292" /> +<TGConnectingPoint num="37" id="4293" /> +<TGConnectingPoint num="38" id="4294" /> +<TGConnectingPoint num="39" id="4295" /> +<TGConnectingPoint num="40" id="4296" /> +<TGConnectingPoint num="41" id="4297" /> +<TGConnectingPoint num="42" id="4298" /> +<TGConnectingPoint num="43" id="4299" /> +<TGConnectingPoint num="44" id="4300" /> +<TGConnectingPoint num="45" id="4301" /> +<TGConnectingPoint num="46" id="4302" /> +<TGConnectingPoint num="47" id="4303" /> +<TGConnectingPoint num="48" id="4304" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1522" id="4355" > +<cdparam x="61" y="53" /> +<sizeparam width="10" height="500" minWidth="10" minHeight="250" maxWidth="10" maxHeight="1500" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="CPU_Controller_2" value="Controller instance name" /> +<TGConnectingPoint num="0" id="4306" /> +<TGConnectingPoint num="1" id="4307" /> +<TGConnectingPoint num="2" id="4308" /> +<TGConnectingPoint num="3" id="4309" /> +<TGConnectingPoint num="4" id="4310" /> +<TGConnectingPoint num="5" id="4311" /> +<TGConnectingPoint num="6" id="4312" /> +<TGConnectingPoint num="7" id="4313" /> +<TGConnectingPoint num="8" id="4314" /> +<TGConnectingPoint num="9" id="4315" /> +<TGConnectingPoint num="10" id="4316" /> +<TGConnectingPoint num="11" id="4317" /> +<TGConnectingPoint num="12" id="4318" /> +<TGConnectingPoint num="13" id="4319" /> +<TGConnectingPoint num="14" id="4320" /> +<TGConnectingPoint num="15" id="4321" /> +<TGConnectingPoint num="16" id="4322" /> +<TGConnectingPoint num="17" id="4323" /> +<TGConnectingPoint num="18" id="4324" /> +<TGConnectingPoint num="19" id="4325" /> +<TGConnectingPoint num="20" id="4326" /> +<TGConnectingPoint num="21" id="4327" /> +<TGConnectingPoint num="22" id="4328" /> +<TGConnectingPoint num="23" id="4329" /> +<TGConnectingPoint num="24" id="4330" /> +<TGConnectingPoint num="25" id="4331" /> +<TGConnectingPoint num="26" id="4332" /> +<TGConnectingPoint num="27" id="4333" /> +<TGConnectingPoint num="28" id="4334" /> +<TGConnectingPoint num="29" id="4335" /> +<TGConnectingPoint num="30" id="4336" /> +<TGConnectingPoint num="31" id="4337" /> +<TGConnectingPoint num="32" id="4338" /> +<TGConnectingPoint num="33" id="4339" /> +<TGConnectingPoint num="34" id="4340" /> +<TGConnectingPoint num="35" id="4341" /> +<TGConnectingPoint num="36" id="4342" /> +<TGConnectingPoint num="37" id="4343" /> +<TGConnectingPoint num="38" id="4344" /> +<TGConnectingPoint num="39" id="4345" /> +<TGConnectingPoint num="40" id="4346" /> +<TGConnectingPoint num="41" id="4347" /> +<TGConnectingPoint num="42" id="4348" /> +<TGConnectingPoint num="43" id="4349" /> +<TGConnectingPoint num="44" id="4350" /> +<TGConnectingPoint num="45" id="4351" /> +<TGConnectingPoint num="46" id="4352" /> +<TGConnectingPoint num="47" id="4353" /> +<TGConnectingPoint num="48" id="4354" /> +<extraparam> +<Mapping mappedOn="" /> +<Actor data="false" /> +<Attribute access="2" id="sourceAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="destinationAddress2" value="" type="10" typeOther="" /> +<Attribute access="2" id="counter2" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="1523" id="4356" > +<cdparam x="285" y="113" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferTerminated" value="TransferTerminated()" /> +<P1 x="285" y="113" id="4211" /> +<P2 x="66" y="113" id="4311" /> +<AutomaticDrawing data="true" /> +<extraparam> +</extraparam> +</CONNECTOR> +<CONNECTOR type="1523" id="4357" > +<cdparam x="510" y="83" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="TransferTerminated" value="TransferTerminated()" /> +<P1 x="510" y="83" id="4258" /> +<P2 x="285" y="83" id="4208" /> +<AutomaticDrawing data="true" /> +<extraparam> +</extraparam> +</CONNECTOR> + +</TMLSDPanel> + +</Modeling> + + + + +<Modeling type="TML Architecture" nameTab="Embb" > +<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1900" minY="10" maxY="1900" attributes="0" masterClockFrequency="200" > +<COMPONENT type="1100" id="4382" > +<cdparam x="560" y="807" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_DMA" value="name" /> +<TGConnectingPoint num="0" id="4358" /> +<TGConnectingPoint num="1" id="4359" /> +<TGConnectingPoint num="2" id="4360" /> +<TGConnectingPoint num="3" id="4361" /> +<TGConnectingPoint num="4" id="4362" /> +<TGConnectingPoint num="5" id="4363" /> +<TGConnectingPoint num="6" id="4364" /> +<TGConnectingPoint num="7" id="4365" /> +<TGConnectingPoint num="8" id="4366" /> +<TGConnectingPoint num="9" id="4367" /> +<TGConnectingPoint num="10" id="4368" /> +<TGConnectingPoint num="11" id="4369" /> +<TGConnectingPoint num="12" id="4370" /> +<TGConnectingPoint num="13" id="4371" /> +<TGConnectingPoint num="14" id="4372" /> +<TGConnectingPoint num="15" id="4373" /> +<TGConnectingPoint num="16" id="4374" /> +<TGConnectingPoint num="17" id="4375" /> +<TGConnectingPoint num="18" id="4376" /> +<TGConnectingPoint num="19" id="4377" /> +<TGConnectingPoint num="20" id="4378" /> +<TGConnectingPoint num="21" id="4379" /> +<TGConnectingPoint num="22" id="4380" /> +<TGConnectingPoint num="23" id="4381" /> +<extraparam> +<info stereotype="CPURR" nodeName="INTL_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="4407" > +<cdparam x="543" y="422" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_DMA" value="name" /> +<TGConnectingPoint num="0" id="4383" /> +<TGConnectingPoint num="1" id="4384" /> +<TGConnectingPoint num="2" id="4385" /> +<TGConnectingPoint num="3" id="4386" /> +<TGConnectingPoint num="4" id="4387" /> +<TGConnectingPoint num="5" id="4388" /> +<TGConnectingPoint num="6" id="4389" /> +<TGConnectingPoint num="7" id="4390" /> +<TGConnectingPoint num="8" id="4391" /> +<TGConnectingPoint num="9" id="4392" /> +<TGConnectingPoint num="10" id="4393" /> +<TGConnectingPoint num="11" id="4394" /> +<TGConnectingPoint num="12" id="4395" /> +<TGConnectingPoint num="13" id="4396" /> +<TGConnectingPoint num="14" id="4397" /> +<TGConnectingPoint num="15" id="4398" /> +<TGConnectingPoint num="16" id="4399" /> +<TGConnectingPoint num="17" id="4400" /> +<TGConnectingPoint num="18" id="4401" /> +<TGConnectingPoint num="19" id="4402" /> +<TGConnectingPoint num="20" id="4403" /> +<TGConnectingPoint num="21" id="4404" /> +<TGConnectingPoint num="22" id="4405" /> +<TGConnectingPoint num="23" id="4406" /> +<extraparam> +<info stereotype="CPURR" nodeName="ADAIF_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="4432" > +<cdparam x="354" y="243" /> +<sizeparam width="200" height="152" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_MSS" value="name" /> +<TGConnectingPoint num="0" id="4408" /> +<TGConnectingPoint num="1" id="4409" /> +<TGConnectingPoint num="2" id="4410" /> +<TGConnectingPoint num="3" id="4411" /> +<TGConnectingPoint num="4" id="4412" /> +<TGConnectingPoint num="5" id="4413" /> +<TGConnectingPoint num="6" id="4414" /> +<TGConnectingPoint num="7" id="4415" /> +<TGConnectingPoint num="8" id="4416" /> +<TGConnectingPoint num="9" id="4417" /> +<TGConnectingPoint num="10" id="4418" /> +<TGConnectingPoint num="11" id="4419" /> +<TGConnectingPoint num="12" id="4420" /> +<TGConnectingPoint num="13" id="4421" /> +<TGConnectingPoint num="14" id="4422" /> +<TGConnectingPoint num="15" id="4423" /> +<TGConnectingPoint num="16" id="4424" /> +<TGConnectingPoint num="17" id="4425" /> +<TGConnectingPoint num="18" id="4426" /> +<TGConnectingPoint num="19" id="4427" /> +<TGConnectingPoint num="20" id="4428" /> +<TGConnectingPoint num="21" id="4429" /> +<TGConnectingPoint num="22" id="4430" /> +<TGConnectingPoint num="23" id="4431" /> +<extraparam> +<info stereotype="MEMORY" nodeName="ADAIF_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="2" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="4457" > +<cdparam x="29" y="215" /> +<sizeparam width="252" height="181" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_PSS" value="name" /> +<TGConnectingPoint num="0" id="4433" /> +<TGConnectingPoint num="1" id="4434" /> +<TGConnectingPoint num="2" id="4435" /> +<TGConnectingPoint num="3" id="4436" /> +<TGConnectingPoint num="4" id="4437" /> +<TGConnectingPoint num="5" id="4438" /> +<TGConnectingPoint num="6" id="4439" /> +<TGConnectingPoint num="7" id="4440" /> +<TGConnectingPoint num="8" id="4441" /> +<TGConnectingPoint num="9" id="4442" /> +<TGConnectingPoint num="10" id="4443" /> +<TGConnectingPoint num="11" id="4444" /> +<TGConnectingPoint num="12" id="4445" /> +<TGConnectingPoint num="13" id="4446" /> +<TGConnectingPoint num="14" id="4447" /> +<TGConnectingPoint num="15" id="4448" /> +<TGConnectingPoint num="16" id="4449" /> +<TGConnectingPoint num="17" id="4450" /> +<TGConnectingPoint num="18" id="4451" /> +<TGConnectingPoint num="19" id="4452" /> +<TGConnectingPoint num="20" id="4453" /> +<TGConnectingPoint num="21" id="4454" /> +<TGConnectingPoint num="22" id="4455" /> +<TGConnectingPoint num="23" id="4456" /> +<extraparam> +<info stereotype="CPURR" nodeName="ADAIF_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="4" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="4482" > +<cdparam x="306" y="545" /> +<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_Bridge" value="name" /> +<TGConnectingPoint num="0" id="4458" /> +<TGConnectingPoint num="1" id="4459" /> +<TGConnectingPoint num="2" id="4460" /> +<TGConnectingPoint num="3" id="4461" /> +<TGConnectingPoint num="4" id="4462" /> +<TGConnectingPoint num="5" id="4463" /> +<TGConnectingPoint num="6" id="4464" /> +<TGConnectingPoint num="7" id="4465" /> +<TGConnectingPoint num="8" id="4466" /> +<TGConnectingPoint num="9" id="4467" /> +<TGConnectingPoint num="10" id="4468" /> +<TGConnectingPoint num="11" id="4469" /> +<TGConnectingPoint num="12" id="4470" /> +<TGConnectingPoint num="13" id="4471" /> +<TGConnectingPoint num="14" id="4472" /> +<TGConnectingPoint num="15" id="4473" /> +<TGConnectingPoint num="16" id="4474" /> +<TGConnectingPoint num="17" id="4475" /> +<TGConnectingPoint num="18" id="4476" /> +<TGConnectingPoint num="19" id="4477" /> +<TGConnectingPoint num="20" id="4478" /> +<TGConnectingPoint num="21" id="4479" /> +<TGConnectingPoint num="22" id="4480" /> +<TGConnectingPoint num="23" id="4481" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="ADAIF_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="4507" > +<cdparam x="1544" y="737" /> +<sizeparam width="216" height="140" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainMemory" value="name" /> +<TGConnectingPoint num="0" id="4483" /> +<TGConnectingPoint num="1" id="4484" /> +<TGConnectingPoint num="2" id="4485" /> +<TGConnectingPoint num="3" id="4486" /> +<TGConnectingPoint num="4" id="4487" /> +<TGConnectingPoint num="5" id="4488" /> +<TGConnectingPoint num="6" id="4489" /> +<TGConnectingPoint num="7" id="4490" /> +<TGConnectingPoint num="8" id="4491" /> +<TGConnectingPoint num="9" id="4492" /> +<TGConnectingPoint num="10" id="4493" /> +<TGConnectingPoint num="11" id="4494" /> +<TGConnectingPoint num="12" id="4495" /> +<TGConnectingPoint num="13" id="4496" /> +<TGConnectingPoint num="14" id="4497" /> +<TGConnectingPoint num="15" id="4498" /> +<TGConnectingPoint num="16" id="4499" /> +<TGConnectingPoint num="17" id="4500" /> +<TGConnectingPoint num="18" id="4501" /> +<TGConnectingPoint num="19" id="4502" /> +<TGConnectingPoint num="20" id="4503" /> +<TGConnectingPoint num="21" id="4504" /> +<TGConnectingPoint num="22" id="4505" /> +<TGConnectingPoint num="23" id="4506" /> +<extraparam> +<info stereotype="MEMORY" nodeName="MainMemory" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="4" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="4532" > +<cdparam x="1444" y="293" /> +<sizeparam width="417" height="293" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainCPU" value="name" /> +<TGConnectingPoint num="0" id="4508" /> +<TGConnectingPoint num="1" id="4509" /> +<TGConnectingPoint num="2" id="4510" /> +<TGConnectingPoint num="3" id="4511" /> +<TGConnectingPoint num="4" id="4512" /> +<TGConnectingPoint num="5" id="4513" /> +<TGConnectingPoint num="6" id="4514" /> +<TGConnectingPoint num="7" id="4515" /> +<TGConnectingPoint num="8" id="4516" /> +<TGConnectingPoint num="9" id="4517" /> +<TGConnectingPoint num="10" id="4518" /> +<TGConnectingPoint num="11" id="4519" /> +<TGConnectingPoint num="12" id="4520" /> +<TGConnectingPoint num="13" id="4521" /> +<TGConnectingPoint num="14" id="4522" /> +<TGConnectingPoint num="15" id="4523" /> +<TGConnectingPoint num="16" id="4524" /> +<TGConnectingPoint num="17" id="4525" /> +<TGConnectingPoint num="18" id="4526" /> +<TGConnectingPoint num="19" id="4527" /> +<TGConnectingPoint num="20" id="4528" /> +<TGConnectingPoint num="21" id="4529" /> +<TGConnectingPoint num="22" id="4530" /> +<TGConnectingPoint num="23" id="4531" /> +<extraparam> +<info stereotype="CPURR" nodeName="MainCPU" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="4557" > +<cdparam x="1527" y="635" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainBus" value="name" /> +<TGConnectingPoint num="0" id="4533" /> +<TGConnectingPoint num="1" id="4534" /> +<TGConnectingPoint num="2" id="4535" /> +<TGConnectingPoint num="3" id="4536" /> +<TGConnectingPoint num="4" id="4537" /> +<TGConnectingPoint num="5" id="4538" /> +<TGConnectingPoint num="6" id="4539" /> +<TGConnectingPoint num="7" id="4540" /> +<TGConnectingPoint num="8" id="4541" /> +<TGConnectingPoint num="9" id="4542" /> +<TGConnectingPoint num="10" id="4543" /> +<TGConnectingPoint num="11" id="4544" /> +<TGConnectingPoint num="12" id="4545" /> +<TGConnectingPoint num="13" id="4546" /> +<TGConnectingPoint num="14" id="4547" /> +<TGConnectingPoint num="15" id="4548" /> +<TGConnectingPoint num="16" id="4549" /> +<TGConnectingPoint num="17" id="4550" /> +<TGConnectingPoint num="18" id="4551" /> +<TGConnectingPoint num="19" id="4552" /> +<TGConnectingPoint num="20" id="4553" /> +<TGConnectingPoint num="21" id="4554" /> +<TGConnectingPoint num="22" id="4555" /> +<TGConnectingPoint num="23" id="4556" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="MainBus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="4582" > +<cdparam x="1367" y="610" /> +<sizeparam width="100" height="100" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainBridge" value="name" /> +<TGConnectingPoint num="0" id="4558" /> +<TGConnectingPoint num="1" id="4559" /> +<TGConnectingPoint num="2" id="4560" /> +<TGConnectingPoint num="3" id="4561" /> +<TGConnectingPoint num="4" id="4562" /> +<TGConnectingPoint num="5" id="4563" /> +<TGConnectingPoint num="6" id="4564" /> +<TGConnectingPoint num="7" id="4565" /> +<TGConnectingPoint num="8" id="4566" /> +<TGConnectingPoint num="9" id="4567" /> +<TGConnectingPoint num="10" id="4568" /> +<TGConnectingPoint num="11" id="4569" /> +<TGConnectingPoint num="12" id="4570" /> +<TGConnectingPoint num="13" id="4571" /> +<TGConnectingPoint num="14" id="4572" /> +<TGConnectingPoint num="15" id="4573" /> +<TGConnectingPoint num="16" id="4574" /> +<TGConnectingPoint num="17" id="4575" /> +<TGConnectingPoint num="18" id="4576" /> +<TGConnectingPoint num="19" id="4577" /> +<TGConnectingPoint num="20" id="4578" /> +<TGConnectingPoint num="21" id="4579" /> +<TGConnectingPoint num="22" id="4580" /> +<TGConnectingPoint num="23" id="4581" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="MainBridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="4607" > +<cdparam x="231" y="635" /> +<sizeparam width="845" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="Crossbar" value="name" /> +<TGConnectingPoint num="0" id="4583" /> +<TGConnectingPoint num="1" id="4584" /> +<TGConnectingPoint num="2" id="4585" /> +<TGConnectingPoint num="3" id="4586" /> +<TGConnectingPoint num="4" id="4587" /> +<TGConnectingPoint num="5" id="4588" /> +<TGConnectingPoint num="6" id="4589" /> +<TGConnectingPoint num="7" id="4590" /> +<TGConnectingPoint num="8" id="4591" /> +<TGConnectingPoint num="9" id="4592" /> +<TGConnectingPoint num="10" id="4593" /> +<TGConnectingPoint num="11" id="4594" /> +<TGConnectingPoint num="12" id="4595" /> +<TGConnectingPoint num="13" id="4596" /> +<TGConnectingPoint num="14" id="4597" /> +<TGConnectingPoint num="15" id="4598" /> +<TGConnectingPoint num="16" id="4599" /> +<TGConnectingPoint num="17" id="4600" /> +<TGConnectingPoint num="18" id="4601" /> +<TGConnectingPoint num="19" id="4602" /> +<TGConnectingPoint num="20" id="4603" /> +<TGConnectingPoint num="21" id="4604" /> +<TGConnectingPoint num="22" id="4605" /> +<TGConnectingPoint num="23" id="4606" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="Crossbar" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="4632" > +<cdparam x="306" y="737" /> +<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_Bridge" value="name" /> +<TGConnectingPoint num="0" id="4608" /> +<TGConnectingPoint num="1" id="4609" /> +<TGConnectingPoint num="2" id="4610" /> +<TGConnectingPoint num="3" id="4611" /> +<TGConnectingPoint num="4" id="4612" /> +<TGConnectingPoint num="5" id="4613" /> +<TGConnectingPoint num="6" id="4614" /> +<TGConnectingPoint num="7" id="4615" /> +<TGConnectingPoint num="8" id="4616" /> +<TGConnectingPoint num="9" id="4617" /> +<TGConnectingPoint num="10" id="4618" /> +<TGConnectingPoint num="11" id="4619" /> +<TGConnectingPoint num="12" id="4620" /> +<TGConnectingPoint num="13" id="4621" /> +<TGConnectingPoint num="14" id="4622" /> +<TGConnectingPoint num="15" id="4623" /> +<TGConnectingPoint num="16" id="4624" /> +<TGConnectingPoint num="17" id="4625" /> +<TGConnectingPoint num="18" id="4626" /> +<TGConnectingPoint num="19" id="4627" /> +<TGConnectingPoint num="20" id="4628" /> +<TGConnectingPoint num="21" id="4629" /> +<TGConnectingPoint num="22" id="4630" /> +<TGConnectingPoint num="23" id="4631" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="INTL_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="4657" > +<cdparam x="376" y="949" /> +<sizeparam width="331" height="135" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_MSS" value="name" /> +<TGConnectingPoint num="0" id="4633" /> +<TGConnectingPoint num="1" id="4634" /> +<TGConnectingPoint num="2" id="4635" /> +<TGConnectingPoint num="3" id="4636" /> +<TGConnectingPoint num="4" id="4637" /> +<TGConnectingPoint num="5" id="4638" /> +<TGConnectingPoint num="6" id="4639" /> +<TGConnectingPoint num="7" id="4640" /> +<TGConnectingPoint num="8" id="4641" /> +<TGConnectingPoint num="9" id="4642" /> +<TGConnectingPoint num="10" id="4643" /> +<TGConnectingPoint num="11" id="4644" /> +<TGConnectingPoint num="12" id="4645" /> +<TGConnectingPoint num="13" id="4646" /> +<TGConnectingPoint num="14" id="4647" /> +<TGConnectingPoint num="15" id="4648" /> +<TGConnectingPoint num="16" id="4649" /> +<TGConnectingPoint num="17" id="4650" /> +<TGConnectingPoint num="18" id="4651" /> +<TGConnectingPoint num="19" id="4652" /> +<TGConnectingPoint num="20" id="4653" /> +<TGConnectingPoint num="21" id="4654" /> +<TGConnectingPoint num="22" id="4655" /> +<TGConnectingPoint num="23" id="4656" /> +<extraparam> +<info stereotype="MEMORY" nodeName="INTL_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="3" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="4682" > +<cdparam x="138" y="938" /> +<sizeparam width="187" height="140" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_PSS" value="name" /> +<TGConnectingPoint num="0" id="4658" /> +<TGConnectingPoint num="1" id="4659" /> +<TGConnectingPoint num="2" id="4660" /> +<TGConnectingPoint num="3" id="4661" /> +<TGConnectingPoint num="4" id="4662" /> +<TGConnectingPoint num="5" id="4663" /> +<TGConnectingPoint num="6" id="4664" /> +<TGConnectingPoint num="7" id="4665" /> +<TGConnectingPoint num="8" id="4666" /> +<TGConnectingPoint num="9" id="4667" /> +<TGConnectingPoint num="10" id="4668" /> +<TGConnectingPoint num="11" id="4669" /> +<TGConnectingPoint num="12" id="4670" /> +<TGConnectingPoint num="13" id="4671" /> +<TGConnectingPoint num="14" id="4672" /> +<TGConnectingPoint num="15" id="4673" /> +<TGConnectingPoint num="16" id="4674" /> +<TGConnectingPoint num="17" id="4675" /> +<TGConnectingPoint num="18" id="4676" /> +<TGConnectingPoint num="19" id="4677" /> +<TGConnectingPoint num="20" id="4678" /> +<TGConnectingPoint num="21" id="4679" /> +<TGConnectingPoint num="22" id="4680" /> +<TGConnectingPoint num="23" id="4681" /> +<extraparam> +<info stereotype="CPURR" nodeName="INTL_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="2" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="4707" > +<cdparam x="231" y="832" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_Bus" value="name" /> +<TGConnectingPoint num="0" id="4683" /> +<TGConnectingPoint num="1" id="4684" /> +<TGConnectingPoint num="2" id="4685" /> +<TGConnectingPoint num="3" id="4686" /> +<TGConnectingPoint num="4" id="4687" /> +<TGConnectingPoint num="5" id="4688" /> +<TGConnectingPoint num="6" id="4689" /> +<TGConnectingPoint num="7" id="4690" /> +<TGConnectingPoint num="8" id="4691" /> +<TGConnectingPoint num="9" id="4692" /> +<TGConnectingPoint num="10" id="4693" /> +<TGConnectingPoint num="11" id="4694" /> +<TGConnectingPoint num="12" id="4695" /> +<TGConnectingPoint num="13" id="4696" /> +<TGConnectingPoint num="14" id="4697" /> +<TGConnectingPoint num="15" id="4698" /> +<TGConnectingPoint num="16" id="4699" /> +<TGConnectingPoint num="17" id="4700" /> +<TGConnectingPoint num="18" id="4701" /> +<TGConnectingPoint num="19" id="4702" /> +<TGConnectingPoint num="20" id="4703" /> +<TGConnectingPoint num="21" id="4704" /> +<TGConnectingPoint num="22" id="4705" /> +<TGConnectingPoint num="23" id="4706" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="INTL_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="4732" > +<cdparam x="231" y="447" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_Bus" value="name" /> +<TGConnectingPoint num="0" id="4708" /> +<TGConnectingPoint num="1" id="4709" /> +<TGConnectingPoint num="2" id="4710" /> +<TGConnectingPoint num="3" id="4711" /> +<TGConnectingPoint num="4" id="4712" /> +<TGConnectingPoint num="5" id="4713" /> +<TGConnectingPoint num="6" id="4714" /> +<TGConnectingPoint num="7" id="4715" /> +<TGConnectingPoint num="8" id="4716" /> +<TGConnectingPoint num="9" id="4717" /> +<TGConnectingPoint num="10" id="4718" /> +<TGConnectingPoint num="11" id="4719" /> +<TGConnectingPoint num="12" id="4720" /> +<TGConnectingPoint num="13" id="4721" /> +<TGConnectingPoint num="14" id="4722" /> +<TGConnectingPoint num="15" id="4723" /> +<TGConnectingPoint num="16" id="4724" /> +<TGConnectingPoint num="17" id="4725" /> +<TGConnectingPoint num="18" id="4726" /> +<TGConnectingPoint num="19" id="4727" /> +<TGConnectingPoint num="20" id="4728" /> +<TGConnectingPoint num="21" id="4729" /> +<TGConnectingPoint num="22" id="4730" /> +<TGConnectingPoint num="23" id="4731" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="ADAIF_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="4757" > +<cdparam x="1147" y="408" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_DMA" value="name" /> +<TGConnectingPoint num="0" id="4733" /> +<TGConnectingPoint num="1" id="4734" /> +<TGConnectingPoint num="2" id="4735" /> +<TGConnectingPoint num="3" id="4736" /> +<TGConnectingPoint num="4" id="4737" /> +<TGConnectingPoint num="5" id="4738" /> +<TGConnectingPoint num="6" id="4739" /> +<TGConnectingPoint num="7" id="4740" /> +<TGConnectingPoint num="8" id="4741" /> +<TGConnectingPoint num="9" id="4742" /> +<TGConnectingPoint num="10" id="4743" /> +<TGConnectingPoint num="11" id="4744" /> +<TGConnectingPoint num="12" id="4745" /> +<TGConnectingPoint num="13" id="4746" /> +<TGConnectingPoint num="14" id="4747" /> +<TGConnectingPoint num="15" id="4748" /> +<TGConnectingPoint num="16" id="4749" /> +<TGConnectingPoint num="17" id="4750" /> +<TGConnectingPoint num="18" id="4751" /> +<TGConnectingPoint num="19" id="4752" /> +<TGConnectingPoint num="20" id="4753" /> +<TGConnectingPoint num="21" id="4754" /> +<TGConnectingPoint num="22" id="4755" /> +<TGConnectingPoint num="23" id="4756" /> +<extraparam> +<info stereotype="CPURR" nodeName="FEP_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="4782" > +<cdparam x="895" y="193" /> +<sizeparam width="255" height="183" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_MSS" value="name" /> +<TGConnectingPoint num="0" id="4758" /> +<TGConnectingPoint num="1" id="4759" /> +<TGConnectingPoint num="2" id="4760" /> +<TGConnectingPoint num="3" id="4761" /> +<TGConnectingPoint num="4" id="4762" /> +<TGConnectingPoint num="5" id="4763" /> +<TGConnectingPoint num="6" id="4764" /> +<TGConnectingPoint num="7" id="4765" /> +<TGConnectingPoint num="8" id="4766" /> +<TGConnectingPoint num="9" id="4767" /> +<TGConnectingPoint num="10" id="4768" /> +<TGConnectingPoint num="11" id="4769" /> +<TGConnectingPoint num="12" id="4770" /> +<TGConnectingPoint num="13" id="4771" /> +<TGConnectingPoint num="14" id="4772" /> +<TGConnectingPoint num="15" id="4773" /> +<TGConnectingPoint num="16" id="4774" /> +<TGConnectingPoint num="17" id="4775" /> +<TGConnectingPoint num="18" id="4776" /> +<TGConnectingPoint num="19" id="4777" /> +<TGConnectingPoint num="20" id="4778" /> +<TGConnectingPoint num="21" id="4779" /> +<TGConnectingPoint num="22" id="4780" /> +<TGConnectingPoint num="23" id="4781" /> +<extraparam> +<info stereotype="MEMORY" nodeName="FEP_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="0" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="4807" > +<cdparam x="619" y="199" /> +<sizeparam width="238" height="185" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_PSS" value="name" /> +<TGConnectingPoint num="0" id="4783" /> +<TGConnectingPoint num="1" id="4784" /> +<TGConnectingPoint num="2" id="4785" /> +<TGConnectingPoint num="3" id="4786" /> +<TGConnectingPoint num="4" id="4787" /> +<TGConnectingPoint num="5" id="4788" /> +<TGConnectingPoint num="6" id="4789" /> +<TGConnectingPoint num="7" id="4790" /> +<TGConnectingPoint num="8" id="4791" /> +<TGConnectingPoint num="9" id="4792" /> +<TGConnectingPoint num="10" id="4793" /> +<TGConnectingPoint num="11" id="4794" /> +<TGConnectingPoint num="12" id="4795" /> +<TGConnectingPoint num="13" id="4796" /> +<TGConnectingPoint num="14" id="4797" /> +<TGConnectingPoint num="15" id="4798" /> +<TGConnectingPoint num="16" id="4799" /> +<TGConnectingPoint num="17" id="4800" /> +<TGConnectingPoint num="18" id="4801" /> +<TGConnectingPoint num="19" id="4802" /> +<TGConnectingPoint num="20" id="4803" /> +<TGConnectingPoint num="21" id="4804" /> +<TGConnectingPoint num="22" id="4805" /> +<TGConnectingPoint num="23" id="4806" /> +<extraparam> +<info stereotype="CPURR" nodeName="FEP_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="2" execcTime="1" clockRatio="1" MECType="1" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="4832" > +<cdparam x="910" y="531" /> +<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_Bridge" value="name" /> +<TGConnectingPoint num="0" id="4808" /> +<TGConnectingPoint num="1" id="4809" /> +<TGConnectingPoint num="2" id="4810" /> +<TGConnectingPoint num="3" id="4811" /> +<TGConnectingPoint num="4" id="4812" /> +<TGConnectingPoint num="5" id="4813" /> +<TGConnectingPoint num="6" id="4814" /> +<TGConnectingPoint num="7" id="4815" /> +<TGConnectingPoint num="8" id="4816" /> +<TGConnectingPoint num="9" id="4817" /> +<TGConnectingPoint num="10" id="4818" /> +<TGConnectingPoint num="11" id="4819" /> +<TGConnectingPoint num="12" id="4820" /> +<TGConnectingPoint num="13" id="4821" /> +<TGConnectingPoint num="14" id="4822" /> +<TGConnectingPoint num="15" id="4823" /> +<TGConnectingPoint num="16" id="4824" /> +<TGConnectingPoint num="17" id="4825" /> +<TGConnectingPoint num="18" id="4826" /> +<TGConnectingPoint num="19" id="4827" /> +<TGConnectingPoint num="20" id="4828" /> +<TGConnectingPoint num="21" id="4829" /> +<TGConnectingPoint num="22" id="4830" /> +<TGConnectingPoint num="23" id="4831" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="FEP_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="4857" > +<cdparam x="835" y="433" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_Bus" value="name" /> +<TGConnectingPoint num="0" id="4833" /> +<TGConnectingPoint num="1" id="4834" /> +<TGConnectingPoint num="2" id="4835" /> +<TGConnectingPoint num="3" id="4836" /> +<TGConnectingPoint num="4" id="4837" /> +<TGConnectingPoint num="5" id="4838" /> +<TGConnectingPoint num="6" id="4839" /> +<TGConnectingPoint num="7" id="4840" /> +<TGConnectingPoint num="8" id="4841" /> +<TGConnectingPoint num="9" id="4842" /> +<TGConnectingPoint num="10" id="4843" /> +<TGConnectingPoint num="11" id="4844" /> +<TGConnectingPoint num="12" id="4845" /> +<TGConnectingPoint num="13" id="4846" /> +<TGConnectingPoint num="14" id="4847" /> +<TGConnectingPoint num="15" id="4848" /> +<TGConnectingPoint num="16" id="4849" /> +<TGConnectingPoint num="17" id="4850" /> +<TGConnectingPoint num="18" id="4851" /> +<TGConnectingPoint num="19" id="4852" /> +<TGConnectingPoint num="20" id="4853" /> +<TGConnectingPoint num="21" id="4854" /> +<TGConnectingPoint num="22" id="4855" /> +<TGConnectingPoint num="23" id="4856" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="FEP_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="4882" > +<cdparam x="1174" y="850" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_DMA" value="name" /> +<TGConnectingPoint num="0" id="4858" /> +<TGConnectingPoint num="1" id="4859" /> +<TGConnectingPoint num="2" id="4860" /> +<TGConnectingPoint num="3" id="4861" /> +<TGConnectingPoint num="4" id="4862" /> +<TGConnectingPoint num="5" id="4863" /> +<TGConnectingPoint num="6" id="4864" /> +<TGConnectingPoint num="7" id="4865" /> +<TGConnectingPoint num="8" id="4866" /> +<TGConnectingPoint num="9" id="4867" /> +<TGConnectingPoint num="10" id="4868" /> +<TGConnectingPoint num="11" id="4869" /> +<TGConnectingPoint num="12" id="4870" /> +<TGConnectingPoint num="13" id="4871" /> +<TGConnectingPoint num="14" id="4872" /> +<TGConnectingPoint num="15" id="4873" /> +<TGConnectingPoint num="16" id="4874" /> +<TGConnectingPoint num="17" id="4875" /> +<TGConnectingPoint num="18" id="4876" /> +<TGConnectingPoint num="19" id="4877" /> +<TGConnectingPoint num="20" id="4878" /> +<TGConnectingPoint num="21" id="4879" /> +<TGConnectingPoint num="22" id="4880" /> +<TGConnectingPoint num="23" id="4881" /> +<extraparam> +<info stereotype="CPURR" nodeName="MAPPER_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="4907" > +<cdparam x="920" y="780" /> +<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_Bridge" value="name" /> +<TGConnectingPoint num="0" id="4883" /> +<TGConnectingPoint num="1" id="4884" /> +<TGConnectingPoint num="2" id="4885" /> +<TGConnectingPoint num="3" id="4886" /> +<TGConnectingPoint num="4" id="4887" /> +<TGConnectingPoint num="5" id="4888" /> +<TGConnectingPoint num="6" id="4889" /> +<TGConnectingPoint num="7" id="4890" /> +<TGConnectingPoint num="8" id="4891" /> +<TGConnectingPoint num="9" id="4892" /> +<TGConnectingPoint num="10" id="4893" /> +<TGConnectingPoint num="11" id="4894" /> +<TGConnectingPoint num="12" id="4895" /> +<TGConnectingPoint num="13" id="4896" /> +<TGConnectingPoint num="14" id="4897" /> +<TGConnectingPoint num="15" id="4898" /> +<TGConnectingPoint num="16" id="4899" /> +<TGConnectingPoint num="17" id="4900" /> +<TGConnectingPoint num="18" id="4901" /> +<TGConnectingPoint num="19" id="4902" /> +<TGConnectingPoint num="20" id="4903" /> +<TGConnectingPoint num="21" id="4904" /> +<TGConnectingPoint num="22" id="4905" /> +<TGConnectingPoint num="23" id="4906" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="MAPPER_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="4932" > +<cdparam x="1043" y="978" /> +<sizeparam width="314" height="125" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_MSS" value="name" /> +<TGConnectingPoint num="0" id="4908" /> +<TGConnectingPoint num="1" id="4909" /> +<TGConnectingPoint num="2" id="4910" /> +<TGConnectingPoint num="3" id="4911" /> +<TGConnectingPoint num="4" id="4912" /> +<TGConnectingPoint num="5" id="4913" /> +<TGConnectingPoint num="6" id="4914" /> +<TGConnectingPoint num="7" id="4915" /> +<TGConnectingPoint num="8" id="4916" /> +<TGConnectingPoint num="9" id="4917" /> +<TGConnectingPoint num="10" id="4918" /> +<TGConnectingPoint num="11" id="4919" /> +<TGConnectingPoint num="12" id="4920" /> +<TGConnectingPoint num="13" id="4921" /> +<TGConnectingPoint num="14" id="4922" /> +<TGConnectingPoint num="15" id="4923" /> +<TGConnectingPoint num="16" id="4924" /> +<TGConnectingPoint num="17" id="4925" /> +<TGConnectingPoint num="18" id="4926" /> +<TGConnectingPoint num="19" id="4927" /> +<TGConnectingPoint num="20" id="4928" /> +<TGConnectingPoint num="21" id="4929" /> +<TGConnectingPoint num="22" id="4930" /> +<TGConnectingPoint num="23" id="4931" /> +<extraparam> +<info stereotype="MEMORY" nodeName="MAPPER_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="4957" > +<cdparam x="759" y="981" /> +<sizeparam width="219" height="158" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_PSS" value="name" /> +<TGConnectingPoint num="0" id="4933" /> +<TGConnectingPoint num="1" id="4934" /> +<TGConnectingPoint num="2" id="4935" /> +<TGConnectingPoint num="3" id="4936" /> +<TGConnectingPoint num="4" id="4937" /> +<TGConnectingPoint num="5" id="4938" /> +<TGConnectingPoint num="6" id="4939" /> +<TGConnectingPoint num="7" id="4940" /> +<TGConnectingPoint num="8" id="4941" /> +<TGConnectingPoint num="9" id="4942" /> +<TGConnectingPoint num="10" id="4943" /> +<TGConnectingPoint num="11" id="4944" /> +<TGConnectingPoint num="12" id="4945" /> +<TGConnectingPoint num="13" id="4946" /> +<TGConnectingPoint num="14" id="4947" /> +<TGConnectingPoint num="15" id="4948" /> +<TGConnectingPoint num="16" id="4949" /> +<TGConnectingPoint num="17" id="4950" /> +<TGConnectingPoint num="18" id="4951" /> +<TGConnectingPoint num="19" id="4952" /> +<TGConnectingPoint num="20" id="4953" /> +<TGConnectingPoint num="21" id="4954" /> +<TGConnectingPoint num="22" id="4955" /> +<TGConnectingPoint num="23" id="4956" /> +<extraparam> +<info stereotype="CPURR" nodeName="MAPPER_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="3" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="4982" > +<cdparam x="845" y="875" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_Bus" value="name" /> +<TGConnectingPoint num="0" id="4958" /> +<TGConnectingPoint num="1" id="4959" /> +<TGConnectingPoint num="2" id="4960" /> +<TGConnectingPoint num="3" id="4961" /> +<TGConnectingPoint num="4" id="4962" /> +<TGConnectingPoint num="5" id="4963" /> +<TGConnectingPoint num="6" id="4964" /> +<TGConnectingPoint num="7" id="4965" /> +<TGConnectingPoint num="8" id="4966" /> +<TGConnectingPoint num="9" id="4967" /> +<TGConnectingPoint num="10" id="4968" /> +<TGConnectingPoint num="11" id="4969" /> +<TGConnectingPoint num="12" id="4970" /> +<TGConnectingPoint num="13" id="4971" /> +<TGConnectingPoint num="14" id="4972" /> +<TGConnectingPoint num="15" id="4973" /> +<TGConnectingPoint num="16" id="4974" /> +<TGConnectingPoint num="17" id="4975" /> +<TGConnectingPoint num="18" id="4976" /> +<TGConnectingPoint num="19" id="4977" /> +<TGConnectingPoint num="20" id="4978" /> +<TGConnectingPoint num="21" id="4979" /> +<TGConnectingPoint num="22" id="4980" /> +<TGConnectingPoint num="23" id="4981" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="MAPPER_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="125" id="4983" > +<cdparam x="1367" y="660" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1367" y="660" id="4561" /> +<P2 x="1076" y="660" id="4587" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4984" > +<cdparam x="1147" y="508" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1147" y="508" id="4738" /> +<P2 x="1076" y="635" id="4585" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4985" > +<cdparam x="1298" y="875" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1249" y="850" id="4859" /> +<P2 x="1076" y="685" id="4590" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4986" > +<cdparam x="1019" y="805" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="970" y="780" id="4884" /> +<P2 x="864" y="685" id="4598" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4987" > +<cdparam x="1004" y="531" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="960" y="566" id="4814" /> +<P2 x="864" y="635" id="4592" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4988" > +<cdparam x="1185" y="660" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1467" y="660" id="4562" /> +<P2 x="1527" y="660" id="4536" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4989" > +<cdparam x="356" y="788" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="788" id="4614" /> +<P2 x="356" y="832" id="4684" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4990" > +<cdparam x="554" y="806" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="560" y="807" id="4358" /> +<P2 x="442" y="685" id="4597" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4991" > +<cdparam x="559" y="863" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="560" y="857" id="4361" /> +<P2 x="481" y="857" id="4687" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4992" > +<cdparam x="586" y="970" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="541" y="949" id="4634" /> +<P2 x="418" y="882" id="4698" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4993" > +<cdparam x="165" y="927" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="231" y="938" id="4659" /> +<P2 x="293" y="882" id="4697" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4994" > +<cdparam x="355" y="576" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="580" id="4464" /> +<P2 x="231" y="635" id="4583" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4995" > +<cdparam x="355" y="541" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="545" id="4459" /> +<P2 x="356" y="497" id="4714" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4996" > +<cdparam x="543" y="522" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="543" y="522" id="4388" /> +<P2 x="442" y="635" id="4591" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4997" > +<cdparam x="536" y="475" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="543" y="472" id="4386" /> +<P2 x="481" y="472" id="4712" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4998" > +<cdparam x="549" y="337" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="454" y="395" id="4414" /> +<P2 x="418" y="447" id="4717" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="4999" > +<cdparam x="155" y="323" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="155" y="396" id="4439" /> +<P2 x="293" y="447" id="4716" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5000" > +<cdparam x="357" y="778" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="737" id="4609" /> +<P2 x="231" y="685" id="4588" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5001" > +<cdparam x="1654" y="758" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1652" y="737" id="4484" /> +<P2 x="1652" y="685" id="4539" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5002" > +<cdparam x="1651" y="573" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1652" y="586" id="4514" /> +<P2 x="1652" y="635" id="4534" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5003" > +<cdparam x="959" y="527" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="960" y="531" id="4809" /> +<P2 x="960" y="483" id="4839" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5004" > +<cdparam x="1140" y="461" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1147" y="458" id="4736" /> +<P2 x="1085" y="458" id="4837" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5005" > +<cdparam x="1189" y="374" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1022" y="376" id="4764" /> +<P2 x="1022" y="433" id="4842" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5006" > +<cdparam x="795" y="360" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="738" y="384" id="4789" /> +<P2 x="897" y="433" id="4841" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5007" > +<cdparam x="970" y="831" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="970" y="831" id="4889" /> +<P2 x="970" y="875" id="4959" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5008" > +<cdparam x="1173" y="906" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1174" y="900" id="4861" /> +<P2 x="1095" y="900" id="4962" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5009" > +<cdparam x="1200" y="1013" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1200" y="978" id="4909" /> +<P2 x="1032" y="925" id="4973" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5010" > +<cdparam x="779" y="970" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="868" y="981" id="4934" /> +<P2 x="907" y="925" id="4972" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> + +</TMLArchiDiagramPanel> + +</Modeling> + + + + +<Modeling type="TML Architecture" nameTab="Mapping_0" > +<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1900" minY="10" maxY="1900" attributes="0" masterClockFrequency="100" > +<COMPONENT type="1100" id="5035" > +<cdparam x="560" y="807" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_DMA" value="name" /> +<TGConnectingPoint num="0" id="5011" /> +<TGConnectingPoint num="1" id="5012" /> +<TGConnectingPoint num="2" id="5013" /> +<TGConnectingPoint num="3" id="5014" /> +<TGConnectingPoint num="4" id="5015" /> +<TGConnectingPoint num="5" id="5016" /> +<TGConnectingPoint num="6" id="5017" /> +<TGConnectingPoint num="7" id="5018" /> +<TGConnectingPoint num="8" id="5019" /> +<TGConnectingPoint num="9" id="5020" /> +<TGConnectingPoint num="10" id="5021" /> +<TGConnectingPoint num="11" id="5022" /> +<TGConnectingPoint num="12" id="5023" /> +<TGConnectingPoint num="13" id="5024" /> +<TGConnectingPoint num="14" id="5025" /> +<TGConnectingPoint num="15" id="5026" /> +<TGConnectingPoint num="16" id="5027" /> +<TGConnectingPoint num="17" id="5028" /> +<TGConnectingPoint num="18" id="5029" /> +<TGConnectingPoint num="19" id="5030" /> +<TGConnectingPoint num="20" id="5031" /> +<TGConnectingPoint num="21" id="5032" /> +<TGConnectingPoint num="22" id="5033" /> +<TGConnectingPoint num="23" id="5034" /> +<extraparam> +<info stereotype="CPURR" nodeName="INTL_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="5060" > +<cdparam x="543" y="422" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_DMA" value="name" /> +<TGConnectingPoint num="0" id="5036" /> +<TGConnectingPoint num="1" id="5037" /> +<TGConnectingPoint num="2" id="5038" /> +<TGConnectingPoint num="3" id="5039" /> +<TGConnectingPoint num="4" id="5040" /> +<TGConnectingPoint num="5" id="5041" /> +<TGConnectingPoint num="6" id="5042" /> +<TGConnectingPoint num="7" id="5043" /> +<TGConnectingPoint num="8" id="5044" /> +<TGConnectingPoint num="9" id="5045" /> +<TGConnectingPoint num="10" id="5046" /> +<TGConnectingPoint num="11" id="5047" /> +<TGConnectingPoint num="12" id="5048" /> +<TGConnectingPoint num="13" id="5049" /> +<TGConnectingPoint num="14" id="5050" /> +<TGConnectingPoint num="15" id="5051" /> +<TGConnectingPoint num="16" id="5052" /> +<TGConnectingPoint num="17" id="5053" /> +<TGConnectingPoint num="18" id="5054" /> +<TGConnectingPoint num="19" id="5055" /> +<TGConnectingPoint num="20" id="5056" /> +<TGConnectingPoint num="21" id="5057" /> +<TGConnectingPoint num="22" id="5058" /> +<TGConnectingPoint num="23" id="5059" /> +<extraparam> +<info stereotype="CPURR" nodeName="ADAIF_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="5085" > +<cdparam x="377" y="225" /> +<sizeparam width="200" height="152" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_MSS" value="name" /> +<TGConnectingPoint num="0" id="5061" /> +<TGConnectingPoint num="1" id="5062" /> +<TGConnectingPoint num="2" id="5063" /> +<TGConnectingPoint num="3" id="5064" /> +<TGConnectingPoint num="4" id="5065" /> +<TGConnectingPoint num="5" id="5066" /> +<TGConnectingPoint num="6" id="5067" /> +<TGConnectingPoint num="7" id="5068" /> +<TGConnectingPoint num="8" id="5069" /> +<TGConnectingPoint num="9" id="5070" /> +<TGConnectingPoint num="10" id="5071" /> +<TGConnectingPoint num="11" id="5072" /> +<TGConnectingPoint num="12" id="5073" /> +<TGConnectingPoint num="13" id="5074" /> +<TGConnectingPoint num="14" id="5075" /> +<TGConnectingPoint num="15" id="5076" /> +<TGConnectingPoint num="16" id="5077" /> +<TGConnectingPoint num="17" id="5078" /> +<TGConnectingPoint num="18" id="5079" /> +<TGConnectingPoint num="19" id="5080" /> +<TGConnectingPoint num="20" id="5081" /> +<TGConnectingPoint num="21" id="5082" /> +<TGConnectingPoint num="22" id="5083" /> +<TGConnectingPoint num="23" id="5084" /> +<extraparam> +<info stereotype="MEMORY" nodeName="ADAIF_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="2" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="5119" > +<cdparam x="90" y="201" /> +<sizeparam width="252" height="181" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_PSS" value="name" /> +<TGConnectingPoint num="0" id="5095" /> +<TGConnectingPoint num="1" id="5096" /> +<TGConnectingPoint num="2" id="5097" /> +<TGConnectingPoint num="3" id="5098" /> +<TGConnectingPoint num="4" id="5099" /> +<TGConnectingPoint num="5" id="5100" /> +<TGConnectingPoint num="6" id="5101" /> +<TGConnectingPoint num="7" id="5102" /> +<TGConnectingPoint num="8" id="5103" /> +<TGConnectingPoint num="9" id="5104" /> +<TGConnectingPoint num="10" id="5105" /> +<TGConnectingPoint num="11" id="5106" /> +<TGConnectingPoint num="12" id="5107" /> +<TGConnectingPoint num="13" id="5108" /> +<TGConnectingPoint num="14" id="5109" /> +<TGConnectingPoint num="15" id="5110" /> +<TGConnectingPoint num="16" id="5111" /> +<TGConnectingPoint num="17" id="5112" /> +<TGConnectingPoint num="18" id="5113" /> +<TGConnectingPoint num="19" id="5114" /> +<TGConnectingPoint num="20" id="5115" /> +<TGConnectingPoint num="21" id="5116" /> +<TGConnectingPoint num="22" id="5117" /> +<TGConnectingPoint num="23" id="5118" /> +<extraparam> +<info stereotype="CPURR" nodeName="ADAIF_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="4" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="5094" > +<father id="5119" num="0" /> +<cdparam x="109" y="301" /> +<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="106" minY="0" maxY="141" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Sink" /> +<TGConnectingPoint num="0" id="5086" /> +<TGConnectingPoint num="1" id="5087" /> +<TGConnectingPoint num="2" id="5088" /> +<TGConnectingPoint num="3" id="5089" /> +<TGConnectingPoint num="4" id="5090" /> +<TGConnectingPoint num="5" id="5091" /> +<TGConnectingPoint num="6" id="5092" /> +<TGConnectingPoint num="7" id="5093" /> +<extraparam> +<info value="Zigbee_TX::X_Sink" taskName="X_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="Adaif operation" fatherComponentMECType="4" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1106" id="5144" > +<cdparam x="306" y="545" /> +<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_Bridge" value="name" /> +<TGConnectingPoint num="0" id="5120" /> +<TGConnectingPoint num="1" id="5121" /> +<TGConnectingPoint num="2" id="5122" /> +<TGConnectingPoint num="3" id="5123" /> +<TGConnectingPoint num="4" id="5124" /> +<TGConnectingPoint num="5" id="5125" /> +<TGConnectingPoint num="6" id="5126" /> +<TGConnectingPoint num="7" id="5127" /> +<TGConnectingPoint num="8" id="5128" /> +<TGConnectingPoint num="9" id="5129" /> +<TGConnectingPoint num="10" id="5130" /> +<TGConnectingPoint num="11" id="5131" /> +<TGConnectingPoint num="12" id="5132" /> +<TGConnectingPoint num="13" id="5133" /> +<TGConnectingPoint num="14" id="5134" /> +<TGConnectingPoint num="15" id="5135" /> +<TGConnectingPoint num="16" id="5136" /> +<TGConnectingPoint num="17" id="5137" /> +<TGConnectingPoint num="18" id="5138" /> +<TGConnectingPoint num="19" id="5139" /> +<TGConnectingPoint num="20" id="5140" /> +<TGConnectingPoint num="21" id="5141" /> +<TGConnectingPoint num="22" id="5142" /> +<TGConnectingPoint num="23" id="5143" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="ADAIF_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="5169" > +<cdparam x="1544" y="737" /> +<sizeparam width="216" height="140" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainMemory" value="name" /> +<TGConnectingPoint num="0" id="5145" /> +<TGConnectingPoint num="1" id="5146" /> +<TGConnectingPoint num="2" id="5147" /> +<TGConnectingPoint num="3" id="5148" /> +<TGConnectingPoint num="4" id="5149" /> +<TGConnectingPoint num="5" id="5150" /> +<TGConnectingPoint num="6" id="5151" /> +<TGConnectingPoint num="7" id="5152" /> +<TGConnectingPoint num="8" id="5153" /> +<TGConnectingPoint num="9" id="5154" /> +<TGConnectingPoint num="10" id="5155" /> +<TGConnectingPoint num="11" id="5156" /> +<TGConnectingPoint num="12" id="5157" /> +<TGConnectingPoint num="13" id="5158" /> +<TGConnectingPoint num="14" id="5159" /> +<TGConnectingPoint num="15" id="5160" /> +<TGConnectingPoint num="16" id="5161" /> +<TGConnectingPoint num="17" id="5162" /> +<TGConnectingPoint num="18" id="5163" /> +<TGConnectingPoint num="19" id="5164" /> +<TGConnectingPoint num="20" id="5165" /> +<TGConnectingPoint num="21" id="5166" /> +<TGConnectingPoint num="22" id="5167" /> +<TGConnectingPoint num="23" id="5168" /> +<extraparam> +<info stereotype="MEMORY" nodeName="MainMemory" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="4" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="5266" > +<cdparam x="1444" y="293" /> +<sizeparam width="417" height="293" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainCPU" value="name" /> +<TGConnectingPoint num="0" id="5242" /> +<TGConnectingPoint num="1" id="5243" /> +<TGConnectingPoint num="2" id="5244" /> +<TGConnectingPoint num="3" id="5245" /> +<TGConnectingPoint num="4" id="5246" /> +<TGConnectingPoint num="5" id="5247" /> +<TGConnectingPoint num="6" id="5248" /> +<TGConnectingPoint num="7" id="5249" /> +<TGConnectingPoint num="8" id="5250" /> +<TGConnectingPoint num="9" id="5251" /> +<TGConnectingPoint num="10" id="5252" /> +<TGConnectingPoint num="11" id="5253" /> +<TGConnectingPoint num="12" id="5254" /> +<TGConnectingPoint num="13" id="5255" /> +<TGConnectingPoint num="14" id="5256" /> +<TGConnectingPoint num="15" id="5257" /> +<TGConnectingPoint num="16" id="5258" /> +<TGConnectingPoint num="17" id="5259" /> +<TGConnectingPoint num="18" id="5260" /> +<TGConnectingPoint num="19" id="5261" /> +<TGConnectingPoint num="20" id="5262" /> +<TGConnectingPoint num="21" id="5263" /> +<TGConnectingPoint num="22" id="5264" /> +<TGConnectingPoint num="23" id="5265" /> +<extraparam> +<info stereotype="CPURR" nodeName="MainCPU" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="6" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="5178" > +<father id="5266" num="0" /> +<cdparam x="1686" y="522" /> +<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="261" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_I" /> +<TGConnectingPoint num="0" id="5170" /> +<TGConnectingPoint num="1" id="5171" /> +<TGConnectingPoint num="2" id="5172" /> +<TGConnectingPoint num="3" id="5173" /> +<TGConnectingPoint num="4" id="5174" /> +<TGConnectingPoint num="5" id="5175" /> +<TGConnectingPoint num="6" id="5176" /> +<TGConnectingPoint num="7" id="5177" /> +<extraparam> +<info value="Zigbee_TX::F_CWP_I" taskName="F_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_I" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="5187" > +<father id="5266" num="1" /> +<cdparam x="1685" y="459" /> +<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="255" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_Q" /> +<TGConnectingPoint num="0" id="5179" /> +<TGConnectingPoint num="1" id="5180" /> +<TGConnectingPoint num="2" id="5181" /> +<TGConnectingPoint num="3" id="5182" /> +<TGConnectingPoint num="4" id="5183" /> +<TGConnectingPoint num="5" id="5184" /> +<TGConnectingPoint num="6" id="5185" /> +<TGConnectingPoint num="7" id="5186" /> +<extraparam> +<info value="Zigbee_TX::F_CWP_Q" taskName="F_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_Q" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="5196" > +<father id="5266" num="2" /> +<cdparam x="1691" y="345" /> +<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="272" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_CWL" /> +<TGConnectingPoint num="0" id="5188" /> +<TGConnectingPoint num="1" id="5189" /> +<TGConnectingPoint num="2" id="5190" /> +<TGConnectingPoint num="3" id="5191" /> +<TGConnectingPoint num="4" id="5192" /> +<TGConnectingPoint num="5" id="5193" /> +<TGConnectingPoint num="6" id="5194" /> +<TGConnectingPoint num="7" id="5195" /> +<extraparam> +<info value="Zigbee_TX::F_CWL" taskName="F_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWL" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="5205" > +<father id="5266" num="3" /> +<cdparam x="1688" y="405" /> +<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="271" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Sink" /> +<TGConnectingPoint num="0" id="5197" /> +<TGConnectingPoint num="1" id="5198" /> +<TGConnectingPoint num="2" id="5199" /> +<TGConnectingPoint num="3" id="5200" /> +<TGConnectingPoint num="4" id="5201" /> +<TGConnectingPoint num="5" id="5202" /> +<TGConnectingPoint num="6" id="5203" /> +<TGConnectingPoint num="7" id="5204" /> +<extraparam> +<info value="Zigbee_TX::F_Sink" taskName="F_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="F_Sink" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="5214" > +<father id="5266" num="4" /> +<cdparam x="1466" y="518" /> +<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="228" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Chip2Octet" /> +<TGConnectingPoint num="0" id="5206" /> +<TGConnectingPoint num="1" id="5207" /> +<TGConnectingPoint num="2" id="5208" /> +<TGConnectingPoint num="3" id="5209" /> +<TGConnectingPoint num="4" id="5210" /> +<TGConnectingPoint num="5" id="5211" /> +<TGConnectingPoint num="6" id="5212" /> +<TGConnectingPoint num="7" id="5213" /> +<extraparam> +<info value="Zigbee_TX::X_Chip2Octet" taskName="X_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="X_Chip2Octet" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="5223" > +<father id="5266" num="5" /> +<cdparam x="1466" y="456" /> +<sizeparam width="223" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="194" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Symbol2ChipSeq" /> +<TGConnectingPoint num="0" id="5215" /> +<TGConnectingPoint num="1" id="5216" /> +<TGConnectingPoint num="2" id="5217" /> +<TGConnectingPoint num="3" id="5218" /> +<TGConnectingPoint num="4" id="5219" /> +<TGConnectingPoint num="5" id="5220" /> +<TGConnectingPoint num="6" id="5221" /> +<TGConnectingPoint num="7" id="5222" /> +<extraparam> +<info value="Zigbee_TX::F_Symbol2ChipSeq" taskName="F_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="F_Symbol2ChipSeq" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="5232" > +<father id="5266" num="6" /> +<cdparam x="1466" y="395" /> +<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Source" /> +<TGConnectingPoint num="0" id="5224" /> +<TGConnectingPoint num="1" id="5225" /> +<TGConnectingPoint num="2" id="5226" /> +<TGConnectingPoint num="3" id="5227" /> +<TGConnectingPoint num="4" id="5228" /> +<TGConnectingPoint num="5" id="5229" /> +<TGConnectingPoint num="6" id="5230" /> +<TGConnectingPoint num="7" id="5231" /> +<extraparam> +<info value="Zigbee_TX::X_Source" taskName="X_Source" referenceTaskName="Zigbee_TX" priority="0" operation="X_Source" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="5241" > +<father id="5266" num="7" /> +<cdparam x="1465" y="339" /> +<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Source" /> +<TGConnectingPoint num="0" id="5233" /> +<TGConnectingPoint num="1" id="5234" /> +<TGConnectingPoint num="2" id="5235" /> +<TGConnectingPoint num="3" id="5236" /> +<TGConnectingPoint num="4" id="5237" /> +<TGConnectingPoint num="5" id="5238" /> +<TGConnectingPoint num="6" id="5239" /> +<TGConnectingPoint num="7" id="5240" /> +<extraparam> +<info value="Zigbee_TX::F_Source" taskName="F_Source" referenceTaskName="Zigbee_TX" priority="0" operation="F_Source" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1102" id="5291" > +<cdparam x="1527" y="635" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainBus" value="name" /> +<TGConnectingPoint num="0" id="5267" /> +<TGConnectingPoint num="1" id="5268" /> +<TGConnectingPoint num="2" id="5269" /> +<TGConnectingPoint num="3" id="5270" /> +<TGConnectingPoint num="4" id="5271" /> +<TGConnectingPoint num="5" id="5272" /> +<TGConnectingPoint num="6" id="5273" /> +<TGConnectingPoint num="7" id="5274" /> +<TGConnectingPoint num="8" id="5275" /> +<TGConnectingPoint num="9" id="5276" /> +<TGConnectingPoint num="10" id="5277" /> +<TGConnectingPoint num="11" id="5278" /> +<TGConnectingPoint num="12" id="5279" /> +<TGConnectingPoint num="13" id="5280" /> +<TGConnectingPoint num="14" id="5281" /> +<TGConnectingPoint num="15" id="5282" /> +<TGConnectingPoint num="16" id="5283" /> +<TGConnectingPoint num="17" id="5284" /> +<TGConnectingPoint num="18" id="5285" /> +<TGConnectingPoint num="19" id="5286" /> +<TGConnectingPoint num="20" id="5287" /> +<TGConnectingPoint num="21" id="5288" /> +<TGConnectingPoint num="22" id="5289" /> +<TGConnectingPoint num="23" id="5290" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="MainBus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="5316" > +<cdparam x="1367" y="610" /> +<sizeparam width="100" height="100" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainBridge" value="name" /> +<TGConnectingPoint num="0" id="5292" /> +<TGConnectingPoint num="1" id="5293" /> +<TGConnectingPoint num="2" id="5294" /> +<TGConnectingPoint num="3" id="5295" /> +<TGConnectingPoint num="4" id="5296" /> +<TGConnectingPoint num="5" id="5297" /> +<TGConnectingPoint num="6" id="5298" /> +<TGConnectingPoint num="7" id="5299" /> +<TGConnectingPoint num="8" id="5300" /> +<TGConnectingPoint num="9" id="5301" /> +<TGConnectingPoint num="10" id="5302" /> +<TGConnectingPoint num="11" id="5303" /> +<TGConnectingPoint num="12" id="5304" /> +<TGConnectingPoint num="13" id="5305" /> +<TGConnectingPoint num="14" id="5306" /> +<TGConnectingPoint num="15" id="5307" /> +<TGConnectingPoint num="16" id="5308" /> +<TGConnectingPoint num="17" id="5309" /> +<TGConnectingPoint num="18" id="5310" /> +<TGConnectingPoint num="19" id="5311" /> +<TGConnectingPoint num="20" id="5312" /> +<TGConnectingPoint num="21" id="5313" /> +<TGConnectingPoint num="22" id="5314" /> +<TGConnectingPoint num="23" id="5315" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="MainBridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="5341" > +<cdparam x="354" y="618" /> +<sizeparam width="845" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="Crossbar" value="name" /> +<TGConnectingPoint num="0" id="5317" /> +<TGConnectingPoint num="1" id="5318" /> +<TGConnectingPoint num="2" id="5319" /> +<TGConnectingPoint num="3" id="5320" /> +<TGConnectingPoint num="4" id="5321" /> +<TGConnectingPoint num="5" id="5322" /> +<TGConnectingPoint num="6" id="5323" /> +<TGConnectingPoint num="7" id="5324" /> +<TGConnectingPoint num="8" id="5325" /> +<TGConnectingPoint num="9" id="5326" /> +<TGConnectingPoint num="10" id="5327" /> +<TGConnectingPoint num="11" id="5328" /> +<TGConnectingPoint num="12" id="5329" /> +<TGConnectingPoint num="13" id="5330" /> +<TGConnectingPoint num="14" id="5331" /> +<TGConnectingPoint num="15" id="5332" /> +<TGConnectingPoint num="16" id="5333" /> +<TGConnectingPoint num="17" id="5334" /> +<TGConnectingPoint num="18" id="5335" /> +<TGConnectingPoint num="19" id="5336" /> +<TGConnectingPoint num="20" id="5337" /> +<TGConnectingPoint num="21" id="5338" /> +<TGConnectingPoint num="22" id="5339" /> +<TGConnectingPoint num="23" id="5340" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="Crossbar" /> +<attributes byteDataSize="8" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="5366" > +<cdparam x="306" y="737" /> +<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_Bridge" value="name" /> +<TGConnectingPoint num="0" id="5342" /> +<TGConnectingPoint num="1" id="5343" /> +<TGConnectingPoint num="2" id="5344" /> +<TGConnectingPoint num="3" id="5345" /> +<TGConnectingPoint num="4" id="5346" /> +<TGConnectingPoint num="5" id="5347" /> +<TGConnectingPoint num="6" id="5348" /> +<TGConnectingPoint num="7" id="5349" /> +<TGConnectingPoint num="8" id="5350" /> +<TGConnectingPoint num="9" id="5351" /> +<TGConnectingPoint num="10" id="5352" /> +<TGConnectingPoint num="11" id="5353" /> +<TGConnectingPoint num="12" id="5354" /> +<TGConnectingPoint num="13" id="5355" /> +<TGConnectingPoint num="14" id="5356" /> +<TGConnectingPoint num="15" id="5357" /> +<TGConnectingPoint num="16" id="5358" /> +<TGConnectingPoint num="17" id="5359" /> +<TGConnectingPoint num="18" id="5360" /> +<TGConnectingPoint num="19" id="5361" /> +<TGConnectingPoint num="20" id="5362" /> +<TGConnectingPoint num="21" id="5363" /> +<TGConnectingPoint num="22" id="5364" /> +<TGConnectingPoint num="23" id="5365" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="INTL_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="5391" > +<cdparam x="376" y="949" /> +<sizeparam width="331" height="135" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_MSS" value="name" /> +<TGConnectingPoint num="0" id="5367" /> +<TGConnectingPoint num="1" id="5368" /> +<TGConnectingPoint num="2" id="5369" /> +<TGConnectingPoint num="3" id="5370" /> +<TGConnectingPoint num="4" id="5371" /> +<TGConnectingPoint num="5" id="5372" /> +<TGConnectingPoint num="6" id="5373" /> +<TGConnectingPoint num="7" id="5374" /> +<TGConnectingPoint num="8" id="5375" /> +<TGConnectingPoint num="9" id="5376" /> +<TGConnectingPoint num="10" id="5377" /> +<TGConnectingPoint num="11" id="5378" /> +<TGConnectingPoint num="12" id="5379" /> +<TGConnectingPoint num="13" id="5380" /> +<TGConnectingPoint num="14" id="5381" /> +<TGConnectingPoint num="15" id="5382" /> +<TGConnectingPoint num="16" id="5383" /> +<TGConnectingPoint num="17" id="5384" /> +<TGConnectingPoint num="18" id="5385" /> +<TGConnectingPoint num="19" id="5386" /> +<TGConnectingPoint num="20" id="5387" /> +<TGConnectingPoint num="21" id="5388" /> +<TGConnectingPoint num="22" id="5389" /> +<TGConnectingPoint num="23" id="5390" /> +<extraparam> +<info stereotype="MEMORY" nodeName="INTL_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="3" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="5425" > +<cdparam x="91" y="938" /> +<sizeparam width="234" height="140" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_PSS" value="name" /> +<TGConnectingPoint num="0" id="5401" /> +<TGConnectingPoint num="1" id="5402" /> +<TGConnectingPoint num="2" id="5403" /> +<TGConnectingPoint num="3" id="5404" /> +<TGConnectingPoint num="4" id="5405" /> +<TGConnectingPoint num="5" id="5406" /> +<TGConnectingPoint num="6" id="5407" /> +<TGConnectingPoint num="7" id="5408" /> +<TGConnectingPoint num="8" id="5409" /> +<TGConnectingPoint num="9" id="5410" /> +<TGConnectingPoint num="10" id="5411" /> +<TGConnectingPoint num="11" id="5412" /> +<TGConnectingPoint num="12" id="5413" /> +<TGConnectingPoint num="13" id="5414" /> +<TGConnectingPoint num="14" id="5415" /> +<TGConnectingPoint num="15" id="5416" /> +<TGConnectingPoint num="16" id="5417" /> +<TGConnectingPoint num="17" id="5418" /> +<TGConnectingPoint num="18" id="5419" /> +<TGConnectingPoint num="19" id="5420" /> +<TGConnectingPoint num="20" id="5421" /> +<TGConnectingPoint num="21" id="5422" /> +<TGConnectingPoint num="22" id="5423" /> +<TGConnectingPoint num="23" id="5424" /> +<extraparam> +<info stereotype="CPURR" nodeName="INTL_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="2" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="5400" > +<father id="5425" num="0" /> +<cdparam x="105" y="993" /> +<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="45" minY="0" maxY="100" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Chip2Octet" /> +<TGConnectingPoint num="0" id="5392" /> +<TGConnectingPoint num="1" id="5393" /> +<TGConnectingPoint num="2" id="5394" /> +<TGConnectingPoint num="3" id="5395" /> +<TGConnectingPoint num="4" id="5396" /> +<TGConnectingPoint num="5" id="5397" /> +<TGConnectingPoint num="6" id="5398" /> +<TGConnectingPoint num="7" id="5399" /> +<extraparam> +<info value="Zigbee_TX::F_Chip2Octet" taskName="F_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="Interleaver operation" fatherComponentMECType="2" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1102" id="5450" > +<cdparam x="231" y="832" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_Bus" value="name" /> +<TGConnectingPoint num="0" id="5426" /> +<TGConnectingPoint num="1" id="5427" /> +<TGConnectingPoint num="2" id="5428" /> +<TGConnectingPoint num="3" id="5429" /> +<TGConnectingPoint num="4" id="5430" /> +<TGConnectingPoint num="5" id="5431" /> +<TGConnectingPoint num="6" id="5432" /> +<TGConnectingPoint num="7" id="5433" /> +<TGConnectingPoint num="8" id="5434" /> +<TGConnectingPoint num="9" id="5435" /> +<TGConnectingPoint num="10" id="5436" /> +<TGConnectingPoint num="11" id="5437" /> +<TGConnectingPoint num="12" id="5438" /> +<TGConnectingPoint num="13" id="5439" /> +<TGConnectingPoint num="14" id="5440" /> +<TGConnectingPoint num="15" id="5441" /> +<TGConnectingPoint num="16" id="5442" /> +<TGConnectingPoint num="17" id="5443" /> +<TGConnectingPoint num="18" id="5444" /> +<TGConnectingPoint num="19" id="5445" /> +<TGConnectingPoint num="20" id="5446" /> +<TGConnectingPoint num="21" id="5447" /> +<TGConnectingPoint num="22" id="5448" /> +<TGConnectingPoint num="23" id="5449" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="INTL_Bus" /> +<attributes byteDataSize="8" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="5475" > +<cdparam x="231" y="447" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_Bus" value="name" /> +<TGConnectingPoint num="0" id="5451" /> +<TGConnectingPoint num="1" id="5452" /> +<TGConnectingPoint num="2" id="5453" /> +<TGConnectingPoint num="3" id="5454" /> +<TGConnectingPoint num="4" id="5455" /> +<TGConnectingPoint num="5" id="5456" /> +<TGConnectingPoint num="6" id="5457" /> +<TGConnectingPoint num="7" id="5458" /> +<TGConnectingPoint num="8" id="5459" /> +<TGConnectingPoint num="9" id="5460" /> +<TGConnectingPoint num="10" id="5461" /> +<TGConnectingPoint num="11" id="5462" /> +<TGConnectingPoint num="12" id="5463" /> +<TGConnectingPoint num="13" id="5464" /> +<TGConnectingPoint num="14" id="5465" /> +<TGConnectingPoint num="15" id="5466" /> +<TGConnectingPoint num="16" id="5467" /> +<TGConnectingPoint num="17" id="5468" /> +<TGConnectingPoint num="18" id="5469" /> +<TGConnectingPoint num="19" id="5470" /> +<TGConnectingPoint num="20" id="5471" /> +<TGConnectingPoint num="21" id="5472" /> +<TGConnectingPoint num="22" id="5473" /> +<TGConnectingPoint num="23" id="5474" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="ADAIF_Bus" /> +<attributes byteDataSize="8" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="5500" > +<cdparam x="1147" y="408" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_DMA" value="name" /> +<TGConnectingPoint num="0" id="5476" /> +<TGConnectingPoint num="1" id="5477" /> +<TGConnectingPoint num="2" id="5478" /> +<TGConnectingPoint num="3" id="5479" /> +<TGConnectingPoint num="4" id="5480" /> +<TGConnectingPoint num="5" id="5481" /> +<TGConnectingPoint num="6" id="5482" /> +<TGConnectingPoint num="7" id="5483" /> +<TGConnectingPoint num="8" id="5484" /> +<TGConnectingPoint num="9" id="5485" /> +<TGConnectingPoint num="10" id="5486" /> +<TGConnectingPoint num="11" id="5487" /> +<TGConnectingPoint num="12" id="5488" /> +<TGConnectingPoint num="13" id="5489" /> +<TGConnectingPoint num="14" id="5490" /> +<TGConnectingPoint num="15" id="5491" /> +<TGConnectingPoint num="16" id="5492" /> +<TGConnectingPoint num="17" id="5493" /> +<TGConnectingPoint num="18" id="5494" /> +<TGConnectingPoint num="19" id="5495" /> +<TGConnectingPoint num="20" id="5496" /> +<TGConnectingPoint num="21" id="5497" /> +<TGConnectingPoint num="22" id="5498" /> +<TGConnectingPoint num="23" id="5499" /> +<extraparam> +<info stereotype="CPURR" nodeName="FEP_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="5525" > +<cdparam x="991" y="187" /> +<sizeparam width="255" height="183" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_MSS" value="name" /> +<TGConnectingPoint num="0" id="5501" /> +<TGConnectingPoint num="1" id="5502" /> +<TGConnectingPoint num="2" id="5503" /> +<TGConnectingPoint num="3" id="5504" /> +<TGConnectingPoint num="4" id="5505" /> +<TGConnectingPoint num="5" id="5506" /> +<TGConnectingPoint num="6" id="5507" /> +<TGConnectingPoint num="7" id="5508" /> +<TGConnectingPoint num="8" id="5509" /> +<TGConnectingPoint num="9" id="5510" /> +<TGConnectingPoint num="10" id="5511" /> +<TGConnectingPoint num="11" id="5512" /> +<TGConnectingPoint num="12" id="5513" /> +<TGConnectingPoint num="13" id="5514" /> +<TGConnectingPoint num="14" id="5515" /> +<TGConnectingPoint num="15" id="5516" /> +<TGConnectingPoint num="16" id="5517" /> +<TGConnectingPoint num="17" id="5518" /> +<TGConnectingPoint num="18" id="5519" /> +<TGConnectingPoint num="19" id="5520" /> +<TGConnectingPoint num="20" id="5521" /> +<TGConnectingPoint num="21" id="5522" /> +<TGConnectingPoint num="22" id="5523" /> +<TGConnectingPoint num="23" id="5524" /> +<extraparam> +<info stereotype="MEMORY" nodeName="FEP_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="0" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="5577" > +<cdparam x="680" y="193" /> +<sizeparam width="238" height="185" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_PSS" value="name" /> +<TGConnectingPoint num="0" id="5553" /> +<TGConnectingPoint num="1" id="5554" /> +<TGConnectingPoint num="2" id="5555" /> +<TGConnectingPoint num="3" id="5556" /> +<TGConnectingPoint num="4" id="5557" /> +<TGConnectingPoint num="5" id="5558" /> +<TGConnectingPoint num="6" id="5559" /> +<TGConnectingPoint num="7" id="5560" /> +<TGConnectingPoint num="8" id="5561" /> +<TGConnectingPoint num="9" id="5562" /> +<TGConnectingPoint num="10" id="5563" /> +<TGConnectingPoint num="11" id="5564" /> +<TGConnectingPoint num="12" id="5565" /> +<TGConnectingPoint num="13" id="5566" /> +<TGConnectingPoint num="14" id="5567" /> +<TGConnectingPoint num="15" id="5568" /> +<TGConnectingPoint num="16" id="5569" /> +<TGConnectingPoint num="17" id="5570" /> +<TGConnectingPoint num="18" id="5571" /> +<TGConnectingPoint num="19" id="5572" /> +<TGConnectingPoint num="20" id="5573" /> +<TGConnectingPoint num="21" id="5574" /> +<TGConnectingPoint num="22" id="5575" /> +<TGConnectingPoint num="23" id="5576" /> +<extraparam> +<info stereotype="CPURR" nodeName="FEP_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="2" execcTime="1" clockRatio="1" MECType="1" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="5534" > +<father id="5577" num="0" /> +<cdparam x="700" y="233" /> +<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="93" minY="0" maxY="145" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_CWL" /> +<TGConnectingPoint num="0" id="5526" /> +<TGConnectingPoint num="1" id="5527" /> +<TGConnectingPoint num="2" id="5528" /> +<TGConnectingPoint num="3" id="5529" /> +<TGConnectingPoint num="4" id="5530" /> +<TGConnectingPoint num="5" id="5531" /> +<TGConnectingPoint num="6" id="5532" /> +<TGConnectingPoint num="7" id="5533" /> +<extraparam> +<info value="Zigbee_TX::X_CWL" taskName="X_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="CWL" fatherComponentMECType="1" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="5543" > +<father id="5577" num="1" /> +<cdparam x="701" y="329" /> +<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="76" minY="0" maxY="145" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_Q" /> +<TGConnectingPoint num="0" id="5535" /> +<TGConnectingPoint num="1" id="5536" /> +<TGConnectingPoint num="2" id="5537" /> +<TGConnectingPoint num="3" id="5538" /> +<TGConnectingPoint num="4" id="5539" /> +<TGConnectingPoint num="5" id="5540" /> +<TGConnectingPoint num="6" id="5541" /> +<TGConnectingPoint num="7" id="5542" /> +<extraparam> +<info value="Zigbee_TX::X_CWP_Q" taskName="X_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="5552" > +<father id="5577" num="2" /> +<cdparam x="732" y="283" /> +<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="82" minY="0" maxY="145" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_I" /> +<TGConnectingPoint num="0" id="5544" /> +<TGConnectingPoint num="1" id="5545" /> +<TGConnectingPoint num="2" id="5546" /> +<TGConnectingPoint num="3" id="5547" /> +<TGConnectingPoint num="4" id="5548" /> +<TGConnectingPoint num="5" id="5549" /> +<TGConnectingPoint num="6" id="5550" /> +<TGConnectingPoint num="7" id="5551" /> +<extraparam> +<info value="Zigbee_TX::X_CWP_I" taskName="X_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1106" id="5602" > +<cdparam x="910" y="531" /> +<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_Bridge" value="name" /> +<TGConnectingPoint num="0" id="5578" /> +<TGConnectingPoint num="1" id="5579" /> +<TGConnectingPoint num="2" id="5580" /> +<TGConnectingPoint num="3" id="5581" /> +<TGConnectingPoint num="4" id="5582" /> +<TGConnectingPoint num="5" id="5583" /> +<TGConnectingPoint num="6" id="5584" /> +<TGConnectingPoint num="7" id="5585" /> +<TGConnectingPoint num="8" id="5586" /> +<TGConnectingPoint num="9" id="5587" /> +<TGConnectingPoint num="10" id="5588" /> +<TGConnectingPoint num="11" id="5589" /> +<TGConnectingPoint num="12" id="5590" /> +<TGConnectingPoint num="13" id="5591" /> +<TGConnectingPoint num="14" id="5592" /> +<TGConnectingPoint num="15" id="5593" /> +<TGConnectingPoint num="16" id="5594" /> +<TGConnectingPoint num="17" id="5595" /> +<TGConnectingPoint num="18" id="5596" /> +<TGConnectingPoint num="19" id="5597" /> +<TGConnectingPoint num="20" id="5598" /> +<TGConnectingPoint num="21" id="5599" /> +<TGConnectingPoint num="22" id="5600" /> +<TGConnectingPoint num="23" id="5601" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="FEP_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="5627" > +<cdparam x="835" y="433" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_Bus" value="name" /> +<TGConnectingPoint num="0" id="5603" /> +<TGConnectingPoint num="1" id="5604" /> +<TGConnectingPoint num="2" id="5605" /> +<TGConnectingPoint num="3" id="5606" /> +<TGConnectingPoint num="4" id="5607" /> +<TGConnectingPoint num="5" id="5608" /> +<TGConnectingPoint num="6" id="5609" /> +<TGConnectingPoint num="7" id="5610" /> +<TGConnectingPoint num="8" id="5611" /> +<TGConnectingPoint num="9" id="5612" /> +<TGConnectingPoint num="10" id="5613" /> +<TGConnectingPoint num="11" id="5614" /> +<TGConnectingPoint num="12" id="5615" /> +<TGConnectingPoint num="13" id="5616" /> +<TGConnectingPoint num="14" id="5617" /> +<TGConnectingPoint num="15" id="5618" /> +<TGConnectingPoint num="16" id="5619" /> +<TGConnectingPoint num="17" id="5620" /> +<TGConnectingPoint num="18" id="5621" /> +<TGConnectingPoint num="19" id="5622" /> +<TGConnectingPoint num="20" id="5623" /> +<TGConnectingPoint num="21" id="5624" /> +<TGConnectingPoint num="22" id="5625" /> +<TGConnectingPoint num="23" id="5626" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="FEP_Bus" /> +<attributes byteDataSize="8" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="5652" > +<cdparam x="1141" y="748" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_DMA" value="name" /> +<TGConnectingPoint num="0" id="5628" /> +<TGConnectingPoint num="1" id="5629" /> +<TGConnectingPoint num="2" id="5630" /> +<TGConnectingPoint num="3" id="5631" /> +<TGConnectingPoint num="4" id="5632" /> +<TGConnectingPoint num="5" id="5633" /> +<TGConnectingPoint num="6" id="5634" /> +<TGConnectingPoint num="7" id="5635" /> +<TGConnectingPoint num="8" id="5636" /> +<TGConnectingPoint num="9" id="5637" /> +<TGConnectingPoint num="10" id="5638" /> +<TGConnectingPoint num="11" id="5639" /> +<TGConnectingPoint num="12" id="5640" /> +<TGConnectingPoint num="13" id="5641" /> +<TGConnectingPoint num="14" id="5642" /> +<TGConnectingPoint num="15" id="5643" /> +<TGConnectingPoint num="16" id="5644" /> +<TGConnectingPoint num="17" id="5645" /> +<TGConnectingPoint num="18" id="5646" /> +<TGConnectingPoint num="19" id="5647" /> +<TGConnectingPoint num="20" id="5648" /> +<TGConnectingPoint num="21" id="5649" /> +<TGConnectingPoint num="22" id="5650" /> +<TGConnectingPoint num="23" id="5651" /> +<extraparam> +<info stereotype="CPURR" nodeName="MAPPER_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="5677" > +<cdparam x="920" y="780" /> +<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_Bridge" value="name" /> +<TGConnectingPoint num="0" id="5653" /> +<TGConnectingPoint num="1" id="5654" /> +<TGConnectingPoint num="2" id="5655" /> +<TGConnectingPoint num="3" id="5656" /> +<TGConnectingPoint num="4" id="5657" /> +<TGConnectingPoint num="5" id="5658" /> +<TGConnectingPoint num="6" id="5659" /> +<TGConnectingPoint num="7" id="5660" /> +<TGConnectingPoint num="8" id="5661" /> +<TGConnectingPoint num="9" id="5662" /> +<TGConnectingPoint num="10" id="5663" /> +<TGConnectingPoint num="11" id="5664" /> +<TGConnectingPoint num="12" id="5665" /> +<TGConnectingPoint num="13" id="5666" /> +<TGConnectingPoint num="14" id="5667" /> +<TGConnectingPoint num="15" id="5668" /> +<TGConnectingPoint num="16" id="5669" /> +<TGConnectingPoint num="17" id="5670" /> +<TGConnectingPoint num="18" id="5671" /> +<TGConnectingPoint num="19" id="5672" /> +<TGConnectingPoint num="20" id="5673" /> +<TGConnectingPoint num="21" id="5674" /> +<TGConnectingPoint num="22" id="5675" /> +<TGConnectingPoint num="23" id="5676" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="MAPPER_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="5702" > +<cdparam x="1043" y="978" /> +<sizeparam width="314" height="125" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_MSS" value="name" /> +<TGConnectingPoint num="0" id="5678" /> +<TGConnectingPoint num="1" id="5679" /> +<TGConnectingPoint num="2" id="5680" /> +<TGConnectingPoint num="3" id="5681" /> +<TGConnectingPoint num="4" id="5682" /> +<TGConnectingPoint num="5" id="5683" /> +<TGConnectingPoint num="6" id="5684" /> +<TGConnectingPoint num="7" id="5685" /> +<TGConnectingPoint num="8" id="5686" /> +<TGConnectingPoint num="9" id="5687" /> +<TGConnectingPoint num="10" id="5688" /> +<TGConnectingPoint num="11" id="5689" /> +<TGConnectingPoint num="12" id="5690" /> +<TGConnectingPoint num="13" id="5691" /> +<TGConnectingPoint num="14" id="5692" /> +<TGConnectingPoint num="15" id="5693" /> +<TGConnectingPoint num="16" id="5694" /> +<TGConnectingPoint num="17" id="5695" /> +<TGConnectingPoint num="18" id="5696" /> +<TGConnectingPoint num="19" id="5697" /> +<TGConnectingPoint num="20" id="5698" /> +<TGConnectingPoint num="21" id="5699" /> +<TGConnectingPoint num="22" id="5700" /> +<TGConnectingPoint num="23" id="5701" /> +<extraparam> +<info stereotype="MEMORY" nodeName="MAPPER_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="5736" > +<cdparam x="734" y="981" /> +<sizeparam width="244" height="158" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_PSS" value="name" /> +<TGConnectingPoint num="0" id="5712" /> +<TGConnectingPoint num="1" id="5713" /> +<TGConnectingPoint num="2" id="5714" /> +<TGConnectingPoint num="3" id="5715" /> +<TGConnectingPoint num="4" id="5716" /> +<TGConnectingPoint num="5" id="5717" /> +<TGConnectingPoint num="6" id="5718" /> +<TGConnectingPoint num="7" id="5719" /> +<TGConnectingPoint num="8" id="5720" /> +<TGConnectingPoint num="9" id="5721" /> +<TGConnectingPoint num="10" id="5722" /> +<TGConnectingPoint num="11" id="5723" /> +<TGConnectingPoint num="12" id="5724" /> +<TGConnectingPoint num="13" id="5725" /> +<TGConnectingPoint num="14" id="5726" /> +<TGConnectingPoint num="15" id="5727" /> +<TGConnectingPoint num="16" id="5728" /> +<TGConnectingPoint num="17" id="5729" /> +<TGConnectingPoint num="18" id="5730" /> +<TGConnectingPoint num="19" id="5731" /> +<TGConnectingPoint num="20" id="5732" /> +<TGConnectingPoint num="21" id="5733" /> +<TGConnectingPoint num="22" id="5734" /> +<TGConnectingPoint num="23" id="5735" /> +<extraparam> +<info stereotype="CPURR" nodeName="MAPPER_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="3" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="5711" > +<father id="5736" num="0" /> +<cdparam x="743" y="1030" /> +<sizeparam width="223" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="21" minY="0" maxY="118" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Symbol2ChipSeq" /> +<TGConnectingPoint num="0" id="5703" /> +<TGConnectingPoint num="1" id="5704" /> +<TGConnectingPoint num="2" id="5705" /> +<TGConnectingPoint num="3" id="5706" /> +<TGConnectingPoint num="4" id="5707" /> +<TGConnectingPoint num="5" id="5708" /> +<TGConnectingPoint num="6" id="5709" /> +<TGConnectingPoint num="7" id="5710" /> +<extraparam> +<info value="Zigbee_TX::X_Symbol2ChipSeq" taskName="X_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="Mapper operation" fatherComponentMECType="3" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1102" id="5761" > +<cdparam x="845" y="875" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_Bus" value="name" /> +<TGConnectingPoint num="0" id="5737" /> +<TGConnectingPoint num="1" id="5738" /> +<TGConnectingPoint num="2" id="5739" /> +<TGConnectingPoint num="3" id="5740" /> +<TGConnectingPoint num="4" id="5741" /> +<TGConnectingPoint num="5" id="5742" /> +<TGConnectingPoint num="6" id="5743" /> +<TGConnectingPoint num="7" id="5744" /> +<TGConnectingPoint num="8" id="5745" /> +<TGConnectingPoint num="9" id="5746" /> +<TGConnectingPoint num="10" id="5747" /> +<TGConnectingPoint num="11" id="5748" /> +<TGConnectingPoint num="12" id="5749" /> +<TGConnectingPoint num="13" id="5750" /> +<TGConnectingPoint num="14" id="5751" /> +<TGConnectingPoint num="15" id="5752" /> +<TGConnectingPoint num="16" id="5753" /> +<TGConnectingPoint num="17" id="5754" /> +<TGConnectingPoint num="18" id="5755" /> +<TGConnectingPoint num="19" id="5756" /> +<TGConnectingPoint num="20" id="5757" /> +<TGConnectingPoint num="21" id="5758" /> +<TGConnectingPoint num="22" id="5759" /> +<TGConnectingPoint num="23" id="5760" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="MAPPER_Bus" /> +<attributes byteDataSize="8" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1108" id="5779" > +<cdparam x="106" y="1266" /> +<sizeparam width="419" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_Symbol2ChipSeq_Chips2Octet" value="CP0" /> +<TGConnectingPoint num="0" id="5771" /> +<TGConnectingPoint num="1" id="5772" /> +<TGConnectingPoint num="2" id="5773" /> +<TGConnectingPoint num="3" id="5774" /> +<TGConnectingPoint num="4" id="5775" /> +<TGConnectingPoint num="5" id="5776" /> +<TGConnectingPoint num="6" id="5777" /> +<TGConnectingPoint num="7" id="5778" /> +<extraparam> +<info stereotype="CP" nodeName="CP_Symbol2ChipSeq_Chips2Octet" cpMEC="Single DMA" transferType1="0" transferType2="0" /> +<attributes reference="DMA_transfer" /> +<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" /> +<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="MAPPER_DMA" /> +<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="MAPPER_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="INTL_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="MAPPER_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="Crossbar, INTL_Bridge, INTL_Bus, MAPPER_Bridge, MAPPER_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<mappedAttributes type="int" name="counter" value="1" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="5770" > +<father id="5779" num="0" /> +<cdparam x="295" y="1302" /> +<sizeparam width="212" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="207" minY="0" maxY="45" /> +<infoparam name="TGComponent" value="Zigbee_TX::chip2octet_ch_in" /> +<TGConnectingPoint num="0" id="5762" /> +<TGConnectingPoint num="1" id="5763" /> +<TGConnectingPoint num="2" id="5764" /> +<TGConnectingPoint num="3" id="5765" /> +<TGConnectingPoint num="4" id="5766" /> +<TGConnectingPoint num="5" id="5767" /> +<TGConnectingPoint num="6" id="5768" /> +<TGConnectingPoint num="7" id="5769" /> +<extraparam> +<info value="Zigbee_TX::chip2octet_ch_in" portName="chip2octet_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="INTL_MSS" bufferType="3" packedBinaryIn="" width="" bitInOffset="" inputOffset="" packedBinaryOut="" bitOutOffset="" outputOffset="" offsetPerm="" lengthPerm="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1108" id="5797" > +<cdparam x="105" y="1396" /> +<sizeparam width="405" height="88" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_Chip2Octet_CWL" value="CP0" /> +<TGConnectingPoint num="0" id="5789" /> +<TGConnectingPoint num="1" id="5790" /> +<TGConnectingPoint num="2" id="5791" /> +<TGConnectingPoint num="3" id="5792" /> +<TGConnectingPoint num="4" id="5793" /> +<TGConnectingPoint num="5" id="5794" /> +<TGConnectingPoint num="6" id="5795" /> +<TGConnectingPoint num="7" id="5796" /> +<extraparam> +<info stereotype="CP" nodeName="CP_Chip2Octet_CWL" cpMEC="Single DMA" transferType1="0" transferType2="0" /> +<attributes reference="DMA_transfer" /> +<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" /> +<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="INTL_DMA" /> +<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="INTL_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="FEP_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="INTL_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappedAttributes type="int" name="counter" value="1" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="5788" > +<father id="5797" num="0" /> +<cdparam x="327" y="1437" /> +<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="241" minY="0" maxY="48" /> +<infoparam name="TGComponent" value="Zigbee_TX::cwl_ch_in" /> +<TGConnectingPoint num="0" id="5780" /> +<TGConnectingPoint num="1" id="5781" /> +<TGConnectingPoint num="2" id="5782" /> +<TGConnectingPoint num="3" id="5783" /> +<TGConnectingPoint num="4" id="5784" /> +<TGConnectingPoint num="5" id="5785" /> +<TGConnectingPoint num="6" id="5786" /> +<TGConnectingPoint num="7" id="5787" /> +<extraparam> +<info value="Zigbee_TX::cwl_ch_in" portName="cwl_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="FEP_MSS" bufferType="0" baseAddress="0x2" numSamples="1" bank="0" dataType="int8" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1108" id="5815" > +<cdparam x="626" y="1227" /> +<sizeparam width="295" height="145" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_sink" value="CP0" /> +<TGConnectingPoint num="0" id="5807" /> +<TGConnectingPoint num="1" id="5808" /> +<TGConnectingPoint num="2" id="5809" /> +<TGConnectingPoint num="3" id="5810" /> +<TGConnectingPoint num="4" id="5811" /> +<TGConnectingPoint num="5" id="5812" /> +<TGConnectingPoint num="6" id="5813" /> +<TGConnectingPoint num="7" id="5814" /> +<extraparam> +<info stereotype="CP" nodeName="CP_sink" cpMEC="Double DMA" transferType1="0" transferType2="0" /> +<attributes reference="Double_DMA_transfer" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_2" architectureUnit="MainCPU" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="FEP_DMA" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_2" architectureUnit="FEP_DMA" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="FEP_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_2" architectureUnit="FEP_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_2" architectureUnit="ADAIF_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="ADAIF_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_5" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_6" architectureUnit="FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_7" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_8" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappedAttributes type="int" name="counter1" value="2" /> +<mappedAttributes type="int" name="counter2" value="2" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="5806" > +<father id="5815" num="0" /> +<cdparam x="700" y="1290" /> +<sizeparam width="170" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="125" minY="0" maxY="105" /> +<infoparam name="TGComponent" value="Zigbee_TX::sink_ch_in" /> +<TGConnectingPoint num="0" id="5798" /> +<TGConnectingPoint num="1" id="5799" /> +<TGConnectingPoint num="2" id="5800" /> +<TGConnectingPoint num="3" id="5801" /> +<TGConnectingPoint num="4" id="5802" /> +<TGConnectingPoint num="5" id="5803" /> +<TGConnectingPoint num="6" id="5804" /> +<TGConnectingPoint num="7" id="5805" /> +<extraparam> +<info value="Zigbee_TX::sink_ch_in" portName="sink_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="ADAIF_MSS" bufferType="2" numSamples="1" baseAddress="0x2" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1108" id="5833" > +<cdparam x="106" y="1143" /> +<sizeparam width="421" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_Source_to_Bits2Symbol" value="CP0" /> +<TGConnectingPoint num="0" id="5825" /> +<TGConnectingPoint num="1" id="5826" /> +<TGConnectingPoint num="2" id="5827" /> +<TGConnectingPoint num="3" id="5828" /> +<TGConnectingPoint num="4" id="5829" /> +<TGConnectingPoint num="5" id="5830" /> +<TGConnectingPoint num="6" id="5831" /> +<TGConnectingPoint num="7" id="5832" /> +<extraparam> +<info stereotype="CP" nodeName="CP_Source_to_Bits2Symbol" cpMEC="Memory Copy" transferType1="0" transferType2="0" /> +<attributes reference="CP_Memory_Copy" /> +<mappingInfo CPname="CP_Memory_Copy" instanceName="CPU_Controller" architectureUnit="MainCPU" /> +<mappingInfo CPname="CP_Memory_Copy" instanceName="Dst_Storage_Instance" architectureUnit="MAPPER_MSS" /> +<mappingInfo CPname="CP_Memory_Copy" instanceName="Src_Storage_Instance" architectureUnit="MainMemory" /> +<mappingInfo CPname="CP_Memory_Copy" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<mappingInfo CPname="CP_Memory_Copy" instanceName="Transfer_Instance2" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<mappedAttributes type="int" name="counter" value="8" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="5824" > +<father id="5833" num="0" /> +<cdparam x="157" y="1179" /> +<sizeparam width="247" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="174" minY="0" maxY="45" /> +<infoparam name="TGComponent" value="Zigbee_TX::symbol2ChipSeq_ch_in" /> +<TGConnectingPoint num="0" id="5816" /> +<TGConnectingPoint num="1" id="5817" /> +<TGConnectingPoint num="2" id="5818" /> +<TGConnectingPoint num="3" id="5819" /> +<TGConnectingPoint num="4" id="5820" /> +<TGConnectingPoint num="5" id="5821" /> +<TGConnectingPoint num="6" id="5822" /> +<TGConnectingPoint num="7" id="5823" /> +<extraparam> +<info value="Zigbee_TX::symbol2ChipSeq_ch_in" portName="symbol2ChipSeq_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="MAPPER_MSS" bufferType="1" numSamplesDataIn="1" baseAddressDataIn="0x2" bitsPerSymbolDataIn="3" symmetricalValueDataIn="OFF" baseAddressDataOut="0x4" baseAddressLUT="0x5" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="125" id="5834" > +<cdparam x="1367" y="660" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1367" y="660" id="5295" /> +<P2 x="1199" y="643" id="5321" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5835" > +<cdparam x="1147" y="508" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1147" y="508" id="5481" /> +<P2 x="1199" y="618" id="5319" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5836" > +<cdparam x="1298" y="875" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1216" y="748" id="5629" /> +<P2 x="1199" y="668" id="5324" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5837" > +<cdparam x="1019" y="805" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="970" y="780" id="5654" /> +<P2 x="987" y="668" id="5332" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5838" > +<cdparam x="1004" y="531" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="960" y="566" id="5584" /> +<P2 x="987" y="618" id="5326" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5839" > +<cdparam x="1185" y="660" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1467" y="660" id="5296" /> +<P2 x="1527" y="660" id="5270" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5840" > +<cdparam x="356" y="788" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="788" id="5348" /> +<P2 x="356" y="832" id="5427" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5841" > +<cdparam x="554" y="806" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="560" y="807" id="5011" /> +<P2 x="565" y="668" id="5331" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5842" > +<cdparam x="559" y="863" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="560" y="857" id="5014" /> +<P2 x="481" y="857" id="5430" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5843" > +<cdparam x="586" y="970" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="541" y="949" id="5368" /> +<P2 x="418" y="882" id="5441" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5844" > +<cdparam x="165" y="927" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="208" y="938" id="5402" /> +<P2 x="293" y="882" id="5440" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5845" > +<cdparam x="355" y="576" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="580" id="5126" /> +<P2 x="354" y="618" id="5317" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5846" > +<cdparam x="355" y="541" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="545" id="5121" /> +<P2 x="356" y="497" id="5457" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5847" > +<cdparam x="543" y="522" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="543" y="522" id="5041" /> +<P2 x="565" y="618" id="5325" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5848" > +<cdparam x="536" y="475" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="543" y="472" id="5039" /> +<P2 x="481" y="472" id="5455" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5849" > +<cdparam x="549" y="337" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="477" y="377" id="5067" /> +<P2 x="418" y="447" id="5460" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5850" > +<cdparam x="155" y="323" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="216" y="382" id="5101" /> +<P2 x="293" y="447" id="5459" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5851" > +<cdparam x="357" y="778" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="737" id="5343" /> +<P2 x="354" y="668" id="5322" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5852" > +<cdparam x="1654" y="758" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1652" y="737" id="5146" /> +<P2 x="1652" y="685" id="5273" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5853" > +<cdparam x="1651" y="573" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1652" y="586" id="5248" /> +<P2 x="1652" y="635" id="5268" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5854" > +<cdparam x="959" y="527" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="960" y="531" id="5579" /> +<P2 x="960" y="483" id="5609" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5855" > +<cdparam x="1140" y="461" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1147" y="458" id="5479" /> +<P2 x="1085" y="458" id="5607" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5856" > +<cdparam x="1189" y="374" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1118" y="370" id="5507" /> +<P2 x="1022" y="433" id="5612" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5857" > +<cdparam x="795" y="360" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="799" y="378" id="5559" /> +<P2 x="897" y="433" id="5611" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5858" > +<cdparam x="970" y="831" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="970" y="831" id="5659" /> +<P2 x="970" y="875" id="5738" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5859" > +<cdparam x="1173" y="906" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1141" y="798" id="5631" /> +<P2 x="1095" y="900" id="5741" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5860" > +<cdparam x="1200" y="1013" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1200" y="978" id="5679" /> +<P2 x="1032" y="925" id="5752" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="5861" > +<cdparam x="779" y="970" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="856" y="981" id="5713" /> +<P2 x="907" y="925" id="5751" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> + +</TMLArchiDiagramPanel> + +</Modeling> + + + + +<Modeling type="TML Architecture" nameTab="Mapping_1" > +<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1900" minY="10" maxY="1900" attributes="0" masterClockFrequency="200" > +<COMPONENT type="1100" id="5886" > +<cdparam x="560" y="807" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_DMA" value="name" /> +<TGConnectingPoint num="0" id="5862" /> +<TGConnectingPoint num="1" id="5863" /> +<TGConnectingPoint num="2" id="5864" /> +<TGConnectingPoint num="3" id="5865" /> +<TGConnectingPoint num="4" id="5866" /> +<TGConnectingPoint num="5" id="5867" /> +<TGConnectingPoint num="6" id="5868" /> +<TGConnectingPoint num="7" id="5869" /> +<TGConnectingPoint num="8" id="5870" /> +<TGConnectingPoint num="9" id="5871" /> +<TGConnectingPoint num="10" id="5872" /> +<TGConnectingPoint num="11" id="5873" /> +<TGConnectingPoint num="12" id="5874" /> +<TGConnectingPoint num="13" id="5875" /> +<TGConnectingPoint num="14" id="5876" /> +<TGConnectingPoint num="15" id="5877" /> +<TGConnectingPoint num="16" id="5878" /> +<TGConnectingPoint num="17" id="5879" /> +<TGConnectingPoint num="18" id="5880" /> +<TGConnectingPoint num="19" id="5881" /> +<TGConnectingPoint num="20" id="5882" /> +<TGConnectingPoint num="21" id="5883" /> +<TGConnectingPoint num="22" id="5884" /> +<TGConnectingPoint num="23" id="5885" /> +<extraparam> +<info stereotype="CPURR" nodeName="INTL_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="5911" > +<cdparam x="543" y="422" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_DMA" value="name" /> +<TGConnectingPoint num="0" id="5887" /> +<TGConnectingPoint num="1" id="5888" /> +<TGConnectingPoint num="2" id="5889" /> +<TGConnectingPoint num="3" id="5890" /> +<TGConnectingPoint num="4" id="5891" /> +<TGConnectingPoint num="5" id="5892" /> +<TGConnectingPoint num="6" id="5893" /> +<TGConnectingPoint num="7" id="5894" /> +<TGConnectingPoint num="8" id="5895" /> +<TGConnectingPoint num="9" id="5896" /> +<TGConnectingPoint num="10" id="5897" /> +<TGConnectingPoint num="11" id="5898" /> +<TGConnectingPoint num="12" id="5899" /> +<TGConnectingPoint num="13" id="5900" /> +<TGConnectingPoint num="14" id="5901" /> +<TGConnectingPoint num="15" id="5902" /> +<TGConnectingPoint num="16" id="5903" /> +<TGConnectingPoint num="17" id="5904" /> +<TGConnectingPoint num="18" id="5905" /> +<TGConnectingPoint num="19" id="5906" /> +<TGConnectingPoint num="20" id="5907" /> +<TGConnectingPoint num="21" id="5908" /> +<TGConnectingPoint num="22" id="5909" /> +<TGConnectingPoint num="23" id="5910" /> +<extraparam> +<info stereotype="CPURR" nodeName="ADAIF_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="5936" > +<cdparam x="354" y="243" /> +<sizeparam width="200" height="152" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_MSS" value="name" /> +<TGConnectingPoint num="0" id="5912" /> +<TGConnectingPoint num="1" id="5913" /> +<TGConnectingPoint num="2" id="5914" /> +<TGConnectingPoint num="3" id="5915" /> +<TGConnectingPoint num="4" id="5916" /> +<TGConnectingPoint num="5" id="5917" /> +<TGConnectingPoint num="6" id="5918" /> +<TGConnectingPoint num="7" id="5919" /> +<TGConnectingPoint num="8" id="5920" /> +<TGConnectingPoint num="9" id="5921" /> +<TGConnectingPoint num="10" id="5922" /> +<TGConnectingPoint num="11" id="5923" /> +<TGConnectingPoint num="12" id="5924" /> +<TGConnectingPoint num="13" id="5925" /> +<TGConnectingPoint num="14" id="5926" /> +<TGConnectingPoint num="15" id="5927" /> +<TGConnectingPoint num="16" id="5928" /> +<TGConnectingPoint num="17" id="5929" /> +<TGConnectingPoint num="18" id="5930" /> +<TGConnectingPoint num="19" id="5931" /> +<TGConnectingPoint num="20" id="5932" /> +<TGConnectingPoint num="21" id="5933" /> +<TGConnectingPoint num="22" id="5934" /> +<TGConnectingPoint num="23" id="5935" /> +<extraparam> +<info stereotype="MEMORY" nodeName="ADAIF_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="2" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="5970" > +<cdparam x="29" y="215" /> +<sizeparam width="252" height="181" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_PSS" value="name" /> +<TGConnectingPoint num="0" id="5946" /> +<TGConnectingPoint num="1" id="5947" /> +<TGConnectingPoint num="2" id="5948" /> +<TGConnectingPoint num="3" id="5949" /> +<TGConnectingPoint num="4" id="5950" /> +<TGConnectingPoint num="5" id="5951" /> +<TGConnectingPoint num="6" id="5952" /> +<TGConnectingPoint num="7" id="5953" /> +<TGConnectingPoint num="8" id="5954" /> +<TGConnectingPoint num="9" id="5955" /> +<TGConnectingPoint num="10" id="5956" /> +<TGConnectingPoint num="11" id="5957" /> +<TGConnectingPoint num="12" id="5958" /> +<TGConnectingPoint num="13" id="5959" /> +<TGConnectingPoint num="14" id="5960" /> +<TGConnectingPoint num="15" id="5961" /> +<TGConnectingPoint num="16" id="5962" /> +<TGConnectingPoint num="17" id="5963" /> +<TGConnectingPoint num="18" id="5964" /> +<TGConnectingPoint num="19" id="5965" /> +<TGConnectingPoint num="20" id="5966" /> +<TGConnectingPoint num="21" id="5967" /> +<TGConnectingPoint num="22" id="5968" /> +<TGConnectingPoint num="23" id="5969" /> +<extraparam> +<info stereotype="CPURR" nodeName="ADAIF_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="4" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="5945" > +<father id="5970" num="0" /> +<cdparam x="48" y="315" /> +<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="106" minY="0" maxY="141" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Sink" /> +<TGConnectingPoint num="0" id="5937" /> +<TGConnectingPoint num="1" id="5938" /> +<TGConnectingPoint num="2" id="5939" /> +<TGConnectingPoint num="3" id="5940" /> +<TGConnectingPoint num="4" id="5941" /> +<TGConnectingPoint num="5" id="5942" /> +<TGConnectingPoint num="6" id="5943" /> +<TGConnectingPoint num="7" id="5944" /> +<extraparam> +<info value="Zigbee_TX::X_Sink" taskName="X_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="Adaif operation" fatherComponentMECType="4" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1106" id="5995" > +<cdparam x="306" y="545" /> +<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_Bridge" value="name" /> +<TGConnectingPoint num="0" id="5971" /> +<TGConnectingPoint num="1" id="5972" /> +<TGConnectingPoint num="2" id="5973" /> +<TGConnectingPoint num="3" id="5974" /> +<TGConnectingPoint num="4" id="5975" /> +<TGConnectingPoint num="5" id="5976" /> +<TGConnectingPoint num="6" id="5977" /> +<TGConnectingPoint num="7" id="5978" /> +<TGConnectingPoint num="8" id="5979" /> +<TGConnectingPoint num="9" id="5980" /> +<TGConnectingPoint num="10" id="5981" /> +<TGConnectingPoint num="11" id="5982" /> +<TGConnectingPoint num="12" id="5983" /> +<TGConnectingPoint num="13" id="5984" /> +<TGConnectingPoint num="14" id="5985" /> +<TGConnectingPoint num="15" id="5986" /> +<TGConnectingPoint num="16" id="5987" /> +<TGConnectingPoint num="17" id="5988" /> +<TGConnectingPoint num="18" id="5989" /> +<TGConnectingPoint num="19" id="5990" /> +<TGConnectingPoint num="20" id="5991" /> +<TGConnectingPoint num="21" id="5992" /> +<TGConnectingPoint num="22" id="5993" /> +<TGConnectingPoint num="23" id="5994" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="ADAIF_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="6020" > +<cdparam x="1544" y="737" /> +<sizeparam width="216" height="140" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainMemory" value="name" /> +<TGConnectingPoint num="0" id="5996" /> +<TGConnectingPoint num="1" id="5997" /> +<TGConnectingPoint num="2" id="5998" /> +<TGConnectingPoint num="3" id="5999" /> +<TGConnectingPoint num="4" id="6000" /> +<TGConnectingPoint num="5" id="6001" /> +<TGConnectingPoint num="6" id="6002" /> +<TGConnectingPoint num="7" id="6003" /> +<TGConnectingPoint num="8" id="6004" /> +<TGConnectingPoint num="9" id="6005" /> +<TGConnectingPoint num="10" id="6006" /> +<TGConnectingPoint num="11" id="6007" /> +<TGConnectingPoint num="12" id="6008" /> +<TGConnectingPoint num="13" id="6009" /> +<TGConnectingPoint num="14" id="6010" /> +<TGConnectingPoint num="15" id="6011" /> +<TGConnectingPoint num="16" id="6012" /> +<TGConnectingPoint num="17" id="6013" /> +<TGConnectingPoint num="18" id="6014" /> +<TGConnectingPoint num="19" id="6015" /> +<TGConnectingPoint num="20" id="6016" /> +<TGConnectingPoint num="21" id="6017" /> +<TGConnectingPoint num="22" id="6018" /> +<TGConnectingPoint num="23" id="6019" /> +<extraparam> +<info stereotype="MEMORY" nodeName="MainMemory" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="4" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="6117" > +<cdparam x="1444" y="293" /> +<sizeparam width="417" height="293" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainCPU" value="name" /> +<TGConnectingPoint num="0" id="6093" /> +<TGConnectingPoint num="1" id="6094" /> +<TGConnectingPoint num="2" id="6095" /> +<TGConnectingPoint num="3" id="6096" /> +<TGConnectingPoint num="4" id="6097" /> +<TGConnectingPoint num="5" id="6098" /> +<TGConnectingPoint num="6" id="6099" /> +<TGConnectingPoint num="7" id="6100" /> +<TGConnectingPoint num="8" id="6101" /> +<TGConnectingPoint num="9" id="6102" /> +<TGConnectingPoint num="10" id="6103" /> +<TGConnectingPoint num="11" id="6104" /> +<TGConnectingPoint num="12" id="6105" /> +<TGConnectingPoint num="13" id="6106" /> +<TGConnectingPoint num="14" id="6107" /> +<TGConnectingPoint num="15" id="6108" /> +<TGConnectingPoint num="16" id="6109" /> +<TGConnectingPoint num="17" id="6110" /> +<TGConnectingPoint num="18" id="6111" /> +<TGConnectingPoint num="19" id="6112" /> +<TGConnectingPoint num="20" id="6113" /> +<TGConnectingPoint num="21" id="6114" /> +<TGConnectingPoint num="22" id="6115" /> +<TGConnectingPoint num="23" id="6116" /> +<extraparam> +<info stereotype="CPURR" nodeName="MainCPU" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="6029" > +<father id="6117" num="0" /> +<cdparam x="1465" y="339" /> +<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Source" /> +<TGConnectingPoint num="0" id="6021" /> +<TGConnectingPoint num="1" id="6022" /> +<TGConnectingPoint num="2" id="6023" /> +<TGConnectingPoint num="3" id="6024" /> +<TGConnectingPoint num="4" id="6025" /> +<TGConnectingPoint num="5" id="6026" /> +<TGConnectingPoint num="6" id="6027" /> +<TGConnectingPoint num="7" id="6028" /> +<extraparam> +<info value="Zigbee_TX::F_Source" taskName="F_Source" referenceTaskName="Zigbee_TX" priority="0" operation="F_Source" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6038" > +<father id="6117" num="1" /> +<cdparam x="1466" y="395" /> +<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Source" /> +<TGConnectingPoint num="0" id="6030" /> +<TGConnectingPoint num="1" id="6031" /> +<TGConnectingPoint num="2" id="6032" /> +<TGConnectingPoint num="3" id="6033" /> +<TGConnectingPoint num="4" id="6034" /> +<TGConnectingPoint num="5" id="6035" /> +<TGConnectingPoint num="6" id="6036" /> +<TGConnectingPoint num="7" id="6037" /> +<extraparam> +<info value="Zigbee_TX::X_Source" taskName="X_Source" referenceTaskName="Zigbee_TX" priority="0" operation="X_Source" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6047" > +<father id="6117" num="2" /> +<cdparam x="1466" y="456" /> +<sizeparam width="223" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="194" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Symbol2ChipSeq" /> +<TGConnectingPoint num="0" id="6039" /> +<TGConnectingPoint num="1" id="6040" /> +<TGConnectingPoint num="2" id="6041" /> +<TGConnectingPoint num="3" id="6042" /> +<TGConnectingPoint num="4" id="6043" /> +<TGConnectingPoint num="5" id="6044" /> +<TGConnectingPoint num="6" id="6045" /> +<TGConnectingPoint num="7" id="6046" /> +<extraparam> +<info value="Zigbee_TX::F_Symbol2ChipSeq" taskName="F_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="F_Symbol2ChipSeq" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6056" > +<father id="6117" num="3" /> +<cdparam x="1466" y="518" /> +<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="228" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Chip2Octet" /> +<TGConnectingPoint num="0" id="6048" /> +<TGConnectingPoint num="1" id="6049" /> +<TGConnectingPoint num="2" id="6050" /> +<TGConnectingPoint num="3" id="6051" /> +<TGConnectingPoint num="4" id="6052" /> +<TGConnectingPoint num="5" id="6053" /> +<TGConnectingPoint num="6" id="6054" /> +<TGConnectingPoint num="7" id="6055" /> +<extraparam> +<info value="Zigbee_TX::F_Chip2Octet" taskName="F_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="F_Chip2Octet" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6065" > +<father id="6117" num="4" /> +<cdparam x="1688" y="405" /> +<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="271" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Sink" /> +<TGConnectingPoint num="0" id="6057" /> +<TGConnectingPoint num="1" id="6058" /> +<TGConnectingPoint num="2" id="6059" /> +<TGConnectingPoint num="3" id="6060" /> +<TGConnectingPoint num="4" id="6061" /> +<TGConnectingPoint num="5" id="6062" /> +<TGConnectingPoint num="6" id="6063" /> +<TGConnectingPoint num="7" id="6064" /> +<extraparam> +<info value="Zigbee_TX::F_Sink" taskName="F_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="F_Sink" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6074" > +<father id="6117" num="5" /> +<cdparam x="1691" y="345" /> +<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="272" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_CWL" /> +<TGConnectingPoint num="0" id="6066" /> +<TGConnectingPoint num="1" id="6067" /> +<TGConnectingPoint num="2" id="6068" /> +<TGConnectingPoint num="3" id="6069" /> +<TGConnectingPoint num="4" id="6070" /> +<TGConnectingPoint num="5" id="6071" /> +<TGConnectingPoint num="6" id="6072" /> +<TGConnectingPoint num="7" id="6073" /> +<extraparam> +<info value="Zigbee_TX::F_CWL" taskName="F_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWL" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6083" > +<father id="6117" num="6" /> +<cdparam x="1696" y="456" /> +<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="255" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_Q" /> +<TGConnectingPoint num="0" id="6075" /> +<TGConnectingPoint num="1" id="6076" /> +<TGConnectingPoint num="2" id="6077" /> +<TGConnectingPoint num="3" id="6078" /> +<TGConnectingPoint num="4" id="6079" /> +<TGConnectingPoint num="5" id="6080" /> +<TGConnectingPoint num="6" id="6081" /> +<TGConnectingPoint num="7" id="6082" /> +<extraparam> +<info value="Zigbee_TX::F_CWP_Q" taskName="F_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_Q" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6092" > +<father id="6117" num="7" /> +<cdparam x="1686" y="522" /> +<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="261" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_I" /> +<TGConnectingPoint num="0" id="6084" /> +<TGConnectingPoint num="1" id="6085" /> +<TGConnectingPoint num="2" id="6086" /> +<TGConnectingPoint num="3" id="6087" /> +<TGConnectingPoint num="4" id="6088" /> +<TGConnectingPoint num="5" id="6089" /> +<TGConnectingPoint num="6" id="6090" /> +<TGConnectingPoint num="7" id="6091" /> +<extraparam> +<info value="Zigbee_TX::F_CWP_I" taskName="F_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_I" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1102" id="6142" > +<cdparam x="1527" y="635" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainBus" value="name" /> +<TGConnectingPoint num="0" id="6118" /> +<TGConnectingPoint num="1" id="6119" /> +<TGConnectingPoint num="2" id="6120" /> +<TGConnectingPoint num="3" id="6121" /> +<TGConnectingPoint num="4" id="6122" /> +<TGConnectingPoint num="5" id="6123" /> +<TGConnectingPoint num="6" id="6124" /> +<TGConnectingPoint num="7" id="6125" /> +<TGConnectingPoint num="8" id="6126" /> +<TGConnectingPoint num="9" id="6127" /> +<TGConnectingPoint num="10" id="6128" /> +<TGConnectingPoint num="11" id="6129" /> +<TGConnectingPoint num="12" id="6130" /> +<TGConnectingPoint num="13" id="6131" /> +<TGConnectingPoint num="14" id="6132" /> +<TGConnectingPoint num="15" id="6133" /> +<TGConnectingPoint num="16" id="6134" /> +<TGConnectingPoint num="17" id="6135" /> +<TGConnectingPoint num="18" id="6136" /> +<TGConnectingPoint num="19" id="6137" /> +<TGConnectingPoint num="20" id="6138" /> +<TGConnectingPoint num="21" id="6139" /> +<TGConnectingPoint num="22" id="6140" /> +<TGConnectingPoint num="23" id="6141" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="MainBus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="6167" > +<cdparam x="1367" y="610" /> +<sizeparam width="100" height="100" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainBridge" value="name" /> +<TGConnectingPoint num="0" id="6143" /> +<TGConnectingPoint num="1" id="6144" /> +<TGConnectingPoint num="2" id="6145" /> +<TGConnectingPoint num="3" id="6146" /> +<TGConnectingPoint num="4" id="6147" /> +<TGConnectingPoint num="5" id="6148" /> +<TGConnectingPoint num="6" id="6149" /> +<TGConnectingPoint num="7" id="6150" /> +<TGConnectingPoint num="8" id="6151" /> +<TGConnectingPoint num="9" id="6152" /> +<TGConnectingPoint num="10" id="6153" /> +<TGConnectingPoint num="11" id="6154" /> +<TGConnectingPoint num="12" id="6155" /> +<TGConnectingPoint num="13" id="6156" /> +<TGConnectingPoint num="14" id="6157" /> +<TGConnectingPoint num="15" id="6158" /> +<TGConnectingPoint num="16" id="6159" /> +<TGConnectingPoint num="17" id="6160" /> +<TGConnectingPoint num="18" id="6161" /> +<TGConnectingPoint num="19" id="6162" /> +<TGConnectingPoint num="20" id="6163" /> +<TGConnectingPoint num="21" id="6164" /> +<TGConnectingPoint num="22" id="6165" /> +<TGConnectingPoint num="23" id="6166" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="MainBridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="6192" > +<cdparam x="231" y="635" /> +<sizeparam width="845" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="Crossbar" value="name" /> +<TGConnectingPoint num="0" id="6168" /> +<TGConnectingPoint num="1" id="6169" /> +<TGConnectingPoint num="2" id="6170" /> +<TGConnectingPoint num="3" id="6171" /> +<TGConnectingPoint num="4" id="6172" /> +<TGConnectingPoint num="5" id="6173" /> +<TGConnectingPoint num="6" id="6174" /> +<TGConnectingPoint num="7" id="6175" /> +<TGConnectingPoint num="8" id="6176" /> +<TGConnectingPoint num="9" id="6177" /> +<TGConnectingPoint num="10" id="6178" /> +<TGConnectingPoint num="11" id="6179" /> +<TGConnectingPoint num="12" id="6180" /> +<TGConnectingPoint num="13" id="6181" /> +<TGConnectingPoint num="14" id="6182" /> +<TGConnectingPoint num="15" id="6183" /> +<TGConnectingPoint num="16" id="6184" /> +<TGConnectingPoint num="17" id="6185" /> +<TGConnectingPoint num="18" id="6186" /> +<TGConnectingPoint num="19" id="6187" /> +<TGConnectingPoint num="20" id="6188" /> +<TGConnectingPoint num="21" id="6189" /> +<TGConnectingPoint num="22" id="6190" /> +<TGConnectingPoint num="23" id="6191" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="Crossbar" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="6217" > +<cdparam x="306" y="737" /> +<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_Bridge" value="name" /> +<TGConnectingPoint num="0" id="6193" /> +<TGConnectingPoint num="1" id="6194" /> +<TGConnectingPoint num="2" id="6195" /> +<TGConnectingPoint num="3" id="6196" /> +<TGConnectingPoint num="4" id="6197" /> +<TGConnectingPoint num="5" id="6198" /> +<TGConnectingPoint num="6" id="6199" /> +<TGConnectingPoint num="7" id="6200" /> +<TGConnectingPoint num="8" id="6201" /> +<TGConnectingPoint num="9" id="6202" /> +<TGConnectingPoint num="10" id="6203" /> +<TGConnectingPoint num="11" id="6204" /> +<TGConnectingPoint num="12" id="6205" /> +<TGConnectingPoint num="13" id="6206" /> +<TGConnectingPoint num="14" id="6207" /> +<TGConnectingPoint num="15" id="6208" /> +<TGConnectingPoint num="16" id="6209" /> +<TGConnectingPoint num="17" id="6210" /> +<TGConnectingPoint num="18" id="6211" /> +<TGConnectingPoint num="19" id="6212" /> +<TGConnectingPoint num="20" id="6213" /> +<TGConnectingPoint num="21" id="6214" /> +<TGConnectingPoint num="22" id="6215" /> +<TGConnectingPoint num="23" id="6216" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="INTL_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="6242" > +<cdparam x="376" y="949" /> +<sizeparam width="331" height="135" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_MSS" value="name" /> +<TGConnectingPoint num="0" id="6218" /> +<TGConnectingPoint num="1" id="6219" /> +<TGConnectingPoint num="2" id="6220" /> +<TGConnectingPoint num="3" id="6221" /> +<TGConnectingPoint num="4" id="6222" /> +<TGConnectingPoint num="5" id="6223" /> +<TGConnectingPoint num="6" id="6224" /> +<TGConnectingPoint num="7" id="6225" /> +<TGConnectingPoint num="8" id="6226" /> +<TGConnectingPoint num="9" id="6227" /> +<TGConnectingPoint num="10" id="6228" /> +<TGConnectingPoint num="11" id="6229" /> +<TGConnectingPoint num="12" id="6230" /> +<TGConnectingPoint num="13" id="6231" /> +<TGConnectingPoint num="14" id="6232" /> +<TGConnectingPoint num="15" id="6233" /> +<TGConnectingPoint num="16" id="6234" /> +<TGConnectingPoint num="17" id="6235" /> +<TGConnectingPoint num="18" id="6236" /> +<TGConnectingPoint num="19" id="6237" /> +<TGConnectingPoint num="20" id="6238" /> +<TGConnectingPoint num="21" id="6239" /> +<TGConnectingPoint num="22" id="6240" /> +<TGConnectingPoint num="23" id="6241" /> +<extraparam> +<info stereotype="MEMORY" nodeName="INTL_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="3" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="6276" > +<cdparam x="91" y="938" /> +<sizeparam width="234" height="140" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_PSS" value="name" /> +<TGConnectingPoint num="0" id="6252" /> +<TGConnectingPoint num="1" id="6253" /> +<TGConnectingPoint num="2" id="6254" /> +<TGConnectingPoint num="3" id="6255" /> +<TGConnectingPoint num="4" id="6256" /> +<TGConnectingPoint num="5" id="6257" /> +<TGConnectingPoint num="6" id="6258" /> +<TGConnectingPoint num="7" id="6259" /> +<TGConnectingPoint num="8" id="6260" /> +<TGConnectingPoint num="9" id="6261" /> +<TGConnectingPoint num="10" id="6262" /> +<TGConnectingPoint num="11" id="6263" /> +<TGConnectingPoint num="12" id="6264" /> +<TGConnectingPoint num="13" id="6265" /> +<TGConnectingPoint num="14" id="6266" /> +<TGConnectingPoint num="15" id="6267" /> +<TGConnectingPoint num="16" id="6268" /> +<TGConnectingPoint num="17" id="6269" /> +<TGConnectingPoint num="18" id="6270" /> +<TGConnectingPoint num="19" id="6271" /> +<TGConnectingPoint num="20" id="6272" /> +<TGConnectingPoint num="21" id="6273" /> +<TGConnectingPoint num="22" id="6274" /> +<TGConnectingPoint num="23" id="6275" /> +<extraparam> +<info stereotype="CPURR" nodeName="INTL_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="2" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="6251" > +<father id="6276" num="0" /> +<cdparam x="105" y="993" /> +<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="45" minY="0" maxY="100" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Chip2Octet" /> +<TGConnectingPoint num="0" id="6243" /> +<TGConnectingPoint num="1" id="6244" /> +<TGConnectingPoint num="2" id="6245" /> +<TGConnectingPoint num="3" id="6246" /> +<TGConnectingPoint num="4" id="6247" /> +<TGConnectingPoint num="5" id="6248" /> +<TGConnectingPoint num="6" id="6249" /> +<TGConnectingPoint num="7" id="6250" /> +<extraparam> +<info value="Zigbee_TX::X_Chip2Octet" taskName="X_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="Interleaver operation" fatherComponentMECType="2" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1102" id="6301" > +<cdparam x="231" y="832" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_Bus" value="name" /> +<TGConnectingPoint num="0" id="6277" /> +<TGConnectingPoint num="1" id="6278" /> +<TGConnectingPoint num="2" id="6279" /> +<TGConnectingPoint num="3" id="6280" /> +<TGConnectingPoint num="4" id="6281" /> +<TGConnectingPoint num="5" id="6282" /> +<TGConnectingPoint num="6" id="6283" /> +<TGConnectingPoint num="7" id="6284" /> +<TGConnectingPoint num="8" id="6285" /> +<TGConnectingPoint num="9" id="6286" /> +<TGConnectingPoint num="10" id="6287" /> +<TGConnectingPoint num="11" id="6288" /> +<TGConnectingPoint num="12" id="6289" /> +<TGConnectingPoint num="13" id="6290" /> +<TGConnectingPoint num="14" id="6291" /> +<TGConnectingPoint num="15" id="6292" /> +<TGConnectingPoint num="16" id="6293" /> +<TGConnectingPoint num="17" id="6294" /> +<TGConnectingPoint num="18" id="6295" /> +<TGConnectingPoint num="19" id="6296" /> +<TGConnectingPoint num="20" id="6297" /> +<TGConnectingPoint num="21" id="6298" /> +<TGConnectingPoint num="22" id="6299" /> +<TGConnectingPoint num="23" id="6300" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="INTL_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="6326" > +<cdparam x="231" y="447" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_Bus" value="name" /> +<TGConnectingPoint num="0" id="6302" /> +<TGConnectingPoint num="1" id="6303" /> +<TGConnectingPoint num="2" id="6304" /> +<TGConnectingPoint num="3" id="6305" /> +<TGConnectingPoint num="4" id="6306" /> +<TGConnectingPoint num="5" id="6307" /> +<TGConnectingPoint num="6" id="6308" /> +<TGConnectingPoint num="7" id="6309" /> +<TGConnectingPoint num="8" id="6310" /> +<TGConnectingPoint num="9" id="6311" /> +<TGConnectingPoint num="10" id="6312" /> +<TGConnectingPoint num="11" id="6313" /> +<TGConnectingPoint num="12" id="6314" /> +<TGConnectingPoint num="13" id="6315" /> +<TGConnectingPoint num="14" id="6316" /> +<TGConnectingPoint num="15" id="6317" /> +<TGConnectingPoint num="16" id="6318" /> +<TGConnectingPoint num="17" id="6319" /> +<TGConnectingPoint num="18" id="6320" /> +<TGConnectingPoint num="19" id="6321" /> +<TGConnectingPoint num="20" id="6322" /> +<TGConnectingPoint num="21" id="6323" /> +<TGConnectingPoint num="22" id="6324" /> +<TGConnectingPoint num="23" id="6325" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="ADAIF_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="6351" > +<cdparam x="1147" y="408" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_DMA" value="name" /> +<TGConnectingPoint num="0" id="6327" /> +<TGConnectingPoint num="1" id="6328" /> +<TGConnectingPoint num="2" id="6329" /> +<TGConnectingPoint num="3" id="6330" /> +<TGConnectingPoint num="4" id="6331" /> +<TGConnectingPoint num="5" id="6332" /> +<TGConnectingPoint num="6" id="6333" /> +<TGConnectingPoint num="7" id="6334" /> +<TGConnectingPoint num="8" id="6335" /> +<TGConnectingPoint num="9" id="6336" /> +<TGConnectingPoint num="10" id="6337" /> +<TGConnectingPoint num="11" id="6338" /> +<TGConnectingPoint num="12" id="6339" /> +<TGConnectingPoint num="13" id="6340" /> +<TGConnectingPoint num="14" id="6341" /> +<TGConnectingPoint num="15" id="6342" /> +<TGConnectingPoint num="16" id="6343" /> +<TGConnectingPoint num="17" id="6344" /> +<TGConnectingPoint num="18" id="6345" /> +<TGConnectingPoint num="19" id="6346" /> +<TGConnectingPoint num="20" id="6347" /> +<TGConnectingPoint num="21" id="6348" /> +<TGConnectingPoint num="22" id="6349" /> +<TGConnectingPoint num="23" id="6350" /> +<extraparam> +<info stereotype="CPURR" nodeName="FEP_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="6376" > +<cdparam x="895" y="193" /> +<sizeparam width="255" height="183" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_MSS" value="name" /> +<TGConnectingPoint num="0" id="6352" /> +<TGConnectingPoint num="1" id="6353" /> +<TGConnectingPoint num="2" id="6354" /> +<TGConnectingPoint num="3" id="6355" /> +<TGConnectingPoint num="4" id="6356" /> +<TGConnectingPoint num="5" id="6357" /> +<TGConnectingPoint num="6" id="6358" /> +<TGConnectingPoint num="7" id="6359" /> +<TGConnectingPoint num="8" id="6360" /> +<TGConnectingPoint num="9" id="6361" /> +<TGConnectingPoint num="10" id="6362" /> +<TGConnectingPoint num="11" id="6363" /> +<TGConnectingPoint num="12" id="6364" /> +<TGConnectingPoint num="13" id="6365" /> +<TGConnectingPoint num="14" id="6366" /> +<TGConnectingPoint num="15" id="6367" /> +<TGConnectingPoint num="16" id="6368" /> +<TGConnectingPoint num="17" id="6369" /> +<TGConnectingPoint num="18" id="6370" /> +<TGConnectingPoint num="19" id="6371" /> +<TGConnectingPoint num="20" id="6372" /> +<TGConnectingPoint num="21" id="6373" /> +<TGConnectingPoint num="22" id="6374" /> +<TGConnectingPoint num="23" id="6375" /> +<extraparam> +<info stereotype="MEMORY" nodeName="FEP_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="0" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="6428" > +<cdparam x="619" y="199" /> +<sizeparam width="238" height="185" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_PSS" value="name" /> +<TGConnectingPoint num="0" id="6404" /> +<TGConnectingPoint num="1" id="6405" /> +<TGConnectingPoint num="2" id="6406" /> +<TGConnectingPoint num="3" id="6407" /> +<TGConnectingPoint num="4" id="6408" /> +<TGConnectingPoint num="5" id="6409" /> +<TGConnectingPoint num="6" id="6410" /> +<TGConnectingPoint num="7" id="6411" /> +<TGConnectingPoint num="8" id="6412" /> +<TGConnectingPoint num="9" id="6413" /> +<TGConnectingPoint num="10" id="6414" /> +<TGConnectingPoint num="11" id="6415" /> +<TGConnectingPoint num="12" id="6416" /> +<TGConnectingPoint num="13" id="6417" /> +<TGConnectingPoint num="14" id="6418" /> +<TGConnectingPoint num="15" id="6419" /> +<TGConnectingPoint num="16" id="6420" /> +<TGConnectingPoint num="17" id="6421" /> +<TGConnectingPoint num="18" id="6422" /> +<TGConnectingPoint num="19" id="6423" /> +<TGConnectingPoint num="20" id="6424" /> +<TGConnectingPoint num="21" id="6425" /> +<TGConnectingPoint num="22" id="6426" /> +<TGConnectingPoint num="23" id="6427" /> +<extraparam> +<info stereotype="CPURR" nodeName="FEP_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="2" execcTime="1" clockRatio="1" MECType="1" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="6385" > +<father id="6428" num="0" /> +<cdparam x="671" y="289" /> +<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="82" minY="0" maxY="145" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_I" /> +<TGConnectingPoint num="0" id="6377" /> +<TGConnectingPoint num="1" id="6378" /> +<TGConnectingPoint num="2" id="6379" /> +<TGConnectingPoint num="3" id="6380" /> +<TGConnectingPoint num="4" id="6381" /> +<TGConnectingPoint num="5" id="6382" /> +<TGConnectingPoint num="6" id="6383" /> +<TGConnectingPoint num="7" id="6384" /> +<extraparam> +<info value="Zigbee_TX::X_CWP_I" taskName="X_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6394" > +<father id="6428" num="1" /> +<cdparam x="640" y="335" /> +<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="76" minY="0" maxY="145" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_Q" /> +<TGConnectingPoint num="0" id="6386" /> +<TGConnectingPoint num="1" id="6387" /> +<TGConnectingPoint num="2" id="6388" /> +<TGConnectingPoint num="3" id="6389" /> +<TGConnectingPoint num="4" id="6390" /> +<TGConnectingPoint num="5" id="6391" /> +<TGConnectingPoint num="6" id="6392" /> +<TGConnectingPoint num="7" id="6393" /> +<extraparam> +<info value="Zigbee_TX::X_CWP_Q" taskName="X_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6403" > +<father id="6428" num="2" /> +<cdparam x="639" y="239" /> +<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="93" minY="0" maxY="145" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_CWL" /> +<TGConnectingPoint num="0" id="6395" /> +<TGConnectingPoint num="1" id="6396" /> +<TGConnectingPoint num="2" id="6397" /> +<TGConnectingPoint num="3" id="6398" /> +<TGConnectingPoint num="4" id="6399" /> +<TGConnectingPoint num="5" id="6400" /> +<TGConnectingPoint num="6" id="6401" /> +<TGConnectingPoint num="7" id="6402" /> +<extraparam> +<info value="Zigbee_TX::X_CWL" taskName="X_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="CWL" fatherComponentMECType="1" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1106" id="6453" > +<cdparam x="910" y="531" /> +<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_Bridge" value="name" /> +<TGConnectingPoint num="0" id="6429" /> +<TGConnectingPoint num="1" id="6430" /> +<TGConnectingPoint num="2" id="6431" /> +<TGConnectingPoint num="3" id="6432" /> +<TGConnectingPoint num="4" id="6433" /> +<TGConnectingPoint num="5" id="6434" /> +<TGConnectingPoint num="6" id="6435" /> +<TGConnectingPoint num="7" id="6436" /> +<TGConnectingPoint num="8" id="6437" /> +<TGConnectingPoint num="9" id="6438" /> +<TGConnectingPoint num="10" id="6439" /> +<TGConnectingPoint num="11" id="6440" /> +<TGConnectingPoint num="12" id="6441" /> +<TGConnectingPoint num="13" id="6442" /> +<TGConnectingPoint num="14" id="6443" /> +<TGConnectingPoint num="15" id="6444" /> +<TGConnectingPoint num="16" id="6445" /> +<TGConnectingPoint num="17" id="6446" /> +<TGConnectingPoint num="18" id="6447" /> +<TGConnectingPoint num="19" id="6448" /> +<TGConnectingPoint num="20" id="6449" /> +<TGConnectingPoint num="21" id="6450" /> +<TGConnectingPoint num="22" id="6451" /> +<TGConnectingPoint num="23" id="6452" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="FEP_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="6478" > +<cdparam x="835" y="433" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_Bus" value="name" /> +<TGConnectingPoint num="0" id="6454" /> +<TGConnectingPoint num="1" id="6455" /> +<TGConnectingPoint num="2" id="6456" /> +<TGConnectingPoint num="3" id="6457" /> +<TGConnectingPoint num="4" id="6458" /> +<TGConnectingPoint num="5" id="6459" /> +<TGConnectingPoint num="6" id="6460" /> +<TGConnectingPoint num="7" id="6461" /> +<TGConnectingPoint num="8" id="6462" /> +<TGConnectingPoint num="9" id="6463" /> +<TGConnectingPoint num="10" id="6464" /> +<TGConnectingPoint num="11" id="6465" /> +<TGConnectingPoint num="12" id="6466" /> +<TGConnectingPoint num="13" id="6467" /> +<TGConnectingPoint num="14" id="6468" /> +<TGConnectingPoint num="15" id="6469" /> +<TGConnectingPoint num="16" id="6470" /> +<TGConnectingPoint num="17" id="6471" /> +<TGConnectingPoint num="18" id="6472" /> +<TGConnectingPoint num="19" id="6473" /> +<TGConnectingPoint num="20" id="6474" /> +<TGConnectingPoint num="21" id="6475" /> +<TGConnectingPoint num="22" id="6476" /> +<TGConnectingPoint num="23" id="6477" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="FEP_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="6503" > +<cdparam x="1174" y="850" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_DMA" value="name" /> +<TGConnectingPoint num="0" id="6479" /> +<TGConnectingPoint num="1" id="6480" /> +<TGConnectingPoint num="2" id="6481" /> +<TGConnectingPoint num="3" id="6482" /> +<TGConnectingPoint num="4" id="6483" /> +<TGConnectingPoint num="5" id="6484" /> +<TGConnectingPoint num="6" id="6485" /> +<TGConnectingPoint num="7" id="6486" /> +<TGConnectingPoint num="8" id="6487" /> +<TGConnectingPoint num="9" id="6488" /> +<TGConnectingPoint num="10" id="6489" /> +<TGConnectingPoint num="11" id="6490" /> +<TGConnectingPoint num="12" id="6491" /> +<TGConnectingPoint num="13" id="6492" /> +<TGConnectingPoint num="14" id="6493" /> +<TGConnectingPoint num="15" id="6494" /> +<TGConnectingPoint num="16" id="6495" /> +<TGConnectingPoint num="17" id="6496" /> +<TGConnectingPoint num="18" id="6497" /> +<TGConnectingPoint num="19" id="6498" /> +<TGConnectingPoint num="20" id="6499" /> +<TGConnectingPoint num="21" id="6500" /> +<TGConnectingPoint num="22" id="6501" /> +<TGConnectingPoint num="23" id="6502" /> +<extraparam> +<info stereotype="CPURR" nodeName="MAPPER_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="6528" > +<cdparam x="920" y="780" /> +<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_Bridge" value="name" /> +<TGConnectingPoint num="0" id="6504" /> +<TGConnectingPoint num="1" id="6505" /> +<TGConnectingPoint num="2" id="6506" /> +<TGConnectingPoint num="3" id="6507" /> +<TGConnectingPoint num="4" id="6508" /> +<TGConnectingPoint num="5" id="6509" /> +<TGConnectingPoint num="6" id="6510" /> +<TGConnectingPoint num="7" id="6511" /> +<TGConnectingPoint num="8" id="6512" /> +<TGConnectingPoint num="9" id="6513" /> +<TGConnectingPoint num="10" id="6514" /> +<TGConnectingPoint num="11" id="6515" /> +<TGConnectingPoint num="12" id="6516" /> +<TGConnectingPoint num="13" id="6517" /> +<TGConnectingPoint num="14" id="6518" /> +<TGConnectingPoint num="15" id="6519" /> +<TGConnectingPoint num="16" id="6520" /> +<TGConnectingPoint num="17" id="6521" /> +<TGConnectingPoint num="18" id="6522" /> +<TGConnectingPoint num="19" id="6523" /> +<TGConnectingPoint num="20" id="6524" /> +<TGConnectingPoint num="21" id="6525" /> +<TGConnectingPoint num="22" id="6526" /> +<TGConnectingPoint num="23" id="6527" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="MAPPER_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="6553" > +<cdparam x="1043" y="978" /> +<sizeparam width="314" height="125" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_MSS" value="name" /> +<TGConnectingPoint num="0" id="6529" /> +<TGConnectingPoint num="1" id="6530" /> +<TGConnectingPoint num="2" id="6531" /> +<TGConnectingPoint num="3" id="6532" /> +<TGConnectingPoint num="4" id="6533" /> +<TGConnectingPoint num="5" id="6534" /> +<TGConnectingPoint num="6" id="6535" /> +<TGConnectingPoint num="7" id="6536" /> +<TGConnectingPoint num="8" id="6537" /> +<TGConnectingPoint num="9" id="6538" /> +<TGConnectingPoint num="10" id="6539" /> +<TGConnectingPoint num="11" id="6540" /> +<TGConnectingPoint num="12" id="6541" /> +<TGConnectingPoint num="13" id="6542" /> +<TGConnectingPoint num="14" id="6543" /> +<TGConnectingPoint num="15" id="6544" /> +<TGConnectingPoint num="16" id="6545" /> +<TGConnectingPoint num="17" id="6546" /> +<TGConnectingPoint num="18" id="6547" /> +<TGConnectingPoint num="19" id="6548" /> +<TGConnectingPoint num="20" id="6549" /> +<TGConnectingPoint num="21" id="6550" /> +<TGConnectingPoint num="22" id="6551" /> +<TGConnectingPoint num="23" id="6552" /> +<extraparam> +<info stereotype="MEMORY" nodeName="MAPPER_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="6587" > +<cdparam x="743" y="984" /> +<sizeparam width="237" height="159" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_PSS" value="name" /> +<TGConnectingPoint num="0" id="6563" /> +<TGConnectingPoint num="1" id="6564" /> +<TGConnectingPoint num="2" id="6565" /> +<TGConnectingPoint num="3" id="6566" /> +<TGConnectingPoint num="4" id="6567" /> +<TGConnectingPoint num="5" id="6568" /> +<TGConnectingPoint num="6" id="6569" /> +<TGConnectingPoint num="7" id="6570" /> +<TGConnectingPoint num="8" id="6571" /> +<TGConnectingPoint num="9" id="6572" /> +<TGConnectingPoint num="10" id="6573" /> +<TGConnectingPoint num="11" id="6574" /> +<TGConnectingPoint num="12" id="6575" /> +<TGConnectingPoint num="13" id="6576" /> +<TGConnectingPoint num="14" id="6577" /> +<TGConnectingPoint num="15" id="6578" /> +<TGConnectingPoint num="16" id="6579" /> +<TGConnectingPoint num="17" id="6580" /> +<TGConnectingPoint num="18" id="6581" /> +<TGConnectingPoint num="19" id="6582" /> +<TGConnectingPoint num="20" id="6583" /> +<TGConnectingPoint num="21" id="6584" /> +<TGConnectingPoint num="22" id="6585" /> +<TGConnectingPoint num="23" id="6586" /> +<extraparam> +<info stereotype="CPURR" nodeName="MAPPER_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="3" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="6562" > +<father id="6587" num="0" /> +<cdparam x="749" y="1029" /> +<sizeparam width="223" height="45" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="14" minY="0" maxY="119" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Symbol2ChipSeq" /> +<TGConnectingPoint num="0" id="6554" /> +<TGConnectingPoint num="1" id="6555" /> +<TGConnectingPoint num="2" id="6556" /> +<TGConnectingPoint num="3" id="6557" /> +<TGConnectingPoint num="4" id="6558" /> +<TGConnectingPoint num="5" id="6559" /> +<TGConnectingPoint num="6" id="6560" /> +<TGConnectingPoint num="7" id="6561" /> +<extraparam> +<info value="Zigbee_TX::X_Symbol2ChipSeq" taskName="X_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="Mapper operation" fatherComponentMECType="3" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1102" id="6612" > +<cdparam x="845" y="875" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_Bus" value="name" /> +<TGConnectingPoint num="0" id="6588" /> +<TGConnectingPoint num="1" id="6589" /> +<TGConnectingPoint num="2" id="6590" /> +<TGConnectingPoint num="3" id="6591" /> +<TGConnectingPoint num="4" id="6592" /> +<TGConnectingPoint num="5" id="6593" /> +<TGConnectingPoint num="6" id="6594" /> +<TGConnectingPoint num="7" id="6595" /> +<TGConnectingPoint num="8" id="6596" /> +<TGConnectingPoint num="9" id="6597" /> +<TGConnectingPoint num="10" id="6598" /> +<TGConnectingPoint num="11" id="6599" /> +<TGConnectingPoint num="12" id="6600" /> +<TGConnectingPoint num="13" id="6601" /> +<TGConnectingPoint num="14" id="6602" /> +<TGConnectingPoint num="15" id="6603" /> +<TGConnectingPoint num="16" id="6604" /> +<TGConnectingPoint num="17" id="6605" /> +<TGConnectingPoint num="18" id="6606" /> +<TGConnectingPoint num="19" id="6607" /> +<TGConnectingPoint num="20" id="6608" /> +<TGConnectingPoint num="21" id="6609" /> +<TGConnectingPoint num="22" id="6610" /> +<TGConnectingPoint num="23" id="6611" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="MAPPER_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1108" id="6630" > +<cdparam x="103" y="1267" /> +<sizeparam width="419" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_Symbol2ChipSeq_Chips2Octet" value="CP0" /> +<TGConnectingPoint num="0" id="6622" /> +<TGConnectingPoint num="1" id="6623" /> +<TGConnectingPoint num="2" id="6624" /> +<TGConnectingPoint num="3" id="6625" /> +<TGConnectingPoint num="4" id="6626" /> +<TGConnectingPoint num="5" id="6627" /> +<TGConnectingPoint num="6" id="6628" /> +<TGConnectingPoint num="7" id="6629" /> +<extraparam> +<info stereotype="CP" nodeName="CP_Symbol2ChipSeq_Chips2Octet" cpMEC="Single DMA" transferType1="0" transferType2="0" /> +<attributes reference="DMA_transfer" /> +<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="MAPPER_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="INTL_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" /> +<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="ADAIF_DMA" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="ADAIF_Bridge, MainBus, MainBridge, Crossbar, ADAIF_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="ADAIF_Bridge, MainBus, MainBridge, Crossbar, ADAIF_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, MAPPER_Bridge, MAPPER_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="ADAIF_Bridge, Crossbar, INTL_Bridge, INTL_Bus, ADAIF_Bus" /> +<mappedAttributes type="int" name="destinationAddress" value="123" /> +<mappedAttributes type="int" name="sourceAddress" value="123" /> +<mappedAttributes type="int" name="counter" value="123" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="6621" > +<father id="6630" num="0" /> +<cdparam x="292" y="1303" /> +<sizeparam width="212" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="207" minY="0" maxY="45" /> +<infoparam name="TGComponent" value="Zigbee_TX::chip2octet_ch_in" /> +<TGConnectingPoint num="0" id="6613" /> +<TGConnectingPoint num="1" id="6614" /> +<TGConnectingPoint num="2" id="6615" /> +<TGConnectingPoint num="3" id="6616" /> +<TGConnectingPoint num="4" id="6617" /> +<TGConnectingPoint num="5" id="6618" /> +<TGConnectingPoint num="6" id="6619" /> +<TGConnectingPoint num="7" id="6620" /> +<extraparam> +<info value="Zigbee_TX::chip2octet_ch_in" portName="chip2octet_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="INTL_MSS" bufferType="3" packedBinaryIn="" width="" bitInOffset="" inputOffset="" packedBinaryOut="" bitOutOffset="" outputOffset="" offsetPerm="" lengthPerm="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1108" id="6648" > +<cdparam x="105" y="1396" /> +<sizeparam width="405" height="88" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_Chip2Octet_CWL" value="CP0" /> +<TGConnectingPoint num="0" id="6640" /> +<TGConnectingPoint num="1" id="6641" /> +<TGConnectingPoint num="2" id="6642" /> +<TGConnectingPoint num="3" id="6643" /> +<TGConnectingPoint num="4" id="6644" /> +<TGConnectingPoint num="5" id="6645" /> +<TGConnectingPoint num="6" id="6646" /> +<TGConnectingPoint num="7" id="6647" /> +<extraparam> +<info stereotype="CP" nodeName="CP_Chip2Octet_CWL" cpMEC="Single DMA" transferType1="0" transferType2="0" /> +<attributes reference="DMA_transfer" /> +<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="INTL_DMA" /> +<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="INTL_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="FEP_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="INTL_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="Crossbar, INTL_Bridge, INTL_Bus, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="6639" > +<father id="6648" num="0" /> +<cdparam x="327" y="1437" /> +<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="241" minY="0" maxY="48" /> +<infoparam name="TGComponent" value="Zigbee_TX::cwl_ch_in" /> +<TGConnectingPoint num="0" id="6631" /> +<TGConnectingPoint num="1" id="6632" /> +<TGConnectingPoint num="2" id="6633" /> +<TGConnectingPoint num="3" id="6634" /> +<TGConnectingPoint num="4" id="6635" /> +<TGConnectingPoint num="5" id="6636" /> +<TGConnectingPoint num="6" id="6637" /> +<TGConnectingPoint num="7" id="6638" /> +<extraparam> +<info value="Zigbee_TX::cwl_ch_in" portName="cwl_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="FEP_MSS" bufferType="0" baseAddress="0x123" numSamples="1234" bank="0" dataType="int8" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1108" id="6666" > +<cdparam x="627" y="1252" /> +<sizeparam width="295" height="145" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_sink" value="CP0" /> +<TGConnectingPoint num="0" id="6658" /> +<TGConnectingPoint num="1" id="6659" /> +<TGConnectingPoint num="2" id="6660" /> +<TGConnectingPoint num="3" id="6661" /> +<TGConnectingPoint num="4" id="6662" /> +<TGConnectingPoint num="5" id="6663" /> +<TGConnectingPoint num="6" id="6664" /> +<TGConnectingPoint num="7" id="6665" /> +<extraparam> +<info stereotype="CP" nodeName="CP_sink" cpMEC="Double DMA" transferType1="0" transferType2="0" /> +<attributes reference="Double_DMA_transfer" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="FEP_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_2" architectureUnit="FEP_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="FEP_DMA" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_2" architectureUnit="FEP_DMA" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_2" architectureUnit="ADAIF_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="ADAIF_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_2" architectureUnit="MainCPU" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_6" architectureUnit="FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_5" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_8" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_7" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="6657" > +<father id="6666" num="0" /> +<cdparam x="701" y="1315" /> +<sizeparam width="170" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="125" minY="0" maxY="105" /> +<infoparam name="TGComponent" value="Zigbee_TX::sink_ch_in" /> +<TGConnectingPoint num="0" id="6649" /> +<TGConnectingPoint num="1" id="6650" /> +<TGConnectingPoint num="2" id="6651" /> +<TGConnectingPoint num="3" id="6652" /> +<TGConnectingPoint num="4" id="6653" /> +<TGConnectingPoint num="5" id="6654" /> +<TGConnectingPoint num="6" id="6655" /> +<TGConnectingPoint num="7" id="6656" /> +<extraparam> +<info value="Zigbee_TX::sink_ch_in" portName="sink_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="ADAIF_MSS" bufferType="2" numSamples="123" baseAddress="0x123" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1108" id="6684" > +<cdparam x="106" y="1143" /> +<sizeparam width="421" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_Source_to_Bits2Symbol" value="CP0" /> +<TGConnectingPoint num="0" id="6676" /> +<TGConnectingPoint num="1" id="6677" /> +<TGConnectingPoint num="2" id="6678" /> +<TGConnectingPoint num="3" id="6679" /> +<TGConnectingPoint num="4" id="6680" /> +<TGConnectingPoint num="5" id="6681" /> +<TGConnectingPoint num="6" id="6682" /> +<TGConnectingPoint num="7" id="6683" /> +<extraparam> +<info stereotype="CP" nodeName="CP_Source_to_Bits2Symbol" cpMEC="Memory Copy" transferType1="0" transferType2="0" /> +<attributes reference="CP_Memory_Copy" /> +<mappingInfo CPname="CP_Memory_Copy" instanceName="Dst_Storage_Instance" architectureUnit="MAPPER_MSS" /> +<mappingInfo CPname="CP_Memory_Copy" instanceName="CPU_Controller" architectureUnit="MainCPU" /> +<mappingInfo CPname="CP_Memory_Copy" instanceName="Transfer_Instance_1" architectureUnit="MainBus" /> +<mappingInfo CPname="CP_Memory_Copy" instanceName="Transfer_Instance2" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<mappingInfo CPname="CP_Memory_Copy" instanceName="Src_Storage_Instance" architectureUnit="ADAIF_MSS" /> +<mappedAttributes type="addr" name="sourceAddress" value="0x123" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="6675" > +<father id="6684" num="0" /> +<cdparam x="280" y="1181" /> +<sizeparam width="247" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="174" minY="0" maxY="45" /> +<infoparam name="TGComponent" value="Zigbee_TX::symbol2ChipSeq_ch_in" /> +<TGConnectingPoint num="0" id="6667" /> +<TGConnectingPoint num="1" id="6668" /> +<TGConnectingPoint num="2" id="6669" /> +<TGConnectingPoint num="3" id="6670" /> +<TGConnectingPoint num="4" id="6671" /> +<TGConnectingPoint num="5" id="6672" /> +<TGConnectingPoint num="6" id="6673" /> +<TGConnectingPoint num="7" id="6674" /> +<extraparam> +<info value="Zigbee_TX::symbol2ChipSeq_ch_in" portName="symbol2ChipSeq_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="MAPPER_MSS" bufferType="1" numSamplesDataIn="123" baseAddressDataIn="0x123" bitsPerSymbolDataIn="123" symmetricalValueDataIn="OFF" baseAddressDataOut="0x123" baseAddressLUT="0x123" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="125" id="6685" > +<cdparam x="1367" y="660" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1367" y="660" id="6146" /> +<P2 x="1076" y="660" id="6172" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6686" > +<cdparam x="1147" y="508" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1147" y="508" id="6332" /> +<P2 x="1076" y="635" id="6170" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6687" > +<cdparam x="1298" y="875" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1249" y="850" id="6480" /> +<P2 x="1076" y="685" id="6175" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6688" > +<cdparam x="1019" y="805" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="970" y="780" id="6505" /> +<P2 x="864" y="685" id="6183" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6689" > +<cdparam x="1004" y="531" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="960" y="566" id="6435" /> +<P2 x="864" y="635" id="6177" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6690" > +<cdparam x="1185" y="660" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1467" y="660" id="6147" /> +<P2 x="1527" y="660" id="6121" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6691" > +<cdparam x="356" y="788" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="788" id="6199" /> +<P2 x="356" y="832" id="6278" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6692" > +<cdparam x="554" y="806" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="560" y="807" id="5862" /> +<P2 x="442" y="685" id="6182" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6693" > +<cdparam x="559" y="863" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="560" y="857" id="5865" /> +<P2 x="481" y="857" id="6281" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6694" > +<cdparam x="586" y="970" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="541" y="949" id="6219" /> +<P2 x="418" y="882" id="6292" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6695" > +<cdparam x="165" y="927" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="208" y="938" id="6253" /> +<P2 x="293" y="882" id="6291" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6696" > +<cdparam x="355" y="576" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="580" id="5977" /> +<P2 x="231" y="635" id="6168" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6697" > +<cdparam x="355" y="541" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="545" id="5972" /> +<P2 x="356" y="497" id="6308" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6698" > +<cdparam x="543" y="522" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="543" y="522" id="5892" /> +<P2 x="442" y="635" id="6176" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6699" > +<cdparam x="536" y="475" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="543" y="472" id="5890" /> +<P2 x="481" y="472" id="6306" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6700" > +<cdparam x="549" y="337" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="454" y="395" id="5918" /> +<P2 x="418" y="447" id="6311" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6701" > +<cdparam x="155" y="323" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="155" y="396" id="5952" /> +<P2 x="293" y="447" id="6310" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6702" > +<cdparam x="357" y="778" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="737" id="6194" /> +<P2 x="231" y="685" id="6173" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6703" > +<cdparam x="1654" y="758" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1652" y="737" id="5997" /> +<P2 x="1652" y="685" id="6124" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6704" > +<cdparam x="1651" y="573" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1652" y="586" id="6099" /> +<P2 x="1652" y="635" id="6119" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6705" > +<cdparam x="959" y="527" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="960" y="531" id="6430" /> +<P2 x="960" y="483" id="6460" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6706" > +<cdparam x="1140" y="461" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1147" y="458" id="6330" /> +<P2 x="1085" y="458" id="6458" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6707" > +<cdparam x="1189" y="374" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1022" y="376" id="6358" /> +<P2 x="1022" y="433" id="6463" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6708" > +<cdparam x="795" y="360" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="738" y="384" id="6410" /> +<P2 x="897" y="433" id="6462" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6709" > +<cdparam x="970" y="831" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="970" y="831" id="6510" /> +<P2 x="970" y="875" id="6589" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6710" > +<cdparam x="1173" y="906" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1174" y="900" id="6482" /> +<P2 x="1095" y="900" id="6592" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6711" > +<cdparam x="1200" y="1013" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1200" y="978" id="6530" /> +<P2 x="1032" y="925" id="6603" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="6712" > +<cdparam x="779" y="970" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="861" y="984" id="6564" /> +<P2 x="907" y="925" id="6602" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> + +</TMLArchiDiagramPanel> + +</Modeling> + + + + +<Modeling type="TML Architecture" nameTab="Mapping_2" > +<TMLArchiDiagramPanel name="DIPLODOCUS architecture and mapping Diagram" minX="10" maxX="1900" minY="10" maxY="1900" attributes="0" masterClockFrequency="200" > +<COMPONENT type="1100" id="6737" > +<cdparam x="560" y="807" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_DMA" value="name" /> +<TGConnectingPoint num="0" id="6713" /> +<TGConnectingPoint num="1" id="6714" /> +<TGConnectingPoint num="2" id="6715" /> +<TGConnectingPoint num="3" id="6716" /> +<TGConnectingPoint num="4" id="6717" /> +<TGConnectingPoint num="5" id="6718" /> +<TGConnectingPoint num="6" id="6719" /> +<TGConnectingPoint num="7" id="6720" /> +<TGConnectingPoint num="8" id="6721" /> +<TGConnectingPoint num="9" id="6722" /> +<TGConnectingPoint num="10" id="6723" /> +<TGConnectingPoint num="11" id="6724" /> +<TGConnectingPoint num="12" id="6725" /> +<TGConnectingPoint num="13" id="6726" /> +<TGConnectingPoint num="14" id="6727" /> +<TGConnectingPoint num="15" id="6728" /> +<TGConnectingPoint num="16" id="6729" /> +<TGConnectingPoint num="17" id="6730" /> +<TGConnectingPoint num="18" id="6731" /> +<TGConnectingPoint num="19" id="6732" /> +<TGConnectingPoint num="20" id="6733" /> +<TGConnectingPoint num="21" id="6734" /> +<TGConnectingPoint num="22" id="6735" /> +<TGConnectingPoint num="23" id="6736" /> +<extraparam> +<info stereotype="CPURR" nodeName="INTL_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="6762" > +<cdparam x="543" y="422" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_DMA" value="name" /> +<TGConnectingPoint num="0" id="6738" /> +<TGConnectingPoint num="1" id="6739" /> +<TGConnectingPoint num="2" id="6740" /> +<TGConnectingPoint num="3" id="6741" /> +<TGConnectingPoint num="4" id="6742" /> +<TGConnectingPoint num="5" id="6743" /> +<TGConnectingPoint num="6" id="6744" /> +<TGConnectingPoint num="7" id="6745" /> +<TGConnectingPoint num="8" id="6746" /> +<TGConnectingPoint num="9" id="6747" /> +<TGConnectingPoint num="10" id="6748" /> +<TGConnectingPoint num="11" id="6749" /> +<TGConnectingPoint num="12" id="6750" /> +<TGConnectingPoint num="13" id="6751" /> +<TGConnectingPoint num="14" id="6752" /> +<TGConnectingPoint num="15" id="6753" /> +<TGConnectingPoint num="16" id="6754" /> +<TGConnectingPoint num="17" id="6755" /> +<TGConnectingPoint num="18" id="6756" /> +<TGConnectingPoint num="19" id="6757" /> +<TGConnectingPoint num="20" id="6758" /> +<TGConnectingPoint num="21" id="6759" /> +<TGConnectingPoint num="22" id="6760" /> +<TGConnectingPoint num="23" id="6761" /> +<extraparam> +<info stereotype="CPURR" nodeName="ADAIF_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="6787" > +<cdparam x="354" y="243" /> +<sizeparam width="200" height="152" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_MSS" value="name" /> +<TGConnectingPoint num="0" id="6763" /> +<TGConnectingPoint num="1" id="6764" /> +<TGConnectingPoint num="2" id="6765" /> +<TGConnectingPoint num="3" id="6766" /> +<TGConnectingPoint num="4" id="6767" /> +<TGConnectingPoint num="5" id="6768" /> +<TGConnectingPoint num="6" id="6769" /> +<TGConnectingPoint num="7" id="6770" /> +<TGConnectingPoint num="8" id="6771" /> +<TGConnectingPoint num="9" id="6772" /> +<TGConnectingPoint num="10" id="6773" /> +<TGConnectingPoint num="11" id="6774" /> +<TGConnectingPoint num="12" id="6775" /> +<TGConnectingPoint num="13" id="6776" /> +<TGConnectingPoint num="14" id="6777" /> +<TGConnectingPoint num="15" id="6778" /> +<TGConnectingPoint num="16" id="6779" /> +<TGConnectingPoint num="17" id="6780" /> +<TGConnectingPoint num="18" id="6781" /> +<TGConnectingPoint num="19" id="6782" /> +<TGConnectingPoint num="20" id="6783" /> +<TGConnectingPoint num="21" id="6784" /> +<TGConnectingPoint num="22" id="6785" /> +<TGConnectingPoint num="23" id="6786" /> +<extraparam> +<info stereotype="MEMORY" nodeName="ADAIF_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="2" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="6821" > +<cdparam x="29" y="215" /> +<sizeparam width="252" height="181" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_PSS" value="name" /> +<TGConnectingPoint num="0" id="6797" /> +<TGConnectingPoint num="1" id="6798" /> +<TGConnectingPoint num="2" id="6799" /> +<TGConnectingPoint num="3" id="6800" /> +<TGConnectingPoint num="4" id="6801" /> +<TGConnectingPoint num="5" id="6802" /> +<TGConnectingPoint num="6" id="6803" /> +<TGConnectingPoint num="7" id="6804" /> +<TGConnectingPoint num="8" id="6805" /> +<TGConnectingPoint num="9" id="6806" /> +<TGConnectingPoint num="10" id="6807" /> +<TGConnectingPoint num="11" id="6808" /> +<TGConnectingPoint num="12" id="6809" /> +<TGConnectingPoint num="13" id="6810" /> +<TGConnectingPoint num="14" id="6811" /> +<TGConnectingPoint num="15" id="6812" /> +<TGConnectingPoint num="16" id="6813" /> +<TGConnectingPoint num="17" id="6814" /> +<TGConnectingPoint num="18" id="6815" /> +<TGConnectingPoint num="19" id="6816" /> +<TGConnectingPoint num="20" id="6817" /> +<TGConnectingPoint num="21" id="6818" /> +<TGConnectingPoint num="22" id="6819" /> +<TGConnectingPoint num="23" id="6820" /> +<extraparam> +<info stereotype="CPURR" nodeName="ADAIF_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="4" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="6796" > +<father id="6821" num="0" /> +<cdparam x="48" y="315" /> +<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="106" minY="0" maxY="141" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Sink" /> +<TGConnectingPoint num="0" id="6788" /> +<TGConnectingPoint num="1" id="6789" /> +<TGConnectingPoint num="2" id="6790" /> +<TGConnectingPoint num="3" id="6791" /> +<TGConnectingPoint num="4" id="6792" /> +<TGConnectingPoint num="5" id="6793" /> +<TGConnectingPoint num="6" id="6794" /> +<TGConnectingPoint num="7" id="6795" /> +<extraparam> +<info value="Zigbee_TX::X_Sink" taskName="X_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="Adaif operation" fatherComponentMECType="4" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1106" id="6846" > +<cdparam x="306" y="545" /> +<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_Bridge" value="name" /> +<TGConnectingPoint num="0" id="6822" /> +<TGConnectingPoint num="1" id="6823" /> +<TGConnectingPoint num="2" id="6824" /> +<TGConnectingPoint num="3" id="6825" /> +<TGConnectingPoint num="4" id="6826" /> +<TGConnectingPoint num="5" id="6827" /> +<TGConnectingPoint num="6" id="6828" /> +<TGConnectingPoint num="7" id="6829" /> +<TGConnectingPoint num="8" id="6830" /> +<TGConnectingPoint num="9" id="6831" /> +<TGConnectingPoint num="10" id="6832" /> +<TGConnectingPoint num="11" id="6833" /> +<TGConnectingPoint num="12" id="6834" /> +<TGConnectingPoint num="13" id="6835" /> +<TGConnectingPoint num="14" id="6836" /> +<TGConnectingPoint num="15" id="6837" /> +<TGConnectingPoint num="16" id="6838" /> +<TGConnectingPoint num="17" id="6839" /> +<TGConnectingPoint num="18" id="6840" /> +<TGConnectingPoint num="19" id="6841" /> +<TGConnectingPoint num="20" id="6842" /> +<TGConnectingPoint num="21" id="6843" /> +<TGConnectingPoint num="22" id="6844" /> +<TGConnectingPoint num="23" id="6845" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="ADAIF_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="6871" > +<cdparam x="1544" y="737" /> +<sizeparam width="216" height="140" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainMemory" value="name" /> +<TGConnectingPoint num="0" id="6847" /> +<TGConnectingPoint num="1" id="6848" /> +<TGConnectingPoint num="2" id="6849" /> +<TGConnectingPoint num="3" id="6850" /> +<TGConnectingPoint num="4" id="6851" /> +<TGConnectingPoint num="5" id="6852" /> +<TGConnectingPoint num="6" id="6853" /> +<TGConnectingPoint num="7" id="6854" /> +<TGConnectingPoint num="8" id="6855" /> +<TGConnectingPoint num="9" id="6856" /> +<TGConnectingPoint num="10" id="6857" /> +<TGConnectingPoint num="11" id="6858" /> +<TGConnectingPoint num="12" id="6859" /> +<TGConnectingPoint num="13" id="6860" /> +<TGConnectingPoint num="14" id="6861" /> +<TGConnectingPoint num="15" id="6862" /> +<TGConnectingPoint num="16" id="6863" /> +<TGConnectingPoint num="17" id="6864" /> +<TGConnectingPoint num="18" id="6865" /> +<TGConnectingPoint num="19" id="6866" /> +<TGConnectingPoint num="20" id="6867" /> +<TGConnectingPoint num="21" id="6868" /> +<TGConnectingPoint num="22" id="6869" /> +<TGConnectingPoint num="23" id="6870" /> +<extraparam> +<info stereotype="MEMORY" nodeName="MainMemory" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="4" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="6968" > +<cdparam x="1444" y="293" /> +<sizeparam width="417" height="293" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainCPU" value="name" /> +<TGConnectingPoint num="0" id="6944" /> +<TGConnectingPoint num="1" id="6945" /> +<TGConnectingPoint num="2" id="6946" /> +<TGConnectingPoint num="3" id="6947" /> +<TGConnectingPoint num="4" id="6948" /> +<TGConnectingPoint num="5" id="6949" /> +<TGConnectingPoint num="6" id="6950" /> +<TGConnectingPoint num="7" id="6951" /> +<TGConnectingPoint num="8" id="6952" /> +<TGConnectingPoint num="9" id="6953" /> +<TGConnectingPoint num="10" id="6954" /> +<TGConnectingPoint num="11" id="6955" /> +<TGConnectingPoint num="12" id="6956" /> +<TGConnectingPoint num="13" id="6957" /> +<TGConnectingPoint num="14" id="6958" /> +<TGConnectingPoint num="15" id="6959" /> +<TGConnectingPoint num="16" id="6960" /> +<TGConnectingPoint num="17" id="6961" /> +<TGConnectingPoint num="18" id="6962" /> +<TGConnectingPoint num="19" id="6963" /> +<TGConnectingPoint num="20" id="6964" /> +<TGConnectingPoint num="21" id="6965" /> +<TGConnectingPoint num="22" id="6966" /> +<TGConnectingPoint num="23" id="6967" /> +<extraparam> +<info stereotype="CPURR" nodeName="MainCPU" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="6880" > +<father id="6968" num="0" /> +<cdparam x="1686" y="522" /> +<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="261" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_I" /> +<TGConnectingPoint num="0" id="6872" /> +<TGConnectingPoint num="1" id="6873" /> +<TGConnectingPoint num="2" id="6874" /> +<TGConnectingPoint num="3" id="6875" /> +<TGConnectingPoint num="4" id="6876" /> +<TGConnectingPoint num="5" id="6877" /> +<TGConnectingPoint num="6" id="6878" /> +<TGConnectingPoint num="7" id="6879" /> +<extraparam> +<info value="Zigbee_TX::F_CWP_I" taskName="F_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_I" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6889" > +<father id="6968" num="1" /> +<cdparam x="1685" y="459" /> +<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="255" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_CWP_Q" /> +<TGConnectingPoint num="0" id="6881" /> +<TGConnectingPoint num="1" id="6882" /> +<TGConnectingPoint num="2" id="6883" /> +<TGConnectingPoint num="3" id="6884" /> +<TGConnectingPoint num="4" id="6885" /> +<TGConnectingPoint num="5" id="6886" /> +<TGConnectingPoint num="6" id="6887" /> +<TGConnectingPoint num="7" id="6888" /> +<extraparam> +<info value="Zigbee_TX::F_CWP_Q" taskName="F_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWP_Q" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6898" > +<father id="6968" num="2" /> +<cdparam x="1691" y="345" /> +<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="272" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_CWL" /> +<TGConnectingPoint num="0" id="6890" /> +<TGConnectingPoint num="1" id="6891" /> +<TGConnectingPoint num="2" id="6892" /> +<TGConnectingPoint num="3" id="6893" /> +<TGConnectingPoint num="4" id="6894" /> +<TGConnectingPoint num="5" id="6895" /> +<TGConnectingPoint num="6" id="6896" /> +<TGConnectingPoint num="7" id="6897" /> +<extraparam> +<info value="Zigbee_TX::F_CWL" taskName="F_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="F_CWL" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6907" > +<father id="6968" num="3" /> +<cdparam x="1688" y="405" /> +<sizeparam width="146" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="271" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Sink" /> +<TGConnectingPoint num="0" id="6899" /> +<TGConnectingPoint num="1" id="6900" /> +<TGConnectingPoint num="2" id="6901" /> +<TGConnectingPoint num="3" id="6902" /> +<TGConnectingPoint num="4" id="6903" /> +<TGConnectingPoint num="5" id="6904" /> +<TGConnectingPoint num="6" id="6905" /> +<TGConnectingPoint num="7" id="6906" /> +<extraparam> +<info value="Zigbee_TX::F_Sink" taskName="F_Sink" referenceTaskName="Zigbee_TX" priority="0" operation="F_Sink" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6916" > +<father id="6968" num="4" /> +<cdparam x="1466" y="518" /> +<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="228" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Chip2Octet" /> +<TGConnectingPoint num="0" id="6908" /> +<TGConnectingPoint num="1" id="6909" /> +<TGConnectingPoint num="2" id="6910" /> +<TGConnectingPoint num="3" id="6911" /> +<TGConnectingPoint num="4" id="6912" /> +<TGConnectingPoint num="5" id="6913" /> +<TGConnectingPoint num="6" id="6914" /> +<TGConnectingPoint num="7" id="6915" /> +<extraparam> +<info value="Zigbee_TX::F_Chip2Octet" taskName="F_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="F_Chip2Octet" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6925" > +<father id="6968" num="5" /> +<cdparam x="1466" y="456" /> +<sizeparam width="223" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="194" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Symbol2ChipSeq" /> +<TGConnectingPoint num="0" id="6917" /> +<TGConnectingPoint num="1" id="6918" /> +<TGConnectingPoint num="2" id="6919" /> +<TGConnectingPoint num="3" id="6920" /> +<TGConnectingPoint num="4" id="6921" /> +<TGConnectingPoint num="5" id="6922" /> +<TGConnectingPoint num="6" id="6923" /> +<TGConnectingPoint num="7" id="6924" /> +<extraparam> +<info value="Zigbee_TX::F_Symbol2ChipSeq" taskName="F_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="F_Symbol2ChipSeq" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6934" > +<father id="6968" num="6" /> +<cdparam x="1466" y="395" /> +<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Source" /> +<TGConnectingPoint num="0" id="6926" /> +<TGConnectingPoint num="1" id="6927" /> +<TGConnectingPoint num="2" id="6928" /> +<TGConnectingPoint num="3" id="6929" /> +<TGConnectingPoint num="4" id="6930" /> +<TGConnectingPoint num="5" id="6931" /> +<TGConnectingPoint num="6" id="6932" /> +<TGConnectingPoint num="7" id="6933" /> +<extraparam> +<info value="Zigbee_TX::X_Source" taskName="X_Source" referenceTaskName="Zigbee_TX" priority="0" operation="X_Source" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="6943" > +<father id="6968" num="7" /> +<cdparam x="1465" y="339" /> +<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="253" minY="0" maxY="253" /> +<infoparam name="TGComponent" value="Zigbee_TX::F_Source" /> +<TGConnectingPoint num="0" id="6935" /> +<TGConnectingPoint num="1" id="6936" /> +<TGConnectingPoint num="2" id="6937" /> +<TGConnectingPoint num="3" id="6938" /> +<TGConnectingPoint num="4" id="6939" /> +<TGConnectingPoint num="5" id="6940" /> +<TGConnectingPoint num="6" id="6941" /> +<TGConnectingPoint num="7" id="6942" /> +<extraparam> +<info value="Zigbee_TX::F_Source" taskName="F_Source" referenceTaskName="Zigbee_TX" priority="0" operation="F_Source" fatherComponentMECType="0" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1102" id="6993" > +<cdparam x="1527" y="635" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainBus" value="name" /> +<TGConnectingPoint num="0" id="6969" /> +<TGConnectingPoint num="1" id="6970" /> +<TGConnectingPoint num="2" id="6971" /> +<TGConnectingPoint num="3" id="6972" /> +<TGConnectingPoint num="4" id="6973" /> +<TGConnectingPoint num="5" id="6974" /> +<TGConnectingPoint num="6" id="6975" /> +<TGConnectingPoint num="7" id="6976" /> +<TGConnectingPoint num="8" id="6977" /> +<TGConnectingPoint num="9" id="6978" /> +<TGConnectingPoint num="10" id="6979" /> +<TGConnectingPoint num="11" id="6980" /> +<TGConnectingPoint num="12" id="6981" /> +<TGConnectingPoint num="13" id="6982" /> +<TGConnectingPoint num="14" id="6983" /> +<TGConnectingPoint num="15" id="6984" /> +<TGConnectingPoint num="16" id="6985" /> +<TGConnectingPoint num="17" id="6986" /> +<TGConnectingPoint num="18" id="6987" /> +<TGConnectingPoint num="19" id="6988" /> +<TGConnectingPoint num="20" id="6989" /> +<TGConnectingPoint num="21" id="6990" /> +<TGConnectingPoint num="22" id="6991" /> +<TGConnectingPoint num="23" id="6992" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="MainBus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="7018" > +<cdparam x="1367" y="610" /> +<sizeparam width="100" height="100" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MainBridge" value="name" /> +<TGConnectingPoint num="0" id="6994" /> +<TGConnectingPoint num="1" id="6995" /> +<TGConnectingPoint num="2" id="6996" /> +<TGConnectingPoint num="3" id="6997" /> +<TGConnectingPoint num="4" id="6998" /> +<TGConnectingPoint num="5" id="6999" /> +<TGConnectingPoint num="6" id="7000" /> +<TGConnectingPoint num="7" id="7001" /> +<TGConnectingPoint num="8" id="7002" /> +<TGConnectingPoint num="9" id="7003" /> +<TGConnectingPoint num="10" id="7004" /> +<TGConnectingPoint num="11" id="7005" /> +<TGConnectingPoint num="12" id="7006" /> +<TGConnectingPoint num="13" id="7007" /> +<TGConnectingPoint num="14" id="7008" /> +<TGConnectingPoint num="15" id="7009" /> +<TGConnectingPoint num="16" id="7010" /> +<TGConnectingPoint num="17" id="7011" /> +<TGConnectingPoint num="18" id="7012" /> +<TGConnectingPoint num="19" id="7013" /> +<TGConnectingPoint num="20" id="7014" /> +<TGConnectingPoint num="21" id="7015" /> +<TGConnectingPoint num="22" id="7016" /> +<TGConnectingPoint num="23" id="7017" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="MainBridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="7043" > +<cdparam x="231" y="635" /> +<sizeparam width="845" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="Crossbar" value="name" /> +<TGConnectingPoint num="0" id="7019" /> +<TGConnectingPoint num="1" id="7020" /> +<TGConnectingPoint num="2" id="7021" /> +<TGConnectingPoint num="3" id="7022" /> +<TGConnectingPoint num="4" id="7023" /> +<TGConnectingPoint num="5" id="7024" /> +<TGConnectingPoint num="6" id="7025" /> +<TGConnectingPoint num="7" id="7026" /> +<TGConnectingPoint num="8" id="7027" /> +<TGConnectingPoint num="9" id="7028" /> +<TGConnectingPoint num="10" id="7029" /> +<TGConnectingPoint num="11" id="7030" /> +<TGConnectingPoint num="12" id="7031" /> +<TGConnectingPoint num="13" id="7032" /> +<TGConnectingPoint num="14" id="7033" /> +<TGConnectingPoint num="15" id="7034" /> +<TGConnectingPoint num="16" id="7035" /> +<TGConnectingPoint num="17" id="7036" /> +<TGConnectingPoint num="18" id="7037" /> +<TGConnectingPoint num="19" id="7038" /> +<TGConnectingPoint num="20" id="7039" /> +<TGConnectingPoint num="21" id="7040" /> +<TGConnectingPoint num="22" id="7041" /> +<TGConnectingPoint num="23" id="7042" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="Crossbar" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="7068" > +<cdparam x="306" y="737" /> +<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_Bridge" value="name" /> +<TGConnectingPoint num="0" id="7044" /> +<TGConnectingPoint num="1" id="7045" /> +<TGConnectingPoint num="2" id="7046" /> +<TGConnectingPoint num="3" id="7047" /> +<TGConnectingPoint num="4" id="7048" /> +<TGConnectingPoint num="5" id="7049" /> +<TGConnectingPoint num="6" id="7050" /> +<TGConnectingPoint num="7" id="7051" /> +<TGConnectingPoint num="8" id="7052" /> +<TGConnectingPoint num="9" id="7053" /> +<TGConnectingPoint num="10" id="7054" /> +<TGConnectingPoint num="11" id="7055" /> +<TGConnectingPoint num="12" id="7056" /> +<TGConnectingPoint num="13" id="7057" /> +<TGConnectingPoint num="14" id="7058" /> +<TGConnectingPoint num="15" id="7059" /> +<TGConnectingPoint num="16" id="7060" /> +<TGConnectingPoint num="17" id="7061" /> +<TGConnectingPoint num="18" id="7062" /> +<TGConnectingPoint num="19" id="7063" /> +<TGConnectingPoint num="20" id="7064" /> +<TGConnectingPoint num="21" id="7065" /> +<TGConnectingPoint num="22" id="7066" /> +<TGConnectingPoint num="23" id="7067" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="INTL_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="7093" > +<cdparam x="376" y="949" /> +<sizeparam width="331" height="135" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_MSS" value="name" /> +<TGConnectingPoint num="0" id="7069" /> +<TGConnectingPoint num="1" id="7070" /> +<TGConnectingPoint num="2" id="7071" /> +<TGConnectingPoint num="3" id="7072" /> +<TGConnectingPoint num="4" id="7073" /> +<TGConnectingPoint num="5" id="7074" /> +<TGConnectingPoint num="6" id="7075" /> +<TGConnectingPoint num="7" id="7076" /> +<TGConnectingPoint num="8" id="7077" /> +<TGConnectingPoint num="9" id="7078" /> +<TGConnectingPoint num="10" id="7079" /> +<TGConnectingPoint num="11" id="7080" /> +<TGConnectingPoint num="12" id="7081" /> +<TGConnectingPoint num="13" id="7082" /> +<TGConnectingPoint num="14" id="7083" /> +<TGConnectingPoint num="15" id="7084" /> +<TGConnectingPoint num="16" id="7085" /> +<TGConnectingPoint num="17" id="7086" /> +<TGConnectingPoint num="18" id="7087" /> +<TGConnectingPoint num="19" id="7088" /> +<TGConnectingPoint num="20" id="7089" /> +<TGConnectingPoint num="21" id="7090" /> +<TGConnectingPoint num="22" id="7091" /> +<TGConnectingPoint num="23" id="7092" /> +<extraparam> +<info stereotype="MEMORY" nodeName="INTL_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="3" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="7127" > +<cdparam x="91" y="938" /> +<sizeparam width="234" height="140" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_PSS" value="name" /> +<TGConnectingPoint num="0" id="7103" /> +<TGConnectingPoint num="1" id="7104" /> +<TGConnectingPoint num="2" id="7105" /> +<TGConnectingPoint num="3" id="7106" /> +<TGConnectingPoint num="4" id="7107" /> +<TGConnectingPoint num="5" id="7108" /> +<TGConnectingPoint num="6" id="7109" /> +<TGConnectingPoint num="7" id="7110" /> +<TGConnectingPoint num="8" id="7111" /> +<TGConnectingPoint num="9" id="7112" /> +<TGConnectingPoint num="10" id="7113" /> +<TGConnectingPoint num="11" id="7114" /> +<TGConnectingPoint num="12" id="7115" /> +<TGConnectingPoint num="13" id="7116" /> +<TGConnectingPoint num="14" id="7117" /> +<TGConnectingPoint num="15" id="7118" /> +<TGConnectingPoint num="16" id="7119" /> +<TGConnectingPoint num="17" id="7120" /> +<TGConnectingPoint num="18" id="7121" /> +<TGConnectingPoint num="19" id="7122" /> +<TGConnectingPoint num="20" id="7123" /> +<TGConnectingPoint num="21" id="7124" /> +<TGConnectingPoint num="22" id="7125" /> +<TGConnectingPoint num="23" id="7126" /> +<extraparam> +<info stereotype="CPURR" nodeName="INTL_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="2" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="7102" > +<father id="7127" num="0" /> +<cdparam x="105" y="993" /> +<sizeparam width="189" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="45" minY="0" maxY="100" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Chip2Octet" /> +<TGConnectingPoint num="0" id="7094" /> +<TGConnectingPoint num="1" id="7095" /> +<TGConnectingPoint num="2" id="7096" /> +<TGConnectingPoint num="3" id="7097" /> +<TGConnectingPoint num="4" id="7098" /> +<TGConnectingPoint num="5" id="7099" /> +<TGConnectingPoint num="6" id="7100" /> +<TGConnectingPoint num="7" id="7101" /> +<extraparam> +<info value="Zigbee_TX::X_Chip2Octet" taskName="X_Chip2Octet" referenceTaskName="Zigbee_TX" priority="0" operation="Interleaver operation" fatherComponentMECType="2" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1102" id="7152" > +<cdparam x="231" y="832" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="INTL_Bus" value="name" /> +<TGConnectingPoint num="0" id="7128" /> +<TGConnectingPoint num="1" id="7129" /> +<TGConnectingPoint num="2" id="7130" /> +<TGConnectingPoint num="3" id="7131" /> +<TGConnectingPoint num="4" id="7132" /> +<TGConnectingPoint num="5" id="7133" /> +<TGConnectingPoint num="6" id="7134" /> +<TGConnectingPoint num="7" id="7135" /> +<TGConnectingPoint num="8" id="7136" /> +<TGConnectingPoint num="9" id="7137" /> +<TGConnectingPoint num="10" id="7138" /> +<TGConnectingPoint num="11" id="7139" /> +<TGConnectingPoint num="12" id="7140" /> +<TGConnectingPoint num="13" id="7141" /> +<TGConnectingPoint num="14" id="7142" /> +<TGConnectingPoint num="15" id="7143" /> +<TGConnectingPoint num="16" id="7144" /> +<TGConnectingPoint num="17" id="7145" /> +<TGConnectingPoint num="18" id="7146" /> +<TGConnectingPoint num="19" id="7147" /> +<TGConnectingPoint num="20" id="7148" /> +<TGConnectingPoint num="21" id="7149" /> +<TGConnectingPoint num="22" id="7150" /> +<TGConnectingPoint num="23" id="7151" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="INTL_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="7177" > +<cdparam x="231" y="447" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="ADAIF_Bus" value="name" /> +<TGConnectingPoint num="0" id="7153" /> +<TGConnectingPoint num="1" id="7154" /> +<TGConnectingPoint num="2" id="7155" /> +<TGConnectingPoint num="3" id="7156" /> +<TGConnectingPoint num="4" id="7157" /> +<TGConnectingPoint num="5" id="7158" /> +<TGConnectingPoint num="6" id="7159" /> +<TGConnectingPoint num="7" id="7160" /> +<TGConnectingPoint num="8" id="7161" /> +<TGConnectingPoint num="9" id="7162" /> +<TGConnectingPoint num="10" id="7163" /> +<TGConnectingPoint num="11" id="7164" /> +<TGConnectingPoint num="12" id="7165" /> +<TGConnectingPoint num="13" id="7166" /> +<TGConnectingPoint num="14" id="7167" /> +<TGConnectingPoint num="15" id="7168" /> +<TGConnectingPoint num="16" id="7169" /> +<TGConnectingPoint num="17" id="7170" /> +<TGConnectingPoint num="18" id="7171" /> +<TGConnectingPoint num="19" id="7172" /> +<TGConnectingPoint num="20" id="7173" /> +<TGConnectingPoint num="21" id="7174" /> +<TGConnectingPoint num="22" id="7175" /> +<TGConnectingPoint num="23" id="7176" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="ADAIF_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="7202" > +<cdparam x="1147" y="408" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_DMA" value="name" /> +<TGConnectingPoint num="0" id="7178" /> +<TGConnectingPoint num="1" id="7179" /> +<TGConnectingPoint num="2" id="7180" /> +<TGConnectingPoint num="3" id="7181" /> +<TGConnectingPoint num="4" id="7182" /> +<TGConnectingPoint num="5" id="7183" /> +<TGConnectingPoint num="6" id="7184" /> +<TGConnectingPoint num="7" id="7185" /> +<TGConnectingPoint num="8" id="7186" /> +<TGConnectingPoint num="9" id="7187" /> +<TGConnectingPoint num="10" id="7188" /> +<TGConnectingPoint num="11" id="7189" /> +<TGConnectingPoint num="12" id="7190" /> +<TGConnectingPoint num="13" id="7191" /> +<TGConnectingPoint num="14" id="7192" /> +<TGConnectingPoint num="15" id="7193" /> +<TGConnectingPoint num="16" id="7194" /> +<TGConnectingPoint num="17" id="7195" /> +<TGConnectingPoint num="18" id="7196" /> +<TGConnectingPoint num="19" id="7197" /> +<TGConnectingPoint num="20" id="7198" /> +<TGConnectingPoint num="21" id="7199" /> +<TGConnectingPoint num="22" id="7200" /> +<TGConnectingPoint num="23" id="7201" /> +<extraparam> +<info stereotype="CPURR" nodeName="FEP_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="7227" > +<cdparam x="895" y="193" /> +<sizeparam width="255" height="183" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_MSS" value="name" /> +<TGConnectingPoint num="0" id="7203" /> +<TGConnectingPoint num="1" id="7204" /> +<TGConnectingPoint num="2" id="7205" /> +<TGConnectingPoint num="3" id="7206" /> +<TGConnectingPoint num="4" id="7207" /> +<TGConnectingPoint num="5" id="7208" /> +<TGConnectingPoint num="6" id="7209" /> +<TGConnectingPoint num="7" id="7210" /> +<TGConnectingPoint num="8" id="7211" /> +<TGConnectingPoint num="9" id="7212" /> +<TGConnectingPoint num="10" id="7213" /> +<TGConnectingPoint num="11" id="7214" /> +<TGConnectingPoint num="12" id="7215" /> +<TGConnectingPoint num="13" id="7216" /> +<TGConnectingPoint num="14" id="7217" /> +<TGConnectingPoint num="15" id="7218" /> +<TGConnectingPoint num="16" id="7219" /> +<TGConnectingPoint num="17" id="7220" /> +<TGConnectingPoint num="18" id="7221" /> +<TGConnectingPoint num="19" id="7222" /> +<TGConnectingPoint num="20" id="7223" /> +<TGConnectingPoint num="21" id="7224" /> +<TGConnectingPoint num="22" id="7225" /> +<TGConnectingPoint num="23" id="7226" /> +<extraparam> +<info stereotype="MEMORY" nodeName="FEP_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="0" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="7279" > +<cdparam x="619" y="199" /> +<sizeparam width="238" height="185" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_PSS" value="name" /> +<TGConnectingPoint num="0" id="7255" /> +<TGConnectingPoint num="1" id="7256" /> +<TGConnectingPoint num="2" id="7257" /> +<TGConnectingPoint num="3" id="7258" /> +<TGConnectingPoint num="4" id="7259" /> +<TGConnectingPoint num="5" id="7260" /> +<TGConnectingPoint num="6" id="7261" /> +<TGConnectingPoint num="7" id="7262" /> +<TGConnectingPoint num="8" id="7263" /> +<TGConnectingPoint num="9" id="7264" /> +<TGConnectingPoint num="10" id="7265" /> +<TGConnectingPoint num="11" id="7266" /> +<TGConnectingPoint num="12" id="7267" /> +<TGConnectingPoint num="13" id="7268" /> +<TGConnectingPoint num="14" id="7269" /> +<TGConnectingPoint num="15" id="7270" /> +<TGConnectingPoint num="16" id="7271" /> +<TGConnectingPoint num="17" id="7272" /> +<TGConnectingPoint num="18" id="7273" /> +<TGConnectingPoint num="19" id="7274" /> +<TGConnectingPoint num="20" id="7275" /> +<TGConnectingPoint num="21" id="7276" /> +<TGConnectingPoint num="22" id="7277" /> +<TGConnectingPoint num="23" id="7278" /> +<extraparam> +<info stereotype="CPURR" nodeName="FEP_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="2" execcTime="1" clockRatio="1" MECType="1" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="7236" > +<father id="7279" num="0" /> +<cdparam x="639" y="239" /> +<sizeparam width="145" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="93" minY="0" maxY="145" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_CWL" /> +<TGConnectingPoint num="0" id="7228" /> +<TGConnectingPoint num="1" id="7229" /> +<TGConnectingPoint num="2" id="7230" /> +<TGConnectingPoint num="3" id="7231" /> +<TGConnectingPoint num="4" id="7232" /> +<TGConnectingPoint num="5" id="7233" /> +<TGConnectingPoint num="6" id="7234" /> +<TGConnectingPoint num="7" id="7235" /> +<extraparam> +<info value="Zigbee_TX::X_CWL" taskName="X_CWL" referenceTaskName="Zigbee_TX" priority="0" operation="CWL" fatherComponentMECType="1" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="7245" > +<father id="7279" num="1" /> +<cdparam x="640" y="335" /> +<sizeparam width="162" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="76" minY="0" maxY="145" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_Q" /> +<TGConnectingPoint num="0" id="7237" /> +<TGConnectingPoint num="1" id="7238" /> +<TGConnectingPoint num="2" id="7239" /> +<TGConnectingPoint num="3" id="7240" /> +<TGConnectingPoint num="4" id="7241" /> +<TGConnectingPoint num="5" id="7242" /> +<TGConnectingPoint num="6" id="7243" /> +<TGConnectingPoint num="7" id="7244" /> +<extraparam> +<info value="Zigbee_TX::X_CWP_Q" taskName="X_CWP_Q" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1101" id="7254" > +<father id="7279" num="2" /> +<cdparam x="671" y="289" /> +<sizeparam width="156" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="82" minY="0" maxY="145" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_CWP_I" /> +<TGConnectingPoint num="0" id="7246" /> +<TGConnectingPoint num="1" id="7247" /> +<TGConnectingPoint num="2" id="7248" /> +<TGConnectingPoint num="3" id="7249" /> +<TGConnectingPoint num="4" id="7250" /> +<TGConnectingPoint num="5" id="7251" /> +<TGConnectingPoint num="6" id="7252" /> +<TGConnectingPoint num="7" id="7253" /> +<extraparam> +<info value="Zigbee_TX::X_CWP_I" taskName="X_CWP_I" referenceTaskName="Zigbee_TX" priority="0" operation="CWP" fatherComponentMECType="1" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1106" id="7304" > +<cdparam x="910" y="531" /> +<sizeparam width="100" height="35" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_Bridge" value="name" /> +<TGConnectingPoint num="0" id="7280" /> +<TGConnectingPoint num="1" id="7281" /> +<TGConnectingPoint num="2" id="7282" /> +<TGConnectingPoint num="3" id="7283" /> +<TGConnectingPoint num="4" id="7284" /> +<TGConnectingPoint num="5" id="7285" /> +<TGConnectingPoint num="6" id="7286" /> +<TGConnectingPoint num="7" id="7287" /> +<TGConnectingPoint num="8" id="7288" /> +<TGConnectingPoint num="9" id="7289" /> +<TGConnectingPoint num="10" id="7290" /> +<TGConnectingPoint num="11" id="7291" /> +<TGConnectingPoint num="12" id="7292" /> +<TGConnectingPoint num="13" id="7293" /> +<TGConnectingPoint num="14" id="7294" /> +<TGConnectingPoint num="15" id="7295" /> +<TGConnectingPoint num="16" id="7296" /> +<TGConnectingPoint num="17" id="7297" /> +<TGConnectingPoint num="18" id="7298" /> +<TGConnectingPoint num="19" id="7299" /> +<TGConnectingPoint num="20" id="7300" /> +<TGConnectingPoint num="21" id="7301" /> +<TGConnectingPoint num="22" id="7302" /> +<TGConnectingPoint num="23" id="7303" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="FEP_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1102" id="7329" > +<cdparam x="835" y="433" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="FEP_Bus" value="name" /> +<TGConnectingPoint num="0" id="7305" /> +<TGConnectingPoint num="1" id="7306" /> +<TGConnectingPoint num="2" id="7307" /> +<TGConnectingPoint num="3" id="7308" /> +<TGConnectingPoint num="4" id="7309" /> +<TGConnectingPoint num="5" id="7310" /> +<TGConnectingPoint num="6" id="7311" /> +<TGConnectingPoint num="7" id="7312" /> +<TGConnectingPoint num="8" id="7313" /> +<TGConnectingPoint num="9" id="7314" /> +<TGConnectingPoint num="10" id="7315" /> +<TGConnectingPoint num="11" id="7316" /> +<TGConnectingPoint num="12" id="7317" /> +<TGConnectingPoint num="13" id="7318" /> +<TGConnectingPoint num="14" id="7319" /> +<TGConnectingPoint num="15" id="7320" /> +<TGConnectingPoint num="16" id="7321" /> +<TGConnectingPoint num="17" id="7322" /> +<TGConnectingPoint num="18" id="7323" /> +<TGConnectingPoint num="19" id="7324" /> +<TGConnectingPoint num="20" id="7325" /> +<TGConnectingPoint num="21" id="7326" /> +<TGConnectingPoint num="22" id="7327" /> +<TGConnectingPoint num="23" id="7328" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="FEP_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="7354" > +<cdparam x="1174" y="850" /> +<sizeparam width="150" height="100" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_DMA" value="name" /> +<TGConnectingPoint num="0" id="7330" /> +<TGConnectingPoint num="1" id="7331" /> +<TGConnectingPoint num="2" id="7332" /> +<TGConnectingPoint num="3" id="7333" /> +<TGConnectingPoint num="4" id="7334" /> +<TGConnectingPoint num="5" id="7335" /> +<TGConnectingPoint num="6" id="7336" /> +<TGConnectingPoint num="7" id="7337" /> +<TGConnectingPoint num="8" id="7338" /> +<TGConnectingPoint num="9" id="7339" /> +<TGConnectingPoint num="10" id="7340" /> +<TGConnectingPoint num="11" id="7341" /> +<TGConnectingPoint num="12" id="7342" /> +<TGConnectingPoint num="13" id="7343" /> +<TGConnectingPoint num="14" id="7344" /> +<TGConnectingPoint num="15" id="7345" /> +<TGConnectingPoint num="16" id="7346" /> +<TGConnectingPoint num="17" id="7347" /> +<TGConnectingPoint num="18" id="7348" /> +<TGConnectingPoint num="19" id="7349" /> +<TGConnectingPoint num="20" id="7350" /> +<TGConnectingPoint num="21" id="7351" /> +<TGConnectingPoint num="22" id="7352" /> +<TGConnectingPoint num="23" id="7353" /> +<extraparam> +<info stereotype="CPURR" nodeName="MAPPER_DMA" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="0" encryption="0"/> +</extraparam> +</COMPONENT> + +<COMPONENT type="1106" id="7379" > +<cdparam x="920" y="780" /> +<sizeparam width="100" height="51" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_Bridge" value="name" /> +<TGConnectingPoint num="0" id="7355" /> +<TGConnectingPoint num="1" id="7356" /> +<TGConnectingPoint num="2" id="7357" /> +<TGConnectingPoint num="3" id="7358" /> +<TGConnectingPoint num="4" id="7359" /> +<TGConnectingPoint num="5" id="7360" /> +<TGConnectingPoint num="6" id="7361" /> +<TGConnectingPoint num="7" id="7362" /> +<TGConnectingPoint num="8" id="7363" /> +<TGConnectingPoint num="9" id="7364" /> +<TGConnectingPoint num="10" id="7365" /> +<TGConnectingPoint num="11" id="7366" /> +<TGConnectingPoint num="12" id="7367" /> +<TGConnectingPoint num="13" id="7368" /> +<TGConnectingPoint num="14" id="7369" /> +<TGConnectingPoint num="15" id="7370" /> +<TGConnectingPoint num="16" id="7371" /> +<TGConnectingPoint num="17" id="7372" /> +<TGConnectingPoint num="18" id="7373" /> +<TGConnectingPoint num="19" id="7374" /> +<TGConnectingPoint num="20" id="7375" /> +<TGConnectingPoint num="21" id="7376" /> +<TGConnectingPoint num="22" id="7377" /> +<TGConnectingPoint num="23" id="7378" /> +<extraparam> +<info stereotype="BRIDGE" nodeName="MAPPER_Bridge" /> +<attributes bufferByteDataSize="4" clockRatio="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1105" id="7404" > +<cdparam x="1043" y="978" /> +<sizeparam width="314" height="125" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_MSS" value="name" /> +<TGConnectingPoint num="0" id="7380" /> +<TGConnectingPoint num="1" id="7381" /> +<TGConnectingPoint num="2" id="7382" /> +<TGConnectingPoint num="3" id="7383" /> +<TGConnectingPoint num="4" id="7384" /> +<TGConnectingPoint num="5" id="7385" /> +<TGConnectingPoint num="6" id="7386" /> +<TGConnectingPoint num="7" id="7387" /> +<TGConnectingPoint num="8" id="7388" /> +<TGConnectingPoint num="9" id="7389" /> +<TGConnectingPoint num="10" id="7390" /> +<TGConnectingPoint num="11" id="7391" /> +<TGConnectingPoint num="12" id="7392" /> +<TGConnectingPoint num="13" id="7393" /> +<TGConnectingPoint num="14" id="7394" /> +<TGConnectingPoint num="15" id="7395" /> +<TGConnectingPoint num="16" id="7396" /> +<TGConnectingPoint num="17" id="7397" /> +<TGConnectingPoint num="18" id="7398" /> +<TGConnectingPoint num="19" id="7399" /> +<TGConnectingPoint num="20" id="7400" /> +<TGConnectingPoint num="21" id="7401" /> +<TGConnectingPoint num="22" id="7402" /> +<TGConnectingPoint num="23" id="7403" /> +<extraparam> +<info stereotype="MEMORY" nodeName="MAPPER_MSS" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="1" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1100" id="7438" > +<cdparam x="759" y="981" /> +<sizeparam width="219" height="158" minWidth="150" minHeight="100" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_PSS" value="name" /> +<TGConnectingPoint num="0" id="7414" /> +<TGConnectingPoint num="1" id="7415" /> +<TGConnectingPoint num="2" id="7416" /> +<TGConnectingPoint num="3" id="7417" /> +<TGConnectingPoint num="4" id="7418" /> +<TGConnectingPoint num="5" id="7419" /> +<TGConnectingPoint num="6" id="7420" /> +<TGConnectingPoint num="7" id="7421" /> +<TGConnectingPoint num="8" id="7422" /> +<TGConnectingPoint num="9" id="7423" /> +<TGConnectingPoint num="10" id="7424" /> +<TGConnectingPoint num="11" id="7425" /> +<TGConnectingPoint num="12" id="7426" /> +<TGConnectingPoint num="13" id="7427" /> +<TGConnectingPoint num="14" id="7428" /> +<TGConnectingPoint num="15" id="7429" /> +<TGConnectingPoint num="16" id="7430" /> +<TGConnectingPoint num="17" id="7431" /> +<TGConnectingPoint num="18" id="7432" /> +<TGConnectingPoint num="19" id="7433" /> +<TGConnectingPoint num="20" id="7434" /> +<TGConnectingPoint num="21" id="7435" /> +<TGConnectingPoint num="22" id="7436" /> +<TGConnectingPoint num="23" id="7437" /> +<extraparam> +<info stereotype="CPURR" nodeName="MAPPER_PSS" /> +<attributes nbOfCores="1" byteDataSize="4" schedulingPolicy="0" sliceTime="10000" goIdleTime="10" maxConsecutiveIdleCycles="10" pipelineSize="5" taskSwitchingTime="20" branchingPredictionPenalty="2" cacheMiss="5" execiTime="1" execcTime="1" clockRatio="1" MECType="3" encryption="0"/> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1101" id="7413" > +<father id="7438" num="0" /> +<cdparam x="755" y="1028" /> +<sizeparam width="223" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="-4" minY="0" maxY="118" /> +<infoparam name="TGComponent" value="Zigbee_TX::X_Symbol2ChipSeq" /> +<TGConnectingPoint num="0" id="7405" /> +<TGConnectingPoint num="1" id="7406" /> +<TGConnectingPoint num="2" id="7407" /> +<TGConnectingPoint num="3" id="7408" /> +<TGConnectingPoint num="4" id="7409" /> +<TGConnectingPoint num="5" id="7410" /> +<TGConnectingPoint num="6" id="7411" /> +<TGConnectingPoint num="7" id="7412" /> +<extraparam> +<info value="Zigbee_TX::X_Symbol2ChipSeq" taskName="X_Symbol2ChipSeq" referenceTaskName="Zigbee_TX" priority="0" operation="Mapper operation" fatherComponentMECType="3" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1102" id="7463" > +<cdparam x="845" y="875" /> +<sizeparam width="250" height="50" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="MAPPER_Bus" value="name" /> +<TGConnectingPoint num="0" id="7439" /> +<TGConnectingPoint num="1" id="7440" /> +<TGConnectingPoint num="2" id="7441" /> +<TGConnectingPoint num="3" id="7442" /> +<TGConnectingPoint num="4" id="7443" /> +<TGConnectingPoint num="5" id="7444" /> +<TGConnectingPoint num="6" id="7445" /> +<TGConnectingPoint num="7" id="7446" /> +<TGConnectingPoint num="8" id="7447" /> +<TGConnectingPoint num="9" id="7448" /> +<TGConnectingPoint num="10" id="7449" /> +<TGConnectingPoint num="11" id="7450" /> +<TGConnectingPoint num="12" id="7451" /> +<TGConnectingPoint num="13" id="7452" /> +<TGConnectingPoint num="14" id="7453" /> +<TGConnectingPoint num="15" id="7454" /> +<TGConnectingPoint num="16" id="7455" /> +<TGConnectingPoint num="17" id="7456" /> +<TGConnectingPoint num="18" id="7457" /> +<TGConnectingPoint num="19" id="7458" /> +<TGConnectingPoint num="20" id="7459" /> +<TGConnectingPoint num="21" id="7460" /> +<TGConnectingPoint num="22" id="7461" /> +<TGConnectingPoint num="23" id="7462" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="MAPPER_Bus" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1108" id="7481" > +<cdparam x="103" y="1267" /> +<sizeparam width="419" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_Symbol2ChipSeq_Chips2Octet" value="CP0" /> +<TGConnectingPoint num="0" id="7473" /> +<TGConnectingPoint num="1" id="7474" /> +<TGConnectingPoint num="2" id="7475" /> +<TGConnectingPoint num="3" id="7476" /> +<TGConnectingPoint num="4" id="7477" /> +<TGConnectingPoint num="5" id="7478" /> +<TGConnectingPoint num="6" id="7479" /> +<TGConnectingPoint num="7" id="7480" /> +<extraparam> +<info stereotype="CP" nodeName="CP_Symbol2ChipSeq_Chips2Octet" cpMEC="Single DMA" transferType1="0" transferType2="0" /> +<attributes reference="DMA_transfer" /> +<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="MAPPER_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="INTL_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" /> +<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="MAPPER_DMA" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="MAPPER_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="Crossbar, INTL_Bridge, INTL_Bus, MAPPER_Bridge, MAPPER_Bus" /> +<mappedAttributes type="int" name="destinationAddress" value="123" /> +<mappedAttributes type="int" name="sourceAddress" value="123" /> +<mappedAttributes type="int" name="counter" value="123" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="7472" > +<father id="7481" num="0" /> +<cdparam x="292" y="1303" /> +<sizeparam width="212" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="207" minY="0" maxY="45" /> +<infoparam name="TGComponent" value="Zigbee_TX::chip2octet_ch_in" /> +<TGConnectingPoint num="0" id="7464" /> +<TGConnectingPoint num="1" id="7465" /> +<TGConnectingPoint num="2" id="7466" /> +<TGConnectingPoint num="3" id="7467" /> +<TGConnectingPoint num="4" id="7468" /> +<TGConnectingPoint num="5" id="7469" /> +<TGConnectingPoint num="6" id="7470" /> +<TGConnectingPoint num="7" id="7471" /> +<extraparam> +<info value="Zigbee_TX::chip2octet_ch_in" portName="chip2octet_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="INTL_MSS" bufferType="3" packedBinaryIn="" width="" bitInOffset="" inputOffset="" packedBinaryOut="" bitOutOffset="" outputOffset="" offsetPerm="" lengthPerm="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1108" id="7499" > +<cdparam x="105" y="1396" /> +<sizeparam width="405" height="88" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_Chip2Octet_CWL" value="CP0" /> +<TGConnectingPoint num="0" id="7491" /> +<TGConnectingPoint num="1" id="7492" /> +<TGConnectingPoint num="2" id="7493" /> +<TGConnectingPoint num="3" id="7494" /> +<TGConnectingPoint num="4" id="7495" /> +<TGConnectingPoint num="5" id="7496" /> +<TGConnectingPoint num="6" id="7497" /> +<TGConnectingPoint num="7" id="7498" /> +<extraparam> +<info stereotype="CP" nodeName="CP_Chip2Octet_CWL" cpMEC="Single DMA" transferType1="0" transferType2="0" /> +<attributes reference="DMA_transfer" /> +<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="INTL_DMA" /> +<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="INTL_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="FEP_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="INTL_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="Crossbar, INTL_Bridge, INTL_Bus, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, INTL_Bridge, INTL_Bus" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="7490" > +<father id="7499" num="0" /> +<cdparam x="327" y="1437" /> +<sizeparam width="164" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="241" minY="0" maxY="48" /> +<infoparam name="TGComponent" value="Zigbee_TX::cwl_ch_in" /> +<TGConnectingPoint num="0" id="7482" /> +<TGConnectingPoint num="1" id="7483" /> +<TGConnectingPoint num="2" id="7484" /> +<TGConnectingPoint num="3" id="7485" /> +<TGConnectingPoint num="4" id="7486" /> +<TGConnectingPoint num="5" id="7487" /> +<TGConnectingPoint num="6" id="7488" /> +<TGConnectingPoint num="7" id="7489" /> +<extraparam> +<info value="Zigbee_TX::cwl_ch_in" portName="cwl_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="FEP_MSS" bufferType="0" baseAddress="0x123" numSamples="1234" bank="0" dataType="int8" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1108" id="7517" > +<cdparam x="627" y="1252" /> +<sizeparam width="295" height="145" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_sink" value="CP0" /> +<TGConnectingPoint num="0" id="7509" /> +<TGConnectingPoint num="1" id="7510" /> +<TGConnectingPoint num="2" id="7511" /> +<TGConnectingPoint num="3" id="7512" /> +<TGConnectingPoint num="4" id="7513" /> +<TGConnectingPoint num="5" id="7514" /> +<TGConnectingPoint num="6" id="7515" /> +<TGConnectingPoint num="7" id="7516" /> +<extraparam> +<info stereotype="CP" nodeName="CP_sink" cpMEC="Double DMA" transferType1="0" transferType2="0" /> +<attributes reference="Double_DMA_transfer" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="FEP_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Src_Storage_Instance_2" architectureUnit="FEP_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="FEP_DMA" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="DMA_Controller_2" architectureUnit="FEP_DMA" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_2" architectureUnit="ADAIF_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="ADAIF_MSS" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="CPU_Controller_2" architectureUnit="MainCPU" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_6" architectureUnit="FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_5" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_8" architectureUnit="MainBus, MainBridge, Crossbar, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" /> +<mappingInfo CPname="Double_DMA_transfer" instanceName="Transfer_Instance_7" architectureUnit="ADAIF_Bridge, Crossbar, ADAIF_Bus, FEP_Bridge, FEP_Bus" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="7508" > +<father id="7517" num="0" /> +<cdparam x="701" y="1315" /> +<sizeparam width="170" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="125" minY="0" maxY="105" /> +<infoparam name="TGComponent" value="Zigbee_TX::sink_ch_in" /> +<TGConnectingPoint num="0" id="7500" /> +<TGConnectingPoint num="1" id="7501" /> +<TGConnectingPoint num="2" id="7502" /> +<TGConnectingPoint num="3" id="7503" /> +<TGConnectingPoint num="4" id="7504" /> +<TGConnectingPoint num="5" id="7505" /> +<TGConnectingPoint num="6" id="7506" /> +<TGConnectingPoint num="7" id="7507" /> +<extraparam> +<info value="Zigbee_TX::sink_ch_in" portName="sink_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="ADAIF_MSS" bufferType="2" numSamples="" baseAddress="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1108" id="7535" > +<cdparam x="106" y="1143" /> +<sizeparam width="421" height="85" minWidth="100" minHeight="50" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="1900" /> +<infoparam name="CP_Source_to_Bits2Symbol" value="CP0" /> +<TGConnectingPoint num="0" id="7527" /> +<TGConnectingPoint num="1" id="7528" /> +<TGConnectingPoint num="2" id="7529" /> +<TGConnectingPoint num="3" id="7530" /> +<TGConnectingPoint num="4" id="7531" /> +<TGConnectingPoint num="5" id="7532" /> +<TGConnectingPoint num="6" id="7533" /> +<TGConnectingPoint num="7" id="7534" /> +<extraparam> +<info stereotype="CP" nodeName="CP_Source_to_Bits2Symbol" cpMEC="Memory Copy" transferType1="0" transferType2="0" /> +<attributes reference="DMA_transfer" /> +<mappingInfo CPname="DMA_transfer" instanceName="Dst_Storage_Instance_1" architectureUnit="MAPPER_MSS" /> +<mappingInfo CPname="DMA_transfer" instanceName="DMA_Controller_1" architectureUnit="MAPPER_DMA" /> +<mappingInfo CPname="DMA_transfer" instanceName="CPU_Controller_1" architectureUnit="MainCPU" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_1" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_4" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_3" architectureUnit="MAPPER_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Transfer_Instance_2" architectureUnit="MainBus, MainBridge, Crossbar, MAPPER_Bridge, MAPPER_Bus" /> +<mappingInfo CPname="DMA_transfer" instanceName="Src_Storage_Instance_1" architectureUnit="ADAIF_MSS" /> +<mappedAttributes type="addr" name="sourceAddress" value="0x123" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1110" id="7526" > +<father id="7535" num="0" /> +<cdparam x="280" y="1181" /> +<sizeparam width="247" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="174" minY="0" maxY="45" /> +<infoparam name="TGComponent" value="Zigbee_TX::symbol2ChipSeq_ch_in" /> +<TGConnectingPoint num="0" id="7518" /> +<TGConnectingPoint num="1" id="7519" /> +<TGConnectingPoint num="2" id="7520" /> +<TGConnectingPoint num="3" id="7521" /> +<TGConnectingPoint num="4" id="7522" /> +<TGConnectingPoint num="5" id="7523" /> +<TGConnectingPoint num="6" id="7524" /> +<TGConnectingPoint num="7" id="7525" /> +<extraparam> +<info value="Zigbee_TX::symbol2ChipSeq_ch_in" portName="symbol2ChipSeq_ch_in" referenceCommunicationName="Zigbee_TX" typeName="port" mappedMemory="MAPPER_MSS" bufferType="1" numSamplesDataIn="" baseAddressDataIn="" bitsPerSymbolDataIn="" symmetricalValueDataIn="OFF" baseAddressDataOut="0x123" baseAddressLUT="0x123" /> +</extraparam> +</SUBCOMPONENT> + +<CONNECTOR type="125" id="7536" > +<cdparam x="1367" y="660" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1367" y="660" id="6997" /> +<P2 x="1076" y="660" id="7023" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7537" > +<cdparam x="1147" y="508" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1147" y="508" id="7183" /> +<P2 x="1076" y="635" id="7021" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7538" > +<cdparam x="1298" y="875" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1249" y="850" id="7331" /> +<P2 x="1076" y="685" id="7026" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7539" > +<cdparam x="1019" y="805" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="970" y="780" id="7356" /> +<P2 x="864" y="685" id="7034" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7540" > +<cdparam x="1004" y="531" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="960" y="566" id="7286" /> +<P2 x="864" y="635" id="7028" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7541" > +<cdparam x="1185" y="660" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1467" y="660" id="6998" /> +<P2 x="1527" y="660" id="6972" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7542" > +<cdparam x="356" y="788" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="788" id="7050" /> +<P2 x="356" y="832" id="7129" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7543" > +<cdparam x="554" y="806" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="560" y="807" id="6713" /> +<P2 x="442" y="685" id="7033" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7544" > +<cdparam x="559" y="863" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="560" y="857" id="6716" /> +<P2 x="481" y="857" id="7132" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7545" > +<cdparam x="586" y="970" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="541" y="949" id="7070" /> +<P2 x="418" y="882" id="7143" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7546" > +<cdparam x="165" y="927" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="208" y="938" id="7104" /> +<P2 x="293" y="882" id="7142" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7547" > +<cdparam x="355" y="576" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="580" id="6828" /> +<P2 x="231" y="635" id="7019" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7548" > +<cdparam x="355" y="541" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="545" id="6823" /> +<P2 x="356" y="497" id="7159" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7549" > +<cdparam x="543" y="522" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="543" y="522" id="6743" /> +<P2 x="442" y="635" id="7027" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7550" > +<cdparam x="536" y="475" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="543" y="472" id="6741" /> +<P2 x="481" y="472" id="7157" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7551" > +<cdparam x="549" y="337" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="454" y="395" id="6769" /> +<P2 x="418" y="447" id="7162" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7552" > +<cdparam x="155" y="323" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="155" y="396" id="6803" /> +<P2 x="293" y="447" id="7161" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7553" > +<cdparam x="357" y="778" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="356" y="737" id="7045" /> +<P2 x="231" y="685" id="7024" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7554" > +<cdparam x="1654" y="758" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1652" y="737" id="6848" /> +<P2 x="1652" y="685" id="6975" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7555" > +<cdparam x="1651" y="573" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1652" y="586" id="6950" /> +<P2 x="1652" y="635" id="6970" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7556" > +<cdparam x="959" y="527" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="960" y="531" id="7281" /> +<P2 x="960" y="483" id="7311" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7557" > +<cdparam x="1140" y="461" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1147" y="458" id="7181" /> +<P2 x="1085" y="458" id="7309" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7558" > +<cdparam x="1189" y="374" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1022" y="376" id="7209" /> +<P2 x="1022" y="433" id="7314" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7559" > +<cdparam x="795" y="360" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="738" y="384" id="7261" /> +<P2 x="897" y="433" id="7313" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7560" > +<cdparam x="970" y="831" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="970" y="831" id="7361" /> +<P2 x="970" y="875" id="7440" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7561" > +<cdparam x="1173" y="906" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1174" y="900" id="7333" /> +<P2 x="1095" y="900" id="7443" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7562" > +<cdparam x="1200" y="1013" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1200" y="978" id="7381" /> +<P2 x="1032" y="925" id="7454" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<CONNECTOR type="125" id="7563" > +<cdparam x="779" y="970" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="868" y="981" id="7415" /> +<P2 x="907" y="925" id="7453" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> + +</TMLArchiDiagramPanel> + +</Modeling> + + + + +</TURTLEGMODELING> \ No newline at end of file