diff --git a/build.txt b/build.txt index 7a4c15cc1399cb153029016a57f7abe876ce3571..21550ef8ad05d2a8ff17ce3be9fdd620041cbfce 100644 --- a/build.txt +++ b/build.txt @@ -1 +1 @@ -12161 \ No newline at end of file +12166 \ No newline at end of file diff --git a/modeling/modelsForTestingTTool/testdiplo.xml b/modeling/modelsForTestingTTool/testdiplo.xml index e3f709e02ed5b7f7eea4c95853089c50910e0d22..349589c927a46dcaba8299c4a75ab659ee41eee6 100644 --- a/modeling/modelsForTestingTTool/testdiplo.xml +++ b/modeling/modelsForTestingTTool/testdiplo.xml @@ -2,14 +2,14 @@ <TURTLEGMODELING version="0.99-beta1"> -<Modeling type="TML Component Design" nameTab="DIPLODOCUS_C_Design" > +<Modeling type="TML Component Design" nameTab="Design1" > <TMLComponentTaskDiagramPanel name="TML Component Task Diagram" minX="10" maxX="2500" minY="10" maxY="1500" channels="true" events="true" requests="true" zoom="1.0" > <CONNECTOR type="126" id="2" > <cdparam x="202" y="135" /> <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="202" y="135" id="89" /> -<P2 x="716" y="122" id="74" /> +<P1 x="202" y="135" id="95" /> +<P2 x="716" y="122" id="78" /> <Point x="494" y="61" /> <AutomaticDrawing data="true" /> </CONNECTOR><SUBCOMPONENT type="-1" id="1" > @@ -26,14 +26,14 @@ <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="1041" y="214" id="11" /> -<P2 x="292" y="180" id="95" /> +<P2 x="279" y="167" id="89" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="4" > <cdparam x="662" y="349" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="888" y="375" id="63" /> +<P1 x="875" y="362" id="59" /> <P2 x="1019" y="214" id="12" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -41,7 +41,7 @@ <cdparam x="665" y="154" /> <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="891" y="158" id="78" /> +<P1 x="878" y="145" id="74" /> <P2 x="1024" y="205" id="14" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -50,14 +50,14 @@ <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="433" y="460" id="28" /> -<P2 x="662" y="454" id="61" /> +<P2 x="675" y="441" id="61" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="7" > <cdparam x="236" y="311" /> <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="236" y="311" id="93" /> +<P1 x="236" y="285" id="91" /> <P2 x="411" y="460" id="27" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -66,7 +66,7 @@ <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="424" y="229" id="48" /> -<P2 x="662" y="408" id="59" /> +<P2 x="675" y="395" id="63" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="9" > @@ -74,14 +74,14 @@ <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="424" y="212" id="46" /> -<P2 x="665" y="215" id="76" /> +<P2 x="678" y="202" id="76" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="10" > <cdparam x="292" y="207" /> <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="292" y="231" id="91" /> +<P1 x="279" y="218" id="93" /> <P2 x="408" y="221" id="43" /> <AutomaticDrawing data="true" /> </CONNECTOR> @@ -174,14 +174,14 @@ </COMPONENT> <SUBCOMPONENT type="1203" id="60" > <father id="73" num="0" /> -<cdparam x="662" y="395" /> +<cdparam x="862" y="362" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> -<infoparam name="Primitive port" value="Event evt2" /> +<infoparam name="Primitive port" value="Event jevt2" /> <TGConnectingPoint num="0" id="59" /> <extraparam> -<Prop commName="evt2" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Prop commName="jevt2" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -208,14 +208,14 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="64" > <father id="73" num="2" /> -<cdparam x="862" y="362" /> +<cdparam x="662" y="395" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> -<infoparam name="Primitive port" value="Event jevt2" /> +<infoparam name="Primitive port" value="Event evt2" /> <TGConnectingPoint num="0" id="63" /> <extraparam> -<Prop commName="jevt2" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Prop commName="evt2" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -244,14 +244,14 @@ </COMPONENT> <SUBCOMPONENT type="1203" id="75" > <father id="88" num="0" /> -<cdparam x="703" y="122" /> +<cdparam x="865" y="145" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> -<infoparam name="Primitive port" value="Event comm" /> +<infoparam name="Primitive port" value="Event jevt1" /> <TGConnectingPoint num="0" id="74" /> <extraparam> -<Prop commName="comm" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Prop commName="jevt1" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -278,15 +278,15 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="79" > <father id="88" num="2" /> -<cdparam x="865" y="145" /> +<cdparam x="703" y="122" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> -<infoparam name="Primitive port" value="Event jevt1" /> +<infoparam name="Primitive port" value="Event comm" /> <TGConnectingPoint num="0" id="78" /> <extraparam> -<Prop commName="jevt1" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> -<Type type="0" typeOther="" /> +<Prop commName="comm" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Type type="1" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -314,15 +314,15 @@ </COMPONENT> <SUBCOMPONENT type="1203" id="90" > <father id="105" num="0" /> -<cdparam x="189" y="135" /> +<cdparam x="266" y="167" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> -<infoparam name="Primitive port" value="Event testEvt" /> +<infoparam name="Primitive port" value="Event jevt" /> <TGConnectingPoint num="0" id="89" /> <extraparam> -<Prop commName="testEvt" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> -<Type type="1" typeOther="" /> +<Prop commName="jevt" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -331,14 +331,14 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="92" > <father id="105" num="1" /> -<cdparam x="266" y="218" /> +<cdparam x="223" y="285" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> -<infoparam name="Primitive port" value="Event evsrc" /> +<infoparam name="Primitive port" value="Channel ch1" /> <TGConnectingPoint num="0" id="91" /> <extraparam> -<Prop commName="evsrc" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Prop commName="ch1" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -348,14 +348,14 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="94" > <father id="105" num="2" /> -<cdparam x="223" y="285" /> +<cdparam x="266" y="218" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> -<infoparam name="Primitive port" value="Channel ch1" /> +<infoparam name="Primitive port" value="Event evsrc" /> <TGConnectingPoint num="0" id="93" /> <extraparam> -<Prop commName="ch1" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Prop commName="evsrc" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -365,14 +365,14 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="96" > <father id="105" num="3" /> -<cdparam x="266" y="167" /> +<cdparam x="189" y="135" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> -<infoparam name="Primitive port" value="Event jevt" /> +<infoparam name="Primitive port" value="Event testEvt" /> <TGConnectingPoint num="0" id="95" /> <extraparam> -<Prop commName="jevt" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Prop commName="testEvt" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> <Type type="1" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -458,15 +458,15 @@ <TMLActivityDiagramPanel name="TMLComp_1" minX="10" maxX="2500" minY="10" maxY="1500" > <COMPONENT type="1010" id="121" > -<cdparam x="431" y="236" /> -<sizeparam width="51" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="426" y="236" /> +<sizeparam width="61" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> -<infoparam name="wait event" value="evt1() " /> +<infoparam name="wait event" value="comm() " /> <TGConnectingPoint num="0" id="119" /> <TGConnectingPoint num="1" id="120" /> <extraparam> -<Data eventName="evt1" nbOfParams="5" /> +<Data eventName="comm" nbOfParams="5" /> </extraparam> </COMPONENT> @@ -648,22 +648,38 @@ -<Modeling type="TML Component Design" nameTab="DIPLODOCUS_C_Design" > +<Modeling type="TML Component Design" nameTab="Design2" > <TMLComponentTaskDiagramPanel name="TML Component Task Diagram" minX="10" maxX="2500" minY="10" maxY="1500" channels="true" events="true" requests="true" zoom="1.0" > <CONNECTOR type="126" id="153" > +<cdparam x="496" y="223" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="496" y="240" id="161" /> +<P2 x="592" y="382" id="194" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="154" > +<cdparam x="496" y="223" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="Connector between ports" /> +<P1 x="496" y="223" id="159" /> +<P2 x="587" y="150" id="172" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="155" > <cdparam x="376" y="164" /> <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="376" y="164" id="165" /> -<P2 x="574" y="163" id="154" /> +<P1 x="363" y="151" id="183" /> +<P2 x="480" y="232" id="156" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<COMPONENT type="1202" id="164" > -<cdparam x="587" y="106" /> -<sizeparam width="200" height="150" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="1207" id="171" > +<cdparam x="480" y="221" /> +<sizeparam width="22" height="22" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> -<infoparam name="Primitive component" value="T1" /> +<infoparam name="Composite port" value="F" /> <TGConnectingPoint num="0" id="156" /> <TGConnectingPoint num="1" id="157" /> <TGConnectingPoint num="2" id="158" /> @@ -672,20 +688,44 @@ <TGConnectingPoint num="5" id="161" /> <TGConnectingPoint num="6" id="162" /> <TGConnectingPoint num="7" id="163" /> +<TGConnectingPoint num="8" id="164" /> +<TGConnectingPoint num="9" id="165" /> +<TGConnectingPoint num="10" id="166" /> +<TGConnectingPoint num="11" id="167" /> +<TGConnectingPoint num="12" id="168" /> +<TGConnectingPoint num="13" id="169" /> +<TGConnectingPoint num="14" id="170" /> +</COMPONENT> + +<COMPONENT type="1202" id="182" > +<cdparam x="587" y="106" /> +<sizeparam width="200" height="150" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Primitive component" value="T1" /> +<TGConnectingPoint num="0" id="174" /> +<TGConnectingPoint num="1" id="175" /> +<TGConnectingPoint num="2" id="176" /> +<TGConnectingPoint num="3" id="177" /> +<TGConnectingPoint num="4" id="178" /> +<TGConnectingPoint num="5" id="179" /> +<TGConnectingPoint num="6" id="180" /> +<TGConnectingPoint num="7" id="181" /> <extraparam> +<Attribute access="2" id="x" value="" type="0" typeOther="" /> </extraparam> </COMPONENT> -<SUBCOMPONENT type="1203" id="155" > -<father id="164" num="0" /> +<SUBCOMPONENT type="1203" id="173" > +<father id="182" num="0" /> <cdparam x="574" y="150" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> <infoparam name="Primitive port" value="Event comm" /> -<TGConnectingPoint num="0" id="154" /> +<TGConnectingPoint num="0" id="172" /> <extraparam> <Prop commName="comm" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> -<Type type="2" typeOther="" /> +<Type type="1" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -693,34 +733,71 @@ </extraparam> </SUBCOMPONENT> -<COMPONENT type="1202" id="175" > +<COMPONENT type="1202" id="193" > <cdparam x="163" y="108" /> <sizeparam width="200" height="150" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> <infoparam name="Primitive component" value="T0" /> -<TGConnectingPoint num="0" id="167" /> -<TGConnectingPoint num="1" id="168" /> -<TGConnectingPoint num="2" id="169" /> -<TGConnectingPoint num="3" id="170" /> -<TGConnectingPoint num="4" id="171" /> -<TGConnectingPoint num="5" id="172" /> -<TGConnectingPoint num="6" id="173" /> -<TGConnectingPoint num="7" id="174" /> +<TGConnectingPoint num="0" id="185" /> +<TGConnectingPoint num="1" id="186" /> +<TGConnectingPoint num="2" id="187" /> +<TGConnectingPoint num="3" id="188" /> +<TGConnectingPoint num="4" id="189" /> +<TGConnectingPoint num="5" id="190" /> +<TGConnectingPoint num="6" id="191" /> +<TGConnectingPoint num="7" id="192" /> <extraparam> +<Attribute access="2" id="x" value="4" type="0" typeOther="" /> </extraparam> </COMPONENT> -<SUBCOMPONENT type="1203" id="166" > -<father id="175" num="0" /> +<SUBCOMPONENT type="1203" id="184" > +<father id="193" num="0" /> <cdparam x="350" y="151" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> <infoparam name="Primitive port" value="Event comm" /> -<TGConnectingPoint num="0" id="165" /> +<TGConnectingPoint num="0" id="183" /> <extraparam> <Prop commName="comm" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> -<Type type="2" typeOther="" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1202" id="204" > +<cdparam x="592" y="338" /> +<sizeparam width="200" height="150" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Primitive component" value="T2" /> +<TGConnectingPoint num="0" id="196" /> +<TGConnectingPoint num="1" id="197" /> +<TGConnectingPoint num="2" id="198" /> +<TGConnectingPoint num="3" id="199" /> +<TGConnectingPoint num="4" id="200" /> +<TGConnectingPoint num="5" id="201" /> +<TGConnectingPoint num="6" id="202" /> +<TGConnectingPoint num="7" id="203" /> +<extraparam> +<Attribute access="2" id="x" value="" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1203" id="195" > +<father id="204" num="0" /> +<cdparam x="579" y="382" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> +<infoparam name="Primitive port" value="Event comm" /> +<TGConnectingPoint num="0" id="194" /> +<extraparam> +<Prop commName="comm" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Type type="1" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -732,28 +809,797 @@ </TMLComponentTaskDiagramPanel> <TMLActivityDiagramPanel name="T1" minX="10" maxX="2500" minY="10" maxY="1500" > -<COMPONENT type="1000" id="177" > +<COMPONENT type="1001" id="206" > +<cdparam x="421" y="167" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="205" /> +</COMPONENT> + +<COMPONENT type="1010" id="209" > +<cdparam x="384" y="110" /> +<sizeparam width="67" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="wait event" value="comm(x) " /> +<TGConnectingPoint num="0" id="207" /> +<TGConnectingPoint num="1" id="208" /> +<extraparam> +<Data eventName="comm" nbOfParams="5" /> +<Param index="0" value="x" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="211" > <cdparam x="400" y="50" /> <sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> <infoparam name="start state" value="null" /> -<TGConnectingPoint num="0" id="176" /> +<TGConnectingPoint num="0" id="210" /> </COMPONENT> +<CONNECTOR type="115" id="212" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="70" id="210" /> +<P2 x="417" y="105" id="207" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="213" > +<cdparam x="417" y="135" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="417" y="135" id="208" /> +<P2 x="431" y="162" id="205" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> </TMLActivityDiagramPanel> <TMLActivityDiagramPanel name="T0" minX="10" maxX="2500" minY="10" maxY="1500" > -<COMPONENT type="1000" id="179" > +<COMPONENT type="1001" id="215" > +<cdparam x="412" y="222" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="214" /> +</COMPONENT> + +<COMPONENT type="1008" id="218" > +<cdparam x="378" y="125" /> +<sizeparam width="63" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="send event" value="comm(x)" /> +<TGConnectingPoint num="0" id="216" /> +<TGConnectingPoint num="1" id="217" /> +<extraparam> +<Data eventName="comm" nbOfParams="5" /> +<Param index="0" value="x" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="220" > <cdparam x="400" y="50" /> <sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> <infoparam name="start state" value="null" /> -<TGConnectingPoint num="0" id="178" /> +<TGConnectingPoint num="0" id="219" /> +</COMPONENT> + +<CONNECTOR type="115" id="221" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="70" id="219" /> +<P2 x="409" y="120" id="216" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="222" > +<cdparam x="409" y="150" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="409" y="150" id="217" /> +<P2 x="422" y="217" id="214" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="T2" minX="10" maxX="2500" minY="10" maxY="1500" > +<COMPONENT type="1001" id="224" > +<cdparam x="366" y="179" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="223" /> +</COMPONENT> + +<COMPONENT type="1010" id="227" > +<cdparam x="329" y="122" /> +<sizeparam width="67" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="wait event" value="comm(x) " /> +<TGConnectingPoint num="0" id="225" /> +<TGConnectingPoint num="1" id="226" /> +<extraparam> +<Data eventName="comm" nbOfParams="5" /> +<Param index="0" value="x" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1000" id="229" > +<cdparam x="345" y="62" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="228" /> +</COMPONENT> + +<CONNECTOR type="115" id="230" > +<cdparam x="352" y="82" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="352" y="82" id="228" /> +<P2 x="362" y="117" id="225" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="231" > +<cdparam x="362" y="147" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="362" y="147" id="226" /> +<P2 x="376" y="174" id="223" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +</Modeling> + + + + +<Modeling type="TML Component Design" nameTab="Design4" > +<TMLComponentTaskDiagramPanel name="TML Component Task Diagram" minX="10" maxX="2500" minY="10" maxY="1500" channels="true" events="true" requests="true" zoom="1.0" > +<CONNECTOR type="126" id="232" > +<cdparam x="579" 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="666" y="385" id="273" /> +<P2 x="487" y="255" id="240" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="233" > +<cdparam x="574" 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="669" y="150" id="251" /> +<P2 x="487" y="238" id="238" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="234" > +<cdparam x="480" y="269" /> +<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="504" y="247" id="235" /> +<P2 x="363" y="151" id="262" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<COMPONENT type="1208" id="250" > +<cdparam x="482" y="236" /> +<sizeparam width="22" height="22" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Composite port" value="J" /> +<TGConnectingPoint num="0" id="235" /> +<TGConnectingPoint num="1" id="236" /> +<TGConnectingPoint num="2" id="237" /> +<TGConnectingPoint num="3" id="238" /> +<TGConnectingPoint num="4" id="239" /> +<TGConnectingPoint num="5" id="240" /> +<TGConnectingPoint num="6" id="241" /> +<TGConnectingPoint num="7" id="242" /> +<TGConnectingPoint num="8" id="243" /> +<TGConnectingPoint num="9" id="244" /> +<TGConnectingPoint num="10" id="245" /> +<TGConnectingPoint num="11" id="246" /> +<TGConnectingPoint num="12" id="247" /> +<TGConnectingPoint num="13" id="248" /> +<TGConnectingPoint num="14" id="249" /> +</COMPONENT> + +<COMPONENT type="1202" id="261" > +<cdparam x="669" y="106" /> +<sizeparam width="200" height="150" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Primitive component" value="T1" /> +<TGConnectingPoint num="0" id="253" /> +<TGConnectingPoint num="1" id="254" /> +<TGConnectingPoint num="2" id="255" /> +<TGConnectingPoint num="3" id="256" /> +<TGConnectingPoint num="4" id="257" /> +<TGConnectingPoint num="5" id="258" /> +<TGConnectingPoint num="6" id="259" /> +<TGConnectingPoint num="7" id="260" /> +<extraparam> +<Attribute access="2" id="x" value="1" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1203" id="252" > +<father id="261" num="0" /> +<cdparam x="656" y="150" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> +<infoparam name="Primitive port" value="Channel comm1" /> +<TGConnectingPoint num="0" id="251" /> +<extraparam> +<Prop commName="comm1" commType="0" origin="true" finite="true" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1202" id="272" > +<cdparam x="163" y="108" /> +<sizeparam width="200" height="150" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Primitive component" value="T0" /> +<TGConnectingPoint num="0" id="264" /> +<TGConnectingPoint num="1" id="265" /> +<TGConnectingPoint num="2" id="266" /> +<TGConnectingPoint num="3" id="267" /> +<TGConnectingPoint num="4" id="268" /> +<TGConnectingPoint num="5" id="269" /> +<TGConnectingPoint num="6" id="270" /> +<TGConnectingPoint num="7" id="271" /> +<extraparam> +<Attribute access="2" id="x" value="4" type="0" typeOther="" /> +</extraparam> </COMPONENT> +<SUBCOMPONENT type="1203" id="263" > +<father id="272" num="0" /> +<cdparam x="350" y="151" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> +<infoparam name="Primitive port" value="Channel comm0" /> +<TGConnectingPoint num="0" id="262" /> +<extraparam> +<Prop commName="comm0" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> +<COMPONENT type="1202" id="283" > +<cdparam x="666" y="341" /> +<sizeparam width="200" height="150" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Primitive component" value="T2" /> +<TGConnectingPoint num="0" id="275" /> +<TGConnectingPoint num="1" id="276" /> +<TGConnectingPoint num="2" id="277" /> +<TGConnectingPoint num="3" id="278" /> +<TGConnectingPoint num="4" id="279" /> +<TGConnectingPoint num="5" id="280" /> +<TGConnectingPoint num="6" id="281" /> +<TGConnectingPoint num="7" id="282" /> +<extraparam> +<Attribute access="2" id="x" value="2" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1203" id="274" > +<father id="283" num="0" /> +<cdparam x="653" y="385" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> +<infoparam name="Primitive port" value="Channel comm2" /> +<TGConnectingPoint num="0" id="273" /> +<extraparam> +<Prop commName="comm2" commType="0" origin="true" finite="true" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> + + +</TMLComponentTaskDiagramPanel> + +<TMLActivityDiagramPanel name="T1" minX="10" maxX="2500" minY="10" maxY="1500" > +<COMPONENT type="1006" id="286" > +<cdparam x="176" y="97" /> +<sizeparam width="73" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="write channel" value="comm1(1)" /> +<TGConnectingPoint num="0" id="284" /> +<TGConnectingPoint num="1" id="285" /> +<extraparam> +<Data channelName="comm1" nbOfSamples="1" secPattern="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="288" > +<cdparam x="208" y="176" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="287" /> +</COMPONENT> + +<COMPONENT type="1000" id="290" > +<cdparam x="181" y="39" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="289" /> +</COMPONENT> + +<CONNECTOR type="115" id="291" > +<cdparam x="188" y="59" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="188" y="59" id="289" /> +<P2 x="212" y="92" id="284" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="292" > +<cdparam x="212" y="122" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="212" y="122" id="285" /> +<P2 x="218" y="171" id="287" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="T0" minX="10" maxX="2500" minY="10" maxY="1500" > +<COMPONENT type="1009" id="295" > +<cdparam x="371" y="123" /> +<sizeparam width="77" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="read channel" value="comm0(1) " /> +<TGConnectingPoint num="0" id="293" /> +<TGConnectingPoint num="1" id="294" /> +<extraparam> +<Data channelName="comm0" nbOfSamples="1" secPattern="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="297" > +<cdparam x="412" y="222" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="296" /> +</COMPONENT> + +<COMPONENT type="1000" id="299" > +<cdparam x="400" y="50" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="298" /> +</COMPONENT> + +<CONNECTOR type="115" id="300" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="70" id="298" /> +<P2 x="409" y="118" id="293" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="301" > +<cdparam x="409" y="148" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="409" y="148" id="294" /> +<P2 x="422" y="217" id="296" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="T2" minX="10" maxX="2500" minY="10" maxY="1500" > +<COMPONENT type="1006" id="304" > +<cdparam x="468" y="103" /> +<sizeparam width="73" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="write channel" value="comm2(1)" /> +<TGConnectingPoint num="0" id="302" /> +<TGConnectingPoint num="1" id="303" /> +<extraparam> +<Data channelName="comm2" nbOfSamples="1" secPattern="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="306" > +<cdparam x="500" y="183" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="305" /> +</COMPONENT> + +<COMPONENT type="1000" id="308" > +<cdparam x="473" y="46" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="307" /> +</COMPONENT> + +<CONNECTOR type="115" id="309" > +<cdparam x="480" y="66" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="480" y="66" id="307" /> +<P2 x="504" y="98" id="302" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="310" > +<cdparam x="504" y="128" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="504" y="128" id="303" /> +<P2 x="510" y="178" id="305" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +</Modeling> + + + + +<Modeling type="TML Component Design" nameTab="Design3" > +<TMLComponentTaskDiagramPanel name="TML Component Task Diagram" minX="10" maxX="2500" minY="10" maxY="1500" channels="true" events="true" requests="true" zoom="1.0" > +<CONNECTOR type="126" id="311" > +<cdparam x="579" 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="653" y="398" id="352" /> +<P2 x="487" y="255" id="319" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="312" > +<cdparam x="574" 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="656" y="163" id="330" /> +<P2 x="487" y="238" id="317" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="126" id="313" > +<cdparam x="480" y="269" /> +<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="504" y="247" id="314" /> +<P2 x="376" y="164" id="341" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<COMPONENT type="1208" id="329" > +<cdparam x="482" y="236" /> +<sizeparam width="22" height="22" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Composite port" value="J" /> +<TGConnectingPoint num="0" id="314" /> +<TGConnectingPoint num="1" id="315" /> +<TGConnectingPoint num="2" id="316" /> +<TGConnectingPoint num="3" id="317" /> +<TGConnectingPoint num="4" id="318" /> +<TGConnectingPoint num="5" id="319" /> +<TGConnectingPoint num="6" id="320" /> +<TGConnectingPoint num="7" id="321" /> +<TGConnectingPoint num="8" id="322" /> +<TGConnectingPoint num="9" id="323" /> +<TGConnectingPoint num="10" id="324" /> +<TGConnectingPoint num="11" id="325" /> +<TGConnectingPoint num="12" id="326" /> +<TGConnectingPoint num="13" id="327" /> +<TGConnectingPoint num="14" id="328" /> +</COMPONENT> + +<COMPONENT type="1202" id="340" > +<cdparam x="669" y="106" /> +<sizeparam width="200" height="150" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Primitive component" value="T1" /> +<TGConnectingPoint num="0" id="332" /> +<TGConnectingPoint num="1" id="333" /> +<TGConnectingPoint num="2" id="334" /> +<TGConnectingPoint num="3" id="335" /> +<TGConnectingPoint num="4" id="336" /> +<TGConnectingPoint num="5" id="337" /> +<TGConnectingPoint num="6" id="338" /> +<TGConnectingPoint num="7" id="339" /> +<extraparam> +<Attribute access="2" id="x" value="1" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1203" id="331" > +<father id="340" num="0" /> +<cdparam x="656" y="150" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> +<infoparam name="Primitive port" value="Event comm1" /> +<TGConnectingPoint num="0" id="330" /> +<extraparam> +<Prop commName="comm1" commType="1" origin="true" finite="true" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1202" id="351" > +<cdparam x="163" y="108" /> +<sizeparam width="200" height="150" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Primitive component" value="T0" /> +<TGConnectingPoint num="0" id="343" /> +<TGConnectingPoint num="1" id="344" /> +<TGConnectingPoint num="2" id="345" /> +<TGConnectingPoint num="3" id="346" /> +<TGConnectingPoint num="4" id="347" /> +<TGConnectingPoint num="5" id="348" /> +<TGConnectingPoint num="6" id="349" /> +<TGConnectingPoint num="7" id="350" /> +<extraparam> +<Attribute access="2" id="x" value="4" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1203" id="342" > +<father id="351" num="0" /> +<cdparam x="350" y="151" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> +<infoparam name="Primitive port" value="Event comm0" /> +<TGConnectingPoint num="0" id="341" /> +<extraparam> +<Prop commName="comm0" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> + +<COMPONENT type="1202" id="362" > +<cdparam x="666" y="341" /> +<sizeparam width="200" height="150" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="Primitive component" value="T2" /> +<TGConnectingPoint num="0" id="354" /> +<TGConnectingPoint num="1" id="355" /> +<TGConnectingPoint num="2" id="356" /> +<TGConnectingPoint num="3" id="357" /> +<TGConnectingPoint num="4" id="358" /> +<TGConnectingPoint num="5" id="359" /> +<TGConnectingPoint num="6" id="360" /> +<TGConnectingPoint num="7" id="361" /> +<extraparam> +<Attribute access="2" id="x" value="2" type="0" typeOther="" /> +</extraparam> +</COMPONENT> +<SUBCOMPONENT type="1203" id="353" > +<father id="362" num="0" /> +<cdparam x="653" y="385" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="137" /> +<infoparam name="Primitive port" value="Event comm2" /> +<TGConnectingPoint num="0" id="352" /> +<extraparam> +<Prop commName="comm2" commType="1" origin="true" finite="true" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" /> +<Type type="1" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +</extraparam> +</SUBCOMPONENT> + + +</TMLComponentTaskDiagramPanel> + +<TMLActivityDiagramPanel name="T1" minX="10" maxX="2500" minY="10" maxY="1500" > +<COMPONENT type="1008" id="365" > +<cdparam x="176" y="106" /> +<sizeparam width="71" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="send event" value="comm1(x)" /> +<TGConnectingPoint num="0" id="363" /> +<TGConnectingPoint num="1" id="364" /> +<extraparam> +<Data eventName="comm1" nbOfParams="5" /> +<Param index="0" value="x" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="367" > +<cdparam x="208" y="176" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="366" /> +</COMPONENT> + +<COMPONENT type="1000" id="369" > +<cdparam x="181" y="39" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="368" /> +</COMPONENT> + +<CONNECTOR type="115" id="370" > +<cdparam x="188" y="59" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="188" y="59" id="368" /> +<P2 x="211" y="101" id="363" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="371" > +<cdparam x="211" y="131" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="211" y="131" id="364" /> +<P2 x="218" y="171" id="366" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="T0" minX="10" maxX="2500" minY="10" maxY="1500" > +<COMPONENT type="1010" id="374" > +<cdparam x="384" y="131" /> +<sizeparam width="75" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="wait event" value="comm0(x) " /> +<TGConnectingPoint num="0" id="372" /> +<TGConnectingPoint num="1" id="373" /> +<extraparam> +<Data eventName="comm0" nbOfParams="5" /> +<Param index="0" value="x" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="376" > +<cdparam x="412" y="222" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="375" /> +</COMPONENT> + +<COMPONENT type="1000" id="378" > +<cdparam x="400" y="50" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="377" /> +</COMPONENT> + +<CONNECTOR type="115" id="379" > +<cdparam x="407" y="70" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="407" y="70" id="377" /> +<P2 x="421" y="126" id="372" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="380" > +<cdparam x="421" y="156" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="421" y="156" id="373" /> +<P2 x="422" y="217" id="375" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> + +</TMLActivityDiagramPanel> + +<TMLActivityDiagramPanel name="T2" minX="10" maxX="2500" minY="10" maxY="1500" > +<COMPONENT type="1008" id="383" > +<cdparam x="468" y="113" /> +<sizeparam width="71" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="send event" value="comm2(x)" /> +<TGConnectingPoint num="0" id="381" /> +<TGConnectingPoint num="1" id="382" /> +<extraparam> +<Data eventName="comm2" nbOfParams="5" /> +<Param index="0" value="x" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="1001" id="385" > +<cdparam x="500" y="183" /> +<sizeparam width="20" height="20" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="stop state" value="null" /> +<TGConnectingPoint num="0" id="384" /> +</COMPONENT> + +<COMPONENT type="1000" id="387" > +<cdparam x="473" y="46" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="2500" minY="10" maxY="1500" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="386" /> +</COMPONENT> + +<CONNECTOR type="115" id="388" > +<cdparam x="480" y="66" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="480" y="66" id="386" /> +<P2 x="503" y="108" id="381" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="115" id="389" > +<cdparam x="503" y="138" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="503" y="138" id="382" /> +<P2 x="510" y="178" id="384" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> </TMLActivityDiagramPanel> diff --git a/readme b/readme index f5f1282145c9e938079cef8919af52358dba4f5f..4baf428b28a225e6c564d6d703c008fd33e898ab 100644 --- a/readme +++ b/readme @@ -1,7 +1,7 @@ For users of TTool: (e.g., for users having a read-only access to the git) ------------------- -You can clone the repository, and compile TTool as explained in the devleopper section below. +You can clone the repository, and compile TTool as explained in the developer section below. For more information: http://ttool.telecom-paristech.fr Beware, if you want to use other options of TTool, please, start it with the needed command line, diff --git a/src/tmltranslator/TMLAttribute.java b/src/tmltranslator/TMLAttribute.java index 7c214b477154701c05041b965a87f1a0b6a08162..fa860c2008230e617d484732d156dd25229204f1 100755 --- a/src/tmltranslator/TMLAttribute.java +++ b/src/tmltranslator/TMLAttribute.java @@ -68,14 +68,14 @@ public class TMLAttribute extends DIPLOElement { this.name = _name; this.instanceName = _instanceName; this.type = _type; - this.initialValue = "NULL"; + this.initialValue = ""; } public TMLAttribute( String _name, TMLType _type ) { this.name = _name; this.instanceName = "NO_NAME"; this.type = _type; - this.initialValue = "NULL"; + this.initialValue = ""; } public TMLAttribute( String _name, TMLType _type, String _initialValue ) { @@ -89,7 +89,7 @@ public class TMLAttribute extends DIPLOElement { this.name = _name; this.instanceName = "NO_NAME"; this.type = new TMLType( TMLType.OTHER ); - this.initialValue = "NULL"; + this.initialValue = ""; } public String getInstanceName() { diff --git a/src/tmltranslator/TMLModeling.java b/src/tmltranslator/TMLModeling.java index 459e0a61eb652c7e226fbcf875a0182f194d3770..1be87364ef8894b49c708279302d8c48acaa0bb3 100755 --- a/src/tmltranslator/TMLModeling.java +++ b/src/tmltranslator/TMLModeling.java @@ -2127,10 +2127,10 @@ public class TMLModeling { TMLStopState stop2 = new TMLStopState("stop2OfFork", null); forkActivity.addElement(stop2); TMLForLoop junction = new TMLForLoop("junctionOfFork", null); - junction.setInit("i=0"); - junction.setCondition("i<1"); - junction.setIncrement("i=i"); - TMLAttribute attr = new TMLAttribute("i", "i", new TMLType(TMLType.NATURAL), "0"); + junction.setInit("fork__i=0"); + junction.setCondition("fork__i<1"); + junction.setIncrement("fork__i=fork__i"); + TMLAttribute attr = new TMLAttribute("fork__i", "fork__i", new TMLType(TMLType.NATURAL), "0"); forkTask.addAttribute(attr); forkActivity.addElement(junction); TMLWaitEvent read = new TMLWaitEvent("WaitOfFork", null); @@ -2181,7 +2181,9 @@ public class TMLModeling { // Create new basic events and tasks ArrayList<TMLEvent> newEvents = new ArrayList<TMLEvent>(); for(TMLEvent evt: events) { + TraceManager.addDev("Event:" + evt); if (evt.isAJoinEvent()) { + TraceManager.addDev("Removing join of this event"); removeJoinEvent(evt, newEvents); } } @@ -2281,6 +2283,7 @@ public class TMLModeling { for(j=0; j<_evt.getNbOfParams(); j++) { evts[i].addParam(_evt.getType(j)); } + _newEvents.add(evts[i]); } // Modify the activity diagram of tasks making a write in origin channels diff --git a/src/tmltranslator/TMLType.java b/src/tmltranslator/TMLType.java index 1c469c3a66bc530669665c939f52bc692bd524d4..05ebc000b1a864110944b0f30e10628816d56c03 100755 --- a/src/tmltranslator/TMLType.java +++ b/src/tmltranslator/TMLType.java @@ -50,7 +50,7 @@ package tmltranslator; import myutil.*; public class TMLType { - + // type public final static int NATURAL = 1; public final static int BOOLEAN = 2; @@ -60,125 +60,125 @@ public class TMLType { public final static String NATURAL_STRING = "int"; public final static String BOOLEAN_STRING = "bool"; public final static String ADDRESS_STRING = "addr"; - + private int type; private String typeOther; - + public TMLType(int _type) { - //TraceManager.addDev("New TYPE:" + _type); + //TraceManager.addDev("New TYPE:" + _type); type = _type; typeOther = ""; } - + public TMLType(String _typeOther) { type = OTHER; typeOther = _typeOther; } - + public TMLType(int _type, String _typeOther) { type = _type; typeOther = _typeOther; - + + } + + + public int getType() { + return type; } - - - public int getType() { - return type; - } public String getTypeOther() { return typeOther;} - + public void setType(int _type) { type = _type;}; - + public static int getType(String s) { - s = s.toUpperCase(); + s = s.toUpperCase(); if (s.equals("NATURAL")) { - return NATURAL; + return NATURAL; } else if (s.equals("BOOLEAN")) { - return BOOLEAN; + return BOOLEAN; } else if (s.equals("ADDRESS")) { return ADDRESS; } else if (s.equals("NAT")) { - return NATURAL; + return NATURAL; } else if (s.equals("INT")) { - return NATURAL; + return NATURAL; } else if (s.equals("BOOL")) { - return BOOLEAN; + return BOOLEAN; } else if (!s.equals("")) { return OTHER; } - + return -1; } - + public static String getLOTOSStringType(int type) { switch(type) { - case NATURAL: - return "nat"; - case BOOLEAN: - return "bool"; - case ADDRESS: - return "addr"; - case OTHER: - return "Other"; - default: - return "" + type; + case NATURAL: + return "nat"; + case BOOLEAN: + return "bool"; + case ADDRESS: + return "addr"; + case OTHER: + return "Other"; + default: + return "" + type; + } + } + + public static boolean isAValidType(String type) { + type = type.toUpperCase(); + + if (type.compareTo("NAT") == 0) { + return true; } + + if (type.compareTo("INT") == 0) { + return true; + } + + if (type.compareTo("BOOL") == 0) { + return true; + } + + return false; + } - - public static boolean isAValidType(String type) { - type = type.toUpperCase(); - - if (type.compareTo("NAT") == 0) { - return true; - } - - if (type.compareTo("INT") == 0) { - return true; - } - - if (type.compareTo("BOOL") == 0) { - return true; - } - - return false; - - } - - public static String getStringType(int type) { - switch(type) { - case NATURAL: - return "int"; - case BOOLEAN: - return "bool"; - case ADDRESS: - return "addr"; - case OTHER: - return "other"; - default: - return "" + type; + + public static String getStringType(int type) { + switch(type) { + case NATURAL: + return "int"; + case BOOLEAN: + return "bool"; + case ADDRESS: + return "addr"; + case OTHER: + return "other"; + default: + return "" + type; } } - + public String toString() { return getStringType(type); - } - - public boolean equals( Object o ) { - if( !( o instanceof TMLType ) ) { - return false; - } - else { - TMLType tt = (TMLType)o; - return ( getType() == tt.getType() ); - } - } - - @Override public int hashCode() { - int result = 17; - result = 31 * result + type; - return result; - } - -} //End of class + } + + public boolean equals( Object o ) { + if( !( o instanceof TMLType ) ) { + return false; + } + else { + TMLType tt = (TMLType)o; + return ( getType() == tt.getType() ); + } + } + + @Override public int hashCode() { + int result = 17; + result = 31 * result + type; + return result; + } + +} //End of class diff --git a/src/ui/DefaultText.java b/src/ui/DefaultText.java index f0777127f43c84aaea9ee0f924f8edfe8f740007..14ef3bac609f0250d30f1681b72309a629407ff8 100755 --- a/src/ui/DefaultText.java +++ b/src/ui/DefaultText.java @@ -49,8 +49,8 @@ package ui; public class DefaultText { - public static String BUILD = "12160"; - public static String DATE = "2017/03/16 02:01:03 CET"; + public static String BUILD = "12165"; + public static String DATE = "2017/03/20 02:01:03 CET"; public static StringBuffer sbAbout = makeAbout(); diff --git a/src/ui/GTMLModeling.java b/src/ui/GTMLModeling.java index 7d6bd0dea846e71246bdb1182fe939b12c023b4e..17dc8ac3c5f17c4292c8c73b8d5bed5b9d372886 100755 --- a/src/ui/GTMLModeling.java +++ b/src/ui/GTMLModeling.java @@ -152,7 +152,7 @@ public class GTMLModeling { removedEvents = new LinkedList<String>(); try { - + addTMLTasks(); addTMLChannels(); @@ -214,24 +214,24 @@ public class GTMLModeling { try { - // Checking paths - if (tmlcdp != null) { - if (tmlcdp.tmlctdp != null) { - ArrayList<TMLCPath> faultyPaths = tmlcdp.tmlctdp.updatePorts(); - for(TMLCPath fp: faultyPaths) { - if (fp != null) { - // There is a faulty path - // Create an error - CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, fp.getErrorMessage()); - ce.setTDiagramPanel(tmlcdp.tmlctdp); - ce.setTGComponent(fp.getFaultyComponent()); - checkingErrors.add(ce); - //throw new MalformedTMLDesignException("Bad path:" + path.getErrorMessage()); - } - } - } - } - + // Checking paths + if (tmlcdp != null) { + if (tmlcdp.tmlctdp != null) { + ArrayList<TMLCPath> faultyPaths = tmlcdp.tmlctdp.updatePorts(); + for(TMLCPath fp: faultyPaths) { + if (fp != null) { + // There is a faulty path + // Create an error + CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, fp.getErrorMessage()); + ce.setTDiagramPanel(tmlcdp.tmlctdp); + ce.setTGComponent(fp.getFaultyComponent()); + checkingErrors.add(ce); + //throw new MalformedTMLDesignException("Bad path:" + path.getErrorMessage()); + } + } + } + } + addTMLComponents(); TraceManager.addDev("Adding channels"); addTMLCChannels(); @@ -917,7 +917,7 @@ public class GTMLModeling { TMLCRecordComponent record; TAttribute ta; - List<TGComponent> alreadyConsidered = new ArrayList<TGComponent>(); + List<TGComponent> alreadyConsidered = new ArrayList<TGComponent>(); TraceManager.addDev("*** Adding Events ***"); @@ -931,222 +931,226 @@ public class GTMLModeling { li = ports.listIterator(); while(li.hasNext()) { port1 = (TMLCPrimitivePort)(li.next()); - portstome = tmlcdp.tmlctdp.getPortsConnectedTo(port1, componentsToTakeIntoAccount); - TraceManager.addDev("Considering port1 = " +port1.getPortName() + " size of connecting ports:" + portstome.size()); - - Iterator<?> ite = portstome.listIterator(); - while(ite.hasNext()) { - TraceManager.addDev("port=" + ((TMLCPrimitivePort)(ite.next())).getPortName()); - } + if (!(alreadyConsidered.contains(port1))) { + portstome = tmlcdp.tmlctdp.getPortsConnectedTo(port1, componentsToTakeIntoAccount); + TraceManager.addDev("Considering port1 = " +port1.getPortName() + " size of connecting ports:" + portstome.size()); + Iterator<?> ite = portstome.listIterator(); + while(ite.hasNext()) { + TraceManager.addDev("port=" + ((TMLCPrimitivePort)(ite.next())).getPortName()); + } - if (portstome.size() < 1) { - String msg = "port " + port1.getPortName() + " is not correctly connected"; - CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); - ce.setTDiagramPanel(tmlcdp.tmlctdp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - throw new MalformedTMLDesignException(msg); - } + if (portstome.size() < 1) { + String msg = "port " + port1.getPortName() + " is not correctly connected"; + CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); + ce.setTDiagramPanel(tmlcdp.tmlctdp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + throw new MalformedTMLDesignException(msg); + } - if (portstome.size() == 1) { + if (portstome.size() == 1) { + port2 = (TMLCPrimitivePort)(portstome.get(0)); + alreadyConsidered.add(port1); + alreadyConsidered.add(port2); - for (int kk=0; kk<portstome.size(); kk++) { - port2 = (TMLCPrimitivePort)(portstome.get(kk)); + // Useless loop. Loop because the algo evolves all the time ;-) + for (int kk=0; kk<portstome.size(); kk++) { + port2 = (TMLCPrimitivePort)(portstome.get(kk)); - String []text1 = port1.getPortName().split(","); - String []text2 = port2.getPortName().split(","); + String []text1 = port1.getPortName().split(","); + String []text2 = port2.getPortName().split(","); - /*for (i=0; i<text1.length; i++) { - TraceManager.addDev("text1[" + i + "] = " + text1[i]); - } + /*for (i=0; i<text1.length; i++) { + TraceManager.addDev("text1[" + i + "] = " + text1[i]); + } - for (i=0; i<text2.length; i++) { - TraceManager.addDev("text2[" + i + "] = " + text2[i]); - }*/ + for (i=0; i<text2.length; i++) { + TraceManager.addDev("text2[" + i + "] = " + text2[i]); + }*/ - for (j=0; j<Math.min(text1.length, text2.length); j++) { - name1 = text1[j].trim(); - name2 = text2[j].trim(); - //TraceManager.addDev("name1=" + name1 + " name2=" + name2); - if (kk == 0) { - name = makeName(port1, name1) + "__" + makeName(port2, name2); - } else { - name = makeName(port1, name1) + "__" + makeName(port2, name2) + "__FORK" + kk; - } + for (j=0; j<Math.min(text1.length, text2.length); j++) { + name1 = text1[j].trim(); + name2 = text2[j].trim(); + //TraceManager.addDev("name1=" + name1 + " name2=" + name2); + if (kk == 0) { + name = makeName(port1, name1) + "__" + makeName(port2, name2); + } else { + name = makeName(port1, name1) + "__" + makeName(port2, name2) + "__FORK" + kk; + } - TraceManager.addDev("Adding to table : " + makeName(port1, port1.getFather().getValue()) + "/" + name1); - addToTable(makeName(port1, port1.getFather().getValue()) + "/" + name1, name); - TraceManager.addDev("Adding to table : " + makeName(port2, port2.getFather().getValue()) + "/" + name2); - addToTable(makeName(port2, port2.getFather().getValue()) + "/" + name2, name); + TraceManager.addDev("Adding to table : " + makeName(port1, port1.getFather().getValue()) + "/" + name1); + addToTable(makeName(port1, port1.getFather().getValue()) + "/" + name1, name); + TraceManager.addDev("Adding to table : " + makeName(port2, port2.getFather().getValue()) + "/" + name2); + addToTable(makeName(port2, port2.getFather().getValue()) + "/" + name2, name); - if (port1.isFinite()) { - event = new TMLEvent(name, port1, port1.getMax(), port1.isBlocking()); - } else { - event = new TMLEvent(name, port1, -1, port1.isBlocking()); - } - event.port=port1; - event.port2= port2; - for(i=0; i<port1.getNbMaxAttribute(); i++) { - tt = port1.getParamAt(i); - if ((tt != null) && (tt.getType() != TType.NONE)) { - if (tt.getType() == TType.OTHER) { - // Record - // Search for the record - record = tmlc.getRecordNamed(tt.getTypeOther()); - if (record == null) { - String msg = " event " + name + " is declared as using an unknown type: " + tt.getTypeOther(); - CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); - ce.setTDiagramPanel(tmlcdp.tmlctdp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - throw new MalformedTMLDesignException(msg); - } else { - for(int k=0; k<record.getAttributes().size(); k++) { - ta = (TAttribute)(record.getAttributes().get(k)); - if (ta.getType() == TAttribute.NATURAL) { - tmlt = new TMLType(TMLType.NATURAL); - } else if (ta.getType() == TAttribute.BOOLEAN) { - tmlt = new TMLType(TMLType.BOOLEAN); - } else { - tmlt = new TMLType(TMLType.OTHER); + if (port1.isFinite()) { + event = new TMLEvent(name, port1, port1.getMax(), port1.isBlocking()); + } else { + event = new TMLEvent(name, port1, -1, port1.isBlocking()); + } + event.port=port1; + event.port2= port2; + for(i=0; i<port1.getNbMaxAttribute(); i++) { + tt = port1.getParamAt(i); + if ((tt != null) && (tt.getType() != TType.NONE)) { + if (tt.getType() == TType.OTHER) { + // Record + // Search for the record + record = tmlc.getRecordNamed(tt.getTypeOther()); + if (record == null) { + String msg = " event " + name + " is declared as using an unknown type: " + tt.getTypeOther(); + CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); + ce.setTDiagramPanel(tmlcdp.tmlctdp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + throw new MalformedTMLDesignException(msg); + } else { + for(int k=0; k<record.getAttributes().size(); k++) { + ta = (TAttribute)(record.getAttributes().get(k)); + if (ta.getType() == TAttribute.NATURAL) { + tmlt = new TMLType(TMLType.NATURAL); + } else if (ta.getType() == TAttribute.BOOLEAN) { + tmlt = new TMLType(TMLType.BOOLEAN); + } else { + tmlt = new TMLType(TMLType.OTHER); + } + event.addParam(tmlt); } - event.addParam(tmlt); } + } else { + tmlt = new TMLType(tt.getType()); + event.addParam(tmlt); } - } else { - tmlt = new TMLType(tt.getType()); - event.addParam(tmlt); + //TraceManager.addDev("Event " + event.getName() + " add param"); } - //TraceManager.addDev("Event " + event.getName() + " add param"); } - } - if (tmlm.hasSameEventName(event)) { - if (tmlm.hasAlmostSimilarEvent(event)) { - String msg = " event " + name + " is declared several times differently"; - CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); - ce.setTDiagramPanel(tmlcdp.tmlctdp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - throw new MalformedTMLDesignException(msg); + if (tmlm.hasSameEventName(event)) { + if (tmlm.hasAlmostSimilarEvent(event)) { + String msg = " event " + name + " is declared several times differently"; + CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); + ce.setTDiagramPanel(tmlcdp.tmlctdp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + throw new MalformedTMLDesignException(msg); + } else { + TraceManager.addDev("Same evt : not added"); + } } else { - TraceManager.addDev("Same evt : not added"); - } - } else { - tt1 = tmlm.getTMLTaskByName(makeName(port1, port1.getFather().getValue())); - tt2 = tmlm.getTMLTaskByName(makeName(port2, port2.getFather().getValue())); - TraceManager.addDev("Tasks of event: t1=" + tt1.getName() + " t2=" + tt2.getName()); - event.setTasks(tt1, tt2); + tt1 = tmlm.getTMLTaskByName(makeName(port1, port1.getFather().getValue())); + tt2 = tmlm.getTMLTaskByName(makeName(port2, port2.getFather().getValue())); + TraceManager.addDev("Tasks of event: t1=" + tt1.getName() + " t2=" + tt2.getName()); + event.setTasks(tt1, tt2); - if (port1.isLossy()) { - event.setLossy(true, port1.getLossPercentage(), port1.getMaxNbOfLoss()); + if (port1.isLossy()) { + event.setLossy(true, port1.getLossPercentage(), port1.getMaxNbOfLoss()); + } + tmlm.addEvent(event); + listE.addCor(event, tgc); + TraceManager.addDev("Adding event " + event.getName()); } - tmlm.addEvent(event); - listE.addCor(event, tgc); - TraceManager.addDev("Adding event " + event.getName()); } } - } - // 1 -> many - // Complex event - } else { - TraceManager.addDev("One to many event"); - TMLCPrimitivePort port; + // 1 -> many + // Complex event + } else { + TraceManager.addDev("One to many event"); + TMLCPrimitivePort port; - // Only one channel per port - if (port1.getPortName().indexOf(",") != -1) { - String msg = "Multiple definition of events with more than one output port is not allowed: " + port1.getPortName(); - CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); - ce.setTDiagramPanel(tmlcdp.tmlctdp); - ce.setTGComponent(port1); - checkingErrors.add(ce); - throw new MalformedTMLDesignException(msg); - } - for(j=0; j<portstome.size(); j++) { - port = (TMLCPrimitivePort)(portstome.get(j)); - if (port.getPortName().indexOf(",") != -1) { - String msg = "Multiple definition of events with more than one output port is not allowed: " + port.getPortName(); + // Only one channel per port + if (port1.getPortName().indexOf(",") != -1) { + String msg = "Multiple definition of events with more than one output port is not allowed: " + port1.getPortName(); CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); ce.setTDiagramPanel(tmlcdp.tmlctdp); - ce.setTGComponent(port); + ce.setTGComponent(port1); checkingErrors.add(ce); throw new MalformedTMLDesignException(msg); } - } - // Name of port - name = makeName(port1, port1.getPortName()); - for(j=0; j<portstome.size(); j++) { - name += "__" + ((TMLCPrimitivePort)(portstome.get(j))).getPortName(); - } - - // Correspondance table - alreadyConsidered.add(port1); - addToTable(makeName(port1, port1.getFather().getValue()) + "/" + port1.getPortName(), name); - for(j=0; j<portstome.size(); j++) { - port = (TMLCPrimitivePort)(portstome.get(j)); - alreadyConsidered.add(port); - addToTable(makeName(port, port.getFather().getValue()) + "/" + port.getPortName(), name); - } - - // Channel attributes - port = (TMLCPrimitivePort)(portstome.get(0)); - if (port.isFinite()) { - event = new TMLEvent(name, port1, port1.getMax(), port1.isBlocking()); - } else { - event = new TMLEvent(name, port1, -1, port1.isBlocking()); - } - event.ports.add(port1); - for(j=0; j<portstome.size(); j++) { - TMLCPrimitivePort p = (TMLCPrimitivePort)(portstome.get(j)); - event.ports.add(p); - } - for(i=0; i<port1.getNbMaxAttribute(); i++) { - tt = port1.getParamAt(i); - if ((tt != null) && (tt.getType() != TType.NONE)) { - if (tt.getType() == TType.OTHER) { - // Record - // Search for the record - record = tmlc.getRecordNamed(tt.getTypeOther()); - if (record == null) { - String msg = " event " + name + " is declared as using an unknown type: " + tt.getTypeOther(); - CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); - ce.setTDiagramPanel(tmlcdp.tmlctdp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - throw new MalformedTMLDesignException(msg); - } else { - for(int k=0; k<record.getAttributes().size(); k++) { - ta = (TAttribute)(record.getAttributes().get(k)); - if (ta.getType() == TAttribute.NATURAL) { - tmlt = new TMLType(TMLType.NATURAL); - } else if (ta.getType() == TAttribute.BOOLEAN) { - tmlt = new TMLType(TMLType.BOOLEAN); - } else { - tmlt = new TMLType(TMLType.OTHER); - } - event.addParam(tmlt); - } - } - } else { - tmlt = new TMLType(tt.getType()); - event.addParam(tmlt); - } - //TraceManager.addDev("Event " + event.getName() + " add param"); - } - } // For - if (tmlm.hasSameEventName(event)) { - if (tmlm.hasAlmostSimilarEvent(event)) { - String msg = " event " + name + " is declared several times differently"; - CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); - ce.setTDiagramPanel(tmlcdp.tmlctdp); - ce.setTGComponent(tgc); - checkingErrors.add(ce); - throw new MalformedTMLDesignException(msg); - } else { - TraceManager.addDev("Same evt : not added"); - } - } else { - TMLPort tmlport; + for(j=0; j<portstome.size(); j++) { + port = (TMLCPrimitivePort)(portstome.get(j)); + if (port.getPortName().indexOf(",") != -1) { + String msg = "Multiple definition of events with more than one output port is not allowed: " + port.getPortName(); + CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); + ce.setTDiagramPanel(tmlcdp.tmlctdp); + ce.setTGComponent(port); + checkingErrors.add(ce); + throw new MalformedTMLDesignException(msg); + } + } + // Name of port + name = makeName(port1, port1.getPortName()); + for(j=0; j<portstome.size(); j++) { + name += "__" + ((TMLCPrimitivePort)(portstome.get(j))).getPortName(); + } + + // Correspondance table + alreadyConsidered.add(port1); + addToTable(makeName(port1, port1.getFather().getValue()) + "/" + port1.getPortName(), name); + for(j=0; j<portstome.size(); j++) { + port = (TMLCPrimitivePort)(portstome.get(j)); + alreadyConsidered.add(port); + addToTable(makeName(port, port.getFather().getValue()) + "/" + port.getPortName(), name); + } + + // Channel attributes + port = (TMLCPrimitivePort)(portstome.get(0)); + if (port.isFinite()) { + event = new TMLEvent(name, port1, port1.getMax(), port1.isBlocking()); + } else { + event = new TMLEvent(name, port1, -1, port1.isBlocking()); + } + event.ports.add(port1); + for(j=0; j<portstome.size(); j++) { + TMLCPrimitivePort p = (TMLCPrimitivePort)(portstome.get(j)); + event.ports.add(p); + } + for(i=0; i<port1.getNbMaxAttribute(); i++) { + tt = port1.getParamAt(i); + if ((tt != null) && (tt.getType() != TType.NONE)) { + if (tt.getType() == TType.OTHER) { + // Record + // Search for the record + record = tmlc.getRecordNamed(tt.getTypeOther()); + if (record == null) { + String msg = " event " + name + " is declared as using an unknown type: " + tt.getTypeOther(); + CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); + ce.setTDiagramPanel(tmlcdp.tmlctdp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + throw new MalformedTMLDesignException(msg); + } else { + for(int k=0; k<record.getAttributes().size(); k++) { + ta = (TAttribute)(record.getAttributes().get(k)); + if (ta.getType() == TAttribute.NATURAL) { + tmlt = new TMLType(TMLType.NATURAL); + } else if (ta.getType() == TAttribute.BOOLEAN) { + tmlt = new TMLType(TMLType.BOOLEAN); + } else { + tmlt = new TMLType(TMLType.OTHER); + } + event.addParam(tmlt); + } + } + } else { + tmlt = new TMLType(tt.getType()); + event.addParam(tmlt); + } + //TraceManager.addDev("Event " + event.getName() + " add param"); + } + } // For + if (tmlm.hasSameEventName(event)) { + if (tmlm.hasAlmostSimilarEvent(event)) { + String msg = " event " + name + " is declared several times differently"; + CheckingError ce = new CheckingError(CheckingError.STRUCTURE_ERROR, msg); + ce.setTDiagramPanel(tmlcdp.tmlctdp); + ce.setTGComponent(tgc); + checkingErrors.add(ce); + throw new MalformedTMLDesignException(msg); + } else { + TraceManager.addDev("Same evt : not added"); + } + } else { + TMLPort tmlport; tt1 = tmlm.getTMLTaskByName(makeName(port1, port1.getFather().getValue())); tmlport = new TMLPort(port1.getPortName(), port1); tmlport.setAssociatedEvent( port1.getAssociatedEvent() ); @@ -1160,26 +1164,27 @@ public class GTMLModeling { tt2 = tmlm.getTMLTaskByName(makeName(port, port.getFather().getValue())); event.addTaskPort(tt2, tmlport, port.isOrigin()); } - - /*tt1 = tmlm.getTMLTaskByName(makeName(port1, port1.getFather().getValue())); - tt2 = tmlm.getTMLTaskByName(makeName(port2, port2.getFather().getValue())); - TraceManager.addDev("Tasks of event: t1=" + tt1.getName() + " t2=" + tt2.getName()); - event.setTasks(tt1, tt2);*/ - - if (port1.isLossy()) { - event.setLossy(true, port1.getLossPercentage(), port1.getMaxNbOfLoss()); - } - tmlm.addEvent(event); - listE.addCor(event, tgc); - TraceManager.addDev("Adding event " + event.getName()); - } - } - } - } - } + + /*tt1 = tmlm.getTMLTaskByName(makeName(port1, port1.getFather().getValue())); + tt2 = tmlm.getTMLTaskByName(makeName(port2, port2.getFather().getValue())); + TraceManager.addDev("Tasks of event: t1=" + tt1.getName() + " t2=" + tt2.getName()); + event.setTasks(tt1, tt2);*/ + + if (port1.isLossy()) { + event.setLossy(true, port1.getLossPercentage(), port1.getMaxNbOfLoss()); + } + tmlm.addEvent(event); + listE.addCor(event, tgc); + TraceManager.addDev("Adding event " + event.getName()); + } + } + } + } + } + } } - - + + private void addTMLCRequests() throws MalformedTMLDesignException { TGComponent tgc; TMLCPrimitiveComponent tmlc; diff --git a/src/ui/MainGUI.java b/src/ui/MainGUI.java index f17738bc92832eb12f8b6d24631406a70034d849..53921a93393f908042badb28167670789524d6ae 100644 --- a/src/ui/MainGUI.java +++ b/src/ui/MainGUI.java @@ -3205,7 +3205,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Pe ret = true; if (!automatic) { JOptionPane.showMessageDialog(frame, - "0 error, " + getCheckingWarnings().size() + " warning(s). You can now generate a formal (LOTOS, UPPAAL) specification or executable code (C++ / SystemC)", + "0 error, " + getCheckingWarnings().size() + " warning(s). You can now generate make proofs (safety, security and performance) or generate executable code", "Syntax analysis successful on TML designs", JOptionPane.INFORMATION_MESSAGE); } @@ -3241,7 +3241,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Pe ret = true; if (!automatic) { JOptionPane.showMessageDialog(frame, - "0 error, " + getCheckingWarnings().size() + " warning(s). You can now generate a formal (LOTOS, UPPAAL) specification or executable code (C++ / SystemC)", + "0 error, " + getCheckingWarnings().size() + " warning(s). You can now generate make proofs (safety, security and performance) or generate executable code", "Syntax analysis successful on TML designs", JOptionPane.INFORMATION_MESSAGE); }