diff --git a/modeling/DIPLODOCUS/SmartCardProtocol.xml b/modeling/DIPLODOCUS/SmartCardProtocol.xml index 2b63d09a41b2300e80d0fa29d6f4e5a5407e75c4..93f0174acc7e7e974e63f52e1532f66aaf807898 100755 --- a/modeling/DIPLODOCUS/SmartCardProtocol.xml +++ b/modeling/DIPLODOCUS/SmartCardProtocol.xml @@ -8,192 +8,192 @@ <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" /> +<P1 x="535" y="377" id="200" /> +<P2 x="455" y="323" id="47" /> <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" /> +<P1 x="402" y="84" id="49" /> +<P2 x="593" y="85" id="82" /> <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" /> +<P1 x="805" y="544" id="179" /> +<P2 x="971" y="481" id="107" /> <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" /> +<P1 x="805" y="512" id="181" /> +<P2 x="932" y="472" id="105" /> <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" /> +<P1 x="752" y="408" id="189" /> +<P2 x="844" y="363" id="150" /> <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" /> +<P1 x="844" y="389" id="154" /> +<P2 x="932" y="358" id="115" /> <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" /> +<P1 x="805" y="483" id="185" /> +<P2 x="932" y="449" id="113" /> <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" /> +<P1 x="805" y="451" id="183" /> +<P2 x="932" y="422" id="111" /> <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" /> +<P1 x="932" y="393" id="109" /> +<P2 x="805" y="422" id="187" /> <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" /> +<P1 x="932" y="323" id="117" /> +<P2 x="736" y="271" id="70" /> <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" /> +<P1 x="736" y="235" id="68" /> +<P2 x="932" y="284" id="119" /> <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" /> +<P1 x="736" y="191" id="66" /> +<P2 x="932" y="241" id="121" /> <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" /> +<P1 x="844" y="363" id="149" /> +<P2 x="736" y="302" id="64" /> <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" /> +<P1 x="535" y="291" id="74" /> +<P2 x="455" y="291" id="41" /> <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" /> +<P1 x="455" y="117" id="37" /> +<P2 x="535" y="117" id="62" /> <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" /> +<P1 x="455" y="203" id="43" /> +<P2 x="535" y="203" id="76" /> <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" /> +<P1 x="535" y="248" id="78" /> +<P2 x="455" y="248" id="45" /> <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" /> +<P1 x="536" y="323" id="80" /> +<P2 x="535" y="403" id="205" /> <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" /> +<P1 x="455" y="157" id="39" /> +<P2 x="535" y="157" id="72" /> <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" /> +<P1 x="932" y="191" id="123" /> +<P2 x="736" y="112" id="84" /> <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" /> +<P1 x="630" y="326" id="60" /> +<P2 x="671" y="408" id="177" /> <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" /> +<P1 x="1234" y="369" id="138" /> +<P2 x="1169" y="376" id="103" /> <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" /> +<P1 x="1169" y="411" id="101" /> +<P2 x="1234" y="404" id="136" /> <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" /> +<P1 x="1169" y="204" id="99" /> +<P2 x="1169" y="272" id="97" /> <Point x="1224" y="226" /> <Point x="1224" y="266" /> <AutomaticDrawing data="true" /> @@ -218,8 +218,8 @@ <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" /> +<P1 x="1169" y="451" id="95" /> +<P2 x="1234" y="432" id="134" /> <AutomaticDrawing data="true" /> </CONNECTOR> <COMPONENT type="1205" id="36" > @@ -267,14 +267,14 @@ </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" /> +<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="-13" maxX="278" minY="-13" maxY="264" /> -<infoparam name="TGComponent" value="Event reset, pTS" /> +<cdrectangleparam minX="-10" maxX="281" minY="-10" maxY="267" /> +<infoparam name="TGComponent" value="Request activation" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -284,16 +284,16 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="40" > <father id="59" num="1" /> -<cdparam x="442" y="323" /> +<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 answerToReset, pTSConfirm" /> +<infoparam name="TGComponent" value="Event data_Ready" /> <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" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> +<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" /> +<Type type="1" typeOther="" /> +<Type type="2" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -301,14 +301,14 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="42" > <father id="59" num="2" /> -<cdparam x="442" y="248" /> +<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="Channel fromSCtoD" /> +<infoparam name="TGComponent" value="Event data_Ready_SC" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -335,14 +335,14 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="46" > <father id="59" num="4" /> -<cdparam x="442" y="291" /> +<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="Event data_Ready_SC" /> +<infoparam name="TGComponent" value="Channel fromSCtoD" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -352,16 +352,16 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="48" > <father id="59" num="5" /> -<cdparam x="442" y="157" /> +<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 data_Ready" /> +<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" /> <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" /> -<Type type="1" typeOther="" /> -<Type type="2" typeOther="" /> +<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" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -369,14 +369,14 @@ </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" /> +<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="-10" maxX="281" minY="-10" maxY="267" /> -<infoparam name="TGComponent" value="Request activation" /> +<cdrectangleparam minX="-13" maxX="278" minY="-13" maxY="264" /> +<infoparam name="TGComponent" value="Event reset, pTS" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -403,61 +403,43 @@ <info hiddeni="false" /> </extraparam> </COMPONENT> -<SUBCOMPONENT type="1201" id="78" > +<SUBCOMPONENT type="1202" id="94" > <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" /> +<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="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" /> +<cdrectangleparam minX="0" maxX="735" minY="0" maxY="292" /> +<infoparam name="TGComponent" value="SmartCard" /> +<TGConnectingPoint num="0" id="86" /> +<TGConnectingPoint num="1" id="87" /> +<TGConnectingPoint num="2" id="88" /> +<TGConnectingPoint num="3" id="89" /> +<TGConnectingPoint num="4" id="90" /> +<TGConnectingPoint num="5" id="91" /> +<TGConnectingPoint num="6" id="92" /> +<TGConnectingPoint num="7" id="93" /> <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="80" > -<father id="101" num="0" /> -<cdparam x="742" y="408" /> +<SUBCOMPONENT type="1203" id="61" > +<father id="94" num="0" /> +<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="230" minY="-10" maxY="136" /> -<infoparam name="TGComponent" value="Request start_TCP_IP" /> -<TGConnectingPoint num="0" id="79" /> +<cdrectangleparam minX="-10" maxX="191" minY="-10" maxY="228" /> +<infoparam name="TGComponent" value="Request start_Application" /> +<TGConnectingPoint num="0" id="60" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -465,16 +447,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="82" > -<father id="101" num="1" /> -<cdparam x="795" y="422" /> +<SUBCOMPONENT type="1203" id="63" > +<father id="94" num="1" /> +<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="230" minY="-10" maxY="136" /> -<infoparam name="TGComponent" value="Channel fromTtoA" /> -<TGConnectingPoint num="0" id="81" /> +<cdrectangleparam minX="-10" maxX="191" minY="-10" maxY="228" /> +<infoparam name="TGComponent" value="Request activation" /> +<TGConnectingPoint num="0" id="62" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -482,16 +464,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="65" > +<father id="94" num="2" /> +<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="-10" maxX="230" minY="-10" maxY="136" /> -<infoparam name="TGComponent" value="Event send_TCP" /> -<TGConnectingPoint num="0" id="83" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Request start_TCP_IP" /> +<TGConnectingPoint num="0" id="64" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -499,16 +481,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="67" > +<father id="94" num="3" /> +<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="-10" maxX="230" minY="-10" maxY="136" /> -<infoparam name="TGComponent" value="Event open, abort, close" /> -<TGConnectingPoint num="0" id="85" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event receive" /> +<TGConnectingPoint num="0" id="66" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -516,16 +498,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="69" > +<father id="94" num="4" /> +<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="-10" maxX="230" minY="-10" maxY="136" /> -<infoparam name="TGComponent" value="Event receive_Application" /> -<TGConnectingPoint num="0" id="87" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Channel fromPtoT" /> +<TGConnectingPoint num="0" id="68" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -533,16 +515,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="71" > +<father id="94" num="5" /> +<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="-10" maxX="230" minY="-10" maxY="136" /> -<infoparam name="TGComponent" value="Channel fromAtoT" /> -<TGConnectingPoint num="0" id="89" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Channel fromTtoP" /> +<TGConnectingPoint num="0" id="70" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -550,98 +532,33 @@ <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" /> +<SUBCOMPONENT type="1203" id="73" > +<father id="94" 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="-10" maxX="230" minY="-10" maxY="136" /> -<infoparam name="TGComponent" value="Request start_Application" /> -<TGConnectingPoint num="0" id="91" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event data_Ready" /> +<TGConnectingPoint num="0" id="72" /> <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" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> +<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" /> +<Type type="1" typeOther="" /> +<Type type="2" 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" /> +<SUBCOMPONENT type="1203" id="75" > +<father id="94" num="7" /> +<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="-10" maxX="131" minY="-10" maxY="132" /> -<infoparam name="TGComponent" value="Event timeOut" /> -<TGConnectingPoint num="0" id="121" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event data_Ready_SC" /> +<TGConnectingPoint num="0" id="74" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -649,16 +566,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="77" > +<father id="94" num="8" /> +<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="-10" maxX="131" minY="-10" maxY="132" /> -<infoparam name="TGComponent" value="Request req_Timer" /> -<TGConnectingPoint num="0" id="123" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Channel fromDtoSC" /> +<TGConnectingPoint num="0" id="76" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -666,16 +583,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="79" > +<father id="94" num="9" /> +<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="-10" maxX="131" minY="-10" maxY="132" /> -<infoparam name="TGComponent" value="Event stop" /> -<TGConnectingPoint num="0" id="125" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Channel fromSCtoD" /> +<TGConnectingPoint num="0" id="78" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -683,42 +600,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="81" > +<father id="94" num="10" /> +<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="224" minY="-13" maxY="305" /> -<infoparam name="TGComponent" value="Event send" /> -<TGConnectingPoint num="0" id="136" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" /> +<TGConnectingPoint num="0" id="80" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -726,16 +617,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="139" > -<father id="174" num="1" /> -<cdparam x="919" y="241" /> +<SUBCOMPONENT type="1203" id="83" > +<father id="94" num="11" /> +<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="224" minY="-13" maxY="305" /> -<infoparam name="TGComponent" value="Event receive" /> -<TGConnectingPoint num="0" id="138" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event reset, pTS" /> +<TGConnectingPoint num="0" id="82" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -743,16 +634,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="141" > -<father id="174" num="2" /> -<cdparam x="919" y="284" /> +<SUBCOMPONENT type="1203" id="85" > +<father id="94" num="12" /> +<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="224" minY="-13" maxY="305" /> -<infoparam name="TGComponent" value="Channel fromPtoT" /> -<TGConnectingPoint num="0" id="140" /> +<cdrectangleparam minX="-13" maxX="188" minY="-13" maxY="225" /> +<infoparam name="TGComponent" value="Event send" /> +<TGConnectingPoint num="0" id="84" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -760,33 +651,61 @@ <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" /> +<SUBCOMPONENT type="1200" id="176" > +<father id="227" num="1" /> +<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="-13" maxX="224" minY="-13" maxY="305" /> -<infoparam name="TGComponent" value="Channel fromTtoP" /> -<TGConnectingPoint num="0" id="142" /> +<cdrectangleparam minX="0" maxX="366" minY="0" maxY="44" /> +<infoparam name="TGComponent" value="TCPIP Entities" /> +<TGConnectingPoint num="0" id="168" /> +<TGConnectingPoint num="1" id="169" /> +<TGConnectingPoint num="2" id="170" /> +<TGConnectingPoint num="3" id="171" /> +<TGConnectingPoint num="4" id="172" /> +<TGConnectingPoint num="5" id="173" /> +<TGConnectingPoint num="6" id="174" /> +<TGConnectingPoint num="7" id="175" /> <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" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> +<info hiddeni="false" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="145" > -<father id="174" num="4" /> -<cdparam x="922" y="358" /> +<SUBCOMPONENT type="1202" id="133" > +<father id="176" num="0" /> +<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="125" /> +<TGConnectingPoint num="1" id="126" /> +<TGConnectingPoint num="2" id="127" /> +<TGConnectingPoint num="3" id="128" /> +<TGConnectingPoint num="4" id="129" /> +<TGConnectingPoint num="5" id="130" /> +<TGConnectingPoint num="6" id="131" /> +<TGConnectingPoint num="7" id="132" /> +<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="96" > +<father id="133" num="0" /> +<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="Request start_TCP_IP" /> -<TGConnectingPoint num="0" id="144" /> +<infoparam name="TGComponent" value="Event stop" /> +<TGConnectingPoint num="0" id="95" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -794,16 +713,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="147" > -<father id="174" num="5" /> -<cdparam x="922" y="449" /> +<SUBCOMPONENT type="1203" id="98" > +<father id="133" num="1" /> +<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="Event send_TCP" /> -<TGConnectingPoint num="0" id="146" /> +<infoparam name="TGComponent" value="Channel temp" /> +<TGConnectingPoint num="0" id="97" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -811,16 +730,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="149" > -<father id="174" num="6" /> -<cdparam x="922" y="422" /> +<SUBCOMPONENT type="1203" id="100" > +<father id="133" num="2" /> +<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="Event open, abort, close" /> -<TGConnectingPoint num="0" id="148" /> +<infoparam name="TGComponent" value="Channel temp" /> +<TGConnectingPoint num="0" id="99" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -828,16 +747,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="151" > -<father id="174" num="7" /> -<cdparam x="922" y="393" /> +<SUBCOMPONENT type="1203" id="102" > +<father id="133" num="3" /> +<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="Channel fromTtoA" /> -<TGConnectingPoint num="0" id="150" /> +<infoparam name="TGComponent" value="Request req_Timer" /> +<TGConnectingPoint num="0" id="101" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -845,16 +764,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="153" > -<father id="174" num="8" /> -<cdparam x="961" y="481" /> +<SUBCOMPONENT type="1203" id="104" > +<father id="133" num="4" /> +<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="Channel fromAtoT" /> -<TGConnectingPoint num="0" id="152" /> +<infoparam name="TGComponent" value="Event timeOut" /> +<TGConnectingPoint num="0" id="103" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -862,14 +781,14 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="155" > -<father id="174" num="9" /> +<SUBCOMPONENT type="1203" id="106" > +<father id="133" num="5" /> <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" /> +<TGConnectingPoint num="0" id="105" /> <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" /> <Type type="0" typeOther="" /> @@ -879,16 +798,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="157" > -<father id="174" num="10" /> -<cdparam x="1159" y="376" /> +<SUBCOMPONENT type="1203" id="108" > +<father id="133" num="6" /> +<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="Event timeOut" /> -<TGConnectingPoint num="0" id="156" /> +<infoparam name="TGComponent" value="Channel fromAtoT" /> +<TGConnectingPoint num="0" id="107" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -896,16 +815,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="159" > -<father id="174" num="11" /> -<cdparam x="1159" y="411" /> +<SUBCOMPONENT type="1203" id="110" > +<father id="133" 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="Request req_Timer" /> -<TGConnectingPoint num="0" id="158" /> +<infoparam name="TGComponent" value="Channel fromTtoA" /> +<TGConnectingPoint num="0" id="109" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -913,16 +832,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="161" > -<father id="174" num="12" /> -<cdparam x="1159" y="204" /> +<SUBCOMPONENT type="1203" id="112" > +<father id="133" num="8" /> +<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="Channel temp" /> -<TGConnectingPoint num="0" id="160" /> +<infoparam name="TGComponent" value="Event open, abort, close" /> +<TGConnectingPoint num="0" id="111" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -930,16 +849,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="163" > -<father id="174" num="13" /> -<cdparam x="1159" y="272" /> +<SUBCOMPONENT type="1203" id="114" > +<father id="133" num="9" /> +<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="Channel temp" /> -<TGConnectingPoint num="0" id="162" /> +<infoparam name="TGComponent" value="Event send_TCP" /> +<TGConnectingPoint num="0" id="113" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -947,16 +866,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="165" > -<father id="174" num="14" /> -<cdparam x="1159" y="451" /> +<SUBCOMPONENT type="1203" id="116" > +<father id="133" num="10" /> +<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="Event stop" /> -<TGConnectingPoint num="0" id="164" /> +<infoparam name="TGComponent" value="Request start_TCP_IP" /> +<TGConnectingPoint num="0" id="115" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -964,43 +883,33 @@ <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" /> +<SUBCOMPONENT type="1203" id="118" > +<father id="133" num="11" /> +<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="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" /> +<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" /> +<infoparam name="TGComponent" value="Channel fromTtoP" /> +<TGConnectingPoint num="0" id="117" /> <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="" /> +<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" /> +<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="185" > -<father id="218" num="0" /> -<cdparam x="723" y="112" /> +<SUBCOMPONENT type="1203" id="120" > +<father id="133" num="12" /> +<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="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Event send" /> -<TGConnectingPoint num="0" id="184" /> +<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" /> +<infoparam name="TGComponent" value="Channel fromPtoT" /> +<TGConnectingPoint num="0" id="119" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1008,16 +917,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="187" > -<father id="218" num="1" /> -<cdparam x="580" y="85" /> +<SUBCOMPONENT type="1203" id="122" > +<father id="133" num="13" /> +<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="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Event reset, pTS" /> -<TGConnectingPoint num="0" id="186" /> +<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" /> +<infoparam name="TGComponent" value="Event receive" /> +<TGConnectingPoint num="0" id="121" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1025,16 +934,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="189" > -<father id="218" num="2" /> -<cdparam x="523" y="323" /> +<SUBCOMPONENT type="1203" id="124" > +<father id="133" num="14" /> +<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="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" /> -<TGConnectingPoint num="0" id="188" /> +<cdrectangleparam minX="-13" maxX="224" minY="-13" maxY="305" /> +<infoparam name="TGComponent" value="Event send" /> +<TGConnectingPoint num="0" id="123" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1042,16 +951,36 @@ <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" /> +<SUBCOMPONENT type="1202" id="148" > +<father id="176" 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="-13" maxX="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Channel fromSCtoD" /> -<TGConnectingPoint num="0" id="190" /> +<cdrectangleparam minX="0" maxX="429" minY="0" maxY="344" /> +<infoparam name="TGComponent" value="Timer" /> +<TGConnectingPoint num="0" id="140" /> +<TGConnectingPoint num="1" id="141" /> +<TGConnectingPoint num="2" id="142" /> +<TGConnectingPoint num="3" id="143" /> +<TGConnectingPoint num="4" id="144" /> +<TGConnectingPoint num="5" id="145" /> +<TGConnectingPoint num="6" id="146" /> +<TGConnectingPoint num="7" id="147" /> <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" /> +<Data isAttacker="No" /> +<Attribute access="2" id="x" value="0" type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="135" > +<father id="148" num="0" /> +<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="134" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1059,16 +988,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="137" > +<father id="148" 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="-13" maxX="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Channel fromDtoSC" /> -<TGConnectingPoint num="0" id="192" /> +<cdrectangleparam minX="-10" maxX="131" minY="-10" maxY="132" /> +<infoparam name="TGComponent" value="Request req_Timer" /> +<TGConnectingPoint num="0" id="136" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1076,16 +1005,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="139" > +<father id="148" num="2" /> +<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="-13" maxX="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Event data_Ready_SC" /> -<TGConnectingPoint num="0" id="194" /> +<cdrectangleparam minX="-10" maxX="131" minY="-10" maxY="132" /> +<infoparam name="TGComponent" value="Event timeOut" /> +<TGConnectingPoint num="0" id="138" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1093,33 +1022,78 @@ <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" /> +<SUBCOMPONENT type="1201" id="167" > +<father id="176" num="2" /> +<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="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Event data_Ready" /> -<TGConnectingPoint num="0" id="196" /> +<cdrectangleparam minX="-13" maxX="557" minY="-13" maxY="473" /> +<infoparam name="Composite port" value="" /> +<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" /> +<TGConnectingPoint num="15" id="164" /> +<TGConnectingPoint num="16" id="165" /> +<TGConnectingPoint num="17" id="166" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="199" > +<father id="227" num="2" /> +<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="191" /> +<TGConnectingPoint num="1" id="192" /> +<TGConnectingPoint num="2" id="193" /> +<TGConnectingPoint num="3" id="194" /> +<TGConnectingPoint num="4" id="195" /> +<TGConnectingPoint num="5" id="196" /> +<TGConnectingPoint num="6" id="197" /> +<TGConnectingPoint num="7" id="198" /> <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" /> -<Type type="1" typeOther="" /> -<Type type="2" typeOther="" /> +<Data isAttacker="No" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="178" > +<father id="199" num="0" /> +<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="177" /> +<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" /> +<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="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" /> +<SUBCOMPONENT type="1203" id="180" > +<father id="199" num="1" /> +<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="-13" maxX="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Channel fromTtoP" /> -<TGConnectingPoint num="0" id="198" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Channel fromAtoT" /> +<TGConnectingPoint num="0" id="179" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1127,16 +1101,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="182" > +<father id="199" num="2" /> +<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="-13" maxX="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Channel fromPtoT" /> -<TGConnectingPoint num="0" id="200" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Event receive_Application" /> +<TGConnectingPoint num="0" id="181" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1144,16 +1118,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="184" > +<father id="199" 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="-13" maxX="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Event receive" /> -<TGConnectingPoint num="0" id="202" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Event open, abort, close" /> +<TGConnectingPoint num="0" id="183" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1161,16 +1135,16 @@ <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" /> +<SUBCOMPONENT type="1203" id="186" > +<father id="199" num="4" /> +<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="-13" maxX="188" minY="-13" maxY="225" /> -<infoparam name="TGComponent" value="Request start_TCP_IP" /> -<TGConnectingPoint num="0" id="204" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Event send_TCP" /> +<TGConnectingPoint num="0" id="185" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1178,16 +1152,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="207" > -<father id="218" num="11" /> -<cdparam x="525" y="117" /> +<SUBCOMPONENT type="1203" id="188" > +<father id="199" num="5" /> +<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="191" minY="-10" maxY="228" /> -<infoparam name="TGComponent" value="Request activation" /> -<TGConnectingPoint num="0" id="206" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Channel fromTtoA" /> +<TGConnectingPoint num="0" id="187" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1195,16 +1169,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="209" > -<father id="218" num="12" /> -<cdparam x="620" y="326" /> +<SUBCOMPONENT type="1203" id="190" > +<father id="199" num="6" /> +<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="191" minY="-10" maxY="228" /> -<infoparam name="TGComponent" value="Request start_Application" /> -<TGConnectingPoint num="0" id="208" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="136" /> +<infoparam name="TGComponent" value="Request start_TCP_IP" /> +<TGConnectingPoint num="0" id="189" /> <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" /> +<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" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1212,6 +1186,32 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="218" > +<father id="227" num="3" /> +<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="200" /> +<TGConnectingPoint num="1" id="201" /> +<TGConnectingPoint num="2" id="202" /> +<TGConnectingPoint num="3" id="203" /> +<TGConnectingPoint num="4" id="204" /> +<TGConnectingPoint num="5" id="205" /> +<TGConnectingPoint num="6" id="206" /> +<TGConnectingPoint num="7" id="207" /> +<TGConnectingPoint num="8" id="208" /> +<TGConnectingPoint num="9" id="209" /> +<TGConnectingPoint num="10" id="210" /> +<TGConnectingPoint num="11" id="211" /> +<TGConnectingPoint num="12" id="212" /> +<TGConnectingPoint num="13" id="213" /> +<TGConnectingPoint num="14" id="214" /> +<TGConnectingPoint num="15" id="215" /> +<TGConnectingPoint num="16" id="216" /> +<TGConnectingPoint num="17" id="217" /> +</SUBCOMPONENT> </TMLComponentTaskDiagramPanel> @@ -1688,513 +1688,386 @@ </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" /> +<TMLActivityDiagramPanel name="Application" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1012" id="333" > +<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" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> -<infoparam name="start state" value="null" /> -<TGConnectingPoint num="0" id="326" /> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="329" /> +<TGConnectingPoint num="1" id="330" /> +<TGConnectingPoint num="2" id="331" /> +<TGConnectingPoint num="3" id="332" /> </COMPONENT> +<SUBCOMPONENT type="-1" id="326" > +<father id="333" 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="327" > +<father id="333" 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="328" > +<father id="333" 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="1010" id="330" > -<cdparam x="141" y="129" /> -<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1000" id="335" > +<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="wait event" value="reset() " /> -<TGConnectingPoint num="0" id="328" /> -<TGConnectingPoint num="1" id="329" /> -<extraparam> -<Data eventName="reset" nbOfParams="5" /> -</extraparam> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="334" /> </COMPONENT> -<COMPONENT type="1008" id="333" > -<cdparam x="113" y="182" /> -<sizeparam width="106" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1008" id="338" > +<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" /> <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" /> +<infoparam name="send event" value="open()" /> +<TGConnectingPoint num="0" id="336" /> +<TGConnectingPoint num="1" id="337" /> <extraparam> -<Data eventName="answerToReset" nbOfParams="5" /> +<Data eventName="open" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1010" id="336" > -<cdparam x="144" y="237" /> -<sizeparam width="44" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1006" id="341" > +<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" /> <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" /> +<infoparam name="write channel" value="fromAtoT(1)" /> +<TGConnectingPoint num="0" id="339" /> +<TGConnectingPoint num="1" id="340" /> <extraparam> -<Data eventName="pTS" nbOfParams="5" /> +<Data channelName="fromAtoT" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="339" > -<cdparam x="124" y="308" /> -<sizeparam width="85" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1008" id="344" > +<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" /> <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" /> +<infoparam name="send event" value="send_TCP()" /> +<TGConnectingPoint num="0" id="342" /> +<TGConnectingPoint num="1" id="343" /> <extraparam> -<Data eventName="pTSConfirm" nbOfParams="5" /> +<Data eventName="send_TCP" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="356" > -<cdparam x="376" y="98" /> -<sizeparam width="233" height="39" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1001" id="346" > +<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="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> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="345" /> </COMPONENT> -<COMPONENT type="1007" id="359" > -<cdparam x="254" y="97" /> -<sizeparam width="89" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1008" id="349" > +<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" /> <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" /> +<infoparam name="send event" value="abort()" /> +<TGConnectingPoint num="0" id="347" /> +<TGConnectingPoint num="1" id="348" /> <extraparam> -<Data requestName="start_TCP_IP" nbOfParams="5" /> +<Data eventName="abort" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1007" id="362" > -<cdparam x="241" y="148" /> -<sizeparam width="114" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1008" id="352" > +<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" /> <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" /> +<infoparam name="send event" value="close()" /> +<TGConnectingPoint num="0" id="350" /> +<TGConnectingPoint num="1" id="351" /> <extraparam> -<Data requestName="start_Application" nbOfParams="5" /> +<Data eventName="close" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="364" > -<cdparam x="515" y="428" /> +<COMPONENT type="1001" id="354" > +<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="363" /> +<TGConnectingPoint num="0" id="353" /> </COMPONENT> -<COMPONENT type="1008" id="367" > -<cdparam x="309" y="350" /> -<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 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> +<CONNECTOR type="115" id="355" > +<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="334" /> +<P2 x="508" y="124" id="336" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="356" > +<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="337" /> +<P2 x="508" y="173" id="339" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="357" > +<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="340" /> +<P2 x="507" y="221" id="342" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="358" > +<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="348" /> +<P2 x="586" y="383" id="345" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="359" > +<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="343" /> +<P2 x="506" y="267" id="329" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="360" > +<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="330" /> +<P2 x="432" y="332" id="350" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="361" > +<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="351" /> +<P2 x="432" y="381" id="353" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="362" > +<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="331" /> +<P2 x="586" y="324" id="347" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> -<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> +</TMLActivityDiagramPanel> -<COMPONENT type="1009" id="372" > -<cdparam x="321" y="308" /> -<sizeparam width="83" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<TMLActivityDiagramPanel name="Timer" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1012" id="370" > +<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" /> <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> +<infoparam name="choice" value="null" /> +<TGConnectingPoint num="0" id="366" /> +<TGConnectingPoint num="1" id="367" /> +<TGConnectingPoint num="2" id="368" /> +<TGConnectingPoint num="3" id="369" /> </COMPONENT> - -<COMPONENT type="1010" id="375" > -<cdparam x="337" y="264" /> -<sizeparam width="50" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="-1" id="363" > +<father id="370" 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="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="319" y="392" /> -<sizeparam width="87" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdrectangleparam minX="-75" maxX="-20" minY="10" maxY="35" /> +<infoparam name="guard 1" value="[ x==0 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="364" > +<father id="370" 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="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="496" y="350" /> -<sizeparam width="59" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdrectangleparam minX="35" maxX="55" minY="10" maxY="35" /> +<infoparam name="guard 2" value="[ x>0 ]" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="365" > +<father id="370" 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="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> +<cdrectangleparam minX="20" maxX="40" minY="45" maxY="70" /> +<infoparam name="guard 3" value="[ ]" /> +</SUBCOMPONENT> -<COMPONENT type="1009" id="384" > -<cdparam x="480" y="311" /> -<sizeparam width="91" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1000" id="372" > +<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="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> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="371" /> </COMPONENT> -<COMPONENT type="1006" id="387" > -<cdparam x="486" y="387" /> -<sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1001" id="374" > +<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="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> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="373" /> </COMPONENT> -<COMPONENT type="1010" id="390" > -<cdparam x="470" y="268" /> -<sizeparam width="110" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1008" id="377" > +<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" /> <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 /> +<infoparam name="send event" value="timeOut()" /> +<TGConnectingPoint num="0" id="375" /> +<TGConnectingPoint num="1" id="376" /> <extraparam> -<Data eventName="data_Ready" nbOfParams="5" /> -<Param index="0" value="t" /> -<Param index="1" value="b" /> +<Data eventName="timeOut" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1014" id="394" > -<cdparam x="236" y="202" /> -<sizeparam width="125" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1010" id="380" > +<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" /> <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" /> +<infoparam name="wait event" value="stop() " /> +<TGConnectingPoint num="0" id="378" /> +<TGConnectingPoint num="1" id="379" /> <extraparam> -<Data init="j=0" condition="x==0" increment="j = j" /> +<Data eventName="stop" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="396" > -<cdparam x="297" y="231" /> +<COMPONENT type="1001" id="382" > +<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="395" /> +<TGConnectingPoint num="0" id="381" /> </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" /> +<COMPONENT type="1017" id="385" > +<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" /> <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> +<infoparam name="notified event" value="x=?stop()" /> +<TGConnectingPoint num="0" id="383" /> +<TGConnectingPoint num="1" id="384" /> +<extraparam> +<Data eventName="stop" variable="x" /> +</extraparam> +</COMPONENT> -<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" /> +<CONNECTOR type="115" id="386" > +<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 for loop to stop state" value="null" /> -<P1 x="298" y="227" id="393" /> -<P2 x="307" y="226" id="395" /> +<infoparam name="connector from send event to stop state" value="null" /> +<P1 x="427" y="324" id="376" /> +<P2 x="427" y="362" id="373" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="426" > -<cdparam x="395" y="283" /> +<CONNECTOR type="115" id="387" > +<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 select to wait event" value="null" /> -<P1 x="399" y="241" id="398" /> -<P2 x="362" y="259" id="373" /> +<infoparam name="connector from wait event to stop state" value="null" /> +<P1 x="622" y="325" id="379" /> +<P2 x="622" y="360" id="381" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="427" > -<cdparam x="543" y="341" /> +<CONNECTOR type="115" id="388" > +<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 select to wait event" value="null" /> -<P1 x="479" y="241" id="399" /> -<P2 x="525" y="263" id="388" /> +<infoparam name="connector from start state to notified event" value="null" /> +<P1 x="524" y="107" id="371" /> +<P2 x="524" y="145" id="383" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="428" > -<cdparam x="391" y="282" /> +<CONNECTOR type="115" id="389" > +<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 for loop to select" value="null" /> -<P1 x="361" y="216" id="392" /> -<P2 x="439" y="216" id="397" /> +<infoparam name="connector from notified event to choice" value="null" /> +<P1 x="524" y="175" id="384" /> +<P2 x="524" y="212" id="366" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="429" > -<cdparam x="164" y="262" /> +<CONNECTOR type="115" id="390" > +<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 wait event to send event" value="null" /> -<P1 x="166" y="262" id="335" /> -<P2 x="166" y="303" id="337" /> +<infoparam name="connector from choice to send event" value="null" /> +<P1 x="484" y="237" id="367" /> +<P2 x="427" y="294" id="375" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="430" > -<cdparam x="166" y="207" /> +<CONNECTOR type="115" id="391" > +<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 send event to wait event" value="null" /> -<P1 x="166" y="207" id="332" /> -<P2 x="166" y="232" id="334" /> +<infoparam name="connector from choice to wait event" value="null" /> +<P1 x="564" y="237" id="368" /> +<P2 x="622" y="295" id="378" /> <AutomaticDrawing data="true" /> </CONNECTOR> </TMLActivityDiagramPanel> <TMLActivityDiagramPanel name="TCPIP" minX="10" maxX="2900" minY="10" maxY="1900" > -<COMPONENT type="1012" id="438" > +<COMPONENT type="1012" id="399" > <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" /> <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" /> +<TGConnectingPoint num="0" id="395" /> +<TGConnectingPoint num="1" id="396" /> +<TGConnectingPoint num="2" id="397" /> +<TGConnectingPoint num="3" id="398" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="431" > -<father id="438" num="0" /> +<SUBCOMPONENT type="-1" id="392" > +<father id="399" num="0" /> <cdparam x="2061" y="1388" /> <sizeparam width="12" 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" /> +<SUBCOMPONENT type="-1" id="393" > +<father id="399" num="1" /> <cdparam x="2121" y="1388" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="394" > +<father id="399" num="2" /> <cdparam x="2106" y="1426" /> <sizeparam width="124" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2202,35 +2075,35 @@ the smart card and the terminal <infoparam name="guard 3" value="[ tcpctrl.state ==10 ]" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="446" > +<COMPONENT type="1012" id="407" > <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" /> <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" /> +<TGConnectingPoint num="0" id="403" /> +<TGConnectingPoint num="1" id="404" /> +<TGConnectingPoint num="2" id="405" /> +<TGConnectingPoint num="3" id="406" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="439" > -<father id="446" num="0" /> +<SUBCOMPONENT type="-1" id="400" > +<father id="407" num="0" /> <cdparam x="2212" y="961" /> <sizeparam width="116" 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" /> +<SUBCOMPONENT type="-1" id="401" > +<father id="407" num="1" /> <cdparam x="2297" y="961" /> <sizeparam width="116" 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" /> +<SUBCOMPONENT type="-1" id="402" > +<father id="407" num="2" /> <cdparam x="2282" y="996" /> <sizeparam width="39" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2238,35 +2111,35 @@ the smart card and the terminal <infoparam name="guard 3" value="[ else ]" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="454" > +<COMPONENT type="1012" id="415" > <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" /> <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" /> +<TGConnectingPoint num="0" id="411" /> +<TGConnectingPoint num="1" id="412" /> +<TGConnectingPoint num="2" id="413" /> +<TGConnectingPoint num="3" id="414" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="447" > -<father id="454" num="0" /> +<SUBCOMPONENT type="-1" id="408" > +<father id="415" num="0" /> <cdparam x="1934" y="1356" /> <sizeparam width="116" 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" /> +<SUBCOMPONENT type="-1" id="409" > +<father id="415" num="1" /> <cdparam x="2016" y="1356" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="410" > +<father id="415" num="2" /> <cdparam x="2001" y="1391" /> <sizeparam width="120" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2274,35 +2147,35 @@ the smart card and the terminal <infoparam name="guard 3" value="[ tcpctrl.state == 7 ]" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="462" > +<COMPONENT type="1012" id="423" > <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" /> <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" /> +<TGConnectingPoint num="0" id="419" /> +<TGConnectingPoint num="1" id="420" /> +<TGConnectingPoint num="2" id="421" /> +<TGConnectingPoint num="3" id="422" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="455" > -<father id="462" num="0" /> +<SUBCOMPONENT type="-1" id="416" > +<father id="423" num="0" /> <cdparam x="1762" y="1279" /> <sizeparam width="116" 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" /> +<SUBCOMPONENT type="-1" id="417" > +<father id="423" num="1" /> <cdparam x="1846" y="1279" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="418" > +<father id="423" num="2" /> <cdparam x="1831" y="1314" /> <sizeparam width="116" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2310,35 +2183,35 @@ the smart card and the terminal <infoparam name="guard 3" value="[ tcpctrl.state ==2 ]" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="470" > +<COMPONENT type="1012" id="431" > <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" /> <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" /> +<TGConnectingPoint num="0" id="427" /> +<TGConnectingPoint num="1" id="428" /> +<TGConnectingPoint num="2" id="429" /> +<TGConnectingPoint num="3" id="430" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="463" > -<father id="470" num="0" /> +<SUBCOMPONENT type="-1" id="424" > +<father id="431" num="0" /> <cdparam x="1691" y="1151" /> <sizeparam width="12" 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" /> +<SUBCOMPONENT type="-1" id="425" > +<father id="431" num="1" /> <cdparam x="1751" y="1151" /> <sizeparam width="12" 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" /> +<SUBCOMPONENT type="-1" id="426" > +<father id="431" num="2" /> <cdparam x="1736" y="1186" /> <sizeparam width="12" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2346,17 +2219,17 @@ the smart card and the terminal <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="474" > +<COMPONENT type="1013" id="435" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="472" /> -<TGConnectingPoint num="1" id="473" /> +<TGConnectingPoint num="0" id="433" /> +<TGConnectingPoint num="1" id="434" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="471" > -<father id="474" num="0" /> +<SUBCOMPONENT type="-1" id="432" > +<father id="435" 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" /> @@ -2364,17 +2237,17 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="478" > +<COMPONENT type="1013" id="439" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="476" /> -<TGConnectingPoint num="1" id="477" /> +<TGConnectingPoint num="0" id="437" /> +<TGConnectingPoint num="1" id="438" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="475" > -<father id="478" num="0" /> +<SUBCOMPONENT type="-1" id="436" > +<father id="439" 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" /> @@ -2382,35 +2255,35 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="486" > +<COMPONENT type="1012" id="447" > <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" /> <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" /> +<TGConnectingPoint num="0" id="443" /> +<TGConnectingPoint num="1" id="444" /> +<TGConnectingPoint num="2" id="445" /> +<TGConnectingPoint num="3" id="446" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="479" > -<father id="486" num="0" /> +<SUBCOMPONENT type="-1" id="440" > +<father id="447" num="0" /> <cdparam x="1542" y="1016" /> <sizeparam width="124" 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" /> +<SUBCOMPONENT type="-1" id="441" > +<father id="447" num="1" /> <cdparam x="1627" y="1016" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="442" > +<father id="447" num="2" /> <cdparam x="1612" y="1051" /> <sizeparam width="12" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2418,35 +2291,35 @@ the smart card and the terminal <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="494" > +<COMPONENT type="1012" id="455" > <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" /> <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" /> +<TGConnectingPoint num="0" id="451" /> +<TGConnectingPoint num="1" id="452" /> +<TGConnectingPoint num="2" id="453" /> +<TGConnectingPoint num="3" id="454" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="487" > -<father id="494" num="0" /> +<SUBCOMPONENT type="-1" id="448" > +<father id="455" num="0" /> <cdparam x="1688" y="885" /> <sizeparam width="12" 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" /> +<SUBCOMPONENT type="-1" id="449" > +<father id="455" num="1" /> <cdparam x="1748" y="885" /> <sizeparam width="12" 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" /> +<SUBCOMPONENT type="-1" id="450" > +<father id="455" num="2" /> <cdparam x="1733" y="920" /> <sizeparam width="12" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2454,17 +2327,17 @@ the smart card and the terminal <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="498" > +<COMPONENT type="1013" id="459" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="496" /> -<TGConnectingPoint num="1" id="497" /> +<TGConnectingPoint num="0" id="457" /> +<TGConnectingPoint num="1" id="458" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="495" > -<father id="498" num="0" /> +<SUBCOMPONENT type="-1" id="456" > +<father id="459" 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" /> @@ -2472,17 +2345,17 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="502" > +<COMPONENT type="1013" id="463" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="500" /> -<TGConnectingPoint num="1" id="501" /> +<TGConnectingPoint num="0" id="461" /> +<TGConnectingPoint num="1" id="462" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="499" > -<father id="502" num="0" /> +<SUBCOMPONENT type="-1" id="460" > +<father id="463" 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" /> @@ -2490,17 +2363,17 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="506" > +<COMPONENT type="1013" id="467" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="504" /> -<TGConnectingPoint num="1" id="505" /> +<TGConnectingPoint num="0" id="465" /> +<TGConnectingPoint num="1" id="466" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="503" > -<father id="506" num="0" /> +<SUBCOMPONENT type="-1" id="464" > +<father id="467" 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" /> @@ -2508,35 +2381,35 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="514" > +<COMPONENT type="1012" id="475" > <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" /> <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" /> +<TGConnectingPoint num="0" id="471" /> +<TGConnectingPoint num="1" id="472" /> +<TGConnectingPoint num="2" id="473" /> +<TGConnectingPoint num="3" id="474" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="507" > -<father id="514" num="0" /> +<SUBCOMPONENT type="-1" id="468" > +<father id="475" num="0" /> <cdparam x="1168" y="1030" /> <sizeparam width="12" 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" /> +<SUBCOMPONENT type="-1" id="469" > +<father id="475" num="1" /> <cdparam x="1228" y="1030" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="470" > +<father id="475" num="2" /> <cdparam x="1213" y="1065" /> <sizeparam width="116" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2544,17 +2417,17 @@ the smart card and the terminal <infoparam name="guard 3" value="[ tcpctrl.state ==6 ]" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="518" > +<COMPONENT type="1013" id="479" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="516" /> -<TGConnectingPoint num="1" id="517" /> +<TGConnectingPoint num="0" id="477" /> +<TGConnectingPoint num="1" id="478" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="515" > -<father id="518" num="0" /> +<SUBCOMPONENT type="-1" id="476" > +<father id="479" 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" /> @@ -2562,35 +2435,35 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="526" > +<COMPONENT type="1012" id="487" > <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" /> <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" /> +<TGConnectingPoint num="0" id="483" /> +<TGConnectingPoint num="1" id="484" /> +<TGConnectingPoint num="2" id="485" /> +<TGConnectingPoint num="3" id="486" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="519" > -<father id="526" num="0" /> +<SUBCOMPONENT type="-1" id="480" > +<father id="487" num="0" /> <cdparam x="514" y="722" /> <sizeparam width="120" 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" /> +<SUBCOMPONENT type="-1" id="481" > +<father id="487" num="1" /> <cdparam x="592" y="722" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="482" > +<father id="487" num="2" /> <cdparam x="577" y="757" /> <sizeparam width="12" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2598,17 +2471,17 @@ the smart card and the terminal <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="530" > +<COMPONENT type="1013" id="491" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="528" /> -<TGConnectingPoint num="1" id="529" /> +<TGConnectingPoint num="0" id="489" /> +<TGConnectingPoint num="1" id="490" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="527" > -<father id="530" num="0" /> +<SUBCOMPONENT type="-1" id="488" > +<father id="491" 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" /> @@ -2616,17 +2489,17 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="534" > +<COMPONENT type="1013" id="495" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="532" /> -<TGConnectingPoint num="1" id="533" /> +<TGConnectingPoint num="0" id="493" /> +<TGConnectingPoint num="1" id="494" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="531" > -<father id="534" num="0" /> +<SUBCOMPONENT type="-1" id="492" > +<father id="495" 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" /> @@ -2634,35 +2507,35 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="542" > +<COMPONENT type="1012" id="503" > <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" /> <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" /> +<TGConnectingPoint num="0" id="499" /> +<TGConnectingPoint num="1" id="500" /> +<TGConnectingPoint num="2" id="501" /> +<TGConnectingPoint num="3" id="502" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="535" > -<father id="542" num="0" /> +<SUBCOMPONENT type="-1" id="496" > +<father id="503" num="0" /> <cdparam x="989" y="949" /> <sizeparam width="116" 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" /> +<SUBCOMPONENT type="-1" id="497" > +<father id="503" num="1" /> <cdparam x="1070" y="949" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="498" > +<father id="503" num="2" /> <cdparam x="1054" y="984" /> <sizeparam width="116" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2670,17 +2543,17 @@ the smart card and the terminal <infoparam name="guard 3" value="[ tcpctrl.state == 5]" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="546" > +<COMPONENT type="1013" id="507" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="544" /> -<TGConnectingPoint num="1" id="545" /> +<TGConnectingPoint num="0" id="505" /> +<TGConnectingPoint num="1" id="506" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="543" > -<father id="546" num="0" /> +<SUBCOMPONENT type="-1" id="504" > +<father id="507" 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" /> @@ -2688,35 +2561,35 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="554" > +<COMPONENT type="1012" id="515" > <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" /> <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" /> +<TGConnectingPoint num="0" id="511" /> +<TGConnectingPoint num="1" id="512" /> +<TGConnectingPoint num="2" id="513" /> +<TGConnectingPoint num="3" id="514" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="547" > -<father id="554" num="0" /> +<SUBCOMPONENT type="-1" id="508" > +<father id="515" num="0" /> <cdparam x="753" y="885" /> <sizeparam width="116" 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" /> +<SUBCOMPONENT type="-1" id="509" > +<father id="515" num="1" /> <cdparam x="863" y="879" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="510" > +<father id="515" num="2" /> <cdparam x="848" y="914" /> <sizeparam width="112" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2724,17 +2597,17 @@ the smart card and the terminal <infoparam name="guard 3" value="[ tcpctrl.state==0 ]" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="558" > +<COMPONENT type="1013" id="519" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="556" /> -<TGConnectingPoint num="1" id="557" /> +<TGConnectingPoint num="0" id="517" /> +<TGConnectingPoint num="1" id="518" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="555" > -<father id="558" num="0" /> +<SUBCOMPONENT type="-1" id="516" > +<father id="519" 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" /> @@ -2742,17 +2615,17 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="562" > +<COMPONENT type="1013" id="523" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="560" /> -<TGConnectingPoint num="1" id="561" /> +<TGConnectingPoint num="0" id="521" /> +<TGConnectingPoint num="1" id="522" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="559" > -<father id="562" num="0" /> +<SUBCOMPONENT type="-1" id="520" > +<father id="523" 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" /> @@ -2760,35 +2633,35 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="570" > +<COMPONENT type="1012" id="531" > <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" /> <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" /> +<TGConnectingPoint num="0" id="527" /> +<TGConnectingPoint num="1" id="528" /> +<TGConnectingPoint num="2" id="529" /> +<TGConnectingPoint num="3" id="530" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="563" > -<father id="570" num="0" /> +<SUBCOMPONENT type="-1" id="524" > +<father id="531" num="0" /> <cdparam x="949" y="793" /> <sizeparam width="12" 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" /> +<SUBCOMPONENT type="-1" id="525" > +<father id="531" num="1" /> <cdparam x="1028" y="790" /> <sizeparam width="12" 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" /> +<SUBCOMPONENT type="-1" id="526" > +<father id="531" num="2" /> <cdparam x="1013" y="825" /> <sizeparam width="12" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2796,17 +2669,17 @@ the smart card and the terminal <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="574" > +<COMPONENT type="1013" id="535" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="572" /> -<TGConnectingPoint num="1" id="573" /> +<TGConnectingPoint num="0" id="533" /> +<TGConnectingPoint num="1" id="534" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="571" > -<father id="574" num="0" /> +<SUBCOMPONENT type="-1" id="532" > +<father id="535" 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" /> @@ -2814,17 +2687,17 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="578" > +<COMPONENT type="1013" id="539" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="576" /> -<TGConnectingPoint num="1" id="577" /> +<TGConnectingPoint num="0" id="537" /> +<TGConnectingPoint num="1" id="538" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="575" > -<father id="578" num="0" /> +<SUBCOMPONENT type="-1" id="536" > +<father id="539" 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" /> @@ -2832,17 +2705,17 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="582" > +<COMPONENT type="1013" id="543" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="580" /> -<TGConnectingPoint num="1" id="581" /> +<TGConnectingPoint num="0" id="541" /> +<TGConnectingPoint num="1" id="542" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="579" > -<father id="582" num="0" /> +<SUBCOMPONENT type="-1" id="540" > +<father id="543" 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" /> @@ -2850,17 +2723,17 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1013" id="586" > +<COMPONENT type="1013" id="547" > <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" /> <cdrectangleparam minX="10" maxX="2900" minY="10" maxY="1900" /> <infoparam name="execI" value="null" /> -<TGConnectingPoint num="0" id="584" /> -<TGConnectingPoint num="1" id="585" /> +<TGConnectingPoint num="0" id="545" /> +<TGConnectingPoint num="1" id="546" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="583" > -<father id="586" num="0" /> +<SUBCOMPONENT type="-1" id="544" > +<father id="547" 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" /> @@ -2868,35 +2741,35 @@ the smart card and the terminal <infoparam name="value of the delay" value="b" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="594" > +<COMPONENT type="1012" id="555" > <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" /> <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" /> +<TGConnectingPoint num="0" id="551" /> +<TGConnectingPoint num="1" id="552" /> +<TGConnectingPoint num="2" id="553" /> +<TGConnectingPoint num="3" id="554" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="587" > -<father id="594" num="0" /> +<SUBCOMPONENT type="-1" id="548" > +<father id="555" num="0" /> <cdparam x="98" y="496" /> <sizeparam width="112" 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" /> +<SUBCOMPONENT type="-1" id="549" > +<father id="555" num="1" /> <cdparam x="208" y="496" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="550" > +<father id="555" num="2" /> <cdparam x="193" y="531" /> <sizeparam width="12" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2904,35 +2777,35 @@ the smart card and the terminal <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="602" > +<COMPONENT type="1012" id="563" > <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" /> <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" /> +<TGConnectingPoint num="0" id="559" /> +<TGConnectingPoint num="1" id="560" /> +<TGConnectingPoint num="2" id="561" /> +<TGConnectingPoint num="3" id="562" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="595" > -<father id="602" num="0" /> +<SUBCOMPONENT type="-1" id="556" > +<father id="563" num="0" /> <cdparam x="317" y="202" /> <sizeparam width="81" 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" /> +<SUBCOMPONENT type="-1" id="557" > +<father id="563" num="1" /> <cdparam x="394" y="202" /> <sizeparam width="91" 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" /> +<SUBCOMPONENT type="-1" id="558" > +<father id="563" num="2" /> <cdparam x="379" y="237" /> <sizeparam width="12" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2940,35 +2813,35 @@ the smart card and the terminal <infoparam name="guard 3" value="[ ]" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="610" > +<COMPONENT type="1012" id="571" > <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" /> <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" /> +<TGConnectingPoint num="0" id="567" /> +<TGConnectingPoint num="1" id="568" /> +<TGConnectingPoint num="2" id="569" /> +<TGConnectingPoint num="3" id="570" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="603" > -<father id="610" num="0" /> +<SUBCOMPONENT type="-1" id="564" > +<father id="571" num="0" /> <cdparam x="398" y="592" /> <sizeparam width="116" 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" /> +<SUBCOMPONENT type="-1" id="565" > +<father id="571" num="1" /> <cdparam x="500" y="599" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="566" > +<father id="571" num="2" /> <cdparam x="469" y="627" /> <sizeparam width="252" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -2976,35 +2849,35 @@ the smart card and the terminal <infoparam name="guard 3" value="[ (tcpctrl.state ==2) or (tcpctrl.state ==4) ]" /> </SUBCOMPONENT> -<COMPONENT type="1012" id="618" > +<COMPONENT type="1012" id="579" > <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" /> <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" /> +<TGConnectingPoint num="0" id="575" /> +<TGConnectingPoint num="1" id="576" /> +<TGConnectingPoint num="2" id="577" /> +<TGConnectingPoint num="3" id="578" /> </COMPONENT> -<SUBCOMPONENT type="-1" id="611" > -<father id="618" num="0" /> +<SUBCOMPONENT type="-1" id="572" > +<father id="579" num="0" /> <cdparam x="228" y="574" /> <sizeparam width="116" 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" /> +<SUBCOMPONENT type="-1" id="573" > +<father id="579" num="1" /> <cdparam x="317" y="584" /> <sizeparam width="39" 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" /> +<SUBCOMPONENT type="-1" id="574" > +<father id="579" num="2" /> <cdparam x="294" y="613" /> <sizeparam width="116" height="15" minWidth="10" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -3012,16 +2885,16 @@ the smart card and the terminal <infoparam name="guard 3" value="[ tcpctrl.state ==4 ]" /> </SUBCOMPONENT> -<COMPONENT type="1000" id="620" > +<COMPONENT type="1000" id="581" > <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" /> +<TGConnectingPoint num="0" id="580" /> </COMPONENT> -<COMPONENT type="301" id="637" > +<COMPONENT type="301" id="598" > <cdparam x="10" y="30" /> <sizeparam width="92" height="135" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -3038,22 +2911,22 @@ the smart card and the terminal 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" /> +<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" /> +<TGConnectingPoint num="8" id="590" /> +<TGConnectingPoint num="9" id="591" /> +<TGConnectingPoint num="10" id="592" /> +<TGConnectingPoint num="11" id="593" /> +<TGConnectingPoint num="12" id="594" /> +<TGConnectingPoint num="13" id="595" /> +<TGConnectingPoint num="14" id="596" /> +<TGConnectingPoint num="15" id="597" /> <extraparam> <Line value="0: closed" /> <Line value="1: Listen" /> @@ -3069,223 +2942,223 @@ the smart card and the terminal </extraparam> </COMPONENT> -<COMPONENT type="1011" id="640" > +<COMPONENT type="1011" id="601" > <cdparam x="76" y="549" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="599" /> +<TGConnectingPoint num="1" id="600" /> </COMPONENT> -<COMPONENT type="1001" id="642" > +<COMPONENT type="1001" id="603" > <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" /> +<TGConnectingPoint num="0" id="602" /> </COMPONENT> -<COMPONENT type="1009" id="645" > +<COMPONENT type="1009" id="606" > <cdparam x="967" y="585" /> <sizeparam width="83" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="604" /> +<TGConnectingPoint num="1" id="605" /> <extraparam> <Data channelName="fromPtoT" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1014" id="649" > +<COMPONENT type="1014" id="610" > <cdparam x="150" y="85" /> <sizeparam width="170" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="607" /> +<TGConnectingPoint num="1" id="608" /> +<TGConnectingPoint num="2" id="609" /> <extraparam> <Data init="i=0" condition="(tcpctrl.a==0)" increment="i = i" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="651" > +<COMPONENT type="1001" id="612" > <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" /> +<TGConnectingPoint num="0" id="611" /> </COMPONENT> -<COMPONENT type="1011" id="654" > +<COMPONENT type="1011" id="615" > <cdparam x="186" y="144" /> <sizeparam width="96" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="613" /> +<TGConnectingPoint num="1" id="614" /> </COMPONENT> -<COMPONENT type="1017" id="657" > +<COMPONENT type="1017" id="618" > <cdparam x="316" y="133" /> <sizeparam width="116" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="616" /> +<TGConnectingPoint num="1" id="617" /> <extraparam> <Data eventName="abort" variable="tcpctrl.a" /> </extraparam> </COMPONENT> -<COMPONENT type="1009" id="660" > +<COMPONENT type="1009" id="621" > <cdparam x="692" y="589" /> <sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="619" /> +<TGConnectingPoint num="1" id="620" /> <extraparam> <Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1010" id="663" > +<COMPONENT type="1010" id="624" > <cdparam x="689" y="534" /> <sizeparam width="67" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="622" /> +<TGConnectingPoint num="1" id="623" /> <extraparam> <Data eventName="timeOut" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1010" id="666" > +<COMPONENT type="1010" id="627" > <cdparam x="977" y="528" /> <sizeparam width="63" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="625" /> +<TGConnectingPoint num="1" id="626" /> <extraparam> <Data eventName="receive" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1010" id="669" > +<COMPONENT type="1010" id="630" > <cdparam x="439" y="492" /> <sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="628" /> +<TGConnectingPoint num="1" id="629" /> <extraparam> <Data eventName="close" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1010" id="672" > +<COMPONENT type="1010" id="633" > <cdparam x="250" y="468" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="631" /> +<TGConnectingPoint num="1" id="632" /> <extraparam> <Data eventName="send_TCP" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1010" id="675" > +<COMPONENT type="1010" id="636" > <cdparam x="163" y="419" /> <sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="634" /> +<TGConnectingPoint num="1" id="635" /> <breakpoint /> <extraparam> <Data eventName="open" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1018" id="686" > +<COMPONENT type="1018" id="647" > <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" /> <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" /> +<TGConnectingPoint num="0" id="637" /> +<TGConnectingPoint num="1" id="638" /> +<TGConnectingPoint num="2" id="639" /> +<TGConnectingPoint num="3" id="640" /> +<TGConnectingPoint num="4" id="641" /> +<TGConnectingPoint num="5" id="642" /> +<TGConnectingPoint num="6" id="643" /> +<TGConnectingPoint num="7" id="644" /> +<TGConnectingPoint num="8" id="645" /> +<TGConnectingPoint num="9" id="646" /> <breakpoint /> </COMPONENT> -<COMPONENT type="1001" id="688" > +<COMPONENT type="1001" id="649" > <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" /> +<TGConnectingPoint num="0" id="648" /> </COMPONENT> -<COMPONENT type="1001" id="690" > +<COMPONENT type="1001" id="651" > <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" /> +<TGConnectingPoint num="0" id="650" /> </COMPONENT> -<COMPONENT type="1010" id="693" > +<COMPONENT type="1010" id="654" > <cdparam x="275" y="228" /> <sizeparam width="53" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="652" /> +<TGConnectingPoint num="1" id="653" /> <extraparam> <Data eventName="abort" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="695" > +<COMPONENT type="1001" id="656" > <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" /> +<TGConnectingPoint num="0" id="655" /> </COMPONENT> -<COMPONENT type="301" id="712" > +<COMPONENT type="301" id="673" > <cdparam x="602" y="86" /> <sizeparam width="360" height="51" minWidth="50" minHeight="20" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -3295,22 +3168,22 @@ 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" /> +<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" /> <extraparam> <Line value="b est le nombre d'instructions necessaires pour paquetiser" /> <Line value="ou depaquitiser un paquet TCP" /> @@ -3319,2830 +3192,2957 @@ On prend b=1 comme exemple </extraparam> </COMPONENT> -<COMPONENT type="1009" id="715" > +<COMPONENT type="1009" id="676" > <cdparam x="188" y="808" /> <sizeparam width="84" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="674" /> +<TGConnectingPoint num="1" id="675" /> <extraparam> <Data channelName="fromAtoT" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="718" > +<COMPONENT type="1006" id="679" > <cdparam x="191" y="1002" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="677" /> +<TGConnectingPoint num="1" id="678" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="720" > +<COMPONENT type="1001" id="681" > <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" /> +<TGConnectingPoint num="0" id="680" /> </COMPONENT> -<COMPONENT type="1011" id="723" > +<COMPONENT type="1011" id="684" > <cdparam x="388" y="1032" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="682" /> +<TGConnectingPoint num="1" id="683" /> </COMPONENT> -<COMPONENT type="1001" id="725" > +<COMPONENT type="1001" id="686" > <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" /> +<TGConnectingPoint num="0" id="685" /> </COMPONENT> -<COMPONENT type="1011" id="728" > +<COMPONENT type="1011" id="689" > <cdparam x="84" y="1041" /> <sizeparam width="96" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="687" /> +<TGConnectingPoint num="1" id="688" /> </COMPONENT> -<COMPONENT type="1006" id="731" > +<COMPONENT type="1006" id="692" > <cdparam x="93" y="938" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="690" /> +<TGConnectingPoint num="1" id="691" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1011" id="734" > +<COMPONENT type="1011" id="695" > <cdparam x="292" y="1026" /> <sizeparam width="108" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="693" /> +<TGConnectingPoint num="1" id="694" /> </COMPONENT> -<COMPONENT type="1001" id="736" > +<COMPONENT type="1001" id="697" > <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" /> +<TGConnectingPoint num="0" id="696" /> </COMPONENT> -<COMPONENT type="1006" id="739" > +<COMPONENT type="1006" id="700" > <cdparam x="400" y="941" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="698" /> +<TGConnectingPoint num="1" id="699" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="742" > +<COMPONENT type="1006" id="703" > <cdparam x="307" y="900" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="701" /> +<TGConnectingPoint num="1" id="702" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="744" > +<COMPONENT type="1001" id="705" > <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" /> +<TGConnectingPoint num="0" id="704" /> </COMPONENT> -<COMPONENT type="301" id="761" > +<COMPONENT type="301" id="722" > <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" /> +<TGConnectingPoint num="0" id="706" /> +<TGConnectingPoint num="1" id="707" /> +<TGConnectingPoint num="2" id="708" /> +<TGConnectingPoint num="3" id="709" /> +<TGConnectingPoint num="4" id="710" /> +<TGConnectingPoint num="5" id="711" /> +<TGConnectingPoint num="6" id="712" /> +<TGConnectingPoint num="7" id="713" /> +<TGConnectingPoint num="8" id="714" /> +<TGConnectingPoint num="9" id="715" /> +<TGConnectingPoint num="10" id="716" /> +<TGConnectingPoint num="11" id="717" /> +<TGConnectingPoint num="12" id="718" /> +<TGConnectingPoint num="13" id="719" /> +<TGConnectingPoint num="14" id="720" /> +<TGConnectingPoint num="15" id="721" /> <extraparam> <Line value="Fin" /> </extraparam> </COMPONENT> -<COMPONENT type="1011" id="764" > +<COMPONENT type="1011" id="725" > <cdparam x="678" y="965" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="723" /> +<TGConnectingPoint num="1" id="724" /> </COMPONENT> -<COMPONENT type="1001" id="766" > +<COMPONENT type="1001" id="727" > <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" /> +<TGConnectingPoint num="0" id="726" /> </COMPONENT> -<COMPONENT type="1006" id="769" > +<COMPONENT type="1006" id="730" > <cdparam x="761" y="1086" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="728" /> +<TGConnectingPoint num="1" id="729" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="786" > +<COMPONENT type="301" id="747" > <cdparam x="781" y="950" /> <sizeparam width="89" 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" /> +<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" /> <extraparam> <Line value="Active Open" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="803" > +<COMPONENT type="301" id="764" > <cdparam x="715" y="907" /> <sizeparam width="97" 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" /> +<TGConnectingPoint num="0" id="748" /> +<TGConnectingPoint num="1" id="749" /> +<TGConnectingPoint num="2" id="750" /> +<TGConnectingPoint num="3" id="751" /> +<TGConnectingPoint num="4" id="752" /> +<TGConnectingPoint num="5" id="753" /> +<TGConnectingPoint num="6" id="754" /> +<TGConnectingPoint num="7" id="755" /> +<TGConnectingPoint num="8" id="756" /> +<TGConnectingPoint num="9" id="757" /> +<TGConnectingPoint num="10" id="758" /> +<TGConnectingPoint num="11" id="759" /> +<TGConnectingPoint num="12" id="760" /> +<TGConnectingPoint num="13" id="761" /> +<TGConnectingPoint num="14" id="762" /> +<TGConnectingPoint num="15" id="763" /> <extraparam> <Line value="Passive Open" /> </extraparam> </COMPONENT> -<COMPONENT type="1011" id="806" > +<COMPONENT type="1011" id="767" > <cdparam x="749" y="1193" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="765" /> +<TGConnectingPoint num="1" id="766" /> </COMPONENT> -<COMPONENT type="1011" id="809" > +<COMPONENT type="1011" id="770" > <cdparam x="446" y="768" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="768" /> +<TGConnectingPoint num="1" id="769" /> </COMPONENT> -<COMPONENT type="1001" id="811" > +<COMPONENT type="1001" id="772" > <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" /> +<TGConnectingPoint num="0" id="771" /> </COMPONENT> -<COMPONENT type="1006" id="814" > +<COMPONENT type="1006" id="775" > <cdparam x="904" y="1123" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="773" /> +<TGConnectingPoint num="1" id="774" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="831" > +<COMPONENT type="301" id="792" > <cdparam x="884" y="1068" /> <sizeparam width="108" 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" /> +<TGConnectingPoint num="0" id="776" /> +<TGConnectingPoint num="1" id="777" /> +<TGConnectingPoint num="2" id="778" /> +<TGConnectingPoint num="3" id="779" /> +<TGConnectingPoint num="4" id="780" /> +<TGConnectingPoint num="5" id="781" /> +<TGConnectingPoint num="6" id="782" /> +<TGConnectingPoint num="7" id="783" /> +<TGConnectingPoint num="8" id="784" /> +<TGConnectingPoint num="9" id="785" /> +<TGConnectingPoint num="10" id="786" /> +<TGConnectingPoint num="11" id="787" /> +<TGConnectingPoint num="12" id="788" /> +<TGConnectingPoint num="13" id="789" /> +<TGConnectingPoint num="14" id="790" /> +<TGConnectingPoint num="15" id="791" /> <extraparam> <Line value="send Ack of Fin" /> </extraparam> </COMPONENT> -<COMPONENT type="1011" id="834" > +<COMPONENT type="1011" id="795" > <cdparam x="893" y="1234" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="793" /> +<TGConnectingPoint num="1" id="794" /> </COMPONENT> -<COMPONENT type="1001" id="836" > +<COMPONENT type="1001" id="797" > <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" /> +<TGConnectingPoint num="0" id="796" /> </COMPONENT> -<COMPONENT type="1006" id="839" > +<COMPONENT type="1006" id="800" > <cdparam x="1010" y="1155" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="798" /> +<TGConnectingPoint num="1" id="799" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="856" > +<COMPONENT type="301" id="817" > <cdparam x="1000" y="1094" /> <sizeparam width="108" 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" /> +<TGConnectingPoint num="0" id="801" /> +<TGConnectingPoint num="1" id="802" /> +<TGConnectingPoint num="2" id="803" /> +<TGConnectingPoint num="3" id="804" /> +<TGConnectingPoint num="4" id="805" /> +<TGConnectingPoint num="5" id="806" /> +<TGConnectingPoint num="6" id="807" /> +<TGConnectingPoint num="7" id="808" /> +<TGConnectingPoint num="8" id="809" /> +<TGConnectingPoint num="9" id="810" /> +<TGConnectingPoint num="10" id="811" /> +<TGConnectingPoint num="11" id="812" /> +<TGConnectingPoint num="12" id="813" /> +<TGConnectingPoint num="13" id="814" /> +<TGConnectingPoint num="14" id="815" /> +<TGConnectingPoint num="15" id="816" /> <extraparam> <Line value="send Ack of Fin" /> </extraparam> </COMPONENT> -<COMPONENT type="1011" id="859" > +<COMPONENT type="1011" id="820" > <cdparam x="999" y="1266" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="818" /> +<TGConnectingPoint num="1" id="819" /> </COMPONENT> -<COMPONENT type="1001" id="861" > +<COMPONENT type="1001" id="822" > <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" /> +<TGConnectingPoint num="0" id="821" /> </COMPONENT> -<COMPONENT type="1006" id="864" > +<COMPONENT type="1006" id="825" > <cdparam x="683" y="758" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="823" /> +<TGConnectingPoint num="1" id="824" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="866" > +<COMPONENT type="1001" id="827" > <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" /> +<TGConnectingPoint num="0" id="826" /> </COMPONENT> -<COMPONENT type="1007" id="869" > +<COMPONENT type="1007" id="830" > <cdparam x="93" y="1100" /> <sizeparam width="78" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="828" /> +<TGConnectingPoint num="1" id="829" /> <extraparam> <Data requestName="req_Timer" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="872" > +<COMPONENT type="1006" id="833" > <cdparam x="104" y="1167" /> <sizeparam width="56" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="831" /> +<TGConnectingPoint num="1" id="832" /> <extraparam> <Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="874" > +<COMPONENT type="1001" id="835" > <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" /> +<TGConnectingPoint num="0" id="834" /> </COMPONENT> -<COMPONENT type="1007" id="877" > +<COMPONENT type="1007" id="838" > <cdparam x="190" y="1102" /> <sizeparam width="78" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="836" /> +<TGConnectingPoint num="1" id="837" /> <extraparam> <Data requestName="req_Timer" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="880" > +<COMPONENT type="1006" id="841" > <cdparam x="201" y="1169" /> <sizeparam width="56" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="839" /> +<TGConnectingPoint num="1" id="840" /> <extraparam> <Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1007" id="883" > +<COMPONENT type="1007" id="844" > <cdparam x="307" y="1106" /> <sizeparam width="78" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="842" /> +<TGConnectingPoint num="1" id="843" /> <extraparam> <Data requestName="req_Timer" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="886" > +<COMPONENT type="1006" id="847" > <cdparam x="318" y="1173" /> <sizeparam width="56" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="845" /> +<TGConnectingPoint num="1" id="846" /> <extraparam> <Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1007" id="889" > +<COMPONENT type="1007" id="850" > <cdparam x="399" y="1090" /> <sizeparam width="78" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="848" /> +<TGConnectingPoint num="1" id="849" /> <extraparam> <Data requestName="req_Timer" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="892" > +<COMPONENT type="1006" id="853" > <cdparam x="410" y="1159" /> <sizeparam width="56" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="851" /> +<TGConnectingPoint num="1" id="852" /> <extraparam> <Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1011" id="895" > +<COMPONENT type="1011" id="856" > <cdparam x="56" y="861" /> <sizeparam width="153" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="854" /> +<TGConnectingPoint num="1" id="855" /> </COMPONENT> -<COMPONENT type="1011" id="898" > +<COMPONENT type="1011" id="859" > <cdparam x="154" y="940" /> <sizeparam width="153" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="857" /> +<TGConnectingPoint num="1" id="858" /> </COMPONENT> -<COMPONENT type="1011" id="901" > +<COMPONENT type="1011" id="862" > <cdparam x="363" y="865" /> <sizeparam width="153" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="860" /> +<TGConnectingPoint num="1" id="861" /> </COMPONENT> -<COMPONENT type="1011" id="904" > +<COMPONENT type="1011" id="865" > <cdparam x="270" y="831" /> <sizeparam width="153" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="863" /> +<TGConnectingPoint num="1" id="864" /> </COMPONENT> -<COMPONENT type="1008" id="907" > +<COMPONENT type="1008" id="868" > <cdparam x="206" y="1052" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="866" /> +<TGConnectingPoint num="1" id="867" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="910" > +<COMPONENT type="1008" id="871" > <cdparam x="323" y="962" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="869" /> +<TGConnectingPoint num="1" id="870" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="913" > +<COMPONENT type="1008" id="874" > <cdparam x="415" y="983" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="872" /> +<TGConnectingPoint num="1" id="873" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="916" > +<COMPONENT type="1008" id="877" > <cdparam x="109" y="986" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="875" /> +<TGConnectingPoint num="1" id="876" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="919" > +<COMPONENT type="1008" id="880" > <cdparam x="699" y="813" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="878" /> +<TGConnectingPoint num="1" id="879" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="922" > +<COMPONENT type="1008" id="883" > <cdparam x="775" y="1141" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="881" /> +<TGConnectingPoint num="1" id="882" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="925" > +<COMPONENT type="1008" id="886" > <cdparam x="920" y="1178" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="884" /> +<TGConnectingPoint num="1" id="885" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="928" > +<COMPONENT type="1008" id="889" > <cdparam x="1026" y="1211" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="887" /> +<TGConnectingPoint num="1" id="888" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="930" > +<COMPONENT type="1001" id="891" > <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" /> +<TGConnectingPoint num="0" id="890" /> </COMPONENT> -<COMPONENT type="1001" id="932" > +<COMPONENT type="1001" id="893" > <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" /> +<TGConnectingPoint num="0" id="892" /> </COMPONENT> -<COMPONENT type="1006" id="935" > +<COMPONENT type="1006" id="896" > <cdparam x="1169" y="1214" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="894" /> +<TGConnectingPoint num="1" id="895" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="952" > +<COMPONENT type="301" id="913" > <cdparam x="1159" y="1153" /> <sizeparam width="108" 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" /> +<TGConnectingPoint num="0" id="897" /> +<TGConnectingPoint num="1" id="898" /> +<TGConnectingPoint num="2" id="899" /> +<TGConnectingPoint num="3" id="900" /> +<TGConnectingPoint num="4" id="901" /> +<TGConnectingPoint num="5" id="902" /> +<TGConnectingPoint num="6" id="903" /> +<TGConnectingPoint num="7" id="904" /> +<TGConnectingPoint num="8" id="905" /> +<TGConnectingPoint num="9" id="906" /> +<TGConnectingPoint num="10" id="907" /> +<TGConnectingPoint num="11" id="908" /> +<TGConnectingPoint num="12" id="909" /> +<TGConnectingPoint num="13" id="910" /> +<TGConnectingPoint num="14" id="911" /> +<TGConnectingPoint num="15" id="912" /> <extraparam> <Line value="send Ack of Fin" /> </extraparam> </COMPONENT> -<COMPONENT type="1011" id="955" > +<COMPONENT type="1011" id="916" > <cdparam x="1158" y="1295" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="914" /> +<TGConnectingPoint num="1" id="915" /> </COMPONENT> -<COMPONENT type="1001" id="957" > +<COMPONENT type="1001" id="918" > <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" /> +<TGConnectingPoint num="0" id="917" /> </COMPONENT> -<COMPONENT type="1011" id="960" > +<COMPONENT type="1011" id="921" > <cdparam x="1157" y="1402" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="919" /> +<TGConnectingPoint num="1" id="920" /> </COMPONENT> -<COMPONENT type="1008" id="963" > +<COMPONENT type="1008" id="924" > <cdparam x="1185" y="1351" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="922" /> +<TGConnectingPoint num="1" id="923" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="965" > +<COMPONENT type="1001" id="926" > <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" /> +<TGConnectingPoint num="0" id="925" /> </COMPONENT> -<COMPONENT type="1001" id="967" > +<COMPONENT type="1001" id="928" > <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" /> +<TGConnectingPoint num="0" id="927" /> </COMPONENT> -<COMPONENT type="1006" id="970" > +<COMPONENT type="1006" id="931" > <cdparam x="1489" y="1132" /> <sizeparam width="80" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="929" /> +<TGConnectingPoint num="1" id="930" /> <extraparam> <Data channelName="fromTtoA" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="973" > +<COMPONENT type="1006" id="934" > <cdparam x="1490" y="1348" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="932" /> +<TGConnectingPoint num="1" id="933" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="976" > +<COMPONENT type="1008" id="937" > <cdparam x="1710" y="1026" /> <sizeparam width="43" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="935" /> +<TGConnectingPoint num="1" id="936" /> <extraparam> <Data eventName="stop" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="993" > +<COMPONENT type="301" id="954" > <cdparam x="1759" y="1192" /> <sizeparam width="86" 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" /> +<TGConnectingPoint num="0" id="938" /> +<TGConnectingPoint num="1" id="939" /> +<TGConnectingPoint num="2" id="940" /> +<TGConnectingPoint num="3" id="941" /> +<TGConnectingPoint num="4" id="942" /> +<TGConnectingPoint num="5" id="943" /> +<TGConnectingPoint num="6" id="944" /> +<TGConnectingPoint num="7" id="945" /> +<TGConnectingPoint num="8" id="946" /> +<TGConnectingPoint num="9" id="947" /> +<TGConnectingPoint num="10" id="948" /> +<TGConnectingPoint num="11" id="949" /> +<TGConnectingPoint num="12" id="950" /> +<TGConnectingPoint num="13" id="951" /> +<TGConnectingPoint num="14" id="952" /> +<TGConnectingPoint num="15" id="953" /> <extraparam> <Line value="Correct ack" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="1010" > +<COMPONENT type="301" id="971" > <cdparam x="1635" y="1168" /> <sizeparam width="71" 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" /> +<TGConnectingPoint num="0" id="955" /> +<TGConnectingPoint num="1" id="956" /> +<TGConnectingPoint num="2" id="957" /> +<TGConnectingPoint num="3" id="958" /> +<TGConnectingPoint num="4" id="959" /> +<TGConnectingPoint num="5" id="960" /> +<TGConnectingPoint num="6" id="961" /> +<TGConnectingPoint num="7" id="962" /> +<TGConnectingPoint num="8" id="963" /> +<TGConnectingPoint num="9" id="964" /> +<TGConnectingPoint num="10" id="965" /> +<TGConnectingPoint num="11" id="966" /> +<TGConnectingPoint num="12" id="967" /> +<TGConnectingPoint num="13" id="968" /> +<TGConnectingPoint num="14" id="969" /> +<TGConnectingPoint num="15" id="970" /> <extraparam> <Line value="false ack" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="1013" > +<COMPONENT type="1006" id="974" > <cdparam x="1602" y="1299" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="972" /> +<TGConnectingPoint num="1" id="973" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="1015" > +<COMPONENT type="1001" id="976" > <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" /> +<TGConnectingPoint num="0" id="975" /> </COMPONENT> -<COMPONENT type="301" id="1032" > +<COMPONENT type="301" id="993" > <cdparam x="1469" y="1295" /> <sizeparam width="127" 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" /> +<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="return acknowldge" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="1049" > +<COMPONENT type="301" id="1010" > <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" /> +<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="data" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="1052" > +<COMPONENT type="1008" id="1013" > <cdparam x="1506" y="1405" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1011" /> +<TGConnectingPoint num="1" id="1012" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1008" id="1055" > +<COMPONENT type="1008" id="1016" > <cdparam x="1619" y="1348" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1014" /> +<TGConnectingPoint num="1" id="1015" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="1058" > +<COMPONENT type="1006" id="1019" > <cdparam x="1614" y="1404" /> <sizeparam width="56" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1017" /> +<TGConnectingPoint num="1" id="1018" /> <extraparam> <Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="1060" > +<COMPONENT type="1001" id="1021" > <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" /> +<TGConnectingPoint num="0" id="1020" /> </COMPONENT> -<COMPONENT type="1011" id="1063" > +<COMPONENT type="1011" id="1024" > <cdparam x="1776" y="1349" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1022" /> +<TGConnectingPoint num="1" id="1023" /> </COMPONENT> -<COMPONENT type="1001" id="1065" > +<COMPONENT type="1001" id="1026" > <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" /> +<TGConnectingPoint num="0" id="1025" /> </COMPONENT> -<COMPONENT type="1011" id="1068" > +<COMPONENT type="1011" id="1029" > <cdparam x="1870" y="1411" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1027" /> +<TGConnectingPoint num="1" id="1028" /> </COMPONENT> -<COMPONENT type="1001" id="1070" > +<COMPONENT type="1001" id="1031" > <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" /> +<TGConnectingPoint num="0" id="1030" /> </COMPONENT> -<COMPONENT type="1001" id="1072" > +<COMPONENT type="1001" id="1033" > <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" /> +<TGConnectingPoint num="0" id="1032" /> </COMPONENT> -<COMPONENT type="1011" id="1075" > +<COMPONENT type="1011" id="1036" > <cdparam x="2051" y="1466" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1034" /> +<TGConnectingPoint num="1" id="1035" /> </COMPONENT> -<COMPONENT type="1001" id="1077" > +<COMPONENT type="1001" id="1038" > <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" /> +<TGConnectingPoint num="0" id="1037" /> </COMPONENT> -<COMPONENT type="1011" id="1080" > +<COMPONENT type="1011" id="1041" > <cdparam x="1946" y="1493" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1039" /> +<TGConnectingPoint num="1" id="1040" /> </COMPONENT> -<COMPONENT type="1011" id="1083" > +<COMPONENT type="1011" id="1044" > <cdparam x="1946" y="1434" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1042" /> +<TGConnectingPoint num="1" id="1043" /> </COMPONENT> -<COMPONENT type="301" id="1100" > +<COMPONENT type="301" id="1061" > <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" /> +<TGConnectingPoint num="0" id="1045" /> +<TGConnectingPoint num="1" id="1046" /> +<TGConnectingPoint num="2" id="1047" /> +<TGConnectingPoint num="3" id="1048" /> +<TGConnectingPoint num="4" id="1049" /> +<TGConnectingPoint num="5" id="1050" /> +<TGConnectingPoint num="6" id="1051" /> +<TGConnectingPoint num="7" id="1052" /> +<TGConnectingPoint num="8" id="1053" /> +<TGConnectingPoint num="9" id="1054" /> +<TGConnectingPoint num="10" id="1055" /> +<TGConnectingPoint num="11" id="1056" /> +<TGConnectingPoint num="12" id="1057" /> +<TGConnectingPoint num="13" id="1058" /> +<TGConnectingPoint num="14" id="1059" /> +<TGConnectingPoint num="15" id="1060" /> <extraparam> <Line value="Syn" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="1117" > +<COMPONENT type="301" id="1078" > <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" /> +<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" /> +<TGConnectingPoint num="10" id="1072" /> +<TGConnectingPoint num="11" id="1073" /> +<TGConnectingPoint num="12" id="1074" /> +<TGConnectingPoint num="13" id="1075" /> +<TGConnectingPoint num="14" id="1076" /> +<TGConnectingPoint num="15" id="1077" /> <extraparam> <Line value="ack" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="1120" > +<COMPONENT type="1006" id="1081" > <cdparam x="2179" y="1198" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1079" /> +<TGConnectingPoint num="1" id="1080" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="1122" > +<COMPONENT type="1001" id="1083" > <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" /> +<TGConnectingPoint num="0" id="1082" /> </COMPONENT> -<COMPONENT type="1007" id="1125" > +<COMPONENT type="1007" id="1086" > <cdparam x="2178" y="1298" /> <sizeparam width="78" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1084" /> +<TGConnectingPoint num="1" id="1085" /> <extraparam> <Data requestName="req_Timer" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1006" id="1128" > +<COMPONENT type="1006" id="1089" > <cdparam x="2189" y="1365" /> <sizeparam width="56" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1087" /> +<TGConnectingPoint num="1" id="1088" /> <extraparam> <Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="1011" id="1131" > +<COMPONENT type="1011" id="1092" > <cdparam x="2142" y="1136" /> <sizeparam width="153" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1090" /> +<TGConnectingPoint num="1" id="1091" /> </COMPONENT> -<COMPONENT type="1008" id="1134" > +<COMPONENT type="1008" id="1095" > <cdparam x="2194" y="1248" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1093" /> +<TGConnectingPoint num="1" id="1094" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1011" id="1137" > +<COMPONENT type="1011" id="1098" > <cdparam x="2167" y="1424" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1096" /> +<TGConnectingPoint num="1" id="1097" /> </COMPONENT> -<COMPONENT type="1006" id="1140" > +<COMPONENT type="1006" id="1101" > <cdparam x="2302" y="1122" /> <sizeparam width="79" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1099" /> +<TGConnectingPoint num="1" id="1100" /> <extraparam> <Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<COMPONENT type="301" id="1157" > +<COMPONENT type="301" id="1118" > <cdparam x="2283" y="1065" /> <sizeparam width="114" 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" /> +<TGConnectingPoint num="0" id="1102" /> +<TGConnectingPoint num="1" id="1103" /> +<TGConnectingPoint num="2" id="1104" /> +<TGConnectingPoint num="3" id="1105" /> +<TGConnectingPoint num="4" id="1106" /> +<TGConnectingPoint num="5" id="1107" /> +<TGConnectingPoint num="6" id="1108" /> +<TGConnectingPoint num="7" id="1109" /> +<TGConnectingPoint num="8" id="1110" /> +<TGConnectingPoint num="9" id="1111" /> +<TGConnectingPoint num="10" id="1112" /> +<TGConnectingPoint num="11" id="1113" /> +<TGConnectingPoint num="12" id="1114" /> +<TGConnectingPoint num="13" id="1115" /> +<TGConnectingPoint num="14" id="1116" /> +<TGConnectingPoint num="15" id="1117" /> <extraparam> <Line value="send Ack of SYN" /> </extraparam> </COMPONENT> -<COMPONENT type="1011" id="1160" > +<COMPONENT type="1011" id="1121" > <cdparam x="2291" y="1267" /> <sizeparam width="100" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1119" /> +<TGConnectingPoint num="1" id="1120" /> </COMPONENT> -<COMPONENT type="1001" id="1162" > +<COMPONENT type="1001" id="1123" > <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" /> +<TGConnectingPoint num="0" id="1122" /> </COMPONENT> -<COMPONENT type="1008" id="1165" > +<COMPONENT type="1008" id="1126" > <cdparam x="2318" y="1199" /> <sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1124" /> +<TGConnectingPoint num="1" id="1125" /> <extraparam> <Data eventName="send" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="1167" > +<COMPONENT type="1001" id="1128" > <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" /> +<TGConnectingPoint num="0" id="1127" /> </COMPONENT> -<COMPONENT type="1001" id="1169" > +<COMPONENT type="1001" id="1130" > <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" /> +<TGConnectingPoint num="0" id="1129" /> </COMPONENT> -<COMPONENT type="1001" id="1171" > +<COMPONENT type="1001" id="1132" > <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" /> +<TGConnectingPoint num="0" id="1131" /> </COMPONENT> -<COMPONENT type="1008" id="1174" > +<COMPONENT type="1008" id="1135" > <cdparam x="1465" y="1192" /> <sizeparam width="129" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1133" /> +<TGConnectingPoint num="1" id="1134" /> <extraparam> <Data eventName="receive_Application" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1009" id="1177" > +<COMPONENT type="1009" id="1138" > <cdparam x="1701" y="1086" /> <sizeparam width="60" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <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" /> +<TGConnectingPoint num="0" id="1136" /> +<TGConnectingPoint num="1" id="1137" /> <extraparam> <Data channelName="temp" nbOfSamples="1" secPattern="" isAttacker="No" /> </extraparam> </COMPONENT> -<CONNECTOR type="115" id="1178" > +<CONNECTOR type="115" id="1139" > <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" /> +<P1 x="1048" y="795" id="529" /> +<P2 x="1728" y="865" id="451" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1179" > +<CONNECTOR type="115" id="1140" > <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" /> +<P1 x="1089" y="954" id="501" /> +<P2 x="1208" y="1010" id="471" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1180" > +<CONNECTOR type="115" id="1141" > <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" /> +<P1 x="1008" y="610" id="605" /> +<P2 x="1008" y="696" id="533" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1181" > +<CONNECTOR type="115" id="1142" > <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" /> +<P1 x="722" y="614" id="620" /> +<P2 x="722" y="689" id="489" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1182" > +<CONNECTOR type="115" id="1143" > <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" /> +<P1 x="504" y="597" id="569" /> +<P2 x="572" y="702" id="483" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1183" > +<CONNECTOR type="115" id="1144" > <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" /> +<P1 x="464" y="637" id="570" /> +<P2 x="439" y="778" id="537" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1184" > +<CONNECTOR type="115" id="1145" > <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" /> +<P1 x="424" y="597" id="568" /> +<P2 x="346" y="759" id="517" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1185" > +<CONNECTOR type="115" id="1146" > <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" /> +<P1 x="289" y="619" id="578" /> +<P2 x="230" y="803" id="674" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1186" > +<CONNECTOR type="115" id="1147" > <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" /> +<P1 x="249" y="579" id="576" /> +<P2 x="132" y="789" id="521" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1187" > +<CONNECTOR type="115" id="1148" > <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="320" y="99" id="647" /> -<P2 x="374" y="128" id="655" /> +<P1 x="320" y="99" id="608" /> +<P2 x="374" y="128" id="616" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1188" > +<CONNECTOR type="115" id="1149" > <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" /> +<P1 x="234" y="169" id="614" /> +<P2 x="234" y="202" id="611" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1189" > +<CONNECTOR type="115" id="1150" > <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" /> +<P1 x="235" y="110" id="609" /> +<P2 x="234" y="139" id="613" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1190" > +<CONNECTOR type="115" id="1151" > <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" /> +<P1 x="234" y="47" id="580" /> +<P2 x="235" y="80" id="607" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1191" > +<CONNECTOR type="115" id="1152" > <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" /> +<P1 x="374" y="158" id="617" /> +<P2 x="374" y="182" id="559" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1192" > +<CONNECTOR type="115" id="1153" > <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" /> +<P1 x="464" y="322" id="643" /> +<P2 x="722" y="529" id="622" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1193" > +<CONNECTOR type="115" id="1154" > <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" /> +<P1 x="722" y="559" id="623" /> +<P2 x="722" y="584" id="619" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1194" > +<CONNECTOR type="115" id="1155" > <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" /> +<P1 x="504" y="282" id="639" /> +<P2 x="1008" y="523" id="625" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1195" > +<CONNECTOR type="115" id="1156" > <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" /> +<P1 x="1008" y="553" id="626" /> +<P2 x="1008" y="580" id="604" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1196" > +<CONNECTOR type="115" id="1157" > <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" /> +<P1 x="464" y="322" id="640" /> +<P2 x="464" y="487" id="628" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1197" > +<CONNECTOR type="115" id="1158" > <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" /> +<P1 x="424" y="282" id="641" /> +<P2 x="289" y="463" id="631" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1198" > +<CONNECTOR type="115" id="1159" > <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" /> +<P1 x="289" y="493" id="632" /> +<P2 x="289" y="554" id="575" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1199" > +<CONNECTOR type="115" id="1160" > <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" /> +<P1 x="148" y="501" id="552" /> +<P2 x="126" y="544" id="599" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1200" > +<CONNECTOR type="115" id="1161" > <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" /> +<P1 x="424" y="282" id="638" /> +<P2 x="188" y="414" id="634" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1201" > +<CONNECTOR type="115" id="1162" > <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" /> +<P1 x="188" y="444" id="635" /> +<P2 x="188" y="476" id="551" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1202" > +<CONNECTOR type="115" id="1163" > <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" /> +<P1 x="228" y="501" id="553" /> +<P2 x="236" y="524" id="648" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1203" > +<CONNECTOR type="115" id="1164" > <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" /> +<P1 x="334" y="207" id="560" /> +<P2 x="301" y="223" id="652" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1204" > +<CONNECTOR type="115" id="1165" > <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" /> +<P1 x="301" y="253" id="653" /> +<P2 x="301" y="285" id="655" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1205" > +<CONNECTOR type="115" id="1166" > <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" /> +<P1 x="464" y="517" id="629" /> +<P2 x="464" y="572" id="567" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1206" > +<CONNECTOR type="115" id="1167" > <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" /> +<P1 x="329" y="579" id="577" /> +<P2 x="353" y="609" id="650" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1207" > +<CONNECTOR type="115" id="1168" > <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" /> +<P1 x="126" y="574" id="600" /> +<P2 x="126" y="610" id="602" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1208" > +<CONNECTOR type="115" id="1169" > <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" /> +<P1 x="414" y="207" id="561" /> +<P2 x="464" y="257" id="637" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1209" > +<CONNECTOR type="115" id="1170" > <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" /> +<P1 x="230" y="833" id="675" /> +<P2 x="230" y="858" id="541" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1210" > +<CONNECTOR type="115" id="1171" > <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" /> +<P1 x="968" y="795" id="528" /> +<P2 x="843" y="859" id="511" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1211" > +<CONNECTOR type="115" id="1172" > <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" /> +<P1 x="728" y="990" id="724" /> +<P2 x="728" y="1027" id="726" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1212" > +<CONNECTOR type="115" id="1173" > <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" /> +<P1 x="803" y="884" id="512" /> +<P2 x="728" y="960" id="723" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1213" > +<CONNECTOR type="115" id="1174" > <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" /> +<P1 x="843" y="924" id="514" /> +<P2 x="800" y="1004" id="505" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1214" > +<CONNECTOR type="115" id="1175" > <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" /> +<P1 x="800" y="1044" id="506" /> +<P2 x="800" y="1081" id="728" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1215" > +<CONNECTOR type="115" id="1176" > <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" /> +<P1 x="132" y="886" id="855" /> +<P2 x="132" y="933" id="690" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1216" > +<CONNECTOR type="115" id="1177" > <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" /> +<P1 x="943" y="1060" id="494" /> +<P2 x="943" y="1118" id="773" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1217" > +<CONNECTOR type="115" id="1178" > <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" /> +<P1 x="1049" y="1092" id="546" /> +<P2 x="1049" y="1150" id="798" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1218" > +<CONNECTOR type="115" id="1179" > <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" /> +<P1 x="1049" y="994" id="502" /> +<P2 x="1049" y="1052" id="545" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1219" > +<CONNECTOR type="115" id="1180" > <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" /> +<P1 x="722" y="729" id="490" /> +<P2 x="722" y="753" id="823" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1220" > +<CONNECTOR type="115" id="1181" > <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" /> +<P1 x="132" y="1125" id="829" /> +<P2 x="132" y="1162" id="831" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1221" > +<CONNECTOR type="115" id="1182" > <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" /> +<P1 x="132" y="1192" id="832" /> +<P2 x="132" y="1231" id="834" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1222" > +<CONNECTOR type="115" id="1183" > <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" /> +<P1 x="132" y="1066" id="688" /> +<P2 x="132" y="1095" id="828" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1223" > +<CONNECTOR type="115" id="1184" > <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" /> +<P1 x="229" y="1127" id="837" /> +<P2 x="229" y="1164" id="839" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1224" > +<CONNECTOR type="115" id="1185" > <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" /> +<P1 x="346" y="1131" id="843" /> +<P2 x="346" y="1168" id="845" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1225" > +<CONNECTOR type="115" id="1186" > <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" /> +<P1 x="346" y="1051" id="694" /> +<P2 x="346" y="1101" id="842" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1226" > +<CONNECTOR type="115" id="1187" > <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" /> +<P1 x="438" y="1115" id="849" /> +<P2 x="438" y="1154" id="851" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1227" > +<CONNECTOR type="115" id="1188" > <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" /> +<P1 x="438" y="1057" id="683" /> +<P2 x="438" y="1085" id="848" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1228" > +<CONNECTOR type="115" id="1189" > <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" /> +<P1 x="132" y="829" id="522" /> +<P2 x="132" y="856" id="854" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1229" > +<CONNECTOR type="115" id="1190" > <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" /> +<P1 x="230" y="898" id="542" /> +<P2 x="230" y="935" id="857" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1230" > +<CONNECTOR type="115" id="1191" > <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" /> +<P1 x="230" y="965" id="858" /> +<P2 x="230" y="997" id="677" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1231" > +<CONNECTOR type="115" id="1192" > <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" /> +<P1 x="346" y="799" id="518" /> +<P2 x="346" y="826" id="863" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1232" > +<CONNECTOR type="115" id="1193" > <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" /> +<P1 x="346" y="856" id="864" /> +<P2 x="346" y="895" id="701" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1233" > +<CONNECTOR type="115" id="1194" > <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" /> +<P1 x="439" y="818" id="538" /> +<P2 x="439" y="860" id="860" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1234" > +<CONNECTOR type="115" id="1195" > <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" /> +<P1 x="439" y="890" id="861" /> +<P2 x="439" y="936" id="698" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1235" > +<CONNECTOR type="115" id="1196" > <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" /> +<P1 x="132" y="963" id="691" /> +<P2 x="132" y="981" id="875" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1236" > +<CONNECTOR type="115" id="1197" > <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" /> +<P1 x="132" y="1011" id="876" /> +<P2 x="132" y="1036" id="687" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1237" > +<CONNECTOR type="115" id="1198" > <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" /> +<P1 x="230" y="1027" id="678" /> +<P2 x="229" y="1047" id="866" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1238" > +<CONNECTOR type="115" id="1199" > <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" /> +<P1 x="229" y="1077" id="867" /> +<P2 x="229" y="1097" id="836" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1239" > +<CONNECTOR type="115" id="1200" > <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" /> +<P1 x="346" y="925" id="702" /> +<P2 x="346" y="957" id="869" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1240" > +<CONNECTOR type="115" id="1201" > <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" /> +<P1 x="346" y="987" id="870" /> +<P2 x="346" y="1021" id="693" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1241" > +<CONNECTOR type="115" id="1202" > <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" /> +<P1 x="439" y="966" id="699" /> +<P2 x="438" y="978" id="872" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1242" > +<CONNECTOR type="115" id="1203" > <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" /> +<P1 x="438" y="1008" id="873" /> +<P2 x="438" y="1027" id="682" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1243" > +<CONNECTOR type="115" id="1204" > <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" /> +<P1 x="722" y="783" id="824" /> +<P2 x="722" y="808" id="878" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1244" > +<CONNECTOR type="115" id="1205" > <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" /> +<P1 x="722" y="838" id="879" /> +<P2 x="722" y="860" id="826" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1245" > +<CONNECTOR type="115" id="1206" > <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" /> +<P1 x="800" y="1111" id="729" /> +<P2 x="798" y="1136" id="881" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1246" > +<CONNECTOR type="115" id="1207" > <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" /> +<P1 x="798" y="1166" id="882" /> +<P2 x="799" y="1188" id="765" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1247" > +<CONNECTOR type="115" id="1208" > <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" /> +<P1 x="943" y="1148" id="774" /> +<P2 x="943" y="1173" id="884" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1248" > +<CONNECTOR type="115" id="1209" > <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" /> +<P1 x="943" y="1203" id="885" /> +<P2 x="943" y="1229" id="793" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1249" > +<CONNECTOR type="115" id="1210" > <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" /> +<P1 x="1049" y="1180" id="799" /> +<P2 x="1049" y="1206" id="887" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1250" > +<CONNECTOR type="115" id="1211" > <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" /> +<P1 x="1049" y="1236" id="888" /> +<P2 x="1049" y="1261" id="818" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1251" > +<CONNECTOR type="115" id="1212" > <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" /> +<P1 x="883" y="884" id="513" /> +<P2 x="909" y="917" id="892" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1252" > +<CONNECTOR type="115" id="1213" > <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" /> +<P1 x="612" y="727" id="485" /> +<P2 x="622" y="757" id="890" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1253" > +<CONNECTOR type="115" id="1214" > <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" /> +<P1 x="532" y="727" id="484" /> +<P2 x="496" y="763" id="768" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1254" > +<CONNECTOR type="115" id="1215" > <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" /> +<P1 x="799" y="1218" id="766" /> +<P2 x="799" y="1265" id="704" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1255" > +<CONNECTOR type="115" id="1216" > <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" /> +<P1 x="1009" y="954" id="500" /> +<P2 x="943" y="1020" id="493" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1256" > +<CONNECTOR type="115" id="1217" > <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" /> +<P1 x="229" y="1194" id="840" /> +<P2 x="229" y="1232" id="680" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1257" > +<CONNECTOR type="115" id="1218" > <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" /> +<P1 x="346" y="1198" id="846" /> +<P2 x="344" y="1224" id="696" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1258" > +<CONNECTOR type="115" id="1219" > <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" /> +<P1 x="438" y="1184" id="852" /> +<P2 x="438" y="1208" id="685" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1259" > +<CONNECTOR type="115" id="1220" > <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" /> +<P1 x="496" y="793" id="769" /> +<P2 x="496" y="825" id="771" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1260" > +<CONNECTOR type="115" id="1221" > <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" /> +<P1 x="943" y="1259" id="794" /> +<P2 x="943" y="1306" id="796" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1261" > +<CONNECTOR type="115" id="1222" > <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" /> +<P1 x="1008" y="736" id="534" /> +<P2 x="1008" y="770" id="527" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1262" > +<CONNECTOR type="115" id="1223" > <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" /> +<P1 x="1008" y="835" id="530" /> +<P2 x="1049" y="929" id="499" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1263" > +<CONNECTOR type="115" id="1224" > <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" /> +<P1 x="1049" y="1291" id="819" /> +<P2 x="1049" y="1336" id="821" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1264" > +<CONNECTOR type="115" id="1225" > <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" /> +<P1 x="1208" y="1142" id="478" /> +<P2 x="1208" y="1209" id="894" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1265" > +<CONNECTOR type="115" id="1226" > <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" /> +<P1 x="1208" y="1239" id="895" /> +<P2 x="1208" y="1290" id="914" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1266" > +<CONNECTOR type="115" id="1227" > <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" /> +<P1 x="1208" y="1320" id="915" /> +<P2 x="1208" y="1346" id="922" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1267" > +<CONNECTOR type="115" id="1228" > <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" /> +<P1 x="1208" y="1376" id="923" /> +<P2 x="1207" y="1397" id="919" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1268" > +<CONNECTOR type="115" id="1229" > <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" /> +<P1 x="1208" y="1075" id="474" /> +<P2 x="1208" y="1102" id="477" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1269" > +<CONNECTOR type="115" id="1230" > <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" /> +<P1 x="1248" y="1035" id="473" /> +<P2 x="1287" y="1065" id="925" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1270" > +<CONNECTOR type="115" id="1231" > <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" /> +<P1 x="1207" y="1427" id="920" /> +<P2 x="1207" y="1466" id="917" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1271" > +<CONNECTOR type="115" id="1232" > <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" /> +<P1 x="1567" y="1021" id="444" /> +<P2 x="1529" y="1059" id="437" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1272" > +<CONNECTOR type="115" id="1233" > <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" /> +<P1 x="1529" y="1289" id="434" /> +<P2 x="1529" y="1343" id="932" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1273" > +<CONNECTOR type="115" id="1234" > <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" /> +<P1 x="1728" y="930" id="454" /> +<P2 x="1731" y="1021" id="935" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1274" > +<CONNECTOR type="115" id="1235" > <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" /> +<P1 x="1641" y="1270" id="458" /> +<P2 x="1641" y="1294" id="972" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1275" > +<CONNECTOR type="115" id="1236" > <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" /> +<P1 x="1641" y="1324" id="973" /> +<P2 x="1642" y="1343" id="1014" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1276" > +<CONNECTOR type="115" id="1237" > <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" /> +<P1 x="1529" y="1373" id="933" /> +<P2 x="1529" y="1400" id="1011" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1277" > +<CONNECTOR type="115" id="1238" > <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" /> +<P1 x="1529" y="1430" id="1012" /> +<P2 x="1529" y="1452" id="927" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1278" > +<CONNECTOR type="115" id="1239" > <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" /> +<P1 x="1642" y="1373" id="1015" /> +<P2 x="1642" y="1399" id="1017" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1279" > +<CONNECTOR type="115" id="1240" > <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" /> +<P1 x="1956" y="1361" id="412" /> +<P2 x="1920" y="1406" id="1027" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1280" > +<CONNECTOR type="115" id="1241" > <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" /> +<P1 x="2101" y="1491" id="1035" /> +<P2 x="2101" y="1532" id="1037" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1281" > +<CONNECTOR type="115" id="1242" > <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" /> +<P1 x="1996" y="1401" id="414" /> +<P2 x="1996" y="1429" id="1042" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1282" > +<CONNECTOR type="115" id="1243" > <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" /> +<P1 x="1996" y="1459" id="1043" /> +<P2 x="1996" y="1488" id="1039" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1283" > +<CONNECTOR type="115" id="1244" > <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" /> +<P1 x="2237" y="966" id="404" /> +<P2 x="2218" y="1054" id="461" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1284" > +<CONNECTOR type="115" id="1245" > <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" /> +<P1 x="2217" y="1323" id="1085" /> +<P2 x="2217" y="1360" id="1087" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1285" > +<CONNECTOR type="115" id="1246" > <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" /> +<P1 x="2218" y="1094" id="462" /> +<P2 x="2218" y="1131" id="1090" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1286" > +<CONNECTOR type="115" id="1247" > <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" /> +<P1 x="2218" y="1161" id="1091" /> +<P2 x="2218" y="1193" id="1079" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1287" > +<CONNECTOR type="115" id="1248" > <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" /> +<P1 x="2218" y="1223" id="1080" /> +<P2 x="2217" y="1243" id="1093" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1288" > +<CONNECTOR type="115" id="1249" > <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" /> +<P1 x="2217" y="1273" id="1094" /> +<P2 x="2217" y="1293" id="1084" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1289" > +<CONNECTOR type="115" id="1250" > <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" /> +<P1 x="2217" y="1390" id="1088" /> +<P2 x="2217" y="1419" id="1096" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1290" > +<CONNECTOR type="115" id="1251" > <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" /> +<P1 x="2341" y="1059" id="466" /> +<P2 x="2341" y="1117" id="1099" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1291" > +<CONNECTOR type="115" id="1252" > <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" /> +<P1 x="1529" y="1099" id="438" /> +<P2 x="1529" y="1127" id="929" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1292" > +<CONNECTOR type="115" id="1253" > <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" /> +<P1 x="2101" y="1433" id="398" /> +<P2 x="2101" y="1461" id="1034" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1293" > +<CONNECTOR type="115" id="1254" > <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" /> +<P1 x="2141" y="1393" id="397" /> +<P2 x="2178" y="1416" id="1129" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1294" > +<CONNECTOR type="115" id="1255" > <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" /> +<P1 x="1688" y="890" id="452" /> +<P2 x="1607" y="996" id="443" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1295" > +<CONNECTOR type="115" id="1256" > <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" /> +<P1 x="1768" y="890" id="453" /> +<P2 x="2277" y="941" id="403" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1296" > +<CONNECTOR type="115" id="1257" > <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" /> +<P1 x="2317" y="966" id="405" /> +<P2 x="2341" y="1019" id="465" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1297" > +<CONNECTOR type="115" id="1258" > <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" /> +<P1 x="2341" y="1147" id="1100" /> +<P2 x="2341" y="1194" id="1124" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1298" > +<CONNECTOR type="115" id="1259" > <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" /> +<P1 x="2341" y="1224" id="1125" /> +<P2 x="2341" y="1262" id="1119" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1299" > +<CONNECTOR type="115" id="1260" > <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" /> +<P1 x="1731" y="1051" id="936" /> +<P2 x="1731" y="1081" id="1136" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1300" > +<CONNECTOR type="115" id="1261" > <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" /> +<P1 x="1647" y="1021" id="445" /> +<P2 x="1659" y="1052" id="1127" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1301" > +<CONNECTOR type="115" id="1262" > <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" /> +<P1 x="1826" y="1324" id="422" /> +<P2 x="1826" y="1344" id="1022" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1302" > +<CONNECTOR type="115" id="1263" > <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" /> +<P1 x="1826" y="1374" id="1023" /> +<P2 x="1828" y="1452" id="1025" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1303" > +<CONNECTOR type="115" id="1264" > <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" /> +<P1 x="1786" y="1284" id="420" /> +<P2 x="1740" y="1330" id="1020" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1304" > +<CONNECTOR type="115" id="1265" > <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" /> +<P1 x="1920" y="1436" id="1028" /> +<P2 x="1920" y="1476" id="1030" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1305" > +<CONNECTOR type="115" id="1266" > <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" /> +<P1 x="1996" y="1518" id="1040" /> +<P2 x="1996" y="1538" id="1032" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1306" > +<CONNECTOR type="115" id="1267" > <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" /> +<P1 x="2036" y="1361" id="413" /> +<P2 x="2101" y="1368" id="395" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1307" > +<CONNECTOR type="115" id="1268" > <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" /> +<P1 x="1866" y="1284" id="421" /> +<P2 x="1996" y="1336" id="411" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1308" > +<CONNECTOR type="115" id="1269" > <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" /> +<P1 x="2341" y="1292" id="1120" /> +<P2 x="2340" y="1319" id="1122" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1309" > +<CONNECTOR type="115" id="1270" > <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" /> +<P1 x="2217" y="1449" id="1097" /> +<P2 x="2217" y="1478" id="1082" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1310" > +<CONNECTOR type="115" id="1271" > <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" /> +<P1 x="2277" y="1006" id="406" /> +<P2 x="2278" y="1034" id="1131" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1311" > +<CONNECTOR type="115" id="1272" > <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" /> +<P1 x="1642" y="1429" id="1018" /> +<P2 x="1642" y="1463" id="975" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1312" > +<CONNECTOR type="115" id="1273" > <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" /> +<P1 x="1529" y="1157" id="930" /> +<P2 x="1529" y="1187" id="1133" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1313" > +<CONNECTOR type="115" id="1274" > <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" /> +<P1 x="1529" y="1217" id="1134" /> +<P2 x="1529" y="1249" id="433" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1314" > +<CONNECTOR type="115" id="1275" > <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" /> +<P1 x="1691" y="1156" id="428" /> +<P2 x="1641" y="1230" id="457" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1315" > +<CONNECTOR type="115" id="1276" > <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" /> +<P1 x="1771" y="1156" id="429" /> +<P2 x="1826" y="1259" id="419" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="115" id="1316" > +<CONNECTOR type="115" id="1277" > <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" /> +<P1 x="1731" y="1111" id="1137" /> +<P2 x="1731" y="1131" id="427" /> <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" /> +<TMLActivityDiagramPanel name="SmartCard" minX="10" maxX="1400" minY="10" maxY="900" > +<COMPONENT type="1000" id="1279" > +<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="choice" value="null" /> -<TGConnectingPoint num="0" id="1320" /> -<TGConnectingPoint num="1" id="1321" /> -<TGConnectingPoint num="2" id="1322" /> -<TGConnectingPoint num="3" id="1323" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1278" /> </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" /> + +<COMPONENT type="1010" id="1282" > +<cdparam x="141" y="129" /> +<sizeparam width="51" height="20" minWidth="30" 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" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="reset() " /> +<TGConnectingPoint num="0" id="1280" /> +<TGConnectingPoint num="1" id="1281" /> +<extraparam> +<Data eventName="reset" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1008" id="1285" > +<cdparam x="113" y="182" /> +<sizeparam width="106" height="20" minWidth="30" 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" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="send event" value="answerToReset()" /> +<TGConnectingPoint num="0" id="1283" /> +<TGConnectingPoint num="1" id="1284" /> +<extraparam> +<Data eventName="answerToReset" nbOfParams="5" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1010" id="1288" > +<cdparam x="144" y="237" /> +<sizeparam width="44" height="20" minWidth="30" 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> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="wait event" value="pTS() " /> +<TGConnectingPoint num="0" id="1286" /> +<TGConnectingPoint num="1" id="1287" /> +<extraparam> +<Data eventName="pTS" nbOfParams="5" /> +</extraparam> +</COMPONENT> -<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" /> +<COMPONENT type="1008" id="1291" > +<cdparam x="124" y="308" /> +<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="start state" value="null" /> -<TGConnectingPoint num="0" id="1325" /> +<infoparam name="send event" value="pTSConfirm()" /> +<TGConnectingPoint num="0" id="1289" /> +<TGConnectingPoint num="1" id="1290" /> +<extraparam> +<Data eventName="pTSConfirm" nbOfParams="5" /> +</extraparam> </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" /> +<COMPONENT type="301" id="1308" > +<cdparam x="376" y="98" /> +<sizeparam width="233" 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="stop state" value="null" /> -<TGConnectingPoint num="0" id="1327" /> +<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="1292" /> +<TGConnectingPoint num="1" id="1293" /> +<TGConnectingPoint num="2" id="1294" /> +<TGConnectingPoint num="3" id="1295" /> +<TGConnectingPoint num="4" id="1296" /> +<TGConnectingPoint num="5" id="1297" /> +<TGConnectingPoint num="6" id="1298" /> +<TGConnectingPoint num="7" id="1299" /> +<TGConnectingPoint num="8" id="1300" /> +<TGConnectingPoint num="9" id="1301" /> +<TGConnectingPoint num="10" id="1302" /> +<TGConnectingPoint num="11" id="1303" /> +<TGConnectingPoint num="12" id="1304" /> +<TGConnectingPoint num="13" id="1305" /> +<TGConnectingPoint num="14" id="1306" /> +<TGConnectingPoint num="15" id="1307" /> +<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="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" /> +<COMPONENT type="1007" id="1311" > +<cdparam x="254" y="97" /> +<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 event" value="timeOut()" /> -<TGConnectingPoint num="0" id="1329" /> -<TGConnectingPoint num="1" id="1330" /> +<infoparam name="send request" value="start_TCP_IP()" /> +<TGConnectingPoint num="0" id="1309" /> +<TGConnectingPoint num="1" id="1310" /> <extraparam> -<Data eventName="timeOut" nbOfParams="5" /> +<Data requestName="start_TCP_IP" 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" /> +<COMPONENT type="1007" id="1314" > +<cdparam x="241" y="148" /> +<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="stop() " /> -<TGConnectingPoint num="0" id="1332" /> -<TGConnectingPoint num="1" id="1333" /> +<infoparam name="send request" value="start_Application()" /> +<TGConnectingPoint num="0" id="1312" /> +<TGConnectingPoint num="1" id="1313" /> <extraparam> -<Data eventName="stop" nbOfParams="5" /> +<Data requestName="start_Application" nbOfParams="5" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="1336" > -<cdparam x="612" y="365" /> +<COMPONENT type="1001" id="1316" > +<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="1335" /> +<TGConnectingPoint num="0" id="1315" /> </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" /> +<COMPONENT type="1008" id="1319" > +<cdparam x="309" y="350" /> +<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="notified event" value="x=?stop()" /> -<TGConnectingPoint num="0" id="1337" /> -<TGConnectingPoint num="1" id="1338" /> +<infoparam name="send event" value="data_Ready_SC()" /> +<TGConnectingPoint num="0" id="1317" /> +<TGConnectingPoint num="1" id="1318" /> <extraparam> -<Data eventName="stop" variable="x" /> +<Data eventName="data_Ready_SC" nbOfParams="5" /> </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" /> +<COMPONENT type="1001" id="1321" > +<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="choice" value="null" /> -<TGConnectingPoint num="0" id="1349" /> -<TGConnectingPoint num="1" id="1350" /> -<TGConnectingPoint num="2" id="1351" /> -<TGConnectingPoint num="3" id="1352" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="1320" /> </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" /> + +<COMPONENT type="1009" id="1324" > +<cdparam x="321" y="308" /> +<sizeparam width="83" height="20" minWidth="30" 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> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="read channel" value="fromTtoP(1) " /> +<TGConnectingPoint num="0" id="1322" /> +<TGConnectingPoint num="1" id="1323" /> +<extraparam> +<Data channelName="fromTtoP" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> +</COMPONENT> -<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" /> +<COMPONENT type="1010" id="1327" > +<cdparam x="337" y="264" /> +<sizeparam width="50" 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="start state" value="null" /> -<TGConnectingPoint num="0" id="1354" /> +<infoparam name="wait event" value="send() " /> +<TGConnectingPoint num="0" id="1325" /> +<TGConnectingPoint num="1" id="1326" /> +<extraparam> +<Data eventName="send" nbOfParams="5" /> +</extraparam> </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" /> +<COMPONENT type="1006" id="1330" > +<cdparam x="319" y="392" /> +<sizeparam width="87" 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="open()" /> -<TGConnectingPoint num="0" id="1356" /> -<TGConnectingPoint num="1" id="1357" /> +<infoparam name="write channel" value="fromSCtoD(1)" /> +<TGConnectingPoint num="0" id="1328" /> +<TGConnectingPoint num="1" id="1329" /> <extraparam> -<Data eventName="open" nbOfParams="5" /> +<Data channelName="fromSCtoD" nbOfSamples="1" secPattern="" isAttacker="No" /> </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" /> +<COMPONENT type="1008" id="1333" > +<cdparam x="496" y="350" /> +<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="write channel" value="fromAtoT(1)" /> -<TGConnectingPoint num="0" id="1359" /> -<TGConnectingPoint num="1" id="1360" /> +<infoparam name="send event" value="receive()" /> +<TGConnectingPoint num="0" id="1331" /> +<TGConnectingPoint num="1" id="1332" /> <extraparam> -<Data channelName="fromAtoT" nbOfSamples="1" secPattern="" isAttacker="No" /> +<Data eventName="receive" nbOfParams="5" /> </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" /> +<COMPONENT type="1009" id="1336" > +<cdparam x="480" y="311" /> +<sizeparam width="91" 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="send_TCP()" /> -<TGConnectingPoint num="0" id="1362" /> -<TGConnectingPoint num="1" id="1363" /> +<infoparam name="read channel" value="fromDtoSC(1) " /> +<TGConnectingPoint num="0" id="1334" /> +<TGConnectingPoint num="1" id="1335" /> <extraparam> -<Data eventName="send_TCP" nbOfParams="5" /> +<Data channelName="fromDtoSC" nbOfSamples="1" secPattern="" isAttacker="No" /> </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" /> +<COMPONENT type="1006" id="1339" > +<cdparam x="486" y="387" /> +<sizeparam width="79" 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="stop state" value="null" /> -<TGConnectingPoint num="0" id="1365" /> +<infoparam name="write channel" value="fromPtoT(1)" /> +<TGConnectingPoint num="0" id="1337" /> +<TGConnectingPoint num="1" id="1338" /> +<extraparam> +<Data channelName="fromPtoT" nbOfSamples="1" secPattern="" isAttacker="No" /> +</extraparam> </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" /> +<COMPONENT type="1010" id="1342" > +<cdparam x="470" y="268" /> +<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="send event" value="abort()" /> -<TGConnectingPoint num="0" id="1367" /> -<TGConnectingPoint num="1" id="1368" /> +<infoparam name="wait event" value="data_Ready(t, b) " /> +<TGConnectingPoint num="0" id="1340" /> +<TGConnectingPoint num="1" id="1341" /> +<breakpoint /> <extraparam> -<Data eventName="abort" nbOfParams="5" /> +<Data eventName="data_Ready" nbOfParams="5" /> +<Param index="0" value="t" /> +<Param index="1" value="b" /> </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" /> +<COMPONENT type="1014" id="1346" > +<cdparam x="236" y="202" /> +<sizeparam width="125" 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="close()" /> -<TGConnectingPoint num="0" id="1370" /> -<TGConnectingPoint num="1" id="1371" /> +<infoparam name="for loop" value="for(j=0;x==0;j = j)" /> +<TGConnectingPoint num="0" id="1343" /> +<TGConnectingPoint num="1" id="1344" /> +<TGConnectingPoint num="2" id="1345" /> <extraparam> -<Data eventName="close" nbOfParams="5" /> +<Data init="j=0" condition="x==0" increment="j = j" /> </extraparam> </COMPONENT> -<COMPONENT type="1001" id="1374" > -<cdparam x="422" y="386" /> +<COMPONENT type="1001" id="1348" > +<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="1373" /> +<TGConnectingPoint num="0" id="1347" /> +</COMPONENT> + +<COMPONENT type="1018" id="1359" > +<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" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="select" value="null" /> +<TGConnectingPoint num="0" id="1349" /> +<TGConnectingPoint num="1" id="1350" /> +<TGConnectingPoint num="2" id="1351" /> +<TGConnectingPoint num="3" id="1352" /> +<TGConnectingPoint num="4" id="1353" /> +<TGConnectingPoint num="5" id="1354" /> +<TGConnectingPoint num="6" id="1355" /> +<TGConnectingPoint num="7" id="1356" /> +<TGConnectingPoint num="8" id="1357" /> +<TGConnectingPoint num="9" id="1358" /> </COMPONENT> +<CONNECTOR type="115" id="1364" > +<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="1290" /> +<P2 x="298" y="92" id="1309" /> +<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="1360" > +<father id="1364" 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="1361" > +<father id="1364" 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="1362" > +<father id="1364" 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="1363" > +<father id="1364" 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="1365" > +<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="1278" /> +<P2 x="166" y="124" id="1280" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1366" > +<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="1281" /> +<P2 x="166" y="177" id="1283" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1367" > +<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="1310" /> +<P2 x="298" y="143" id="1312" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1368" > +<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="1326" /> +<P2 x="362" y="303" id="1322" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1369" > +<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="1323" /> +<P2 x="362" y="345" id="1317" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1370" > +<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="1318" /> +<P2 x="362" y="387" id="1328" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1371" > +<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="1329" /> +<P2 x="362" y="421" id="1320" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1372" > +<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="1335" /> +<P2 x="525" y="345" id="1331" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1373" > +<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="1332" /> +<P2 x="525" y="382" id="1337" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="1374" > +<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="1341" /> +<P2 x="525" y="306" id="1334" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> <CONNECTOR type="115" id="1375" > -<cdparam x="509" y="94" /> +<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 start state to send event" value="null" /> -<P1 x="508" y="111" id="1354" /> -<P2 x="508" y="124" id="1356" /> +<infoparam name="connector from write channel to stop state" value="null" /> +<P1 x="525" y="412" id="1338" /> +<P2 x="525" y="423" id="1315" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="115" id="1376" > -<cdparam x="508" y="154" /> +<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 event to write channel" value="null" /> -<P1 x="508" y="154" id="1357" /> -<P2 x="508" y="173" id="1359" /> +<infoparam name="connector from send request to for loop" value="null" /> +<P1 x="298" y="173" id="1313" /> +<P2 x="298" y="197" id="1343" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="115" id="1377" > -<cdparam x="508" y="222" /> +<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 write channel to send event" value="null" /> -<P1 x="508" y="203" id="1360" /> -<P2 x="507" y="221" id="1362" /> +<infoparam name="connector from for loop to stop state" value="null" /> +<P1 x="298" y="227" id="1345" /> +<P2 x="307" y="226" id="1347" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="115" id="1378" > -<cdparam x="586" y="354" /> +<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 send event to stop state" value="null" /> -<P1 x="586" y="354" id="1368" /> -<P2 x="586" y="383" id="1365" /> +<infoparam name="connector from select to wait event" value="null" /> +<P1 x="399" y="241" id="1350" /> +<P2 x="362" y="259" id="1325" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="115" id="1379" > -<cdparam x="508" y="298" /> +<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 send event to choice" value="null" /> -<P1 x="507" y="251" id="1363" /> -<P2 x="506" y="267" id="1349" /> +<infoparam name="connector from select to wait event" value="null" /> +<P1 x="479" y="241" id="1351" /> +<P2 x="525" y="263" id="1340" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="115" id="1380" > -<cdparam x="470" y="348" /> +<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 choice to send event" value="null" /> -<P1 x="466" y="292" id="1350" /> -<P2 x="432" y="332" id="1370" /> +<infoparam name="connector from for loop to select" value="null" /> +<P1 x="361" y="216" id="1344" /> +<P2 x="439" y="216" id="1349" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="115" id="1381" > -<cdparam x="432" y="362" /> +<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 send event to stop state" value="null" /> -<P1 x="432" y="362" id="1371" /> -<P2 x="432" y="381" id="1373" /> +<infoparam name="connector from wait event to send event" value="null" /> +<P1 x="166" y="262" id="1287" /> +<P2 x="166" y="303" id="1289" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="115" id="1382" > -<cdparam x="550" y="348" /> +<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 choice to send event" value="null" /> -<P1 x="546" y="292" id="1351" /> -<P2 x="586" y="324" id="1367" /> +<infoparam name="connector from send event to wait event" value="null" /> +<P1 x="166" y="207" id="1284" /> +<P2 x="166" y="232" id="1286" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -6192,11 +6192,11 @@ On prend b=1 comme exemple </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" /> +<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="350" minY="0" maxY="271" /> -<infoparam name="TGComponent" value="AppC::Timer" /> +<cdrectangleparam minX="0" maxX="287" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::InterfaceDevice" /> <TGConnectingPoint num="0" id="1383" /> <TGConnectingPoint num="1" id="1384" /> <TGConnectingPoint num="2" id="1385" /> @@ -6206,16 +6206,16 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1389" /> <TGConnectingPoint num="7" id="1390" /> <extraparam> -<info value="AppC::Timer" taskName="Timer" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +<info value="AppC::InterfaceDevice" taskName="InterfaceDevice" 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" /> +<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="315" minY="0" maxY="271" /> -<infoparam name="TGComponent" value="AppC::Application" /> +<cdrectangleparam minX="0" maxX="318" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::SmartCard" /> <TGConnectingPoint num="0" id="1392" /> <TGConnectingPoint num="1" id="1393" /> <TGConnectingPoint num="2" id="1394" /> @@ -6225,7 +6225,7 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1398" /> <TGConnectingPoint num="7" id="1399" /> <extraparam> -<info value="AppC::Application" taskName="Application" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> </extraparam> </SUBCOMPONENT> <SUBCOMPONENT type="1101" id="1409" > @@ -6249,11 +6249,11 @@ On prend b=1 comme exemple </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" /> +<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="318" minY="0" maxY="271" /> -<infoparam name="TGComponent" value="AppC::SmartCard" /> +<cdrectangleparam minX="0" maxX="315" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::Application" /> <TGConnectingPoint num="0" id="1410" /> <TGConnectingPoint num="1" id="1411" /> <TGConnectingPoint num="2" id="1412" /> @@ -6263,16 +6263,16 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1416" /> <TGConnectingPoint num="7" id="1417" /> <extraparam> -<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +<info value="AppC::Application" taskName="Application" 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" /> +<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="287" minY="0" maxY="271" /> -<infoparam name="TGComponent" value="AppC::InterfaceDevice" /> +<cdrectangleparam minX="0" maxX="350" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::Timer" /> <TGConnectingPoint num="0" id="1419" /> <TGConnectingPoint num="1" id="1420" /> <TGConnectingPoint num="2" id="1421" /> @@ -6282,7 +6282,7 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1425" /> <TGConnectingPoint num="7" id="1426" /> <extraparam> -<info value="AppC::InterfaceDevice" taskName="InterfaceDevice" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +<info value="AppC::Timer" taskName="Timer" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> </extraparam> </SUBCOMPONENT> @@ -6296,6 +6296,102 @@ On prend b=1 comme exemple <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" > +<CONNECTOR type="125" id="1717" > +<cdparam x="1102" y="237" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="1102" y="237" id="1703" /> +<P2 x="934" y="189" id="1671" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<COMPONENT type="1105" id="1692" > +<cdparam x="1102" y="187" /> +<sizeparam width="200" height="200" minWidth="100" minHeight="35" 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="1693" /> +<TGConnectingPoint num="1" id="1694" /> +<TGConnectingPoint num="2" id="1695" /> +<TGConnectingPoint num="3" id="1696" /> +<TGConnectingPoint num="4" id="1697" /> +<TGConnectingPoint num="5" id="1698" /> +<TGConnectingPoint num="6" id="1699" /> +<TGConnectingPoint num="7" id="1700" /> +<TGConnectingPoint num="8" id="1701" /> +<TGConnectingPoint num="9" id="1702" /> +<TGConnectingPoint num="10" id="1703" /> +<TGConnectingPoint num="11" id="1704" /> +<TGConnectingPoint num="12" id="1705" /> +<TGConnectingPoint num="13" id="1706" /> +<TGConnectingPoint num="14" id="1707" /> +<TGConnectingPoint num="15" id="1708" /> +<TGConnectingPoint num="16" id="1709" /> +<TGConnectingPoint num="17" id="1710" /> +<TGConnectingPoint num="18" id="1711" /> +<TGConnectingPoint num="19" id="1712" /> +<TGConnectingPoint num="20" id="1713" /> +<TGConnectingPoint num="21" id="1714" /> +<TGConnectingPoint num="22" id="1715" /> +<TGConnectingPoint num="23" id="1716" /> +<extraparam> +<info stereotype="MEMORY" nodeName="Memory0" /> +<attributes byteDataSize="4" clockRatio="1" bufferType="0" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="125" id="1691" > +<cdparam x="576" y="243" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="{info}" /> +<P1 x="576" y="243" id="1607" /> +<P2 x="684" y="201" id="1679" /> +<AutomaticDrawing data="true" /> +<extraparam> +<info priority="0" /> +<spy value="false" /> +</extraparam> +</CONNECTOR> +<COMPONENT type="1102" id="1666" > +<cdparam x="684" y="164" /> +<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="Bus1" value="name" /> +<TGConnectingPoint num="0" id="1667" /> +<TGConnectingPoint num="1" id="1668" /> +<TGConnectingPoint num="2" id="1669" /> +<TGConnectingPoint num="3" id="1670" /> +<TGConnectingPoint num="4" id="1671" /> +<TGConnectingPoint num="5" id="1672" /> +<TGConnectingPoint num="6" id="1673" /> +<TGConnectingPoint num="7" id="1674" /> +<TGConnectingPoint num="8" id="1675" /> +<TGConnectingPoint num="9" id="1676" /> +<TGConnectingPoint num="10" id="1677" /> +<TGConnectingPoint num="11" id="1678" /> +<TGConnectingPoint num="12" id="1679" /> +<TGConnectingPoint num="13" id="1680" /> +<TGConnectingPoint num="14" id="1681" /> +<TGConnectingPoint num="15" id="1682" /> +<TGConnectingPoint num="16" id="1683" /> +<TGConnectingPoint num="17" id="1684" /> +<TGConnectingPoint num="18" id="1685" /> +<TGConnectingPoint num="19" id="1686" /> +<TGConnectingPoint num="20" id="1687" /> +<TGConnectingPoint num="21" id="1688" /> +<TGConnectingPoint num="22" id="1689" /> +<TGConnectingPoint num="23" id="1690" /> +<extraparam> +<info stereotype="BUS-RR" nodeName="Bus1" /> +<attributes byteDataSize="4" arbitrationPolicy="0" sliceTime="10000" pipelineSize="1" clockRatio="1" privacy="0" referenceAttack="null" /> +</extraparam> +</COMPONENT> + <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" /> @@ -6515,11 +6611,11 @@ On prend b=1 comme exemple </COMPONENT> <SUBCOMPONENT type="1101" id="1579" > <father id="1622" num="0" /> -<cdparam x="486" y="303" /> -<sizeparam width="141" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="396" y="258" /> +<sizeparam width="109" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="109" minY="0" maxY="106" /> -<infoparam name="TGComponent" value="AppC::SmartCard" /> +<cdrectangleparam minX="0" maxX="141" minY="0" maxY="106" /> +<infoparam name="TGComponent" value="AppC::TCPIP" /> <TGConnectingPoint num="0" id="1571" /> <TGConnectingPoint num="1" id="1572" /> <TGConnectingPoint num="2" id="1573" /> @@ -6529,7 +6625,7 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1577" /> <TGConnectingPoint num="7" id="1578" /> <extraparam> -<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +<info value="AppC::TCPIP" taskName="TCPIP" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> </extraparam> </SUBCOMPONENT> <SUBCOMPONENT type="1101" id="1588" > @@ -6553,11 +6649,11 @@ On prend b=1 comme exemple </SUBCOMPONENT> <SUBCOMPONENT type="1101" id="1597" > <father id="1622" num="2" /> -<cdparam x="396" y="258" /> -<sizeparam width="109" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="486" y="303" /> +<sizeparam width="141" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="141" minY="0" maxY="106" /> -<infoparam name="TGComponent" value="AppC::TCPIP" /> +<cdrectangleparam minX="0" maxX="109" minY="0" maxY="106" /> +<infoparam name="TGComponent" value="AppC::SmartCard" /> <TGConnectingPoint num="0" id="1589" /> <TGConnectingPoint num="1" id="1590" /> <TGConnectingPoint num="2" id="1591" /> @@ -6567,7 +6663,7 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1595" /> <TGConnectingPoint num="7" id="1596" /> <extraparam> -<info value="AppC::TCPIP" taskName="TCPIP" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> +<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operation="" fatherComponentMECType="0" /> </extraparam> </SUBCOMPONENT> @@ -6668,19 +6764,19 @@ On prend b=1 comme exemple </COMPONENT> <SUBCOMPONENT type="6005" id="1637" > <father id="1645" num="0" /> -<cdparam x="523" y="361" /> +<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="355" maxY="355" /> -<infoparam name="value " value="Mapping2" /> +<cdrectangleparam minX="605" maxX="605" minY="340" maxY="340" /> +<infoparam name="value " value="Mapping1" /> </SUBCOMPONENT> <SUBCOMPONENT type="6005" id="1638" > <father id="1645" num="1" /> -<cdparam x="523" y="346" /> +<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="340" maxY="340" /> -<infoparam name="value " value="Mapping1" /> +<cdrectangleparam minX="605" maxX="605" minY="355" maxY="355" /> +<infoparam name="value " value="Mapping2" /> </SUBCOMPONENT> <COMPONENT type="6001" id="1652" > @@ -6696,19 +6792,19 @@ On prend b=1 comme exemple </COMPONENT> <SUBCOMPONENT type="6005" id="1646" > <father id="1652" num="0" /> -<cdparam x="855" y="155" /> +<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="155" maxY="155" /> -<infoparam name="value " value="Mapping2" /> +<cdrectangleparam minX="855" maxX="855" minY="140" maxY="140" /> +<infoparam name="value " value="Mapping1" /> </SUBCOMPONENT> <SUBCOMPONENT type="6005" id="1647" > <father id="1652" num="1" /> -<cdparam x="855" y="140" /> +<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="140" maxY="140" /> -<infoparam name="value " value="Mapping1" /> +<cdrectangleparam minX="855" maxX="855" minY="155" maxY="155" /> +<infoparam name="value " value="Mapping2" /> </SUBCOMPONENT> <COMPONENT type="6000" id="1658" > diff --git a/src/main/java/tmltranslator/tomappingsystemc2/TML2MappingSystemC.java b/src/main/java/tmltranslator/tomappingsystemc2/TML2MappingSystemC.java index cf514482cef7c294dfbab41045ea062b342c4b5d..dad6681a601b2ede4e945e67273212f21bcb9f35 100644 --- a/src/main/java/tmltranslator/tomappingsystemc2/TML2MappingSystemC.java +++ b/src/main/java/tmltranslator/tomappingsystemc2/TML2MappingSystemC.java @@ -37,8 +37,6 @@ */ - - package tmltranslator.tomappingsystemc2; import myutil.Conversion; @@ -53,19 +51,20 @@ import java.util.*; /** - * Class TML2MappingSystemC - * Creation: 03/09/2007 - * @version 1.0 03/09/2007 - * @author Daniel Knorreck + * Class TML2MappingSystemC + * Creation: 03/09/2007 + * + * @author Daniel Knorreck + * @version 1.0 03/09/2007 */ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { private final static String CR = "\n"; - // private final static String CR2 = "\n\n"; + // private final static String CR2 = "\n\n"; private final static String SCCR = ";\n"; - // private final static String EFCR = "}\n"; - // private final static String EFCR2 = "}\n\n"; - // private final static String EF = "}"; + // private final static String EFCR = "}\n"; + // private final static String EFCR2 = "}\n\n"; + // private final static String EF = "}"; //private final static int MAX_EVENT = 1024; private TMLModeling<?> tmlmodeling; @@ -83,34 +82,34 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { public TML2MappingSystemC(TMLModeling<?> _tmlm) { tmlmodeling = _tmlm; - tmlmodeling.removeForksAndJoins(); + tmlmodeling.removeForksAndJoins(); tmlmapping = tmlmodeling.getDefaultMapping(); - tepeTranslator = new SystemCTEPE(new ArrayList<TEPE>(), this); + tepeTranslator = new SystemCTEPE(new ArrayList<TEPE>(), this); } public TML2MappingSystemC(TMLMapping<?> _tmlmapping) { tmlmapping = _tmlmapping; - tmlmapping.handleCPs(); - tmlmapping.removeForksAndJoins(); + tmlmapping.handleCPs(); + tmlmapping.removeForksAndJoins(); tmlmapping.makeMinimumMapping(); - tepeTranslator = new SystemCTEPE(new ArrayList<TEPE>(), this); + tepeTranslator = new SystemCTEPE(new ArrayList<TEPE>(), this); } public TML2MappingSystemC(TMLModeling<?> _tmlm, List<EBRDD> _ebrdds, List<TEPE> _tepes) { tmlmodeling = _tmlm; //ebrdds = _ebrdds; tmlmapping = tmlmodeling.getDefaultMapping(); - tepeTranslator = new SystemCTEPE(_tepes, this); + tepeTranslator = new SystemCTEPE(_tepes, this); //tepeTranslator.generateTEPEs(); } public TML2MappingSystemC(TMLMapping<?> _tmlmapping, List<EBRDD> _ebrdds, List<TEPE> _tepes) { tmlmapping = _tmlmapping; - tmlmapping.handleCPs(); - tmlmapping.removeForksAndJoins(); + tmlmapping.handleCPs(); + tmlmapping.removeForksAndJoins(); //ebrdds = _ebrdds; tmlmapping.makeMinimumMapping(); - tepeTranslator = new SystemCTEPE(_tepes, this); + tepeTranslator = new SystemCTEPE(_tepes, this); //tepeTranslator.generateTEPEs(); } @@ -130,7 +129,7 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { debug = _debug; optimize = _optimize; tmlmapping.removeAllRandomSequences(); - tmlmapping.handleCPs(); + tmlmapping.handleCPs(); tmlmodeling = tmlmapping.getTMLModeling(); tasks = new ArrayList<MappedSystemCTask>(); //generateSystemCTasks(); @@ -149,7 +148,7 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { private void generateMakefileSrc() { src = "SRCS = "; - for(TMLTask mst: tmlmapping.getMappedTasks()) { + for (TMLTask mst : tmlmapping.getMappedTasks()) { src += mst.getName() + ".cpp "; } //for(EBRDD ebrdd: ebrdds){ @@ -170,7 +169,7 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { header += "#include <SimComponents.h>\n#include <Server.h>\n#include <SimServSyncInfo.h>\n#include <ListenersSimCmd.h>\n"; // Generate tasks header - for(TMLTask mst: tmlmapping.getMappedTasks()) { + for (TMLTask mst : tmlmapping.getMappedTasks()) { //header += "#include <" + mst.getReference() + ".h>" + CR; header += "#include <" + mst.getName() + ".h>" + CR; } @@ -185,36 +184,38 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { // Declaration of HW nodes declaration += "//Declaration of CPUs" + CR; - for(HwNode node: tmlmapping.getTMLArchitecture().getHwNodes()) { + for (HwNode node : tmlmapping.getTMLArchitecture().getHwNodes()) { if (node instanceof HwCPU) { - HwCPU exNode = (HwCPU)node; + HwCPU exNode = (HwCPU) node; if (exNode.getType().equals("CPURRPB")) declaration += "PrioScheduler* " + exNode.getName() + "_scheduler = new PrioScheduler(\"" + exNode.getName() + "_PrioSched\",0)" + SCCR; else //tmlmapping.getTMLArchitecture().getMasterClockFrequency() * exNode.sliceTime //declaration += "RRScheduler* " + exNode.getName() + "_scheduler = new RRScheduler(\"" + exNode.getName() + "_RRSched\", 0, 5, " + (int) Math.ceil(((float)exNode.execiTime)*(1+((float)exNode.branchingPredictionPenalty)/100)) + " ) " + SCCR; - declaration += "RRScheduler* " + exNode.getName() + "_scheduler = new RRScheduler(\"" + exNode.getName() + "_RRSched\", 0, " + (tmlmapping.getTMLArchitecture().getMasterClockFrequency() * exNode.sliceTime) + ", " + (int) Math.ceil((float)(exNode.clockRatio * Math.max(exNode.execiTime,exNode.execcTime) * (exNode.branchingPredictionPenalty * exNode.pipelineSize +100 - exNode.branchingPredictionPenalty))/100) + " ) " + SCCR; - TraceManager.addDev("cores " + exNode.nbOfCores); - for(int cores=0; cores<exNode.nbOfCores; cores++){ - //for(int cores=0; cores<1; cores++){ + declaration += "RRScheduler* " + exNode.getName() + "_scheduler = new RRScheduler(\"" + exNode.getName() + "_RRSched\", 0, " + (tmlmapping.getTMLArchitecture().getMasterClockFrequency() * exNode.sliceTime) + ", " + (int) Math.ceil((float) (exNode.clockRatio * Math.max(exNode.execiTime, exNode.execcTime) * (exNode.branchingPredictionPenalty * exNode.pipelineSize + 100 - exNode.branchingPredictionPenalty)) / 100) + " ) " + SCCR; + TraceManager.addDev("cores " + exNode.nbOfCores); + for (int cores = 0; cores < exNode.nbOfCores; cores++) { + //for(int cores=0; cores<1; cores++){ //if (tmlmapping.isAUsedHwNode(node)) { declaration += "CPU* " + exNode.getName() + cores + " = new SingleCoreCPU(" + exNode.getID() + ", \"" + exNode.getName() + "_" + cores + "\", " + exNode.getName() + "_scheduler" + ", "; - declaration += exNode.clockRatio + ", " + exNode.execiTime + ", " + exNode.execcTime + ", " + exNode.pipelineSize + ", " + exNode.taskSwitchingTime + ", " + exNode.branchingPredictionPenalty + ", " + exNode.goIdleTime + ", " + exNode.maxConsecutiveIdleCycles + ", " + exNode.byteDataSize + ")" + SCCR; - if (cores!=0) declaration+= node.getName() + cores + "->setScheduler(" + exNode.getName() + "_scheduler,false)" + SCCR; - declaration += "addCPU("+ node.getName() + cores +")"+ SCCR; + declaration += exNode.clockRatio + ", " + exNode.execiTime + ", " + exNode.execcTime + ", " + exNode.pipelineSize + ", " + exNode.taskSwitchingTime + ", " + exNode.branchingPredictionPenalty + ", " + exNode.goIdleTime + ", " + exNode.maxConsecutiveIdleCycles + ", " + exNode.byteDataSize + ")" + SCCR; + if (cores != 0) + declaration += node.getName() + cores + "->setScheduler(" + exNode.getName() + "_scheduler,false)" + SCCR; + declaration += "addCPU(" + node.getName() + cores + ")" + SCCR; } } if (node instanceof HwA) { - HwA hwaNode = (HwA)node; - declaration += "RRScheduler* " + hwaNode.getName() + "_scheduler = new RRScheduler(\"" + hwaNode.getName() + "_RRSched\", 0, " + (tmlmapping.getTMLArchitecture().getMasterClockFrequency() * HwA.DEFAULT_SLICE_TIME) + ", " + (int) Math.ceil((float)(hwaNode.clockRatio * Math.max(hwaNode.execiTime,hwaNode.execcTime) * (HwA.DEFAULT_BRANCHING_PREDICTION_PENALTY * HwA.DEFAULT_PIPELINE_SIZE +100 - HwA.DEFAULT_BRANCHING_PREDICTION_PENALTY))/100) + " ) " + SCCR; - for(int cores=0; cores<1; cores++){ + HwA hwaNode = (HwA) node; + declaration += "RRScheduler* " + hwaNode.getName() + "_scheduler = new RRScheduler(\"" + hwaNode.getName() + "_RRSched\", 0, " + (tmlmapping.getTMLArchitecture().getMasterClockFrequency() * HwA.DEFAULT_SLICE_TIME) + ", " + (int) Math.ceil((float) (hwaNode.clockRatio * Math.max(hwaNode.execiTime, hwaNode.execcTime) * (HwA.DEFAULT_BRANCHING_PREDICTION_PENALTY * HwA.DEFAULT_PIPELINE_SIZE + 100 - HwA.DEFAULT_BRANCHING_PREDICTION_PENALTY)) / 100) + " ) " + SCCR; + for (int cores = 0; cores < 1; cores++) { //if (tmlmapping.isAUsedHwNode(node)) { declaration += "CPU* " + hwaNode.getName() + cores + " = new SingleCoreCPU(" + hwaNode.getID() + ", \"" + hwaNode.getName() + "_" + cores + "\", " + hwaNode.getName() + "_scheduler" + ", "; - declaration += hwaNode.clockRatio + ", " + hwaNode.execiTime + ", " + hwaNode.execcTime + ", " + HwA.DEFAULT_PIPELINE_SIZE + ", " + HwA.DEFAULT_TASK_SWITCHING_TIME + ", " + HwA.DEFAULT_BRANCHING_PREDICTION_PENALTY + ", " + HwA.DEFAULT_GO_IDLE_TIME + ", " + HwA.DEFAULT_MAX_CONSECUTIVE_IDLE_CYCLES + ", " + hwaNode.byteDataSize + ")" + SCCR; - if (cores!=0) declaration+= node.getName() + cores + "->setScheduler(" + hwaNode.getName() + "_scheduler,false)" + SCCR; - declaration += "addCPU("+ node.getName() + cores +")"+ SCCR; + declaration += hwaNode.clockRatio + ", " + hwaNode.execiTime + ", " + hwaNode.execcTime + ", " + HwA.DEFAULT_PIPELINE_SIZE + ", " + HwA.DEFAULT_TASK_SWITCHING_TIME + ", " + HwA.DEFAULT_BRANCHING_PREDICTION_PENALTY + ", " + HwA.DEFAULT_GO_IDLE_TIME + ", " + HwA.DEFAULT_MAX_CONSECUTIVE_IDLE_CYCLES + ", " + hwaNode.byteDataSize + ")" + SCCR; + if (cores != 0) + declaration += node.getName() + cores + "->setScheduler(" + hwaNode.getName() + "_scheduler,false)" + SCCR; + declaration += "addCPU(" + node.getName() + cores + ")" + SCCR; } } @@ -225,14 +226,15 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { declaration += "//Declaration of Buses" + CR; //declaration+="Bus* defaultBus = new Bus(-1,\"defaultBus\",100,1,1)" + SCCR; //declaration += "addBus(defaultBus)"+ SCCR; - for(HwNode node: tmlmapping.getTMLArchitecture().getHwNodes()) { + for (HwNode node : tmlmapping.getTMLArchitecture().getHwNodes()) { if (node instanceof HwBus) { //if (tmlmapping.isAUsedHwNode(node)) { - HwBus thisBus = (HwBus)node; - for(int i=0; i< thisBus.pipelineSize; i++){ - declaration += "Bus* " + node.getName() + "_" + i + " = new Bus("+ node.getID() + ",\"" + node.getName() + "_" + i + "\",0, 100, "+ thisBus.byteDataSize + ", " + node.clockRatio + ","; - if(thisBus.arbitration==HwBus.CAN) declaration +="true"; else declaration +="false"; - declaration += ");\naddBus("+ node.getName() + "_" + i + ")"+ SCCR; + HwBus thisBus = (HwBus) node; + for (int i = 0; i < thisBus.pipelineSize; i++) { + declaration += "Bus* " + node.getName() + "_" + i + " = new Bus(" + node.getID() + ",\"" + node.getName() + "_" + i + "\",0, 100, " + thisBus.byteDataSize + ", " + node.clockRatio + ","; + if (thisBus.arbitration == HwBus.CAN) declaration += "true"; + else declaration += "false"; + declaration += ");\naddBus(" + node.getName() + "_" + i + ")" + SCCR; } //} } @@ -241,10 +243,10 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { // Declaration of Bridges declaration += "//Declaration of Bridges" + CR; - for(HwNode node: tmlmapping.getTMLArchitecture().getHwNodes()) { + for (HwNode node : tmlmapping.getTMLArchitecture().getHwNodes()) { if (node instanceof HwBridge) { - declaration+= "Bridge* " + node.getName() + " = new Bridge("+ node.getID() + ",\"" + node.getName() + "\", " + node.clockRatio + ", " + ((HwBridge)node).bufferByteSize + ")" +SCCR; - declaration += "addBridge("+ node.getName() +")"+ SCCR; + declaration += "Bridge* " + node.getName() + " = new Bridge(" + node.getID() + ",\"" + node.getName() + "\", " + node.clockRatio + ", " + ((HwBridge) node).bufferByteSize + ")" + SCCR; + declaration += "addBridge(" + node.getName() + ")" + SCCR; } } declaration += CR; @@ -253,36 +255,37 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { //declaration += "//Declaration of Memories\nMemory* defaultMemory = new Memory(-1,\"defaultMemory\",1,4)" + SCCR; //declaration += "addMem(defaultMemory)"+ SCCR; declaration += "//Declaration of Memories" + CR; - for(HwNode node: tmlmapping.getTMLArchitecture().getHwNodes()) { + for (HwNode node : tmlmapping.getTMLArchitecture().getHwNodes()) { if (node instanceof HwMemory) { - declaration+= "Memory* " + node.getName() + " = new Memory("+ node.getID() + ",\"" + node.getName() + "\", " + node.clockRatio + ", " + ((HwMemory)node).byteDataSize + ")" +SCCR; - declaration += "addMem("+ node.getName() +")"+ SCCR; + declaration += "Memory* " + node.getName() + " = new Memory(" + node.getID() + ",\"" + node.getName() + "\", " + node.clockRatio + ", " + ((HwMemory) node).byteDataSize + ")" + SCCR; + declaration += "addMem(" + node.getName() + ")" + SCCR; } } declaration += CR; //Declaration of Bus masters declaration += "//Declaration of Bus masters" + CR; - for(HwNode node: tmlmapping.getTMLArchitecture().getHwNodes()){ - if (node instanceof HwExecutionNode || node instanceof HwBridge){ - List<HwLink> nodeLinks= tmlmapping.getTMLArchitecture().getLinkByHwNode(node); - if (!nodeLinks.isEmpty()){ + for (HwNode node : tmlmapping.getTMLArchitecture().getHwNodes()) { + if (node instanceof HwExecutionNode || node instanceof HwBridge) { + List<HwLink> nodeLinks = tmlmapping.getTMLArchitecture().getLinkByHwNode(node); + if (!nodeLinks.isEmpty()) { //declaration+= "BusMaster* " + node.getName() + "2defaultBus = new BusMaster(\"" + node.getName() + "2defaultBus\", 0, defaultBus)" + SCCR; //else{ - for(HwLink link: nodeLinks){ + for (HwLink link : nodeLinks) { //declaration+= "BusMaster* " + node.getName() + "_" + link.bus.getName() + "_Master = new BusMaster(\"" + node.getName() + "_" + link.bus.getName() + "_Master\", " + link.getPriority() + ", 1, array(1, (SchedulableCommDevice*)" + link.bus.getName() + "))" + SCCR; int noOfCores; - if (node instanceof HwCPU) noOfCores= ((HwCPU)node).nbOfCores; else noOfCores=1; + if (node instanceof HwCPU) noOfCores = ((HwCPU) node).nbOfCores; + else noOfCores = 1; //noOfCores=2; - for (int cores=0; cores<noOfCores; cores++){ - String nodeName=node.getName(); - if ((node instanceof HwCPU) || (node instanceof HwA) ) - nodeName+= cores; - declaration+= "BusMaster* " + nodeName + "_" + link.bus.getName() + "_Master = new BusMaster(\"" + nodeName + "_" + link.bus.getName() + "_Master\", " + link.getPriority() + ", " + link.bus.pipelineSize + ", array(" + link.bus.pipelineSize; - for(int i=0; i< link.bus.pipelineSize; i++) - declaration+= ", (SchedulableCommDevice*)" + link.bus.getName() + "_" + i; - declaration+= "))" + SCCR; - declaration+= nodeName + "->addBusMaster(" + nodeName + "_" + link.bus.getName() + "_Master)" + SCCR; + for (int cores = 0; cores < noOfCores; cores++) { + String nodeName = node.getName(); + if ((node instanceof HwCPU) || (node instanceof HwA)) + nodeName += cores; + declaration += "BusMaster* " + nodeName + "_" + link.bus.getName() + "_Master = new BusMaster(\"" + nodeName + "_" + link.bus.getName() + "_Master\", " + link.getPriority() + ", " + link.bus.pipelineSize + ", array(" + link.bus.pipelineSize; + for (int i = 0; i < link.bus.pipelineSize; i++) + declaration += ", (SchedulableCommDevice*)" + link.bus.getName() + "_" + i; + declaration += "))" + SCCR; + declaration += nodeName + "->addBusMaster(" + nodeName + "_" + link.bus.getName() + "_Master)" + SCCR; } } } @@ -292,121 +295,122 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { // Declaration of channels TMLChannel channel; - String tmp,param; + String tmp, param; declaration += "//Declaration of channels" + CR; - for(TMLElement elem: tmlmodeling.getChannels()){ + for (TMLElement elem : tmlmodeling.getChannels()) { if (elem instanceof TMLChannel) { - channel = (TMLChannel)elem; - switch(channel.getType()) { - case TMLChannel.BRBW: - tmp = "TMLbrbwChannel"; - param= "," + channel.getMax() + ",0"; - break; - case TMLChannel.BRNBW: - tmp = "TMLbrnbwChannel"; - param= ",0"; - break; - case TMLChannel.NBRNBW: - default: - tmp = "TMLnbrnbwChannel"; - param= ""; + channel = (TMLChannel) elem; + switch (channel.getType()) { + case TMLChannel.BRBW: + tmp = "TMLbrbwChannel"; + param = "," + channel.getMax() + ",0"; + break; + case TMLChannel.BRNBW: + tmp = "TMLbrnbwChannel"; + param = ",0"; + break; + case TMLChannel.NBRNBW: + default: + tmp = "TMLnbrnbwChannel"; + param = ""; } - declaration += tmp + "* " + channel.getExtendedName() + " = new " + tmp +"(" + channel.getID() + ",\"" + channel.getName() + "\"," + channel.getSize() + ","; + declaration += tmp + "* " + channel.getExtendedName() + " = new " + tmp + "(" + channel.getID() + ",\"" + channel.getName() + "\"," + channel.getSize() + ","; //TraceManager.addDev("Channel: " + channel.getName()); //TraceManager.addDev("Channel origin node: " + channel.getOriginTask().getName() + " dest node: " + channel.getDestinationTask().getName()); //TraceManager.addDev( "the list of mapped tasks: " + tmlmapping.getMappedTasksString()); - declaration+= determineRouting(tmlmapping.getHwNodeOf(channel.getOriginTask()), tmlmapping.getHwNodeOf(channel.getDestinationTask()), elem) + param + "," + channel.getPriority(); - if (channel.isLossy() && channel.getType()!=TMLChannel.NBRNBW) declaration += "," + channel.getLossPercentage() + "," + channel.getMaxNbOfLoss(); - declaration += ")"+ SCCR; - declaration += "addChannel("+ channel.getExtendedName() +")"+ SCCR; + declaration += determineRouting(tmlmapping.getHwNodeOf(channel.getOriginTask()), tmlmapping.getHwNodeOf(channel.getDestinationTask()), elem) + param + "," + channel.getPriority(); + if (channel.isLossy() && channel.getType() != TMLChannel.NBRNBW) + declaration += "," + channel.getLossPercentage() + "," + channel.getMaxNbOfLoss(); + declaration += ")" + SCCR; + declaration += "addChannel(" + channel.getExtendedName() + ")" + SCCR; } } declaration += CR; // Declaration of events declaration += "//Declaration of events" + CR; - for(TMLEvent evt: tmlmodeling.getEvents()) { + for (TMLEvent evt : tmlmodeling.getEvents()) { if (evt.isInfinite()) { tmp = "TMLEventBChannel<ParamType," + evt.getNbOfParams() + ">"; - param= ",0,false,false"; + param = ",0,false,false"; } else { if (evt.isBlocking()) { tmp = "TMLEventFBChannel<ParamType," + evt.getNbOfParams() + ">"; - param= "," + evt.getMaxSize() + ",0"; + param = "," + evt.getMaxSize() + ",0"; } else { tmp = "TMLEventFChannel<ParamType," + evt.getNbOfParams() + ">"; - param= "," + evt.getMaxSize() + ",0"; + param = "," + evt.getMaxSize() + ",0"; } } //param += "," + evt.getNbOfParams(); - if (tmlmapping.isCommNodeMappedOn(evt,null)){ + if (tmlmapping.isCommNodeMappedOn(evt, null)) { TraceManager.addDev("Evt: " + evt.getName()); declaration += tmp + "* " + evt.getExtendedName() + " = new " + tmp + "(" + evt.getID() + ",\"" + evt.getName() + "\"," + determineRouting(tmlmapping.getHwNodeOf(evt.getOriginTask()), tmlmapping.getHwNodeOf(evt.getDestinationTask()), evt) + param; - }else{ + } else { declaration += tmp + "* " + evt.getExtendedName() + " = new " + tmp + "(" + evt.getID() + ",\"" + evt.getName() + "\",0,0,0" + param; ///old command } if (evt.isLossy()) declaration += "," + evt.getLossPercentage() + "," + evt.getMaxNbOfLoss(); declaration += ")" + SCCR; - declaration += "addEvent("+ evt.getExtendedName() +")"+ SCCR; + declaration += "addEvent(" + evt.getExtendedName() + ")" + SCCR; } declaration += CR; // Declaration of requests declaration += "//Declaration of requests" + CR; - for(TMLTask task: tmlmodeling.getTasks()) { - if (task.isRequested()){ + for (TMLTask task : tmlmodeling.getTasks()) { + if (task.isRequested()) { TMLRequest req = task.getRequest(); - if (tmlmapping.isCommNodeMappedOn(req,null)){ + if (tmlmapping.isCommNodeMappedOn(req, null)) { //declaration += "TMLEventBChannel* reqChannel_"+ task.getName() + " = new TMLEventBChannel(" + TraceManager.addDev("Request: " + req.getName()); - declaration += "TMLEventBChannel<ParamType," + req.getNbOfParams() + ">* reqChannel_"+ task.getName() + " = new TMLEventBChannel<ParamType," + req.getNbOfParams() + ">(" + - req.getID() + ",\"reqChannel"+ task.getName() + "\"," + - determineRouting(tmlmapping.getHwNodeOf(req.getOriginTasks().get(0)), //tmlmapping.getHwNodeOf(req.getDestinationTask()), req) + ",0," + req.getNbOfParams() + ",true)" + SCCR; - tmlmapping.getHwNodeOf(req.getDestinationTask()), req) + ",0,true,false"; - }else{ - declaration += "TMLEventBChannel<ParamType," + req.getNbOfParams() + ">* reqChannel_"+ task.getName() + " = new TMLEventBChannel<ParamType," + req.getNbOfParams() + ">(" + //req.getID() + ",\"reqChannel"+ task.getName() + "\",0,0,0,0," + req.getNbOfParams() + ",true)" + SCCR; - req.getID() + ",\"reqChannel"+ task.getName() + "\",0,0,0,0,true,false"; + declaration += "TMLEventBChannel<ParamType," + req.getNbOfParams() + ">* reqChannel_" + task.getName() + " = new TMLEventBChannel<ParamType," + req.getNbOfParams() + ">(" + + req.getID() + ",\"reqChannel" + task.getName() + "\"," + + determineRouting(tmlmapping.getHwNodeOf(req.getOriginTasks().get(0)), //tmlmapping.getHwNodeOf(req.getDestinationTask()), req) + ",0," + req.getNbOfParams() + ",true)" + SCCR; + tmlmapping.getHwNodeOf(req.getDestinationTask()), req) + ",0,true,false"; + } else { + declaration += "TMLEventBChannel<ParamType," + req.getNbOfParams() + ">* reqChannel_" + task.getName() + " = new TMLEventBChannel<ParamType," + req.getNbOfParams() + ">(" + //req.getID() + ",\"reqChannel"+ task.getName() + "\",0,0,0,0," + req.getNbOfParams() + ",true)" + SCCR; + req.getID() + ",\"reqChannel" + task.getName() + "\",0,0,0,0,true,false"; } if (req.isLossy()) declaration += "," + req.getLossPercentage() + "," + req.getMaxNbOfLoss(); declaration += ")" + SCCR; - declaration += "addRequest(reqChannel_"+ task.getName() +")"+ SCCR; + declaration += "addRequest(reqChannel_" + task.getName() + ")" + SCCR; } } declaration += CR; ///Set bus schedulers declaration += "//Set bus schedulers" + CR; - for(HwNode node: tmlmapping.getTMLArchitecture().getHwNodes()) { + for (HwNode node : tmlmapping.getTMLArchitecture().getHwNodes()) { if (node instanceof HwBus) { - List<HwLink> busLinks= tmlmapping.getTMLArchitecture().getLinkByBus((HwBus)node); - String devices=""; - int numDevices=0; - if (!busLinks.isEmpty()){ - for(HwLink link: busLinks){ - if (link.hwnode instanceof HwExecutionNode || link.hwnode instanceof HwBridge){ - if ((link.hwnode instanceof HwCPU) || (link.hwnode instanceof HwA)){ - for (int cores=0; cores< ((HwCPU)link.hwnode).nbOfCores; cores++){ - //for (int cores=0; cores< 1; cores++){ - devices += ", (WorkloadSource*)" + link.hwnode.getName()+ cores + "_" + node.getName() + "_Master"; + List<HwLink> busLinks = tmlmapping.getTMLArchitecture().getLinkByBus((HwBus) node); + String devices = ""; + int numDevices = 0; + if (!busLinks.isEmpty()) { + for (HwLink link : busLinks) { + if (link.hwnode instanceof HwExecutionNode || link.hwnode instanceof HwBridge) { + if ((link.hwnode instanceof HwCPU) || (link.hwnode instanceof HwA)) { + for (int cores = 0; cores < ((HwCPU) link.hwnode).nbOfCores; cores++) { + //for (int cores=0; cores< 1; cores++){ + devices += ", (WorkloadSource*)" + link.hwnode.getName() + cores + "_" + node.getName() + "_Master"; numDevices++; } - }else{ - devices += ", (WorkloadSource*)" + link.hwnode.getName()+ "_" + node.getName() + "_Master"; + } else { + devices += ", (WorkloadSource*)" + link.hwnode.getName() + "_" + node.getName() + "_Master"; numDevices++; } } } declaration += node.getName() + "_0->setScheduler((WorkloadSource*) new "; - if (((HwBus)node).arbitration==HwBus.BASIC_ROUND_ROBIN) + if (((HwBus) node).arbitration == HwBus.BASIC_ROUND_ROBIN) //declaration+="RRScheduler(\"" + node.getName() + "_RRSched\", 0, 5, " + (int) Math.ceil(((float)node.clockRatio)/((float)((HwBus)node).byteDataSize)) + ", array("; - declaration+="RRScheduler(\"" + node.getName() + "_RRSched\", 0, 5, " + (int) Math.ceil(((float)node.clockRatio)/((float)((HwBus)node).byteDataSize)) + ", array("; + declaration += "RRScheduler(\"" + node.getName() + "_RRSched\", 0, 5, " + (int) Math.ceil(((float) node.clockRatio) / ((float) ((HwBus) node).byteDataSize)) + ", array("; else - declaration+="PrioScheduler(\"" + node.getName() + "_PrioSched\", 0, array("; - declaration+= numDevices + devices + "), " + numDevices + "))" + SCCR; + declaration += "PrioScheduler(\"" + node.getName() + "_PrioSched\", 0, array("; + declaration += numDevices + devices + "), " + numDevices + "))" + SCCR; } - for(int i=1; i< ((HwBus)node).pipelineSize; i++) - declaration+=node.getName() + "_" + i + "->setScheduler(" + node.getName() + "_0->getScheduler(),false)" +SCCR; + for (int i = 1; i < ((HwBus) node).pipelineSize; i++) + declaration += node.getName() + "_" + i + "->setScheduler(" + node.getName() + "_0->getScheduler(),false)" + SCCR; } } declaration += CR; @@ -422,28 +426,28 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { ArrayList<TMLRequest> requests; int[] aStatistics = new int[8]; Set<Integer> mappedChannels = new HashSet<Integer>(); - for(TMLTask task: tmlmapping.getMappedTasks()){ - node= iterator.next(); - // int noOfCores; - declaration += task.getName() + "* task__" + task.getName() + " = new " + task.getName() + "("+ task.getID() +","+ task.getPriority() + ",\"" + task.getName() + "\", array("; + for (TMLTask task : tmlmapping.getMappedTasks()) { + node = iterator.next(); + // int noOfCores; + declaration += task.getName() + "* task__" + task.getName() + " = new " + task.getName() + "(" + task.getID() + "," + task.getPriority() + ",\"" + task.getName() + "\", array("; - if (node instanceof HwCPU){ - declaration+= ((HwCPU)node).nbOfCores; + if (node instanceof HwCPU) { + declaration += ((HwCPU) node).nbOfCores; //declaration+= 1; - for (int cores=0; cores< ((HwCPU)node).nbOfCores; cores++){ - //for (int cores=0; cores< 1; cores++){ - declaration+= "," + node.getName()+cores; + for (int cores = 0; cores < ((HwCPU) node).nbOfCores; cores++) { + //for (int cores=0; cores< 1; cores++){ + declaration += "," + node.getName() + cores; } //declaration+= ")," + ((HwCPU)node).nbOfCores + CR; - declaration+= "),1" + CR; - }else if (node instanceof HwA){ - declaration+= ((HwCPU)node).nbOfCores; + declaration += "),1" + CR; + } else if (node instanceof HwA) { + declaration += ((HwCPU) node).nbOfCores; //declaration+= 1; - for (int cores=0; cores< ((HwCPU)node).nbOfCores; cores++){ - //for (int cores=0; cores< 1; cores++){ - declaration+= "," + node.getName()+cores; + for (int cores = 0; cores < ((HwCPU) node).nbOfCores; cores++) { + //for (int cores=0; cores< 1; cores++){ + declaration += "," + node.getName() + cores; } - declaration+= ")," + ((HwCPU)node).nbOfCores + CR; + declaration += ")," + ((HwCPU) node).nbOfCores + CR; //declaration+= "),1" + CR; } else { declaration += "1," + node.getName() + "),1" + CR; @@ -459,21 +463,21 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { //mst.generateSystemC(debug, optimize, dependencies); //mst.generateSystemC(debug, optimize); tasks.add(mst); - for(TMLChannel channelb: channels) - declaration += "," + channelb.getExtendedName()+CR; + for (TMLChannel channelb : channels) + declaration += "," + channelb.getExtendedName() + CR; - for(TMLEvent evt: events) - declaration += "," + evt.getExtendedName()+CR; + for (TMLEvent evt : events) + declaration += "," + evt.getExtendedName() + CR; - for(TMLRequest req: requests) - if (req.isAnOriginTask(task)) declaration+=",reqChannel_" + req.getDestinationTask().getName()+CR; + for (TMLRequest req : requests) + if (req.isAnOriginTask(task)) declaration += ",reqChannel_" + req.getDestinationTask().getName() + CR; - if (task.isRequested()) declaration += ",reqChannel_"+task.getName()+CR; + if (task.isRequested()) declaration += ",reqChannel_" + task.getName() + CR; declaration += ")" + SCCR; - declaration += "addTask(task__"+ task.getName() +")"+ SCCR; + declaration += "addTask(task__" + task.getName() + ")" + SCCR; } //int[] aStatistics = new int[8]; - + declaration += "}\n\n"; //Declaration of TEPEs @@ -483,7 +487,7 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { declaration += tepeTranslator.getCode(); //Generation of tasks - for(MappedSystemCTask task: tasks){ + for (MappedSystemCTask task : tasks) { task.determineCheckpoints(aStatistics); task.generateSystemC(debug, optimize); } @@ -491,12 +495,13 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { //Declaration of TEPEs continued declaration += CR; declaration += "}\n};\n\n" + tepeTranslator.getEqFuncs(); - declaration +="#include <main.h>\n"; + declaration += "#include <main.h>\n"; - if (aStatistics[0]!=0) TraceManager.addDev("Global gain variables " + 100 * aStatistics[1] / aStatistics[0]); - if (aStatistics[2]!=0) TraceManager.addDev("Global gain Channels " + 100 * aStatistics[3] / aStatistics[2]); - if (aStatistics[4]!=0) TraceManager.addDev("Global gain events " + 100 * aStatistics[5] / aStatistics[4]); - if (aStatistics[6]!=0) TraceManager.addDev("Global gain checkpoints " + 100 * aStatistics[7] / aStatistics[6]); + if (aStatistics[0] != 0) TraceManager.addDev("Global gain variables " + 100 * aStatistics[1] / aStatistics[0]); + if (aStatistics[2] != 0) TraceManager.addDev("Global gain Channels " + 100 * aStatistics[3] / aStatistics[2]); + if (aStatistics[4] != 0) TraceManager.addDev("Global gain events " + 100 * aStatistics[5] / aStatistics[4]); + if (aStatistics[6] != 0) + TraceManager.addDev("Global gain checkpoints " + 100 * aStatistics[7] / aStatistics[6]); //Declaration of EBRDDs /*declaration += "//Declaration of EBRDDs" + CR; @@ -507,103 +512,101 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { } - private int extractPath(LinkedList<HwCommunicationNode> path, StrWrap masters, StrWrap slaves, HwNode startNode, HwNode destNode, boolean reverseIn){ - String firstPart=""; //lastBus=""; - int masterCount=0; - boolean reverse=reverseIn; + private int extractPath(LinkedList<HwCommunicationNode> path, StrWrap masters, StrWrap slaves, HwNode startNode, HwNode destNode, boolean reverseIn) { + String firstPart = ""; //lastBus=""; + int masterCount = 0; + boolean reverse = reverseIn; if (reverseIn) - slaves.str+=",static_cast<Slave*>(0)"; + slaves.str += ",static_cast<Slave*>(0)"; else - firstPart=startNode.getName() + "0"; + firstPart = startNode.getName() + "0"; /*TraceManager.addDev("------------------------------------------------------"); for(HwCommunicationNode commElem:path){ TraceManager.addDev("CommELem to process: " + commElem.getName()); } TraceManager.addDev("------------------------------------------------------");*/ - for(HwCommunicationNode commElem:path){ + for (HwCommunicationNode commElem : path) { //TraceManager.addDev("CommELem to process: " + commElem.getName()); //String commElemName = commElem.getName(); //if (commElem instanceof HwCPU) commElemName += "0"; //TraceManager.addDev("Next elem in path: " + commElem.getName()); - if (commElem instanceof HwMemory){ - reverse=true; - slaves.str+= ",static_cast<Slave*>(" + commElem.getName() + "),static_cast<Slave*>(" + commElem.getName() + ")"; + if (commElem instanceof HwMemory) { + reverse = true; + slaves.str += ",static_cast<Slave*>(" + commElem.getName() + "),static_cast<Slave*>(" + commElem.getName() + ")"; //firstPart=lastBus; - firstPart=""; - }else{ - if (reverse){ - if (firstPart.length()==0){ - firstPart=commElem.getName(); + firstPart = ""; + } else { + if (reverse) { + if (firstPart.length() == 0) { + firstPart = commElem.getName(); //firstPart=commElemName; - }else{ - masters.str+= "," + commElem.getName() + "_" + firstPart + "_Master"; + } else { + masters.str += "," + commElem.getName() + "_" + firstPart + "_Master"; //masters.str+= "," + commElemName + "_" + firstPart + "_Master"; masterCount++; - slaves.str+= ",static_cast<Slave*>(" + commElem.getName() + ")"; - firstPart=""; + slaves.str += ",static_cast<Slave*>(" + commElem.getName() + ")"; + firstPart = ""; } - }else{ - if (firstPart.length()==0){ - firstPart=commElem.getName(); - slaves.str+= ",static_cast<Slave*>(" + firstPart + ")"; - }else{ + } else { + if (firstPart.length() == 0) { + firstPart = commElem.getName(); + slaves.str += ",static_cast<Slave*>(" + firstPart + ")"; + } else { //lastBus=commElem.getName(); - masters.str+= "," + firstPart + "_" + commElem.getName() + "_Master"; + masters.str += "," + firstPart + "_" + commElem.getName() + "_Master"; masterCount++; - firstPart=""; + firstPart = ""; } } } } - if (reverse){ + if (reverse) { //masters.str+= "," + destNode.getName() + "_" + firstPart + "_Master"; - masters.str+= "," + destNode.getName() + "0_" + firstPart + "_Master"; - return masterCount+1; - }else{ - slaves.str+=",static_cast<Slave*>(0)"; + masters.str += "," + destNode.getName() + "0_" + firstPart + "_Master"; + return masterCount + 1; + } else { + slaves.str += ",static_cast<Slave*>(0)"; return -masterCount; } } - private String determineRouting( HwNode startNode, HwNode destNode, TMLElement commElemToRoute ){ + private String determineRouting(HwNode startNode, HwNode destNode, TMLElement commElemToRoute) { //TraceManager.addDev( "Determine routing from " + startNode.getName() + " to " + destNode.getName() ); - StrWrap masters=new StrWrap(), slaves=new StrWrap(); + StrWrap masters = new StrWrap(), slaves = new StrWrap(); LinkedList<HwCommunicationNode> path = new LinkedList<HwCommunicationNode>(); LinkedList<HwCommunicationNode> commNodes = new LinkedList<HwCommunicationNode>(); - for( HwNode node: tmlmapping.getTMLArchitecture().getHwNodes() ) { - if( node instanceof HwCommunicationNode ) { + for (HwNode node : tmlmapping.getTMLArchitecture().getHwNodes()) { + if (node instanceof HwCommunicationNode) { commNodes.add((HwCommunicationNode) node); //TraceManager.addDev( "Inserted: " + ((HwCommunicationNode)node).getName() ); } } - if( startNode == null ) { - TraceManager.addDev( "NULL REFERENCE" ); - } - else { + if (startNode == null) { + TraceManager.addDev("NULL REFERENCE"); + } else { //TraceManager.addDev( "startNode: " + startNode.getName() ); } - HwMemory memory = getMemConnectedToBusChannelMapped( commNodes, null, commElemToRoute ); - if( memory == null ) { - TraceManager.addDev( "no memories to map" ); - exploreBuses( 0, commNodes, path, startNode, destNode, commElemToRoute ); - } - else { + HwMemory memory = getMemConnectedToBusChannelMapped(commNodes, null, commElemToRoute); + if (memory == null) { + TraceManager.addDev("no memories to map"); + exploreBuses(0, commNodes, path, startNode, destNode, commElemToRoute); + } else { LinkedList<HwCommunicationNode> commNodes2 = new LinkedList<HwCommunicationNode>(commNodes); //exploreBuses(0, commNodes, path, startNode, memory, commElemToRoute); - if( !exploreBuses( 0, commNodes, path, startNode, memory, commElemToRoute ) ) { + if (!exploreBuses(0, commNodes, path, startNode, memory, commElemToRoute)) { TraceManager.addDev("NO route to " + memory.getName() + "found!!!!!!!!!!!!!!!!!!!!!!!!!!"); } - path.add( memory ); - exploreBuses( 0, commNodes2, path, memory, destNode, commElemToRoute ); + path.add(memory); + exploreBuses(0, commNodes2, path, memory, destNode, commElemToRoute); } int hopNum; - if ( (hopNum=extractPath(path, masters, slaves, startNode, destNode, false))<0){ - hopNum=extractPath(path, masters, slaves, destNode, destNode, true)-hopNum; + if ((hopNum = extractPath(path, masters, slaves, startNode, destNode, false)) < 0) { + hopNum = extractPath(path, masters, slaves, destNode, destNode, true) - hopNum; } TraceManager.addDev(commElemToRoute.getName() + " is mapped on:"); - for(HwCommunicationNode commElem:path){ + for (HwCommunicationNode commElem : path) { TraceManager.addDev(commElem.getName()); } TraceManager.addDev("number of elements: " + hopNum); @@ -612,27 +615,27 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { return hopNum + ",array(" + hopNum + masters.str + "),array(" + hopNum + slaves.str + ")"; } - private boolean exploreBuses(int depth, LinkedList<HwCommunicationNode> commNodes, LinkedList<HwCommunicationNode> path, HwNode startNode, HwNode destNode, TMLElement commElemToRoute){ + private boolean exploreBuses(int depth, LinkedList<HwCommunicationNode> commNodes, LinkedList<HwCommunicationNode> path, HwNode startNode, HwNode destNode, TMLElement commElemToRoute) { //first called with Maping:getCommunicationNodes LinkedList<HwCommunicationNode> nodesToExplore; TraceManager.addDev("No of comm nodes " + commNodes.size()); TraceManager.addDev("startNode=" + startNode); boolean busExploreMode = ((depth & 1) == 0); //if (depth % 2 == 0){ - if(busExploreMode){ + if (busExploreMode) { TraceManager.addDev("search for buses connected to " + startNode.getName()); - nodesToExplore=getBusesConnectedToNode(commNodes, startNode); - }else{ + nodesToExplore = getBusesConnectedToNode(commNodes, startNode); + } else { TraceManager.addDev("search for bridges connected to: " + startNode.getName()); - nodesToExplore=getBridgesConnectedToBus(commNodes, (HwBus)startNode); + nodesToExplore = getBridgesConnectedToBus(commNodes, (HwBus) startNode); } //HwMemory memory = null; TraceManager.addDev("no of elements found: " + nodesToExplore.size()); - for(HwCommunicationNode currNode:nodesToExplore){ + for (HwCommunicationNode currNode : nodesToExplore) { //memory = null; - if (busExploreMode){ + if (busExploreMode) { //memory = getMemConnectedToBusChannelMapped(commNodes, (HwBus)currNode, commElemToRoute); - if(isBusConnectedToNode(currNode, destNode)){ + if (isBusConnectedToNode(currNode, destNode)) { TraceManager.addDev(currNode.getName() + " is last node"); path.add(currNode); //if (memory!=null) path.add(memory); @@ -640,25 +643,25 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { return true; } } - if(tmlmapping.isCommNodeMappedOn(commElemToRoute, currNode)){ + if (tmlmapping.isCommNodeMappedOn(commElemToRoute, currNode)) { TraceManager.addDev(currNode.getName() + " mapping found for " + commElemToRoute.getName()); path.add(currNode); //if (memory!=null) path.add(memory); commNodes.remove(currNode); - if (exploreBuses(depth+1, commNodes, path, currNode, destNode, commElemToRoute)) return true; + if (exploreBuses(depth + 1, commNodes, path, currNode, destNode, commElemToRoute)) return true; path.remove(currNode); //if (memory!=null) path.remove(memory); commNodes.add(currNode); } } - for(HwCommunicationNode currNode:nodesToExplore){ + for (HwCommunicationNode currNode : nodesToExplore) { //if (busExploreMode) memory = getMemConnectedToBusChannelMapped(commNodes, (HwBus)currNode, commElemToRoute); else memory=null; path.add(currNode); //if (memory!=null) path.add(memory); commNodes.remove(currNode); //for (int i=0; i<path.size(); i++) System.out.print(" "); TraceManager.addDev(currNode.getName()); - if (exploreBuses(depth+1, commNodes, path, currNode, destNode, commElemToRoute)) return true; + if (exploreBuses(depth + 1, commNodes, path, currNode, destNode, commElemToRoute)) return true; path.remove(currNode); //if (memory!=null) path.remove(memory); commNodes.add(currNode); @@ -666,43 +669,45 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { return false; } - private HwMemory getMemConnectedToBusChannelMapped( LinkedList<HwCommunicationNode> _commNodes, HwBus _bus, TMLElement _channel ) { - for( HwCommunicationNode commNode: _commNodes ) { - if( commNode instanceof HwMemory ) { - if( _bus != null ) TraceManager.addDev(commNode.getName() + " connected to bus " + _bus.getName() + ": " + tmlmapping.getTMLArchitecture().isNodeConnectedToBus(commNode, _bus)); - TraceManager.addDev(_channel.getName() + " is mapped onto " + commNode.getName() + ": " + tmlmapping.isCommNodeMappedOn(_channel,commNode)); - if( ( _bus == null || tmlmapping.getTMLArchitecture().isNodeConnectedToBus( commNode, _bus ) ) - && tmlmapping.isCommNodeMappedOn( _channel, commNode ) ) { - return (HwMemory)commNode; + private HwMemory getMemConnectedToBusChannelMapped(LinkedList<HwCommunicationNode> _commNodes, HwBus _bus, TMLElement _channel) { + for (HwCommunicationNode commNode : _commNodes) { + if (commNode instanceof HwMemory) { + if (_bus != null) + TraceManager.addDev(commNode.getName() + " connected to bus " + _bus.getName() + ": " + tmlmapping.getTMLArchitecture().isNodeConnectedToBus(commNode, _bus)); + TraceManager.addDev(_channel.getName() + " is mapped onto " + commNode.getName() + ": " + tmlmapping.isCommNodeMappedOn(_channel, commNode)); + if ((_bus == null || tmlmapping.getTMLArchitecture().isNodeConnectedToBus(commNode, _bus)) + && tmlmapping.isCommNodeMappedOn(_channel, commNode)) { + return (HwMemory) commNode; } } } return null; } - private LinkedList<HwCommunicationNode> getBusesConnectedToNode(LinkedList<HwCommunicationNode> _commNodes, HwNode _node){ + private LinkedList<HwCommunicationNode> getBusesConnectedToNode(LinkedList<HwCommunicationNode> _commNodes, HwNode _node) { LinkedList<HwCommunicationNode> resultList = new LinkedList<HwCommunicationNode>(); - for(HwCommunicationNode commNode: _commNodes){ - if (commNode instanceof HwBus){ - if (tmlmapping.getTMLArchitecture().isNodeConnectedToBus(_node, (HwBus)commNode)) resultList.add(commNode); + for (HwCommunicationNode commNode : _commNodes) { + if (commNode instanceof HwBus) { + if (tmlmapping.getTMLArchitecture().isNodeConnectedToBus(_node, (HwBus) commNode)) + resultList.add(commNode); } } return resultList; } - private LinkedList<HwCommunicationNode> getBridgesConnectedToBus(LinkedList<HwCommunicationNode> _commNodes, HwBus _bus){ + private LinkedList<HwCommunicationNode> getBridgesConnectedToBus(LinkedList<HwCommunicationNode> _commNodes, HwBus _bus) { LinkedList<HwCommunicationNode> resultList = new LinkedList<HwCommunicationNode>(); - for(HwCommunicationNode commNode: _commNodes){ - if (commNode instanceof HwBridge){ + for (HwCommunicationNode commNode : _commNodes) { + if (commNode instanceof HwBridge) { if (tmlmapping.getTMLArchitecture().isNodeConnectedToBus(commNode, _bus)) resultList.add(commNode); } } return resultList; } - private boolean isBusConnectedToNode(HwCommunicationNode commNode, HwNode node){ - for(HwLink link: tmlmapping.getTMLArchitecture().getHwLinks()) { - if(link.bus==commNode && link.hwnode==node) return true; + private boolean isBusConnectedToNode(HwCommunicationNode commNode, HwNode node) { + for (HwLink link : tmlmapping.getTMLArchitecture().getHwLinks()) { + if (link.bus == commNode && link.hwnode == node) return true; } return false; } @@ -725,7 +730,7 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { }*/ private void generateTaskFiles(String path) throws FileException { - for(MappedSystemCTask mst: tasks) { + for (MappedSystemCTask mst : tasks) { mst.saveInFiles(path); } //for(SystemCEBRDD ebrdd: systemCebrdds) { @@ -734,8 +739,8 @@ public class TML2MappingSystemC implements IDiploSimulatorCodeGenerator { } - public MappedSystemCTask getMappedTaskByName(String iName){ - for(MappedSystemCTask task: tasks){ + public MappedSystemCTask getMappedTaskByName(String iName) { + for (MappedSystemCTask task : tasks) { if (task.getTMLTask().getName().equals(iName)) return task; } return null; diff --git a/src/main/java/ui/ErrorHighlight.java b/src/main/java/ui/ErrorHighlight.java index 6ed3651017878975316c9ab970f7fbdded26a4d5..69b4ddd655f5c45d0ebaedc6482fff056d59c431 100755 --- a/src/main/java/ui/ErrorHighlight.java +++ b/src/main/java/ui/ErrorHighlight.java @@ -37,8 +37,6 @@ */ - - package ui; @@ -49,7 +47,7 @@ package ui; * @author Ludovic APVRILLE */ public class ErrorHighlight extends Exception { - public static final int UNCHECKED = 0; + //public static final int UNCHECKED = 0; public static final int OK = 1; public static final int UNKNOWN = 2; diff --git a/src/main/java/ui/JMenuBarTurtle.java b/src/main/java/ui/JMenuBarTurtle.java index 448c131c8ad5a62cb0b4e8911bf549ddd57bae3e..d352f504e217d3f814336c7dceb015cb5a689c35 100755 --- a/src/main/java/ui/JMenuBarTurtle.java +++ b/src/main/java/ui/JMenuBarTurtle.java @@ -37,8 +37,6 @@ */ - - package ui; import common.ConfigurationTTool; @@ -51,12 +49,13 @@ import javax.swing.*; /** - * Class JMenuBarTurtle - * Creation: 09/12/2003 - * Version 1.0 09/12/2003 - * @author Ludovic APVRILLE + * Class JMenuBarTurtle + * Creation: 09/12/2003 + * Version 1.0 09/12/2003 + * + * @author Ludovic APVRILLE */ -public class JMenuBarTurtle extends JMenuBar { +public class JMenuBarTurtle extends JMenuBar { private JMenu menugraph; //Menu @@ -81,7 +80,7 @@ public class JMenuBarTurtle extends JMenuBar { // Menus - private void buildMenus(MainGUI mgui) { + private void buildMenus(MainGUI mgui) { // Main menu file = new JMenu("File"); edit = new JMenu("Edit"); @@ -103,7 +102,7 @@ public class JMenuBarTurtle extends JMenuBar { menuItem.addMouseListener(mgui.mouseHandler); menuItem = file.add(mgui.actions[TGUIAction.ACT_OPEN_PROJECT]); menuItem.addMouseListener(mgui.mouseHandler); - menuItem = file.add(mgui.actions[TGUIAction.ACT_OPEN_FROM_NETWORK]); + menuItem = file.add(mgui.actions[TGUIAction.ACT_OPEN_FROM_NETWORK]); menuItem.addMouseListener(mgui.mouseHandler); menuItem = file.add(mgui.actions[TGUIAction.ACT_SAVE]); menuItem.addMouseListener(mgui.mouseHandler); @@ -420,7 +419,7 @@ public class JMenuBarTurtle extends JMenuBar { menuItem = vAndV.add(mgui.actions[TGUIAction.ACT_GEN_RTLOTOS]); menuItem.addMouseListener(mgui.mouseHandler); - + if (MainGUI.lotosOn) { menuItem = vAndV.add(mgui.actions[TGUIAction.ACT_GEN_LOTOS]); @@ -581,7 +580,7 @@ public class JMenuBarTurtle extends JMenuBar { menuItem.addMouseListener(mgui.mouseHandler); menuItem = capture.add(mgui.actions[TGUIAction.ACT_ALL_DIAGRAM_CAPTURE]); menuItem.addMouseListener(mgui.mouseHandler); - menuItem = capture.add(mgui.actions[TGUIAction.ACT_ALL_DIAGRAM_CAPTURE_SVG]); + menuItem = capture.add(mgui.actions[TGUIAction.ACT_ALL_DIAGRAM_CAPTURE_SVG]); menuItem.addMouseListener(mgui.mouseHandler); menuItem = capture.add(mgui.actions[TGUIAction.ACT_SELECTED_CAPTURE]); menuItem.addMouseListener(mgui.mouseHandler); diff --git a/src/main/java/ui/MainGUI.java b/src/main/java/ui/MainGUI.java index 7d672613096d4a06ece91a80b00ce1f2208594d7..3a4d063ea6beb42e5fbe0124da84e126ed748526 100644 --- a/src/main/java/ui/MainGUI.java +++ b/src/main/java/ui/MainGUI.java @@ -703,14 +703,14 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Pe } public void minimizeRG(RG toBeMinimized) { - JFrameMinimize jfm = new JFrameMinimize(frame, this, "Graph minimization", toBeMinimized); + JFrameMinimize jfm = new JFrameMinimize(frame, this, "Graph minimization", toBeMinimized, SpecConfigTTool.TGraphPath); //jfm.setSize(900, 700); GraphicLib.centerOnParent(jfm, 900, 700); jfm.setVisible(true); } public void makeRefusalGraph(RG inputGraph) { - JFrameRefusalGraph jfm = new JFrameRefusalGraph(frame, this, "Test Sequences Construction", inputGraph); + JFrameRefusalGraph jfm = new JFrameRefusalGraph(frame, this, "Test Sequences Construction", inputGraph, SpecConfigTTool.TGraphPath); //jfm.setSize(900, 700); GraphicLib.centerOnParent(jfm, 900, 700); jfm.setVisible(true); diff --git a/src/main/java/ui/TGUIAction.java b/src/main/java/ui/TGUIAction.java index 934ce8592b0f712c1f79a91b21f51603892537ff..897f0388a231f5769b8c5907abd071686a164f31 100755 --- a/src/main/java/ui/TGUIAction.java +++ b/src/main/java/ui/TGUIAction.java @@ -688,7 +688,7 @@ public class TGUIAction extends AbstractAction { actions[ACT_NEW_ANALYSIS] = new TAction("new-command-analysis", "New analysis", IconManager.imgic17, IconManager.imgic17, "New analysis", "New TURTLE analysis", 0); actions[ACT_OPEN] = new TAction("open-command","Open", IconManager.imgic22, IconManager.imgic23, "Open", "Open an existing TTool model",'O', true); actions[ACT_OPEN_PROJECT] = new TAction("open-project-command","Open project", IconManager.imgic22, IconManager.imgic23, "Open project", "Open an existing TTool project",'O', true); - actions[ACT_OPEN_FROM_NETWORK] = new TAction("open-command-from-network","Open from TTool repository", IconManager.imgic22, IconManager.imgic23, "Open from TTool repository", "Open an existing TTool model from the TTool repository (TTool website)",'0', true); + actions[ACT_OPEN_FROM_NETWORK] = new TAction("open-command-from-network","Open project from TTool repository", IconManager.imgic22, IconManager.imgic23, "Open project from TTool repository", "Open an existing TTool model from the TTool repository (TTool website)",'0', true); actions[ACT_OPEN_LAST] = new TAction("openlast-command","Open file: " + ConfigurationTTool.LastOpenFile, IconManager.imgic22, IconManager.imgic23, "Open: " + ConfigurationTTool.LastOpenFile, "Open the lastly saved TTool model", 0); actions[ACT_MERGE] = new TAction("merge-command","Merge", IconManager.imgic22, IconManager.imgic23, "Merge", "Merge the current TTool modeling with another one saved in a file ", 0); actions[ACT_SAVE] = new TAction("save-command", "Save",IconManager.imgic24, IconManager.imgic25, "Save", "Save an opened or a new TTool modeling", 'S', true); diff --git a/src/main/java/ui/graph/AUTGraph.java b/src/main/java/ui/graph/AUTGraph.java index a9a21d252638c2c124306ee7d9d55ebf3e2ba29a..2e664ef0ba3660676c791a34055a3be33c4fe2a2 100755 --- a/src/main/java/ui/graph/AUTGraph.java +++ b/src/main/java/ui/graph/AUTGraph.java @@ -37,8 +37,6 @@ */ - - package ui.graph; import myutil.Conversion; @@ -50,14 +48,15 @@ import java.io.StringReader; import java.util.*; /** - * Class AUTGraph - * Creation : 16/09/2004 - ** @version 1.0 16/09/2004 - * @author Ludovic APVRILLE + * Class AUTGraph + * Creation : 16/09/2004 + * * @version 1.0 16/09/2004 + * + * @author Ludovic APVRILLE */ public class AUTGraph implements myutil.Graph { - protected ArrayList<AUTTransition> transitions ; + protected ArrayList<AUTTransition> transitions; protected ArrayList<AUTState> states; protected int nbState; protected BufferedReader br; @@ -68,22 +67,22 @@ public class AUTGraph implements myutil.Graph { protected boolean statesComputed; protected static String STYLE_SHEET = - "node {" + - " fill-color: blue;" + - "} " + - // "edge.defaultedge {" + - // " shape: cubic-curve;" + - // "}" + - // "edge {shape: cubic-curve}" + - "edge.external {" + - " text-style: bold;" + - "} " + - "node.deadlock {" + - " fill-color: green;" + - "} " + - "node.init {" + - " fill-color: red;" + - "} "; + "node {" + + " fill-color: blue;" + + "} " + + // "edge.defaultedge {" + + // " shape: cubic-curve;" + + // "}" + + // "edge {shape: cubic-curve}" + + "edge.external {" + + " text-style: bold;" + + "} " + + "node.deadlock {" + + " fill-color: green;" + + "} " + + "node.init {" + + " fill-color: red;" + + "} "; public AUTGraph() { transitions = new ArrayList<AUTTransition>(); @@ -123,7 +122,7 @@ public class AUTGraph implements myutil.Graph { /* read header */ //System.out.println("Building graph"); try { - while((s = br.readLine()) != null) { + while ((s = br.readLine()) != null) { index1 = s.indexOf("des"); //System.out.println("Searching for des"); if (index1 == 0) { @@ -158,19 +157,19 @@ public class AUTGraph implements myutil.Graph { /* read transitions */ try { cpt = 0; - mod = Math.max(1, (int)(nbTransition / 100)); + mod = Math.max(1, (int) (nbTransition / 100)); - while((s = br.readLine()) != null) { + while ((s = br.readLine()) != null) { //System.out.println("realine:" + s); array = AUTGraph.decodeLine(s); at = new AUTTransition(array[0], array[1], array[2]); transitions.add(at); hasExitTransition[at.origin] = true; hasEntryTransition[at.destination] = true; - cpt ++; + cpt++; if ((cpt % mod) == 0) { - percentage = (int)((cpt *100) / nbTransition); + percentage = (int) ((cpt * 100) / nbTransition); //System.out.println("percentage=" + percentage + "cpt=" + cpt + "nbTransition=" + nbTransition); } } @@ -186,8 +185,8 @@ public class AUTGraph implements myutil.Graph { index1 = s.indexOf("("); index2 = s.indexOf(","); - s1 = s.substring(index1+1, index2); - s = s.substring(index2 +1, s.length()); + s1 = s.substring(index1 + 1, index2); + s = s.substring(index2 + 1, s.length()); s = Conversion.removeFirstSpaces(s); // for of the action @@ -199,7 +198,7 @@ public class AUTGraph implements myutil.Graph { index1 = s.indexOf("\""); if (index1 > -1) { //System.out.println("Guillemets on " + s); - s2 = s.substring(index1+1, s.length()); + s2 = s.substring(index1 + 1, s.length()); s2 = s2.substring(0, s2.indexOf("\"")); //System.out.println("Guillemets on " + s2); /*index2 = s2.indexOf("("); @@ -212,7 +211,7 @@ public class AUTGraph implements myutil.Graph { //System.out.println("No Guillemets on " + s); index1 = s.indexOf(","); if ((index2 = s.indexOf("(")) >= 0) { - s2 = s.substring(index2+1, index1-2); + s2 = s.substring(index2 + 1, index1 - 2); } else { if ((index2 = s.indexOf("\"t\"")) >= 0) { s2 = "t"; @@ -227,11 +226,11 @@ public class AUTGraph implements myutil.Graph { index1 = s.indexOf(","); //index2 = s.indexOf(")"); //s2 = s.substring(0, index1-1); - s3 = s.substring(index1+1, s.length()-1); + s3 = s.substring(index1 + 1, s.length() - 1); s3 = Conversion.removeFirstSpaces(s3); //System.out.println("s1=" + s1 + " s2=" + s2 + " s3=" + s3); - String []array = new String[3]; + String[] array = new String[3]; array[0] = s1; array[1] = s2; array[2] = s3; @@ -269,18 +268,17 @@ public class AUTGraph implements myutil.Graph { } public void addState(AUTState _st) { - states.add(_st); + states.add(_st); } - - public int getNbPotentialDeadlocks(){ + public int getNbPotentialDeadlocks() { int nb = 0; - for(int i=0; i<nbState; i++) { + for (int i = 0; i < nbState; i++) { if (hasEntryTransition(i)) { if (!hasExitTransition(i)) { - nb ++; + nb++; } } } @@ -290,8 +288,8 @@ public class AUTGraph implements myutil.Graph { public String getActionTransition(int origin, int destination) { - for(AUTTransition aut1 : transitions) { - if ((aut1.origin == origin) && (aut1.destination == destination)){ + for (AUTTransition aut1 : transitions) { + if ((aut1.origin == origin) && (aut1.destination == destination)) { return aut1.transition; } } @@ -318,8 +316,8 @@ public class AUTGraph implements myutil.Graph { } - for(AUTTransition aut1 : transitions) { - if ((aut1.origin == state) && (aut1.destination == destination)){ + for (AUTTransition aut1 : transitions) { + if ((aut1.origin == state) && (aut1.destination == destination)) { return true; } } @@ -336,11 +334,11 @@ public class AUTGraph implements myutil.Graph { int[] states = new int[nbPotentialDeadlock]; int index = 0; - for(int i=0; i<nbState; i++) { + for (int i = 0; i < nbState; i++) { if (hasEntryTransition(i)) { if (!hasExitTransition(i)) { states[index] = i; - index ++; + index++; } } } @@ -348,15 +346,15 @@ public class AUTGraph implements myutil.Graph { return states; } - public int [] shortestPathTo(int fromState, int targetState) { + public int[] shortestPathTo(int fromState, int targetState) { return GraphAlgorithms.ShortestPathFrom(this, fromState)[targetState].path; } public boolean hasTransitionWithAction(String action) { - for(AUTTransition aut1 : transitions) { - if (aut1.transition.compareTo(action) == 0){ + for (AUTTransition aut1 : transitions) { + if (aut1.transition.compareTo(action) == 0) { return true; } } @@ -380,8 +378,8 @@ public class AUTGraph implements myutil.Graph { public String toAUTStringFormat() { StringBuffer graph = new StringBuffer(""); - graph.append("des(0," + nbTransition + "," + nbState + ")\n"); - for(AUTTransition aut1 : transitions) { + graph.append("des(0," + nbTransition + "," + nbState + ")\n"); + for (AUTTransition aut1 : transitions) { graph.append("(" + aut1.origin + ",\"" + aut1.transition + "\"," + aut1.destination + ")\n"); } return graph.toString(); @@ -390,11 +388,11 @@ public class AUTGraph implements myutil.Graph { public String toFullString() { StringBuffer graph = new StringBuffer("Transitions:"); - for(AUTTransition aut1 : transitions) { + for (AUTTransition aut1 : transitions) { graph.append(aut1.toString()); } graph.append("\nstates:\n"); - for(AUTState str: states) { + for (AUTState str : states) { graph.append(str.toString()); } return graph.toString(); @@ -405,12 +403,12 @@ public class AUTGraph implements myutil.Graph { if (!statesComputed) { states = new ArrayList<AUTState>(nbState); AUTState state; - for(int i=0; i<nbState; i++) { + for (int i = 0; i < nbState; i++) { state = new AUTState(i); states.add(state); } - for(AUTTransition aut1 : transitions) { + for (AUTTransition aut1 : transitions) { states.get(aut1.origin).addOutTransition(aut1); states.get(aut1.destination).addInTransition(aut1); } @@ -434,7 +432,7 @@ public class AUTGraph implements myutil.Graph { public HashSet<String> getAllActions() { HashSet<String> hs = new HashSet<String>(); - for(AUTTransition tr: transitions) { + for (AUTTransition tr : transitions) { hs.add(tr.transition); } return hs; @@ -442,7 +440,7 @@ public class AUTGraph implements myutil.Graph { public void reinitMet() { - for(AUTState state: states) { + for (AUTState state : states) { state.met = false; } } @@ -450,7 +448,7 @@ public class AUTGraph implements myutil.Graph { public AUTState findFirstOriginState() { AUTState state; - for(int i=0; i<states.size(); i++) { + for (int i = 0; i < states.size(); i++) { state = states.get(i); //System.out.println("id=" + state.id + " transitions to me = " +state.inTransitions.size()); if (state.inTransitions.size() == 0) { @@ -464,13 +462,13 @@ public class AUTGraph implements myutil.Graph { public void putTransitionsFromInitFirst() { ArrayList<AUTTransition> tmp = new ArrayList<AUTTransition>(); - for(AUTTransition aut1 : transitions) { + for (AUTTransition aut1 : transitions) { if (aut1.origin == 0) { tmp.add(aut1); } } - for(AUTTransition aut2 : tmp) { + for (AUTTransition aut2 : tmp) { transitions.remove(aut2); transitions.add(0, aut2); } @@ -489,7 +487,7 @@ public class AUTGraph implements myutil.Graph { public AUTGraph cloneMe() { AUTGraph newGraph = new AUTGraph(); newGraph.setNbOfStates(getNbOfStates()); - for(AUTTransition tr: transitions) { + for (AUTTransition tr : transitions) { AUTTransition newTr = new AUTTransition(tr.origin, tr.transition, tr.destination); newGraph.addTransition(newTr); } @@ -502,12 +500,12 @@ public class AUTGraph implements myutil.Graph { String s = "tau"; // mark all transitions as non tau - for(AUTTransition tr: transitions) { + for (AUTTransition tr : transitions) { tr.isTau = false; } // Mark all tau transitions as tau - for(AUTTransition tr: transitions) { + for (AUTTransition tr : transitions) { if (tr.transition.startsWith("i(")) { tr.isTau = true; @@ -520,17 +518,17 @@ public class AUTGraph implements myutil.Graph { } - public void minimize(String [] tauTransitions, boolean tauOnly) { + public void minimize(String[] tauTransitions, boolean tauOnly) { String s = "tau"; // mark all transitions as non tau - for(AUTTransition tr: transitions) { + for (AUTTransition tr : transitions) { tr.isTau = false; } // Mark all tau transitions as tau - for(AUTTransition tr: transitions) { - for (int i=0; i<tauTransitions.length; i++) { + for (AUTTransition tr : transitions) { + for (int i = 0; i < tauTransitions.length; i++) { if (tr.transition.compareTo(tauTransitions[i]) == 0) { tr.isTau = true; tr.transition = s; @@ -562,7 +560,7 @@ public class AUTGraph implements myutil.Graph { AUTTransition tr; ArrayList<AUTState> toRemoveStates = new ArrayList<AUTState>(); // Remove in case state with one outgoing and outgoing is tau -> remove tr - for(AUTState st: states) { + for (AUTState st : states) { if (st.outTransitions.size() == 1) { tr = st.outTransitions.get(0); if (tr.isTau) { @@ -577,7 +575,7 @@ public class AUTGraph implements myutil.Graph { // Must put all incoming transition to the first state st1.inTransitions.remove(tr); - for(AUTTransition trM: st1.inTransitions) { + for (AUTTransition trM : st1.inTransitions) { trM.destination = st.id; st.inTransitions.add(trM); //TraceManager.addDev("New in transitions " + trM); @@ -586,7 +584,7 @@ public class AUTGraph implements myutil.Graph { // Out transitions st.outTransitions.clear(); - for(AUTTransition trM: st1.outTransitions) { + for (AUTTransition trM : st1.outTransitions) { st.outTransitions.add(trM); trM.origin = st.id; //TraceManager.addDev("New out transitions " + trM); @@ -613,11 +611,11 @@ public class AUTGraph implements myutil.Graph { AUTTransition tr1, tr2, trtmp; AUTState st1, st2, sttmp; ArrayList<AUTState> toRemoveStates = new ArrayList<AUTState>(); - AUTTransition [] ret; + AUTTransition[] ret; boolean modif = false; // Remove in case state with one outgoing and outgoing is tau -> remove transition - for(AUTState st: states) { + for (AUTState st : states) { ret = st.getAtLeastTwoOutTauTransitions(); if (ret != null) { tr1 = ret[0]; @@ -643,7 +641,7 @@ public class AUTGraph implements myutil.Graph { st.outTransitions.remove(tr2); // All transitions leaving st2 must now leave from st1 as well - for (AUTTransition trf: st2.outTransitions) { + for (AUTTransition trf : st2.outTransitions) { trf.origin = st1.id; st1.outTransitions.add(trf); } @@ -659,7 +657,6 @@ public class AUTGraph implements myutil.Graph { } - return modif; } @@ -671,7 +668,7 @@ public class AUTGraph implements myutil.Graph { boolean modif = false; // Remove stgate in case state with one outgoing and outgoing is tau - for(AUTState st: states) { + for (AUTState st : states) { if (st.hasOneIncomingTauAndOneFollower()) { //We can remove the previous tau transaction, and the current state tr1 = st.inTransitions.get(0); @@ -696,7 +693,6 @@ public class AUTGraph implements myutil.Graph { } - return modif; } @@ -705,14 +701,14 @@ public class AUTGraph implements myutil.Graph { boolean modif = false; // Remove tr if it is duplicated - for(AUTState st: states) { + for (AUTState st : states) { // May modify the outTransitions list, and result in exception. // The try .. catch clause protects from this try { if (st.outTransitions.size() > 1) { - for(int i=0; i<st.outTransitions.size(); i++) { - for(int j=i+1; j<st.outTransitions.size(); j++) { + for (int i = 0; i < st.outTransitions.size(); i++) { + for (int j = i + 1; j < st.outTransitions.size(); j++) { AUTTransition tri = st.outTransitions.get(i); AUTTransition trj = st.outTransitions.get(j); if (tri.destination == trj.destination) { @@ -730,7 +726,8 @@ public class AUTGraph implements myutil.Graph { } - } catch (Exception e) {} + } catch (Exception e) { + } } return modif; @@ -747,17 +744,17 @@ public class AUTGraph implements myutil.Graph { // Remove all states and adapt the id in the graph //TraceManager.addDev("nbState=" + nbState + " states size = " + states.size()); - for(AUTState str: toRemoveStates) { + for (AUTState str : toRemoveStates) { // We need to remove all transitions of the removed state //TraceManager.addDev("Removing transitions of state:" + str.id + "\n" + toFullString()); - for(AUTTransition trin: str.inTransitions) { + for (AUTTransition trin : str.inTransitions) { transitions.remove(trin); } - for(AUTTransition trout: str.outTransitions) { + for (AUTTransition trout : str.outTransitions) { transitions.remove(trout); } - for(AUTState state: states) { + for (AUTState state : states) { state.removeAllTransitionsWithId(str.id); } @@ -766,18 +763,18 @@ public class AUTGraph implements myutil.Graph { // Last state of the array? if (str.id == (nbState - 1)) { //TraceManager.addDev("Last state " + str.id); - nbState --; + nbState--; states.remove(str.id); // str not at the end: we replace it with the last state // We need to accordingly update - } else { + } else { - AUTState moved = states.get(nbState-1); + AUTState moved = states.get(nbState - 1); //TraceManager.addDev("Moving state " + moved.id + " to index " + str.id); states.set(str.id, moved); - states.remove(nbState-1); - nbState --; + states.remove(nbState - 1); + nbState--; //TraceManager.addDev("nbState=" + nbState + " states size = " + states.size()); /*AUTTransition tt = findTransitionWithId(nbState); if (tt != null) { @@ -800,11 +797,11 @@ public class AUTGraph implements myutil.Graph { boolean modif = false; boolean endState = false; // met is used to specify states that have a tau-path to a termination state - for(AUTState st1: states) { + for (AUTState st1 : states) { st1.met = false; } - for (AUTState st: states) { + for (AUTState st : states) { if ((st.id == 0) || (st.getNbInTransitions() > 0)) { //TraceManager.addDev(" 1. state " + st.id); if (st.hasOutputTauTransition()) { @@ -817,7 +814,7 @@ public class AUTGraph implements myutil.Graph { TraceManager.addDev("\t" + tr); }*/ - //TraceManager.addDev("State " + st.id + " can reach an end state with tau tr only?" + canReachAnEndStateWithTau); + //TraceManager.addDev("State " + st.id + " can reach an end state with tau tr only?" + canReachAnEndStateWithTau); st.met = canReachAnEndStateWithTau; endState = endState || canReachAnEndStateWithTau; } @@ -825,7 +822,7 @@ public class AUTGraph implements myutil.Graph { } // Remove tr if it is duplicated - for(AUTState st: states) { + for (AUTState st : states) { // We ignore states with no input tr apart from the start state (id 0) //TraceManager.addDev("0. state " + st.id); if ((st.id == 0) || (st.getNbInTransitions() > 0)) { @@ -833,7 +830,7 @@ public class AUTGraph implements myutil.Graph { if (st.hasOutputTauTransition()) { //TraceManager.addDev(" 2. state " + st.id); LinkedList<AUTTransition> nonTauTransitions = new LinkedList<AUTTransition>(); - getAllNonTauTransitionsFrom(st, nonTauTransitions); + getAllNonTauTransitionsFrom(st, nonTauTransitions); // Create these transitions in st if not yet existing //TraceManager.addDev("Remove tau\n" + toFullString()); @@ -853,7 +850,7 @@ public class AUTGraph implements myutil.Graph { if (endState) { // We must see if at least one met state has output transitions boolean hasEndState = false; - for(AUTState st: states) { + for (AUTState st : states) { if (st.met) { if (st.outTransitions.size() > 0) { hasEndState = true; @@ -867,10 +864,10 @@ public class AUTGraph implements myutil.Graph { AUTState endSt = new AUTState(newId); states.add(endSt); nbState = states.size(); - for(AUTState st1: states) { + for (AUTState st1 : states) { if (st1.met) { if (st1.outTransitions.size() > 0) { - //TraceManager.addDev("Adding an end tau to state " + st1.id); + //TraceManager.addDev("Adding an end tau to state " + st1.id); AUTTransition tr = new AUTTransition(st1.id, "tau", endSt.id); tr.isTau = true; transitions.add(tr); @@ -913,7 +910,7 @@ public class AUTGraph implements myutil.Graph { } boolean ret = false; - for(AUTTransition at: st.outTransitions) { + for (AUTTransition at : st.outTransitions) { if (!(at.isTau)) { nonTauTransitions.add(at); } else { @@ -935,13 +932,13 @@ public class AUTGraph implements myutil.Graph { while (toExplore.size() > 0) { toExploreTmp.clear(); - for(AUTState st: toExplore) { + for (AUTState st : toExplore) { if (!(metStates.contains(st))) { metStates.add(st); if (st.getNbOutTransitions() == 0) { ret = true; } else { - for(AUTTransition at: st.outTransitions) { + for (AUTTransition at : st.outTransitions) { if (!(at.isTau)) { nonTauTransitions.add(at); } else { @@ -961,7 +958,7 @@ public class AUTGraph implements myutil.Graph { } private AUTTransition findTransitionWithId(int id) { - for (AUTTransition tr: transitions) { + for (AUTTransition tr : transitions) { if ((tr.origin == id) || (tr.destination == id)) { return tr; } @@ -972,7 +969,7 @@ public class AUTGraph implements myutil.Graph { private void removeAllNonReachableStates() { // reset met of states - for(AUTState st1: states) { + for (AUTState st1 : states) { st1.met = false; } @@ -982,12 +979,12 @@ public class AUTGraph implements myutil.Graph { LinkedList<AUTState> nextStatesToConsider = new LinkedList<AUTState>(); statesToConsider.add(states.get(0)); - while(statesToConsider.size() > 0) { + while (statesToConsider.size() > 0) { nextStatesToConsider.clear(); - for(AUTState st: statesToConsider) { + for (AUTState st : statesToConsider) { st.met = true; - cpt ++; - for(AUTTransition tr: st.outTransitions) { + cpt++; + for (AUTTransition tr : st.outTransitions) { AUTState s = states.get(tr.destination); if (!(s.met)) { nextStatesToConsider.add(s); @@ -1000,7 +997,7 @@ public class AUTGraph implements myutil.Graph { //TraceManager.addDev("Found " + cpt + " reachable states"); ArrayList<AUTState> toRemoveStates = new ArrayList<AUTState>(); - for(AUTState st2: states) { + for (AUTState st2 : states) { if (!(st2.met)) { toRemoveStates.add(st2); //TraceManager.addDev("Removing state: " + st2.id); @@ -1022,7 +1019,7 @@ public class AUTGraph implements myutil.Graph { hasExitTransition = new boolean[nbState]; hasEntryTransition = new boolean[nbState]; - for(AUTTransition t: transitions) { + for (AUTTransition t : transitions) { hasExitTransition[t.origin] = true; hasEntryTransition[t.destination] = true; } @@ -1033,7 +1030,7 @@ public class AUTGraph implements myutil.Graph { // Create the alphabet HashMap<String, AUTElement> alphabet = new HashMap<String, AUTElement>(); - for(AUTTransition tr: transitions) { + for (AUTTransition tr : transitions) { AUTElement tmp = alphabet.get(tr.transition); if (tmp == null) { AUTElement elt = new AUTElement(tr.transition); @@ -1055,7 +1052,7 @@ public class AUTGraph implements myutil.Graph { // Create the first block that contains all states AUTBlock b0 = new AUTBlock(); - for(AUTState st: states) { + for (AUTState st : states) { b0.addState(st); } b0.computeHash(); @@ -1063,7 +1060,7 @@ public class AUTGraph implements myutil.Graph { AUTBlock b0Test = new AUTBlock(); - for(AUTState st: states) { + for (AUTState st : states) { b0Test.addState(st); } b0Test.computeHash(); @@ -1076,7 +1073,6 @@ public class AUTGraph implements myutil.Graph { } - // Create the first partition containing only block B0 AUTPartition partition = new AUTPartition(); partition.addBlock(b0); @@ -1093,8 +1089,8 @@ public class AUTGraph implements myutil.Graph { int maxIte = 1000; AUTPartition currentP; - while((w.size()>0) && (maxIte >0)) { - maxIte --; + while ((w.size() > 0) && (maxIte > 0)) { + maxIte--; currentP = w.partitions.get(0); w.partitions.remove(0); @@ -1104,7 +1100,7 @@ public class AUTGraph implements myutil.Graph { AUTBlock currentBlock = currentP.blocks.get(0); //List<AUTElement> sortedAlphabet = new ArrayList<AUTElement>(alphabet.values()); //Collections.sort(sortedAlphabet); - for(AUTElement elt: sortedAlphabet) { + for (AUTElement elt : sortedAlphabet) { //TraceManager.addDev("\n*** Considering alphabet element = " + elt.value); //printConfiguration(partition, w); // Look for states of the leading to another state by a = T @@ -1115,7 +1111,7 @@ public class AUTGraph implements myutil.Graph { LinkedList<AUTBlock> I = partition.getI(elt, T_minus1_elt_B); //printI(I); - for(AUTBlock blockX: I) { + for (AUTBlock blockX : I) { AUTBlock blockX1 = blockX.getStateIntersectWith(T_minus1_elt_B); blockX1.computeHash(); AUTBlock blockX2 = blockX.getStateDifferenceWith(T_minus1_elt_B); @@ -1138,7 +1134,7 @@ public class AUTGraph implements myutil.Graph { X_X1_X2.addBlock(blockX1); X_X1_X2.addBlock(blockX2); //TraceManager.addDev("Test concat X1+X2=" + AUTBlock.concat(blockX1, blockX2)); - w.addPartition( X_X1_X2); + w.addPartition(X_X1_X2); //TraceManager.addDev("Modifying P and W:"); //printConfiguration(partition, w); //TraceManager.addDev("-----------------\n"); @@ -1152,7 +1148,7 @@ public class AUTGraph implements myutil.Graph { } // Compound splitter - else if (currentP.blocks.size() == 3){ + else if (currentP.blocks.size() == 3) { //TraceManager.addDev("Complexe splitter (b, bi, bii) =" + currentP); AUTBlock b = currentP.blocks.get(0); AUTBlock bi = currentP.blocks.get(1); @@ -1165,14 +1161,14 @@ public class AUTGraph implements myutil.Graph { //TraceManager.addDev("B= " + b + " bi=" + bi + " bii=" + bii); - for(AUTElement elt: sortedAlphabet) { + for (AUTElement elt : sortedAlphabet) { //TraceManager.addDev("\n*** Considering alphabet element = " + elt.value); //printConfiguration(partition, w); AUTBlock T_minus1_elt_B = b.getMinus1(elt, states); //TraceManager.addDev("T_minus1_elt_B=" + T_minus1_elt_B); LinkedList<AUTBlock> I = partition.getI(elt, T_minus1_elt_B); //printI(I); - for(AUTBlock blockX: I) { + for (AUTBlock blockX : I) { // Compute block X1 = set of states in blockX that goes to Bi, but not to Bii // with current action AUTBlock blockX1 = new AUTBlock(); @@ -1185,7 +1181,7 @@ public class AUTGraph implements myutil.Graph { // with current action boolean b1, b2; AUTBlock blockX3 = new AUTBlock(); - for(AUTState st: blockX.states) { + for (AUTState st : blockX.states) { b1 = blockX.leadsTo(bi, elt); b2 = blockX.leadsTo(bii, elt); if (b1 && !b2) { @@ -1201,7 +1197,7 @@ public class AUTGraph implements myutil.Graph { if ((blockX.compareTo(blockX1) == 0) || (blockX.compareTo(blockX2) == 0) || (blockX.compareTo(blockX2) == 0)) { // do nothing //TraceManager.addDev("Identical blocks! X"); - } else { + } else { //TraceManager.addDev("Non Identical blocks! X"); // Modifying partition partition.removeBlock(blockX); @@ -1271,14 +1267,14 @@ public class AUTGraph implements myutil.Graph { int stID = 1; // We create one state per block // We look to the block that contains state 0 and we create the state id = 0 - for(AUTBlock bl: partition.blocks) { + for (AUTBlock bl : partition.blocks) { if (bl.hasState(0)) { AUTState st0 = new AUTState(0); blockToNewStates.put(bl, st0); sts.add(0, st0); } else { AUTState st = new AUTState(stID); - stID ++; + stID++; blockToNewStates.put(bl, st); sts.add(st); } @@ -1287,16 +1283,16 @@ public class AUTGraph implements myutil.Graph { // We now need to create the transitions // We parse all states in blocks, and consider their transition // We look for the destination and create a transition accordingly - for(AUTBlock bl: partition.blocks) { - AUTState newOrigin = blockToNewStates.get(bl); - for(AUTState src: bl.states) { - for(AUTTransition tr: src.outTransitions) { + for (AUTBlock bl : partition.blocks) { + AUTState newOrigin = blockToNewStates.get(bl); + for (AUTState src : bl.states) { + for (AUTTransition tr : src.outTransitions) { AUTState newDestination = blockToNewStates.get(partition.getBlockWithState(tr.destination)); boolean foundSimilar = false; AUTTransition newT = new AUTTransition(newOrigin.id, tr.transition, newDestination.id); newT.elt = tr.elt; - for(AUTTransition testT: trs) { + for (AUTTransition testT : trs) { if (testT.compareTo(newT) == 0) { foundSimilar = true; break; @@ -1321,111 +1317,109 @@ public class AUTGraph implements myutil.Graph { public AUTGraph generateRefusalGraph() { - computeStates(); - - AUTState currentState = new AUTState(0); - ArrayList<AUTState> newStates = new ArrayList<AUTState>(); - ArrayList<AUTTransition> newTransitions = new ArrayList<AUTTransition>(); - newStates.add(currentState); - - // We go thru the graph, starting at state1. Each time we meet an already handled state, we stop. - HashSet<AUTState> metStates = new HashSet<AUTState>(); // in origin Graph - HashMap<AUTState, AUTState> toRefusalState = new HashMap<AUTState, AUTState>(); - LinkedList<AUTState> toHandle = new LinkedList<AUTState>(); - toHandle.add(states.get(0)); - toRefusalState.put(states.get(0), currentState); - - while(toHandle.size() > 0) { - AUTState current = toHandle.get(0); - toHandle.remove(0); - metStates.add(current); - AUTState currentRefusal = toRefusalState.get(current); - if (currentRefusal == null) { - TraceManager.addDev("NULL current Refusal"); - } else { - // For each possible transition, we create a new transition to a new destination state - for(AUTTransition tr: current.outTransitions) { - // Create new transition. Is a new staqte necessary? - AUTState destState = states.get(tr.destination); - AUTState stRefusal; - stRefusal = new AUTState(newStates.size()); - newStates.add(stRefusal); - toRefusalState.put(destState, stRefusal); - AUTTransition trRefusal = new AUTTransition(current.id, tr.transition, stRefusal.id); - newTransitions.add(trRefusal); - stRefusal.addInTransition(trRefusal); - currentRefusal.addOutTransition(trRefusal); - - if (!metStates.contains(destState)) { - if (!(toHandle.contains(destState))) { - toHandle.add(destState); - } - } - - } - } - } - AUTGraph refusalGraph = new AUTGraph(newStates, newTransitions); - - return refusalGraph; - } + computeStates(); + + AUTState currentState = new AUTState(0); + ArrayList<AUTState> newStates = new ArrayList<AUTState>(); + ArrayList<AUTTransition> newTransitions = new ArrayList<AUTTransition>(); + newStates.add(currentState); + + // We go thru the graph, starting at state1. Each time we meet an already handled state, we stop. + HashSet<AUTState> metStates = new HashSet<AUTState>(); // in origin Graph + HashMap<AUTState, AUTState> toRefusalState = new HashMap<AUTState, AUTState>(); + LinkedList<AUTState> toHandle = new LinkedList<AUTState>(); + toHandle.add(states.get(0)); + toRefusalState.put(states.get(0), currentState); + + while (toHandle.size() > 0) { + AUTState current = toHandle.get(0); + toHandle.remove(0); + metStates.add(current); + AUTState currentRefusal = toRefusalState.get(current); + if (currentRefusal == null) { + //TraceManager.addDev("NULL current Refusal"); + } else { + // For each possible transition, we create a new transition to a new destination state + for (AUTTransition tr : current.outTransitions) { + // Create new transition. Is a new staqte necessary? + AUTState destState = states.get(tr.destination); + AUTState stRefusal; + stRefusal = new AUTState(newStates.size()); + newStates.add(stRefusal); + toRefusalState.put(destState, stRefusal); + AUTTransition trRefusal = new AUTTransition(current.id, tr.transition, stRefusal.id); + newTransitions.add(trRefusal); + stRefusal.addInTransition(trRefusal); + currentRefusal.addOutTransition(trRefusal); + + if (!metStates.contains(destState)) { + if (!(toHandle.contains(destState))) { + toHandle.add(destState); + } + } + } + } + } + AUTGraph refusalGraph = new AUTGraph(newStates, newTransitions); + + return refusalGraph; + } public AUTGraph makeTestSequencesFromRefusalGraph() { - ArrayList<AUTState> newStates = new ArrayList<AUTState>(); - ArrayList<AUTTransition> newTransitions = new ArrayList<AUTTransition>(); - AUTState firstState = new AUTState(0); - newStates.add(firstState); - - // Take all termination states of the refusal graph and get the shortest path - // from the first state to this termination state - // Add this path as a new path of the new graph - - computeStates(); - - DijkstraState[] allPaths = GraphAlgorithms.ShortestPathFrom(this, 0); - - for(AUTState state: states) { - if (state.isTerminationState()) { - int[] path = allPaths[state.id].path; - if (path != null) { - AUTState currentStateN = firstState; - // We create a corresponding path in the new graph. - String s = ""; - for(int j=0; j<path.length; j++) { - s += path[j] + " "; - } - TraceManager.addDev("path=" + s); - for(int i=1; i<path.length; i++) { - AUTState currentState = states.get(path[i-1]); - AUTState nextState = states.get(path[i]); - - AUTTransition tr = currentState.getTransitionTo(nextState.id); - TraceManager.addDev("Looking for transition"); - if (tr != null) { - // We need to create the destination state - AUTState newDest = new AUTState(newStates.size()); - newStates.add(newDest); - AUTTransition newTr = new AUTTransition(currentStateN.id, tr.transition, newDest.id); - newTransitions.add(newTr); - TraceManager.addDev("Adding transition:" + newTr); - currentStateN = newDest; - } else { - TraceManager.addDev(" -> null transitions"); - } - } - } - } - } - - - - // Making the graph - AUTGraph testGraph = new AUTGraph(newStates, newTransitions); - - return testGraph; - + ArrayList<AUTState> newStates = new ArrayList<AUTState>(); + ArrayList<AUTTransition> newTransitions = new ArrayList<AUTTransition>(); + AUTState firstState = new AUTState(0); + newStates.add(firstState); + + // Take all termination states of the refusal graph and get the shortest path + // from the first state to this termination state + // Add this path as a new path of the new graph + + computeStates(); + + DijkstraState[] allPaths = GraphAlgorithms.ShortestPathFrom(this, 0); + + for (AUTState state : states) { + if (state.isTerminationState()) { + int[] path = allPaths[state.id].path; + if (path != null) { + AUTState currentStateN = firstState; + // We create a corresponding path in the new graph. + String s = ""; + for (int j = 0; j < path.length; j++) { + s += path[j] + " "; + } + //TraceManager.addDev("path=" + s); + for (int i = 1; i < path.length; i++) { + AUTState currentState = states.get(path[i - 1]); + AUTState nextState = states.get(path[i]); + + AUTTransition tr = currentState.getTransitionTo(nextState.id); + //TraceManager.addDev("Looking for transition"); + if (tr != null) { + // We need to create the destination state + AUTState newDest = new AUTState(newStates.size()); + newStates.add(newDest); + AUTTransition newTr = new AUTTransition(currentStateN.id, tr.transition, newDest.id); + newTransitions.add(newTr); + //TraceManager.addDev("Adding transition:" + newTr); + currentStateN = newDest; + } else { + //TraceManager.addDev(" -> null transitions"); + } + } + } + } + } + + + // Making the graph + AUTGraph testGraph = new AUTGraph(newStates, newTransitions); + + return testGraph; + } @@ -1436,7 +1430,7 @@ public class AUTGraph implements myutil.Graph { private void printI(LinkedList<AUTBlock> I) { StringBuffer sb = new StringBuffer("I:"); - for(AUTBlock b: I) { + for (AUTBlock b : I) { sb.append(" " + b); } TraceManager.addDev(sb.toString()); @@ -1444,6 +1438,4 @@ public class AUTGraph implements myutil.Graph { } - - } diff --git a/src/main/java/ui/graph/RG.java b/src/main/java/ui/graph/RG.java index af51fd2bdbfe9b44ac7d6e765615072ccaa6cc8a..3552af6cbb5ff84fee15c44c88bc5eecb6a185fb 100755 --- a/src/main/java/ui/graph/RG.java +++ b/src/main/java/ui/graph/RG.java @@ -37,17 +37,16 @@ */ - - package ui.graph; import myutil.*; /** - * Class RG - * Creation : 07/12/2016 - ** @version 1.0 07/12/2016 - * @author Ludovic APVRILLE + * Class RG + * Creation : 07/12/2016 + * * @version 1.0 07/12/2016 + * + * @author Ludovic APVRILLE */ public class RG { @@ -55,66 +54,66 @@ public class RG { public AUTGraph graph; public String fileName; public String data; - public int nbOfStates = - 1; + public int nbOfStates = -1; public int nbOfTransitions = -1; - + public RG(String _name) { - name = _name; + name = _name; } public String getToolTip() { - return name; + return name; } public String toString() { - if (nbOfStates == -1) { - return name; - } - return name + " " + nbOfStates + " states, " + nbOfTransitions + " transitions"; + if (nbOfStates == -1) { + return name; + } + return name + " " + nbOfStates + " states, " + nbOfTransitions + " transitions"; } public RG generateRefusalGraph() { - if (graph == null) { - if (data == null){ - return null; - } - graph = new AUTGraph(); - graph.buildGraph(data); - } - - TraceManager.addDev("Making Ref. G"); - AUTGraph refusalGraph = graph.generateRefusalGraph(); - //TraceManager.addDev("Null graph?"); - if (refusalGraph == null) { - TraceManager.addDev("Null graph..."); - return null; - } - - RG ret = new RG(name+"_RF"); - ret.graph = refusalGraph; - return ret; + if (graph == null) { + if (data == null) { + return null; + } + graph = new AUTGraph(); + graph.buildGraph(data); + } + + TraceManager.addDev("Making Ref. G"); + AUTGraph refusalGraph = graph.generateRefusalGraph(); + //TraceManager.addDev("Null graph?"); + if (refusalGraph == null) { + TraceManager.addDev("Null graph..."); + return null; + } + + RG ret = new RG(name + "_RF"); + ret.graph = refusalGraph; + return ret; } public RG generateTestSequences() { - if (graph == null) { - if (data == null){ - return null; - } - graph = new AUTGraph(); - graph.buildGraph(data); - } - - TraceManager.addDev("Making Test sequences"); - AUTGraph testSequencesGraph = graph.makeTestSequencesFromRefusalGraph(); - //TraceManager.addDev("Null graph?"); - if (testSequencesGraph == null) { - TraceManager.addDev("Null graph..."); - return null; - } - - RG ret = new RG(name+"_Test"); - ret.graph = testSequencesGraph; - return ret; + if (graph == null) { + if (data == null) { + return null; + } + graph = new AUTGraph(); + graph.buildGraph(data); + } + + TraceManager.addDev("Making Test sequences"); + AUTGraph testSequencesGraph = graph.makeTestSequencesFromRefusalGraph(); + //TraceManager.addDev("Null graph?"); + if (testSequencesGraph == null) { + TraceManager.addDev("Null graph..."); + return null; + } + + RG ret = new RG(name + "_Test"); + ret.graph = testSequencesGraph; + return ret; } } diff --git a/src/main/java/ui/tree/JDiagramTree.java b/src/main/java/ui/tree/JDiagramTree.java index eb411742035f48d8594ae1bb66cd3fd031ae2f34..3ecc2a5b365a5a3c931e7fc0ba646aefce0f65f5 100755 --- a/src/main/java/ui/tree/JDiagramTree.java +++ b/src/main/java/ui/tree/JDiagramTree.java @@ -37,8 +37,6 @@ */ - - package ui.tree; //import java.awt.*; @@ -71,10 +69,11 @@ import java.util.Set; * Class JDiagramTree * Dialog for managing attributes * Creation: 14/12/2003 - * @version 1.0 14/12/2003 + * * @author Ludovic APVRILLE + * @version 1.0 14/12/2003 */ -public class JDiagramTree extends javax.swing.JTree implements ActionListener, MouseListener, TreeExpansionListener, TreeSelectionListener, Runnable { +public class JDiagramTree extends javax.swing.JTree implements ActionListener, MouseListener, TreeExpansionListener, TreeSelectionListener, Runnable { private boolean toUpdate = false; private MainGUI mgui; private DiagramTreeModel dtm; @@ -97,8 +96,9 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M protected GraphTree selectedGT; - - /** Creates new form */ + /** + * Creates new form + */ public JDiagramTree(MainGUI _mgui) { super(new DiagramTreeModel(_mgui)); @@ -122,7 +122,7 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M } public void updateNow() { - if(toUpdate) { + if (toUpdate) { forceUpdate(); } } @@ -135,7 +135,7 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M } public void mousePressed(MouseEvent e) { - if(SwingUtilities.isRightMouseButton(e)){ + if (SwingUtilities.isRightMouseButton(e)) { if (e.isPopupTrigger()) myPopupEvent(e); } } @@ -161,11 +161,11 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M private void myPopupEvent(MouseEvent e) { int x = e.getX(); int y = e.getY(); - JTree tree = (JTree)e.getSource(); + JTree tree = (JTree) e.getSource(); TreePath path = tree.getPathForLocation(x, y); - //TraceManager.addDev("Path=" + path); - + //TraceManager.addDev("Path=" + path); + if (path == null) return; @@ -175,8 +175,8 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M //TraceManager.addDev("Adding popup menu to " + obj.getClass() + "/" + obj); - if (obj instanceof GraphTree){ - selectedGT = (GraphTree)obj; + if (obj instanceof GraphTree) { + selectedGT = (GraphTree) obj; if (popupGraphTree == null) { popupGraphTree = new JPopupMenu(); jmiAddFromFile = new JMenuItem("Add graph from file (.aut)"); @@ -188,7 +188,7 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M if (obj instanceof RG) { - selectedRG = (RG)obj; + selectedRG = (RG) obj; if (popupTree == null) { popupTree = new JPopupMenu(); jmiAnalyze = new JMenuItem("Analyze"); @@ -212,18 +212,18 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M } } - public synchronized void run(){ + public synchronized void run() { checkPaths(); Iterator<TreePath> l_keys = m_expandedTreePaths.iterator(); TreePath l_path = null; - while(l_keys.hasNext()){ + while (l_keys.hasNext()) { try { l_path = l_keys.next(); TreePath parent = l_path.getParentPath(); //System.out.println("Path: " + l_path); //System.out.println("Parent path: " + parent); if ((l_path.getPathCount() == 2) || (m_expandedTreePaths.contains(parent))) { - //TraceManager.addDev("Path=" + l_path); + //TraceManager.addDev("Path=" + l_path); expandPath(l_path); } } catch (Exception e) { @@ -240,7 +240,7 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M private void checkPaths() { TreePath l_path = null; Iterator<TreePath> l_keys = m_expandedTreePaths.iterator(); - while(l_keys.hasNext()){ + while (l_keys.hasNext()) { l_path = l_keys.next(); if (!isAPathOf(l_path)) { m_expandedTreePaths.remove(l_path); @@ -250,11 +250,11 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M } private boolean isAPathOf(TreePath tp) { - if ((dtm ==null) || (tp == null)) { + if ((dtm == null) || (tp == null)) { return false; } - Object [] objs = tp.getPath(); + Object[] objs = tp.getPath(); if (objs.length == 0) { return false; @@ -266,8 +266,8 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M int index; - for(int i=0; i<objs.length - 2; i++) { - index = dtm.getIndexOfChild(objs[i], objs[i+1]); + for (int i = 0; i < objs.length - 2; i++) { + index = dtm.getIndexOfChild(objs[i], objs[i + 1]); if (index == -1) { return false; } @@ -277,18 +277,17 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M } - public synchronized void update(){ + public synchronized void update() { SwingUtilities.invokeLater(this); } public void treeExpanded(TreeExpansionEvent treeExpansionEvent) { TreePath tp = treeExpansionEvent.getPath(); m_expandedTreePaths.add(tp); - Iterator<TreePath> l_keys = m_expandedTreePaths.iterator(); - while(l_keys.hasNext()){ + for (TreePath m_expandedTreePath : m_expandedTreePaths) { TreePath l_path = null; try { - l_path = l_keys.next(); + l_path = m_expandedTreePath; TreePath parent = l_path.getParentPath(); if ((l_path.getPathCount() == 1) || (m_expandedTreePaths.contains(parent))) { expandPath(l_path); @@ -304,9 +303,9 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M } public void expandMyPath(TreePath tp) { - //TraceManager.addDev("Path=" + tp); - expandPath(tp); - } + //TraceManager.addDev("Path=" + tp); + expandPath(tp); + } public void treeCollapsed(TreeExpansionEvent treeExpansionEvent) { m_expandedTreePaths.remove(treeExpansionEvent.getPath()); @@ -315,14 +314,14 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M public void valueChanged(TreeSelectionEvent treeSelectionEvent) { //TraceManager.addDev("Value changed"); - if(getSelectionPaths() != null && getSelectionPaths().length >0 ){ + if (getSelectionPaths() != null && getSelectionPaths().length > 0) { m_selectedTreePaths = getSelectionModel().getSelectionPaths(); } TreePath tp = treeSelectionEvent.getNewLeadSelectionPath(); - //TraceManager.addDev("Expanded path=" + tp); - + //TraceManager.addDev("Expanded path=" + tp); + if (tp == null) { return; } @@ -331,18 +330,18 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M Object o; if (nodeInfo instanceof TDiagramPanel) { - mgui.selectTab((TDiagramPanel)nodeInfo); + mgui.selectTab((TDiagramPanel) nodeInfo); } else if (nodeInfo instanceof TURTLEPanel) { - mgui.selectTab((TURTLEPanel)nodeInfo); + mgui.selectTab((TURTLEPanel) nodeInfo); } else if (nodeInfo instanceof TGComponent) { TGComponent tgc = (TGComponent) nodeInfo; mgui.selectTab(tgc.getTDiagramPanel()); tgc.getTDiagramPanel().highlightTGComponent(tgc); } else if (nodeInfo instanceof Invariant) { //TraceManager.addDev("Click on invariant"); - Invariant inv = (Invariant)nodeInfo; + Invariant inv = (Invariant) nodeInfo; mgui.setCurrentInvariant(inv); - for(int i=2; i< inv.getChildCount(); i++) { + for (int i = 2; i < inv.getChildCount(); i++) { o = inv.getChild(i); if (o instanceof TGComponent) { TGComponent tgc1 = (TGComponent) (o); @@ -350,14 +349,14 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M } if (o instanceof InvariantSynchro) { - InvariantSynchro is = (InvariantSynchro)o; + InvariantSynchro is = (InvariantSynchro) o; is.getFrom().getTDiagramPanel().repaint(); is.getTo().getTDiagramPanel().repaint(); } } } else if (nodeInfo instanceof CheckingError) { - CheckingError ce = (CheckingError)nodeInfo; + CheckingError ce = (CheckingError) nodeInfo; TDiagramPanel tdp = null; if (ce instanceof UICheckingError) { tdp = ((UICheckingError) ce).getTDiagramPanel(); @@ -371,7 +370,7 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M mgui.selectTDiagramPanel(tdp); } else if (ce.getTClass() != null) { mgui.selectTab(ce.getTClass().getName()); - } else if(ce.getRelation() != null) { + } else if (ce.getRelation() != null) { mgui.selectTab("Class diagram"); } else if (ce instanceof TMLCheckingError && ((TMLCheckingError) ce).getTMLActivityElement() != null) { TGComponent tgc = (TGComponent) ((TMLCheckingError) ce).getTMLActivityElement().getReferenceObject(); @@ -422,7 +421,7 @@ public class JDiagramTree extends javax.swing.JTree implements ActionListener, M if (ae.getSource() == jmiAddFromFile) { //TraceManager.addDev("Adding graph from file"); - String [] graph = mgui.loadAUTGraph(); + String[] graph = mgui.loadAUTGraph(); if (graph != null) { RG rg = new RG(graph[0]); rg.fileName = graph[0]; diff --git a/src/main/java/ui/window/JDialogAvatarModelChecker.java b/src/main/java/ui/window/JDialogAvatarModelChecker.java index 1f3f49304dc0592aa348060d85c6a16dfcfebac3..e222d9f2f07c2a32f4f79d54fa304bddc7644ff3 100644 --- a/src/main/java/ui/window/JDialogAvatarModelChecker.java +++ b/src/main/java/ui/window/JDialogAvatarModelChecker.java @@ -37,8 +37,6 @@ */ - - package ui.window; import avatartranslator.AvatarSpecification; @@ -67,21 +65,22 @@ import java.util.concurrent.TimeUnit; * Class JDialogAvatarModelChecker * Dialog for managing the model checking of avatar specifications * Creation: 1/06/2016 - * @version 1.1 1/06/2016 + * * @author Ludovic APVRILLE + * @version 1.1 1/06/2016 */ -public class JDialogAvatarModelChecker extends javax.swing.JFrame implements ActionListener, Runnable, MasterProcessInterface { - private final static String [] INFOS = {"Not started", "Running", "Stopped by user", "Finished"}; - private final static Color [] COLORS = {Color.darkGray, Color.magenta, Color.red, Color.blue}; +public class JDialogAvatarModelChecker extends javax.swing.JFrame implements ActionListener, Runnable, MasterProcessInterface { + private final static String[] INFOS = {"Not started", "Running", "Stopped by user", "Finished"}; + private final static Color[] COLORS = {Color.darkGray, Color.magenta, Color.red, Color.blue}; - public final static int REACHABILITY_ALL = 1; - public final static int REACHABILITY_SELECTED = 2; - public final static int REACHABILITY_NONE = 3; + public final static int REACHABILITY_ALL = 1; + public final static int REACHABILITY_SELECTED = 2; + public final static int REACHABILITY_NONE = 3; - public final static int LIVENESS_ALL = 4; - public final static int LIVENESS_SELECTED = 5; - public final static int LIVENESS_NONE = 6; + public final static int LIVENESS_ALL = 4; + public final static int LIVENESS_SELECTED = 5; + public final static int LIVENESS_NONE = 6; protected static String graphDir; @@ -145,15 +144,15 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act private Thread t; private boolean go = false; - // private boolean hasError = false; + // private boolean hasError = false; private java.util.Timer timer; //protected boolean startProcess = false; - - - /** Creates new form */ - public JDialogAvatarModelChecker(Frame f, MainGUI _mgui, String title, AvatarSpecification _spec, String _graphDir, boolean _showLiveness) { + /** + * Creates new form + */ + public JDialogAvatarModelChecker(Frame f, MainGUI _mgui, String title, AvatarSpecification _spec, String _graphDir, boolean _showLiveness) { super(title); mgui = _mgui; @@ -167,13 +166,13 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act } showLiveness = _showLiveness; - + initComponents(); myInitComponents(); pack(); /*if ((mgui != null) && (spec != null)) { - mgui.drawAvatarSpecification(spec); + mgui.drawAvatarSpecification(spec); }*/ //getGlassPane().addMouseListener( new MouseAdapter() {}); @@ -241,9 +240,9 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act jp01.add(reachabilityAllStates, c01); reachabilities.add(reachabilityAllStates); - noReachability.setSelected(reachabilitySelected == REACHABILITY_NONE); - reachabilityCheckable.setSelected(reachabilitySelected == REACHABILITY_SELECTED); - reachabilityAllStates.setSelected(reachabilitySelected == REACHABILITY_ALL); + noReachability.setSelected(reachabilitySelected == REACHABILITY_NONE); + reachabilityCheckable.setSelected(reachabilitySelected == REACHABILITY_SELECTED); + reachabilityAllStates.setSelected(reachabilitySelected == REACHABILITY_ALL); // Liveness @@ -251,41 +250,46 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act noLiveness = new JRadioButton("No liveness"); noLiveness.addActionListener(this); - if (showLiveness) {jp01.add(noLiveness, c01);} + if (showLiveness) { + jp01.add(noLiveness, c01); + } liveness.add(noLiveness); livenessCheckable = new JRadioButton("Liveness of selected states"); livenessCheckable.addActionListener(this); - if (showLiveness) {jp01.add(livenessCheckable, c01);} + if (showLiveness) { + jp01.add(livenessCheckable, c01); + } liveness.add(livenessCheckable); livenessAllStates = new JRadioButton("Liveness of all states"); livenessAllStates.addActionListener(this); - if (showLiveness){jp01.add(livenessAllStates, c01);} + if (showLiveness) { + jp01.add(livenessAllStates, c01); + } liveness.add(livenessAllStates); - noLiveness.setSelected(livenessSelected == LIVENESS_NONE); - livenessCheckable.setSelected(livenessSelected == LIVENESS_SELECTED); - livenessAllStates.setSelected(livenessSelected == LIVENESS_ALL); + noLiveness.setSelected(livenessSelected == LIVENESS_NONE); + livenessCheckable.setSelected(livenessSelected == LIVENESS_SELECTED); + livenessAllStates.setSelected(livenessSelected == LIVENESS_ALL); // RG saveGraphAUT = new JCheckBox("Reachability Graph Generation", graphSelected); saveGraphAUT.addActionListener(this); - //saveGraphAUT.addSelectionListener(this); + //saveGraphAUT.addSelectionListener(this); jp01.add(saveGraphAUT, c01); graphPath = new JTextField(graphDir); jp01.add(graphPath, c01); saveGraphDot = new JCheckBox("Save RG in dotty:", graphSelectedDot); saveGraphDot.addActionListener(this); - //saveGraphDot.setEnebaled(false); + //saveGraphDot.setEnebaled(false); jp01.add(saveGraphDot, c01); graphPathDot = new JTextField(graphDirDot); jp01.add(graphPathDot, c01); c.add(jp01, BorderLayout.NORTH); - jta = new ScrolledJTextArea(); jta.setEditable(false); jta.setMargin(new Insets(10, 10, 10, 10)); @@ -388,7 +392,6 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act jpinfo.add(elapsedTime, c02); - JPanel jp2 = new JPanel(); jp2.add(start); jp2.add(stop); @@ -400,10 +403,10 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act } - public void actionPerformed(ActionEvent evt) { + public void actionPerformed(ActionEvent evt) { String command = evt.getActionCommand(); - if (command.equals("Start")) { + if (command.equals("Start")) { startProcess(); } else if (command.equals("Stop")) { stopProcess(); @@ -445,7 +448,7 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act if (amc != null) { amc.stopModelChecking(); } - mode = STOPPED; + mode = STOPPED; setButtons(); go = false; if (timer != null) { @@ -476,26 +479,26 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act } public void run() { - // String cmd; - // String list, data; - // int cycle = 0; + // String cmd; + // String list, data; + // int cycle = 0; - // hasError = false; + // hasError = false; TraceManager.addDev("Thread started"); - // File testFile; + // File testFile; try { reinitValues(); jta.append("Starting the model checker\n"); - if (generateDesignSelected) { + if (generateDesignSelected) { TraceManager.addDev("Drawing non modified avatar spec"); if ((mgui != null) && (spec != null)) { mgui.drawAvatarSpecification(spec); } } - + amc = new AvatarModelChecker(spec); endDate = null; previousNbOfStates = 0; @@ -510,11 +513,11 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act // Reachability int res; - if (reachabilitySelected == REACHABILITY_SELECTED) { + if (reachabilitySelected == REACHABILITY_SELECTED) { res = amc.setReachabilityOfSelected(); jta.append("Reachability of " + res + " selected elements activated\n"); - for(SpecificationReachability sr: amc.getReachabilities()){ + for (SpecificationReachability sr : amc.getReachabilities()) { handleReachability(sr.ref1, sr.result); if (sr.ref2 != sr.ref1) { handleReachability(sr.ref2, sr.result); @@ -522,10 +525,10 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act } } - if (reachabilitySelected == REACHABILITY_ALL) { + if (reachabilitySelected == REACHABILITY_ALL) { res = amc.setReachabilityOfAllStates(); - jta.append("Reachability of " + res + " states activated\n"); - for(SpecificationReachability sr: amc.getReachabilities()){ + jta.append("Reachability of " + res + " states activated\n"); + for (SpecificationReachability sr : amc.getReachabilities()) { handleReachability(sr.ref1, sr.result); if (sr.ref2 != sr.ref1) { handleReachability(sr.ref2, sr.result); @@ -544,7 +547,7 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act amc.startModelChecking(); TraceManager.addDev("Model checking done"); - //TraceManager.addDev("RG:" + amc.statesToString() + "\n\n"); + //TraceManager.addDev("RG:" + amc.statesToString() + "\n\n"); if (generateDesignSelected) { TraceManager.addDev("Drawing modified avatar spec"); @@ -561,12 +564,12 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act jta.append("Nb of states:" + amc.getNbOfStates() + "\n"); jta.append("Nb of links:" + amc.getNbOfLinks() + "\n"); - if ((reachabilitySelected == REACHABILITY_SELECTED) || (reachabilitySelected == REACHABILITY_ALL)) { + if ((reachabilitySelected == REACHABILITY_SELECTED) || (reachabilitySelected == REACHABILITY_ALL)) { jta.append("\nReachabilities found:\n"); jta.append(amc.reachabilityToString()); // Back annotation on diagrams - for(SpecificationReachability sr: amc.getReachabilities()){ + for (SpecificationReachability sr : amc.getReachabilities()) { //TraceManager.addDev("Handing reachability of " + sr); handleReachability(sr.ref1, sr.result); if (sr.ref2 != sr.ref1) { @@ -577,28 +580,28 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act //TraceManager.addDev(amc.toString()); //TraceManager.addDev(amc.toString()); - DateFormat dateFormat = new SimpleDateFormat("_yyyyMMdd_HHmmss"); - Date date = new Date(); - String dateAndTime=dateFormat.format(date); + DateFormat dateFormat = new SimpleDateFormat("_yyyyMMdd_HHmmss"); + Date date = new Date(); + String dateAndTime = dateFormat.format(date); if (saveGraphAUT.isSelected()) { - graphAUT = amc.toAUT(); - graphMode = GRAPH_OK; - //TraceManager.addDev("graph AUT=\n" + graph); - - String autfile; - if (graphPath.getText().indexOf("$") != -1) { - autfile = Conversion.replaceAllChar(graphPath.getText(), '$', dateAndTime); - } else { - autfile = graphPath.getText(); - } - - try { + graphAUT = amc.toAUT(); + graphMode = GRAPH_OK; + //TraceManager.addDev("graph AUT=\n" + graph); + + String autfile; + if (graphPath.getText().indexOf("$") != -1) { + autfile = Conversion.replaceAllChar(graphPath.getText(), '$', dateAndTime); + } else { + autfile = graphPath.getText(); + } + + try { RG rg = new RG(autfile); - rg.data = graphAUT; + rg.data = graphAUT; rg.fileName = autfile; - rg.nbOfStates = amc.getNbOfStates(); - rg.nbOfTransitions = amc.getNbOfLinks(); + rg.nbOfStates = amc.getNbOfStates(); + rg.nbOfTransitions = amc.getNbOfLinks(); mgui.addRG(rg); FileUtils.saveFile(autfile, graphAUT); jta.append("Graph saved in " + autfile + "\n"); @@ -607,12 +610,12 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act } } if (saveGraphDot.isSelected()) { - String dotfile; - if (graphPathDot.getText().indexOf("$") != -1) { - dotfile = Conversion.replaceAllChar(graphPathDot.getText(), '$', dateAndTime); - } else { - dotfile = graphPathDot.getText(); - } + String dotfile; + if (graphPathDot.getText().indexOf("$") != -1) { + dotfile = Conversion.replaceAllChar(graphPathDot.getText(), '$', dateAndTime); + } else { + dotfile = graphPathDot.getText(); + } try { String graph = amc.toDOT(); //TraceManager.addDev("graph AUT=\n" + graph); @@ -637,22 +640,22 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act protected void handleReachability(Object _o, SpecificationReachabilityType _res) { if (_o instanceof AvatarStateMachineElement) { - Object o = ((AvatarStateMachineElement)_o).getReferenceObject(); + Object o = ((AvatarStateMachineElement) _o).getReferenceObject(); if (o instanceof TGComponent) { - TGComponent tgc = (TGComponent)(o); + TGComponent tgc = (TGComponent) (o); TraceManager.addDev("Reachability of tgc=" + tgc + " value=" + tgc.getValue() + " class=" + tgc.getClass()); - switch(_res) { - case NOTCOMPUTED: - tgc.setReachability(TGComponent.ACCESSIBILITY_UNKNOWN); - tgc.setLiveness(TGComponent.ACCESSIBILITY_UNKNOWN); - break; - case REACHABLE: - tgc.setReachability(TGComponent.ACCESSIBILITY_OK); - break; - case NONREACHABLE: - tgc.setReachability(TGComponent.ACCESSIBILITY_KO); - tgc.setLiveness(TGComponent.ACCESSIBILITY_KO); - break; + switch (_res) { + case NOTCOMPUTED: + tgc.setReachability(TGComponent.ACCESSIBILITY_UNKNOWN); + tgc.setLiveness(TGComponent.ACCESSIBILITY_UNKNOWN); + break; + case REACHABLE: + tgc.setReachability(TGComponent.ACCESSIBILITY_OK); + break; + case NONREACHABLE: + tgc.setReachability(TGComponent.ACCESSIBILITY_KO); + tgc.setLiveness(TGComponent.ACCESSIBILITY_KO); + break; } tgc.getTDiagramPanel().repaint(); } @@ -667,7 +670,7 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act graphSelected = saveGraphAUT.isSelected(); graphPath.setEnabled(saveGraphAUT.isSelected()); graphSelectedDot = saveGraphDot.isSelected(); - saveGraphDot.setEnabled(saveGraphAUT.isSelected()); + saveGraphDot.setEnabled(saveGraphAUT.isSelected()); graphPathDot.setEnabled(saveGraphDot.isSelected() && saveGraphAUT.isSelected()); if (generateDesign != null) { generateDesignSelected = generateDesign.isSelected(); @@ -677,38 +680,38 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act if (noReachability.isSelected()) { reachabilitySelected = REACHABILITY_NONE; - } else if ( reachabilityCheckable.isSelected()) { + } else if (reachabilityCheckable.isSelected()) { reachabilitySelected = REACHABILITY_SELECTED; } else { reachabilitySelected = REACHABILITY_ALL; } - switch(mode) { - case NOT_STARTED: - if ((reachabilitySelected == REACHABILITY_SELECTED) || (reachabilitySelected == REACHABILITY_ALL) || graphSelected || graphSelectedDot) { - start.setEnabled(true); - } else { + switch (mode) { + case NOT_STARTED: + if ((reachabilitySelected == REACHABILITY_SELECTED) || (reachabilitySelected == REACHABILITY_ALL) || graphSelected || graphSelectedDot) { + start.setEnabled(true); + } else { + start.setEnabled(false); + } + stop.setEnabled(false); + close.setEnabled(true); + //setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); + getGlassPane().setVisible(false); + break; + case STARTED: start.setEnabled(false); - } - stop.setEnabled(false); - close.setEnabled(true); - //setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); - getGlassPane().setVisible(false); - break; - case STARTED: - start.setEnabled(false); - stop.setEnabled(true); - close.setEnabled(false); - getGlassPane().setVisible(true); - //setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); - break; - case STOPPED: - default: - start.setEnabled(false); - stop.setEnabled(false); - close.setEnabled(true); - getGlassPane().setVisible(false); - break; + stop.setEnabled(true); + close.setEnabled(false); + getGlassPane().setVisible(true); + //setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); + break; + case STOPPED: + default: + start.setEnabled(false); + stop.setEnabled(false); + close.setEnabled(true); + getGlassPane().setVisible(false); + break; } show.setEnabled(graphMode == GRAPH_OK); @@ -732,8 +735,8 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act try { if (amc != null) { int nbOfStatess = amc.getNbOfStates(); - nbOfStates.setText(""+nbOfStatess); - nbOfLinks.setText(""+amc.getNbOfLinks()); + nbOfStates.setText("" + nbOfStatess); + nbOfLinks.setText("" + amc.getNbOfLinks()); // Reachability and deadlocks int nb = amc.getNbOfReachabilities(); @@ -746,10 +749,10 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act nbOfReachabilitiesNotFound.setText("" + nb); - nbOfDeadlocks.setText(""+amc.getNbOfDeadlocks()); + nbOfDeadlocks.setText("" + amc.getNbOfDeadlocks()); - nbOfPendingStates.setText(""+amc.getNbOfPendingStates()); + nbOfPendingStates.setText("" + amc.getNbOfPendingStates()); Date d; previousDate = new Date(); if (endDate != null) { @@ -757,12 +760,12 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act } else { d = previousDate; } - long duration = d.getTime() - startDate.getTime(); - long durationMn = TimeUnit.MILLISECONDS.toMinutes(duration); - long durationSec = TimeUnit.MILLISECONDS.toSeconds(duration) - durationMn*60; - long durationMs = duration - 1000*(durationSec - durationMn*60); + long duration = d.getTime() - startDate.getTime(); + long durationMn = TimeUnit.MILLISECONDS.toMinutes(duration); + long durationSec = TimeUnit.MILLISECONDS.toSeconds(duration) - durationMn * 60; + long durationMs = duration - 1000 * (durationSec - durationMn * 60); - //TraceManager.addDev("mn=" + durationMn + " sec=" + durationSec + " ms=" + durationMs + " raw=" + duration); + //TraceManager.addDev("mn=" + durationMn + " sec=" + durationSec + " ms=" + durationMs + " raw=" + duration); String t = String.format("%02d min %02d sec %03d msec", durationMn, durationSec, durationMs); @@ -780,7 +783,7 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act //if (diff == 0) { - nbOfStatesPerSecond.setText(""+1000*diff/duration); + nbOfStatesPerSecond.setText("" + 1000 * diff / duration); updateInfo(); //} @@ -821,6 +824,7 @@ public class JDialogAvatarModelChecker extends javax.swing.JFrame implements Act private class ModelCheckerMonitor extends TimerTask { private JDialogAvatarModelChecker jdamc; + public ModelCheckerMonitor(JDialogAvatarModelChecker _jdamc) { jdamc = _jdamc; } diff --git a/src/main/java/ui/window/JFrameMinimize.java b/src/main/java/ui/window/JFrameMinimize.java index f2e4bb9029d65a985e1b8c1402f788424b229036..3cc73fabeaee332a1a6ad2977f42099f0d5445e1 100755 --- a/src/main/java/ui/window/JFrameMinimize.java +++ b/src/main/java/ui/window/JFrameMinimize.java @@ -37,15 +37,16 @@ */ - - package ui.window; +import myutil.Conversion; +import myutil.FileException; +import myutil.FileUtils; import myutil.ScrolledJTextArea; -import ui.util.IconManager; import ui.MainGUI; import ui.graph.AUTGraph; import ui.graph.RG; +import ui.util.IconManager; import javax.swing.*; import javax.swing.event.ListSelectionEvent; @@ -53,8 +54,12 @@ import javax.swing.event.ListSelectionListener; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.io.File; +import java.text.DateFormat; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Collections; +import java.util.Date; import java.util.HashSet; @@ -62,31 +67,33 @@ import java.util.HashSet; * Class JFrameMinimize * Frame for handling the minimization of graphs * Creation: 09/12/2016 - * @version 1.0 09/12/2016 + * * @author Ludovic APVRILLE + * @version 1.0 09/12/2016 */ -public class JFrameMinimize extends javax.swing.JFrame implements ActionListener, ListSelectionListener, Runnable { +public class JFrameMinimize extends javax.swing.JFrame implements ActionListener, ListSelectionListener, Runnable { /*private static boolean isAldebaranSelected = false; private static boolean isOminSelected = false; private static boolean isStrongSelected = true;*/ - + protected static boolean graphSelected = true; + private MainGUI mgui; private RG rg; private RG newRG; - + protected Thread t; protected boolean listOfActionsComputed = false; - java.util.List<String> sortedListProjected ; + java.util.List<String> sortedListProjected; java.util.List<String> sortedListIgnored; private int mode; - + protected final static int NO_DATA = 0; protected final static int NOT_STARTED = 1; protected final static int STARTED = 2; protected final static int STOPPED = 3; - + //subpanels private JPanel panel1, panel2, panel3, panel4; private JList<String> listIgnored; @@ -96,38 +103,49 @@ public class JFrameMinimize extends javax.swing.JFrame implements ActionListener private JButton addOneIgnored; private JButton allIgnored; protected JTextArea jta; - + + // Panel for graph saving + private JCheckBox saveGraphAUT; + private JTextField graphPath; + private String graphDir; + private JCheckBox removeInternalActions; private JRadioButton tauOnly; private JRadioButton allMinimization; - - + + // Main Panel private JButton start, stop, close; - - /** Creates new form */ - public JFrameMinimize(Frame _f, MainGUI _mgui, String _title, RG _rg) { + + /** + * Creates new form + */ + public JFrameMinimize(Frame _f, MainGUI _mgui, String _title, RG _rg, String _graphDir) { super(_title); - + mgui = _mgui; - rg = _rg; - + rg = _rg; + + if (graphDir == null) { + graphDir = _graphDir + File.separator + "minimized$.aut"; + } + initComponents(); myInitComponents(); pack(); - + //getGlassPane().addMouseListener( new MouseAdapter() {}); getGlassPane().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); } - - + + private void myInitComponents() { mode = NO_DATA; setButtons(); - t = new Thread(this); - t.start(); + t = new Thread(this); + t.start(); } - + private void initComponents() { Container c = getContentPane(); GridBagLayout gridbag1 = new GridBagLayout(); @@ -137,51 +155,57 @@ public class JFrameMinimize extends javax.swing.JFrame implements ActionListener setFont(new Font("Helvetica", Font.PLAIN, 14)); c.setLayout(new BorderLayout()); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); - + // ignored list - + JPanel panelTop = new JPanel(); panelTop.setLayout(new BorderLayout()); - + panel1 = new JPanel(); panel1.setLayout(new BorderLayout()); panel1.setBorder(new javax.swing.border.TitledBorder("Actions ignored")); listIgnored = new JList<String>(); //listIgnored.setPreferredSize(new Dimension(200, 250)); - listIgnored.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION ); + listIgnored.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); listIgnored.addListSelectionListener(this); JScrollPane scrollPane1 = new JScrollPane(listIgnored); panel1.add(scrollPane1, BorderLayout.CENTER); panel1.setPreferredSize(new Dimension(300, 250)); panelTop.add(panel1, BorderLayout.WEST); - + // validated list panel2 = new JPanel(); panel2.setLayout(new BorderLayout()); panel2.setBorder(new javax.swing.border.TitledBorder("Actions taken into account")); - listProjected = new JList<String> (); + listProjected = new JList<String>(); //listProjected.setPreferredSize(new Dimension(200, 250)); - listProjected.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION ); + listProjected.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); listProjected.addListSelectionListener(this); JScrollPane scrollPane2 = new JScrollPane(listProjected); panel2.add(scrollPane2, BorderLayout.CENTER); panel2.setPreferredSize(new Dimension(300, 250)); panelTop.add(panel2, BorderLayout.EAST); - + // radio buttons panel4 = new JPanel(); panel4.setLayout(gridbag4); panel4.setBorder(new javax.swing.border.TitledBorder("Minimization: tools and options")); + + + saveGraphAUT = new JCheckBox("Save the minimized graph in AUT format", graphSelected); + //saveGraphAUT.addSelectionListener(this); + graphPath = new JTextField(graphDir); + removeInternalActions = new JCheckBox("Remove internal actions"); removeInternalActions.setEnabled(true); - tauOnly = new JRadioButton("Only remove tau transitions"); - tauOnly.setEnabled(true); - allMinimization = new JRadioButton("Complete minimization [Experimental]"); - allMinimization.setEnabled(true); - ButtonGroup bt = new ButtonGroup(); - bt.add(tauOnly); - bt.add(allMinimization); - allMinimization.setSelected(true); + tauOnly = new JRadioButton("Only remove tau transitions"); + tauOnly.setEnabled(true); + allMinimization = new JRadioButton("Complete minimization [Experimental]"); + allMinimization.setEnabled(true); + ButtonGroup bt = new ButtonGroup(); + bt.add(tauOnly); + bt.add(allMinimization); + allMinimization.setSelected(true); //c4.anchor = GridBagConstraints.EAST; c4.weighty = 1.0; @@ -189,53 +213,56 @@ public class JFrameMinimize extends javax.swing.JFrame implements ActionListener c4.gridwidth = GridBagConstraints.REMAINDER; //end row c4.fill = GridBagConstraints.HORIZONTAL; c4.gridheight = 1; + panel4.add(saveGraphAUT, c4); + panel4.add(graphPath, c4); + panel4.add(allMinimization, c4); panel4.add(removeInternalActions, c4); - panel4.add(tauOnly, c4); - panel4.add(allMinimization, c4); + panel4.add(tauOnly, c4); + panel4.add(allMinimization, c4); panelTop.add(panel4, BorderLayout.SOUTH); - - + + // central buttons panel3 = new JPanel(); panel3.setLayout(gridbag1); - + c1.weighty = 1.0; c1.weightx = 1.0; c1.gridwidth = GridBagConstraints.REMAINDER; //end row c1.fill = GridBagConstraints.HORIZONTAL; c1.gridheight = 1; - + allProjected = new JButton(IconManager.imgic50); allProjected.setPreferredSize(new Dimension(50, 25)); allProjected.addActionListener(this); allProjected.setActionCommand("All"); panel3.add(allProjected, c1); - + addOneProjected = new JButton(IconManager.imgic48); addOneProjected.setPreferredSize(new Dimension(50, 25)); addOneProjected.addActionListener(this); addOneProjected.setActionCommand("Add one"); panel3.add(addOneProjected, c1); - + panel3.add(new JLabel(" "), c1); - + addOneIgnored = new JButton(IconManager.imgic46); addOneIgnored.addActionListener(this); addOneIgnored.setPreferredSize(new Dimension(50, 25)); addOneIgnored.setActionCommand("One Ignored"); panel3.add(addOneIgnored, c1); - + allIgnored = new JButton(IconManager.imgic44); allIgnored.addActionListener(this); allIgnored.setPreferredSize(new Dimension(50, 25)); allIgnored.setActionCommand("All Ignored"); panel3.add(allIgnored, c1); - + panelTop.add(panel3, BorderLayout.CENTER); - + c.add(panelTop, BorderLayout.NORTH); - + // textarea panel jta = new ScrolledJTextArea(); jta.setEditable(false); @@ -245,36 +272,44 @@ public class JFrameMinimize extends javax.swing.JFrame implements ActionListener Font f = new Font("Courrier", Font.BOLD, 12); jta.setFont(f); JScrollPane jsp = new JScrollPane(jta, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); - + c.add(jsp, BorderLayout.CENTER); - - + + // Button panel; + + JPanel southPanel = new JPanel(new BorderLayout()); + + + + start = new JButton("Start", IconManager.imgic53); stop = new JButton("Stop", IconManager.imgic55); close = new JButton("Close", IconManager.imgic27); - + start.setPreferredSize(new Dimension(150, 30)); stop.setPreferredSize(new Dimension(150, 30)); close.setPreferredSize(new Dimension(150, 30)); - + start.addActionListener(this); stop.addActionListener(this); close.addActionListener(this); - + JPanel jp2 = new JPanel(); jp2.add(start); jp2.add(stop); jp2.add(close); - - c.add(jp2, BorderLayout.SOUTH); + + southPanel.add(jp2, BorderLayout.CENTER); + + c.add(southPanel, BorderLayout.SOUTH); } - - public void actionPerformed(ActionEvent evt) { + + public void actionPerformed(ActionEvent evt) { String command = evt.getActionCommand(); - + // Compare the action command to the known actions. - if (command.equals("Start")) { + if (command.equals("Start")) { startProcess(); } else if (command.equals("Stop")) { stopProcess(); @@ -282,7 +317,7 @@ public class JFrameMinimize extends javax.swing.JFrame implements ActionListener closeDialog(); } else if (evt.getSource() == addOneIgnored) { addOneIgnored(); - } else if (evt.getSource() == addOneProjected) { + } else if (evt.getSource() == addOneProjected) { addOneProjected(); } else if (evt.getSource() == allProjected) { allProjected(); @@ -292,52 +327,51 @@ public class JFrameMinimize extends javax.swing.JFrame implements ActionListener } - private void updateListsFromModels() { - Collections.sort(sortedListProjected); - Collections.sort(sortedListIgnored); - String[] strarray = new String[sortedListProjected.size()]; - sortedListProjected.toArray(strarray ); - listProjected.setListData(strarray); - strarray = new String[sortedListIgnored.size()]; - sortedListIgnored.toArray(strarray ); - listIgnored.setListData(strarray); - setButtonsList(); + Collections.sort(sortedListProjected); + Collections.sort(sortedListIgnored); + String[] strarray = new String[sortedListProjected.size()]; + sortedListProjected.toArray(strarray); + listProjected.setListData(strarray); + strarray = new String[sortedListIgnored.size()]; + sortedListIgnored.toArray(strarray); + listIgnored.setListData(strarray); + setButtonsList(); } - - + + private void addOneIgnored() { - java.util.List<String> ll= listProjected.getSelectedValuesList(); - for (String o: ll){ + java.util.List<String> ll = listProjected.getSelectedValuesList(); + for (String o : ll) { sortedListProjected.remove(o); - sortedListIgnored.add (o); + sortedListIgnored.add(o); } updateListsFromModels(); setButtons(); } - + private void addOneProjected() { - java.util.List<String> ll= listIgnored.getSelectedValuesList(); - for (String o: ll){ + java.util.List<String> ll = listIgnored.getSelectedValuesList(); + for (String o : ll) { sortedListIgnored.remove(o); - sortedListProjected.add (o); + sortedListProjected.add(o); } updateListsFromModels(); setButtons(); - } - + } + private void allProjected() { - sortedListProjected.addAll(sortedListIgnored); - sortedListIgnored.clear(); - updateListsFromModels(); - + sortedListProjected.addAll(sortedListIgnored); + sortedListIgnored.clear(); + updateListsFromModels(); + setButtons(); } - + private void allIgnored() { sortedListIgnored.addAll(sortedListProjected); - sortedListProjected.clear(); - updateListsFromModels(); + sortedListProjected.clear(); + updateListsFromModels(); setButtons(); } @@ -363,10 +397,10 @@ public class JFrameMinimize extends javax.swing.JFrame implements ActionListener } } }*/ - - + + private void setButtons() { - switch(mode) { + switch (mode) { case NO_DATA: listProjected.setEnabled(false); listIgnored.setEnabled(false); @@ -406,71 +440,71 @@ public class JFrameMinimize extends javax.swing.JFrame implements ActionListener break; } } - + private void unsetButtonsList() { addOneProjected.setEnabled(false); addOneIgnored.setEnabled(false); allProjected.setEnabled(false); allIgnored.setEnabled(false); } - + private void setButtonsList() { int i1 = listIgnored.getSelectedIndex(); int i2 = listProjected.getSelectedIndex(); - + if (i1 == -1) { addOneProjected.setEnabled(false); } else { addOneProjected.setEnabled(true); } - + if (i2 == -1) { addOneIgnored.setEnabled(false); } else { addOneIgnored.setEnabled(true); } - if (sortedListIgnored == null) { - allProjected.setEnabled(false); - } else { - if (sortedListIgnored.size() == 0) { - allProjected.setEnabled(false); - } else { - allProjected.setEnabled(true); - } - } - - if (sortedListProjected == null) { - allIgnored.setEnabled(false); - } else { - if (sortedListProjected.size() == 0) { + if (sortedListIgnored == null) { + allProjected.setEnabled(false); + } else { + if (sortedListIgnored.size() == 0) { + allProjected.setEnabled(false); + } else { + allProjected.setEnabled(true); + } + } + + if (sortedListProjected == null) { allIgnored.setEnabled(false); - //closeButton.setEnabled(false); - //closeButton.setEnabled(false); - } else { - allIgnored.setEnabled(true); - //closeButton.setEnabled(true); - } - } + } else { + if (sortedListProjected.size() == 0) { + allIgnored.setEnabled(false); + //closeButton.setEnabled(false); + //closeButton.setEnabled(false); + } else { + allIgnored.setEnabled(true); + //closeButton.setEnabled(true); + } + } } - + public void valueChanged(ListSelectionEvent e) { setButtons(); } - + public void closeDialog() { if (mode == STARTED) { stopProcess(); } dispose(); } - + public void stopProcess() { - - mode = STOPPED; + + mode = STOPPED; setButtons(); } - + public void startProcess() { t = new Thread(this); mode = STARTED; @@ -480,84 +514,104 @@ public class JFrameMinimize extends javax.swing.JFrame implements ActionListener public void computeListOfActions() { - jta.append("Computing list of Actions\n"); - jta.append("\t1. Cloning graph\n"); - if (rg.graph == null) { - if (rg.data == null) { - jta.append("ERROR: invalid graph\n"); - return; - } - - rg.graph = new AUTGraph(); - jta.append("\t\t Buillding graph in memory\n"); - rg.graph.buildGraph(rg.data); - jta.append("\t\t Finishing graph in memory\n"); - rg.graph.computeStates(); - } - newRG = new RG("minimized" + rg.name); - newRG.data = rg.data; - newRG.graph = rg.graph.cloneMe(); - jta.append("\t2. Making list of actions\n"); - HashSet<String> hs = newRG.graph.getAllActions(); - jta.append("\t3. Sorting actions, and setting graphical lists\n"); - - sortedListProjected = new ArrayList<String>(hs); - sortedListIgnored = new ArrayList<String>(); - updateListsFromModels(); - - jta.append("All done\n"); - - jta.append("\nSelect actions and then, click on 'start' to start minimization\n"); - listOfActionsComputed = true; - mode = NOT_STARTED; - setButtons(); + jta.append("Computing list of Actions\n"); + jta.append("\t1. Cloning graph\n"); + if (rg.graph == null) { + if (rg.data == null) { + jta.append("ERROR: invalid graph\n"); + return; + } + + rg.graph = new AUTGraph(); + jta.append("\t\t Buillding graph in memory\n"); + rg.graph.buildGraph(rg.data); + jta.append("\t\t Finishing graph in memory\n"); + rg.graph.computeStates(); + } + newRG = new RG("minimized" + rg.name); + newRG.data = rg.data; + newRG.graph = rg.graph.cloneMe(); + jta.append("\t2. Making list of actions\n"); + HashSet<String> hs = newRG.graph.getAllActions(); + jta.append("\t3. Sorting actions, and setting graphical lists\n"); + + sortedListProjected = new ArrayList<String>(hs); + sortedListIgnored = new ArrayList<String>(); + updateListsFromModels(); + + jta.append("All done\n"); + + jta.append("\nSelect actions and then, click on 'start' to start minimization\n"); + listOfActionsComputed = true; + mode = NOT_STARTED; + setButtons(); } - + public void run() { - if (!listOfActionsComputed) { - computeListOfActions(); - return; - } - - jta.append("\nMinimizing graph...\n"); - String[] strarray = new String[sortedListIgnored.size()]; - sortedListIgnored.toArray(strarray ); - if (removeInternalActions.isSelected()) { - int toBeRemoved = 0; - for(String s: sortedListProjected) { - if (s.startsWith("i(")) { - toBeRemoved ++; - } - } - if (toBeRemoved > 0) { - String[] allstr = new String[strarray.length + toBeRemoved]; - for(int i=0; i<strarray.length; i++) { - allstr[i] = strarray[i]; - } - int index = strarray.length; - for(String s: sortedListProjected) { - if (s.startsWith("i(")) { - allstr[index] = s; - index++; - } - - } - strarray = allstr; - - } - } - newRG.graph.minimize(strarray, tauOnly.isSelected()); - newRG.nbOfStates = newRG.graph.getNbOfStates(); - newRG.nbOfTransitions = newRG.graph.getTransitions().size(); - mgui.addRG(newRG); - - jta.append("\nGraph minimized: " + newRG.nbOfStates + " states, " + newRG.nbOfTransitions + " transitions\n"); - - + if (!listOfActionsComputed) { + computeListOfActions(); + return; + } + + jta.append("\nMinimizing graph...\n"); + String[] strarray = new String[sortedListIgnored.size()]; + sortedListIgnored.toArray(strarray); + if (removeInternalActions.isSelected()) { + int toBeRemoved = 0; + for (String s : sortedListProjected) { + if (s.startsWith("i(")) { + toBeRemoved++; + } + } + if (toBeRemoved > 0) { + String[] allstr = new String[strarray.length + toBeRemoved]; + for (int i = 0; i < strarray.length; i++) { + allstr[i] = strarray[i]; + } + int index = strarray.length; + for (String s : sortedListProjected) { + if (s.startsWith("i(")) { + allstr[index] = s; + index++; + } + + } + strarray = allstr; + + } + } + newRG.graph.minimize(strarray, tauOnly.isSelected()); + newRG.nbOfStates = newRG.graph.getNbOfStates(); + newRG.nbOfTransitions = newRG.graph.getTransitions().size(); + mgui.addRG(newRG); + + jta.append("\nGraph minimized: " + newRG.nbOfStates + " states, " + newRG.nbOfTransitions + " transitions\n"); + + if (saveGraphAUT.isSelected()) { + DateFormat dateFormat = new SimpleDateFormat("_yyyyMMdd_HHmmss"); + Date date = new Date(); + String dateAndTime = dateFormat.format(date); + String graphAUT = newRG.graph.toAUTStringFormat(); + String autfile; + + if (graphPath.getText().indexOf("$") != -1) { + autfile = Conversion.replaceAllChar(graphPath.getText(), '$', dateAndTime); + } else { + autfile = graphPath.getText(); + } + + try { + FileUtils.saveFile(autfile, graphAUT); + } catch (FileException e) { + jta.append("Graph could not be saved in " + autfile + "\n"); + } + jta.append("Graph saved in " + autfile + "\n"); + } + mode = STOPPED; setButtons(); } - + } diff --git a/src/main/java/ui/window/JFrameRefusalGraph.java b/src/main/java/ui/window/JFrameRefusalGraph.java index b09e5c0216abfaba978f4b0d273c89445d542e96..2d962b614926b557d178c3d12de1e99a4ebd1f56 100755 --- a/src/main/java/ui/window/JFrameRefusalGraph.java +++ b/src/main/java/ui/window/JFrameRefusalGraph.java @@ -37,10 +37,11 @@ */ - - package ui.window; +import myutil.Conversion; +import myutil.FileException; +import myutil.FileUtils; import myutil.ScrolledJTextArea; import ui.util.IconManager; import ui.MainGUI; @@ -53,8 +54,12 @@ import javax.swing.event.ListSelectionListener; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.io.File; +import java.text.DateFormat; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Collections; +import java.util.Date; import java.util.HashSet; @@ -62,126 +67,143 @@ import java.util.HashSet; * Class JFrameRefusalGraph * Frame for handling the construction of the refusal graph * Creation: 18/08/2017 - * @version 1.0 18/08/2017 + * * @author Ludovic APVRILLE + * @version 1.0 18/08/2017 */ -public class JFrameRefusalGraph extends javax.swing.JFrame implements ActionListener, Runnable { +public class JFrameRefusalGraph extends javax.swing.JFrame implements ActionListener, Runnable { /*private static boolean isAldebaranSelected = false; private static boolean isOminSelected = false; private static boolean isStrongSelected = true;*/ - + + protected static boolean graphSelected = true; + private MainGUI mgui; private RG rg; private RG newRG; private RG newRGTS; - + protected Thread t; private int mode; - + protected final static int NOT_STARTED = 1; protected final static int STARTED = 2; protected final static int STOPPED = 3; - - //subpanels + + //subpanels & components private JPanel panel2; - + private JCheckBox saveGraphAUT; + private JTextField graphPath; + private String graphDir; + // Main Panel private ScrolledJTextArea jta; private JButton start, stop, close; - - /** Creates new form */ - public JFrameRefusalGraph(Frame _f, MainGUI _mgui, String _title, RG _rg) { + + /** + * Creates new form + */ + public JFrameRefusalGraph(Frame _f, MainGUI _mgui, String _title, RG _rg, String _graphDir) { super(_title); - + mgui = _mgui; - rg = _rg; - + rg = _rg; + + if (graphDir == null) { + graphDir = _graphDir + File.separator + "testsequences$.aut"; + } + initComponents(); myInitComponents(); pack(); - + //getGlassPane().addMouseListener( new MouseAdapter() {}); getGlassPane().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); } - - + + private void myInitComponents() { mode = NOT_STARTED; - } - + } + private void initComponents() { Container c = getContentPane(); - setFont(new Font("Helvetica", Font.PLAIN, 14)); + setFont(new Font("Helvetica", Font.PLAIN, 14)); c.setLayout(new BorderLayout()); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); - - - + + JPanel compPanel = new JPanel(new BorderLayout()); + saveGraphAUT = new JCheckBox("Save the generated sequences in AUT format", graphSelected); + compPanel.add(saveGraphAUT, BorderLayout.NORTH); + //saveGraphAUT.addSelectionListener(this); + graphPath = new JTextField(graphDir); + compPanel.add(graphPath, BorderLayout.SOUTH); + c.add(compPanel, BorderLayout.NORTH); + + // textarea panel jta = new ScrolledJTextArea(); jta.setEditable(false); jta.setMargin(new Insets(10, 10, 10, 10)); jta.setTabSize(3); - jta.append("Select actions and then, click on 'start' to generate test sequences\n"); + jta.append("Click on 'start' to generate test sequences\n"); Font f = new Font("Courrier", Font.BOLD, 12); jta.setFont(f); JScrollPane jsp = new JScrollPane(jta, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); - + c.add(jsp, BorderLayout.CENTER); - - + + // Button panel; start = new JButton("Start", IconManager.imgic53); stop = new JButton("Stop", IconManager.imgic55); close = new JButton("Close", IconManager.imgic27); - + start.setPreferredSize(new Dimension(150, 30)); stop.setPreferredSize(new Dimension(150, 30)); close.setPreferredSize(new Dimension(150, 30)); - + start.addActionListener(this); stop.addActionListener(this); close.addActionListener(this); - + JPanel jp2 = new JPanel(); jp2.add(start); jp2.add(stop); jp2.add(close); - + c.add(jp2, BorderLayout.SOUTH); } - - public void actionPerformed(ActionEvent evt) { + + public void actionPerformed(ActionEvent evt) { String command = evt.getActionCommand(); - + // Compare the action command to the known actions. - if (command.equals("Start")) { + if (command.equals("Start")) { startProcess(); } else if (command.equals("Stop")) { stopProcess(); } else if (command.equals("Close")) { closeDialog(); - } + } } - - private void setButtons() { - switch(mode) { - case NOT_STARTED: - start.setEnabled(true); - stop.setEnabled(false); - close.setEnabled(true); - getGlassPane().setVisible(false); - break; - case STARTED: - start.setEnabled(false); + switch (mode) { + case NOT_STARTED: + start.setEnabled(true); + stop.setEnabled(false); + close.setEnabled(true); + getGlassPane().setVisible(false); + break; + case STARTED: + start.setEnabled(false); stop.setEnabled(true); close.setEnabled(false); - getGlassPane().setVisible(false); + getGlassPane().setVisible(false); break; case STOPPED: default: @@ -192,21 +214,21 @@ public class JFrameRefusalGraph extends javax.swing.JFrame implements ActionList break; } } - - + + public void closeDialog() { if (mode == STARTED) { stopProcess(); } + graphSelected = saveGraphAUT.isSelected(); dispose(); } - + public void stopProcess() { - - mode = STOPPED; + mode = STOPPED; setButtons(); } - + public void startProcess() { t = new Thread(this); mode = STARTED; @@ -215,32 +237,51 @@ public class JFrameRefusalGraph extends javax.swing.JFrame implements ActionList } - public void run() { - jta.append("\nBuilding refusal graph...\n"); - - newRG = rg.generateRefusalGraph(); - - if (newRG != null) { - newRG.nbOfStates = newRG.graph.getNbOfStates(); - newRG.nbOfTransitions = newRG.graph.getTransitions().size(); - mgui.addRG(newRG); - jta.append("\nRefusal Graph: " + newRG.nbOfStates + " states, " + newRG.nbOfTransitions + " transitions\n"); - jta.append("Generating test sequences\n"); - newRGTS = newRG.generateTestSequences(); - newRGTS.nbOfStates = newRGTS.graph.getNbOfStates(); - newRGTS.nbOfTransitions = newRGTS.graph.getTransitions().size(); - mgui.addRG(newRGTS); - jta.append("\nTest sequences: " + newRGTS.nbOfStates + " states, " + newRGTS.nbOfTransitions + " transitions\n"); - - } else { - jta.append("\nCould not build Refusal Graph\n"); - } - + jta.append("\nBuilding refusal graph...\n"); + + newRG = rg.generateRefusalGraph(); + + if (newRG != null) { + newRG.nbOfStates = newRG.graph.getNbOfStates(); + newRG.nbOfTransitions = newRG.graph.getTransitions().size(); + //mgui.addRG(newRG); + jta.append("\nRefusal Graph: " + newRG.nbOfStates + " states, " + newRG.nbOfTransitions + " transitions\n"); + jta.append("Generating test sequences\n"); + newRGTS = newRG.generateTestSequences(); + newRGTS.nbOfStates = newRGTS.graph.getNbOfStates(); + newRGTS.nbOfTransitions = newRGTS.graph.getTransitions().size(); + mgui.addRG(newRGTS); + jta.append("\nTest sequences: " + newRGTS.nbOfStates + " states, " + newRGTS.nbOfTransitions + " transitions\n"); + + if (saveGraphAUT.isSelected()) { + DateFormat dateFormat = new SimpleDateFormat("_yyyyMMdd_HHmmss"); + Date date = new Date(); + String dateAndTime = dateFormat.format(date); + String graphAUT = newRGTS.graph.toAUTStringFormat(); + String autfile; + + if (graphPath.getText().indexOf("$") != -1) { + autfile = Conversion.replaceAllChar(graphPath.getText(), '$', dateAndTime); + } else { + autfile = graphPath.getText(); + } + + try { + FileUtils.saveFile(autfile, graphAUT); + } catch (FileException e) { + jta.append("Graph could not be saved in " + autfile + "\n"); + } + jta.append("Graph saved in " + autfile + "\n"); + } + } else { + jta.append("\nCould not build Refusal Graph\n"); + } + mode = STOPPED; setButtons(); } - + }