diff --git a/build.txt b/build.txt index 33fde8bf587dd3eb313383025cc3de54eea08cfc..45a64f2ba7f18d00f80a5d3b8fc73c6e5d74f377 100644 --- a/build.txt +++ b/build.txt @@ -1 +1 @@ -12683 \ No newline at end of file +12684 \ No newline at end of file diff --git a/doc/SysMLSec/fig/automaticgeneration.png b/doc/SysMLSec/fig/automaticgeneration.png index 23229151f1a89940273842662b3de229d74834e8..291d004ec17390a9ac0b49aafac20576011e5c50 100644 Binary files a/doc/SysMLSec/fig/automaticgeneration.png and b/doc/SysMLSec/fig/automaticgeneration.png differ diff --git a/doc/SysMLSec/fig/hsmact.svg b/doc/SysMLSec/fig/hsmact.svg new file mode 100644 index 0000000000000000000000000000000000000000..05f0598cd9ee47f9eae8ac569a5d99d7763ecdfe --- /dev/null +++ b/doc/SysMLSec/fig/hsmact.svg @@ -0,0 +1,844 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:Dialog" + id="svg2" + version="1.1" + inkscape:version="0.48.4 r9939" + width="236.95963" + height="279.29044" + sodipodi:docname="hsmact.svg"> + <metadata + id="metadata205"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="1920" + inkscape:window-height="1041" + id="namedview203" + showgrid="false" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:zoom="0.63429569" + inkscape:cx="-245.62252" + inkscape:cy="98.276187" + inkscape:window-x="2048" + inkscape:window-y="0" + inkscape:window-maximized="1" + inkscape:current-layer="g15" /> + <!--Generated by the Batik Graphics2D SVG Generator--> + <defs + id="genericDefs"> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1-3"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path9-9" + inkscape:connector-curvature="0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3194"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3196" + inkscape:connector-curvature="0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3198"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3200" + inkscape:connector-curvature="0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1-3-3"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path9-9-0" + inkscape:connector-curvature="0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3240"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3242" + inkscape:connector-curvature="0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1-1"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path9-5" + inkscape:connector-curvature="0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1-3-3-7"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path9-9-0-1" + inkscape:connector-curvature="0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3284"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3286" + inkscape:connector-curvature="0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1-3-3-7-5"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path9-9-0-1-7" + inkscape:connector-curvature="0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3319"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3321" + inkscape:connector-curvature="0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1-4"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path9-8" + inkscape:connector-curvature="0" /> + </clipPath> + </defs> + <g + id="g5" + transform="translate(-101.19736,-134.85932)"> + <defs + id="defs1"> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path9" + inkscape:connector-curvature="0" /> + </clipPath> + </defs> + <g + style="font-family:sans-serif" + id="g15" + transform="translate(-63.850347,7.094483)"> + <line + x1="226" + x2="236" + y1="621" + style="fill:none;stroke:#68e5ff" + y2="611" + id="line139" + clip-path="url(#clipPath1)" + transform="translate(70.107289,-251.78954)" /> + <polygon + style="stroke:none" + points="319,181 315,190 310,181 " + id="polygon25" + clip-path="url(#clipPath1)" + transform="translate(-0.1731605,8.4128465)" /> + <polygon + style="fill:none" + points="319,181 315,190 310,181 " + id="polygon27" + clip-path="url(#clipPath1)" + transform="translate(-0.1731605,8.4128465)" /> + <line + x1="275" + x2="165" + y1="215" + style="fill:none;stroke-width:2.87090135" + y2="295" + id="line29" + clip-path="url(#clipPath1)" + transform="matrix(0.32414301,0,0,0.37430602,185.368,134.81981)" /> + <polygon + style="stroke:none" + points="169,285 174,293 165,295 " + id="polygon31" + clip-path="url(#clipPath1)" + transform="translate(71.659098,-47.536051)" /> + <polygon + style="fill:none" + points="169,285 174,293 165,295 " + id="polygon33" + clip-path="url(#clipPath1)" + transform="translate(71.659098,-47.536051)" /> + <circle + style="stroke:none" + r="7.5" + cx="407.5" + cy="57.5" + id="circle53" + clip-path="url(#clipPath1)" + d="m 415,57.5 c 0,4.142136 -3.35786,7.5 -7.5,7.5 -4.14214,0 -7.5,-3.357864 -7.5,-7.5 0,-4.142136 3.35786,-7.5 7.5,-7.5 4.14214,0 7.5,3.357864 7.5,7.5 z" + sodipodi:cx="407.5" + sodipodi:cy="57.5" + sodipodi:rx="7.5" + sodipodi:ry="7.5" + transform="translate(-93.078,77.764839)" /> + <line + x1="407" + x2="407" + y1="65" + style="fill:none;stroke-width:0.62101328" + y2="70" + id="line55" + clip-path="url(#clipPath1)" + transform="matrix(1,0,0,2.5929742,-92.388259,-29.810186)" /> + <rect + x="229" + y="100" + width="173" + style="fill:#c4a67a;stroke:none" + rx="2.5" + ry="2.5" + height="20" + id="rect57" + clip-path="url(#clipPath1)" + transform="translate(-0.49267243,60.164873)" /> + <rect + x="228" + y="99" + width="173" + style="fill:none;stroke:#c4a67a" + rx="2.5" + ry="2.5" + height="20" + id="rect59" + clip-path="url(#clipPath1)" + transform="translate(0,60.75608)" /> + <rect + x="229" + y="100" + width="173" + style="fill:none" + rx="2.5" + ry="2.5" + height="20" + id="rect61" + clip-path="url(#clipPath1)" + transform="translate(-0.49267243,60.164873)" /> + <line + x1="315" + x2="315" + y1="120" + style="fill:none;stroke-width:0.68733406" + y2="125" + id="line65" + clip-path="url(#clipPath1)" + transform="matrix(1,0,0,2.1167242,0,-72.69246)" /> + <text + x="234" + y="115" + style="stroke:none" + xml:space="preserve" + id="text67" + clip-path="url(#clipPath1)" + transform="translate(-1.8721552,59.770735)">getReqArg (channelIndex)</text> + <polygon + style="fill:#c7f369;stroke:none" + points="332,215 315,232 300,215 315,200 " + id="polygon69" + clip-path="url(#clipPath1)" /> + <line + x1="315" + x2="330" + y1="200" + style="fill:none" + y2="215" + id="line71" + clip-path="url(#clipPath1)" /> + <line + x1="300" + x2="315" + y1="215" + style="fill:none" + y2="230" + id="line73" + clip-path="url(#clipPath1)" /> + <line + x1="315" + x2="300" + y1="200" + style="fill:none" + y2="215" + id="line75" + clip-path="url(#clipPath1)" /> + <line + x1="330" + x2="315" + y1="215" + style="fill:none" + y2="230" + id="line77" + clip-path="url(#clipPath1)" /> + <line + x1="300" + x2="275" + y1="215" + style="fill:none" + y2="215" + id="line81" + clip-path="url(#clipPath1)" /> + <line + x1="330" + x2="355" + y1="215" + style="fill:none" + y2="215" + id="line83" + clip-path="url(#clipPath1)" /> + <line + x1="315" + x2="315" + y1="230" + style="fill:none" + y2="255" + id="line85" + clip-path="url(#clipPath1)" /> + <text + x="275" + y="210" + style="stroke:none" + xml:space="preserve" + id="text87" + clip-path="url(#clipPath1)" + transform="translate(-97.647676,0.19706897)">[channelIndex==0]</text> + <text + x="335" + y="210" + style="stroke:none" + xml:space="preserve" + id="text89" + clip-path="url(#clipPath1)">[ ]</text> + <text + x="320" + y="245" + style="stroke:none" + xml:space="preserve" + id="text91" + clip-path="url(#clipPath1)">[ ]</text> + <polygon + style="fill:#68e5ff;stroke:none" + points="228,300 228,320 103,320 113,310 103,300 " + id="polygon93" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <line + x1="104" + x2="229" + y1="301" + style="fill:none;stroke:#68e5ff" + y2="301" + id="line99" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <line + x1="229" + x2="229" + y1="301" + style="fill:none;stroke:#68e5ff" + y2="321" + id="line101" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <line + x1="104" + x2="229" + y1="321" + style="fill:none;stroke:#68e5ff" + y2="321" + id="line103" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <line + x1="104" + x2="114" + y1="301" + style="fill:none;stroke:#68e5ff" + y2="311" + id="line105" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <line + x1="104" + x2="114" + y1="321" + style="fill:none;stroke:#68e5ff" + y2="311" + id="line107" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <line + x1="103" + x2="228" + y1="300" + style="fill:none" + y2="300" + id="line109" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <line + x1="228" + x2="228" + y1="300" + style="fill:none" + y2="320" + id="line111" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <line + x1="103" + x2="228" + y1="320" + style="fill:none" + y2="320" + id="line113" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <line + x1="103" + x2="113" + y1="300" + style="fill:none" + y2="310" + id="line115" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <line + x1="103" + x2="113" + y1="320" + style="fill:none" + y2="310" + id="line117" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)" /> + <text + x="108" + y="300" + style="stroke:none" + xml:space="preserve" + id="text119" + clip-path="url(#clipPath1)" + transform="translate(66.330032,-53.509942)">chl</text> + <text + x="115" + y="315" + style="stroke:none" + xml:space="preserve" + id="text121" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)">data_comm_T1(1) </text> + <text + x="196" + y="331" + style="stroke:none" + xml:space="preserve" + id="text123" + clip-path="url(#clipPath1)" + transform="translate(71.067891,-51.280361)">sec:hsmSec_comm</text> + <polygon + style="fill:#68e5ff;stroke:none" + points="235,610 225,620 95,620 95,600 225,600 " + id="polygon125" + clip-path="url(#clipPath1)" + transform="translate(70.547706,-251.54568)" /> + <line + x1="96" + x2="226" + y1="601" + style="fill:none;stroke:#68e5ff;stroke-width:1.00334084" + y2="601" + id="line131" + clip-path="url(#clipPath1)" + transform="matrix(0.99335168,0,0,1,71.182621,-251.54568)" /> + <line + x1="96" + x2="226" + y1="621" + style="fill:none;stroke:#68e5ff;stroke-width:1.00359595" + y2="621" + id="line133" + clip-path="url(#clipPath1)" + transform="matrix(0.99284673,0,0,1,71.230853,-251.54568)" /> + <line + x1="96" + x2="96" + y1="601" + style="fill:none;stroke:#68e5ff" + y2="621" + id="line135" + clip-path="url(#clipPath1)" + transform="translate(70.547706,-251.54568)" /> + <line + x1="95" + x2="225" + y1="600" + style="fill:none" + y2="600" + id="line141" + clip-path="url(#clipPath1)" + transform="translate(70.547706,-251.54568)" /> + <line + x1="95" + x2="225" + y1="620" + style="fill:none" + y2="620" + id="line143" + clip-path="url(#clipPath1)" + transform="translate(70.547706,-251.54568)" /> + <line + x1="95" + x2="95" + y1="600" + style="fill:none" + y2="620" + id="line145" + clip-path="url(#clipPath1)" + transform="translate(70.547706,-251.54568)" /> + <line + x1="225" + x2="235" + y1="600" + style="fill:none;stroke-width:1.03990936" + y2="610" + id="line147" + clip-path="url(#clipPath1)" + transform="matrix(0.95122792,0,0,0.97213024,82.009145,-234.54513)" /> + <line + x1="225" + x2="235" + y1="620" + style="fill:none;stroke-width:1.04376268" + y2="610" + id="line149" + clip-path="url(#clipPath1)" + transform="matrix(0.94826939,0,0,0.96797629,82.704398,-232.01122)" /> + <text + x="100" + y="600" + style="stroke:none" + xml:space="preserve" + id="text151" + clip-path="url(#clipPath1)" + transform="translate(65.531149,-253.77527)">chl</text> + <text + x="100" + y="615" + style="stroke:none" + xml:space="preserve" + id="text153" + clip-path="url(#clipPath1)" + transform="translate(70.547706,-251.54568)">retData_comm_T1(1)</text> + <text + x="200" + y="631" + style="stroke:none" + xml:space="preserve" + id="text155" + clip-path="url(#clipPath1)" + transform="translate(70.547706,-251.54568)">sec:hsmSec_comm</text> + <rect + x="150" + y="500" + width="15" + style="fill:#c7f369;stroke:none" + height="35" + id="rect157" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <polygon + style="fill:#c7f369;stroke:none" + points="157,540 150,535 165,535 " + id="polygon159" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="150" + x2="165" + y1="500" + style="fill:none" + y2="500" + id="line161" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="150" + x2="150" + y1="500" + style="fill:none" + y2="535" + id="line163" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="165" + x2="165" + y1="500" + style="fill:none" + y2="535" + id="line165" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="150" + x2="157" + y1="535" + style="fill:none" + y2="540" + id="line167" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="157" + x2="165" + y1="540" + style="fill:none" + y2="535" + id="line169" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="157" + x2="157" + y1="540" + style="fill:none" + y2="545" + id="line173" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="155" + x2="160" + y1="505" + style="fill:none" + y2="505" + id="line175" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="155" + x2="160" + y1="517" + style="fill:none" + y2="517" + id="line177" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="155" + x2="160" + y1="511" + style="fill:none" + y2="511" + id="line179" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="155" + x2="155" + y1="505" + style="fill:none" + y2="511" + id="line181" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="160" + x2="160" + y1="511" + style="fill:none" + y2="517" + id="line183" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="155" + x2="160" + y1="520" + style="fill:none" + y2="520" + id="line185" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="155" + x2="160" + y1="532" + style="fill:none" + y2="532" + id="line187" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="155" + x2="160" + y1="526" + style="fill:none" + y2="526" + id="line189" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <line + x1="155" + x2="155" + y1="520" + style="fill:none" + y2="532" + id="line191" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <text + x="172" + y="517" + style="stroke:none" + xml:space="preserve" + id="text193" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)">sec:hsmSec_comm</text> + <image + x="128" + y="517" + width="20" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAAZklEQVR42mNgGOyA EYn9H48cyQb+J9JSogz8T00fU9XAc/d/MTBRO1JYiLEVGRgpsmHIIYuxEGMrUAPO 1ACVg4sx4YtFdNchxzqaHCOygViTBpJ3GHEZiibHiGEQ0JD/eLw6CugEAGstHBuj 0FC+AAAAAElFTkSuQmCC" + height="16" + preserveAspectRatio="none" + id="image195" + clip-path="url(#clipPath1)" + transform="translate(78.803801,-208.00422)" /> + <circle + style="stroke:none" + r="8" + cx="160" + cy="710" + id="circle197" + clip-path="url(#clipPath1)" + d="m 168,710 c 0,4.41828 -3.58172,8 -8,8 -4.41828,0 -8,-3.58172 -8,-8 0,-4.41828 3.58172,-8 8,-8 4.41828,0 8,3.58172 8,8 z" + sodipodi:cx="160" + sodipodi:cy="710" + sodipodi:rx="8" + sodipodi:ry="8" + transform="translate(77.574649,-313.44471)" /> + <circle + style="fill:none" + r="10" + cx="160" + cy="710" + id="circle199" + clip-path="url(#clipPath1)" + d="m 170,710 c 0,5.52285 -4.47715,10 -10,10 -5.52285,0 -10,-4.47715 -10,-10 0,-5.52285 4.47715,-10 10,-10 5.52285,0 10,4.47715 10,10 z" + sodipodi:cx="160" + sodipodi:cy="710" + sodipodi:rx="10" + sodipodi:ry="10" + transform="translate(77.574649,-313.44471)" /> + <polygon + transform="translate(-0.56912825,-31.303148)" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + points="310,181 319,181 315,190 " + id="polygon25-8" + clip-path="url(#clipPath1-3)" /> + <polygon + transform="translate(-0.56912825,-31.303148)" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + points="310,181 319,181 315,190 " + id="polygon27-1" + clip-path="url(#clipPath1-3)" /> + <line + x1="407" + x2="407" + y1="65" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:0.62101328;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y2="70" + id="line55-3" + clip-path="url(#clipPath1-1)" + transform="matrix(1,0,0,2.5929742,-170.05598,102.12302)" /> + <polygon + transform="translate(-78.236854,100.63005)" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + points="315,190 310,181 319,181 " + id="polygon25-8-8" + clip-path="url(#clipPath1-3-3)" /> + <polygon + transform="translate(-78.236854,100.63005)" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + points="315,190 310,181 319,181 " + id="polygon27-1-4" + clip-path="url(#clipPath1-3-3)" /> + <polygon + transform="translate(-78.608441,156.82268)" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + points="315,190 310,181 319,181 " + id="polygon25-8-8-0" + clip-path="url(#clipPath1-3-3-7)" /> + <polygon + transform="translate(-78.608441,156.82268)" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + points="315,190 310,181 319,181 " + id="polygon27-1-4-7" + clip-path="url(#clipPath1-3-3-7)" /> + <line + x1="157" + x2="157" + y1="540" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y2="545" + id="line173-2" + clip-path="url(#clipPath1-4)" + transform="translate(79.841716,-169.74297)" /> + <polygon + transform="translate(-77.570524,195.08393)" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + points="315,190 310,181 319,181 " + id="polygon25-8-8-0-3" + clip-path="url(#clipPath1-3-3-7-5)" /> + <polygon + transform="translate(-77.570524,195.08393)" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + points="315,190 310,181 319,181 " + id="polygon27-1-4-7-3" + clip-path="url(#clipPath1-3-3-7-5)" /> + </g> + </g> +</svg> diff --git a/doc/SysMLSec/fig/hsmarch.svg b/doc/SysMLSec/fig/hsmarch.svg new file mode 100644 index 0000000000000000000000000000000000000000..add74c9f76c7ba15f8b8f1ff0ce4395cb5561994 --- /dev/null +++ b/doc/SysMLSec/fig/hsmarch.svg @@ -0,0 +1,2840 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:Dialog" + id="svg2" + version="1.1" + inkscape:version="0.48.4 r9939" + width="1261.0444" + height="411.83667" + sodipodi:docname="hsmarch.svg"> + <metadata + id="metadata533"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="2048" + inkscape:window-height="1086" + id="namedview531" + showgrid="true" + inkscape:snap-global="false" + showguides="true" + inkscape:guide-bbox="true" + inkscape:zoom="0.63429569" + inkscape:cx="484.28315" + inkscape:cy="158.05948" + inkscape:window-x="0" + inkscape:window-y="27" + inkscape:window-maximized="1" + inkscape:current-layer="g5" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0"> + <inkscape:grid + type="xygrid" + id="grid3510" + empspacing="5" + visible="true" + enabled="true" + snapvisiblegridlinesonly="true" + originx="-21.594309px" + originy="-503.02371px" /> + </sodipodi:namedview> + <!--Generated by the Batik Graphics2D SVG Generator--> + <defs + id="genericDefs"> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1-2"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path9-7" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3780"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3782" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3784"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3786" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3788"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3790" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3792"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3794" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3796"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3798" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3800"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3802" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3804"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3806" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3808"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3810" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3812"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3814" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3816"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3818" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3820"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3822" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3824"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3826" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3828"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3830" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3832"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3834" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3836"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3838" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3840"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3842" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3844"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3846" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3848"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3850" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3852"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3854" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3856"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3858" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3860"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3862" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3864"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3866" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3868"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3870" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3872"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3874" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3876"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3878" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3880"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3882" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3884"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3886" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3888"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3890" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3892"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3894" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3896"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3898" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3900"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3902" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3904"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3906" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3908"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3910" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3912"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3914" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3916"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3918" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3920"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3922" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3924"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3926" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3928"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3930" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3932"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3934" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3936"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3938" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3940"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3942" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3944"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3946" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3948"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3950" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3952"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3954" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3956"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3958" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3960"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3962" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3964"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3966" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3968"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3970" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3972"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3974" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3976"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3978" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3980"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3982" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3984"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3986" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3988"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path3990" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1-8"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path9-3" + inkscape:connector-curvature="0" /> + </clipPath> + </defs> + <g + id="g5" + transform="translate(-27.506378,-137.50181)"> + <defs + id="defs1"> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1"> + <path + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" + id="path9" + inkscape:connector-curvature="0" /> + </clipPath> + </defs> + <line + clip-path="url(#clipPath1-8)" + id="line25-2" + y2="371" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:0.97460783;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="344" + x2="298" + x1="298" + transform="matrix(1,0,0,1.0527863,743.02713,-27.773772)" /> + <line + clip-path="url(#clipPath1)" + id="line17" + y2="453" + style="fill:none;stroke-width:1.45667028;font-family:sans-serif" + y1="493" + x2="694" + x1="694" + transform="matrix(1,0,0,0.47127837,-28.912069,222.39044)" /> + <line + clip-path="url(#clipPath1)" + id="line19" + y2="381" + style="fill:none;font-family:sans-serif" + y1="344" + x2="569" + x1="423" + transform="translate(-23,-4.6378174)" /> + <line + clip-path="url(#clipPath1)" + id="line21" + y2="381" + style="fill:none;stroke-width:0.95481837;font-family:sans-serif" + y1="337" + x2="819" + x1="953" + transform="matrix(1.0235306,0,0,1.0716614,-45.424684,-28.787724)" /> + <line + clip-path="url(#clipPath1)" + id="line25" + y2="371" + style="fill:none;font-family:sans-serif" + y1="344" + x2="298" + x1="298" + transform="translate(-23,-4.6378174)" /> + <line + transform="matrix(-0.00309774,0,0,0.37058583,213.72797,260.34555)" + clip-path="url(#clipPath1)" + id="line27" + y2="421" + style="fill:none;stroke-width:29.5143528;font-family:sans-serif" + y1="470" + x2="235" + x1="220" /> + <line + transform="matrix(-0.00299522,0,0,0.37237817,361.90897,260.67485)" + clip-path="url(#clipPath1)" + id="line29" + y2="421" + style="fill:none;stroke-width:29.94286537;font-family:sans-serif" + y1="467" + x2="360" + x1="403" /> + <rect + clip-path="url(#clipPath1)" + id="rect31" + height="201" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="1" + y="144" + x="236" + transform="translate(-23.278698,-2.9656317)" /> + <rect + clip-path="url(#clipPath1)" + id="rect33" + height="1" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="249" + y="144" + x="237" + transform="translate(-23.278698,-2.9656317)" /> + <rect + clip-path="url(#clipPath1)" + id="rect35" + height="1" + style="stroke:none;font-family:sans-serif" + width="250" + y="344" + x="237" + transform="translate(-23.278698,-2.9656317)" /> + <rect + clip-path="url(#clipPath1)" + id="rect37" + height="200" + style="stroke:none;font-family:sans-serif" + width="1" + y="144" + x="486" + transform="translate(-23.278698,-2.9656317)" /> + <line + transform="matrix(0.89838631,0,0,0.94046875,1.3918744,5.5576014)" + clip-path="url(#clipPath1)" + id="line39" + y2="141" + style="fill:none;stroke-width:1.08791828;font-family:sans-serif" + y1="144" + x2="238" + x1="236" /> + <line + transform="matrix(0.93225754,0,0,0.91378232,10.124493,9.5482483)" + clip-path="url(#clipPath1)" + id="line41" + y2="141" + style="fill:none;stroke-width:1.08345449;font-family:sans-serif" + y1="144" + x2="488" + x1="486" /> + <line + transform="matrix(0.99769365,0,0,1,-21.868761,-2.9656317)" + clip-path="url(#clipPath1)" + id="line43" + y2="141" + style="fill:none;stroke-width:1.00115526;font-family:sans-serif" + y1="141" + x2="488" + x1="238" /> + <line + transform="matrix(0.85194189,0,0,0.9187132,49.504926,25.388948)" + clip-path="url(#clipPath1)" + id="line45" + y2="341" + style="fill:none;stroke-width:1.13032937;font-family:sans-serif" + y1="344" + x2="488" + x1="486" /> + <line + transform="translate(-22.57664,-2.9902653)" + clip-path="url(#clipPath1)" + id="line47" + y2="341" + style="fill:none;font-family:sans-serif" + y1="141" + x2="488" + x1="488" /> + <rect + clip-path="url(#clipPath1)" + id="rect49" + height="197" + style="fill:#c6ebf9;stroke:none;font-family:sans-serif" + width="247" + y="146" + x="238" + transform="translate(-23.278698,-2.9656317)" /> + <rect + clip-path="url(#clipPath1)" + id="rect51" + height="199" + style="fill:#ffffff;stroke:none;font-family:sans-serif" + width="1" + y="145" + x="237" + transform="translate(-23.278698,-2.9656317)" /> + <rect + clip-path="url(#clipPath1)" + id="rect53" + height="1" + style="fill:#ffffff;stroke:none;font-family:sans-serif" + width="247" + y="145" + x="238" + transform="translate(-23.278698,-2.9656317)" /> + <rect + clip-path="url(#clipPath1)" + id="rect55" + height="1" + style="fill:#8aa4ae;stroke:none;font-family:sans-serif" + width="248" + y="343" + x="238" + transform="translate(-23.278698,-2.9656317)" /> + <rect + clip-path="url(#clipPath1)" + id="rect57" + height="198" + style="fill:#8aa4ae;stroke:none;font-family:sans-serif" + width="1" + y="145" + x="485" + transform="translate(-23.278698,-2.9656317)" /> + <text + clip-path="url(#clipPath1)" + id="text59" + xml:space="preserve" + style="font-weight:bold;stroke:none;font-family:sans-serif" + y="159" + x="320" + transform="translate(-23.278698,-2.9656317)"><<CPURR>></text> + <text + clip-path="url(#clipPath1)" + id="text61" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="174" + x="344" + transform="translate(-23.278698,-2.9656317)">CPU1</text> + <image + style="font-family:sans-serif" + clip-path="url(#clipPath1)" + id="image63" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAWklEQVR42mNgoCL4 D8X42HDAhM2Ec/d//SfEBgFGNFuJAYzIjP9kepGRbM1AL0CcAPKLkSIb0ZpGnT1Q zkZP22AFMMPQ2SAA5DPiTNv4AEwjNs2MSM7CxYYDAJ76RjSq+zXoAAAAAElFTkSu QmCC" + width="15" + y="148" + x="240" + transform="translate(-23.278698,-2.9656317)" /> + <rect + transform="matrix(1.005941,0,0,1.0221071,-26.00564,-8.5587273)" + clip-path="url(#clipPath1)" + id="rect67" + height="39" + style="fill:#c6e3f9;stroke:none;font-family:sans-serif" + width="170" + y="214" + x="289" /> + <line + clip-path="url(#clipPath1)" + id="line69" + y2="243" + style="fill:none;font-family:sans-serif" + y1="218" + x2="434" + x1="434" + transform="translate(-23.278698,-2.9656317)" /> + <line + clip-path="url(#clipPath1)" + id="line71" + y2="218" + style="fill:none;font-family:sans-serif" + y1="218" + x2="449" + x1="434" + transform="translate(-23.278698,-2.9656317)" /> + <line + clip-path="url(#clipPath1)" + id="line73" + y2="223" + style="fill:none;font-family:sans-serif" + y1="218" + x2="454" + x1="449" + transform="translate(-23.278698,-2.9656317)" /> + <line + clip-path="url(#clipPath1)" + id="line75" + y2="243" + style="fill:none;font-family:sans-serif" + y1="223" + x2="454" + x1="454" + transform="translate(-23.278698,-2.9656317)" /> + <line + clip-path="url(#clipPath1)" + id="line77" + y2="243" + style="fill:none;font-family:sans-serif" + y1="243" + x2="434" + x1="454" + transform="translate(-23.278698,-2.9656317)" /> + <line + clip-path="url(#clipPath1)" + id="line79" + y2="223" + style="fill:none;font-family:sans-serif" + y1="218" + x2="449" + x1="449" + transform="translate(-23.278698,-2.9656317)" /> + <line + clip-path="url(#clipPath1)" + id="line81" + y2="223" + style="fill:none;font-family:sans-serif" + y1="223" + x2="454" + x1="449" + transform="translate(-23.278698,-2.9656317)" /> + <text + transform="translate(-21.505077,3.3405754)" + clip-path="url(#clipPath1)" + id="text83" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="228" + x="293">NonSecureFV_enc::T1</text> + <rect + clip-path="url(#clipPath1)" + id="rect85" + height="201" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="1" + y="137" + x="891" + transform="translate(-23.836092,4.0018086)" /> + <rect + clip-path="url(#clipPath1)" + id="rect87" + height="1" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="249" + y="137" + x="892" + transform="translate(-23.836092,4.0018086)" /> + <rect + clip-path="url(#clipPath1)" + id="rect89" + height="1" + style="stroke:none;font-family:sans-serif" + width="250" + y="337" + x="892" + transform="translate(-23.836092,4.0018086)" /> + <rect + clip-path="url(#clipPath1)" + id="rect91" + height="200" + style="stroke:none;font-family:sans-serif" + width="1" + y="137" + x="1141" + transform="translate(-23.836092,4.0018086)" /> + <line + transform="matrix(0.93225754,0,0,0.8932543,37.199864,18.490483)" + clip-path="url(#clipPath1)" + id="line93" + y2="134" + style="fill:none;stroke-width:1.0958333;font-family:sans-serif" + y1="137" + x2="893" + x1="891" /> + <line + transform="matrix(0.8829903,0,0,0.95073276,110.26319,10.94849)" + clip-path="url(#clipPath1)" + id="line95" + y2="134" + style="fill:none;stroke-width:1.0914222;font-family:sans-serif" + y1="137" + x2="1143" + x1="1141" /> + <line + transform="matrix(0.99857691,0,0,1,-21.617582,4.0018086)" + clip-path="url(#clipPath1)" + id="line97" + y2="134" + style="fill:none;stroke-width:1.00071228;font-family:sans-serif" + y1="134" + x2="1143" + x1="893" /> + <line + transform="matrix(0.77829741,0,0,0.81935345,230.00106,65.18762)" + clip-path="url(#clipPath1)" + id="line99" + y2="334" + style="fill:none;stroke-width:1.25225163;font-family:sans-serif" + y1="337" + x2="1143" + x1="1141" /> + <line + transform="translate(-23.244885,4.1988776)" + clip-path="url(#clipPath1)" + id="line101" + y2="334" + style="fill:none;font-family:sans-serif" + y1="134" + x2="1143" + x1="1143" /> + <rect + clip-path="url(#clipPath1)" + id="rect103" + height="197" + style="fill:#c6ebf9;stroke:none;font-family:sans-serif" + width="247" + y="139" + x="893" + transform="translate(-23.836092,4.0018086)" /> + <rect + clip-path="url(#clipPath1)" + id="rect105" + height="199" + style="fill:#ffffff;stroke:none;font-family:sans-serif" + width="1" + y="138" + x="892" + transform="translate(-23.836092,4.0018086)" /> + <rect + clip-path="url(#clipPath1)" + id="rect107" + height="1" + style="fill:#ffffff;stroke:none;font-family:sans-serif" + width="247" + y="138" + x="893" + transform="translate(-23.836092,4.0018086)" /> + <rect + clip-path="url(#clipPath1)" + id="rect109" + height="1" + style="fill:#8aa4ae;stroke:none;font-family:sans-serif" + width="248" + y="336" + x="893" + transform="translate(-23.836092,4.0018086)" /> + <rect + clip-path="url(#clipPath1)" + id="rect111" + height="198" + style="fill:#8aa4ae;stroke:none;font-family:sans-serif" + width="1" + y="138" + x="1140" + transform="translate(-23.836092,4.0018086)" /> + <text + clip-path="url(#clipPath1)" + id="text113" + xml:space="preserve" + style="font-weight:bold;stroke:none;font-family:sans-serif" + y="152" + x="975" + transform="translate(-23.836092,4.0018086)"><<CPURR>></text> + <text + clip-path="url(#clipPath1)" + id="text115" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="167" + x="999" + transform="translate(-23.836092,4.0018086)">CPU2</text> + <image + style="font-family:sans-serif" + clip-path="url(#clipPath1)" + id="image117" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAWklEQVR42mNgoCL4 D8X42HDAhM2Ec/d//SfEBgFGNFuJAYzIjP9kepGRbM1AL0CcAPKLkSIb0ZpGnT1Q zkZP22AFMMPQ2SAA5DPiTNv4AEwjNs2MSM7CxYYDAJ76RjSq+zXoAAAAAElFTkSu QmCC" + width="15" + y="141" + x="895" + transform="translate(-23.836092,4.0018086)" /> + <rect + clip-path="url(#clipPath1)" + id="rect119" + height="40" + style="fill:none;font-family:sans-serif" + width="171" + y="219" + x="933" + transform="translate(-23.836092,4.0018086)" /> + <rect + clip-path="url(#clipPath1)" + id="rect121" + height="39" + style="fill:#c6e3f9;stroke:none;font-family:sans-serif" + width="170" + y="220" + x="934" + transform="translate(-23.836092,4.0018086)" /> + <line + clip-path="url(#clipPath1)" + id="line123" + y2="249" + style="fill:none;font-family:sans-serif" + y1="224" + x2="1079" + x1="1079" + transform="translate(-23.836092,4.0018086)" /> + <line + clip-path="url(#clipPath1)" + id="line125" + y2="224" + style="fill:none;font-family:sans-serif" + y1="224" + x2="1094" + x1="1079" + transform="translate(-23.836092,4.0018086)" /> + <line + clip-path="url(#clipPath1)" + id="line127" + y2="229" + style="fill:none;font-family:sans-serif" + y1="224" + x2="1099" + x1="1094" + transform="translate(-23.836092,4.0018086)" /> + <line + clip-path="url(#clipPath1)" + id="line129" + y2="249" + style="fill:none;font-family:sans-serif" + y1="229" + x2="1099" + x1="1099" + transform="translate(-23.836092,4.0018086)" /> + <line + clip-path="url(#clipPath1)" + id="line131" + y2="249" + style="fill:none;font-family:sans-serif" + y1="249" + x2="1079" + x1="1099" + transform="translate(-23.836092,4.0018086)" /> + <line + clip-path="url(#clipPath1)" + id="line133" + y2="229" + style="fill:none;font-family:sans-serif" + y1="224" + x2="1094" + x1="1094" + transform="translate(-23.836092,4.0018086)" /> + <line + clip-path="url(#clipPath1)" + id="line135" + y2="229" + style="fill:none;font-family:sans-serif" + y1="229" + x2="1099" + x1="1094" + transform="translate(-23.836092,4.0018086)" /> + <text + clip-path="url(#clipPath1)" + id="text137" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="234" + x="938" + transform="translate(-23.836092,4.0018086)">NonSecureFV_enc::T2</text> + <rect + clip-path="url(#clipPath1)" + id="rect139" + height="97" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="1" + y="357" + x="569" + transform="translate(-28.912069,-16.856094)" /> + <rect + clip-path="url(#clipPath1)" + id="rect141" + height="1" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="249" + y="357" + x="570" + transform="translate(-28.912069,-16.856094)" /> + <rect + clip-path="url(#clipPath1)" + id="rect143" + height="1" + style="stroke:none;font-family:sans-serif" + width="250" + y="453" + x="570" + transform="translate(-28.912069,-16.856094)" /> + <rect + clip-path="url(#clipPath1)" + id="rect145" + height="96" + style="stroke:none;font-family:sans-serif" + width="1" + y="357" + x="819" + transform="translate(-28.912069,-16.856094)" /> + <line + transform="matrix(0.94457436,0,0,0.90146552,3.3087079,18.216026)" + clip-path="url(#clipPath1)" + id="line147" + y2="354" + style="fill:none;stroke-width:1.08369577;font-family:sans-serif" + y1="357" + x2="571" + x1="569" /> + <line + transform="matrix(0.87806979,0,0,0.9651628,71.541001,-4.1927706)" + clip-path="url(#clipPath1)" + id="line149" + y2="354" + style="fill:none;stroke-width:1.08626354;font-family:sans-serif" + y1="357" + x2="821" + x1="819" /> + <line + transform="matrix(0.99853193,0,0,1,-27.113814,-16.856094)" + clip-path="url(#clipPath1)" + id="line151" + y2="354" + style="fill:none;stroke-width:1.00073481;font-family:sans-serif" + y1="354" + x2="821" + x1="571" /> + <line + transform="matrix(0.85194189,0,0,0.81420159,93.201031,67.571865)" + clip-path="url(#clipPath1)" + id="line153" + y2="450" + style="fill:none;stroke-width:1.20068491;font-family:sans-serif" + y1="453" + x2="821" + x1="819" /> + <line + transform="translate(-28.319837,-16.629652)" + clip-path="url(#clipPath1)" + id="line155" + y2="450" + style="fill:none;font-family:sans-serif" + y1="354" + x2="821" + x1="821" /> + <rect + clip-path="url(#clipPath1)" + id="rect157" + height="93" + style="fill:#d7bc80;stroke:none;font-family:sans-serif" + width="247" + y="359" + x="571" + transform="translate(-28.912069,-16.856094)" /> + <rect + clip-path="url(#clipPath1)" + id="rect159" + height="95" + style="fill:#ffffb6;stroke:none;font-family:sans-serif" + width="1" + y="358" + x="570" + transform="translate(-28.912069,-16.856094)" /> + <rect + clip-path="url(#clipPath1)" + id="rect161" + height="1" + style="fill:#ffffb6;stroke:none;font-family:sans-serif" + width="247" + y="358" + x="571" + transform="translate(-28.912069,-16.856094)" /> + <rect + clip-path="url(#clipPath1)" + id="rect163" + height="1" + style="fill:#968359;stroke:none;font-family:sans-serif" + width="248" + y="452" + x="571" + transform="translate(-28.912069,-16.856094)" /> + <rect + clip-path="url(#clipPath1)" + id="rect165" + height="94" + style="fill:#968359;stroke:none;font-family:sans-serif" + width="1" + y="358" + x="818" + transform="translate(-28.912069,-16.856094)" /> + <text + clip-path="url(#clipPath1)" + id="text167" + xml:space="preserve" + style="font-weight:bold;stroke:none;font-family:sans-serif" + y="372" + x="651" + transform="translate(-28.912069,-16.856094)"><<BUS-RR>></text> + <text + clip-path="url(#clipPath1)" + id="text169" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="387" + x="668" + transform="translate(-28.912069,-16.856094)">MainBus</text> + <image + style="font-family:sans-serif" + clip-path="url(#clipPath1)" + id="image171" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAR0lEQVR42mNgGNng P6lqmJAFz93/RZIBjETaiA0wkq0Z6Eq4s8mzGs3PeBUbKbIx4FL3n4gAA6uBqWPC 4gqCLgW6gHGkpmcArSwgRFOuG2IAAAAASUVORK5CYII=" + width="15" + y="361" + x="573" + transform="translate(-28.912069,-16.856094)" /> + <rect + clip-path="url(#clipPath1)" + id="rect173" + height="40" + style="fill:none;font-family:sans-serif" + width="193" + y="398" + x="609" + transform="translate(-28.912069,-16.856094)" /> + <line + clip-path="url(#clipPath1)" + id="line175" + y2="428" + style="fill:none;font-family:sans-serif" + y1="403" + x2="777" + x1="777" + transform="translate(-28.912069,-16.856094)" /> + <line + clip-path="url(#clipPath1)" + id="line177" + y2="403" + style="fill:none;font-family:sans-serif" + y1="403" + x2="792" + x1="777" + transform="translate(-28.912069,-16.856094)" /> + <line + clip-path="url(#clipPath1)" + id="line179" + y2="408" + style="fill:none;font-family:sans-serif" + y1="403" + x2="797" + x1="792" + transform="translate(-28.912069,-16.856094)" /> + <line + clip-path="url(#clipPath1)" + id="line181" + y2="428" + style="fill:none;font-family:sans-serif" + y1="408" + x2="797" + x1="797" + transform="translate(-28.912069,-16.856094)" /> + <line + clip-path="url(#clipPath1)" + id="line183" + y2="428" + style="fill:none;font-family:sans-serif" + y1="428" + x2="777" + x1="797" + transform="translate(-28.912069,-16.856094)" /> + <line + clip-path="url(#clipPath1)" + id="line185" + y2="408" + style="fill:none;font-family:sans-serif" + y1="403" + x2="792" + x1="792" + transform="translate(-28.912069,-16.856094)" /> + <line + clip-path="url(#clipPath1)" + id="line187" + y2="408" + style="fill:none;font-family:sans-serif" + y1="408" + x2="797" + x1="792" + transform="translate(-28.912069,-16.856094)" /> + <text + clip-path="url(#clipPath1)" + id="text189" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="413" + x="614" + transform="translate(-28.912069,-16.856094)">NonSecureFV_enc::comm</text> + <text + clip-path="url(#clipPath1)" + id="text191" + xml:space="preserve" + style="font-style:italic;stroke:none;font-family:sans-serif" + y="433" + x="614" + transform="translate(-28.912069,-16.856094)">channel</text> + <rect + clip-path="url(#clipPath1)" + id="rect193" + height="140" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="1" + y="493" + x="592" + transform="matrix(1,0,0,0.64864194,-27.729655,138.62722)" /> + <rect + clip-path="url(#clipPath1)" + id="rect195" + height="1" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="204" + y="493" + x="593" + transform="translate(-27.729655,-34.592301)" /> + <line + clip-path="url(#clipPath1)" + id="line201" + y2="490" + style="fill:none;stroke-width:1.07604694;font-family:sans-serif" + y1="493" + x2="594" + x1="592" + transform="matrix(0.95209885,0,0,0.9071008,1.3071518,11.093786)" /> + <line + clip-path="url(#clipPath1)" + id="line203" + y2="490" + style="fill:none;font-family:sans-serif" + y1="493" + x2="799" + x1="797" + transform="translate(-27.089181,-34.370598)" /> + <line + clip-path="url(#clipPath1)" + id="line205" + y2="490" + style="fill:none;stroke-width:1.00027144;font-family:sans-serif" + y1="490" + x2="799" + x1="594" + transform="matrix(0.99945733,0,0,1,-26.458259,-34.592301)" /> + <line + clip-path="url(#clipPath1)" + id="line207" + y2="629" + style="fill:none;font-family:sans-serif" + y1="632" + x2="799" + x1="797" + transform="translate(-27.022044,-83.508321)" /> + <line + clip-path="url(#clipPath1)" + id="line209" + y2="629" + style="fill:none;stroke-width:1.24571478;font-family:sans-serif" + y1="490" + x2="799" + x1="799" + transform="matrix(1,0,0,0.64441072,-26.867478,139.63666)" /> + <rect + clip-path="url(#clipPath1)" + id="rect211" + height="136" + style="fill:#acead3;stroke:none;font-family:sans-serif" + width="202" + y="495" + x="594" + transform="matrix(1.0005347,0,0,0.64771399,-27.91143,139.27847)" /> + <rect + clip-path="url(#clipPath1)" + id="rect213" + height="138" + style="fill:#f5ffff;stroke:none;font-family:sans-serif" + width="1" + y="494" + x="593" + transform="matrix(1,0,0,0.62854625,-27.729655,148.90585)" /> + <rect + clip-path="url(#clipPath1)" + id="rect215" + height="1" + style="fill:#f5ffff;stroke:none;font-family:sans-serif" + width="202" + y="494" + x="594" + transform="translate(-27.729655,-34.592301)" /> + <rect + clip-path="url(#clipPath1)" + id="rect217" + height="1" + style="fill:#78a393;stroke:none;font-family:sans-serif" + width="203" + y="631" + x="594" + transform="matrix(0.99948516,0,0,1,-27.304901,-83.315116)" /> + <rect + clip-path="url(#clipPath1)" + id="rect219" + height="137" + style="fill:#78a393;stroke:none;font-family:sans-serif" + width="1" + y="494" + x="796" + transform="matrix(1,0,0,0.647872,-27.729655,139.35893)" /> + <text + clip-path="url(#clipPath1)" + id="text221" + xml:space="preserve" + style="font-weight:bold;stroke:none;font-family:sans-serif" + y="508" + x="648" + transform="translate(-27.729655,-34.592301)"><<MEMORY>></text> + <text + clip-path="url(#clipPath1)" + id="text223" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="523" + x="649" + transform="translate(-27.729655,-34.592301)">MainMemory</text> + <image + style="font-family:sans-serif" + clip-path="url(#clipPath1)" + id="image225" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAN0lEQVR42mNgGJKA EUr/J0cv2ZrP3f/FwESJs0c1k6mZETkKiGWTbbORIhsjsmZGJNOJYQ8gAACyshpS N3IeWgAAAABJRU5ErkJggg==" + width="15" + y="497" + x="596" + transform="translate(-27.729655,-34.592301)" /> + <rect + clip-path="url(#clipPath1)" + id="rect227" + height="40" + style="fill:none;font-family:sans-serif" + width="193" + y="548" + x="600" + transform="translate(-28.565748,-53.543738)" /> + <line + clip-path="url(#clipPath1)" + id="line229" + y2="578" + style="fill:none;font-family:sans-serif" + y1="553" + x2="768" + x1="768" + transform="translate(-28.565748,-53.543738)" /> + <line + clip-path="url(#clipPath1)" + id="line231" + y2="553" + style="fill:none;font-family:sans-serif" + y1="553" + x2="783" + x1="768" + transform="translate(-28.565748,-53.543738)" /> + <line + clip-path="url(#clipPath1)" + id="line233" + y2="558" + style="fill:none;font-family:sans-serif" + y1="553" + x2="788" + x1="783" + transform="translate(-28.565748,-53.543738)" /> + <line + clip-path="url(#clipPath1)" + id="line235" + y2="578" + style="fill:none;font-family:sans-serif" + y1="558" + x2="788" + x1="788" + transform="translate(-28.565748,-53.543738)" /> + <line + clip-path="url(#clipPath1)" + id="line237" + y2="578" + style="fill:none;font-family:sans-serif" + y1="578" + x2="768" + x1="788" + transform="translate(-28.565748,-53.543738)" /> + <line + clip-path="url(#clipPath1)" + id="line239" + y2="558" + style="fill:none;font-family:sans-serif" + y1="553" + x2="783" + x1="783" + transform="translate(-28.565748,-53.543738)" /> + <line + clip-path="url(#clipPath1)" + id="line241" + y2="558" + style="fill:none;font-family:sans-serif" + y1="558" + x2="788" + x1="783" + transform="translate(-28.565748,-53.543738)" /> + <text + clip-path="url(#clipPath1)" + id="text243" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="563" + x="605" + transform="translate(-28.565748,-53.543738)">NonSecureFV_enc::comm</text> + <text + clip-path="url(#clipPath1)" + id="text245" + xml:space="preserve" + style="font-style:italic;stroke:none;font-family:sans-serif" + y="583" + x="605" + transform="translate(-28.565748,-53.543738)">channel</text> + <rect + clip-path="url(#clipPath1)" + id="rect351" + height="51" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="1" + y="381" + x="971" + transform="translate(-53.099342,-15.228327)" /> + <rect + clip-path="url(#clipPath1)" + id="rect353" + height="1" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="249" + y="381" + x="972" + transform="translate(-53.099342,-15.228327)" /> + <rect + clip-path="url(#clipPath1)" + id="rect355" + height="1" + style="stroke:none;font-family:sans-serif" + width="250" + y="431" + x="972" + transform="translate(-53.099342,-15.228327)" /> + <rect + clip-path="url(#clipPath1)" + id="rect357" + height="50" + style="stroke:none;font-family:sans-serif" + width="1" + y="381" + x="1221" + transform="translate(-53.099342,-15.228327)" /> + <line + transform="matrix(0.87806979,0,0,0.9187132,65.974218,15.637435)" + clip-path="url(#clipPath1)" + id="line359" + y2="378" + style="fill:none;stroke-width:1.11338532;font-family:sans-serif" + y1="381" + x2="973" + x1="971" /> + <line + transform="matrix(0.86936049,0,0,0.9593566,107.02115,0.44841473)" + clip-path="url(#clipPath1)" + id="line361" + y2="378" + style="fill:none;stroke-width:1.09498966;font-family:sans-serif" + y1="381" + x2="1223" + x1="1221" /> + <line + transform="matrix(0.99923661,0,0,1,-51.55568,-15.228327)" + clip-path="url(#clipPath1)" + id="line363" + y2="378" + style="fill:none;stroke-width:1.00038183;font-family:sans-serif" + y1="378" + x2="1223" + x1="973" /> + <line + transform="matrix(0.83887794,0,0,0.83742639,144.46679,55.154434)" + clip-path="url(#clipPath1)" + id="line365" + y2="428" + style="fill:none;stroke-width:1.19310117;font-family:sans-serif" + y1="431" + x2="1223" + x1="1221" /> + <line + transform="translate(-52.489691,-15.036722)" + clip-path="url(#clipPath1)" + id="line367" + y2="428" + style="fill:none;font-family:sans-serif" + y1="378" + x2="1223" + x1="1223" /> + <rect + clip-path="url(#clipPath1)" + id="rect369" + height="47" + style="fill:#d7bc80;stroke:none;font-family:sans-serif" + width="247" + y="383" + x="973" + transform="translate(-53.099342,-15.228327)" /> + <rect + clip-path="url(#clipPath1)" + id="rect371" + height="49" + style="fill:#ffffb6;stroke:none;font-family:sans-serif" + width="1" + y="382" + x="972" + transform="translate(-53.099342,-15.228327)" /> + <rect + clip-path="url(#clipPath1)" + id="rect373" + height="1" + style="fill:#ffffb6;stroke:none;font-family:sans-serif" + width="247" + y="382" + x="973" + transform="translate(-53.099342,-15.228327)" /> + <rect + clip-path="url(#clipPath1)" + id="rect375" + height="1" + style="fill:#968359;stroke:none;font-family:sans-serif" + width="248" + y="430" + x="973" + transform="translate(-53.099342,-15.228327)" /> + <rect + clip-path="url(#clipPath1)" + id="rect377" + height="48" + style="fill:#968359;stroke:none;font-family:sans-serif" + width="1" + y="382" + x="1220" + transform="translate(-53.099342,-15.228327)" /> + <text + clip-path="url(#clipPath1)" + id="text379" + xml:space="preserve" + style="font-weight:bold;stroke:none;font-family:sans-serif" + y="396" + x="1053" + transform="translate(-53.099342,-15.228327)"><<BUS-RR>></text> + <text + clip-path="url(#clipPath1)" + id="text381" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="411" + x="1051" + transform="translate(-53.099342,-15.228327)">HSMBus_CPU2</text> + <image + style="font-family:sans-serif" + clip-path="url(#clipPath1)" + id="image383" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAR0lEQVR42mNgGNng P6lqmJAFz93/RZIBjETaiA0wkq0Z6Eq4s8mzGs3PeBUbKbIx4FL3n4gAA6uBqWPC 4gqCLgW6gHGkpmcArSwgRFOuG2IAAAAASUVORK5CYII=" + width="15" + y="385" + x="975" + transform="translate(-53.099342,-15.228327)" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon385" + points="975,416 975,399 978,403 981,403 984,399 987,403 990,403 993,399 993,416 984,424 " + style="fill:#00ff00;stroke:none;font-family:sans-serif" + transform="translate(-53.099342,-15.228327)" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon387" + points="975,416 975,399 978,403 981,403 984,399 987,403 990,403 993,399 993,416 984,424 " + style="fill:none;font-family:sans-serif" + transform="translate(-53.099342,-15.228327)" /> + <rect + clip-path="url(#clipPath1)" + id="rect389" + height="114" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="1" + y="467" + x="353" + transform="matrix(1,0,0,0.98141674,-65.763967,-20.913919)" /> + <rect + clip-path="url(#clipPath1)" + id="rect391" + height="1" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="199" + y="467" + x="354" + transform="translate(-65.763967,-29.592301)" /> + <rect + clip-path="url(#clipPath1)" + id="rect393" + height="1" + style="stroke:none;font-family:sans-serif" + width="200" + y="580" + x="354" + transform="translate(-66.256639,-31.661525)" /> + <line + transform="matrix(0.86451508,0,0,0.90967672,-17.248049,12.465502)" + clip-path="url(#clipPath1)" + id="line397" + y2="464" + style="fill:none;stroke-width:1.12763917;font-family:sans-serif" + y1="467" + x2="355" + x1="353" /> + <line + transform="matrix(0.84911907,0,0,0.93020474,18.265421,3.141435)" + clip-path="url(#clipPath1)" + id="line399" + y2="464" + style="fill:none;stroke-width:1.12519145;font-family:sans-serif" + y1="467" + x2="555" + x1="553" /> + <line + transform="matrix(0.99941781,0,0,1,-64.8432,-29.592301)" + clip-path="url(#clipPath1)" + id="line401" + y2="464" + style="fill:none;stroke-width:1.00029123;font-family:sans-serif" + y1="464" + x2="555" + x1="355" /> + <line + transform="matrix(0.7782974,0,0,0.84603987,57.630068,57.933526)" + clip-path="url(#clipPath1)" + id="line403" + y2="577" + style="fill:none;stroke-width:1.23234355;font-family:sans-serif" + y1="580" + x2="555" + x1="553" /> + <line + transform="matrix(1,0,0,0.98181743,-65.171735,-21.025329)" + clip-path="url(#clipPath1)" + id="line405" + y2="577" + style="fill:none;stroke-width:1.00921714;font-family:sans-serif" + y1="464" + x2="555" + x1="555" /> + <rect + clip-path="url(#clipPath1)" + id="rect407" + height="110" + style="fill:#acead3;stroke:none;font-family:sans-serif" + width="197" + y="469" + x="355" + transform="matrix(1,0,0,0.98768319,-65.763967,-23.828034)" /> + <rect + clip-path="url(#clipPath1)" + id="rect409" + height="112" + style="fill:#f5ffff;stroke:none;font-family:sans-serif" + width="1" + y="468" + x="354" + transform="matrix(1,0,0,0.98141481,-65.72913,-20.889119)" /> + <rect + clip-path="url(#clipPath1)" + id="rect411" + height="1" + style="fill:#f5ffff;stroke:none;font-family:sans-serif" + width="197" + y="468" + x="355" + transform="translate(-65.763967,-29.592301)" /> + <rect + clip-path="url(#clipPath1)" + id="rect413" + height="1" + style="fill:#78a393;stroke:none;font-family:sans-serif" + width="198" + y="579" + x="355" + transform="matrix(1,0,0,0.98768319,-65.72913,-24.524778)" /> + <rect + clip-path="url(#clipPath1)" + id="rect415" + height="111" + style="fill:#78a393;stroke:none;font-family:sans-serif" + width="1" + y="468" + x="552" + transform="matrix(1,0,0,0.9898263,-65.746548,-24.788929)" /> + <text + clip-path="url(#clipPath1)" + id="text417" + xml:space="preserve" + style="font-weight:bold;stroke:none;font-family:sans-serif" + y="482" + x="407" + transform="translate(-65.763967,-29.592301)"><<MEMORY>></text> + <text + clip-path="url(#clipPath1)" + id="text419" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="497" + x="388" + transform="translate(-65.763967,-29.592301)">HSMMemory_CPU1</text> + <image + style="font-family:sans-serif" + clip-path="url(#clipPath1)" + id="image421" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAN0lEQVR42mNgGJKA EUr/J0cv2ZrP3f/FwESJs0c1k6mZETkKiGWTbbORIhsjsmZGJNOJYQ8gAACyshpS N3IeWgAAAABJRU5ErkJggg==" + width="15" + y="471" + x="357" + transform="translate(-65.763967,-29.592301)" /> + <rect + clip-path="url(#clipPath1)" + id="rect423" + height="40" + style="fill:none;font-family:sans-serif" + width="144" + y="515" + x="377" + transform="translate(-65.763967,-29.592301)" /> + <rect + clip-path="url(#clipPath1)" + id="rect425" + height="39" + style="fill:#ace2d3;stroke:none;font-family:sans-serif" + width="143" + y="516" + x="378" + transform="translate(-65.763967,-29.592301)" /> + <circle + sodipodi:ry="6.5" + sodipodi:rx="6.5" + sodipodi:cy="526.5" + sodipodi:cx="507.5" + d="m 514,526.5 c 0,3.58985 -2.91015,6.5 -6.5,6.5 -3.58985,0 -6.5,-2.91015 -6.5,-6.5 0,-3.58985 2.91015,-6.5 6.5,-6.5 3.58985,0 6.5,2.91015 6.5,6.5 z" + clip-path="url(#clipPath1)" + id="circle427" + cy="526.5" + cx="507.5" + r="6.5" + style="stroke:none;font-family:sans-serif" + transform="translate(-65.763967,-29.592301)" /> + <rect + clip-path="url(#clipPath1)" + id="rect429" + height="25" + style="stroke:none;font-family:sans-serif" + width="3" + y="520" + x="506" + transform="translate(-65.763967,-29.592301)" /> + <rect + clip-path="url(#clipPath1)" + id="rect431" + height="3" + style="stroke:none;font-family:sans-serif" + width="8" + y="545" + x="506" + transform="translate(-65.763967,-29.592301)" /> + <rect + clip-path="url(#clipPath1)" + id="rect433" + height="3" + style="stroke:none;font-family:sans-serif" + width="8" + y="541" + x="506" + transform="translate(-65.763967,-29.592301)" /> + <text + clip-path="url(#clipPath1)" + id="text435" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="530" + x="382" + transform="translate(-65.763967,-29.592301)">autoEncrypt_comm</text> + <text + clip-path="url(#clipPath1)" + id="text437" + xml:space="preserve" + style="font-style:italic;stroke:none;font-family:sans-serif" + y="550" + x="382" + transform="translate(-65.763967,-29.592301)">key</text> + <rect + clip-path="url(#clipPath1)" + id="rect439" + height="112" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="1" + y="470" + x="98" + transform="translate(-70.493622,-32.720146)" /> + <rect + clip-path="url(#clipPath1)" + id="rect441" + height="1" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="244" + y="470" + x="99" + transform="translate(-70.493622,-32.720146)" /> + <rect + clip-path="url(#clipPath1)" + id="rect443" + height="1" + style="stroke:none;font-family:sans-serif" + width="245" + y="581" + x="99" + transform="translate(-70.493622,-32.720146)" /> + <rect + clip-path="url(#clipPath1)" + id="rect445" + height="111" + style="stroke:none;font-family:sans-serif" + width="1" + y="470" + x="343" + transform="translate(-70.493622,-32.720146)" /> + <line + transform="matrix(0.86936049,0,0,0.9245194,-57.011625,2.6512265)" + clip-path="url(#clipPath1)" + id="line447" + y2="467" + style="fill:none;stroke-width:1.11542928;font-family:sans-serif" + y1="470" + x2="100" + x1="98" /> + <line + transform="matrix(0.82581399,0,0,0.9651628,-10.225263,-16.172474)" + clip-path="url(#clipPath1)" + id="line449" + y2="467" + style="fill:none;stroke-width:1.12010467;font-family:sans-serif" + y1="470" + x2="345" + x1="343" /> + <line + transform="matrix(0.99865463,0,0,1,-69.523662,-32.720146)" + clip-path="url(#clipPath1)" + id="line451" + y2="467" + style="fill:none;stroke-width:1.00067341;font-family:sans-serif" + y1="467" + x2="345" + x1="100" /> + <line + transform="matrix(0.78041064,0,0,0.84158206,5.6138053,59.640917)" + clip-path="url(#clipPath1)" + id="line453" + y2="578" + style="fill:none;stroke-width:1.23392904;font-family:sans-serif" + y1="581" + x2="345" + x1="343" /> + <line + transform="translate(-69.971064,-32.54596)" + clip-path="url(#clipPath1)" + id="line455" + y2="578" + style="fill:none;font-family:sans-serif" + y1="467" + x2="345" + x1="345" /> + <rect + clip-path="url(#clipPath1)" + id="rect457" + height="108" + style="fill:#90c9d3;stroke:none;font-family:sans-serif" + width="242" + y="472" + x="100" + transform="translate(-70.493622,-32.720146)" /> + <rect + clip-path="url(#clipPath1)" + id="rect459" + height="110" + style="fill:#cdffff;stroke:none;font-family:sans-serif" + width="1" + y="471" + x="99" + transform="translate(-70.493622,-32.720146)" /> + <rect + clip-path="url(#clipPath1)" + id="rect461" + height="1" + style="fill:#cdffff;stroke:none;font-family:sans-serif" + width="242" + y="471" + x="100" + transform="translate(-70.493622,-32.720146)" /> + <rect + clip-path="url(#clipPath1)" + id="rect463" + height="1" + style="fill:#648c93;stroke:none;font-family:sans-serif" + width="243" + y="580" + x="100" + transform="translate(-70.493622,-32.720146)" /> + <rect + clip-path="url(#clipPath1)" + id="rect465" + height="109" + style="fill:#648c93;stroke:none;font-family:sans-serif" + width="1" + y="471" + x="342" + transform="translate(-70.493622,-32.720146)" /> + <text + clip-path="url(#clipPath1)" + id="text467" + xml:space="preserve" + style="font-weight:bold;stroke:none;font-family:sans-serif" + y="485" + x="186" + transform="translate(-70.493622,-32.720146)"><<HWA>></text> + <text + clip-path="url(#clipPath1)" + id="text469" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="500" + x="187" + transform="translate(-70.493622,-32.720146)">HSM_CPU1</text> + <image + style="font-family:sans-serif" + clip-path="url(#clipPath1)" + id="image471" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAARElEQVR42mNgoBL4 D8XEshmY0E04d//Xf2LZjEgmkgoYydYMtB3T2aSAUc1kamZEjgJi2WTbbKTIxois mRHJdGLYAwgA0yQw5H1+PIsAAAAASUVORK5CYII=" + width="15" + y="474" + x="102" + transform="translate(-70.493622,-32.720146)" /> + <rect + clip-path="url(#clipPath1)" + id="rect473" + height="40" + style="fill:none;font-family:sans-serif" + width="222" + y="523" + x="105" + transform="translate(-70.493622,-32.720146)" /> + <rect + clip-path="url(#clipPath1)" + id="rect475" + height="39" + style="fill:#c6e3f9;stroke:none;font-family:sans-serif" + width="221" + y="524" + x="106" + transform="translate(-70.493622,-32.720146)" /> + <line + clip-path="url(#clipPath1)" + id="line477" + y2="553" + style="fill:none;font-family:sans-serif" + y1="528" + x2="302" + x1="302" + transform="translate(-70.493622,-32.720146)" /> + <line + clip-path="url(#clipPath1)" + id="line479" + y2="528" + style="fill:none;font-family:sans-serif" + y1="528" + x2="317" + x1="302" + transform="translate(-70.493622,-32.720146)" /> + <line + clip-path="url(#clipPath1)" + id="line481" + y2="533" + style="fill:none;font-family:sans-serif" + y1="528" + x2="322" + x1="317" + transform="translate(-70.493622,-32.720146)" /> + <line + clip-path="url(#clipPath1)" + id="line483" + y2="553" + style="fill:none;font-family:sans-serif" + y1="533" + x2="322" + x1="322" + transform="translate(-70.493622,-32.720146)" /> + <line + clip-path="url(#clipPath1)" + id="line485" + y2="553" + style="fill:none;font-family:sans-serif" + y1="553" + x2="302" + x1="322" + transform="translate(-70.493622,-32.720146)" /> + <line + clip-path="url(#clipPath1)" + id="line487" + y2="533" + style="fill:none;font-family:sans-serif" + y1="528" + x2="317" + x1="317" + transform="translate(-70.493622,-32.720146)" /> + <line + clip-path="url(#clipPath1)" + id="line489" + y2="533" + style="fill:none;font-family:sans-serif" + y1="533" + x2="322" + x1="317" + transform="translate(-70.493622,-32.720146)" /> + <text + clip-path="url(#clipPath1)" + id="text491" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="538" + x="110" + transform="translate(-70.493622,-32.720146)">NonSecureFV_enc::HSM_CPU1</text> + <rect + clip-path="url(#clipPath1)" + id="rect493" + height="51" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="1" + y="371" + x="173" + transform="translate(-23,-4.6378174)" /> + <rect + clip-path="url(#clipPath1)" + id="rect495" + height="1" + style="fill:#030303;stroke:none;font-family:sans-serif" + width="249" + y="371" + x="174" + transform="translate(-23,-4.6378174)" /> + <rect + clip-path="url(#clipPath1)" + id="rect497" + height="1" + style="stroke:none;font-family:sans-serif" + width="250" + y="421" + x="174" + transform="translate(-23,-4.6378174)" /> + <rect + clip-path="url(#clipPath1)" + id="rect499" + height="50" + style="stroke:none;font-family:sans-serif" + width="1" + y="371" + x="423" + transform="translate(-23,-4.6378174)" /> + <line + transform="matrix(1.0261279,0,0,0.9303256,-26.875639,21.176549)" + clip-path="url(#clipPath1)" + id="line501" + y2="368" + style="fill:none;stroke-width:1.02348566;font-family:sans-serif" + y1="371" + x2="175" + x1="173" /> + <line + transform="translate(-22.512279,-4.4287942)" + clip-path="url(#clipPath1)" + id="line503" + y2="368" + style="fill:none;font-family:sans-serif" + y1="371" + x2="425" + x1="423" /> + <line + transform="matrix(0.9956974,0,0,1,-21.169243,-4.6378174)" + clip-path="url(#clipPath1)" + id="line505" + y2="368" + style="fill:none;stroke-width:1.00215828;font-family:sans-serif" + y1="368" + x2="425" + x1="175" /> + <line + transform="matrix(0.88299029,0,0,0.81730064,27.435709,72.557311)" + clip-path="url(#clipPath1)" + id="line507" + y2="418" + style="fill:none;stroke-width:1.17714822;font-family:sans-serif" + y1="421" + x2="425" + x1="423" /> + <line + transform="translate(-22.059396,-4.3591198)" + clip-path="url(#clipPath1)" + id="line509" + y2="418" + style="fill:none;font-family:sans-serif" + y1="368" + x2="425" + x1="425" /> + <rect + clip-path="url(#clipPath1)" + id="rect511" + height="47" + style="fill:#d7bc80;stroke:none;font-family:sans-serif" + width="247" + y="373" + x="175" + transform="translate(-23,-4.6378174)" /> + <rect + clip-path="url(#clipPath1)" + id="rect513" + height="49" + style="fill:#ffffb6;stroke:none;font-family:sans-serif" + width="1" + y="372" + x="174" + transform="translate(-23,-4.6378174)" /> + <rect + clip-path="url(#clipPath1)" + id="rect515" + height="1" + style="fill:#ffffb6;stroke:none;font-family:sans-serif" + width="247" + y="372" + x="175" + transform="translate(-23,-4.6378174)" /> + <rect + clip-path="url(#clipPath1)" + id="rect517" + height="1" + style="fill:#968359;stroke:none;font-family:sans-serif" + width="248" + y="420" + x="175" + transform="translate(-23,-4.6378174)" /> + <rect + clip-path="url(#clipPath1)" + id="rect519" + height="48" + style="fill:#968359;stroke:none;font-family:sans-serif" + width="1" + y="372" + x="422" + transform="translate(-23,-4.6378174)" /> + <text + clip-path="url(#clipPath1)" + id="text521" + xml:space="preserve" + style="font-weight:bold;stroke:none;font-family:sans-serif" + y="386" + x="255" + transform="translate(-23,-4.6378174)"><<BUS-RR>></text> + <text + clip-path="url(#clipPath1)" + id="text523" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="401" + x="253" + transform="translate(-23,-4.6378174)">HSMBus_CPU1</text> + <image + style="font-family:sans-serif" + clip-path="url(#clipPath1)" + id="image525" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAR0lEQVR42mNgGNng P6lqmJAFz93/RZIBjETaiA0wkq0Z6Eq4s8mzGs3PeBUbKbIx4FL3n4gAA6uBqWPC 4gqCLgW6gHGkpmcArSwgRFOuG2IAAAAASUVORK5CYII=" + width="15" + y="375" + x="177" + transform="translate(-23,-4.6378174)" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon527" + points="186,414 177,406 177,389 180,393 183,393 186,389 189,393 192,393 195,389 195,406 " + style="fill:#00ff00;stroke:none;font-family:sans-serif" + transform="translate(-23,-4.6378174)" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon529" + points="186,414 177,406 177,389 180,393 183,393 186,389 189,393 192,393 195,389 195,406 " + style="fill:none;font-family:sans-serif" + transform="translate(-23,-4.6378174)" /> + <rect + clip-path="url(#clipPath1)" + id="rect65" + height="40" + style="fill:none;font-family:sans-serif" + width="171" + y="213" + x="288" + transform="translate(-23.278698,-2.9656317)" /> + <rect + clip-path="url(#clipPath1)" + id="rect395" + height="113" + style="stroke:none;font-family:sans-serif" + width="1" + y="467" + x="553" + transform="matrix(1,0,0,0.99044289,-65.763967,-25.129131)" /> + <line + transform="matrix(-0.00309774,0,0,0.34378446,968.19577,271.97457)" + clip-path="url(#clipPath1-2)" + id="line27-2" + y2="421" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:30.64323044;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="470" + x2="235" + x1="220" /> + <line + transform="matrix(-0.00299522,0,0,0.35738379,1135.591,266.15073)" + clip-path="url(#clipPath1-2)" + id="line29-5" + y2="421" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:30.56455231;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="467" + x2="360" + x1="403" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect389-1" + height="114" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#030303;fill-opacity:1;stroke:none;font-family:sans-serif" + width="1" + y="467" + x="353" + transform="matrix(1,0,0,0.98141674,732.45315,-21.750679)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect391-0" + height="1" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#030303;fill-opacity:1;stroke:none;font-family:sans-serif" + width="199" + y="467" + x="354" + transform="translate(732.45315,-30.429069)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect393-6" + height="1" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + width="200" + y="580" + x="354" + transform="translate(731.96047,-32.498289)" /> + <line + transform="matrix(0.86451508,0,0,0.90967672,780.96906,11.628741)" + clip-path="url(#clipPath1-2)" + id="line397-2" + y2="464" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.12763917;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="467" + x2="355" + x1="353" /> + <line + transform="matrix(0.84911907,0,0,0.93020474,816.48253,2.3046707)" + clip-path="url(#clipPath1-2)" + id="line399-1" + y2="464" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.12519145;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="467" + x2="555" + x1="553" /> + <line + transform="matrix(0.99941781,0,0,1,733.37391,-30.429069)" + clip-path="url(#clipPath1-2)" + id="line401-8" + y2="464" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.00029123;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="464" + x2="555" + x1="355" /> + <line + transform="matrix(0.7782974,0,0,0.84603987,855.84717,57.096759)" + clip-path="url(#clipPath1-2)" + id="line403-6" + y2="577" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.23234355;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="580" + x2="555" + x1="553" /> + <line + transform="matrix(1,0,0,0.98181743,733.04538,-21.862089)" + clip-path="url(#clipPath1-2)" + id="line405-6" + y2="577" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.00921714;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="464" + x2="555" + x1="555" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect407-9" + height="110" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#acead3;fill-opacity:1;stroke:none;font-family:sans-serif" + width="197" + y="469" + x="355" + transform="matrix(1,0,0,0.98768319,732.45315,-24.664799)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect409-4" + height="112" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#f5ffff;fill-opacity:1;stroke:none;font-family:sans-serif" + width="1" + y="468" + x="354" + transform="matrix(1,0,0,0.98141481,732.48798,-21.725879)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect411-3" + height="1" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#f5ffff;fill-opacity:1;stroke:none;font-family:sans-serif" + width="197" + y="468" + x="355" + transform="translate(732.45315,-30.429069)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect413-3" + height="1" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#78a393;fill-opacity:1;stroke:none;font-family:sans-serif" + width="198" + y="579" + x="355" + transform="matrix(1,0,0,0.98768319,732.48798,-25.361539)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect415-6" + height="111" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#78a393;fill-opacity:1;stroke:none;font-family:sans-serif" + width="1" + y="468" + x="552" + transform="matrix(1,0,0,0.9898263,732.47056,-25.625689)" /> + <text + clip-path="url(#clipPath1-2)" + id="text417-0" + xml:space="preserve" + style="font-size:12px;font-style:normal;font-weight:bold;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + y="482" + x="407" + transform="translate(732.45315,-30.429069)"><<MEMORY>></text> + <text + clip-path="url(#clipPath1-2)" + id="text419-6" + xml:space="preserve" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + y="497" + x="388" + transform="translate(732.45315,-30.429069)">HSMMemory_CPU2</text> + <image + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + clip-path="url(#clipPath1-2)" + id="image421-5" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAN0lEQVR42mNgGJKA EUr/J0cv2ZrP3f/FwESJs0c1k6mZETkKiGWTbbORIhsjsmZGJNOJYQ8gAACyshpS N3IeWgAAAABJRU5ErkJggg==" + width="15" + y="471" + x="357" + transform="translate(732.45315,-30.429069)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect423-9" + height="40" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + width="144" + y="515" + x="377" + transform="translate(732.45315,-30.429069)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect425-9" + height="39" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#ace2d3;fill-opacity:1;stroke:none;font-family:sans-serif" + width="143" + y="516" + x="378" + transform="translate(732.45315,-30.429069)" /> + <circle + sodipodi:ry="6.5" + sodipodi:rx="6.5" + sodipodi:cy="526.5" + sodipodi:cx="507.5" + d="m 514,526.5 c 0,3.58985 -2.91015,6.5 -6.5,6.5 -3.58985,0 -6.5,-2.91015 -6.5,-6.5 0,-3.58985 2.91015,-6.5 6.5,-6.5 3.58985,0 6.5,2.91015 6.5,6.5 z" + clip-path="url(#clipPath1-2)" + id="circle427-8" + cy="526.5" + cx="507.5" + r="6.5" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + transform="translate(732.45315,-30.429069)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect429-4" + height="25" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + width="3" + y="520" + x="506" + transform="translate(732.45315,-30.429069)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect431-3" + height="3" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + width="8" + y="545" + x="506" + transform="translate(732.45315,-30.429069)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect433-5" + height="3" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + width="8" + y="541" + x="506" + transform="translate(732.45315,-30.429069)" /> + <text + clip-path="url(#clipPath1-2)" + id="text435-9" + xml:space="preserve" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + y="530" + x="382" + transform="translate(732.45315,-30.429069)">autoEncrypt_comm</text> + <text + clip-path="url(#clipPath1-2)" + id="text437-5" + xml:space="preserve" + style="font-size:12px;font-style:italic;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + y="550" + x="382" + transform="translate(732.45315,-30.429069)">key</text> + <rect + clip-path="url(#clipPath1-2)" + id="rect439-3" + height="112" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#030303;fill-opacity:1;stroke:none;font-family:sans-serif" + width="1" + y="470" + x="98" + transform="translate(727.72349,-33.556909)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect441-3" + height="1" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#030303;fill-opacity:1;stroke:none;font-family:sans-serif" + width="244" + y="470" + x="99" + transform="translate(727.72349,-33.556909)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect443-6" + height="1" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + width="245" + y="581" + x="99" + transform="translate(727.72349,-33.556909)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect445-7" + height="111" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + width="1" + y="470" + x="343" + transform="translate(727.72349,-33.556909)" /> + <line + transform="matrix(0.86936049,0,0,0.9245194,741.20549,1.8144607)" + clip-path="url(#clipPath1-2)" + id="line447-3" + y2="467" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.11542928;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="470" + x2="100" + x1="98" /> + <line + transform="matrix(0.82581399,0,0,0.9651628,787.99185,-17.009239)" + clip-path="url(#clipPath1-2)" + id="line449-8" + y2="467" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.12010467;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="470" + x2="345" + x1="343" /> + <line + transform="matrix(0.99865463,0,0,1,728.69345,-33.556909)" + clip-path="url(#clipPath1-2)" + id="line451-2" + y2="467" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.00067341;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="467" + x2="345" + x1="100" /> + <line + transform="matrix(0.78041064,0,0,0.84158206,803.83092,58.804149)" + clip-path="url(#clipPath1-2)" + id="line453-6" + y2="578" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.23392904;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="581" + x2="345" + x1="343" /> + <line + transform="translate(728.24605,-33.382729)" + clip-path="url(#clipPath1-2)" + id="line455-0" + y2="578" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="467" + x2="345" + x1="345" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect457-0" + height="108" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#90c9d3;fill-opacity:1;stroke:none;font-family:sans-serif" + width="242" + y="472" + x="100" + transform="translate(727.72349,-33.556909)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect459-0" + height="110" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#cdffff;fill-opacity:1;stroke:none;font-family:sans-serif" + width="1" + y="471" + x="99" + transform="translate(727.72349,-33.556909)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect461-4" + height="1" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#cdffff;fill-opacity:1;stroke:none;font-family:sans-serif" + width="242" + y="471" + x="100" + transform="translate(727.72349,-33.556909)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect463-8" + height="1" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#648c93;fill-opacity:1;stroke:none;font-family:sans-serif" + width="243" + y="580" + x="100" + transform="translate(727.72349,-33.556909)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect465-6" + height="109" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#648c93;fill-opacity:1;stroke:none;font-family:sans-serif" + width="1" + y="471" + x="342" + transform="translate(727.72349,-33.556909)" /> + <text + clip-path="url(#clipPath1-2)" + id="text467-0" + xml:space="preserve" + style="font-size:12px;font-style:normal;font-weight:bold;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + y="485" + x="186" + transform="translate(727.72349,-33.556909)"><<HWA>></text> + <text + clip-path="url(#clipPath1-2)" + id="text469-8" + xml:space="preserve" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + y="500" + x="187" + transform="translate(727.72349,-33.556909)">HSM_CPU2</text> + <image + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + clip-path="url(#clipPath1-2)" + id="image471-0" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAARElEQVR42mNgoBL4 D8XEshmY0E04d//Xf2LZjEgmkgoYydYMtB3T2aSAUc1kamZEjgJi2WTbbKTIxois mRHJdGLYAwgA0yQw5H1+PIsAAAAASUVORK5CYII=" + width="15" + y="474" + x="102" + transform="translate(727.72349,-33.556909)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect473-5" + height="40" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + width="222" + y="523" + x="105" + transform="translate(727.72349,-33.556909)" /> + <rect + clip-path="url(#clipPath1-2)" + id="rect475-3" + height="39" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#c6e3f9;fill-opacity:1;stroke:none;font-family:sans-serif" + width="221" + y="524" + x="106" + transform="translate(727.72349,-33.556909)" /> + <line + clip-path="url(#clipPath1-2)" + id="line477-7" + y2="553" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="528" + x2="302" + x1="302" + transform="translate(727.72349,-33.556909)" /> + <line + clip-path="url(#clipPath1-2)" + id="line479-8" + y2="528" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="528" + x2="317" + x1="302" + transform="translate(727.72349,-33.556909)" /> + <line + clip-path="url(#clipPath1-2)" + id="line481-9" + y2="533" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="528" + x2="322" + x1="317" + transform="translate(727.72349,-33.556909)" /> + <line + clip-path="url(#clipPath1-2)" + id="line483-4" + y2="553" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="533" + x2="322" + x1="322" + transform="translate(727.72349,-33.556909)" /> + <line + clip-path="url(#clipPath1-2)" + id="line485-7" + y2="553" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="553" + x2="302" + x1="322" + transform="translate(727.72349,-33.556909)" /> + <line + clip-path="url(#clipPath1-2)" + id="line487-1" + y2="533" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="528" + x2="317" + x1="317" + transform="translate(727.72349,-33.556909)" /> + <line + clip-path="url(#clipPath1-2)" + id="line489-2" + y2="533" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="533" + x2="322" + x1="317" + transform="translate(727.72349,-33.556909)" /> + <text + clip-path="url(#clipPath1-2)" + id="text491-4" + xml:space="preserve" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + y="538" + x="110" + transform="translate(727.72349,-33.556909)">NonSecureFV_enc::HSM_CPU2</text> + <rect + clip-path="url(#clipPath1-2)" + id="rect395-6" + height="113" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + width="1" + y="467" + x="553" + transform="matrix(1,0,0,0.99044289,732.45315,-25.965899)" /> + <rect + clip-path="url(#clipPath1)" + id="rect197" + height="1" + style="stroke:none;font-family:sans-serif" + width="205" + y="632" + x="593" + transform="matrix(1,0,0,0.62854625,-27.889411,151.32405)" /> + <rect + clip-path="url(#clipPath1)" + id="rect199" + height="139" + style="stroke:none;font-family:sans-serif" + width="1" + y="493" + x="797" + transform="matrix(1,0,0,0.65729539,-27.729655,133.33297)" /> + </g> +</svg> diff --git a/doc/SysMLSec/fig/hsmfunc.svg b/doc/SysMLSec/fig/hsmfunc.svg new file mode 100644 index 0000000000000000000000000000000000000000..361bd8de07fc3d58c29fba8b411e8bcf3f87aa29 --- /dev/null +++ b/doc/SysMLSec/fig/hsmfunc.svg @@ -0,0 +1,891 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:Dialog" + id="svg2" + version="1.1" + inkscape:version="0.48.4 r9939" + width="1269.9756" + height="151.32782" + sodipodi:docname="hsmfunc.svg"> + <rect + x="1297" + y="209" + width="226" + style="fill:#c9f3bc;fill-opacity:0.78430002;stroke:none;font-family:sans-serif" + height="149" + id="rect141" + clip-path="url(#clipPath1)" + transform="matrix(0.89839999,0,0,0.97749685,-98.42336,-200.95206)" /> + <g + id="g19" + style="fill:#c9f3bc;fill-opacity:0.78430002;stroke:#c9f3bc;stroke-width:0.99780333;stroke-opacity:0.78430002;font-family:sans-serif" + transform="matrix(0.99875588,0,0,1.0056591,-228.31388,-218.57405)"> + <rect + clip-path="url(#clipPath1)" + id="rect21" + height="149" + style="stroke:none" + width="199" + y="218" + x="604" /> + </g> + <rect + x="932" + y="220" + width="199" + style="fill:#c9f3bc;fill-opacity:0.78430002;stroke:none;font-family:sans-serif" + height="149" + id="rect77" + clip-path="url(#clipPath1)" + transform="matrix(1.0049765,0,0,0.99444811,-234.69187,-216.12073)" /> + <metadata + id="metadata243"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="2048" + inkscape:window-height="1086" + id="namedview241" + showgrid="false" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:zoom="0.63429569" + inkscape:cx="977.94468" + inkscape:cy="245.32161" + inkscape:window-x="0" + inkscape:window-y="27" + inkscape:window-maximized="1" + inkscape:current-layer="svg2" /> + <!--Generated by the Batik Graphics2D SVG Generator--> + <g + id="g177" + style="fill:#c9f3bc;fill-opacity:0.78430002;stroke:#c9f3bc;stroke-width:0.9995057;stroke-opacity:0.78430002;font-family:sans-serif" + transform="matrix(0.9966762,0,0,1.0043275,-218.05333,-218.08604)"> + <rect + clip-path="url(#clipPath1)" + id="rect179" + height="149" + style="stroke:none" + width="226" + y="218" + x="219" /> + </g> + <defs + id="genericDefs"> + <defs + id="defs1"> + <clipPath + id="clipPath1" + clipPathUnits="userSpaceOnUse"> + <path + inkscape:connector-curvature="0" + id="path9" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" /> + </clipPath> + </defs> + <clipPath + id="clipPath1-8" + clipPathUnits="userSpaceOnUse"> + <path + inkscape:connector-curvature="0" + id="path9-6" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" /> + </clipPath> + <clipPath + id="clipPath1-9" + clipPathUnits="userSpaceOnUse"> + <path + inkscape:connector-curvature="0" + id="path9-9" + d="m 0,0 2510,0 0,1510 L 0,1510 0,0 z" /> + </clipPath> + </defs> + <g + id="g15" + style="font-family:sans-serif" + transform="translate(-229.06595,-216.5)"> + <rect + clip-path="url(#clipPath1)" + id="rect17" + height="150" + style="fill:none" + width="200" + y="217" + x="603" /> + </g> + <text + x="694" + y="246" + style="font-size:14px;stroke:none;font-family:sans-serif" + xml:space="preserve" + id="text25" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)">T1</text> + <image + style="font-size:14px;font-family:sans-serif" + x="773" + y="232" + width="15" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAdklEQVR42mNgGCjA iMb/T4peDM3n7v8iqMtIkY0BpI4Rj42MePSDLWGC8WA2ItH/oYaiYzhgQnYKMo1s KAwjGQoGLDAnggRhfsHiR6zeg2n+j8VmRkKhT8jPeAELIT9D+f/xacbqZ0JxTnYK Q04kyIL/GQY9AAAW0Uztnea6vQAAAABJRU5ErkJggg==" + height="16" + preserveAspectRatio="none" + id="image27" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="790" + y="272" + width="26" + style="font-size:14px;fill:#68e5ff;stroke:none;font-family:sans-serif" + height="26" + id="rect29" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="790" + y="272" + width="26" + style="font-size:14px;fill:none;font-family:sans-serif" + height="26" + id="rect31" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;fill:none;font-family:sans-serif" + points="793,275 793,295 813,285 " + id="polygon33" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;stroke:none;font-family:sans-serif" + points="793,275 793,295 813,285 " + id="polygon35" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <line + transform="translate(-228.22986,-216.56967)" + x1="813" + x2="813" + y1="295" + style="font-size:14px;fill:none;font-family:sans-serif" + y2="275" + id="line37" + clip-path="url(#clipPath1)" /> + <text + x="772" + y="265" + style="font-size:8px;stroke:none;font-family:sans-serif" + xml:space="preserve" + id="text41" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)">???</text> + <ellipse + style="font-size:14px;fill:none;font-family:sans-serif" + rx="3" + cx="781" + ry="4.5" + cy="276.5" + id="ellipse43" + clip-path="url(#clipPath1)" + d="m 784,276.5 c 0,2.48528 -1.34315,4.5 -3,4.5 -1.65685,0 -3,-2.01472 -3,-4.5 0,-2.48528 1.34315,-4.5 3,-4.5 1.65685,0 3,2.01472 3,4.5 z" + sodipodi:cx="781" + sodipodi:cy="276.5" + sodipodi:rx="3" + sodipodi:ry="4.5" + transform="translate(-229.06595,-216.5)" /> + <rect + x="777" + y="275" + width="9" + style="font-size:14px;fill:#808080;stroke:none;font-family:sans-serif" + height="7" + id="rect45" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="777" + y="275" + width="9" + style="font-size:14px;fill:none;font-family:sans-serif" + height="7" + id="rect47" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="590" + y="311" + width="26" + style="font-size:14px;fill:#c4a67a;stroke:none;font-family:sans-serif" + height="26" + id="rect49" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="590" + y="311" + width="26" + style="font-size:14px;fill:none;font-family:sans-serif" + height="26" + id="rect51" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;fill:none;font-family:sans-serif" + points="613,314 613,334 593,324 " + id="polygon53" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;stroke:none;font-family:sans-serif" + points="613,314 613,334 593,324 " + id="polygon55" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="590" + y="266" + width="26" + style="font-size:14px;fill:#68e5ff;stroke:none;font-family:sans-serif" + height="26" + id="rect57" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="590" + y="266" + width="26" + style="font-size:14px;fill:none;font-family:sans-serif" + height="26" + id="rect59" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;fill:none;font-family:sans-serif" + points="613,269 613,289 593,279 " + id="polygon61" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;stroke:none;font-family:sans-serif" + points="613,269 613,289 593,279 " + id="polygon63" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="590" + y="226" + width="26" + style="font-size:14px;fill:#68e5ff;stroke:none;font-family:sans-serif" + height="26" + id="rect65" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="590" + y="226" + width="26" + style="font-size:14px;fill:none;font-family:sans-serif" + height="26" + id="rect67" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;fill:none;font-family:sans-serif" + points="593,229 593,249 613,239 " + id="polygon69" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;stroke:none;font-family:sans-serif" + points="593,229 593,249 613,239 " + id="polygon71" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="931" + y="219" + width="200" + style="font-size:14px;fill:none;stroke-width:1.00562096;font-family:sans-serif" + height="150" + id="rect73" + clip-path="url(#clipPath1)" + transform="matrix(1,0,0,0.9888521,-229.06595,-214.05861)" /> + <text + x="1022" + y="248" + style="font-size:14px;stroke:none;font-family:sans-serif" + xml:space="preserve" + id="text81" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)">T2</text> + <image + style="font-size:14px;font-family:sans-serif" + x="1101" + y="234" + width="15" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAdklEQVR42mNgGCjA iMb/T4peDM3n7v8iqMtIkY0BpI4Rj42MePSDLWGC8WA2ItH/oYaiYzhgQnYKMo1s KAwjGQoGLDAnggRhfsHiR6zeg2n+j8VmRkKhT8jPeAELIT9D+f/xacbqZ0JxTnYK Q04kyIL/GQY9AAAW0Uztnea6vQAAAABJRU5ErkJggg==" + height="16" + preserveAspectRatio="none" + id="image83" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="918" + y="272" + width="26" + style="font-size:14px;fill:#68e5ff;stroke:none;font-family:sans-serif" + height="26" + id="rect85" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="918" + y="272" + width="26" + style="font-size:14px;fill:none;font-family:sans-serif" + height="26" + id="rect87" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;fill:none;font-family:sans-serif" + points="921,275 921,295 941,285 " + id="polygon89" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;stroke:none;font-family:sans-serif" + points="921,275 921,295 941,285 " + id="polygon91" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <line + transform="translate(-228.09051,-216.43033)" + x1="941" + x2="941" + y1="295" + style="font-size:14px;fill:none;font-family:sans-serif" + y2="275" + id="line93" + clip-path="url(#clipPath1)" /> + <text + x="906" + y="280" + style="font-size:8px;stroke:none;font-family:sans-serif" + xml:space="preserve" + id="text97" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <ellipse + transform="translate(-227.53311,-210.64735)" + style="font-size:14px;fill:none;font-family:sans-serif" + rx="5" + cx="905" + ry="7.5" + cy="291.5" + id="ellipse99" + clip-path="url(#clipPath1)" + d="m 910,291.5 c 0,4.14214 -2.23858,7.5 -5,7.5 -2.76142,0 -5,-3.35786 -5,-7.5 0,-4.14214 2.23858,-7.5 5,-7.5 2.76142,0 5,3.35786 5,7.5 z" + sodipodi:cx="905" + sodipodi:cy="291.5" + sodipodi:rx="5" + sodipodi:ry="7.5" /> + <polygon + transform="translate(-227.53311,-210.64735)" + style="font-size:14px;fill:#808080;stroke:none;font-family:sans-serif" + points="898,306 914,306 898,290 " + id="polygon101" + clip-path="url(#clipPath1)" /> + <polygon + transform="translate(-227.53311,-210.64735)" + style="font-size:14px;fill:#808080;stroke:none;font-family:sans-serif" + points="914,290 898,290 914,306 " + id="polygon103" + clip-path="url(#clipPath1)" /> + <text + transform="translate(-227.4286,-209.67191)" + x="899" + y="302" + style="font-size:8px;stroke:none;font-family:sans-serif" + xml:space="preserve" + id="text109" + clip-path="url(#clipPath1)">S</text> + <text + transform="translate(-228.6479,-212.31954)" + x="906" + y="299" + style="font-size:8px;stroke:none;font-family:sans-serif" + xml:space="preserve" + id="text111" + clip-path="url(#clipPath1)">W</text> + <rect + x="1118" + y="323" + width="26" + style="font-size:14px;fill:#c4a67a;stroke:none;font-family:sans-serif" + height="26" + id="rect113" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="1118" + y="323" + width="26" + style="font-size:14px;fill:none;font-family:sans-serif" + height="26" + id="rect115" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;fill:none;font-family:sans-serif" + points="1121,326 1121,346 1141,336 " + id="polygon117" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;stroke:none;font-family:sans-serif" + points="1121,326 1121,346 1141,336 " + id="polygon119" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="1118" + y="281" + width="26" + style="font-size:14px;fill:#68e5ff;stroke:none;font-family:sans-serif" + height="26" + id="rect121" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="1118" + y="281" + width="26" + style="font-size:14px;fill:none;font-family:sans-serif" + height="26" + id="rect123" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;fill:none;font-family:sans-serif" + points="1121,284 1121,304 1141,294 " + id="polygon125" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;stroke:none;font-family:sans-serif" + points="1121,284 1121,304 1141,294 " + id="polygon127" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="1118" + y="239" + width="26" + style="font-size:14px;fill:#68e5ff;stroke:none;font-family:sans-serif" + height="26" + id="rect129" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + x="1118" + y="239" + width="26" + style="font-size:14px;fill:none;font-family:sans-serif" + height="26" + id="rect131" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;fill:none;font-family:sans-serif" + points="1141,242 1141,262 1121,252 " + id="polygon133" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <polygon + style="font-size:14px;stroke:none;font-family:sans-serif" + points="1141,242 1141,262 1121,252 " + id="polygon135" + clip-path="url(#clipPath1)" + transform="translate(-229.06595,-216.5)" /> + <rect + transform="matrix(0.8922537,0,0,0.97109655,-89.426755,-198.66394)" + x="1296" + y="208" + width="227" + style="font-size:14px;fill:none;stroke-width:1.07429767;font-family:sans-serif" + height="150" + id="rect137" + clip-path="url(#clipPath1)" /> + <rect + x="918" + y="272" + width="26" + style="font-size:14px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.63913441;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + height="26" + id="rect87-1" + clip-path="url(#clipPath1-8)" + transform="matrix(0.614111,0,0,0.60607164,106.45932,-85.48902)" /> + <line + transform="matrix(0.72825359,-0.74173869,0.73115565,0.73879463,-215.59126,574.46944)" + x1="941" + x2="941" + y1="295" + style="font-size:14px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:0.96209174;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y2="275" + id="line93-3" + clip-path="url(#clipPath1-9)" /> + <g + id="g143" + style="font-size:14px;stroke-width:1.00451326;font-family:sans-serif" + transform="matrix(0.99103415,0,0,1,-215.54544,-216.5)"> + <text + clip-path="url(#clipPath1)" + id="text145" + xml:space="preserve" + style="stroke:none" + y="237" + x="1371" + transform="translate(-6.7609628,4.1384484)">HSM_CPU2</text> + <image + clip-path="url(#clipPath1)" + id="image147" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAdklEQVR42mNgGCjA iMb/T4peDM3n7v8iqMtIkY0BpI4Rj42MePSDLWGC8WA2ItH/oYaiYzhgQnYKMo1s KAwjGQoGLDAnggRhfsHiR6zeg2n+j8VmRkKhT8jPeAELIT9D+f/xacbqZ0JxTnYK Q04kyIL/GQY9AAAW0Uztnea6vQAAAABJRU5ErkJggg==" + width="15" + y="223" + x="1493" + style="stroke-width:1.00451326" + transform="translate(-15.510444,-0.98534486)" /> + <text + clip-path="url(#clipPath1)" + id="text149" + xml:space="preserve" + style="font-size:12px;stroke:none" + y="266" + x="1311">+ channelIndex = 0 : Natural;</text> + <rect + clip-path="url(#clipPath1)" + id="rect151" + height="26" + style="fill:#c4a67a;stroke:none" + width="26" + y="323" + x="1283" /> + <rect + clip-path="url(#clipPath1)" + id="rect153" + height="26" + style="fill:none;stroke-width:1.00451326" + width="26" + y="323" + x="1283" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon155" + points="1306,336 1286,326 1286,346 " + style="fill:none;stroke-width:1.00451326" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon157" + points="1306,336 1286,326 1286,346 " + style="stroke:none" /> + <rect + clip-path="url(#clipPath1)" + id="rect159" + height="26" + style="fill:#68e5ff;stroke:none" + width="26" + y="281" + x="1283" /> + <rect + clip-path="url(#clipPath1)" + id="rect161" + height="26" + style="fill:none;stroke-width:1.00451326" + width="26" + y="281" + x="1283" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon163" + points="1306,294 1286,284 1286,304 " + style="fill:none;stroke-width:1.00451326" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon165" + points="1306,294 1286,284 1286,304 " + style="stroke:none" /> + <rect + clip-path="url(#clipPath1)" + id="rect167" + height="26" + style="fill:#68e5ff;stroke:none" + width="26" + y="238" + x="1283" /> + <rect + clip-path="url(#clipPath1)" + id="rect169" + height="26" + style="fill:none;stroke-width:1.00451326" + width="26" + y="238" + x="1283" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon171" + points="1286,251 1306,241 1306,261 " + style="fill:none;stroke-width:1.00451326" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon173" + points="1286,251 1306,241 1306,261 " + style="stroke:none" /> + <rect + clip-path="url(#clipPath1)" + id="rect175" + height="150" + style="fill:none;stroke-width:1.00451326" + width="227" + y="217" + x="218" /> + </g> + <g + id="g181" + style="font-size:14px;font-family:sans-serif" + transform="translate(-229.06595,-216.5)"> + <text + clip-path="url(#clipPath1)" + id="text183" + xml:space="preserve" + style="stroke:none" + y="246" + x="293">HSM_CPU1</text> + <image + clip-path="url(#clipPath1)" + id="image185" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAdklEQVR42mNgGCjA iMb/T4peDM3n7v8iqMtIkY0BpI4Rj42MePSDLWGC8WA2ItH/oYaiYzhgQnYKMo1s KAwjGQoGLDAnggRhfsHiR6zeg2n+j8VmRkKhT8jPeAELIT9D+f/xacbqZ0JxTnYK Q04kyIL/GQY9AAAW0Uztnea6vQAAAABJRU5ErkJggg==" + width="15" + y="232" + x="415" /> + <text + clip-path="url(#clipPath1)" + id="text187" + xml:space="preserve" + style="font-size:12px;stroke:none" + y="275" + x="233">+ channelIndex = 0 : Natural;</text> + <rect + clip-path="url(#clipPath1)" + id="rect189" + height="26" + style="fill:#c4a67a;stroke:none" + width="26" + y="311" + x="432" /> + <rect + clip-path="url(#clipPath1)" + id="rect191" + height="26" + style="fill:none" + width="26" + y="311" + x="432" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon193" + points="455,334 435,324 455,314 " + style="fill:none" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon195" + points="455,334 435,324 455,314 " + style="stroke:none" /> + <rect + clip-path="url(#clipPath1)" + id="rect197" + height="26" + style="fill:#68e5ff;stroke:none" + width="26" + y="266" + x="432" /> + <rect + clip-path="url(#clipPath1)" + id="rect199" + height="26" + style="fill:none" + width="26" + y="266" + x="432" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon201" + points="455,289 435,279 455,269 " + style="fill:none" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon203" + points="455,289 435,279 455,269 " + style="stroke:none" /> + <rect + clip-path="url(#clipPath1)" + id="rect205" + height="26" + style="fill:#68e5ff;stroke:none" + width="26" + y="227" + x="432" /> + <rect + clip-path="url(#clipPath1)" + id="rect207" + height="26" + style="fill:none" + width="26" + y="227" + x="432" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon209" + points="435,250 455,240 435,230 " + style="fill:none" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon211" + points="435,250 455,240 435,230 " + style="stroke:none" /> + <text + clip-path="url(#clipPath1)" + id="text213" + xml:space="preserve" + style="font-size:12px;font-style:italic;stroke:none" + y="285" + x="848">comm</text> + <line + clip-path="url(#clipPath1)" + id="line215" + y2="285" + style="fill:none" + y1="285" + x2="918" + x1="816" /> + <text + clip-path="url(#clipPath1)" + id="text217" + xml:space="preserve" + style="font-size:12px;font-style:italic;stroke:none" + y="336" + x="1165">startHSM_CPU2</text> + <line + clip-path="url(#clipPath1)" + id="line219" + y2="336" + style="fill:none" + y1="336" + x2="1144" + x1="1283" /> + <text + clip-path="url(#clipPath1)" + id="text221" + xml:space="preserve" + style="font-size:12px;font-style:italic;stroke:none" + y="294" + x="1167">data_comm_T2</text> + <line + clip-path="url(#clipPath1)" + id="line223" + y2="294" + style="fill:none" + y1="294" + x2="1144" + x1="1283" /> + <text + clip-path="url(#clipPath1)" + id="text225" + xml:space="preserve" + style="font-size:12px;font-style:italic;stroke:none" + y="251" + x="1157">retData_comm_T2</text> + <line + clip-path="url(#clipPath1)" + id="line227" + y2="252" + style="fill:none" + y1="251" + x2="1144" + x1="1283" /> + <text + clip-path="url(#clipPath1)" + id="text229" + xml:space="preserve" + style="font-size:12px;font-style:italic;stroke:none" + y="324" + x="476">startHSM_CPU1</text> + <line + clip-path="url(#clipPath1)" + id="line231" + y2="324" + style="fill:none" + y1="324" + x2="590" + x1="458" /> + <text + clip-path="url(#clipPath1)" + id="text233" + xml:space="preserve" + style="font-size:12px;font-style:italic;stroke:none" + y="279" + x="477">data_comm_T1</text> + <line + clip-path="url(#clipPath1)" + id="line235" + y2="279" + style="fill:none" + y1="279" + x2="590" + x1="458" /> + <text + clip-path="url(#clipPath1)" + id="text237" + xml:space="preserve" + style="font-size:12px;font-style:italic;stroke:none" + y="239" + x="468">retData_comm_T1</text> + <line + clip-path="url(#clipPath1)" + id="line239" + y2="239" + style="fill:none" + y1="240" + x2="590" + x1="458" /> + </g> +</svg> diff --git a/doc/SysMLSec/fig/hsmt1.svg b/doc/SysMLSec/fig/hsmt1.svg new file mode 100644 index 0000000000000000000000000000000000000000..4441bc0347129704ecbb52a23add798dc01bb330 --- /dev/null +++ b/doc/SysMLSec/fig/hsmt1.svg @@ -0,0 +1,724 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:Dialog" + id="svg2" + version="1.1" + inkscape:version="0.48.4 r9939" + width="222.29492" + height="242.82289" + sodipodi:docname="hsmt1.svg"> + <metadata + id="metadata191"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="2048" + inkscape:window-height="1086" + id="namedview189" + showgrid="false" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:zoom="1.7940591" + inkscape:cx="272.56063" + inkscape:cy="191.07921" + inkscape:window-x="0" + inkscape:window-y="27" + inkscape:window-maximized="1" + inkscape:current-layer="g5" /> + <!--Generated by the Batik Graphics2D SVG Generator--> + <defs + id="genericDefs"> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1-5"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1770 L 0,1770 0,0 z" + id="path9-4" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3266"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1770 L 0,1770 0,0 z" + id="path3268" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3270"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1770 L 0,1770 0,0 z" + id="path3272" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1-9"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1770 L 0,1770 0,0 z" + id="path9-5" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath3312"> + <path + inkscape:connector-curvature="0" + d="m 0,0 2510,0 0,1770 L 0,1770 0,0 z" + id="path3314" /> + </clipPath> + </defs> + <g + id="g5" + transform="translate(-323.31759,-127.64184)"> + <defs + id="defs1"> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath1"> + <path + d="m 0,0 2510,0 0,1770 L 0,1770 0,0 z" + id="path9" + inkscape:connector-curvature="0" /> + </clipPath> + </defs> + <polygon + clip-path="url(#clipPath1)" + id="polygon19" + points="418,421 414,430 409,421 " + style="stroke:none;font-family:sans-serif" + transform="translate(-19.567548,-82.055525)" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon21" + points="418,421 414,430 409,421 " + style="fill:none;font-family:sans-serif" + transform="translate(-19.567548,-82.055525)" /> + <line + clip-path="url(#clipPath1)" + id="line35" + y2="206" + style="fill:none;stroke-width:1.07584798;font-family:sans-serif" + y1="186" + x2="397" + x1="397" + transform="matrix(1,0,0,0.86396902,0,25.233746)" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon37" + points="401,197 397,206 392,197 " + style="stroke:none;font-family:sans-serif" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon39" + points="401,197 397,206 392,197 " + style="fill:none;font-family:sans-serif" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon43" + points="397,266 392,257 401,257 " + style="stroke:none;font-family:sans-serif" + transform="translate(0.19706897,-5.0252588)" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon45" + points="397,266 392,257 401,257 " + style="fill:none;font-family:sans-serif" + transform="translate(0.19706897,-5.0252588)" /> + <circle + sodipodi:ry="7.5" + sodipodi:rx="7.5" + sodipodi:cy="58.5" + sodipodi:cx="414.5" + d="m 422,58.5 c 0,4.142136 -3.35786,7.5 -7.5,7.5 -4.14214,0 -7.5,-3.357864 -7.5,-7.5 0,-4.142136 3.35786,-7.5 7.5,-7.5 4.14214,0 7.5,3.357864 7.5,7.5 z" + clip-path="url(#clipPath1)" + id="circle53" + cy="58.5" + cx="414.5" + r="7.5" + style="stroke:none;font-family:sans-serif" + transform="translate(-18.67274,76.641843)" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon57" + points="437,371 447,381 437,391 382,391 382,371 " + style="fill:#68e5ff;stroke:none;font-family:sans-serif" + transform="translate(-19.706897,-58.923623)" /> + <line + clip-path="url(#clipPath1)" + id="line61" + y2="396" + style="fill:none;stroke-width:0.79833925;font-family:sans-serif" + y1="391" + x2="414" + x1="414" + transform="matrix(1,0,0,1.5690076,-19.706897,-281.1211)" /> + <line + clip-path="url(#clipPath1)" + id="line63" + y2="372" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="372" + x2="438" + x1="383" + transform="translate(-19.706897,-58.923623)" /> + <line + clip-path="url(#clipPath1)" + id="line65" + y2="392" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="392" + x2="438" + x1="383" + transform="translate(-19.706897,-58.923623)" /> + <line + clip-path="url(#clipPath1)" + id="line67" + y2="392" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="372" + x2="383" + x1="383" + transform="translate(-19.706897,-58.923623)" /> + <line + clip-path="url(#clipPath1)" + id="line69" + y2="382" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="372" + x2="448" + x1="438" + transform="translate(-19.706897,-58.923623)" /> + <line + clip-path="url(#clipPath1)" + id="line71" + y2="382" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="392" + x2="448" + x1="438" + transform="translate(-19.706897,-58.923623)" /> + <line + clip-path="url(#clipPath1)" + id="line73" + y2="371" + style="fill:none;font-family:sans-serif" + y1="371" + x2="437" + x1="382" + transform="translate(-19.706897,-58.923623)" /> + <line + clip-path="url(#clipPath1)" + id="line75" + y2="391" + style="fill:none;font-family:sans-serif" + y1="391" + x2="437" + x1="382" + transform="translate(-19.706897,-58.923623)" /> + <line + clip-path="url(#clipPath1)" + id="line77" + y2="391" + style="fill:none;font-family:sans-serif" + y1="371" + x2="382" + x1="382" + transform="translate(-19.706897,-58.923623)" /> + <line + clip-path="url(#clipPath1)" + id="line79" + y2="381" + style="fill:none;font-family:sans-serif" + y1="371" + x2="447" + x1="437" + transform="translate(-19.706897,-58.923623)" /> + <line + clip-path="url(#clipPath1)" + id="line81" + y2="381" + style="fill:none;font-family:sans-serif" + y1="391" + x2="447" + x1="437" + transform="translate(-19.706897,-58.923623)" /> + <text + clip-path="url(#clipPath1)" + id="text83" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="371" + x="387" + transform="translate(-24.83069,-60.40164)">chl</text> + <text + clip-path="url(#clipPath1)" + id="text85" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="386" + x="387" + transform="translate(-19.706897,-58.923623)">comm(1)</text> + <text + clip-path="url(#clipPath1)" + id="text87" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="402" + x="430" + transform="translate(-19.706897,-58.923623)">sec:hsmSec_comm</text> + <circle + sodipodi:ry="8" + sodipodi:rx="8" + sodipodi:cy="445" + sodipodi:cx="414" + d="m 422,445 c 0,4.41828 -3.58172,8 -8,8 -4.41828,0 -8,-3.58172 -8,-8 0,-4.41828 3.58172,-8 8,-8 4.41828,0 8,3.58172 8,8 z" + clip-path="url(#clipPath1)" + id="circle89" + cy="445" + cx="414" + r="8" + style="stroke:none;font-family:sans-serif" + transform="translate(-19.903966,-85.035262)" /> + <circle + sodipodi:ry="10" + sodipodi:rx="10" + sodipodi:cy="445" + sodipodi:cx="414" + d="m 424,445 c 0,5.52285 -4.47715,10 -10,10 -5.52285,0 -10,-4.47715 -10,-10 0,-5.52285 4.47715,-10 10,-10 5.52285,0 10,4.47715 10,10 z" + clip-path="url(#clipPath1)" + id="circle91" + cy="445" + cx="414" + r="10" + style="fill:none;font-family:sans-serif" + transform="translate(-19.903966,-85.035262)" /> + <polygon + clip-path="url(#clipPath1)" + id="polygon95" + points="335,161 449,161 459,171 449,181 335,181 " + style="fill:#c4a67a;stroke:none;font-family:sans-serif" /> + <line + clip-path="url(#clipPath1)" + id="line97" + y2="162" + style="fill:none;stroke:#c4a67a;font-family:sans-serif" + y1="162" + x2="450" + x1="336" /> + <line + clip-path="url(#clipPath1)" + id="line99" + y2="182" + style="fill:none;stroke:#c4a67a;stroke-width:1.00365508;font-family:sans-serif" + y1="182" + x2="450" + x1="336" + transform="matrix(0.99272963,0,0,1,2.43921,0)" /> + <line + clip-path="url(#clipPath1)" + id="line101" + y2="182" + style="fill:none;stroke:#c4a67a;font-family:sans-serif" + y1="162" + x2="336" + x1="336" /> + <line + clip-path="url(#clipPath1)" + id="line103" + y2="172" + style="fill:none;stroke:#c4a67a;stroke-width:1.03987527;font-family:sans-serif" + y1="162" + x2="460" + x1="450" + transform="matrix(0.96864652,0,0,0.95471164,14.109067,7.3367147)" /> + <line + clip-path="url(#clipPath1)" + id="line105" + y2="172" + style="fill:none;stroke:#c4a67a;font-family:sans-serif" + y1="182" + x2="460" + x1="450" + transform="translate(-0.24386041,-0.38320922)" /> + <line + clip-path="url(#clipPath1)" + id="line109" + y2="186" + style="fill:none;font-family:sans-serif" + y1="181" + x2="397" + x1="397" /> + <line + clip-path="url(#clipPath1)" + id="line111" + y2="161" + style="fill:none;font-family:sans-serif" + y1="161" + x2="449" + x1="335" /> + <line + clip-path="url(#clipPath1)" + id="line113" + y2="181" + style="fill:none;font-family:sans-serif" + y1="181" + x2="449" + x1="335" /> + <line + clip-path="url(#clipPath1)" + id="line115" + y2="181" + style="fill:none;font-family:sans-serif" + y1="161" + x2="335" + x1="335" /> + <line + clip-path="url(#clipPath1)" + id="line117" + y2="171" + style="fill:none;font-family:sans-serif" + y1="161" + x2="459" + x1="449" /> + <line + clip-path="url(#clipPath1)" + id="line119" + y2="171" + style="fill:none;font-family:sans-serif" + y1="181" + x2="459" + x1="449" /> + <text + clip-path="url(#clipPath1)" + id="text121" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="161" + x="340" + transform="translate(-4.1384484,-1.9706897)">req</text> + <text + clip-path="url(#clipPath1)" + id="text123" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="176" + x="340">startHSM_CPU1(0)</text> + <polygon + clip-path="url(#clipPath1)" + id="polygon125" + points="458,221 448,231 337,231 337,211 448,211 " + style="fill:#68e5ff;stroke:none;font-family:sans-serif" + transform="translate(-0.19911999,-3.6288701)" /> + <line + clip-path="url(#clipPath1)" + id="line129" + y2="236" + style="fill:none;stroke-width:0.46477187;font-family:sans-serif" + y1="231" + x2="397" + x1="397" + transform="matrix(1,0,0,4.6293536,-0.19911999,-840.19487)" /> + <line + clip-path="url(#clipPath1)" + id="line131" + y2="212" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="212" + x2="449" + x1="338" + transform="translate(-0.19911999,-3.6288701)" /> + <line + clip-path="url(#clipPath1)" + id="line133" + y2="232" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="232" + x2="449" + x1="338" + transform="translate(-0.19911999,-3.6288701)" /> + <line + clip-path="url(#clipPath1)" + id="line135" + y2="232" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="212" + x2="338" + x1="338" + transform="translate(-0.19911999,-3.6288701)" /> + <line + clip-path="url(#clipPath1)" + id="line137" + y2="222" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="212" + x2="459" + x1="449" + transform="translate(-0.19911999,-3.6288701)" /> + <line + clip-path="url(#clipPath1)" + id="line139" + y2="222" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="232" + x2="459" + x1="449" + transform="translate(-0.19911999,-3.6288701)" /> + <line + clip-path="url(#clipPath1)" + id="line141" + y2="211" + style="fill:none;font-family:sans-serif" + y1="211" + x2="448" + x1="337" + transform="translate(-0.19911999,-3.6288701)" /> + <line + clip-path="url(#clipPath1)" + id="line143" + y2="231" + style="fill:none;font-family:sans-serif" + y1="231" + x2="448" + x1="337" + transform="translate(-0.19911999,-3.6288701)" /> + <line + clip-path="url(#clipPath1)" + id="line145" + y2="231" + style="fill:none;font-family:sans-serif" + y1="211" + x2="337" + x1="337" + transform="translate(-0.19911999,-3.6288701)" /> + <line + clip-path="url(#clipPath1)" + id="line147" + y2="221" + style="fill:none;font-family:sans-serif" + y1="211" + x2="458" + x1="448" + transform="translate(-0.19911999,-3.6288701)" /> + <line + clip-path="url(#clipPath1)" + id="line149" + y2="221" + style="fill:none;font-family:sans-serif" + y1="231" + x2="458" + x1="448" + transform="translate(-0.19911999,-3.6288701)" /> + <text + clip-path="url(#clipPath1)" + id="text151" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="211" + x="342" + transform="translate(-6.3304675,-5.0223582)">chl</text> + <text + clip-path="url(#clipPath1)" + id="text153" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="226" + x="342" + transform="translate(-0.19911999,-3.6288701)">data_comm_T1(1)</text> + <text + clip-path="url(#clipPath1)" + id="text155" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="242" + x="427" + transform="translate(-0.19911999,-3.6288701)">sec:hsmSec_comm</text> + <polygon + clip-path="url(#clipPath1)" + id="polygon157" + points="469,271 469,291 325,291 335,281 325,271 " + style="fill:#68e5ff;stroke:none;font-family:sans-serif" + transform="translate(-1.1824138,-8.2768968)" /> + <line + clip-path="url(#clipPath1)" + id="line161" + y2="296" + style="fill:none;stroke-width:0.51465857;font-family:sans-serif" + y1="291" + x2="397" + x1="397" + transform="matrix(1,0,0,3.775388,-1.1824138,-814.52712)" /> + <line + clip-path="url(#clipPath1)" + id="line163" + y2="272" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="272" + x2="470" + x1="326" + transform="translate(-1.1824138,-8.2768968)" /> + <line + clip-path="url(#clipPath1)" + id="line165" + y2="292" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="272" + x2="470" + x1="470" + transform="translate(-1.1824138,-8.2768968)" /> + <line + clip-path="url(#clipPath1)" + id="line167" + y2="292" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="292" + x2="470" + x1="326" + transform="translate(-1.1824138,-8.2768968)" /> + <line + clip-path="url(#clipPath1)" + id="line169" + y2="282" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="272" + x2="336" + x1="326" + transform="translate(-1.1824138,-8.2768968)" /> + <line + clip-path="url(#clipPath1)" + id="line171" + y2="282" + style="fill:none;stroke:#68e5ff;font-family:sans-serif" + y1="292" + x2="336" + x1="326" + transform="translate(-1.1824138,-8.2768968)" /> + <line + clip-path="url(#clipPath1)" + id="line173" + y2="271" + style="fill:none;font-family:sans-serif" + y1="271" + x2="469" + x1="325" + transform="translate(-1.1824138,-8.2768968)" /> + <line + clip-path="url(#clipPath1)" + id="line175" + y2="291" + style="fill:none;font-family:sans-serif" + y1="271" + x2="469" + x1="469" + transform="translate(-1.1824138,-8.2768968)" /> + <line + clip-path="url(#clipPath1)" + id="line177" + y2="291" + style="fill:none;font-family:sans-serif" + y1="291" + x2="469" + x1="325" + transform="translate(-1.1824138,-8.2768968)" /> + <line + clip-path="url(#clipPath1)" + id="line179" + y2="281" + style="fill:none;font-family:sans-serif" + y1="271" + x2="335" + x1="325" + transform="translate(-1.1824138,-8.2768968)" /> + <line + clip-path="url(#clipPath1)" + id="line181" + y2="281" + style="fill:none;font-family:sans-serif" + y1="291" + x2="335" + x1="325" + transform="translate(-1.1824138,-8.2768968)" /> + <text + clip-path="url(#clipPath1)" + id="text183" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="271" + x="330" + transform="translate(-4.3355173,-9.5578451)">chl</text> + <text + clip-path="url(#clipPath1)" + id="text185" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="286" + x="337" + transform="translate(-1.1824138,-8.2768968)">retData_comm_T1(1) </text> + <text + clip-path="url(#clipPath1)" + id="text187" + xml:space="preserve" + style="stroke:none;font-family:sans-serif" + y="302" + x="433" + transform="translate(-1.1824138,-8.2768968)">sec:hsmSec_comm</text> + <line + transform="matrix(1,0,0,0.75131773,-1.1796429,-0.18168117)" + clip-path="url(#clipPath1-5)" + id="line35-4" + y2="206" + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1.15368748;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + y1="186" + x2="397" + x1="397" /> + <polygon + transform="translate(-1.1796429,-46.312243)" + clip-path="url(#clipPath1-5)" + id="polygon37-3" + points="397,206 392,197 401,197 " + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" /> + <polygon + transform="translate(-1.1796429,-46.312243)" + clip-path="url(#clipPath1-5)" + id="polygon39-7" + points="397,206 392,197 401,197 " + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" /> + <polygon + clip-path="url(#clipPath1-9)" + id="polygon43-9" + points="392,257 401,257 397,266 " + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:sans-serif" + transform="translate(-1.2781769,44.561986)" /> + <polygon + clip-path="url(#clipPath1-9)" + id="polygon45-0" + points="392,257 401,257 397,266 " + style="font-size:12px;font-style:normal;font-weight:normal;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;font-family:sans-serif" + transform="translate(-1.2781769,44.561986)" /> + </g> +</svg> diff --git a/doc/SysMLSec/sysmlsec_documentation.tex b/doc/SysMLSec/sysmlsec_documentation.tex index 6b1a16bec0228f9dfb321714a968c982da9e3ea0..fc1d39e5175cdbf6012059ff915cb045c7294cd8 100644 --- a/doc/SysMLSec/sysmlsec_documentation.tex +++ b/doc/SysMLSec/sysmlsec_documentation.tex @@ -354,7 +354,7 @@ Without taking into account penalties of the hardware platform (e.g. cache miss, \subsection{Automatic Security Generation} -Given security requirements and an unsecured model, our toolkit magically adds security elements. It can 1) add the security operators to a functional view, 2) Add an HSM performing all security operations, and 3) Automatically map keys securely. See the thesis of Letitia Li, `Safe and Secure Model-Driven Design for Embedded Systems' for the detailed algorithms on how to add security. +Given security requirements and an unsecured model, our toolkit magically adds security elements. It can 1) add the security operators to a functional view, optionally with an added HSM performing all security operations, and 2) Automatically map keys securely. See the thesis of Letitia Li, `Safe and Secure Model-Driven Design for Embedded Systems' for the detailed algorithms on how to add security. \begin{figure*}[htbp] \centering @@ -392,19 +392,48 @@ When the option to add security operators is selected, there are multiple option \subsubsection{Adding Hardware Security Modules} - After a designer models a system, our toolkit can automatically add +For automatic security generation, there is also an option to add HSMs to perform all the security operators intead. +Our toolkit can automatically add HSMs to designated tasks, including making all of the modifications to the diagrams relating to sending the data to the HSM, generating the HSM's activity diagram, etc. A single Hardware Security Module is added to each processor which executes at least one of the designated tasks. If multiple tasks mapped to a single CPU are designated to have a HSM added to them, then only a single HSM will be added. For each HSM to be added to perform security operations for one or more tasks, first, the architectural diagram is modified to add a Hardware Accelerator and memory, with a connecting private bus. -Next, each task is modified, so that before each instance of sending a message which should be secure, the task first sends the data to the HSM. The HSM then performs the security operations, and returns the secured message to the task, which then sends the secured message to the receiving task. When a task receives data to be decrypted, it similarly sends the messages to the HSM, which then decrypts it and sends the message back, and which point the receiving task can understand the contents of the message. +Next, each task is modified, so that before each instance of sending a message which should be secure, the task first issues a request with the index of the channel (in the case of multiple channels to secure), and sends the data to the HSM. The HSM then performs the security operations, and returns the secured message to the task, which then sends the secured message to the receiving task. When a task receives data to be decrypted, it similarly sends the messages to the HSM, which then decrypts it and sends the message back, and which point the receiving task can understand the contents of the message. + +For example, using the model in our example, chose to ensure confidentiality, and add a HSM to each task. A new HSM task is added for each HSM in the Functional model as shown in Figure \ref{fig:hsmfunc}, and a secure bus, memory, and Hardware Accelerator are added for each CPU on the Architecture/Mapping model as shown in Figure \ref{fig:hsmarch}. Figure \ref{fig:hsmt1act} shows how the activity diagram of task t1 is modified to send communications to the HSM to be encrypted the activity diagram of the HSM. + +\begin{figure*}[htbp] +\centering +\includegraphics[width=0.99\textwidth]{build/hsmfunc-svg.pdf} +\caption{Functional Model with added Hardware Security Module Tasks} \label{fig:hsmfunc} +\end{figure*} + + +\begin{figure*}[htbp] +\centering +\includegraphics[width=0.99\textwidth]{build/hsmarch-svg.pdf} +\caption{Architecture Model with added Hardware Security Modules} \label{fig:hsmarch} +\end{figure*} + + +\begin{figure*}[htbp] +\centering +\includegraphics[width=0.4\textwidth]{build/hsmt1-svg.pdf} +\includegraphics[width=0.4\textwidth]{build/hsmact-svg.pdf} +\caption{Modified Activity Diagram of T1 and HSM} \label{fig:hsmt1act} +\end{figure*} + + + \subsubsection{Mapping Keys} With multiple Cryptographic Configurations, it may become tedious to the map all of the keys to memory. Our toolkit therefore can find every Cryptographic Configuration used by a task, and then, depending on the type of the Cryptographic Configuration, map each applicable key to a memory that the task can securely access. For Cryptographic Configurations of type symmetric encryption or MAC, both the sending and receiving task will need to be able to access the key. For asymmetric encryption, however, all the sending tasks will need the public key while only the receiving task will need to access the private key. +At every security generation, keys are automatically generated and mapped securely. There is also the option to add keys alone after completing a design by hand. + If a key is sent along a bus accessible to an attacker, then the key would be known to the attacker, so we wish to avoid sending keys along public buses. For each task which needs the key, the algorithm searches for securely accessible memories from the processor to which it is mapped. The algorithm traverses all possible private buses and bridges using breadth-first search, until it finds a memory. The key is then mapped to that memory. If all possible secure paths are searched and no memories are found, then a warning is issued saying it is impossible to map keys for that task. For example, for the automatically secured model in Figure \ref{fig:secfv1}, the keys for autoEncrypt\_comm are mapped as shown in Figure \ref{fig:mapkey}, where there is a secure path to the memory. If they keys were mapped to MainMemory, then the attacker could recover the key when it was read over the public bus MainBus. diff --git a/modeling/AVATAR/CoffeeMachine_Avatar.xml b/modeling/AVATAR/CoffeeMachine_Avatar.xml index 9f85e98087ba959b798c50afe9bd7f05942bb80f..b6918c17ff1c304ef5e20a56c76e7dee30c3956e 100644 --- a/modeling/AVATAR/CoffeeMachine_Avatar.xml +++ b/modeling/AVATAR/CoffeeMachine_Avatar.xml @@ -5,11 +5,11 @@ <Modeling type="Avatar Requirement" nameTab="AVATAR Requirements" > <AvatarRDPanel name="AVATAR RD" minX="10" maxX="1900" minY="10" maxY="900" zoom="1.0" > <COMPONENT type="5200" id="44" > -<cdparam x="661" y="17" /> -<sizeparam width="278" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="59" minDesiredHeight="0" /> +<cdparam x="844" y="479" /> +<sizeparam width="200" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> -<infoparam name="Requirement" value="req00" /> +<infoparam name="Requirement" value="Requirement_0" /> <TGConnectingPoint num="0" id="1" /> <TGConnectingPoint num="1" id="2" /> <TGConnectingPoint num="2" id="3" /> @@ -54,11 +54,11 @@ <TGConnectingPoint num="41" id="42" /> <TGConnectingPoint num="42" id="43" /> <extraparam> -<textline data="A coin not used within 50 seconds " /> -<textline data="must be ejected" /> -<kind data="Functional" /> -<criticality data="Low" /> -<reqType data="0" /> +<textline data="Requirement description:" /> +<textline data="Double-click to edit" /> +<kind data="" /> +<criticality data="" /> +<reqType data="Requirement" /> <id data="0" /> <satisfied data="false" /> <verified data="false" /> @@ -68,12 +68,12 @@ </extraparam> </COMPONENT> -<COMPONENT type="5200" id="88" > -<cdparam x="47" y="457" /> -<sizeparam width="301" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="113" minDesiredHeight="0" /> +<COMPONENT type="5207" id="60" > +<cdparam x="727" y="252" /> +<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="107" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> -<infoparam name="Requirement" value="Req_Availability" /> +<infoparam name="AvatarElementReference" value="CoffeeMachine" /> <TGConnectingPoint num="0" id="45" /> <TGConnectingPoint num="1" id="46" /> <TGConnectingPoint num="2" id="47" /> @@ -89,41 +89,87 @@ <TGConnectingPoint num="12" id="57" /> <TGConnectingPoint num="13" id="58" /> <TGConnectingPoint num="14" id="59" /> -<TGConnectingPoint num="15" id="60" /> -<TGConnectingPoint num="16" id="61" /> -<TGConnectingPoint num="17" id="62" /> -<TGConnectingPoint num="18" id="63" /> -<TGConnectingPoint num="19" id="64" /> -<TGConnectingPoint num="20" id="65" /> -<TGConnectingPoint num="21" id="66" /> -<TGConnectingPoint num="22" id="67" /> -<TGConnectingPoint num="23" id="68" /> -<TGConnectingPoint num="24" id="69" /> -<TGConnectingPoint num="25" id="70" /> -<TGConnectingPoint num="26" id="71" /> -<TGConnectingPoint num="27" id="72" /> -<TGConnectingPoint num="28" id="73" /> -<TGConnectingPoint num="29" id="74" /> -<TGConnectingPoint num="30" id="75" /> -<TGConnectingPoint num="31" id="76" /> -<TGConnectingPoint num="32" id="77" /> -<TGConnectingPoint num="33" id="78" /> -<TGConnectingPoint num="34" id="79" /> -<TGConnectingPoint num="35" id="80" /> -<TGConnectingPoint num="36" id="81" /> -<TGConnectingPoint num="37" id="82" /> -<TGConnectingPoint num="38" id="83" /> -<TGConnectingPoint num="39" id="84" /> -<TGConnectingPoint num="40" id="85" /> -<TGConnectingPoint num="41" id="86" /> -<TGConnectingPoint num="42" id="87" /> +</COMPONENT> + +<COMPONENT type="5207" id="76" > +<cdparam x="741" y="201" /> +<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="57" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarElementReference" value="Wallet" /> +<TGConnectingPoint num="0" id="61" /> +<TGConnectingPoint num="1" id="62" /> +<TGConnectingPoint num="2" id="63" /> +<TGConnectingPoint num="3" id="64" /> +<TGConnectingPoint num="4" id="65" /> +<TGConnectingPoint num="5" id="66" /> +<TGConnectingPoint num="6" id="67" /> +<TGConnectingPoint num="7" id="68" /> +<TGConnectingPoint num="8" id="69" /> +<TGConnectingPoint num="9" id="70" /> +<TGConnectingPoint num="10" id="71" /> +<TGConnectingPoint num="11" id="72" /> +<TGConnectingPoint num="12" id="73" /> +<TGConnectingPoint num="13" id="74" /> +<TGConnectingPoint num="14" id="75" /> +</COMPONENT> + +<COMPONENT type="5200" id="120" > +<cdparam x="661" y="16" /> +<sizeparam width="278" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="59" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Requirement" value="req00" /> +<TGConnectingPoint num="0" id="77" /> +<TGConnectingPoint num="1" id="78" /> +<TGConnectingPoint num="2" id="79" /> +<TGConnectingPoint num="3" id="80" /> +<TGConnectingPoint num="4" id="81" /> +<TGConnectingPoint num="5" id="82" /> +<TGConnectingPoint num="6" id="83" /> +<TGConnectingPoint num="7" id="84" /> +<TGConnectingPoint num="8" id="85" /> +<TGConnectingPoint num="9" id="86" /> +<TGConnectingPoint num="10" id="87" /> +<TGConnectingPoint num="11" id="88" /> +<TGConnectingPoint num="12" id="89" /> +<TGConnectingPoint num="13" id="90" /> +<TGConnectingPoint num="14" id="91" /> +<TGConnectingPoint num="15" id="92" /> +<TGConnectingPoint num="16" id="93" /> +<TGConnectingPoint num="17" id="94" /> +<TGConnectingPoint num="18" id="95" /> +<TGConnectingPoint num="19" id="96" /> +<TGConnectingPoint num="20" id="97" /> +<TGConnectingPoint num="21" id="98" /> +<TGConnectingPoint num="22" id="99" /> +<TGConnectingPoint num="23" id="100" /> +<TGConnectingPoint num="24" id="101" /> +<TGConnectingPoint num="25" id="102" /> +<TGConnectingPoint num="26" id="103" /> +<TGConnectingPoint num="27" id="104" /> +<TGConnectingPoint num="28" id="105" /> +<TGConnectingPoint num="29" id="106" /> +<TGConnectingPoint num="30" id="107" /> +<TGConnectingPoint num="31" id="108" /> +<TGConnectingPoint num="32" id="109" /> +<TGConnectingPoint num="33" id="110" /> +<TGConnectingPoint num="34" id="111" /> +<TGConnectingPoint num="35" id="112" /> +<TGConnectingPoint num="36" id="113" /> +<TGConnectingPoint num="37" id="114" /> +<TGConnectingPoint num="38" id="115" /> +<TGConnectingPoint num="39" id="116" /> +<TGConnectingPoint num="40" id="117" /> +<TGConnectingPoint num="41" id="118" /> +<TGConnectingPoint num="42" id="119" /> <extraparam> -<textline data="The availability of the machine shall be" /> -<textline data="no less than 99.99%" /> +<textline data="A coin not used within 50 seconds " /> +<textline data="must be ejected" /> <kind data="Functional" /> <criticality data="Low" /> -<reqType data="0" /> -<id data="0" /> +<reqType data="Requirement" /> +<id data="0.1.1" /> <satisfied data="false" /> <verified data="false" /> <attackTreeNode data="" /> @@ -132,121 +178,76 @@ </extraparam> </COMPONENT> -<COMPONENT type="5200" id="132" > -<cdparam x="10" y="182" /> -<sizeparam width="150" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="136" minDesiredHeight="0" /> +<COMPONENT type="5200" id="164" > +<cdparam x="46" y="491" /> +<sizeparam width="301" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="113" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> -<infoparam name="Requirement" value="Req_CoffeeMachine" /> -<TGConnectingPoint num="0" id="89" /> -<TGConnectingPoint num="1" id="90" /> -<TGConnectingPoint num="2" id="91" /> -<TGConnectingPoint num="3" id="92" /> -<TGConnectingPoint num="4" id="93" /> -<TGConnectingPoint num="5" id="94" /> -<TGConnectingPoint num="6" id="95" /> -<TGConnectingPoint num="7" id="96" /> -<TGConnectingPoint num="8" id="97" /> -<TGConnectingPoint num="9" id="98" /> -<TGConnectingPoint num="10" id="99" /> -<TGConnectingPoint num="11" id="100" /> -<TGConnectingPoint num="12" id="101" /> -<TGConnectingPoint num="13" id="102" /> -<TGConnectingPoint num="14" id="103" /> -<TGConnectingPoint num="15" id="104" /> -<TGConnectingPoint num="16" id="105" /> -<TGConnectingPoint num="17" id="106" /> -<TGConnectingPoint num="18" id="107" /> -<TGConnectingPoint num="19" id="108" /> -<TGConnectingPoint num="20" id="109" /> -<TGConnectingPoint num="21" id="110" /> -<TGConnectingPoint num="22" id="111" /> -<TGConnectingPoint num="23" id="112" /> -<TGConnectingPoint num="24" id="113" /> -<TGConnectingPoint num="25" id="114" /> -<TGConnectingPoint num="26" id="115" /> -<TGConnectingPoint num="27" id="116" /> -<TGConnectingPoint num="28" id="117" /> -<TGConnectingPoint num="29" id="118" /> -<TGConnectingPoint num="30" id="119" /> -<TGConnectingPoint num="31" id="120" /> -<TGConnectingPoint num="32" id="121" /> -<TGConnectingPoint num="33" id="122" /> -<TGConnectingPoint num="34" id="123" /> -<TGConnectingPoint num="35" id="124" /> -<TGConnectingPoint num="36" id="125" /> -<TGConnectingPoint num="37" id="126" /> -<TGConnectingPoint num="38" id="127" /> -<TGConnectingPoint num="39" id="128" /> -<TGConnectingPoint num="40" id="129" /> -<TGConnectingPoint num="41" id="130" /> -<TGConnectingPoint num="42" id="131" /> +<infoparam name="Requirement" value="Req_Availability" /> +<TGConnectingPoint num="0" id="121" /> +<TGConnectingPoint num="1" id="122" /> +<TGConnectingPoint num="2" id="123" /> +<TGConnectingPoint num="3" id="124" /> +<TGConnectingPoint num="4" id="125" /> +<TGConnectingPoint num="5" id="126" /> +<TGConnectingPoint num="6" id="127" /> +<TGConnectingPoint num="7" id="128" /> +<TGConnectingPoint num="8" id="129" /> +<TGConnectingPoint num="9" id="130" /> +<TGConnectingPoint num="10" id="131" /> +<TGConnectingPoint num="11" id="132" /> +<TGConnectingPoint num="12" id="133" /> +<TGConnectingPoint num="13" id="134" /> +<TGConnectingPoint num="14" id="135" /> +<TGConnectingPoint num="15" id="136" /> +<TGConnectingPoint num="16" id="137" /> +<TGConnectingPoint num="17" id="138" /> +<TGConnectingPoint num="18" id="139" /> +<TGConnectingPoint num="19" id="140" /> +<TGConnectingPoint num="20" id="141" /> +<TGConnectingPoint num="21" id="142" /> +<TGConnectingPoint num="22" id="143" /> +<TGConnectingPoint num="23" id="144" /> +<TGConnectingPoint num="24" id="145" /> +<TGConnectingPoint num="25" id="146" /> +<TGConnectingPoint num="26" id="147" /> +<TGConnectingPoint num="27" id="148" /> +<TGConnectingPoint num="28" id="149" /> +<TGConnectingPoint num="29" id="150" /> +<TGConnectingPoint num="30" id="151" /> +<TGConnectingPoint num="31" id="152" /> +<TGConnectingPoint num="32" id="153" /> +<TGConnectingPoint num="33" id="154" /> +<TGConnectingPoint num="34" id="155" /> +<TGConnectingPoint num="35" id="156" /> +<TGConnectingPoint num="36" id="157" /> +<TGConnectingPoint num="37" id="158" /> +<TGConnectingPoint num="38" id="159" /> +<TGConnectingPoint num="39" id="160" /> +<TGConnectingPoint num="40" id="161" /> +<TGConnectingPoint num="41" id="162" /> +<TGConnectingPoint num="42" id="163" /> <extraparam> -<textline data="Requirements of the coffee machine" /> +<textline data="The availability of the machine shall be" /> +<textline data="no less than 99.99%" /> <kind data="Functional" /> <criticality data="Low" /> -<reqType data="0" /> -<id data="0" /> -<satisfied data="false" /> -<verified data="false" /> +<reqType data="Requirement" /> +<id data="0.4" /> +<satisfied data="true" /> +<verified data="true" /> <attackTreeNode data="" /> <violatedAction data="" /> <referenceElements data="" /> </extraparam> </COMPONENT> -<COMPONENT type="5201" id="148" > -<cdparam x="627" y="376" /> -<sizeparam width="171" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="158" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> -<infoparam name="AvatarProperty" value="BeverageDeliverProperty" /> -<TGConnectingPoint num="0" id="133" /> -<TGConnectingPoint num="1" id="134" /> -<TGConnectingPoint num="2" id="135" /> -<TGConnectingPoint num="3" id="136" /> -<TGConnectingPoint num="4" id="137" /> -<TGConnectingPoint num="5" id="138" /> -<TGConnectingPoint num="6" id="139" /> -<TGConnectingPoint num="7" id="140" /> -<TGConnectingPoint num="8" id="141" /> -<TGConnectingPoint num="9" id="142" /> -<TGConnectingPoint num="10" id="143" /> -<TGConnectingPoint num="11" id="144" /> -<TGConnectingPoint num="12" id="145" /> -<TGConnectingPoint num="13" id="146" /> -<TGConnectingPoint num="14" id="147" /> -</COMPONENT> - -<COMPONENT type="5201" id="164" > -<cdparam x="580" y="246" /> -<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="128" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> -<infoparam name="AvatarProperty" value="WalletCoinProperty" /> -<TGConnectingPoint num="0" id="149" /> -<TGConnectingPoint num="1" id="150" /> -<TGConnectingPoint num="2" id="151" /> -<TGConnectingPoint num="3" id="152" /> -<TGConnectingPoint num="4" id="153" /> -<TGConnectingPoint num="5" id="154" /> -<TGConnectingPoint num="6" id="155" /> -<TGConnectingPoint num="7" id="156" /> -<TGConnectingPoint num="8" id="157" /> -<TGConnectingPoint num="9" id="158" /> -<TGConnectingPoint num="10" id="159" /> -<TGConnectingPoint num="11" id="160" /> -<TGConnectingPoint num="12" id="161" /> -<TGConnectingPoint num="13" id="162" /> -<TGConnectingPoint num="14" id="163" /> -</COMPONENT> - <COMPONENT type="5200" id="208" > -<cdparam x="234" y="147" /> -<sizeparam width="271" height="104" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" /> +<cdparam x="10" y="182" /> +<sizeparam width="150" height="120" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="136" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> -<infoparam name="Requirement" value="req1" /> +<infoparam name="Requirement" value="Req_CoffeeMachine" /> <TGConnectingPoint num="0" id="165" /> <TGConnectingPoint num="1" id="166" /> <TGConnectingPoint num="2" id="167" /> @@ -291,11 +292,10 @@ <TGConnectingPoint num="41" id="206" /> <TGConnectingPoint num="42" id="207" /> <extraparam> -<textline data="A wallet must never contain a " /> -<textline data="negative number of coins" /> +<textline data="Requirements of the coffee machine" /> <kind data="Functional" /> <criticality data="Low" /> -<reqType data="0" /> +<reqType data="Requirement" /> <id data="0" /> <satisfied data="false" /> <verified data="false" /> @@ -306,11 +306,11 @@ </COMPONENT> <COMPONENT type="5201" id="224" > -<cdparam x="582" y="155" /> -<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="117" minDesiredHeight="0" /> +<cdparam x="678" y="396" /> +<sizeparam width="171" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="158" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> -<infoparam name="AvatarProperty" value="OneCoinProperty" /> +<infoparam name="AvatarProperty" value="BeverageDeliverProperty" /> <TGConnectingPoint num="0" id="209" /> <TGConnectingPoint num="1" id="210" /> <TGConnectingPoint num="2" id="211" /> @@ -328,12 +328,12 @@ <TGConnectingPoint num="14" id="223" /> </COMPONENT> -<COMPONENT type="5200" id="268" > -<cdparam x="192" y="16" /> -<sizeparam width="304" height="110" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" /> +<COMPONENT type="5201" id="240" > +<cdparam x="628" y="308" /> +<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="128" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> -<infoparam name="Requirement" value="req0" /> +<infoparam name="AvatarProperty" value="WalletCoinProperty" /> <TGConnectingPoint num="0" id="225" /> <TGConnectingPoint num="1" id="226" /> <TGConnectingPoint num="2" id="227" /> @@ -349,98 +349,208 @@ <TGConnectingPoint num="12" id="237" /> <TGConnectingPoint num="13" id="238" /> <TGConnectingPoint num="14" id="239" /> -<TGConnectingPoint num="15" id="240" /> -<TGConnectingPoint num="16" id="241" /> -<TGConnectingPoint num="17" id="242" /> -<TGConnectingPoint num="18" id="243" /> -<TGConnectingPoint num="19" id="244" /> -<TGConnectingPoint num="20" id="245" /> -<TGConnectingPoint num="21" id="246" /> -<TGConnectingPoint num="22" id="247" /> -<TGConnectingPoint num="23" id="248" /> -<TGConnectingPoint num="24" id="249" /> -<TGConnectingPoint num="25" id="250" /> -<TGConnectingPoint num="26" id="251" /> -<TGConnectingPoint num="27" id="252" /> -<TGConnectingPoint num="28" id="253" /> -<TGConnectingPoint num="29" id="254" /> -<TGConnectingPoint num="30" id="255" /> -<TGConnectingPoint num="31" id="256" /> -<TGConnectingPoint num="32" id="257" /> -<TGConnectingPoint num="33" id="258" /> -<TGConnectingPoint num="34" id="259" /> -<TGConnectingPoint num="35" id="260" /> -<TGConnectingPoint num="36" id="261" /> -<TGConnectingPoint num="37" id="262" /> -<TGConnectingPoint num="38" id="263" /> -<TGConnectingPoint num="39" id="264" /> -<TGConnectingPoint num="40" id="265" /> -<TGConnectingPoint num="41" id="266" /> -<TGConnectingPoint num="42" id="267" /> +</COMPONENT> + +<COMPONENT type="5200" id="284" > +<cdparam x="233" y="147" /> +<sizeparam width="271" height="104" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Requirement" value="req1" /> +<TGConnectingPoint num="0" id="241" /> +<TGConnectingPoint num="1" id="242" /> +<TGConnectingPoint num="2" id="243" /> +<TGConnectingPoint num="3" id="244" /> +<TGConnectingPoint num="4" id="245" /> +<TGConnectingPoint num="5" id="246" /> +<TGConnectingPoint num="6" id="247" /> +<TGConnectingPoint num="7" id="248" /> +<TGConnectingPoint num="8" id="249" /> +<TGConnectingPoint num="9" id="250" /> +<TGConnectingPoint num="10" id="251" /> +<TGConnectingPoint num="11" id="252" /> +<TGConnectingPoint num="12" id="253" /> +<TGConnectingPoint num="13" id="254" /> +<TGConnectingPoint num="14" id="255" /> +<TGConnectingPoint num="15" id="256" /> +<TGConnectingPoint num="16" id="257" /> +<TGConnectingPoint num="17" id="258" /> +<TGConnectingPoint num="18" id="259" /> +<TGConnectingPoint num="19" id="260" /> +<TGConnectingPoint num="20" id="261" /> +<TGConnectingPoint num="21" id="262" /> +<TGConnectingPoint num="22" id="263" /> +<TGConnectingPoint num="23" id="264" /> +<TGConnectingPoint num="24" id="265" /> +<TGConnectingPoint num="25" id="266" /> +<TGConnectingPoint num="26" id="267" /> +<TGConnectingPoint num="27" id="268" /> +<TGConnectingPoint num="28" id="269" /> +<TGConnectingPoint num="29" id="270" /> +<TGConnectingPoint num="30" id="271" /> +<TGConnectingPoint num="31" id="272" /> +<TGConnectingPoint num="32" id="273" /> +<TGConnectingPoint num="33" id="274" /> +<TGConnectingPoint num="34" id="275" /> +<TGConnectingPoint num="35" id="276" /> +<TGConnectingPoint num="36" id="277" /> +<TGConnectingPoint num="37" id="278" /> +<TGConnectingPoint num="38" id="279" /> +<TGConnectingPoint num="39" id="280" /> +<TGConnectingPoint num="40" id="281" /> +<TGConnectingPoint num="41" id="282" /> +<TGConnectingPoint num="42" id="283" /> +<extraparam> +<textline data="A wallet must never contain a " /> +<textline data="negative number of coins" /> +<kind data="Functional" /> +<criticality data="Low" /> +<reqType data="SafetyRequirement" /> +<id data="0.2" /> +<satisfied data="true" /> +<verified data="true" /> +<attackTreeNode data="" /> +<violatedAction data="" /> +<referenceElements data="" /> +</extraparam> +</COMPONENT> + +<COMPONENT type="5201" id="300" > +<cdparam x="626" y="153" /> +<sizeparam width="150" height="30" minWidth="10" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="117" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="AvatarProperty" value="OneCoinProperty" /> +<TGConnectingPoint num="0" id="285" /> +<TGConnectingPoint num="1" id="286" /> +<TGConnectingPoint num="2" id="287" /> +<TGConnectingPoint num="3" id="288" /> +<TGConnectingPoint num="4" id="289" /> +<TGConnectingPoint num="5" id="290" /> +<TGConnectingPoint num="6" id="291" /> +<TGConnectingPoint num="7" id="292" /> +<TGConnectingPoint num="8" id="293" /> +<TGConnectingPoint num="9" id="294" /> +<TGConnectingPoint num="10" id="295" /> +<TGConnectingPoint num="11" id="296" /> +<TGConnectingPoint num="12" id="297" /> +<TGConnectingPoint num="13" id="298" /> +<TGConnectingPoint num="14" id="299" /> +</COMPONENT> + +<COMPONENT type="5200" id="344" > +<cdparam x="192" y="15" /> +<sizeparam width="304" height="110" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="75" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="Requirement" value="req3456" /> +<TGConnectingPoint num="0" id="301" /> +<TGConnectingPoint num="1" id="302" /> +<TGConnectingPoint num="2" id="303" /> +<TGConnectingPoint num="3" id="304" /> +<TGConnectingPoint num="4" id="305" /> +<TGConnectingPoint num="5" id="306" /> +<TGConnectingPoint num="6" id="307" /> +<TGConnectingPoint num="7" id="308" /> +<TGConnectingPoint num="8" id="309" /> +<TGConnectingPoint num="9" id="310" /> +<TGConnectingPoint num="10" id="311" /> +<TGConnectingPoint num="11" id="312" /> +<TGConnectingPoint num="12" id="313" /> +<TGConnectingPoint num="13" id="314" /> +<TGConnectingPoint num="14" id="315" /> +<TGConnectingPoint num="15" id="316" /> +<TGConnectingPoint num="16" id="317" /> +<TGConnectingPoint num="17" id="318" /> +<TGConnectingPoint num="18" id="319" /> +<TGConnectingPoint num="19" id="320" /> +<TGConnectingPoint num="20" id="321" /> +<TGConnectingPoint num="21" id="322" /> +<TGConnectingPoint num="22" id="323" /> +<TGConnectingPoint num="23" id="324" /> +<TGConnectingPoint num="24" id="325" /> +<TGConnectingPoint num="25" id="326" /> +<TGConnectingPoint num="26" id="327" /> +<TGConnectingPoint num="27" id="328" /> +<TGConnectingPoint num="28" id="329" /> +<TGConnectingPoint num="29" id="330" /> +<TGConnectingPoint num="30" id="331" /> +<TGConnectingPoint num="31" id="332" /> +<TGConnectingPoint num="32" id="333" /> +<TGConnectingPoint num="33" id="334" /> +<TGConnectingPoint num="34" id="335" /> +<TGConnectingPoint num="35" id="336" /> +<TGConnectingPoint num="36" id="337" /> +<TGConnectingPoint num="37" id="338" /> +<TGConnectingPoint num="38" id="339" /> +<TGConnectingPoint num="39" id="340" /> +<TGConnectingPoint num="40" id="341" /> +<TGConnectingPoint num="41" id="342" /> +<TGConnectingPoint num="42" id="343" /> <extraparam> <textline data="The coffee machine never has one coin " /> <textline data=" inserted more than 50 units of time" /> <kind data="Functional" /> <criticality data="Low" /> -<reqType data="0" /> -<id data="123" /> +<reqType data="AMSRequirement" /> +<id data="0.1" /> <satisfied data="false" /> -<verified data="false" /> +<verified data="true" /> <attackTreeNode data="" /> <violatedAction data="" /> <referenceElements data="" /> </extraparam> </COMPONENT> -<COMPONENT type="5200" id="312" > -<cdparam x="206" y="294" /> -<sizeparam width="357" height="135" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" /> +<COMPONENT type="5200" id="388" > +<cdparam x="208" y="294" /> +<sizeparam width="357" height="174" minWidth="1" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="48" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> <infoparam name="Requirement" value="req2" /> -<TGConnectingPoint num="0" id="269" /> -<TGConnectingPoint num="1" id="270" /> -<TGConnectingPoint num="2" id="271" /> -<TGConnectingPoint num="3" id="272" /> -<TGConnectingPoint num="4" id="273" /> -<TGConnectingPoint num="5" id="274" /> -<TGConnectingPoint num="6" id="275" /> -<TGConnectingPoint num="7" id="276" /> -<TGConnectingPoint num="8" id="277" /> -<TGConnectingPoint num="9" id="278" /> -<TGConnectingPoint num="10" id="279" /> -<TGConnectingPoint num="11" id="280" /> -<TGConnectingPoint num="12" id="281" /> -<TGConnectingPoint num="13" id="282" /> -<TGConnectingPoint num="14" id="283" /> -<TGConnectingPoint num="15" id="284" /> -<TGConnectingPoint num="16" id="285" /> -<TGConnectingPoint num="17" id="286" /> -<TGConnectingPoint num="18" id="287" /> -<TGConnectingPoint num="19" id="288" /> -<TGConnectingPoint num="20" id="289" /> -<TGConnectingPoint num="21" id="290" /> -<TGConnectingPoint num="22" id="291" /> -<TGConnectingPoint num="23" id="292" /> -<TGConnectingPoint num="24" id="293" /> -<TGConnectingPoint num="25" id="294" /> -<TGConnectingPoint num="26" id="295" /> -<TGConnectingPoint num="27" id="296" /> -<TGConnectingPoint num="28" id="297" /> -<TGConnectingPoint num="29" id="298" /> -<TGConnectingPoint num="30" id="299" /> -<TGConnectingPoint num="31" id="300" /> -<TGConnectingPoint num="32" id="301" /> -<TGConnectingPoint num="33" id="302" /> -<TGConnectingPoint num="34" id="303" /> -<TGConnectingPoint num="35" id="304" /> -<TGConnectingPoint num="36" id="305" /> -<TGConnectingPoint num="37" id="306" /> -<TGConnectingPoint num="38" id="307" /> -<TGConnectingPoint num="39" id="308" /> -<TGConnectingPoint num="40" id="309" /> -<TGConnectingPoint num="41" id="310" /> -<TGConnectingPoint num="42" id="311" /> +<TGConnectingPoint num="0" id="345" /> +<TGConnectingPoint num="1" id="346" /> +<TGConnectingPoint num="2" id="347" /> +<TGConnectingPoint num="3" id="348" /> +<TGConnectingPoint num="4" id="349" /> +<TGConnectingPoint num="5" id="350" /> +<TGConnectingPoint num="6" id="351" /> +<TGConnectingPoint num="7" id="352" /> +<TGConnectingPoint num="8" id="353" /> +<TGConnectingPoint num="9" id="354" /> +<TGConnectingPoint num="10" id="355" /> +<TGConnectingPoint num="11" id="356" /> +<TGConnectingPoint num="12" id="357" /> +<TGConnectingPoint num="13" id="358" /> +<TGConnectingPoint num="14" id="359" /> +<TGConnectingPoint num="15" id="360" /> +<TGConnectingPoint num="16" id="361" /> +<TGConnectingPoint num="17" id="362" /> +<TGConnectingPoint num="18" id="363" /> +<TGConnectingPoint num="19" id="364" /> +<TGConnectingPoint num="20" id="365" /> +<TGConnectingPoint num="21" id="366" /> +<TGConnectingPoint num="22" id="367" /> +<TGConnectingPoint num="23" id="368" /> +<TGConnectingPoint num="24" id="369" /> +<TGConnectingPoint num="25" id="370" /> +<TGConnectingPoint num="26" id="371" /> +<TGConnectingPoint num="27" id="372" /> +<TGConnectingPoint num="28" id="373" /> +<TGConnectingPoint num="29" id="374" /> +<TGConnectingPoint num="30" id="375" /> +<TGConnectingPoint num="31" id="376" /> +<TGConnectingPoint num="32" id="377" /> +<TGConnectingPoint num="33" id="378" /> +<TGConnectingPoint num="34" id="379" /> +<TGConnectingPoint num="35" id="380" /> +<TGConnectingPoint num="36" id="381" /> +<TGConnectingPoint num="37" id="382" /> +<TGConnectingPoint num="38" id="383" /> +<TGConnectingPoint num="39" id="384" /> +<TGConnectingPoint num="40" id="385" /> +<TGConnectingPoint num="41" id="386" /> +<TGConnectingPoint num="42" id="387" /> <extraparam> <textline data="When the application starts, if the wallet contains " /> <textline data="at least 2 coins, then a beverage may be delivered. " /> @@ -449,123 +559,234 @@ <textline data="machine." /> <kind data="Functional" /> <criticality data="Low" /> -<reqType data="0" /> -<id data="0" /> -<satisfied data="false" /> -<verified data="false" /> +<reqType data="SecurityRequirement" /> +<id data="0.3" /> +<satisfied data="true" /> +<verified data="true" /> <attackTreeNode data="" /> <violatedAction data="" /> -<referenceElements data="" /> +<referenceElements data="RefAttack" /> +<extraAttribute id="Hypothèse" value="le système ..." /> </extraparam> </COMPONENT> -<CONNECTOR type="5202" id="314" > -<cdparam x="659" y="79" /> -<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<infoparam name="connector from Requirement to Requirement" value="<<deriveReqt>>" /> -<TGConnectingPoint num="0" id="313" /> -<P1 x="661" y="47" id="1" /> -<P2 x="496" y="43" id="228" /> +<CONNECTOR type="5202" id="390" > +<cdparam x="894" y="479" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="389" /> +<P1 x="894" y="479" id="7" /> +<P2 x="939" y="106" id="82" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5202" id="392" > +<cdparam x="800" y="136" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<deriveReqt>>" /> +<TGConnectingPoint num="0" id="391" /> +<P1 x="800" y="136" id="87" /> +<P2 x="496" y="42" id="304" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5206" id="394" > +<cdparam x="271" y="491" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<refine>>" /> +<TGConnectingPoint num="0" id="393" /> +<P1 x="271" y="491" id="129" /> +<P2 x="297" y="468" id="354" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5206" id="400" > +<cdparam x="271" y="611" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<refine>>" /> +<TGConnectingPoint num="0" id="397" /> +<TGConnectingPoint num="1" id="398" /> +<TGConnectingPoint num="2" id="399" /> +<P1 x="271" y="611" id="132" /> +<P2 x="944" y="599" id="11" /> +<Point x="318" y="685" /> +<Point x="769" y="688" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="395" > +<father id="400" num="0" /> +<cdparam x="318" y="685" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="-1" id="396" > +<father id="400" num="1" /> +<cdparam x="769" y="688" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1900" minY="10" maxY="900" /> +<infoparam name="point " value="null" /> +</SUBCOMPONENT> + +<CONNECTOR type="5206" id="402" > +<cdparam x="894" y="599" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<refine>>" /> +<TGConnectingPoint num="0" id="401" /> +<P1 x="894" y="599" id="10" /> +<P2 x="347" y="581" id="126" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5205" id="404" > +<cdparam x="47" y="302" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<composition>>" /> +<TGConnectingPoint num="0" id="403" /> +<P1 x="47" y="302" id="174" /> +<P2 x="46" y="521" id="121" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5205" id="406" > +<cdparam x="844" y="569" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<composition>>" /> +<TGConnectingPoint num="0" id="405" /> +<P1 x="844" y="569" id="3" /> +<P2 x="347" y="551" id="125" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5205" id="316" > +<CONNECTOR type="5205" id="408" > +<cdparam x="869" y="136" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<composition>>" /> +<TGConnectingPoint num="0" id="407" /> +<P1 x="869" y="136" id="88" /> +<P2 x="944" y="479" id="8" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5205" id="410" > +<cdparam x="661" y="76" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<composition>>" /> +<TGConnectingPoint num="0" id="409" /> +<P1 x="661" y="76" id="78" /> +<P2 x="496" y="70" id="305" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5208" id="412" > +<cdparam x="749" y="267" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<satisfy>>" /> +<TGConnectingPoint num="0" id="411" /> +<P1 x="727" y="267" id="46" /> +<P2 x="504" y="199" id="273" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5208" id="414" > +<cdparam x="783" y="223" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="<<satisfy>>" /> +<TGConnectingPoint num="0" id="413" /> +<P1 x="741" y="223" id="63" /> +<P2 x="504" y="173" id="272" /> +<AutomaticDrawing data="true" /> +</CONNECTOR> +<CONNECTOR type="5205" id="416" > <cdparam x="124" y="457" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Requirement to Requirement" value="<<composition>>" /> -<TGConnectingPoint num="0" id="315" /> -<P1 x="122" y="457" id="51" /> -<P2 x="122" y="302" id="100" /> +<TGConnectingPoint num="0" id="415" /> +<P1 x="121" y="491" id="127" /> +<P2 x="122" y="302" id="176" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5205" id="318" > +<CONNECTOR type="5205" id="418" > <cdparam x="244" y="315" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Requirement to Requirement" value="<<composition>>" /> -<TGConnectingPoint num="0" id="317" /> -<P1 x="206" y="327" id="269" /> -<P2 x="160" y="272" id="94" /> +<TGConnectingPoint num="0" id="417" /> +<P1 x="208" y="337" id="345" /> +<P2 x="160" y="272" id="170" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5205" id="320" > +<CONNECTOR type="5205" id="420" > <cdparam x="249" y="199" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Requirement to Requirement" value="<<composition>>" /> -<TGConnectingPoint num="0" id="319" /> -<P1 x="234" y="199" id="166" /> -<P2 x="160" y="212" id="92" /> +<TGConnectingPoint num="0" id="419" /> +<P1 x="233" y="199" id="242" /> +<P2 x="160" y="212" id="168" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5205" id="322" > +<CONNECTOR type="5205" id="422" > <cdparam x="237" y="98" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Requirement to Requirement" value="<<composition>>" /> -<TGConnectingPoint num="0" id="321" /> -<P1 x="192" y="98" id="227" /> -<P2 x="122" y="182" id="97" /> +<TGConnectingPoint num="0" id="421" /> +<P1 x="192" y="97" id="303" /> +<P2 x="122" y="182" id="173" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5203" id="324" > +<CONNECTOR type="5203" id="424" > <cdparam x="538" y="537" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from AvatarProperty to Requirement" value="<<verify>>" /> -<TGConnectingPoint num="0" id="323" /> -<P1 x="627" y="391" id="134" /> -<P2 x="563" y="361" id="285" /> +<TGConnectingPoint num="0" id="423" /> +<P1 x="678" y="411" id="210" /> +<P2 x="565" y="381" id="361" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5203" id="326" > +<CONNECTOR type="5203" id="426" > <cdparam x="545" y="329" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from AvatarProperty to Requirement" value="<<verify>>" /> -<TGConnectingPoint num="0" id="325" /> -<P1 x="580" y="261" id="150" /> -<P2 x="505" y="199" id="181" /> +<TGConnectingPoint num="0" id="425" /> +<P1 x="628" y="323" id="226" /> +<P2 x="504" y="199" id="257" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5203" id="328" > +<CONNECTOR type="5203" id="428" > <cdparam x="563" y="148" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from AvatarProperty to Requirement" value="<<verify>>" /> -<TGConnectingPoint num="0" id="327" /> -<P1 x="582" y="170" id="210" /> -<P2 x="496" y="98" id="242" /> +<TGConnectingPoint num="0" id="427" /> +<P1 x="626" y="168" id="286" /> +<P2 x="496" y="97" id="318" /> <AutomaticDrawing data="true" /> </CONNECTOR> </AvatarRDPanel> <AvatarPDPanel name="AVATAR PD" minX="10" maxX="1400" minY="10" maxY="900" zoom="1.0000000000000004" > -<CONNECTOR type="5312" id="330" > +<CONNECTOR type="5312" id="430" > <cdparam x="582" y="248" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="reg" /> -<TGConnectingPoint num="0" id="329" /> -<P1 x="503" y="258" id="455" /> -<P2 x="507" y="334" id="343" /> +<TGConnectingPoint num="0" id="429" /> +<P1 x="502" y="258" id="555" /> +<P2 x="502" y="334" id="443" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5310" id="336" > +<CONNECTOR type="5310" id="436" > <cdparam x="247" y="616" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> -<TGConnectingPoint num="0" id="333" /> -<TGConnectingPoint num="1" id="334" /> -<TGConnectingPoint num="2" id="335" /> -<P1 x="492" y="126" id="418" /> -<P2 x="492" y="209" id="459" /> +<TGConnectingPoint num="0" id="433" /> +<TGConnectingPoint num="1" id="434" /> +<TGConnectingPoint num="2" id="435" /> +<P1 x="492" y="126" id="518" /> +<P2 x="492" y="209" id="559" /> <Point x="467" y="147" /> <Point x="467" y="192" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="331" > -<father id="336" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="431" > +<father id="436" num="0" /> <cdparam x="467" y="147" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> </SUBCOMPONENT> -<SUBCOMPONENT type="-1" id="332" > -<father id="336" num="1" /> +<SUBCOMPONENT type="-1" id="432" > +<father id="436" num="1" /> <cdparam x="467" y="192" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -573,229 +794,229 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="5311" id="338" > +<CONNECTOR type="5311" id="438" > <cdparam x="280" y="200" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> -<TGConnectingPoint num="0" id="337" /> -<P1 x="318" y="261" id="368" /> -<P2 x="361" y="261" id="356" /> +<TGConnectingPoint num="0" id="437" /> +<P1 x="302" y="261" id="481" /> +<P2 x="361" y="261" id="456" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5312" id="340" > +<CONNECTOR type="5312" id="440" > <cdparam x="473" y="190" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="reg" /> -<TGConnectingPoint num="0" id="339" /> -<P1 x="390" y="286" id="354" /> -<P2 x="394" y="331" id="348" /> +<TGConnectingPoint num="0" id="439" /> +<P1 x="390" y="286" id="454" /> +<P2 x="390" y="331" id="448" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5311" id="342" > +<CONNECTOR type="5311" id="442" > <cdparam x="276" y="190" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> -<TGConnectingPoint num="0" id="341" /> -<P1 x="318" y="211" id="381" /> -<P2 x="361" y="211" id="355" /> +<TGConnectingPoint num="0" id="441" /> +<P1 x="305" y="211" id="468" /> +<P2 x="361" y="211" id="455" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<COMPONENT type="5308" id="347" > +<COMPONENT type="5308" id="447" > <cdparam x="446" y="334" /> -<sizeparam width="122" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<sizeparam width="112" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1401" minY="10" maxY="901" /> <infoparam name="TGComponent" value="WalletCoinProperty" /> -<TGConnectingPoint num="0" id="343" /> -<TGConnectingPoint num="1" id="344" /> -<TGConnectingPoint num="2" id="345" /> -<TGConnectingPoint num="3" id="346" /> +<TGConnectingPoint num="0" id="443" /> +<TGConnectingPoint num="1" id="444" /> +<TGConnectingPoint num="2" id="445" /> +<TGConnectingPoint num="3" id="446" /> <extraparam> <liveness data="0" /> <not data="false" /> </extraparam> </COMPONENT> -<COMPONENT type="5308" id="352" > +<COMPONENT type="5308" id="452" > <cdparam x="340" y="331" /> -<sizeparam width="108" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<sizeparam width="100" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1401" minY="10" maxY="901" /> <infoparam name="TGComponent" value="oneCoinProperty" /> -<TGConnectingPoint num="0" id="348" /> -<TGConnectingPoint num="1" id="349" /> -<TGConnectingPoint num="2" id="350" /> -<TGConnectingPoint num="3" id="351" /> +<TGConnectingPoint num="0" id="448" /> +<TGConnectingPoint num="1" id="449" /> +<TGConnectingPoint num="2" id="450" /> +<TGConnectingPoint num="3" id="451" /> <extraparam> <liveness data="1" /> <not data="true" /> </extraparam> </COMPONENT> -<COMPONENT type="5302" id="365" > +<COMPONENT type="5302" id="465" > <cdparam x="361" y="187" /> <sizeparam width="59" height="99" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1401" minY="10" maxY="901" /> <infoparam name="TGComponent" value=">50" /> -<TGConnectingPoint num="0" id="353" /> -<TGConnectingPoint num="1" id="354" /> -<TGConnectingPoint num="2" id="355" /> -<TGConnectingPoint num="3" id="356" /> -<TGConnectingPoint num="4" id="357" /> -<TGConnectingPoint num="5" id="358" /> -<TGConnectingPoint num="6" id="359" /> -<TGConnectingPoint num="7" id="360" /> -<TGConnectingPoint num="8" id="361" /> -<TGConnectingPoint num="9" id="362" /> -<TGConnectingPoint num="10" id="363" /> -<TGConnectingPoint num="11" id="364" /> +<TGConnectingPoint num="0" id="453" /> +<TGConnectingPoint num="1" id="454" /> +<TGConnectingPoint num="2" id="455" /> +<TGConnectingPoint num="3" id="456" /> +<TGConnectingPoint num="4" id="457" /> +<TGConnectingPoint num="5" id="458" /> +<TGConnectingPoint num="6" id="459" /> +<TGConnectingPoint num="7" id="460" /> +<TGConnectingPoint num="8" id="461" /> +<TGConnectingPoint num="9" id="462" /> +<TGConnectingPoint num="10" id="463" /> +<TGConnectingPoint num="11" id="464" /> </COMPONENT> -<COMPONENT type="5300" id="416" > +<COMPONENT type="5300" id="516" > <cdparam x="150" y="142" /> <sizeparam width="168" height="154" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1401" minY="10" maxY="901" /> <infoparam name="Block0" value="CoffeeMachine" /> -<TGConnectingPoint num="0" id="392" /> -<TGConnectingPoint num="1" id="393" /> -<TGConnectingPoint num="2" id="394" /> -<TGConnectingPoint num="3" id="395" /> -<TGConnectingPoint num="4" id="396" /> -<TGConnectingPoint num="5" id="397" /> -<TGConnectingPoint num="6" id="398" /> -<TGConnectingPoint num="7" id="399" /> -<TGConnectingPoint num="8" id="400" /> -<TGConnectingPoint num="9" id="401" /> -<TGConnectingPoint num="10" id="402" /> -<TGConnectingPoint num="11" id="403" /> -<TGConnectingPoint num="12" id="404" /> -<TGConnectingPoint num="13" id="405" /> -<TGConnectingPoint num="14" id="406" /> -<TGConnectingPoint num="15" id="407" /> -<TGConnectingPoint num="16" id="408" /> -<TGConnectingPoint num="17" id="409" /> -<TGConnectingPoint num="18" id="410" /> -<TGConnectingPoint num="19" id="411" /> -<TGConnectingPoint num="20" id="412" /> -<TGConnectingPoint num="21" id="413" /> -<TGConnectingPoint num="22" id="414" /> -<TGConnectingPoint num="23" id="415" /> +<TGConnectingPoint num="0" id="492" /> +<TGConnectingPoint num="1" id="493" /> +<TGConnectingPoint num="2" id="494" /> +<TGConnectingPoint num="3" id="495" /> +<TGConnectingPoint num="4" id="496" /> +<TGConnectingPoint num="5" id="497" /> +<TGConnectingPoint num="6" id="498" /> +<TGConnectingPoint num="7" id="499" /> +<TGConnectingPoint num="8" id="500" /> +<TGConnectingPoint num="9" id="501" /> +<TGConnectingPoint num="10" id="502" /> +<TGConnectingPoint num="11" id="503" /> +<TGConnectingPoint num="12" id="504" /> +<TGConnectingPoint num="13" id="505" /> +<TGConnectingPoint num="14" id="506" /> +<TGConnectingPoint num="15" id="507" /> +<TGConnectingPoint num="16" id="508" /> +<TGConnectingPoint num="17" id="509" /> +<TGConnectingPoint num="18" id="510" /> +<TGConnectingPoint num="19" id="511" /> +<TGConnectingPoint num="20" id="512" /> +<TGConnectingPoint num="21" id="513" /> +<TGConnectingPoint num="22" id="514" /> +<TGConnectingPoint num="23" id="515" /> </COMPONENT> -<SUBCOMPONENT type="5304" id="378" > -<father id="416" num="0" /> -<cdparam x="154" y="241" /> -<sizeparam width="164" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="0" maxX="4" minY="0" maxY="114" /> -<infoparam name="TGComponent" value="WaitingForFirstCoin_enter" /> -<TGConnectingPoint num="0" id="366" /> -<TGConnectingPoint num="1" id="367" /> -<TGConnectingPoint num="2" id="368" /> -<TGConnectingPoint num="3" id="369" /> -<TGConnectingPoint num="4" id="370" /> -<TGConnectingPoint num="5" id="371" /> -<TGConnectingPoint num="6" id="372" /> -<TGConnectingPoint num="7" id="373" /> -<TGConnectingPoint num="8" id="374" /> -<TGConnectingPoint num="9" id="375" /> -<TGConnectingPoint num="10" id="376" /> -<TGConnectingPoint num="11" id="377" /> -</SUBCOMPONENT> -<SUBCOMPONENT type="5304" id="391" > -<father id="416" num="1" /> +<SUBCOMPONENT type="5304" id="478" > +<father id="516" num="0" /> <cdparam x="166" y="191" /> -<sizeparam width="152" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<sizeparam width="139" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="16" minY="0" maxY="114" /> +<cdrectangleparam minX="0" maxX="29" minY="0" maxY="114" /> <infoparam name="TGComponent" value="WaitingForFirstCoin_exit" /> -<TGConnectingPoint num="0" id="379" /> -<TGConnectingPoint num="1" id="380" /> -<TGConnectingPoint num="2" id="381" /> -<TGConnectingPoint num="3" id="382" /> -<TGConnectingPoint num="4" id="383" /> -<TGConnectingPoint num="5" id="384" /> -<TGConnectingPoint num="6" id="385" /> -<TGConnectingPoint num="7" id="386" /> -<TGConnectingPoint num="8" id="387" /> -<TGConnectingPoint num="9" id="388" /> -<TGConnectingPoint num="10" id="389" /> -<TGConnectingPoint num="11" id="390" /> +<TGConnectingPoint num="0" id="466" /> +<TGConnectingPoint num="1" id="467" /> +<TGConnectingPoint num="2" id="468" /> +<TGConnectingPoint num="3" id="469" /> +<TGConnectingPoint num="4" id="470" /> +<TGConnectingPoint num="5" id="471" /> +<TGConnectingPoint num="6" id="472" /> +<TGConnectingPoint num="7" id="473" /> +<TGConnectingPoint num="8" id="474" /> +<TGConnectingPoint num="9" id="475" /> +<TGConnectingPoint num="10" id="476" /> +<TGConnectingPoint num="11" id="477" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5304" id="491" > +<father id="516" num="1" /> +<cdparam x="154" y="241" /> +<sizeparam width="148" height="40" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="20" minY="0" maxY="114" /> +<infoparam name="TGComponent" value="WaitingForFirstCoin_enter" /> +<TGConnectingPoint num="0" id="479" /> +<TGConnectingPoint num="1" id="480" /> +<TGConnectingPoint num="2" id="481" /> +<TGConnectingPoint num="3" id="482" /> +<TGConnectingPoint num="4" id="483" /> +<TGConnectingPoint num="5" id="484" /> +<TGConnectingPoint num="6" id="485" /> +<TGConnectingPoint num="7" id="486" /> +<TGConnectingPoint num="8" id="487" /> +<TGConnectingPoint num="9" id="488" /> +<TGConnectingPoint num="10" id="489" /> +<TGConnectingPoint num="11" id="490" /> </SUBCOMPONENT> -<COMPONENT type="5300" id="454" > +<COMPONENT type="5300" id="554" > <cdparam x="459" y="61" /> <sizeparam width="150" height="116" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1401" minY="10" maxY="901" /> <infoparam name="Block0" value="Wallet" /> -<TGConnectingPoint num="0" id="430" /> -<TGConnectingPoint num="1" id="431" /> -<TGConnectingPoint num="2" id="432" /> -<TGConnectingPoint num="3" id="433" /> -<TGConnectingPoint num="4" id="434" /> -<TGConnectingPoint num="5" id="435" /> -<TGConnectingPoint num="6" id="436" /> -<TGConnectingPoint num="7" id="437" /> -<TGConnectingPoint num="8" id="438" /> -<TGConnectingPoint num="9" id="439" /> -<TGConnectingPoint num="10" id="440" /> -<TGConnectingPoint num="11" id="441" /> -<TGConnectingPoint num="12" id="442" /> -<TGConnectingPoint num="13" id="443" /> -<TGConnectingPoint num="14" id="444" /> -<TGConnectingPoint num="15" id="445" /> -<TGConnectingPoint num="16" id="446" /> -<TGConnectingPoint num="17" id="447" /> -<TGConnectingPoint num="18" id="448" /> -<TGConnectingPoint num="19" id="449" /> -<TGConnectingPoint num="20" id="450" /> -<TGConnectingPoint num="21" id="451" /> -<TGConnectingPoint num="22" id="452" /> -<TGConnectingPoint num="23" id="453" /> +<TGConnectingPoint num="0" id="530" /> +<TGConnectingPoint num="1" id="531" /> +<TGConnectingPoint num="2" id="532" /> +<TGConnectingPoint num="3" id="533" /> +<TGConnectingPoint num="4" id="534" /> +<TGConnectingPoint num="5" id="535" /> +<TGConnectingPoint num="6" id="536" /> +<TGConnectingPoint num="7" id="537" /> +<TGConnectingPoint num="8" id="538" /> +<TGConnectingPoint num="9" id="539" /> +<TGConnectingPoint num="10" id="540" /> +<TGConnectingPoint num="11" id="541" /> +<TGConnectingPoint num="12" id="542" /> +<TGConnectingPoint num="13" id="543" /> +<TGConnectingPoint num="14" id="544" /> +<TGConnectingPoint num="15" id="545" /> +<TGConnectingPoint num="16" id="546" /> +<TGConnectingPoint num="17" id="547" /> +<TGConnectingPoint num="18" id="548" /> +<TGConnectingPoint num="19" id="549" /> +<TGConnectingPoint num="20" id="550" /> +<TGConnectingPoint num="21" id="551" /> +<TGConnectingPoint num="22" id="552" /> +<TGConnectingPoint num="23" id="553" /> </COMPONENT> -<SUBCOMPONENT type="5303" id="429" > -<father id="454" num="0" /> +<SUBCOMPONENT type="5303" id="529" > +<father id="554" num="0" /> <cdparam x="492" y="102" /> <sizeparam width="100" height="49" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="0" maxX="50" minY="0" maxY="67" /> <infoparam name="TGComponent" value="nbOfCoins" /> -<TGConnectingPoint num="0" id="417" /> -<TGConnectingPoint num="1" id="418" /> -<TGConnectingPoint num="2" id="419" /> -<TGConnectingPoint num="3" id="420" /> -<TGConnectingPoint num="4" id="421" /> -<TGConnectingPoint num="5" id="422" /> -<TGConnectingPoint num="6" id="423" /> -<TGConnectingPoint num="7" id="424" /> -<TGConnectingPoint num="8" id="425" /> -<TGConnectingPoint num="9" id="426" /> -<TGConnectingPoint num="10" id="427" /> -<TGConnectingPoint num="11" id="428" /> +<TGConnectingPoint num="0" id="517" /> +<TGConnectingPoint num="1" id="518" /> +<TGConnectingPoint num="2" id="519" /> +<TGConnectingPoint num="3" id="520" /> +<TGConnectingPoint num="4" id="521" /> +<TGConnectingPoint num="5" id="522" /> +<TGConnectingPoint num="6" id="523" /> +<TGConnectingPoint num="7" id="524" /> +<TGConnectingPoint num="8" id="525" /> +<TGConnectingPoint num="9" id="526" /> +<TGConnectingPoint num="10" id="527" /> +<TGConnectingPoint num="11" id="528" /> <extraparam> <Toggle value="" /> </extraparam> </SUBCOMPONENT> -<COMPONENT type="5306" id="466" > +<COMPONENT type="5306" id="566" > <cdparam x="467" y="209" /> -<sizeparam width="103" height="49" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<sizeparam width="100" height="49" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1401" minY="10" maxY="901" /> <infoparam name="TGComponent" value="nbOfCoins >= 0" /> -<TGConnectingPoint num="0" id="455" /> -<TGConnectingPoint num="1" id="456" /> -<TGConnectingPoint num="2" id="457" /> -<TGConnectingPoint num="3" id="458" /> -<TGConnectingPoint num="4" id="459" /> -<TGConnectingPoint num="5" id="460" /> -<TGConnectingPoint num="6" id="461" /> -<TGConnectingPoint num="7" id="462" /> -<TGConnectingPoint num="8" id="463" /> -<TGConnectingPoint num="9" id="464" /> -<TGConnectingPoint num="10" id="465" /> +<TGConnectingPoint num="0" id="555" /> +<TGConnectingPoint num="1" id="556" /> +<TGConnectingPoint num="2" id="557" /> +<TGConnectingPoint num="3" id="558" /> +<TGConnectingPoint num="4" id="559" /> +<TGConnectingPoint num="5" id="560" /> +<TGConnectingPoint num="6" id="561" /> +<TGConnectingPoint num="7" id="562" /> +<TGConnectingPoint num="8" id="563" /> +<TGConnectingPoint num="9" id="564" /> +<TGConnectingPoint num="10" id="565" /> <extraparam> <Toggle value="" /> </extraparam> @@ -805,55 +1026,55 @@ </AvatarPDPanel> <AvatarPDPanel name="AVATAR PD" minX="10" maxX="1400" minY="10" maxY="1400" zoom="1.0" > -<CONNECTOR type="5312" id="468" > +<CONNECTOR type="5312" id="568" > <cdparam x="580" y="547" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="reg" /> -<TGConnectingPoint num="0" id="467" /> -<P1 x="637" y="538" id="649" /> -<P2 x="638" y="563" id="500" /> +<TGConnectingPoint num="0" id="567" /> +<P1 x="637" y="538" id="749" /> +<P2 x="632" y="563" id="600" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5312" id="470" > +<CONNECTOR type="5312" id="570" > <cdparam x="506" y="493" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="reg" /> -<TGConnectingPoint num="0" id="469" /> -<P1 x="577" y="471" id="654" /> -<P2 x="617" y="498" id="642" /> +<TGConnectingPoint num="0" id="569" /> +<P1 x="577" y="471" id="754" /> +<P2 x="617" y="498" id="742" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5312" id="472" > +<CONNECTOR type="5312" id="572" > <cdparam x="694" y="460" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="reg" /> -<TGConnectingPoint num="0" id="471" /> -<P1 x="694" y="472" id="496" /> -<P2 x="657" y="498" id="644" /> +<TGConnectingPoint num="0" id="571" /> +<P1 x="694" y="472" id="596" /> +<P2 x="657" y="498" id="744" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5311" id="478" > +<CONNECTOR type="5311" id="578" > <cdparam x="581" y="133" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> -<TGConnectingPoint num="0" id="475" /> -<TGConnectingPoint num="1" id="476" /> -<TGConnectingPoint num="2" id="477" /> -<P1 x="581" y="154" id="564" /> -<P2 x="546" y="305" id="621" /> +<TGConnectingPoint num="0" id="575" /> +<TGConnectingPoint num="1" id="576" /> +<TGConnectingPoint num="2" id="577" /> +<P1 x="581" y="154" id="651" /> +<P2 x="546" y="305" id="721" /> <Point x="518" y="154" /> <Point x="518" y="305" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="473" > -<father id="478" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="573" > +<father id="578" num="0" /> <cdparam x="518" y="154" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="point " value="null" /> </SUBCOMPONENT> -<SUBCOMPONENT type="-1" id="474" > -<father id="478" num="1" /> +<SUBCOMPONENT type="-1" id="574" > +<father id="578" num="1" /> <cdparam x="518" y="305" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -861,18 +1082,18 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="5311" id="482" > +<CONNECTOR type="5311" id="582" > <cdparam x="631" y="143" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> -<TGConnectingPoint num="0" id="480" /> -<TGConnectingPoint num="1" id="481" /> -<P1 x="631" y="164" id="559" /> -<P2 x="667" y="310" id="608" /> +<TGConnectingPoint num="0" id="580" /> +<TGConnectingPoint num="1" id="581" /> +<P1 x="631" y="164" id="646" /> +<P2 x="667" y="310" id="708" /> <Point x="631" y="310" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="479" > -<father id="482" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="579" > +<father id="582" num="0" /> <cdparam x="631" y="310" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -880,27 +1101,27 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="5312" id="484" > +<CONNECTOR type="5312" id="584" > <cdparam x="695" y="396" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="reg" /> -<TGConnectingPoint num="0" id="483" /> -<P1 x="696" y="385" id="607" /> -<P2 x="694" y="417" id="495" /> +<TGConnectingPoint num="0" id="583" /> +<P1 x="696" y="385" id="707" /> +<P2 x="694" y="417" id="595" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5310" id="488" > +<CONNECTOR type="5310" id="588" > <cdparam x="877" y="168" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> -<TGConnectingPoint num="0" id="486" /> -<TGConnectingPoint num="1" id="487" /> -<P1 x="721" y="158" id="544" /> -<P2 x="700" y="204" id="598" /> +<TGConnectingPoint num="0" id="586" /> +<TGConnectingPoint num="1" id="587" /> +<P1 x="721" y="158" id="657" /> +<P2 x="700" y="204" id="698" /> <Point x="700" y="158" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="485" > -<father id="488" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="585" > +<father id="588" num="0" /> <cdparam x="700" y="158" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> @@ -908,292 +1129,292 @@ <infoparam name="point " value="null" /> </SUBCOMPONENT> -<CONNECTOR type="5312" id="490" > +<CONNECTOR type="5312" id="590" > <cdparam x="915" y="307" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="reg" /> -<TGConnectingPoint num="0" id="489" /> -<P1 x="710" y="254" id="594" /> -<P2 x="711" y="285" id="606" /> +<TGConnectingPoint num="0" id="589" /> +<P1 x="710" y="254" id="694" /> +<P2 x="711" y="285" id="706" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5312" id="492" > +<CONNECTOR type="5312" id="592" > <cdparam x="993" y="581" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="reg" /> -<TGConnectingPoint num="0" id="491" /> -<P1 x="576" y="385" id="620" /> -<P2 x="577" y="416" id="653" /> +<TGConnectingPoint num="0" id="591" /> +<P1 x="576" y="385" id="720" /> +<P2 x="577" y="416" id="753" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<CONNECTOR type="5311" id="494" > +<CONNECTOR type="5311" id="594" > <cdparam x="426" y="264" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="" /> -<TGConnectingPoint num="0" id="493" /> -<P1 x="492" y="345" id="507" /> -<P2 x="546" y="345" id="625" /> +<TGConnectingPoint num="0" id="593" /> +<P1 x="491" y="345" id="607" /> +<P2 x="546" y="345" id="725" /> <AutomaticDrawing data="true" /> </CONNECTOR> -<COMPONENT type="5308" id="499" > +<COMPONENT type="5308" id="599" > <cdparam x="644" y="417" /> <sizeparam width="100" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="TGComponent" value="prop01" /> -<TGConnectingPoint num="0" id="495" /> -<TGConnectingPoint num="1" id="496" /> -<TGConnectingPoint num="2" id="497" /> -<TGConnectingPoint num="3" id="498" /> +<TGConnectingPoint num="0" id="595" /> +<TGConnectingPoint num="1" id="596" /> +<TGConnectingPoint num="2" id="597" /> +<TGConnectingPoint num="3" id="598" /> <extraparam> <liveness data="1" /> <not data="false" /> </extraparam> </COMPONENT> -<COMPONENT type="5308" id="504" > +<COMPONENT type="5308" id="604" > <cdparam x="559" y="563" /> -<sizeparam width="158" height="54" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<sizeparam width="146" height="54" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="TGComponent" value="BeverageDeliverProperty" /> -<TGConnectingPoint num="0" id="500" /> -<TGConnectingPoint num="1" id="501" /> -<TGConnectingPoint num="2" id="502" /> -<TGConnectingPoint num="3" id="503" /> +<TGConnectingPoint num="0" id="600" /> +<TGConnectingPoint num="1" id="601" /> +<TGConnectingPoint num="2" id="602" /> +<TGConnectingPoint num="3" id="603" /> <extraparam> <liveness data="0" /> <not data="false" /> </extraparam> </COMPONENT> -<COMPONENT type="5300" id="542" > +<COMPONENT type="5300" id="642" > <cdparam x="372" y="227" /> <sizeparam width="132" height="153" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="Block0" value="CoffeeMachine" /> -<TGConnectingPoint num="0" id="518" /> -<TGConnectingPoint num="1" id="519" /> -<TGConnectingPoint num="2" id="520" /> -<TGConnectingPoint num="3" id="521" /> -<TGConnectingPoint num="4" id="522" /> -<TGConnectingPoint num="5" id="523" /> -<TGConnectingPoint num="6" id="524" /> -<TGConnectingPoint num="7" id="525" /> -<TGConnectingPoint num="8" id="526" /> -<TGConnectingPoint num="9" id="527" /> -<TGConnectingPoint num="10" id="528" /> -<TGConnectingPoint num="11" id="529" /> -<TGConnectingPoint num="12" id="530" /> -<TGConnectingPoint num="13" id="531" /> -<TGConnectingPoint num="14" id="532" /> -<TGConnectingPoint num="15" id="533" /> -<TGConnectingPoint num="16" id="534" /> -<TGConnectingPoint num="17" id="535" /> -<TGConnectingPoint num="18" id="536" /> -<TGConnectingPoint num="19" id="537" /> -<TGConnectingPoint num="20" id="538" /> -<TGConnectingPoint num="21" id="539" /> -<TGConnectingPoint num="22" id="540" /> -<TGConnectingPoint num="23" id="541" /> +<TGConnectingPoint num="0" id="618" /> +<TGConnectingPoint num="1" id="619" /> +<TGConnectingPoint num="2" id="620" /> +<TGConnectingPoint num="3" id="621" /> +<TGConnectingPoint num="4" id="622" /> +<TGConnectingPoint num="5" id="623" /> +<TGConnectingPoint num="6" id="624" /> +<TGConnectingPoint num="7" id="625" /> +<TGConnectingPoint num="8" id="626" /> +<TGConnectingPoint num="9" id="627" /> +<TGConnectingPoint num="10" id="628" /> +<TGConnectingPoint num="11" id="629" /> +<TGConnectingPoint num="12" id="630" /> +<TGConnectingPoint num="13" id="631" /> +<TGConnectingPoint num="14" id="632" /> +<TGConnectingPoint num="15" id="633" /> +<TGConnectingPoint num="16" id="634" /> +<TGConnectingPoint num="17" id="635" /> +<TGConnectingPoint num="18" id="636" /> +<TGConnectingPoint num="19" id="637" /> +<TGConnectingPoint num="20" id="638" /> +<TGConnectingPoint num="21" id="639" /> +<TGConnectingPoint num="22" id="640" /> +<TGConnectingPoint num="23" id="641" /> </COMPONENT> -<SUBCOMPONENT type="5304" id="517" > -<father id="542" num="0" /> +<SUBCOMPONENT type="5304" id="617" > +<father id="642" num="0" /> <cdparam x="391" y="326" /> -<sizeparam width="101" height="39" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<sizeparam width="100" height="39" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="31" minY="0" maxY="114" /> +<cdrectangleparam minX="0" maxX="32" minY="0" maxY="114" /> <infoparam name="TGComponent" value="beverageReady" /> -<TGConnectingPoint num="0" id="505" /> -<TGConnectingPoint num="1" id="506" /> -<TGConnectingPoint num="2" id="507" /> -<TGConnectingPoint num="3" id="508" /> -<TGConnectingPoint num="4" id="509" /> -<TGConnectingPoint num="5" id="510" /> -<TGConnectingPoint num="6" id="511" /> -<TGConnectingPoint num="7" id="512" /> -<TGConnectingPoint num="8" id="513" /> -<TGConnectingPoint num="9" id="514" /> -<TGConnectingPoint num="10" id="515" /> -<TGConnectingPoint num="11" id="516" /> +<TGConnectingPoint num="0" id="605" /> +<TGConnectingPoint num="1" id="606" /> +<TGConnectingPoint num="2" id="607" /> +<TGConnectingPoint num="3" id="608" /> +<TGConnectingPoint num="4" id="609" /> +<TGConnectingPoint num="5" id="610" /> +<TGConnectingPoint num="6" id="611" /> +<TGConnectingPoint num="7" id="612" /> +<TGConnectingPoint num="8" id="613" /> +<TGConnectingPoint num="9" id="614" /> +<TGConnectingPoint num="10" id="615" /> +<TGConnectingPoint num="11" id="616" /> </SUBCOMPONENT> -<COMPONENT type="5300" id="593" > +<COMPONENT type="5300" id="693" > <cdparam x="563" y="78" /> <sizeparam width="268" height="115" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="Block0" value="Wallet" /> -<TGConnectingPoint num="0" id="569" /> -<TGConnectingPoint num="1" id="570" /> -<TGConnectingPoint num="2" id="571" /> -<TGConnectingPoint num="3" id="572" /> -<TGConnectingPoint num="4" id="573" /> -<TGConnectingPoint num="5" id="574" /> -<TGConnectingPoint num="6" id="575" /> -<TGConnectingPoint num="7" id="576" /> -<TGConnectingPoint num="8" id="577" /> -<TGConnectingPoint num="9" id="578" /> -<TGConnectingPoint num="10" id="579" /> -<TGConnectingPoint num="11" id="580" /> -<TGConnectingPoint num="12" id="581" /> -<TGConnectingPoint num="13" id="582" /> -<TGConnectingPoint num="14" id="583" /> -<TGConnectingPoint num="15" id="584" /> -<TGConnectingPoint num="16" id="585" /> -<TGConnectingPoint num="17" id="586" /> -<TGConnectingPoint num="18" id="587" /> -<TGConnectingPoint num="19" id="588" /> -<TGConnectingPoint num="20" id="589" /> -<TGConnectingPoint num="21" id="590" /> -<TGConnectingPoint num="22" id="591" /> -<TGConnectingPoint num="23" id="592" /> +<TGConnectingPoint num="0" id="669" /> +<TGConnectingPoint num="1" id="670" /> +<TGConnectingPoint num="2" id="671" /> +<TGConnectingPoint num="3" id="672" /> +<TGConnectingPoint num="4" id="673" /> +<TGConnectingPoint num="5" id="674" /> +<TGConnectingPoint num="6" id="675" /> +<TGConnectingPoint num="7" id="676" /> +<TGConnectingPoint num="8" id="677" /> +<TGConnectingPoint num="9" id="678" /> +<TGConnectingPoint num="10" id="679" /> +<TGConnectingPoint num="11" id="680" /> +<TGConnectingPoint num="12" id="681" /> +<TGConnectingPoint num="13" id="682" /> +<TGConnectingPoint num="14" id="683" /> +<TGConnectingPoint num="15" id="684" /> +<TGConnectingPoint num="16" id="685" /> +<TGConnectingPoint num="17" id="686" /> +<TGConnectingPoint num="18" id="687" /> +<TGConnectingPoint num="19" id="688" /> +<TGConnectingPoint num="20" id="689" /> +<TGConnectingPoint num="21" id="690" /> +<TGConnectingPoint num="22" id="691" /> +<TGConnectingPoint num="23" id="692" /> </COMPONENT> -<SUBCOMPONENT type="5303" id="555" > -<father id="593" num="0" /> +<SUBCOMPONENT type="5304" id="655" > +<father id="693" num="0" /> +<cdparam x="581" y="125" /> +<sizeparam width="100" height="39" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="168" minY="0" maxY="76" /> +<infoparam name="TGComponent" value="Start" /> +<TGConnectingPoint num="0" id="643" /> +<TGConnectingPoint num="1" id="644" /> +<TGConnectingPoint num="2" id="645" /> +<TGConnectingPoint num="3" id="646" /> +<TGConnectingPoint num="4" id="647" /> +<TGConnectingPoint num="5" id="648" /> +<TGConnectingPoint num="6" id="649" /> +<TGConnectingPoint num="7" id="650" /> +<TGConnectingPoint num="8" id="651" /> +<TGConnectingPoint num="9" id="652" /> +<TGConnectingPoint num="10" id="653" /> +<TGConnectingPoint num="11" id="654" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5303" id="668" > +<father id="693" num="1" /> <cdparam x="721" y="133" /> <sizeparam width="100" height="50" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="0" maxX="168" minY="0" maxY="65" /> <infoparam name="TGComponent" value="nbOfCoins" /> -<TGConnectingPoint num="0" id="543" /> -<TGConnectingPoint num="1" id="544" /> -<TGConnectingPoint num="2" id="545" /> -<TGConnectingPoint num="3" id="546" /> -<TGConnectingPoint num="4" id="547" /> -<TGConnectingPoint num="5" id="548" /> -<TGConnectingPoint num="6" id="549" /> -<TGConnectingPoint num="7" id="550" /> -<TGConnectingPoint num="8" id="551" /> -<TGConnectingPoint num="9" id="552" /> -<TGConnectingPoint num="10" id="553" /> -<TGConnectingPoint num="11" id="554" /> +<TGConnectingPoint num="0" id="656" /> +<TGConnectingPoint num="1" id="657" /> +<TGConnectingPoint num="2" id="658" /> +<TGConnectingPoint num="3" id="659" /> +<TGConnectingPoint num="4" id="660" /> +<TGConnectingPoint num="5" id="661" /> +<TGConnectingPoint num="6" id="662" /> +<TGConnectingPoint num="7" id="663" /> +<TGConnectingPoint num="8" id="664" /> +<TGConnectingPoint num="9" id="665" /> +<TGConnectingPoint num="10" id="666" /> +<TGConnectingPoint num="11" id="667" /> <extraparam> <Toggle value="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="5304" id="568" > -<father id="593" num="1" /> -<cdparam x="581" y="125" /> -<sizeparam width="100" height="39" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="0" maxX="168" minY="0" maxY="76" /> -<infoparam name="TGComponent" value="Start" /> -<TGConnectingPoint num="0" id="556" /> -<TGConnectingPoint num="1" id="557" /> -<TGConnectingPoint num="2" id="558" /> -<TGConnectingPoint num="3" id="559" /> -<TGConnectingPoint num="4" id="560" /> -<TGConnectingPoint num="5" id="561" /> -<TGConnectingPoint num="6" id="562" /> -<TGConnectingPoint num="7" id="563" /> -<TGConnectingPoint num="8" id="564" /> -<TGConnectingPoint num="9" id="565" /> -<TGConnectingPoint num="10" id="566" /> -<TGConnectingPoint num="11" id="567" /> -</SUBCOMPONENT> -<COMPONENT type="5306" id="605" > +<COMPONENT type="5306" id="705" > <cdparam x="675" y="204" /> <sizeparam width="100" height="50" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="TGComponent" value="nbOfCoins > 1" /> -<TGConnectingPoint num="0" id="594" /> -<TGConnectingPoint num="1" id="595" /> -<TGConnectingPoint num="2" id="596" /> -<TGConnectingPoint num="3" id="597" /> -<TGConnectingPoint num="4" id="598" /> -<TGConnectingPoint num="5" id="599" /> -<TGConnectingPoint num="6" id="600" /> -<TGConnectingPoint num="7" id="601" /> -<TGConnectingPoint num="8" id="602" /> -<TGConnectingPoint num="9" id="603" /> -<TGConnectingPoint num="10" id="604" /> +<TGConnectingPoint num="0" id="694" /> +<TGConnectingPoint num="1" id="695" /> +<TGConnectingPoint num="2" id="696" /> +<TGConnectingPoint num="3" id="697" /> +<TGConnectingPoint num="4" id="698" /> +<TGConnectingPoint num="5" id="699" /> +<TGConnectingPoint num="6" id="700" /> +<TGConnectingPoint num="7" id="701" /> +<TGConnectingPoint num="8" id="702" /> +<TGConnectingPoint num="9" id="703" /> +<TGConnectingPoint num="10" id="704" /> <extraparam> <Toggle value="" /> </extraparam> </COMPONENT> -<COMPONENT type="5302" id="618" > +<COMPONENT type="5302" id="718" > <cdparam x="667" y="285" /> <sizeparam width="59" height="100" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="TGComponent" value="=0" /> -<TGConnectingPoint num="0" id="606" /> -<TGConnectingPoint num="1" id="607" /> -<TGConnectingPoint num="2" id="608" /> -<TGConnectingPoint num="3" id="609" /> -<TGConnectingPoint num="4" id="610" /> -<TGConnectingPoint num="5" id="611" /> -<TGConnectingPoint num="6" id="612" /> -<TGConnectingPoint num="7" id="613" /> -<TGConnectingPoint num="8" id="614" /> -<TGConnectingPoint num="9" id="615" /> -<TGConnectingPoint num="10" id="616" /> -<TGConnectingPoint num="11" id="617" /> +<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" /> </COMPONENT> -<COMPONENT type="5301" id="639" > +<COMPONENT type="5301" id="739" > <cdparam x="546" y="285" /> <sizeparam width="60" height="100" minWidth="50" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="TGComponent" value="<<LS>>" /> -<TGConnectingPoint num="0" id="619" /> -<TGConnectingPoint num="1" id="620" /> -<TGConnectingPoint num="2" id="621" /> -<TGConnectingPoint num="3" id="622" /> -<TGConnectingPoint num="4" id="623" /> -<TGConnectingPoint num="5" id="624" /> -<TGConnectingPoint num="6" id="625" /> -<TGConnectingPoint num="7" id="626" /> -<TGConnectingPoint num="8" id="627" /> -<TGConnectingPoint num="9" id="628" /> -<TGConnectingPoint num="10" id="629" /> -<TGConnectingPoint num="11" id="630" /> -<TGConnectingPoint num="12" id="631" /> -<TGConnectingPoint num="13" id="632" /> -<TGConnectingPoint num="14" id="633" /> -<TGConnectingPoint num="15" id="634" /> -<TGConnectingPoint num="16" id="635" /> -<TGConnectingPoint num="17" id="636" /> -<TGConnectingPoint num="18" id="637" /> -<TGConnectingPoint num="19" id="638" /> +<TGConnectingPoint num="0" id="719" /> +<TGConnectingPoint num="1" id="720" /> +<TGConnectingPoint num="2" id="721" /> +<TGConnectingPoint num="3" id="722" /> +<TGConnectingPoint num="4" id="723" /> +<TGConnectingPoint num="5" id="724" /> +<TGConnectingPoint num="6" id="725" /> +<TGConnectingPoint num="7" id="726" /> +<TGConnectingPoint num="8" id="727" /> +<TGConnectingPoint num="9" id="728" /> +<TGConnectingPoint num="10" id="729" /> +<TGConnectingPoint num="11" id="730" /> +<TGConnectingPoint num="12" id="731" /> +<TGConnectingPoint num="13" id="732" /> +<TGConnectingPoint num="14" id="733" /> +<TGConnectingPoint num="15" id="734" /> +<TGConnectingPoint num="16" id="735" /> +<TGConnectingPoint num="17" id="736" /> +<TGConnectingPoint num="18" id="737" /> +<TGConnectingPoint num="19" id="738" /> </COMPONENT> -<COMPONENT type="5309" id="652" > +<COMPONENT type="5309" id="752" > <cdparam x="597" y="498" /> <sizeparam width="80" height="40" minWidth="75" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="TGComponent" value="<=>" /> -<TGConnectingPoint num="0" id="640" /> -<TGConnectingPoint num="1" id="641" /> -<TGConnectingPoint num="2" id="642" /> -<TGConnectingPoint num="3" id="643" /> -<TGConnectingPoint num="4" id="644" /> -<TGConnectingPoint num="5" id="645" /> -<TGConnectingPoint num="6" id="646" /> -<TGConnectingPoint num="7" id="647" /> -<TGConnectingPoint num="8" id="648" /> -<TGConnectingPoint num="9" id="649" /> -<TGConnectingPoint num="10" id="650" /> -<TGConnectingPoint num="11" id="651" /> +<TGConnectingPoint num="0" id="740" /> +<TGConnectingPoint num="1" id="741" /> +<TGConnectingPoint num="2" id="742" /> +<TGConnectingPoint num="3" id="743" /> +<TGConnectingPoint num="4" id="744" /> +<TGConnectingPoint num="5" id="745" /> +<TGConnectingPoint num="6" id="746" /> +<TGConnectingPoint num="7" id="747" /> +<TGConnectingPoint num="8" id="748" /> +<TGConnectingPoint num="9" id="749" /> +<TGConnectingPoint num="10" id="750" /> +<TGConnectingPoint num="11" id="751" /> </COMPONENT> -<COMPONENT type="5308" id="657" > +<COMPONENT type="5308" id="757" > <cdparam x="527" y="416" /> <sizeparam width="100" height="55" minWidth="100" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="TGComponent" value="prop02" /> -<TGConnectingPoint num="0" id="653" /> -<TGConnectingPoint num="1" id="654" /> -<TGConnectingPoint num="2" id="655" /> -<TGConnectingPoint num="3" id="656" /> +<TGConnectingPoint num="0" id="753" /> +<TGConnectingPoint num="1" id="754" /> +<TGConnectingPoint num="2" id="755" /> +<TGConnectingPoint num="3" id="756" /> <extraparam> <liveness data="1" /> <not data="false" /> @@ -1216,13 +1437,13 @@ <Validated value="Wallet;CoffeeMachine;TeaButton;CoffeeButton;" /> <Ignored value="" /> -<CONNECTOR type="5002" id="659" > +<CONNECTOR type="5002" id="759" > <cdparam x="321" y="567" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Block1 to Block0" value="" /> -<TGConnectingPoint num="0" id="658" /> -<P1 x="559" y="330" id="695" /> -<P2 x="560" y="377" id="753" /> +<TGConnectingPoint num="0" id="758" /> +<P1 x="559" y="330" id="820" /> +<P2 x="560" y="377" id="853" /> <AutomaticDrawing data="true" /> <extraparam> <isd value="in pushCoffeeButton()" /> @@ -1230,13 +1451,13 @@ <FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" /> </extraparam> </CONNECTOR> -<CONNECTOR type="5002" id="661" > +<CONNECTOR type="5002" id="761" > <cdparam x="275" y="114" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Block0 to Block0" value="" /> -<TGConnectingPoint num="0" id="660" /> -<P1 x="306" y="110" id="675" /> -<P2 x="445" y="108" id="749" /> +<TGConnectingPoint num="0" id="760" /> +<P1 x="306" y="109" id="775" /> +<P2 x="445" y="108" id="849" /> <AutomaticDrawing data="true" /> <extraparam> <iso value="in getCoin(int nbOfCoins)" /> @@ -1246,13 +1467,13 @@ <FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" /> </extraparam> </CONNECTOR> -<CONNECTOR type="5002" id="663" > +<CONNECTOR type="5002" id="763" > <cdparam x="623" y="565" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Block1 to Block0" value="" /> -<TGConnectingPoint num="0" id="662" /> -<P1 x="789" y="326" id="720" /> -<P2 x="790" y="377" id="754" /> +<TGConnectingPoint num="0" id="762" /> +<P1 x="789" y="326" id="795" /> +<P2 x="790" y="377" id="854" /> <AutomaticDrawing data="true" /> <extraparam> <isd value="in pushTeaButton()" /> @@ -1260,36 +1481,36 @@ <FIFOType asynchronous="false" size="1024" blocking="false" private="true" broadcast="false" lossy="false" /> </extraparam> </CONNECTOR> -<COMPONENT type="5000" id="688" > -<cdparam x="106" y="56" /> +<COMPONENT type="5000" id="788" > +<cdparam x="106" y="55" /> <sizeparam width="200" height="218" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="Block0" value="Wallet" /> -<TGConnectingPoint num="0" id="664" /> -<TGConnectingPoint num="1" id="665" /> -<TGConnectingPoint num="2" id="666" /> -<TGConnectingPoint num="3" id="667" /> -<TGConnectingPoint num="4" id="668" /> -<TGConnectingPoint num="5" id="669" /> -<TGConnectingPoint num="6" id="670" /> -<TGConnectingPoint num="7" id="671" /> -<TGConnectingPoint num="8" id="672" /> -<TGConnectingPoint num="9" id="673" /> -<TGConnectingPoint num="10" id="674" /> -<TGConnectingPoint num="11" id="675" /> -<TGConnectingPoint num="12" id="676" /> -<TGConnectingPoint num="13" id="677" /> -<TGConnectingPoint num="14" id="678" /> -<TGConnectingPoint num="15" id="679" /> -<TGConnectingPoint num="16" id="680" /> -<TGConnectingPoint num="17" id="681" /> -<TGConnectingPoint num="18" id="682" /> -<TGConnectingPoint num="19" id="683" /> -<TGConnectingPoint num="20" id="684" /> -<TGConnectingPoint num="21" id="685" /> -<TGConnectingPoint num="22" id="686" /> -<TGConnectingPoint num="23" id="687" /> +<TGConnectingPoint num="0" id="764" /> +<TGConnectingPoint num="1" id="765" /> +<TGConnectingPoint num="2" id="766" /> +<TGConnectingPoint num="3" id="767" /> +<TGConnectingPoint num="4" id="768" /> +<TGConnectingPoint num="5" id="769" /> +<TGConnectingPoint num="6" id="770" /> +<TGConnectingPoint num="7" id="771" /> +<TGConnectingPoint num="8" id="772" /> +<TGConnectingPoint num="9" id="773" /> +<TGConnectingPoint num="10" id="774" /> +<TGConnectingPoint num="11" id="775" /> +<TGConnectingPoint num="12" id="776" /> +<TGConnectingPoint num="13" id="777" /> +<TGConnectingPoint num="14" id="778" /> +<TGConnectingPoint num="15" id="779" /> +<TGConnectingPoint num="16" id="780" /> +<TGConnectingPoint num="17" id="781" /> +<TGConnectingPoint num="18" id="782" /> +<TGConnectingPoint num="19" id="783" /> +<TGConnectingPoint num="20" id="784" /> +<TGConnectingPoint num="21" id="785" /> +<TGConnectingPoint num="22" id="786" /> +<TGConnectingPoint num="23" id="787" /> <extraparam> <CryptoBlock value="false" /> <Attribute access="0" id="nbOfCoins" value="2" type="8" typeOther="" /> @@ -1302,36 +1523,36 @@ </extraparam> </COMPONENT> -<COMPONENT type="5000" id="763" > +<COMPONENT type="5000" id="863" > <cdparam x="445" y="19" /> <sizeparam width="461" height="358" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="Block0" value="CoffeeMachine" /> -<TGConnectingPoint num="0" id="739" /> -<TGConnectingPoint num="1" id="740" /> -<TGConnectingPoint num="2" id="741" /> -<TGConnectingPoint num="3" id="742" /> -<TGConnectingPoint num="4" id="743" /> -<TGConnectingPoint num="5" id="744" /> -<TGConnectingPoint num="6" id="745" /> -<TGConnectingPoint num="7" id="746" /> -<TGConnectingPoint num="8" id="747" /> -<TGConnectingPoint num="9" id="748" /> -<TGConnectingPoint num="10" id="749" /> -<TGConnectingPoint num="11" id="750" /> -<TGConnectingPoint num="12" id="751" /> -<TGConnectingPoint num="13" id="752" /> -<TGConnectingPoint num="14" id="753" /> -<TGConnectingPoint num="15" id="754" /> -<TGConnectingPoint num="16" id="755" /> -<TGConnectingPoint num="17" id="756" /> -<TGConnectingPoint num="18" id="757" /> -<TGConnectingPoint num="19" id="758" /> -<TGConnectingPoint num="20" id="759" /> -<TGConnectingPoint num="21" id="760" /> -<TGConnectingPoint num="22" id="761" /> -<TGConnectingPoint num="23" id="762" /> +<TGConnectingPoint num="0" id="839" /> +<TGConnectingPoint num="1" id="840" /> +<TGConnectingPoint num="2" id="841" /> +<TGConnectingPoint num="3" id="842" /> +<TGConnectingPoint num="4" id="843" /> +<TGConnectingPoint num="5" id="844" /> +<TGConnectingPoint num="6" id="845" /> +<TGConnectingPoint num="7" id="846" /> +<TGConnectingPoint num="8" id="847" /> +<TGConnectingPoint num="9" id="848" /> +<TGConnectingPoint num="10" id="849" /> +<TGConnectingPoint num="11" id="850" /> +<TGConnectingPoint num="12" id="851" /> +<TGConnectingPoint num="13" id="852" /> +<TGConnectingPoint num="14" id="853" /> +<TGConnectingPoint num="15" id="854" /> +<TGConnectingPoint num="16" id="855" /> +<TGConnectingPoint num="17" id="856" /> +<TGConnectingPoint num="18" id="857" /> +<TGConnectingPoint num="19" id="858" /> +<TGConnectingPoint num="20" id="859" /> +<TGConnectingPoint num="21" id="860" /> +<TGConnectingPoint num="22" id="861" /> +<TGConnectingPoint num="23" id="862" /> <extraparam> <CryptoBlock value="false" /> <Attribute access="0" id="teaMinDelay" value="3" type="8" typeOther="" /> @@ -1348,74 +1569,74 @@ <Signal value="out ejectCoin(int nbOfCoins)" attached="true" /> </extraparam> </COMPONENT> -<SUBCOMPONENT type="5000" id="713" > -<father id="763" num="0" /> -<cdparam x="464" y="228" /> -<sizeparam width="190" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="5000" id="813" > +<father id="863" num="0" /> +<cdparam x="695" y="224" /> +<sizeparam width="189" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="271" minY="0" maxY="256" /> -<infoparam name="Block1" value="CoffeeButton" /> -<TGConnectingPoint num="0" id="689" /> -<TGConnectingPoint num="1" id="690" /> -<TGConnectingPoint num="2" id="691" /> -<TGConnectingPoint num="3" id="692" /> -<TGConnectingPoint num="4" id="693" /> -<TGConnectingPoint num="5" id="694" /> -<TGConnectingPoint num="6" id="695" /> -<TGConnectingPoint num="7" id="696" /> -<TGConnectingPoint num="8" id="697" /> -<TGConnectingPoint num="9" id="698" /> -<TGConnectingPoint num="10" id="699" /> -<TGConnectingPoint num="11" id="700" /> -<TGConnectingPoint num="12" id="701" /> -<TGConnectingPoint num="13" id="702" /> -<TGConnectingPoint num="14" id="703" /> -<TGConnectingPoint num="15" id="704" /> -<TGConnectingPoint num="16" id="705" /> -<TGConnectingPoint num="17" id="706" /> -<TGConnectingPoint num="18" id="707" /> -<TGConnectingPoint num="19" id="708" /> -<TGConnectingPoint num="20" id="709" /> -<TGConnectingPoint num="21" id="710" /> -<TGConnectingPoint num="22" id="711" /> -<TGConnectingPoint num="23" id="712" /> +<cdrectangleparam minX="0" maxX="272" minY="0" maxY="256" /> +<infoparam name="Block1" value="TeaButton" /> +<TGConnectingPoint num="0" id="789" /> +<TGConnectingPoint num="1" id="790" /> +<TGConnectingPoint num="2" id="791" /> +<TGConnectingPoint num="3" id="792" /> +<TGConnectingPoint num="4" id="793" /> +<TGConnectingPoint num="5" id="794" /> +<TGConnectingPoint num="6" id="795" /> +<TGConnectingPoint num="7" id="796" /> +<TGConnectingPoint num="8" id="797" /> +<TGConnectingPoint num="9" id="798" /> +<TGConnectingPoint num="10" id="799" /> +<TGConnectingPoint num="11" id="800" /> +<TGConnectingPoint num="12" id="801" /> +<TGConnectingPoint num="13" id="802" /> +<TGConnectingPoint num="14" id="803" /> +<TGConnectingPoint num="15" id="804" /> +<TGConnectingPoint num="16" id="805" /> +<TGConnectingPoint num="17" id="806" /> +<TGConnectingPoint num="18" id="807" /> +<TGConnectingPoint num="19" id="808" /> +<TGConnectingPoint num="20" id="809" /> +<TGConnectingPoint num="21" id="810" /> +<TGConnectingPoint num="22" id="811" /> +<TGConnectingPoint num="23" id="812" /> <extraparam> <CryptoBlock value="false" /> <Attribute access="0" id="mechanicalDelay" value="10" type="8" typeOther="" /> <Signal value="out push()" attached="true" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="5000" id="738" > -<father id="763" num="1" /> -<cdparam x="695" y="224" /> -<sizeparam width="189" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="5000" id="838" > +<father id="863" num="1" /> +<cdparam x="464" y="228" /> +<sizeparam width="190" height="102" minWidth="5" minHeight="2" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="272" minY="0" maxY="256" /> -<infoparam name="Block1" value="TeaButton" /> -<TGConnectingPoint num="0" id="714" /> -<TGConnectingPoint num="1" id="715" /> -<TGConnectingPoint num="2" id="716" /> -<TGConnectingPoint num="3" id="717" /> -<TGConnectingPoint num="4" id="718" /> -<TGConnectingPoint num="5" id="719" /> -<TGConnectingPoint num="6" id="720" /> -<TGConnectingPoint num="7" id="721" /> -<TGConnectingPoint num="8" id="722" /> -<TGConnectingPoint num="9" id="723" /> -<TGConnectingPoint num="10" id="724" /> -<TGConnectingPoint num="11" id="725" /> -<TGConnectingPoint num="12" id="726" /> -<TGConnectingPoint num="13" id="727" /> -<TGConnectingPoint num="14" id="728" /> -<TGConnectingPoint num="15" id="729" /> -<TGConnectingPoint num="16" id="730" /> -<TGConnectingPoint num="17" id="731" /> -<TGConnectingPoint num="18" id="732" /> -<TGConnectingPoint num="19" id="733" /> -<TGConnectingPoint num="20" id="734" /> -<TGConnectingPoint num="21" id="735" /> -<TGConnectingPoint num="22" id="736" /> -<TGConnectingPoint num="23" id="737" /> +<cdrectangleparam minX="0" maxX="271" minY="0" maxY="256" /> +<infoparam name="Block1" value="CoffeeButton" /> +<TGConnectingPoint num="0" id="814" /> +<TGConnectingPoint num="1" id="815" /> +<TGConnectingPoint num="2" id="816" /> +<TGConnectingPoint num="3" id="817" /> +<TGConnectingPoint num="4" id="818" /> +<TGConnectingPoint num="5" id="819" /> +<TGConnectingPoint num="6" id="820" /> +<TGConnectingPoint num="7" id="821" /> +<TGConnectingPoint num="8" id="822" /> +<TGConnectingPoint num="9" id="823" /> +<TGConnectingPoint num="10" id="824" /> +<TGConnectingPoint num="11" id="825" /> +<TGConnectingPoint num="12" id="826" /> +<TGConnectingPoint num="13" id="827" /> +<TGConnectingPoint num="14" id="828" /> +<TGConnectingPoint num="15" id="829" /> +<TGConnectingPoint num="16" id="830" /> +<TGConnectingPoint num="17" id="831" /> +<TGConnectingPoint num="18" id="832" /> +<TGConnectingPoint num="19" id="833" /> +<TGConnectingPoint num="20" id="834" /> +<TGConnectingPoint num="21" id="835" /> +<TGConnectingPoint num="22" id="836" /> +<TGConnectingPoint num="23" id="837" /> <extraparam> <CryptoBlock value="false" /> <Attribute access="0" id="mechanicalDelay" value="10" type="8" typeOther="" /> @@ -1427,25 +1648,25 @@ </AVATARBlockDiagramPanel> <AVATARStateMachineDiagramPanel name="Wallet" minX="10" maxX="1400" minY="10" maxY="900" > -<CONNECTOR type="5102" id="770" > +<CONNECTOR type="5102" id="870" > <cdparam x="516" y="264" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Send signal to state0" value="null" /> -<TGConnectingPoint num="0" id="769" /> -<P1 x="485" y="219" id="811" /> -<P2 x="485" y="275" id="822" /> +<TGConnectingPoint num="0" id="869" /> +<P1 x="485" y="219" id="911" /> +<P2 x="485" y="275" id="922" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="768" > -<father id="770" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="868" > +<father id="870" num="0" /> <cdparam x="493" y="251" /> <sizeparam width="161" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="764" /> -<TGConnectingPoint num="1" id="765" /> -<TGConnectingPoint num="2" id="766" /> -<TGConnectingPoint num="3" id="767" /> +<TGConnectingPoint num="0" id="864" /> +<TGConnectingPoint num="1" id="865" /> +<TGConnectingPoint num="2" id="866" /> +<TGConnectingPoint num="3" id="867" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -1458,25 +1679,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="777" > +<CONNECTOR type="5102" id="877" > <cdparam x="382" y="165" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="776" /> -<P1 x="382" y="165" id="918" /> -<P2 x="485" y="189" id="810" /> +<TGConnectingPoint num="0" id="876" /> +<P1 x="382" y="165" id="1018" /> +<P2 x="485" y="189" id="910" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="775" > -<father id="777" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="875" > +<father id="877" num="0" /> <cdparam x="382" y="205" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="771" /> -<TGConnectingPoint num="1" id="772" /> -<TGConnectingPoint num="2" id="773" /> -<TGConnectingPoint num="3" id="774" /> +<TGConnectingPoint num="0" id="871" /> +<TGConnectingPoint num="1" id="872" /> +<TGConnectingPoint num="2" id="873" /> +<TGConnectingPoint num="3" id="874" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -1487,25 +1708,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="784" > +<CONNECTOR type="5102" id="884" > <cdparam x="223" y="260" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Send signal to state0" value="null" /> -<TGConnectingPoint num="0" id="783" /> -<P1 x="251" y="231" id="800" /> -<P2 x="252" y="300" id="863" /> +<TGConnectingPoint num="0" id="883" /> +<P1 x="251" y="231" id="900" /> +<P2 x="252" y="300" id="963" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="782" > -<father id="784" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="882" > +<father id="884" num="0" /> <cdparam x="175" y="246" /> <sizeparam width="205" height="60" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="778" /> -<TGConnectingPoint num="1" id="779" /> -<TGConnectingPoint num="2" id="780" /> -<TGConnectingPoint num="3" id="781" /> +<TGConnectingPoint num="0" id="878" /> +<TGConnectingPoint num="1" id="879" /> +<TGConnectingPoint num="2" id="880" /> +<TGConnectingPoint num="3" id="881" /> <extraparam> <guard value="[ ]" /> <afterMin value="minUserDelay" /> @@ -1518,25 +1739,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="791" > +<CONNECTOR type="5102" id="891" > <cdparam x="357" y="165" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="790" /> -<P1 x="357" y="165" id="917" /> -<P2 x="251" y="201" id="799" /> +<TGConnectingPoint num="0" id="890" /> +<P1 x="357" y="165" id="1017" /> +<P2 x="251" y="201" id="899" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="789" > -<father id="791" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="889" > +<father id="891" num="0" /> <cdparam x="220" y="174" /> <sizeparam width="93" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="785" /> -<TGConnectingPoint num="1" id="786" /> -<TGConnectingPoint num="2" id="787" /> -<TGConnectingPoint num="3" id="788" /> +<TGConnectingPoint num="0" id="885" /> +<TGConnectingPoint num="1" id="886" /> +<TGConnectingPoint num="2" id="887" /> +<TGConnectingPoint num="3" id="888" /> <extraparam> <guard value="[nbOfCoins > 0]" /> <afterMin value="" /> @@ -1547,25 +1768,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="798" > +<CONNECTOR type="5102" id="898" > <cdparam x="369" y="115" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from start state to state0" value="null" /> -<TGConnectingPoint num="0" id="797" /> -<P1 x="370" y="64" id="944" /> -<P2 x="370" y="135" id="904" /> +<TGConnectingPoint num="0" id="897" /> +<P1 x="370" y="64" id="1044" /> +<P2 x="370" y="135" id="1004" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="796" > -<father id="798" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="896" > +<father id="898" num="0" /> <cdparam x="376" y="105" /> <sizeparam width="156" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="792" /> -<TGConnectingPoint num="1" id="793" /> -<TGConnectingPoint num="2" id="794" /> -<TGConnectingPoint num="3" id="795" /> +<TGConnectingPoint num="0" id="892" /> +<TGConnectingPoint num="1" id="893" /> +<TGConnectingPoint num="2" id="894" /> +<TGConnectingPoint num="3" id="895" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -1577,224 +1798,259 @@ </extraparam> </SUBCOMPONENT> -<COMPONENT type="5103" id="809" > +<COMPONENT type="5103" id="909" > <cdparam x="217" y="206" /> <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="Send signal" value="putCoin(x)" /> -<TGConnectingPoint num="0" id="799" /> -<TGConnectingPoint num="1" id="800" /> -<TGConnectingPoint num="2" id="801" /> -<TGConnectingPoint num="3" id="802" /> -<TGConnectingPoint num="4" id="803" /> -<TGConnectingPoint num="5" id="804" /> -<TGConnectingPoint num="6" id="805" /> -<TGConnectingPoint num="7" id="806" /> -<TGConnectingPoint num="8" id="807" /> -<TGConnectingPoint num="9" id="808" /> +<TGConnectingPoint num="0" id="899" /> +<TGConnectingPoint num="1" id="900" /> +<TGConnectingPoint num="2" id="901" /> +<TGConnectingPoint num="3" id="902" /> +<TGConnectingPoint num="4" id="903" /> +<TGConnectingPoint num="5" id="904" /> +<TGConnectingPoint num="6" id="905" /> +<TGConnectingPoint num="7" id="906" /> +<TGConnectingPoint num="8" id="907" /> +<TGConnectingPoint num="9" id="908" /> </COMPONENT> -<COMPONENT type="5104" id="820" > +<COMPONENT type="5104" id="920" > <cdparam x="447" y="194" /> <sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="Receive signal" value="getCoin(x)" /> -<TGConnectingPoint num="0" id="810" /> -<TGConnectingPoint num="1" id="811" /> -<TGConnectingPoint num="2" id="812" /> -<TGConnectingPoint num="3" id="813" /> -<TGConnectingPoint num="4" id="814" /> -<TGConnectingPoint num="5" id="815" /> -<TGConnectingPoint num="6" id="816" /> -<TGConnectingPoint num="7" id="817" /> -<TGConnectingPoint num="8" id="818" /> -<TGConnectingPoint num="9" id="819" /> +<TGConnectingPoint num="0" id="910" /> +<TGConnectingPoint num="1" id="911" /> +<TGConnectingPoint num="2" id="912" /> +<TGConnectingPoint num="3" id="913" /> +<TGConnectingPoint num="4" id="914" /> +<TGConnectingPoint num="5" id="915" /> +<TGConnectingPoint num="6" id="916" /> +<TGConnectingPoint num="7" id="917" /> +<TGConnectingPoint num="8" id="918" /> +<TGConnectingPoint num="9" id="919" /> </COMPONENT> -<COMPONENT type="5106" id="861" > +<COMPONENT type="5106" id="961" > <cdparam x="460" y="275" /> <sizeparam width="50" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="state0" value="main" /> -<TGConnectingPoint num="0" id="821" /> -<TGConnectingPoint num="1" id="822" /> -<TGConnectingPoint num="2" id="823" /> -<TGConnectingPoint num="3" id="824" /> -<TGConnectingPoint num="4" id="825" /> -<TGConnectingPoint num="5" id="826" /> -<TGConnectingPoint num="6" id="827" /> -<TGConnectingPoint num="7" id="828" /> -<TGConnectingPoint num="8" id="829" /> -<TGConnectingPoint num="9" id="830" /> -<TGConnectingPoint num="10" id="831" /> -<TGConnectingPoint num="11" id="832" /> -<TGConnectingPoint num="12" id="833" /> -<TGConnectingPoint num="13" id="834" /> -<TGConnectingPoint num="14" id="835" /> -<TGConnectingPoint num="15" id="836" /> -<TGConnectingPoint num="16" id="837" /> -<TGConnectingPoint num="17" id="838" /> -<TGConnectingPoint num="18" id="839" /> -<TGConnectingPoint num="19" id="840" /> -<TGConnectingPoint num="20" id="841" /> -<TGConnectingPoint num="21" id="842" /> -<TGConnectingPoint num="22" id="843" /> -<TGConnectingPoint num="23" id="844" /> -<TGConnectingPoint num="24" id="845" /> -<TGConnectingPoint num="25" id="846" /> -<TGConnectingPoint num="26" id="847" /> -<TGConnectingPoint num="27" id="848" /> -<TGConnectingPoint num="28" id="849" /> -<TGConnectingPoint num="29" id="850" /> -<TGConnectingPoint num="30" id="851" /> -<TGConnectingPoint num="31" id="852" /> -<TGConnectingPoint num="32" id="853" /> -<TGConnectingPoint num="33" id="854" /> -<TGConnectingPoint num="34" id="855" /> -<TGConnectingPoint num="35" id="856" /> -<TGConnectingPoint num="36" id="857" /> -<TGConnectingPoint num="37" id="858" /> -<TGConnectingPoint num="38" id="859" /> -<TGConnectingPoint num="39" id="860" /> +<TGConnectingPoint num="0" id="921" /> +<TGConnectingPoint num="1" id="922" /> +<TGConnectingPoint num="2" id="923" /> +<TGConnectingPoint num="3" id="924" /> +<TGConnectingPoint num="4" id="925" /> +<TGConnectingPoint num="5" id="926" /> +<TGConnectingPoint num="6" id="927" /> +<TGConnectingPoint num="7" id="928" /> +<TGConnectingPoint num="8" id="929" /> +<TGConnectingPoint num="9" id="930" /> +<TGConnectingPoint num="10" id="931" /> +<TGConnectingPoint num="11" id="932" /> +<TGConnectingPoint num="12" id="933" /> +<TGConnectingPoint num="13" id="934" /> +<TGConnectingPoint num="14" id="935" /> +<TGConnectingPoint num="15" id="936" /> +<TGConnectingPoint num="16" id="937" /> +<TGConnectingPoint num="17" id="938" /> +<TGConnectingPoint num="18" id="939" /> +<TGConnectingPoint num="19" id="940" /> +<TGConnectingPoint num="20" id="941" /> +<TGConnectingPoint num="21" id="942" /> +<TGConnectingPoint num="22" id="943" /> +<TGConnectingPoint num="23" id="944" /> +<TGConnectingPoint num="24" id="945" /> +<TGConnectingPoint num="25" id="946" /> +<TGConnectingPoint num="26" id="947" /> +<TGConnectingPoint num="27" id="948" /> +<TGConnectingPoint num="28" id="949" /> +<TGConnectingPoint num="29" id="950" /> +<TGConnectingPoint num="30" id="951" /> +<TGConnectingPoint num="31" id="952" /> +<TGConnectingPoint num="32" id="953" /> +<TGConnectingPoint num="33" id="954" /> +<TGConnectingPoint num="34" id="955" /> +<TGConnectingPoint num="35" id="956" /> +<TGConnectingPoint num="36" id="957" /> +<TGConnectingPoint num="37" id="958" /> +<TGConnectingPoint num="38" id="959" /> +<TGConnectingPoint num="39" id="960" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5106" id="902" > +<COMPONENT type="5106" id="1002" > <cdparam x="227" y="300" /> <sizeparam width="50" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="state0" value="main" /> -<TGConnectingPoint num="0" id="862" /> -<TGConnectingPoint num="1" id="863" /> -<TGConnectingPoint num="2" id="864" /> -<TGConnectingPoint num="3" id="865" /> -<TGConnectingPoint num="4" id="866" /> -<TGConnectingPoint num="5" id="867" /> -<TGConnectingPoint num="6" id="868" /> -<TGConnectingPoint num="7" id="869" /> -<TGConnectingPoint num="8" id="870" /> -<TGConnectingPoint num="9" id="871" /> -<TGConnectingPoint num="10" id="872" /> -<TGConnectingPoint num="11" id="873" /> -<TGConnectingPoint num="12" id="874" /> -<TGConnectingPoint num="13" id="875" /> -<TGConnectingPoint num="14" id="876" /> -<TGConnectingPoint num="15" id="877" /> -<TGConnectingPoint num="16" id="878" /> -<TGConnectingPoint num="17" id="879" /> -<TGConnectingPoint num="18" id="880" /> -<TGConnectingPoint num="19" id="881" /> -<TGConnectingPoint num="20" id="882" /> -<TGConnectingPoint num="21" id="883" /> -<TGConnectingPoint num="22" id="884" /> -<TGConnectingPoint num="23" id="885" /> -<TGConnectingPoint num="24" id="886" /> -<TGConnectingPoint num="25" id="887" /> -<TGConnectingPoint num="26" id="888" /> -<TGConnectingPoint num="27" id="889" /> -<TGConnectingPoint num="28" id="890" /> -<TGConnectingPoint num="29" id="891" /> -<TGConnectingPoint num="30" id="892" /> -<TGConnectingPoint num="31" id="893" /> -<TGConnectingPoint num="32" id="894" /> -<TGConnectingPoint num="33" id="895" /> -<TGConnectingPoint num="34" id="896" /> -<TGConnectingPoint num="35" id="897" /> -<TGConnectingPoint num="36" id="898" /> -<TGConnectingPoint num="37" id="899" /> -<TGConnectingPoint num="38" id="900" /> -<TGConnectingPoint num="39" id="901" /> +<TGConnectingPoint num="0" id="962" /> +<TGConnectingPoint num="1" id="963" /> +<TGConnectingPoint num="2" id="964" /> +<TGConnectingPoint num="3" id="965" /> +<TGConnectingPoint num="4" id="966" /> +<TGConnectingPoint num="5" id="967" /> +<TGConnectingPoint num="6" id="968" /> +<TGConnectingPoint num="7" id="969" /> +<TGConnectingPoint num="8" id="970" /> +<TGConnectingPoint num="9" id="971" /> +<TGConnectingPoint num="10" id="972" /> +<TGConnectingPoint num="11" id="973" /> +<TGConnectingPoint num="12" id="974" /> +<TGConnectingPoint num="13" id="975" /> +<TGConnectingPoint num="14" id="976" /> +<TGConnectingPoint num="15" id="977" /> +<TGConnectingPoint num="16" id="978" /> +<TGConnectingPoint num="17" id="979" /> +<TGConnectingPoint num="18" id="980" /> +<TGConnectingPoint num="19" id="981" /> +<TGConnectingPoint num="20" id="982" /> +<TGConnectingPoint num="21" id="983" /> +<TGConnectingPoint num="22" id="984" /> +<TGConnectingPoint num="23" id="985" /> +<TGConnectingPoint num="24" id="986" /> +<TGConnectingPoint num="25" id="987" /> +<TGConnectingPoint num="26" id="988" /> +<TGConnectingPoint num="27" id="989" /> +<TGConnectingPoint num="28" id="990" /> +<TGConnectingPoint num="29" id="991" /> +<TGConnectingPoint num="30" id="992" /> +<TGConnectingPoint num="31" id="993" /> +<TGConnectingPoint num="32" id="994" /> +<TGConnectingPoint num="33" id="995" /> +<TGConnectingPoint num="34" id="996" /> +<TGConnectingPoint num="35" id="997" /> +<TGConnectingPoint num="36" id="998" /> +<TGConnectingPoint num="37" id="999" /> +<TGConnectingPoint num="38" id="1000" /> +<TGConnectingPoint num="39" id="1001" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5106" id="943" > +<COMPONENT type="5106" id="1043" > <cdparam x="345" y="135" /> <sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="state0" value="main" /> -<TGConnectingPoint num="0" id="903" /> -<TGConnectingPoint num="1" id="904" /> -<TGConnectingPoint num="2" id="905" /> -<TGConnectingPoint num="3" id="906" /> -<TGConnectingPoint num="4" id="907" /> -<TGConnectingPoint num="5" id="908" /> -<TGConnectingPoint num="6" id="909" /> -<TGConnectingPoint num="7" id="910" /> -<TGConnectingPoint num="8" id="911" /> -<TGConnectingPoint num="9" id="912" /> -<TGConnectingPoint num="10" id="913" /> -<TGConnectingPoint num="11" id="914" /> -<TGConnectingPoint num="12" id="915" /> -<TGConnectingPoint num="13" id="916" /> -<TGConnectingPoint num="14" id="917" /> -<TGConnectingPoint num="15" id="918" /> -<TGConnectingPoint num="16" id="919" /> -<TGConnectingPoint num="17" id="920" /> -<TGConnectingPoint num="18" id="921" /> -<TGConnectingPoint num="19" id="922" /> -<TGConnectingPoint num="20" id="923" /> -<TGConnectingPoint num="21" id="924" /> -<TGConnectingPoint num="22" id="925" /> -<TGConnectingPoint num="23" id="926" /> -<TGConnectingPoint num="24" id="927" /> -<TGConnectingPoint num="25" id="928" /> -<TGConnectingPoint num="26" id="929" /> -<TGConnectingPoint num="27" id="930" /> -<TGConnectingPoint num="28" id="931" /> -<TGConnectingPoint num="29" id="932" /> -<TGConnectingPoint num="30" id="933" /> -<TGConnectingPoint num="31" id="934" /> -<TGConnectingPoint num="32" id="935" /> -<TGConnectingPoint num="33" id="936" /> -<TGConnectingPoint num="34" id="937" /> -<TGConnectingPoint num="35" id="938" /> -<TGConnectingPoint num="36" id="939" /> -<TGConnectingPoint num="37" id="940" /> -<TGConnectingPoint num="38" id="941" /> -<TGConnectingPoint num="39" id="942" /> +<TGConnectingPoint num="0" id="1003" /> +<TGConnectingPoint num="1" id="1004" /> +<TGConnectingPoint num="2" id="1005" /> +<TGConnectingPoint num="3" id="1006" /> +<TGConnectingPoint num="4" id="1007" /> +<TGConnectingPoint num="5" id="1008" /> +<TGConnectingPoint num="6" id="1009" /> +<TGConnectingPoint num="7" id="1010" /> +<TGConnectingPoint num="8" id="1011" /> +<TGConnectingPoint num="9" id="1012" /> +<TGConnectingPoint num="10" id="1013" /> +<TGConnectingPoint num="11" id="1014" /> +<TGConnectingPoint num="12" id="1015" /> +<TGConnectingPoint num="13" id="1016" /> +<TGConnectingPoint num="14" id="1017" /> +<TGConnectingPoint num="15" id="1018" /> +<TGConnectingPoint num="16" id="1019" /> +<TGConnectingPoint num="17" id="1020" /> +<TGConnectingPoint num="18" id="1021" /> +<TGConnectingPoint num="19" id="1022" /> +<TGConnectingPoint num="20" id="1023" /> +<TGConnectingPoint num="21" id="1024" /> +<TGConnectingPoint num="22" id="1025" /> +<TGConnectingPoint num="23" id="1026" /> +<TGConnectingPoint num="24" id="1027" /> +<TGConnectingPoint num="25" id="1028" /> +<TGConnectingPoint num="26" id="1029" /> +<TGConnectingPoint num="27" id="1030" /> +<TGConnectingPoint num="28" id="1031" /> +<TGConnectingPoint num="29" id="1032" /> +<TGConnectingPoint num="30" id="1033" /> +<TGConnectingPoint num="31" id="1034" /> +<TGConnectingPoint num="32" id="1035" /> +<TGConnectingPoint num="33" id="1036" /> +<TGConnectingPoint num="34" id="1037" /> +<TGConnectingPoint num="35" id="1038" /> +<TGConnectingPoint num="36" id="1039" /> +<TGConnectingPoint num="37" id="1040" /> +<TGConnectingPoint num="38" id="1041" /> +<TGConnectingPoint num="39" id="1042" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5100" id="945" > +<COMPONENT type="5100" id="1045" > <cdparam x="363" y="44" /> <sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="start state" value="null" /> -<TGConnectingPoint num="0" id="944" /> +<TGConnectingPoint num="0" id="1044" /> </COMPONENT> </AVATARStateMachineDiagramPanel> <AVATARStateMachineDiagramPanel name="CoffeeMachine" minX="10" maxX="1400" minY="10" maxY="1400" > -<CONNECTOR type="5102" id="952" > +<CONNECTOR type="118" id="1898" > +<cdparam x="372" y="83" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector" value="null" /> +<P1 x="412" y="82" id="1304" /> +<P2 x="472" y="82" id="1885" /> +<AutomaticDrawing data="false" /> +</CONNECTOR> +<COMPONENT type="301" id="1881" > +<cdparam x="472" y="75" /> +<sizeparam width="100" height="15" minWidth="20" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> +<infoparam name="UML Note" value="Activity1.docx" /> +<TGConnectingPoint num="0" id="1882" /> +<TGConnectingPoint num="1" id="1883" /> +<TGConnectingPoint num="2" id="1884" /> +<TGConnectingPoint num="3" id="1885" /> +<TGConnectingPoint num="4" id="1886" /> +<TGConnectingPoint num="5" id="1887" /> +<TGConnectingPoint num="6" id="1888" /> +<TGConnectingPoint num="7" id="1889" /> +<TGConnectingPoint num="8" id="1890" /> +<TGConnectingPoint num="9" id="1891" /> +<TGConnectingPoint num="10" id="1892" /> +<TGConnectingPoint num="11" id="1893" /> +<TGConnectingPoint num="12" id="1894" /> +<TGConnectingPoint num="13" id="1895" /> +<TGConnectingPoint num="14" id="1896" /> +<TGConnectingPoint num="15" id="1897" /> +<extraparam> +<Line value="Activity1.docx" /> +</extraparam> +</COMPONENT> + +<CONNECTOR type="5102" id="1052" > <cdparam x="691" y="288" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="951" /> -<P1 x="699" y="289" id="1090" /> -<P2 x="699" y="316" id="1062" /> +<TGConnectingPoint num="0" id="1051" /> +<P1 x="699" y="289" id="1190" /> +<P2 x="699" y="316" id="1162" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="950" > -<father id="952" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1050" > +<father id="1052" num="0" /> <cdparam x="691" y="328" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="946" /> -<TGConnectingPoint num="1" id="947" /> -<TGConnectingPoint num="2" id="948" /> -<TGConnectingPoint num="3" id="949" /> +<TGConnectingPoint num="0" id="1046" /> +<TGConnectingPoint num="1" id="1047" /> +<TGConnectingPoint num="2" id="1048" /> +<TGConnectingPoint num="3" id="1049" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -1805,25 +2061,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="959" > +<CONNECTOR type="5102" id="1059" > <cdparam x="481" y="501" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Send signal to stop state" value="null" /> -<TGConnectingPoint num="0" id="958" /> -<P1 x="437" y="525" id="1357" /> -<P2 x="323" y="748" id="1218" /> +<TGConnectingPoint num="0" id="1058" /> +<P1 x="442" y="527" id="1392" /> +<P2 x="323" y="748" id="1318" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="957" > -<father id="959" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1057" > +<father id="1059" num="0" /> <cdparam x="420" y="552" /> <sizeparam width="85" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="953" /> -<TGConnectingPoint num="1" id="954" /> -<TGConnectingPoint num="2" id="955" /> -<TGConnectingPoint num="3" id="956" /> +<TGConnectingPoint num="0" id="1053" /> +<TGConnectingPoint num="1" id="1054" /> +<TGConnectingPoint num="2" id="1055" /> +<TGConnectingPoint num="3" id="1056" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -1835,25 +2091,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="966" > +<CONNECTOR type="5102" id="1066" > <cdparam x="555" y="559" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="965" /> -<P1 x="321" y="455" id="1306" /> -<P2 x="437" y="495" id="1356" /> +<TGConnectingPoint num="0" id="1065" /> +<P1 x="326" y="457" id="1419" /> +<P2 x="442" y="497" id="1391" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="964" > -<father id="966" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1064" > +<father id="1066" num="0" /> <cdparam x="395" y="448" /> <sizeparam width="94" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="960" /> -<TGConnectingPoint num="1" id="961" /> -<TGConnectingPoint num="2" id="962" /> -<TGConnectingPoint num="3" id="963" /> +<TGConnectingPoint num="0" id="1060" /> +<TGConnectingPoint num="1" id="1061" /> +<TGConnectingPoint num="2" id="1062" /> +<TGConnectingPoint num="3" id="1063" /> <extraparam> <guard value="[ ]" /> <afterMin value="coinDelay" /> @@ -1864,25 +2120,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="973" > +<CONNECTOR type="5102" id="1073" > <cdparam x="355" y="545" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Send signal to stop state" value="null" /> -<TGConnectingPoint num="0" id="972" /> -<P1 x="293" y="552" id="1292" /> -<P2 x="289" y="748" id="1210" /> +<TGConnectingPoint num="0" id="1072" /> +<P1 x="298" y="554" id="1457" /> +<P2 x="289" y="748" id="1310" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="971" > -<father id="973" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1071" > +<father id="1073" num="0" /> <cdparam x="284" y="594" /> <sizeparam width="228" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="967" /> -<TGConnectingPoint num="1" id="968" /> -<TGConnectingPoint num="2" id="969" /> -<TGConnectingPoint num="3" id="970" /> +<TGConnectingPoint num="0" id="1067" /> +<TGConnectingPoint num="1" id="1068" /> +<TGConnectingPoint num="2" id="1069" /> +<TGConnectingPoint num="3" id="1070" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -1895,25 +2151,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="980" > +<CONNECTOR type="5102" id="1080" > <cdparam x="295" y="465" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="979" /> -<P1 x="288" y="475" id="1317" /> -<P2 x="293" y="522" id="1291" /> +<TGConnectingPoint num="0" id="1079" /> +<P1 x="293" y="477" id="1430" /> +<P2 x="298" y="524" id="1456" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="978" > -<father id="980" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1078" > +<father id="1080" num="0" /> <cdparam x="295" y="505" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="974" /> -<TGConnectingPoint num="1" id="975" /> -<TGConnectingPoint num="2" id="976" /> -<TGConnectingPoint num="3" id="977" /> +<TGConnectingPoint num="0" id="1074" /> +<TGConnectingPoint num="1" id="1075" /> +<TGConnectingPoint num="2" id="1076" /> +<TGConnectingPoint num="3" id="1077" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -1924,25 +2180,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="987" > +<CONNECTOR type="5102" id="1087" > <cdparam x="148" y="549" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Send signal to stop state" value="null" /> -<TGConnectingPoint num="0" id="986" /> -<P1 x="121" y="552" id="1346" /> -<P2 x="255" y="748" id="1217" /> +<TGConnectingPoint num="0" id="1086" /> +<P1 x="126" y="554" id="1403" /> +<P2 x="255" y="748" id="1317" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="985" > -<father id="987" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1085" > +<father id="1087" num="0" /> <cdparam x="32" y="587" /> <sizeparam width="262" height="45" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="981" /> -<TGConnectingPoint num="1" id="982" /> -<TGConnectingPoint num="2" id="983" /> -<TGConnectingPoint num="3" id="984" /> +<TGConnectingPoint num="0" id="1081" /> +<TGConnectingPoint num="1" id="1082" /> +<TGConnectingPoint num="2" id="1083" /> +<TGConnectingPoint num="3" id="1084" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -1955,25 +2211,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="994" > +<CONNECTOR type="5102" id="1094" > <cdparam x="229" y="465" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="993" /> -<P1 x="222" y="475" id="1316" /> -<P2 x="121" y="522" id="1345" /> +<TGConnectingPoint num="0" id="1093" /> +<P1 x="227" y="477" id="1429" /> +<P2 x="126" y="524" id="1402" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="992" > -<father id="994" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1092" > +<father id="1094" num="0" /> <cdparam x="229" y="505" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="988" /> -<TGConnectingPoint num="1" id="989" /> -<TGConnectingPoint num="2" id="990" /> -<TGConnectingPoint num="3" id="991" /> +<TGConnectingPoint num="0" id="1088" /> +<TGConnectingPoint num="1" id="1089" /> +<TGConnectingPoint num="2" id="1090" /> +<TGConnectingPoint num="3" id="1091" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -1984,25 +2240,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1001" > +<CONNECTOR type="5102" id="1101" > <cdparam x="280" y="420" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from start state to state0" value="null" /> -<TGConnectingPoint num="0" id="1000" /> -<P1 x="256" y="419" id="1343" /> -<P2 x="255" y="435" id="1303" /> +<TGConnectingPoint num="0" id="1100" /> +<P1 x="261" y="421" id="1413" /> +<P2 x="260" y="437" id="1416" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="999" > -<father id="1001" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1099" > +<father id="1101" num="0" /> <cdparam x="280" y="460" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="995" /> -<TGConnectingPoint num="1" id="996" /> -<TGConnectingPoint num="2" id="997" /> -<TGConnectingPoint num="3" id="998" /> +<TGConnectingPoint num="0" id="1095" /> +<TGConnectingPoint num="1" id="1096" /> +<TGConnectingPoint num="2" id="1097" /> +<TGConnectingPoint num="3" id="1098" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -2013,25 +2269,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1008" > +<CONNECTOR type="5102" id="1108" > <cdparam x="667" y="346" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Send signal to state0" value="null" /> -<TGConnectingPoint num="0" id="1007" /> -<P1 x="699" y="346" id="1063" /> -<P2 x="699" y="381" id="1251" /> +<TGConnectingPoint num="0" id="1107" /> +<P1 x="699" y="346" id="1163" /> +<P2 x="699" y="381" id="1351" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1006" > -<father id="1008" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1106" > +<father id="1108" num="0" /> <cdparam x="707" y="368" /> <sizeparam width="85" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1002" /> -<TGConnectingPoint num="1" id="1003" /> -<TGConnectingPoint num="2" id="1004" /> -<TGConnectingPoint num="3" id="1005" /> +<TGConnectingPoint num="0" id="1102" /> +<TGConnectingPoint num="1" id="1103" /> +<TGConnectingPoint num="2" id="1104" /> +<TGConnectingPoint num="3" id="1105" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -2043,25 +2299,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1015" > +<CONNECTOR type="5102" id="1115" > <cdparam x="348" y="228" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="1014" /> -<P1 x="388" y="208" id="1129" /> -<P2 x="649" y="264" id="1087" /> +<TGConnectingPoint num="0" id="1114" /> +<P1 x="388" y="208" id="1229" /> +<P2 x="649" y="264" id="1187" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1013" > -<father id="1015" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1113" > +<father id="1115" num="0" /> <cdparam x="411" y="206" /> <sizeparam width="94" height="30" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1009" /> -<TGConnectingPoint num="1" id="1010" /> -<TGConnectingPoint num="2" id="1011" /> -<TGConnectingPoint num="3" id="1012" /> +<TGConnectingPoint num="0" id="1109" /> +<TGConnectingPoint num="1" id="1110" /> +<TGConnectingPoint num="2" id="1111" /> +<TGConnectingPoint num="3" id="1112" /> <extraparam> <guard value="[ ]" /> <afterMin value="coinDelay" /> @@ -2072,25 +2328,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1022" > +<CONNECTOR type="5102" id="1122" > <cdparam x="243" y="319" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Send signal to state0" value="null" /> -<TGConnectingPoint num="0" id="1021" /> -<P1 x="277" y="305" id="1074" /> -<P2 x="306" y="370" id="1368" /> +<TGConnectingPoint num="0" id="1121" /> +<P1 x="277" y="305" id="1174" /> +<P2 x="311" y="372" id="1468" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1020" > -<father id="1022" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1120" > +<father id="1122" num="0" /> <cdparam x="243" y="359" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1016" /> -<TGConnectingPoint num="1" id="1017" /> -<TGConnectingPoint num="2" id="1018" /> -<TGConnectingPoint num="3" id="1019" /> +<TGConnectingPoint num="0" id="1116" /> +<TGConnectingPoint num="1" id="1117" /> +<TGConnectingPoint num="2" id="1118" /> +<TGConnectingPoint num="3" id="1119" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -2101,25 +2357,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1029" > +<CONNECTOR type="5102" id="1129" > <cdparam x="270" y="224" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="1028" /> -<P1 x="270" y="228" id="1139" /> -<P2 x="277" y="275" id="1073" /> +<TGConnectingPoint num="0" id="1128" /> +<P1 x="270" y="228" id="1239" /> +<P2 x="277" y="275" id="1173" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1027" > -<father id="1029" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1127" > +<father id="1129" num="0" /> <cdparam x="270" y="264" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1023" /> -<TGConnectingPoint num="1" id="1024" /> -<TGConnectingPoint num="2" id="1025" /> -<TGConnectingPoint num="3" id="1026" /> +<TGConnectingPoint num="0" id="1123" /> +<TGConnectingPoint num="1" id="1124" /> +<TGConnectingPoint num="2" id="1125" /> +<TGConnectingPoint num="3" id="1126" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -2130,25 +2386,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1036" > +<CONNECTOR type="5102" id="1136" > <cdparam x="309" y="160" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from Send signal to state0" value="null" /> -<TGConnectingPoint num="0" id="1035" /> -<P1 x="306" y="166" id="1052" /> -<P2 x="309" y="188" id="1126" /> +<TGConnectingPoint num="0" id="1135" /> +<P1 x="306" y="166" id="1152" /> +<P2 x="309" y="188" id="1226" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1034" > -<father id="1036" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1134" > +<father id="1136" num="0" /> <cdparam x="328" y="178" /> <sizeparam width="161" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1030" /> -<TGConnectingPoint num="1" id="1031" /> -<TGConnectingPoint num="2" id="1032" /> -<TGConnectingPoint num="3" id="1033" /> +<TGConnectingPoint num="0" id="1130" /> +<TGConnectingPoint num="1" id="1131" /> +<TGConnectingPoint num="2" id="1132" /> +<TGConnectingPoint num="3" id="1133" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -2160,25 +2416,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1043" > +<CONNECTOR type="5102" id="1143" > <cdparam x="303" y="103" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="1042" /> -<P1 x="303" y="103" id="1174" /> -<P2 x="306" y="136" id="1051" /> +<TGConnectingPoint num="0" id="1142" /> +<P1 x="302" y="102" id="1274" /> +<P2 x="306" y="136" id="1151" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1041" > -<father id="1043" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1141" > +<father id="1143" num="0" /> <cdparam x="303" y="143" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1037" /> -<TGConnectingPoint num="1" id="1038" /> -<TGConnectingPoint num="2" id="1039" /> -<TGConnectingPoint num="3" id="1040" /> +<TGConnectingPoint num="0" id="1137" /> +<TGConnectingPoint num="1" id="1138" /> +<TGConnectingPoint num="2" id="1139" /> +<TGConnectingPoint num="3" id="1140" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -2189,25 +2445,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1050" > +<CONNECTOR type="5102" id="1150" > <cdparam x="303" y="40" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from start state to state0" value="null" /> -<TGConnectingPoint num="0" id="1049" /> -<P1 x="303" y="40" id="1166" /> -<P2 x="303" y="63" id="1169" /> +<TGConnectingPoint num="0" id="1149" /> +<P1 x="303" y="40" id="1266" /> +<P2 x="302" y="62" id="1269" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1048" > -<father id="1050" num="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1148" > +<father id="1150" num="0" /> <cdparam x="303" y="80" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1044" /> -<TGConnectingPoint num="1" id="1045" /> -<TGConnectingPoint num="2" id="1046" /> -<TGConnectingPoint num="3" id="1047" /> +<TGConnectingPoint num="0" id="1144" /> +<TGConnectingPoint num="1" id="1145" /> +<TGConnectingPoint num="2" id="1146" /> +<TGConnectingPoint num="3" id="1147" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -2218,512 +2474,514 @@ </extraparam> </SUBCOMPONENT> -<COMPONENT type="5104" id="1061" > +<COMPONENT type="5104" id="1161" > <cdparam x="268" y="141" /> <sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="Receive signal" value="getCoin(x)" /> -<TGConnectingPoint num="0" id="1051" /> -<TGConnectingPoint num="1" id="1052" /> -<TGConnectingPoint num="2" id="1053" /> -<TGConnectingPoint num="3" id="1054" /> -<TGConnectingPoint num="4" id="1055" /> -<TGConnectingPoint num="5" id="1056" /> -<TGConnectingPoint num="6" id="1057" /> -<TGConnectingPoint num="7" id="1058" /> -<TGConnectingPoint num="8" id="1059" /> -<TGConnectingPoint num="9" id="1060" /> +<TGConnectingPoint num="0" id="1151" /> +<TGConnectingPoint num="1" id="1152" /> +<TGConnectingPoint num="2" id="1153" /> +<TGConnectingPoint num="3" id="1154" /> +<TGConnectingPoint num="4" id="1155" /> +<TGConnectingPoint num="5" id="1156" /> +<TGConnectingPoint num="6" id="1157" /> +<TGConnectingPoint num="7" id="1158" /> +<TGConnectingPoint num="8" id="1159" /> +<TGConnectingPoint num="9" id="1160" /> </COMPONENT> -<COMPONENT type="5103" id="1072" > +<COMPONENT type="5103" id="1172" > <cdparam x="634" y="321" /> <sizeparam width="130" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="Send signal" value="ejectCoin(nbOfCoins)" /> -<TGConnectingPoint num="0" id="1062" /> -<TGConnectingPoint num="1" id="1063" /> -<TGConnectingPoint num="2" id="1064" /> -<TGConnectingPoint num="3" id="1065" /> -<TGConnectingPoint num="4" id="1066" /> -<TGConnectingPoint num="5" id="1067" /> -<TGConnectingPoint num="6" id="1068" /> -<TGConnectingPoint num="7" id="1069" /> -<TGConnectingPoint num="8" id="1070" /> -<TGConnectingPoint num="9" id="1071" /> +<TGConnectingPoint num="0" id="1162" /> +<TGConnectingPoint num="1" id="1163" /> +<TGConnectingPoint num="2" id="1164" /> +<TGConnectingPoint num="3" id="1165" /> +<TGConnectingPoint num="4" id="1166" /> +<TGConnectingPoint num="5" id="1167" /> +<TGConnectingPoint num="6" id="1168" /> +<TGConnectingPoint num="7" id="1169" /> +<TGConnectingPoint num="8" id="1170" /> +<TGConnectingPoint num="9" id="1171" /> </COMPONENT> -<COMPONENT type="5104" id="1083" > +<COMPONENT type="5104" id="1183" > <cdparam x="239" y="280" /> <sizeparam width="76" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="Receive signal" value="getCoin(x)" /> -<TGConnectingPoint num="0" id="1073" /> -<TGConnectingPoint num="1" id="1074" /> -<TGConnectingPoint num="2" id="1075" /> -<TGConnectingPoint num="3" id="1076" /> -<TGConnectingPoint num="4" id="1077" /> -<TGConnectingPoint num="5" id="1078" /> -<TGConnectingPoint num="6" id="1079" /> -<TGConnectingPoint num="7" id="1080" /> -<TGConnectingPoint num="8" id="1081" /> -<TGConnectingPoint num="9" id="1082" /> +<TGConnectingPoint num="0" id="1173" /> +<TGConnectingPoint num="1" id="1174" /> +<TGConnectingPoint num="2" id="1175" /> +<TGConnectingPoint num="3" id="1176" /> +<TGConnectingPoint num="4" id="1177" /> +<TGConnectingPoint num="5" id="1178" /> +<TGConnectingPoint num="6" id="1179" /> +<TGConnectingPoint num="7" id="1180" /> +<TGConnectingPoint num="8" id="1181" /> +<TGConnectingPoint num="9" id="1182" /> <accessibility /> </COMPONENT> -<COMPONENT type="5106" id="1124" > +<COMPONENT type="5106" id="1224" > <cdparam x="649" y="239" /> <sizeparam width="100" height="50" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="state0" value="ejectState" /> -<TGConnectingPoint num="0" id="1084" /> -<TGConnectingPoint num="1" id="1085" /> -<TGConnectingPoint num="2" id="1086" /> -<TGConnectingPoint num="3" id="1087" /> -<TGConnectingPoint num="4" id="1088" /> -<TGConnectingPoint num="5" id="1089" /> -<TGConnectingPoint num="6" id="1090" /> -<TGConnectingPoint num="7" id="1091" /> -<TGConnectingPoint num="8" id="1092" /> -<TGConnectingPoint num="9" id="1093" /> -<TGConnectingPoint num="10" id="1094" /> -<TGConnectingPoint num="11" id="1095" /> -<TGConnectingPoint num="12" id="1096" /> -<TGConnectingPoint num="13" id="1097" /> -<TGConnectingPoint num="14" id="1098" /> -<TGConnectingPoint num="15" id="1099" /> -<TGConnectingPoint num="16" id="1100" /> -<TGConnectingPoint num="17" id="1101" /> -<TGConnectingPoint num="18" id="1102" /> -<TGConnectingPoint num="19" id="1103" /> -<TGConnectingPoint num="20" id="1104" /> -<TGConnectingPoint num="21" id="1105" /> -<TGConnectingPoint num="22" id="1106" /> -<TGConnectingPoint num="23" id="1107" /> -<TGConnectingPoint num="24" id="1108" /> -<TGConnectingPoint num="25" id="1109" /> -<TGConnectingPoint num="26" id="1110" /> -<TGConnectingPoint num="27" id="1111" /> -<TGConnectingPoint num="28" id="1112" /> -<TGConnectingPoint num="29" id="1113" /> -<TGConnectingPoint num="30" id="1114" /> -<TGConnectingPoint num="31" id="1115" /> -<TGConnectingPoint num="32" id="1116" /> -<TGConnectingPoint num="33" id="1117" /> -<TGConnectingPoint num="34" id="1118" /> -<TGConnectingPoint num="35" id="1119" /> -<TGConnectingPoint num="36" id="1120" /> -<TGConnectingPoint num="37" id="1121" /> -<TGConnectingPoint num="38" id="1122" /> -<TGConnectingPoint num="39" id="1123" /> +<TGConnectingPoint num="0" id="1184" /> +<TGConnectingPoint num="1" id="1185" /> +<TGConnectingPoint num="2" id="1186" /> +<TGConnectingPoint num="3" id="1187" /> +<TGConnectingPoint num="4" id="1188" /> +<TGConnectingPoint num="5" id="1189" /> +<TGConnectingPoint num="6" id="1190" /> +<TGConnectingPoint num="7" id="1191" /> +<TGConnectingPoint num="8" id="1192" /> +<TGConnectingPoint num="9" id="1193" /> +<TGConnectingPoint num="10" id="1194" /> +<TGConnectingPoint num="11" id="1195" /> +<TGConnectingPoint num="12" id="1196" /> +<TGConnectingPoint num="13" id="1197" /> +<TGConnectingPoint num="14" id="1198" /> +<TGConnectingPoint num="15" id="1199" /> +<TGConnectingPoint num="16" id="1200" /> +<TGConnectingPoint num="17" id="1201" /> +<TGConnectingPoint num="18" id="1202" /> +<TGConnectingPoint num="19" id="1203" /> +<TGConnectingPoint num="20" id="1204" /> +<TGConnectingPoint num="21" id="1205" /> +<TGConnectingPoint num="22" id="1206" /> +<TGConnectingPoint num="23" id="1207" /> +<TGConnectingPoint num="24" id="1208" /> +<TGConnectingPoint num="25" id="1209" /> +<TGConnectingPoint num="26" id="1210" /> +<TGConnectingPoint num="27" id="1211" /> +<TGConnectingPoint num="28" id="1212" /> +<TGConnectingPoint num="29" id="1213" /> +<TGConnectingPoint num="30" id="1214" /> +<TGConnectingPoint num="31" id="1215" /> +<TGConnectingPoint num="32" id="1216" /> +<TGConnectingPoint num="33" id="1217" /> +<TGConnectingPoint num="34" id="1218" /> +<TGConnectingPoint num="35" id="1219" /> +<TGConnectingPoint num="36" id="1220" /> +<TGConnectingPoint num="37" id="1221" /> +<TGConnectingPoint num="38" id="1222" /> +<TGConnectingPoint num="39" id="1223" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5106" id="1165" > +<COMPONENT type="5106" id="1265" > <cdparam x="231" y="188" /> <sizeparam width="157" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="state0" value="WaitingForSecondCoin" /> -<TGConnectingPoint num="0" id="1125" /> -<TGConnectingPoint num="1" id="1126" /> -<TGConnectingPoint num="2" id="1127" /> -<TGConnectingPoint num="3" id="1128" /> -<TGConnectingPoint num="4" id="1129" /> -<TGConnectingPoint num="5" id="1130" /> -<TGConnectingPoint num="6" id="1131" /> -<TGConnectingPoint num="7" id="1132" /> -<TGConnectingPoint num="8" id="1133" /> -<TGConnectingPoint num="9" id="1134" /> -<TGConnectingPoint num="10" id="1135" /> -<TGConnectingPoint num="11" id="1136" /> -<TGConnectingPoint num="12" id="1137" /> -<TGConnectingPoint num="13" id="1138" /> -<TGConnectingPoint num="14" id="1139" /> -<TGConnectingPoint num="15" id="1140" /> -<TGConnectingPoint num="16" id="1141" /> -<TGConnectingPoint num="17" id="1142" /> -<TGConnectingPoint num="18" id="1143" /> -<TGConnectingPoint num="19" id="1144" /> -<TGConnectingPoint num="20" id="1145" /> -<TGConnectingPoint num="21" id="1146" /> -<TGConnectingPoint num="22" id="1147" /> -<TGConnectingPoint num="23" id="1148" /> -<TGConnectingPoint num="24" id="1149" /> -<TGConnectingPoint num="25" id="1150" /> -<TGConnectingPoint num="26" id="1151" /> -<TGConnectingPoint num="27" id="1152" /> -<TGConnectingPoint num="28" id="1153" /> -<TGConnectingPoint num="29" id="1154" /> -<TGConnectingPoint num="30" id="1155" /> -<TGConnectingPoint num="31" id="1156" /> -<TGConnectingPoint num="32" id="1157" /> -<TGConnectingPoint num="33" id="1158" /> -<TGConnectingPoint num="34" id="1159" /> -<TGConnectingPoint num="35" id="1160" /> -<TGConnectingPoint num="36" id="1161" /> -<TGConnectingPoint num="37" id="1162" /> -<TGConnectingPoint num="38" id="1163" /> -<TGConnectingPoint num="39" id="1164" /> +<TGConnectingPoint num="0" id="1225" /> +<TGConnectingPoint num="1" id="1226" /> +<TGConnectingPoint num="2" id="1227" /> +<TGConnectingPoint num="3" id="1228" /> +<TGConnectingPoint num="4" id="1229" /> +<TGConnectingPoint num="5" id="1230" /> +<TGConnectingPoint num="6" id="1231" /> +<TGConnectingPoint num="7" id="1232" /> +<TGConnectingPoint num="8" id="1233" /> +<TGConnectingPoint num="9" id="1234" /> +<TGConnectingPoint num="10" id="1235" /> +<TGConnectingPoint num="11" id="1236" /> +<TGConnectingPoint num="12" id="1237" /> +<TGConnectingPoint num="13" id="1238" /> +<TGConnectingPoint num="14" id="1239" /> +<TGConnectingPoint num="15" id="1240" /> +<TGConnectingPoint num="16" id="1241" /> +<TGConnectingPoint num="17" id="1242" /> +<TGConnectingPoint num="18" id="1243" /> +<TGConnectingPoint num="19" id="1244" /> +<TGConnectingPoint num="20" id="1245" /> +<TGConnectingPoint num="21" id="1246" /> +<TGConnectingPoint num="22" id="1247" /> +<TGConnectingPoint num="23" id="1248" /> +<TGConnectingPoint num="24" id="1249" /> +<TGConnectingPoint num="25" id="1250" /> +<TGConnectingPoint num="26" id="1251" /> +<TGConnectingPoint num="27" id="1252" /> +<TGConnectingPoint num="28" id="1253" /> +<TGConnectingPoint num="29" id="1254" /> +<TGConnectingPoint num="30" id="1255" /> +<TGConnectingPoint num="31" id="1256" /> +<TGConnectingPoint num="32" id="1257" /> +<TGConnectingPoint num="33" id="1258" /> +<TGConnectingPoint num="34" id="1259" /> +<TGConnectingPoint num="35" id="1260" /> +<TGConnectingPoint num="36" id="1261" /> +<TGConnectingPoint num="37" id="1262" /> +<TGConnectingPoint num="38" id="1263" /> +<TGConnectingPoint num="39" id="1264" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5100" id="1167" > +<COMPONENT type="5100" id="1267" > <cdparam x="296" y="20" /> <sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="start state" value="null" /> -<TGConnectingPoint num="0" id="1166" /> +<TGConnectingPoint num="0" id="1266" /> </COMPONENT> -<COMPONENT type="5106" id="1208" > -<cdparam x="235" y="63" /> -<sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="5106" id="1308" > +<cdparam x="192" y="62" /> +<sizeparam width="220" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="state0" value="WaitingForFirstCoin" /> -<TGConnectingPoint num="0" id="1168" /> -<TGConnectingPoint num="1" id="1169" /> -<TGConnectingPoint num="2" id="1170" /> -<TGConnectingPoint num="3" id="1171" /> -<TGConnectingPoint num="4" id="1172" /> -<TGConnectingPoint num="5" id="1173" /> -<TGConnectingPoint num="6" id="1174" /> -<TGConnectingPoint num="7" id="1175" /> -<TGConnectingPoint num="8" id="1176" /> -<TGConnectingPoint num="9" id="1177" /> -<TGConnectingPoint num="10" id="1178" /> -<TGConnectingPoint num="11" id="1179" /> -<TGConnectingPoint num="12" id="1180" /> -<TGConnectingPoint num="13" id="1181" /> -<TGConnectingPoint num="14" id="1182" /> -<TGConnectingPoint num="15" id="1183" /> -<TGConnectingPoint num="16" id="1184" /> -<TGConnectingPoint num="17" id="1185" /> -<TGConnectingPoint num="18" id="1186" /> -<TGConnectingPoint num="19" id="1187" /> -<TGConnectingPoint num="20" id="1188" /> -<TGConnectingPoint num="21" id="1189" /> -<TGConnectingPoint num="22" id="1190" /> -<TGConnectingPoint num="23" id="1191" /> -<TGConnectingPoint num="24" id="1192" /> -<TGConnectingPoint num="25" id="1193" /> -<TGConnectingPoint num="26" id="1194" /> -<TGConnectingPoint num="27" id="1195" /> -<TGConnectingPoint num="28" id="1196" /> -<TGConnectingPoint num="29" id="1197" /> -<TGConnectingPoint num="30" id="1198" /> -<TGConnectingPoint num="31" id="1199" /> -<TGConnectingPoint num="32" id="1200" /> -<TGConnectingPoint num="33" id="1201" /> -<TGConnectingPoint num="34" id="1202" /> -<TGConnectingPoint num="35" id="1203" /> -<TGConnectingPoint num="36" id="1204" /> -<TGConnectingPoint num="37" id="1205" /> -<TGConnectingPoint num="38" id="1206" /> -<TGConnectingPoint num="39" id="1207" /> +<TGConnectingPoint num="0" id="1268" /> +<TGConnectingPoint num="1" id="1269" /> +<TGConnectingPoint num="2" id="1270" /> +<TGConnectingPoint num="3" id="1271" /> +<TGConnectingPoint num="4" id="1272" /> +<TGConnectingPoint num="5" id="1273" /> +<TGConnectingPoint num="6" id="1274" /> +<TGConnectingPoint num="7" id="1275" /> +<TGConnectingPoint num="8" id="1276" /> +<TGConnectingPoint num="9" id="1277" /> +<TGConnectingPoint num="10" id="1278" /> +<TGConnectingPoint num="11" id="1279" /> +<TGConnectingPoint num="12" id="1280" /> +<TGConnectingPoint num="13" id="1281" /> +<TGConnectingPoint num="14" id="1282" /> +<TGConnectingPoint num="15" id="1283" /> +<TGConnectingPoint num="16" id="1284" /> +<TGConnectingPoint num="17" id="1285" /> +<TGConnectingPoint num="18" id="1286" /> +<TGConnectingPoint num="19" id="1287" /> +<TGConnectingPoint num="20" id="1288" /> +<TGConnectingPoint num="21" id="1289" /> +<TGConnectingPoint num="22" id="1290" /> +<TGConnectingPoint num="23" id="1291" /> +<TGConnectingPoint num="24" id="1292" /> +<TGConnectingPoint num="25" id="1293" /> +<TGConnectingPoint num="26" id="1294" /> +<TGConnectingPoint num="27" id="1295" /> +<TGConnectingPoint num="28" id="1296" /> +<TGConnectingPoint num="29" id="1297" /> +<TGConnectingPoint num="30" id="1298" /> +<TGConnectingPoint num="31" id="1299" /> +<TGConnectingPoint num="32" id="1300" /> +<TGConnectingPoint num="33" id="1301" /> +<TGConnectingPoint num="34" id="1302" /> +<TGConnectingPoint num="35" id="1303" /> +<TGConnectingPoint num="36" id="1304" /> +<TGConnectingPoint num="37" id="1305" /> +<TGConnectingPoint num="38" id="1306" /> +<TGConnectingPoint num="39" id="1307" /> +<latencyCheck /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5106" id="1249" > +<COMPONENT type="5106" id="1349" > <cdparam x="221" y="748" /> <sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="state0" value="WaitingForFirstCoin" /> -<TGConnectingPoint num="0" id="1209" /> -<TGConnectingPoint num="1" id="1210" /> -<TGConnectingPoint num="2" id="1211" /> -<TGConnectingPoint num="3" id="1212" /> -<TGConnectingPoint num="4" id="1213" /> -<TGConnectingPoint num="5" id="1214" /> -<TGConnectingPoint num="6" id="1215" /> -<TGConnectingPoint num="7" id="1216" /> -<TGConnectingPoint num="8" id="1217" /> -<TGConnectingPoint num="9" id="1218" /> -<TGConnectingPoint num="10" id="1219" /> -<TGConnectingPoint num="11" id="1220" /> -<TGConnectingPoint num="12" id="1221" /> -<TGConnectingPoint num="13" id="1222" /> -<TGConnectingPoint num="14" id="1223" /> -<TGConnectingPoint num="15" id="1224" /> -<TGConnectingPoint num="16" id="1225" /> -<TGConnectingPoint num="17" id="1226" /> -<TGConnectingPoint num="18" id="1227" /> -<TGConnectingPoint num="19" id="1228" /> -<TGConnectingPoint num="20" id="1229" /> -<TGConnectingPoint num="21" id="1230" /> -<TGConnectingPoint num="22" id="1231" /> -<TGConnectingPoint num="23" id="1232" /> -<TGConnectingPoint num="24" id="1233" /> -<TGConnectingPoint num="25" id="1234" /> -<TGConnectingPoint num="26" id="1235" /> -<TGConnectingPoint num="27" id="1236" /> -<TGConnectingPoint num="28" id="1237" /> -<TGConnectingPoint num="29" id="1238" /> -<TGConnectingPoint num="30" id="1239" /> -<TGConnectingPoint num="31" id="1240" /> -<TGConnectingPoint num="32" id="1241" /> -<TGConnectingPoint num="33" id="1242" /> -<TGConnectingPoint num="34" id="1243" /> -<TGConnectingPoint num="35" id="1244" /> -<TGConnectingPoint num="36" id="1245" /> -<TGConnectingPoint num="37" id="1246" /> -<TGConnectingPoint num="38" id="1247" /> -<TGConnectingPoint num="39" id="1248" /> +<TGConnectingPoint num="0" id="1309" /> +<TGConnectingPoint num="1" id="1310" /> +<TGConnectingPoint num="2" id="1311" /> +<TGConnectingPoint num="3" id="1312" /> +<TGConnectingPoint num="4" id="1313" /> +<TGConnectingPoint num="5" id="1314" /> +<TGConnectingPoint num="6" id="1315" /> +<TGConnectingPoint num="7" id="1316" /> +<TGConnectingPoint num="8" id="1317" /> +<TGConnectingPoint num="9" id="1318" /> +<TGConnectingPoint num="10" id="1319" /> +<TGConnectingPoint num="11" id="1320" /> +<TGConnectingPoint num="12" id="1321" /> +<TGConnectingPoint num="13" id="1322" /> +<TGConnectingPoint num="14" id="1323" /> +<TGConnectingPoint num="15" id="1324" /> +<TGConnectingPoint num="16" id="1325" /> +<TGConnectingPoint num="17" id="1326" /> +<TGConnectingPoint num="18" id="1327" /> +<TGConnectingPoint num="19" id="1328" /> +<TGConnectingPoint num="20" id="1329" /> +<TGConnectingPoint num="21" id="1330" /> +<TGConnectingPoint num="22" id="1331" /> +<TGConnectingPoint num="23" id="1332" /> +<TGConnectingPoint num="24" id="1333" /> +<TGConnectingPoint num="25" id="1334" /> +<TGConnectingPoint num="26" id="1335" /> +<TGConnectingPoint num="27" id="1336" /> +<TGConnectingPoint num="28" id="1337" /> +<TGConnectingPoint num="29" id="1338" /> +<TGConnectingPoint num="30" id="1339" /> +<TGConnectingPoint num="31" id="1340" /> +<TGConnectingPoint num="32" id="1341" /> +<TGConnectingPoint num="33" id="1342" /> +<TGConnectingPoint num="34" id="1343" /> +<TGConnectingPoint num="35" id="1344" /> +<TGConnectingPoint num="36" id="1345" /> +<TGConnectingPoint num="37" id="1346" /> +<TGConnectingPoint num="38" id="1347" /> +<TGConnectingPoint num="39" id="1348" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5106" id="1290" > +<COMPONENT type="5106" id="1390" > <cdparam x="631" y="381" /> <sizeparam width="137" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="state0" value="WaitingForFirstCoin" /> -<TGConnectingPoint num="0" id="1250" /> -<TGConnectingPoint num="1" id="1251" /> -<TGConnectingPoint num="2" id="1252" /> -<TGConnectingPoint num="3" id="1253" /> -<TGConnectingPoint num="4" id="1254" /> -<TGConnectingPoint num="5" id="1255" /> -<TGConnectingPoint num="6" id="1256" /> -<TGConnectingPoint num="7" id="1257" /> -<TGConnectingPoint num="8" id="1258" /> -<TGConnectingPoint num="9" id="1259" /> -<TGConnectingPoint num="10" id="1260" /> -<TGConnectingPoint num="11" id="1261" /> -<TGConnectingPoint num="12" id="1262" /> -<TGConnectingPoint num="13" id="1263" /> -<TGConnectingPoint num="14" id="1264" /> -<TGConnectingPoint num="15" id="1265" /> -<TGConnectingPoint num="16" id="1266" /> -<TGConnectingPoint num="17" id="1267" /> -<TGConnectingPoint num="18" id="1268" /> -<TGConnectingPoint num="19" id="1269" /> -<TGConnectingPoint num="20" id="1270" /> -<TGConnectingPoint num="21" id="1271" /> -<TGConnectingPoint num="22" id="1272" /> -<TGConnectingPoint num="23" id="1273" /> -<TGConnectingPoint num="24" id="1274" /> -<TGConnectingPoint num="25" id="1275" /> -<TGConnectingPoint num="26" id="1276" /> -<TGConnectingPoint num="27" id="1277" /> -<TGConnectingPoint num="28" id="1278" /> -<TGConnectingPoint num="29" id="1279" /> -<TGConnectingPoint num="30" id="1280" /> -<TGConnectingPoint num="31" id="1281" /> -<TGConnectingPoint num="32" id="1282" /> -<TGConnectingPoint num="33" id="1283" /> -<TGConnectingPoint num="34" id="1284" /> -<TGConnectingPoint num="35" id="1285" /> -<TGConnectingPoint num="36" id="1286" /> -<TGConnectingPoint num="37" id="1287" /> -<TGConnectingPoint num="38" id="1288" /> -<TGConnectingPoint num="39" id="1289" /> +<TGConnectingPoint num="0" id="1350" /> +<TGConnectingPoint num="1" id="1351" /> +<TGConnectingPoint num="2" id="1352" /> +<TGConnectingPoint num="3" id="1353" /> +<TGConnectingPoint num="4" id="1354" /> +<TGConnectingPoint num="5" id="1355" /> +<TGConnectingPoint num="6" id="1356" /> +<TGConnectingPoint num="7" id="1357" /> +<TGConnectingPoint num="8" id="1358" /> +<TGConnectingPoint num="9" id="1359" /> +<TGConnectingPoint num="10" id="1360" /> +<TGConnectingPoint num="11" id="1361" /> +<TGConnectingPoint num="12" id="1362" /> +<TGConnectingPoint num="13" id="1363" /> +<TGConnectingPoint num="14" id="1364" /> +<TGConnectingPoint num="15" id="1365" /> +<TGConnectingPoint num="16" id="1366" /> +<TGConnectingPoint num="17" id="1367" /> +<TGConnectingPoint num="18" id="1368" /> +<TGConnectingPoint num="19" id="1369" /> +<TGConnectingPoint num="20" id="1370" /> +<TGConnectingPoint num="21" id="1371" /> +<TGConnectingPoint num="22" id="1372" /> +<TGConnectingPoint num="23" id="1373" /> +<TGConnectingPoint num="24" id="1374" /> +<TGConnectingPoint num="25" id="1375" /> +<TGConnectingPoint num="26" id="1376" /> +<TGConnectingPoint num="27" id="1377" /> +<TGConnectingPoint num="28" id="1378" /> +<TGConnectingPoint num="29" id="1379" /> +<TGConnectingPoint num="30" id="1380" /> +<TGConnectingPoint num="31" id="1381" /> +<TGConnectingPoint num="32" id="1382" /> +<TGConnectingPoint num="33" id="1383" /> +<TGConnectingPoint num="34" id="1384" /> +<TGConnectingPoint num="35" id="1385" /> +<TGConnectingPoint num="36" id="1386" /> +<TGConnectingPoint num="37" id="1387" /> +<TGConnectingPoint num="38" id="1388" /> +<TGConnectingPoint num="39" id="1389" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5106" id="1407" > -<cdparam x="18" y="370" /> +<COMPONENT type="5106" id="1507" > +<cdparam x="23" y="372" /> <sizeparam width="577" height="354" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="1400" /> <infoparam name="state0" value="Beverage" /> -<TGConnectingPoint num="0" id="1367" /> -<TGConnectingPoint num="1" id="1368" /> -<TGConnectingPoint num="2" id="1369" /> -<TGConnectingPoint num="3" id="1370" /> -<TGConnectingPoint num="4" id="1371" /> -<TGConnectingPoint num="5" id="1372" /> -<TGConnectingPoint num="6" id="1373" /> -<TGConnectingPoint num="7" id="1374" /> -<TGConnectingPoint num="8" id="1375" /> -<TGConnectingPoint num="9" id="1376" /> -<TGConnectingPoint num="10" id="1377" /> -<TGConnectingPoint num="11" id="1378" /> -<TGConnectingPoint num="12" id="1379" /> -<TGConnectingPoint num="13" id="1380" /> -<TGConnectingPoint num="14" id="1381" /> -<TGConnectingPoint num="15" id="1382" /> -<TGConnectingPoint num="16" id="1383" /> -<TGConnectingPoint num="17" id="1384" /> -<TGConnectingPoint num="18" id="1385" /> -<TGConnectingPoint num="19" id="1386" /> -<TGConnectingPoint num="20" id="1387" /> -<TGConnectingPoint num="21" id="1388" /> -<TGConnectingPoint num="22" id="1389" /> -<TGConnectingPoint num="23" id="1390" /> -<TGConnectingPoint num="24" id="1391" /> -<TGConnectingPoint num="25" id="1392" /> -<TGConnectingPoint num="26" id="1393" /> -<TGConnectingPoint num="27" id="1394" /> -<TGConnectingPoint num="28" id="1395" /> -<TGConnectingPoint num="29" id="1396" /> -<TGConnectingPoint num="30" id="1397" /> -<TGConnectingPoint num="31" id="1398" /> -<TGConnectingPoint num="32" id="1399" /> -<TGConnectingPoint num="33" id="1400" /> -<TGConnectingPoint num="34" id="1401" /> -<TGConnectingPoint num="35" id="1402" /> -<TGConnectingPoint num="36" id="1403" /> -<TGConnectingPoint num="37" id="1404" /> -<TGConnectingPoint num="38" id="1405" /> -<TGConnectingPoint num="39" id="1406" /> +<TGConnectingPoint num="0" id="1467" /> +<TGConnectingPoint num="1" id="1468" /> +<TGConnectingPoint num="2" id="1469" /> +<TGConnectingPoint num="3" id="1470" /> +<TGConnectingPoint num="4" id="1471" /> +<TGConnectingPoint num="5" id="1472" /> +<TGConnectingPoint num="6" id="1473" /> +<TGConnectingPoint num="7" id="1474" /> +<TGConnectingPoint num="8" id="1475" /> +<TGConnectingPoint num="9" id="1476" /> +<TGConnectingPoint num="10" id="1477" /> +<TGConnectingPoint num="11" id="1478" /> +<TGConnectingPoint num="12" id="1479" /> +<TGConnectingPoint num="13" id="1480" /> +<TGConnectingPoint num="14" id="1481" /> +<TGConnectingPoint num="15" id="1482" /> +<TGConnectingPoint num="16" id="1483" /> +<TGConnectingPoint num="17" id="1484" /> +<TGConnectingPoint num="18" id="1485" /> +<TGConnectingPoint num="19" id="1486" /> +<TGConnectingPoint num="20" id="1487" /> +<TGConnectingPoint num="21" id="1488" /> +<TGConnectingPoint num="22" id="1489" /> +<TGConnectingPoint num="23" id="1490" /> +<TGConnectingPoint num="24" id="1491" /> +<TGConnectingPoint num="25" id="1492" /> +<TGConnectingPoint num="26" id="1493" /> +<TGConnectingPoint num="27" id="1494" /> +<TGConnectingPoint num="28" id="1495" /> +<TGConnectingPoint num="29" id="1496" /> +<TGConnectingPoint num="30" id="1497" /> +<TGConnectingPoint num="31" id="1498" /> +<TGConnectingPoint num="32" id="1499" /> +<TGConnectingPoint num="33" id="1500" /> +<TGConnectingPoint num="34" id="1501" /> +<TGConnectingPoint num="35" id="1502" /> +<TGConnectingPoint num="36" id="1503" /> +<TGConnectingPoint num="37" id="1504" /> +<TGConnectingPoint num="38" id="1505" /> +<TGConnectingPoint num="39" id="1506" /> <extraparam> </extraparam> </COMPONENT> -<SUBCOMPONENT type="5104" id="1301" > -<father id="1407" num="0" /> -<cdparam x="237" y="527" /> -<sizeparam width="112" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="5103" id="1401" > +<father id="1507" num="0" /> +<cdparam x="377" y="502" /> +<sizeparam width="130" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="465" minY="0" maxY="334" /> -<infoparam name="Send signal" value="pushTeaButton()" /> -<TGConnectingPoint num="0" id="1291" /> -<TGConnectingPoint num="1" id="1292" /> -<TGConnectingPoint num="2" id="1293" /> -<TGConnectingPoint num="3" id="1294" /> -<TGConnectingPoint num="4" id="1295" /> -<TGConnectingPoint num="5" id="1296" /> -<TGConnectingPoint num="6" id="1297" /> -<TGConnectingPoint num="7" id="1298" /> -<TGConnectingPoint num="8" id="1299" /> -<TGConnectingPoint num="9" id="1300" /> +<cdrectangleparam minX="0" maxX="447" minY="0" maxY="334" /> +<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" /> +<TGConnectingPoint num="0" id="1391" /> +<TGConnectingPoint num="1" id="1392" /> +<TGConnectingPoint num="2" id="1393" /> +<TGConnectingPoint num="3" id="1394" /> +<TGConnectingPoint num="4" id="1395" /> +<TGConnectingPoint num="5" id="1396" /> +<TGConnectingPoint num="6" id="1397" /> +<TGConnectingPoint num="7" id="1398" /> +<TGConnectingPoint num="8" id="1399" /> +<TGConnectingPoint num="9" id="1400" /> <accessibility /> </SUBCOMPONENT> -<SUBCOMPONENT type="5106" id="1342" > -<father id="1407" num="1" /> -<cdparam x="189" y="435" /> -<sizeparam width="132" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="5104" id="1412" > +<father id="1507" num="1" /> +<cdparam x="63" y="529" /> +<sizeparam width="127" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="445" minY="0" maxY="314" /> -<infoparam name="state0" value="WaitingForSelection" /> -<TGConnectingPoint num="0" id="1302" /> -<TGConnectingPoint num="1" id="1303" /> -<TGConnectingPoint num="2" id="1304" /> -<TGConnectingPoint num="3" id="1305" /> -<TGConnectingPoint num="4" id="1306" /> -<TGConnectingPoint num="5" id="1307" /> -<TGConnectingPoint num="6" id="1308" /> -<TGConnectingPoint num="7" id="1309" /> -<TGConnectingPoint num="8" id="1310" /> -<TGConnectingPoint num="9" id="1311" /> -<TGConnectingPoint num="10" id="1312" /> -<TGConnectingPoint num="11" id="1313" /> -<TGConnectingPoint num="12" id="1314" /> -<TGConnectingPoint num="13" id="1315" /> -<TGConnectingPoint num="14" id="1316" /> -<TGConnectingPoint num="15" id="1317" /> -<TGConnectingPoint num="16" id="1318" /> -<TGConnectingPoint num="17" id="1319" /> -<TGConnectingPoint num="18" id="1320" /> -<TGConnectingPoint num="19" id="1321" /> -<TGConnectingPoint num="20" id="1322" /> -<TGConnectingPoint num="21" id="1323" /> -<TGConnectingPoint num="22" id="1324" /> -<TGConnectingPoint num="23" id="1325" /> -<TGConnectingPoint num="24" id="1326" /> -<TGConnectingPoint num="25" id="1327" /> -<TGConnectingPoint num="26" id="1328" /> -<TGConnectingPoint num="27" id="1329" /> -<TGConnectingPoint num="28" id="1330" /> -<TGConnectingPoint num="29" id="1331" /> -<TGConnectingPoint num="30" id="1332" /> -<TGConnectingPoint num="31" id="1333" /> -<TGConnectingPoint num="32" id="1334" /> -<TGConnectingPoint num="33" id="1335" /> -<TGConnectingPoint num="34" id="1336" /> -<TGConnectingPoint num="35" id="1337" /> -<TGConnectingPoint num="36" id="1338" /> -<TGConnectingPoint num="37" id="1339" /> -<TGConnectingPoint num="38" id="1340" /> -<TGConnectingPoint num="39" id="1341" /> -<extraparam> -</extraparam> +<cdrectangleparam minX="0" maxX="450" minY="0" maxY="334" /> +<infoparam name="Send signal" value="pushCoffeeButton()" /> +<TGConnectingPoint num="0" id="1402" /> +<TGConnectingPoint num="1" id="1403" /> +<TGConnectingPoint num="2" id="1404" /> +<TGConnectingPoint num="3" id="1405" /> +<TGConnectingPoint num="4" id="1406" /> +<TGConnectingPoint num="5" id="1407" /> +<TGConnectingPoint num="6" id="1408" /> +<TGConnectingPoint num="7" id="1409" /> +<TGConnectingPoint num="8" id="1410" /> +<TGConnectingPoint num="9" id="1411" /> +<accessibility /> </SUBCOMPONENT> -<SUBCOMPONENT type="5100" id="1344" > -<father id="1407" num="2" /> -<cdparam x="249" y="399" /> +<SUBCOMPONENT type="5100" id="1414" > +<father id="1507" num="2" /> +<cdparam x="254" y="401" /> <sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="0" maxX="562" minY="0" maxY="339" /> <infoparam name="start state" value="null" /> -<TGConnectingPoint num="0" id="1343" /> +<TGConnectingPoint num="0" id="1413" /> </SUBCOMPONENT> -<SUBCOMPONENT type="5104" id="1355" > -<father id="1407" num="3" /> -<cdparam x="58" y="527" /> -<sizeparam width="127" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="5106" id="1455" > +<father id="1507" num="3" /> +<cdparam x="194" y="437" /> +<sizeparam width="132" height="40" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="450" minY="0" maxY="334" /> -<infoparam name="Send signal" value="pushCoffeeButton()" /> -<TGConnectingPoint num="0" id="1345" /> -<TGConnectingPoint num="1" id="1346" /> -<TGConnectingPoint num="2" id="1347" /> -<TGConnectingPoint num="3" id="1348" /> -<TGConnectingPoint num="4" id="1349" /> -<TGConnectingPoint num="5" id="1350" /> -<TGConnectingPoint num="6" id="1351" /> -<TGConnectingPoint num="7" id="1352" /> -<TGConnectingPoint num="8" id="1353" /> -<TGConnectingPoint num="9" id="1354" /> -<accessibility /> +<cdrectangleparam minX="0" maxX="445" minY="0" maxY="314" /> +<infoparam name="state0" value="WaitingForSelection" /> +<TGConnectingPoint num="0" id="1415" /> +<TGConnectingPoint num="1" id="1416" /> +<TGConnectingPoint num="2" id="1417" /> +<TGConnectingPoint num="3" id="1418" /> +<TGConnectingPoint num="4" id="1419" /> +<TGConnectingPoint num="5" id="1420" /> +<TGConnectingPoint num="6" id="1421" /> +<TGConnectingPoint num="7" id="1422" /> +<TGConnectingPoint num="8" id="1423" /> +<TGConnectingPoint num="9" id="1424" /> +<TGConnectingPoint num="10" id="1425" /> +<TGConnectingPoint num="11" id="1426" /> +<TGConnectingPoint num="12" id="1427" /> +<TGConnectingPoint num="13" id="1428" /> +<TGConnectingPoint num="14" id="1429" /> +<TGConnectingPoint num="15" id="1430" /> +<TGConnectingPoint num="16" id="1431" /> +<TGConnectingPoint num="17" id="1432" /> +<TGConnectingPoint num="18" id="1433" /> +<TGConnectingPoint num="19" id="1434" /> +<TGConnectingPoint num="20" id="1435" /> +<TGConnectingPoint num="21" id="1436" /> +<TGConnectingPoint num="22" id="1437" /> +<TGConnectingPoint num="23" id="1438" /> +<TGConnectingPoint num="24" id="1439" /> +<TGConnectingPoint num="25" id="1440" /> +<TGConnectingPoint num="26" id="1441" /> +<TGConnectingPoint num="27" id="1442" /> +<TGConnectingPoint num="28" id="1443" /> +<TGConnectingPoint num="29" id="1444" /> +<TGConnectingPoint num="30" id="1445" /> +<TGConnectingPoint num="31" id="1446" /> +<TGConnectingPoint num="32" id="1447" /> +<TGConnectingPoint num="33" id="1448" /> +<TGConnectingPoint num="34" id="1449" /> +<TGConnectingPoint num="35" id="1450" /> +<TGConnectingPoint num="36" id="1451" /> +<TGConnectingPoint num="37" id="1452" /> +<TGConnectingPoint num="38" id="1453" /> +<TGConnectingPoint num="39" id="1454" /> +<latencyCheck /> +<extraparam> +</extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="5103" id="1366" > -<father id="1407" num="4" /> -<cdparam x="372" y="500" /> -<sizeparam width="130" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="5104" id="1466" > +<father id="1507" num="4" /> +<cdparam x="242" y="529" /> +<sizeparam width="112" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="447" minY="0" maxY="334" /> -<infoparam name="Send signal" value="ejectCoin(nbOfCoins)" /> -<TGConnectingPoint num="0" id="1356" /> -<TGConnectingPoint num="1" id="1357" /> -<TGConnectingPoint num="2" id="1358" /> -<TGConnectingPoint num="3" id="1359" /> -<TGConnectingPoint num="4" id="1360" /> -<TGConnectingPoint num="5" id="1361" /> -<TGConnectingPoint num="6" id="1362" /> -<TGConnectingPoint num="7" id="1363" /> -<TGConnectingPoint num="8" id="1364" /> -<TGConnectingPoint num="9" id="1365" /> +<cdrectangleparam minX="0" maxX="465" minY="0" maxY="334" /> +<infoparam name="Send signal" value="pushTeaButton()" /> +<TGConnectingPoint num="0" id="1456" /> +<TGConnectingPoint num="1" id="1457" /> +<TGConnectingPoint num="2" id="1458" /> +<TGConnectingPoint num="3" id="1459" /> +<TGConnectingPoint num="4" id="1460" /> +<TGConnectingPoint num="5" id="1461" /> +<TGConnectingPoint num="6" id="1462" /> +<TGConnectingPoint num="7" id="1463" /> +<TGConnectingPoint num="8" id="1464" /> +<TGConnectingPoint num="9" id="1465" /> <accessibility /> </SUBCOMPONENT> </AVATARStateMachineDiagramPanel> -<AVATARStateMachineDiagramPanel name="TeaButton" minX="10" maxX="1400" minY="10" maxY="900" > -<CONNECTOR type="5102" id="1414" > -<cdparam x="363" y="193" /> +<AVATARStateMachineDiagramPanel name="CoffeeButton" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="1514" > +<cdparam x="177" y="199" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<infoparam name="connector from Send signal to state0" value="null" /> -<TGConnectingPoint num="0" id="1413" /> -<P1 x="363" y="204" id="1430" /> -<P2 x="362" y="257" id="1441" /> +<infoparam name="connector from start state to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1513" /> +<P1 x="340" y="233" id="1620" /> +<P2 x="353" y="252" id="1622" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1412" > -<father id="1414" num="0" /> -<cdparam x="380" y="228" /> -<sizeparam width="135" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1512" > +<father id="1514" num="0" /> +<cdparam x="177" y="239" /> +<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1408" /> -<TGConnectingPoint num="1" id="1409" /> -<TGConnectingPoint num="2" id="1410" /> -<TGConnectingPoint num="3" id="1411" /> +<TGConnectingPoint num="0" id="1508" /> +<TGConnectingPoint num="1" id="1509" /> +<TGConnectingPoint num="2" id="1510" /> +<TGConnectingPoint num="3" id="1511" /> <extraparam> <guard value="[ ]" /> -<afterMin value="mechanicalDelay" /> +<afterMin value="" /> <afterMax value="" /> <computeMin value="" /> <computeMax value="" /> @@ -2731,25 +2989,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1421" > -<cdparam x="363" y="150" /> +<CONNECTOR type="5102" id="1521" > +<cdparam x="322" y="69" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="1420" /> -<P1 x="363" y="150" id="1487" /> -<P2 x="363" y="174" id="1429" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="1520" /> +<P1 x="322" y="69" id="1618" /> +<P2 x="323" y="88" id="1578" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1419" > -<father id="1421" num="0" /> -<cdparam x="363" y="190" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1519" > +<father id="1521" num="0" /> +<cdparam x="322" y="109" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1415" /> -<TGConnectingPoint num="1" id="1416" /> -<TGConnectingPoint num="2" id="1417" /> -<TGConnectingPoint num="3" id="1418" /> +<TGConnectingPoint num="0" id="1515" /> +<TGConnectingPoint num="1" id="1516" /> +<TGConnectingPoint num="2" id="1517" /> +<TGConnectingPoint num="3" id="1518" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -2760,25 +3018,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1428" > -<cdparam x="362" y="101" /> +<CONNECTOR type="5102" id="1528" > +<cdparam x="377" y="144" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<infoparam name="connector from start state to state0" value="null" /> -<TGConnectingPoint num="0" id="1427" /> -<P1 x="362" y="101" id="1522" /> -<P2 x="363" y="120" id="1482" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1527" /> +<P1 x="323" y="118" id="1583" /> +<P2 x="356" y="174" id="1634" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1426" > -<father id="1428" num="0" /> -<cdparam x="362" y="141" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1526" > +<father id="1528" num="0" /> +<cdparam x="377" y="184" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1422" /> -<TGConnectingPoint num="1" id="1423" /> -<TGConnectingPoint num="2" id="1424" /> -<TGConnectingPoint num="3" id="1425" /> +<TGConnectingPoint num="0" id="1522" /> +<TGConnectingPoint num="1" id="1523" /> +<TGConnectingPoint num="2" id="1524" /> +<TGConnectingPoint num="3" id="1525" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -2789,159 +3047,247 @@ </extraparam> </SUBCOMPONENT> -<COMPONENT type="5103" id="1439" > -<cdparam x="340" y="179" /> -<sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<CONNECTOR type="5102" id="1535" > +<cdparam x="377" y="187" /> +<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1534" /> +<P1 x="353" y="282" id="1623" /> +<P2 x="399" y="352" id="1537" /> +<AutomaticDrawing data="true" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1533" > +<father id="1535" num="0" /> +<cdparam x="417" y="335" /> +<sizeparam width="135" 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="Send signal" value="push()" /> -<TGConnectingPoint num="0" id="1429" /> -<TGConnectingPoint num="1" id="1430" /> -<TGConnectingPoint num="2" id="1431" /> -<TGConnectingPoint num="3" id="1432" /> -<TGConnectingPoint num="4" id="1433" /> -<TGConnectingPoint num="5" id="1434" /> -<TGConnectingPoint num="6" id="1435" /> -<TGConnectingPoint num="7" id="1436" /> -<TGConnectingPoint num="8" id="1437" /> -<TGConnectingPoint num="9" id="1438" /> -</COMPONENT> +<infoparam name="List of all parameters of an Avatar SMD transition" value="" /> +<TGConnectingPoint num="0" id="1529" /> +<TGConnectingPoint num="1" id="1530" /> +<TGConnectingPoint num="2" id="1531" /> +<TGConnectingPoint num="3" id="1532" /> +<extraparam> +<guard value="[ ]" /> +<afterMin value="mechanicalDelay" /> +<afterMax value="" /> +<computeMin value="" /> +<computeMax value="" /> +<probability value="" /> +</extraparam> +</SUBCOMPONENT> -<COMPONENT type="5106" id="1480" > -<cdparam x="337" y="257" /> +<COMPONENT type="5106" id="1576" > +<cdparam x="374" y="352" /> <sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="state0" value="main" /> -<TGConnectingPoint num="0" id="1440" /> -<TGConnectingPoint num="1" id="1441" /> -<TGConnectingPoint num="2" id="1442" /> -<TGConnectingPoint num="3" id="1443" /> -<TGConnectingPoint num="4" id="1444" /> -<TGConnectingPoint num="5" id="1445" /> -<TGConnectingPoint num="6" id="1446" /> -<TGConnectingPoint num="7" id="1447" /> -<TGConnectingPoint num="8" id="1448" /> -<TGConnectingPoint num="9" id="1449" /> -<TGConnectingPoint num="10" id="1450" /> -<TGConnectingPoint num="11" id="1451" /> -<TGConnectingPoint num="12" id="1452" /> -<TGConnectingPoint num="13" id="1453" /> -<TGConnectingPoint num="14" id="1454" /> -<TGConnectingPoint num="15" id="1455" /> -<TGConnectingPoint num="16" id="1456" /> -<TGConnectingPoint num="17" id="1457" /> -<TGConnectingPoint num="18" id="1458" /> -<TGConnectingPoint num="19" id="1459" /> -<TGConnectingPoint num="20" id="1460" /> -<TGConnectingPoint num="21" id="1461" /> -<TGConnectingPoint num="22" id="1462" /> -<TGConnectingPoint num="23" id="1463" /> -<TGConnectingPoint num="24" id="1464" /> -<TGConnectingPoint num="25" id="1465" /> -<TGConnectingPoint num="26" id="1466" /> -<TGConnectingPoint num="27" id="1467" /> -<TGConnectingPoint num="28" id="1468" /> -<TGConnectingPoint num="29" id="1469" /> -<TGConnectingPoint num="30" id="1470" /> -<TGConnectingPoint num="31" id="1471" /> -<TGConnectingPoint num="32" id="1472" /> -<TGConnectingPoint num="33" id="1473" /> -<TGConnectingPoint num="34" id="1474" /> -<TGConnectingPoint num="35" id="1475" /> -<TGConnectingPoint num="36" id="1476" /> -<TGConnectingPoint num="37" id="1477" /> -<TGConnectingPoint num="38" id="1478" /> -<TGConnectingPoint num="39" id="1479" /> +<TGConnectingPoint num="0" id="1536" /> +<TGConnectingPoint num="1" id="1537" /> +<TGConnectingPoint num="2" id="1538" /> +<TGConnectingPoint num="3" id="1539" /> +<TGConnectingPoint num="4" id="1540" /> +<TGConnectingPoint num="5" id="1541" /> +<TGConnectingPoint num="6" id="1542" /> +<TGConnectingPoint num="7" id="1543" /> +<TGConnectingPoint num="8" id="1544" /> +<TGConnectingPoint num="9" id="1545" /> +<TGConnectingPoint num="10" id="1546" /> +<TGConnectingPoint num="11" id="1547" /> +<TGConnectingPoint num="12" id="1548" /> +<TGConnectingPoint num="13" id="1549" /> +<TGConnectingPoint num="14" id="1550" /> +<TGConnectingPoint num="15" id="1551" /> +<TGConnectingPoint num="16" id="1552" /> +<TGConnectingPoint num="17" id="1553" /> +<TGConnectingPoint num="18" id="1554" /> +<TGConnectingPoint num="19" id="1555" /> +<TGConnectingPoint num="20" id="1556" /> +<TGConnectingPoint num="21" id="1557" /> +<TGConnectingPoint num="22" id="1558" /> +<TGConnectingPoint num="23" id="1559" /> +<TGConnectingPoint num="24" id="1560" /> +<TGConnectingPoint num="25" id="1561" /> +<TGConnectingPoint num="26" id="1562" /> +<TGConnectingPoint num="27" id="1563" /> +<TGConnectingPoint num="28" id="1564" /> +<TGConnectingPoint num="29" id="1565" /> +<TGConnectingPoint num="30" id="1566" /> +<TGConnectingPoint num="31" id="1567" /> +<TGConnectingPoint num="32" id="1568" /> +<TGConnectingPoint num="33" id="1569" /> +<TGConnectingPoint num="34" id="1570" /> +<TGConnectingPoint num="35" id="1571" /> +<TGConnectingPoint num="36" id="1572" /> +<TGConnectingPoint num="37" id="1573" /> +<TGConnectingPoint num="38" id="1574" /> +<TGConnectingPoint num="39" id="1575" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5106" id="1521" > -<cdparam x="338" y="120" /> +<COMPONENT type="5106" id="1617" > +<cdparam x="298" y="88" /> <sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="state0" value="main" /> -<TGConnectingPoint num="0" id="1481" /> -<TGConnectingPoint num="1" id="1482" /> -<TGConnectingPoint num="2" id="1483" /> -<TGConnectingPoint num="3" id="1484" /> -<TGConnectingPoint num="4" id="1485" /> -<TGConnectingPoint num="5" id="1486" /> -<TGConnectingPoint num="6" id="1487" /> -<TGConnectingPoint num="7" id="1488" /> -<TGConnectingPoint num="8" id="1489" /> -<TGConnectingPoint num="9" id="1490" /> -<TGConnectingPoint num="10" id="1491" /> -<TGConnectingPoint num="11" id="1492" /> -<TGConnectingPoint num="12" id="1493" /> -<TGConnectingPoint num="13" id="1494" /> -<TGConnectingPoint num="14" id="1495" /> -<TGConnectingPoint num="15" id="1496" /> -<TGConnectingPoint num="16" id="1497" /> -<TGConnectingPoint num="17" id="1498" /> -<TGConnectingPoint num="18" id="1499" /> -<TGConnectingPoint num="19" id="1500" /> -<TGConnectingPoint num="20" id="1501" /> -<TGConnectingPoint num="21" id="1502" /> -<TGConnectingPoint num="22" id="1503" /> -<TGConnectingPoint num="23" id="1504" /> -<TGConnectingPoint num="24" id="1505" /> -<TGConnectingPoint num="25" id="1506" /> -<TGConnectingPoint num="26" id="1507" /> -<TGConnectingPoint num="27" id="1508" /> -<TGConnectingPoint num="28" id="1509" /> -<TGConnectingPoint num="29" id="1510" /> -<TGConnectingPoint num="30" id="1511" /> -<TGConnectingPoint num="31" id="1512" /> -<TGConnectingPoint num="32" id="1513" /> -<TGConnectingPoint num="33" id="1514" /> -<TGConnectingPoint num="34" id="1515" /> -<TGConnectingPoint num="35" id="1516" /> -<TGConnectingPoint num="36" id="1517" /> -<TGConnectingPoint num="37" id="1518" /> -<TGConnectingPoint num="38" id="1519" /> -<TGConnectingPoint num="39" id="1520" /> +<TGConnectingPoint num="0" id="1577" /> +<TGConnectingPoint num="1" id="1578" /> +<TGConnectingPoint num="2" id="1579" /> +<TGConnectingPoint num="3" id="1580" /> +<TGConnectingPoint num="4" id="1581" /> +<TGConnectingPoint num="5" id="1582" /> +<TGConnectingPoint num="6" id="1583" /> +<TGConnectingPoint num="7" id="1584" /> +<TGConnectingPoint num="8" id="1585" /> +<TGConnectingPoint num="9" id="1586" /> +<TGConnectingPoint num="10" id="1587" /> +<TGConnectingPoint num="11" id="1588" /> +<TGConnectingPoint num="12" id="1589" /> +<TGConnectingPoint num="13" id="1590" /> +<TGConnectingPoint num="14" id="1591" /> +<TGConnectingPoint num="15" id="1592" /> +<TGConnectingPoint num="16" id="1593" /> +<TGConnectingPoint num="17" id="1594" /> +<TGConnectingPoint num="18" id="1595" /> +<TGConnectingPoint num="19" id="1596" /> +<TGConnectingPoint num="20" id="1597" /> +<TGConnectingPoint num="21" id="1598" /> +<TGConnectingPoint num="22" id="1599" /> +<TGConnectingPoint num="23" id="1600" /> +<TGConnectingPoint num="24" id="1601" /> +<TGConnectingPoint num="25" id="1602" /> +<TGConnectingPoint num="26" id="1603" /> +<TGConnectingPoint num="27" id="1604" /> +<TGConnectingPoint num="28" id="1605" /> +<TGConnectingPoint num="29" id="1606" /> +<TGConnectingPoint num="30" id="1607" /> +<TGConnectingPoint num="31" id="1608" /> +<TGConnectingPoint num="32" id="1609" /> +<TGConnectingPoint num="33" id="1610" /> +<TGConnectingPoint num="34" id="1611" /> +<TGConnectingPoint num="35" id="1612" /> +<TGConnectingPoint num="36" id="1613" /> +<TGConnectingPoint num="37" id="1614" /> +<TGConnectingPoint num="38" id="1615" /> +<TGConnectingPoint num="39" id="1616" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5100" id="1523" > -<cdparam x="355" y="81" /> +<COMPONENT type="5100" id="1619" > +<cdparam x="315" y="49" /> <sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="start state" value="null" /> -<TGConnectingPoint num="0" id="1522" /> +<TGConnectingPoint num="0" id="1618" /> +</COMPONENT> + +<COMPONENT type="5106" id="1673" > +<cdparam x="264" y="174" /> +<sizeparam width="184" height="130" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> +<infoparam name="state0" value="state0" /> +<TGConnectingPoint num="0" id="1633" /> +<TGConnectingPoint num="1" id="1634" /> +<TGConnectingPoint num="2" id="1635" /> +<TGConnectingPoint num="3" id="1636" /> +<TGConnectingPoint num="4" id="1637" /> +<TGConnectingPoint num="5" id="1638" /> +<TGConnectingPoint num="6" id="1639" /> +<TGConnectingPoint num="7" id="1640" /> +<TGConnectingPoint num="8" id="1641" /> +<TGConnectingPoint num="9" id="1642" /> +<TGConnectingPoint num="10" id="1643" /> +<TGConnectingPoint num="11" id="1644" /> +<TGConnectingPoint num="12" id="1645" /> +<TGConnectingPoint num="13" id="1646" /> +<TGConnectingPoint num="14" id="1647" /> +<TGConnectingPoint num="15" id="1648" /> +<TGConnectingPoint num="16" id="1649" /> +<TGConnectingPoint num="17" id="1650" /> +<TGConnectingPoint num="18" id="1651" /> +<TGConnectingPoint num="19" id="1652" /> +<TGConnectingPoint num="20" id="1653" /> +<TGConnectingPoint num="21" id="1654" /> +<TGConnectingPoint num="22" id="1655" /> +<TGConnectingPoint num="23" id="1656" /> +<TGConnectingPoint num="24" id="1657" /> +<TGConnectingPoint num="25" id="1658" /> +<TGConnectingPoint num="26" id="1659" /> +<TGConnectingPoint num="27" id="1660" /> +<TGConnectingPoint num="28" id="1661" /> +<TGConnectingPoint num="29" id="1662" /> +<TGConnectingPoint num="30" id="1663" /> +<TGConnectingPoint num="31" id="1664" /> +<TGConnectingPoint num="32" id="1665" /> +<TGConnectingPoint num="33" id="1666" /> +<TGConnectingPoint num="34" id="1667" /> +<TGConnectingPoint num="35" id="1668" /> +<TGConnectingPoint num="36" id="1669" /> +<TGConnectingPoint num="37" id="1670" /> +<TGConnectingPoint num="38" id="1671" /> +<TGConnectingPoint num="39" id="1672" /> +<extraparam> +</extraparam> </COMPONENT> +<SUBCOMPONENT type="5100" id="1621" > +<father id="1673" num="0" /> +<cdparam x="333" y="213" /> +<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="169" minY="0" maxY="115" /> +<infoparam name="start state" value="null" /> +<TGConnectingPoint num="0" id="1620" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="5103" id="1632" > +<father id="1673" num="1" /> +<cdparam x="330" y="257" /> +<sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="138" minY="0" maxY="110" /> +<infoparam name="Send signal" value="push()" /> +<TGConnectingPoint num="0" id="1622" /> +<TGConnectingPoint num="1" id="1623" /> +<TGConnectingPoint num="2" id="1624" /> +<TGConnectingPoint num="3" id="1625" /> +<TGConnectingPoint num="4" id="1626" /> +<TGConnectingPoint num="5" id="1627" /> +<TGConnectingPoint num="6" id="1628" /> +<TGConnectingPoint num="7" id="1629" /> +<TGConnectingPoint num="8" id="1630" /> +<TGConnectingPoint num="9" id="1631" /> +</SUBCOMPONENT> </AVATARStateMachineDiagramPanel> -<AVATARStateMachineDiagramPanel name="CoffeeButton" minX="10" maxX="1400" minY="10" maxY="900" > -<CONNECTOR type="5102" id="1530" > -<cdparam x="177" y="199" /> +<AVATARStateMachineDiagramPanel name="TeaButton" minX="10" maxX="1400" minY="10" maxY="900" > +<CONNECTOR type="5102" id="1680" > +<cdparam x="363" y="193" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<infoparam name="connector from start state to Send signal" value="null" /> -<TGConnectingPoint num="0" id="1529" /> -<P1 x="340" y="233" id="1647" /> -<P2 x="353" y="252" id="1636" /> +<infoparam name="connector from Send signal to state0" value="null" /> +<TGConnectingPoint num="0" id="1679" /> +<P1 x="363" y="204" id="1696" /> +<P2 x="362" y="257" id="1707" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1528" > -<father id="1530" num="0" /> -<cdparam x="177" y="239" /> -<sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1678" > +<father id="1680" num="0" /> +<cdparam x="380" y="228" /> +<sizeparam width="135" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1524" /> -<TGConnectingPoint num="1" id="1525" /> -<TGConnectingPoint num="2" id="1526" /> -<TGConnectingPoint num="3" id="1527" /> +<TGConnectingPoint num="0" id="1674" /> +<TGConnectingPoint num="1" id="1675" /> +<TGConnectingPoint num="2" id="1676" /> +<TGConnectingPoint num="3" id="1677" /> <extraparam> <guard value="[ ]" /> -<afterMin value="" /> +<afterMin value="mechanicalDelay" /> <afterMax value="" /> <computeMin value="" /> <computeMax value="" /> @@ -2949,25 +3295,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1537" > -<cdparam x="322" y="69" /> +<CONNECTOR type="5102" id="1687" > +<cdparam x="363" y="150" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<infoparam name="connector from start state to state0" value="null" /> -<TGConnectingPoint num="0" id="1536" /> -<P1 x="322" y="69" id="1634" /> -<P2 x="323" y="88" id="1594" /> +<infoparam name="connector from state0 to Send signal" value="null" /> +<TGConnectingPoint num="0" id="1686" /> +<P1 x="363" y="150" id="1753" /> +<P2 x="363" y="174" id="1695" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1535" > -<father id="1537" num="0" /> -<cdparam x="322" y="109" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1685" > +<father id="1687" num="0" /> +<cdparam x="363" y="190" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1531" /> -<TGConnectingPoint num="1" id="1532" /> -<TGConnectingPoint num="2" id="1533" /> -<TGConnectingPoint num="3" id="1534" /> +<TGConnectingPoint num="0" id="1681" /> +<TGConnectingPoint num="1" id="1682" /> +<TGConnectingPoint num="2" id="1683" /> +<TGConnectingPoint num="3" id="1684" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -2978,25 +3324,25 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1544" > -<cdparam x="377" y="144" /> +<CONNECTOR type="5102" id="1694" > +<cdparam x="362" y="101" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<infoparam name="connector from state0 to Send signal" value="null" /> -<TGConnectingPoint num="0" id="1543" /> -<P1 x="323" y="118" id="1599" /> -<P2 x="356" y="174" id="1650" /> +<infoparam name="connector from start state to state0" value="null" /> +<TGConnectingPoint num="0" id="1693" /> +<P1 x="362" y="101" id="1788" /> +<P2 x="363" y="120" id="1748" /> <AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1542" > -<father id="1544" num="0" /> -<cdparam x="377" y="184" /> +</CONNECTOR><SUBCOMPONENT type="-1" id="1692" > +<father id="1694" num="0" /> +<cdparam x="362" y="141" /> <sizeparam width="10" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1538" /> -<TGConnectingPoint num="1" id="1539" /> -<TGConnectingPoint num="2" id="1540" /> -<TGConnectingPoint num="3" id="1541" /> +<TGConnectingPoint num="0" id="1688" /> +<TGConnectingPoint num="1" id="1689" /> +<TGConnectingPoint num="2" id="1690" /> +<TGConnectingPoint num="3" id="1691" /> <extraparam> <guard value="[ ]" /> <afterMin value="" /> @@ -3007,220 +3353,132 @@ </extraparam> </SUBCOMPONENT> -<CONNECTOR type="5102" id="1551" > -<cdparam x="377" y="187" /> -<sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<infoparam name="connector from Send signal to state0" value="null" /> -<TGConnectingPoint num="0" id="1550" /> -<P1 x="353" y="282" id="1637" /> -<P2 x="399" y="352" id="1553" /> -<AutomaticDrawing data="true" /> -</CONNECTOR><SUBCOMPONENT type="-1" id="1549" > -<father id="1551" num="0" /> -<cdparam x="417" y="335" /> -<sizeparam width="135" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<COMPONENT type="5103" id="1705" > +<cdparam x="340" y="179" /> +<sizeparam width="46" 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="List of all parameters of an Avatar SMD transition" value="" /> -<TGConnectingPoint num="0" id="1545" /> -<TGConnectingPoint num="1" id="1546" /> -<TGConnectingPoint num="2" id="1547" /> -<TGConnectingPoint num="3" id="1548" /> -<extraparam> -<guard value="[ ]" /> -<afterMin value="mechanicalDelay" /> -<afterMax value="" /> -<computeMin value="" /> -<computeMax value="" /> -<probability value="" /> -</extraparam> -</SUBCOMPONENT> +<infoparam name="Send signal" value="push()" /> +<TGConnectingPoint num="0" id="1695" /> +<TGConnectingPoint num="1" id="1696" /> +<TGConnectingPoint num="2" id="1697" /> +<TGConnectingPoint num="3" id="1698" /> +<TGConnectingPoint num="4" id="1699" /> +<TGConnectingPoint num="5" id="1700" /> +<TGConnectingPoint num="6" id="1701" /> +<TGConnectingPoint num="7" id="1702" /> +<TGConnectingPoint num="8" id="1703" /> +<TGConnectingPoint num="9" id="1704" /> +</COMPONENT> -<COMPONENT type="5106" id="1592" > -<cdparam x="374" y="352" /> +<COMPONENT type="5106" id="1746" > +<cdparam x="337" y="257" /> <sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="state0" value="main" /> -<TGConnectingPoint num="0" id="1552" /> -<TGConnectingPoint num="1" id="1553" /> -<TGConnectingPoint num="2" id="1554" /> -<TGConnectingPoint num="3" id="1555" /> -<TGConnectingPoint num="4" id="1556" /> -<TGConnectingPoint num="5" id="1557" /> -<TGConnectingPoint num="6" id="1558" /> -<TGConnectingPoint num="7" id="1559" /> -<TGConnectingPoint num="8" id="1560" /> -<TGConnectingPoint num="9" id="1561" /> -<TGConnectingPoint num="10" id="1562" /> -<TGConnectingPoint num="11" id="1563" /> -<TGConnectingPoint num="12" id="1564" /> -<TGConnectingPoint num="13" id="1565" /> -<TGConnectingPoint num="14" id="1566" /> -<TGConnectingPoint num="15" id="1567" /> -<TGConnectingPoint num="16" id="1568" /> -<TGConnectingPoint num="17" id="1569" /> -<TGConnectingPoint num="18" id="1570" /> -<TGConnectingPoint num="19" id="1571" /> -<TGConnectingPoint num="20" id="1572" /> -<TGConnectingPoint num="21" id="1573" /> -<TGConnectingPoint num="22" id="1574" /> -<TGConnectingPoint num="23" id="1575" /> -<TGConnectingPoint num="24" id="1576" /> -<TGConnectingPoint num="25" id="1577" /> -<TGConnectingPoint num="26" id="1578" /> -<TGConnectingPoint num="27" id="1579" /> -<TGConnectingPoint num="28" id="1580" /> -<TGConnectingPoint num="29" id="1581" /> -<TGConnectingPoint num="30" id="1582" /> -<TGConnectingPoint num="31" id="1583" /> -<TGConnectingPoint num="32" id="1584" /> -<TGConnectingPoint num="33" id="1585" /> -<TGConnectingPoint num="34" id="1586" /> -<TGConnectingPoint num="35" id="1587" /> -<TGConnectingPoint num="36" id="1588" /> -<TGConnectingPoint num="37" id="1589" /> -<TGConnectingPoint num="38" id="1590" /> -<TGConnectingPoint num="39" id="1591" /> +<TGConnectingPoint num="0" id="1706" /> +<TGConnectingPoint num="1" id="1707" /> +<TGConnectingPoint num="2" id="1708" /> +<TGConnectingPoint num="3" id="1709" /> +<TGConnectingPoint num="4" id="1710" /> +<TGConnectingPoint num="5" id="1711" /> +<TGConnectingPoint num="6" id="1712" /> +<TGConnectingPoint num="7" id="1713" /> +<TGConnectingPoint num="8" id="1714" /> +<TGConnectingPoint num="9" id="1715" /> +<TGConnectingPoint num="10" id="1716" /> +<TGConnectingPoint num="11" id="1717" /> +<TGConnectingPoint num="12" id="1718" /> +<TGConnectingPoint num="13" id="1719" /> +<TGConnectingPoint num="14" id="1720" /> +<TGConnectingPoint num="15" id="1721" /> +<TGConnectingPoint num="16" id="1722" /> +<TGConnectingPoint num="17" id="1723" /> +<TGConnectingPoint num="18" id="1724" /> +<TGConnectingPoint num="19" id="1725" /> +<TGConnectingPoint num="20" id="1726" /> +<TGConnectingPoint num="21" id="1727" /> +<TGConnectingPoint num="22" id="1728" /> +<TGConnectingPoint num="23" id="1729" /> +<TGConnectingPoint num="24" id="1730" /> +<TGConnectingPoint num="25" id="1731" /> +<TGConnectingPoint num="26" id="1732" /> +<TGConnectingPoint num="27" id="1733" /> +<TGConnectingPoint num="28" id="1734" /> +<TGConnectingPoint num="29" id="1735" /> +<TGConnectingPoint num="30" id="1736" /> +<TGConnectingPoint num="31" id="1737" /> +<TGConnectingPoint num="32" id="1738" /> +<TGConnectingPoint num="33" id="1739" /> +<TGConnectingPoint num="34" id="1740" /> +<TGConnectingPoint num="35" id="1741" /> +<TGConnectingPoint num="36" id="1742" /> +<TGConnectingPoint num="37" id="1743" /> +<TGConnectingPoint num="38" id="1744" /> +<TGConnectingPoint num="39" id="1745" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5106" id="1633" > -<cdparam x="298" y="88" /> +<COMPONENT type="5106" id="1787" > +<cdparam x="338" y="120" /> <sizeparam width="50" height="30" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="state0" value="main" /> -<TGConnectingPoint num="0" id="1593" /> -<TGConnectingPoint num="1" id="1594" /> -<TGConnectingPoint num="2" id="1595" /> -<TGConnectingPoint num="3" id="1596" /> -<TGConnectingPoint num="4" id="1597" /> -<TGConnectingPoint num="5" id="1598" /> -<TGConnectingPoint num="6" id="1599" /> -<TGConnectingPoint num="7" id="1600" /> -<TGConnectingPoint num="8" id="1601" /> -<TGConnectingPoint num="9" id="1602" /> -<TGConnectingPoint num="10" id="1603" /> -<TGConnectingPoint num="11" id="1604" /> -<TGConnectingPoint num="12" id="1605" /> -<TGConnectingPoint num="13" id="1606" /> -<TGConnectingPoint num="14" id="1607" /> -<TGConnectingPoint num="15" id="1608" /> -<TGConnectingPoint num="16" id="1609" /> -<TGConnectingPoint num="17" id="1610" /> -<TGConnectingPoint num="18" id="1611" /> -<TGConnectingPoint num="19" id="1612" /> -<TGConnectingPoint num="20" id="1613" /> -<TGConnectingPoint num="21" id="1614" /> -<TGConnectingPoint num="22" id="1615" /> -<TGConnectingPoint num="23" id="1616" /> -<TGConnectingPoint num="24" id="1617" /> -<TGConnectingPoint num="25" id="1618" /> -<TGConnectingPoint num="26" id="1619" /> -<TGConnectingPoint num="27" id="1620" /> -<TGConnectingPoint num="28" id="1621" /> -<TGConnectingPoint num="29" id="1622" /> -<TGConnectingPoint num="30" id="1623" /> -<TGConnectingPoint num="31" id="1624" /> -<TGConnectingPoint num="32" id="1625" /> -<TGConnectingPoint num="33" id="1626" /> -<TGConnectingPoint num="34" id="1627" /> -<TGConnectingPoint num="35" id="1628" /> -<TGConnectingPoint num="36" id="1629" /> -<TGConnectingPoint num="37" id="1630" /> -<TGConnectingPoint num="38" id="1631" /> -<TGConnectingPoint num="39" id="1632" /> +<TGConnectingPoint num="0" id="1747" /> +<TGConnectingPoint num="1" id="1748" /> +<TGConnectingPoint num="2" id="1749" /> +<TGConnectingPoint num="3" id="1750" /> +<TGConnectingPoint num="4" id="1751" /> +<TGConnectingPoint num="5" id="1752" /> +<TGConnectingPoint num="6" id="1753" /> +<TGConnectingPoint num="7" id="1754" /> +<TGConnectingPoint num="8" id="1755" /> +<TGConnectingPoint num="9" id="1756" /> +<TGConnectingPoint num="10" id="1757" /> +<TGConnectingPoint num="11" id="1758" /> +<TGConnectingPoint num="12" id="1759" /> +<TGConnectingPoint num="13" id="1760" /> +<TGConnectingPoint num="14" id="1761" /> +<TGConnectingPoint num="15" id="1762" /> +<TGConnectingPoint num="16" id="1763" /> +<TGConnectingPoint num="17" id="1764" /> +<TGConnectingPoint num="18" id="1765" /> +<TGConnectingPoint num="19" id="1766" /> +<TGConnectingPoint num="20" id="1767" /> +<TGConnectingPoint num="21" id="1768" /> +<TGConnectingPoint num="22" id="1769" /> +<TGConnectingPoint num="23" id="1770" /> +<TGConnectingPoint num="24" id="1771" /> +<TGConnectingPoint num="25" id="1772" /> +<TGConnectingPoint num="26" id="1773" /> +<TGConnectingPoint num="27" id="1774" /> +<TGConnectingPoint num="28" id="1775" /> +<TGConnectingPoint num="29" id="1776" /> +<TGConnectingPoint num="30" id="1777" /> +<TGConnectingPoint num="31" id="1778" /> +<TGConnectingPoint num="32" id="1779" /> +<TGConnectingPoint num="33" id="1780" /> +<TGConnectingPoint num="34" id="1781" /> +<TGConnectingPoint num="35" id="1782" /> +<TGConnectingPoint num="36" id="1783" /> +<TGConnectingPoint num="37" id="1784" /> +<TGConnectingPoint num="38" id="1785" /> +<TGConnectingPoint num="39" id="1786" /> <extraparam> </extraparam> </COMPONENT> -<COMPONENT type="5100" id="1635" > -<cdparam x="315" y="49" /> +<COMPONENT type="5100" id="1789" > +<cdparam x="355" y="81" /> <sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> <infoparam name="start state" value="null" /> -<TGConnectingPoint num="0" id="1634" /> -</COMPONENT> - -<COMPONENT type="5106" id="1689" > -<cdparam x="264" y="174" /> -<sizeparam width="184" height="130" minWidth="40" minHeight="30" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> -<infoparam name="state0" value="state0" /> -<TGConnectingPoint num="0" id="1649" /> -<TGConnectingPoint num="1" id="1650" /> -<TGConnectingPoint num="2" id="1651" /> -<TGConnectingPoint num="3" id="1652" /> -<TGConnectingPoint num="4" id="1653" /> -<TGConnectingPoint num="5" id="1654" /> -<TGConnectingPoint num="6" id="1655" /> -<TGConnectingPoint num="7" id="1656" /> -<TGConnectingPoint num="8" id="1657" /> -<TGConnectingPoint num="9" id="1658" /> -<TGConnectingPoint num="10" id="1659" /> -<TGConnectingPoint num="11" id="1660" /> -<TGConnectingPoint num="12" id="1661" /> -<TGConnectingPoint num="13" id="1662" /> -<TGConnectingPoint num="14" id="1663" /> -<TGConnectingPoint num="15" id="1664" /> -<TGConnectingPoint num="16" id="1665" /> -<TGConnectingPoint num="17" id="1666" /> -<TGConnectingPoint num="18" id="1667" /> -<TGConnectingPoint num="19" id="1668" /> -<TGConnectingPoint num="20" id="1669" /> -<TGConnectingPoint num="21" id="1670" /> -<TGConnectingPoint num="22" id="1671" /> -<TGConnectingPoint num="23" id="1672" /> -<TGConnectingPoint num="24" id="1673" /> -<TGConnectingPoint num="25" id="1674" /> -<TGConnectingPoint num="26" id="1675" /> -<TGConnectingPoint num="27" id="1676" /> -<TGConnectingPoint num="28" id="1677" /> -<TGConnectingPoint num="29" id="1678" /> -<TGConnectingPoint num="30" id="1679" /> -<TGConnectingPoint num="31" id="1680" /> -<TGConnectingPoint num="32" id="1681" /> -<TGConnectingPoint num="33" id="1682" /> -<TGConnectingPoint num="34" id="1683" /> -<TGConnectingPoint num="35" id="1684" /> -<TGConnectingPoint num="36" id="1685" /> -<TGConnectingPoint num="37" id="1686" /> -<TGConnectingPoint num="38" id="1687" /> -<TGConnectingPoint num="39" id="1688" /> -<extraparam> -</extraparam> +<TGConnectingPoint num="0" id="1788" /> </COMPONENT> -<SUBCOMPONENT type="5103" id="1646" > -<father id="1689" num="0" /> -<cdparam x="330" y="257" /> -<sizeparam width="46" height="20" minWidth="30" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="0" maxX="138" minY="0" maxY="110" /> -<infoparam name="Send signal" value="push()" /> -<TGConnectingPoint num="0" id="1636" /> -<TGConnectingPoint num="1" id="1637" /> -<TGConnectingPoint num="2" id="1638" /> -<TGConnectingPoint num="3" id="1639" /> -<TGConnectingPoint num="4" id="1640" /> -<TGConnectingPoint num="5" id="1641" /> -<TGConnectingPoint num="6" id="1642" /> -<TGConnectingPoint num="7" id="1643" /> -<TGConnectingPoint num="8" id="1644" /> -<TGConnectingPoint num="9" id="1645" /> -</SUBCOMPONENT> -<SUBCOMPONENT type="5100" id="1648" > -<father id="1689" num="1" /> -<cdparam x="333" y="213" /> -<sizeparam width="15" height="15" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="0" maxX="169" minY="0" maxY="115" /> -<infoparam name="start state" value="null" /> -<TGConnectingPoint num="0" id="1647" /> -</SUBCOMPONENT> </AVATARStateMachineDiagramPanel> diff --git a/src/main/java/tmltranslator/toavatar/TML2Avatar.java b/src/main/java/tmltranslator/toavatar/TML2Avatar.java index 8ef89d096b5ac82891979a58d7062d503ed7cf05..f342c93fd4f84213235d14e60a612dd3ae793395 100644 --- a/src/main/java/tmltranslator/toavatar/TML2Avatar.java +++ b/src/main/java/tmltranslator/toavatar/TML2Avatar.java @@ -1217,10 +1217,15 @@ public class TML2Avatar { AvatarAttribute data = new AvatarAttribute("encryptedKey_" + ae.securityPattern.key, AvatarType.INTEGER, block, null); block.addAttribute(data); } else { - //send encrypted data - as.addValue(ae.securityPattern.name + "_encrypted"); - AvatarAttribute data = new AvatarAttribute(ae.securityPattern.name + "_encrypted", AvatarType.INTEGER, block, null); - block.addAttribute(data); + //send encrypted data or unecrypted security pattern + // + //if (){ + // } + // else { + as.addValue(ae.securityPattern.name + "_encrypted"); + AvatarAttribute data = new AvatarAttribute(ae.securityPattern.name + "_encrypted", AvatarType.INTEGER, block, null); + block.addAttribute(data); + if (!secChannelMap.containsKey(ae.securityPattern.name)) { List<String> tmp = new ArrayList<String>(); secChannelMap.put(ae.securityPattern.name, tmp); diff --git a/src/main/java/ui/GTURTLEModeling.java b/src/main/java/ui/GTURTLEModeling.java index ab5e6876c00f07443dde949a70121b146a86410e..15b0005f754a2640b97e6cbe03e4ed3dfd541ed4 100644 --- a/src/main/java/ui/GTURTLEModeling.java +++ b/src/main/java/ui/GTURTLEModeling.java @@ -1263,7 +1263,8 @@ public class GTURTLEModeling { memNode.tdp.addComponent(key, memNode.x, memNode.y, true, true); memNode.tdp.repaint(); } else { - + // + mgui.issueError("Cannot map key in memory for " + sp.name + " on task " + t.getName(), "Key Mapping Error"); UICheckingError ce = new UICheckingError(CheckingError.STRUCTURE_ERROR, "Cannot map key in memory for " + sp.name + " on task " + t.getName()); ce.setTDiagramPanel(tmap.getCorrespondanceList().getTG(tmap.getArch().getFirstCPU()).getTDiagramPanel()); ce.setTGComponent(null); diff --git a/src/main/java/ui/MainGUI.java b/src/main/java/ui/MainGUI.java index a1fb69e29a4f3d86cea855c5d0f2ecde2ee905a0..27d46011e05fe42deaf9c6cb05a40f9463721a60 100644 --- a/src/main/java/ui/MainGUI.java +++ b/src/main/java/ui/MainGUI.java @@ -3544,6 +3544,13 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per return false; } + public void issueError(String error, String title){ + JOptionPane.showMessageDialog(frame, + error, + title, + JOptionPane.INFORMATION_MESSAGE); + } + public boolean checkModelingSyntax(TURTLEPanel tp, boolean automatic) { //String msg = ""; boolean b = false; diff --git a/src/main/java/ui/SecurityGeneration.java b/src/main/java/ui/SecurityGeneration.java index bab0866e1ac1567a1cade412d764f89c060914a4..5930fb6c94ef76a6e449b1548e3c4771e293a279 100644 --- a/src/main/java/ui/SecurityGeneration.java +++ b/src/main/java/ui/SecurityGeneration.java @@ -1375,6 +1375,19 @@ public class SecurityGeneration implements Runnable { TMLADStartState start = (TMLADStartState) tad.getComponentList().get(0); fromStart = new TGConnectorTMLAD(xpos, ypos, tad.getMinX(), tad.getMaxX(), tad.getMinY(), tad.getMaxY(), false, null, tad, null, null, new Vector<Point>()); + if (hsmChannelMap.get(cpuName).size() ==0){ + TMLADStopState stop = new TMLADStopState(100, 100, tad.getMinX(), tad.getMaxX(), tad.getMinY(), tad.getMaxY(), false, null, tad); + tad.addComponent(stop, 100, 100, false, true); + + + //Connect stop and start + fromStart = new TGConnectorTMLAD(xpos, ypos, tad.getMinX(), tad.getMaxX(), tad.getMinY(), tad.getMaxY(), false, null, tad, null, null, new Vector<Point>()); + fromStart.setP1(start.getTGConnectingPointAtIndex(0)); + fromStart.setP2(stop.getTGConnectingPointAtIndex(0)); + tad.addComponent(fromStart, 100, 100, false, true); + return; + } + TMLADReadRequestArg req = new TMLADReadRequestArg(300, 100, tad.getMinX(), tad.getMaxX(), tad.getMinY(), tad.getMaxY(), false, null, tad); tad.addComponent(req, 300, 100, false, true); diff --git a/src/main/java/ui/avatarrd/AvatarRDPanel.java b/src/main/java/ui/avatarrd/AvatarRDPanel.java index 24d08812b13d0e62f9df59f7f854e8d8bfd2f12c..461517ed8ecab1b98e06fde6746a513768117a94 100755 --- a/src/main/java/ui/avatarrd/AvatarRDPanel.java +++ b/src/main/java/ui/avatarrd/AvatarRDPanel.java @@ -1,26 +1,26 @@ /* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille - * + * * ludovic.apvrille AT enst.fr - * + * * This software is a computer program whose purpose is to allow the * edition of TURTLE analysis, design and deployment diagrams, to * allow the generation of RT-LOTOS or Java code from this diagram, * and at last to allow the analysis of formal validation traces * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP * from INRIA Rhone-Alpes. - * + * * This software is governed by the CeCILL license under French law and * abiding by the rules of distribution of free software. You can use, * modify and/ or redistribute the software under the terms of the CeCILL * license as circulated by CEA, CNRS and INRIA at the following URL * "http://www.cecill.info". - * + * * As a counterpart to the access to the source code and rights to copy, * modify and redistribute granted by the license, users are provided only * with a limited warranty and the software's author, the holder of the * economic rights, and the successive licensors have only limited * liability. - * + * * In this respect, the user's attention is drawn to the risks associated * with loading, using, modifying and/or developing or reproducing the * software by the user in light of its specific status of free software, @@ -31,45 +31,44 @@ * requirements in conditions enabling the security of their systems and/or * data to be ensured and, more generally, to use and operate it in the * same conditions as regards security. - * + * * The fact that you are presently reading this means that you have had * knowledge of the CeCILL license and that you accept its terms. */ - - package ui.avatarrd; //import java.awt.*; +import myutil.TraceManager; import ui.*; +import ui.req.TGConnectorVerify; -import java.util.LinkedList; -import java.util.ListIterator; -import java.util.Vector; +import java.util.*; /** * Class AvatarRDPanel * Panel for drawing Avatar requirement diagrams -* Creation: 20/04/2010 -* @version 1.0 20/04/2010 + * Creation: 20/04/2010 + * * @author Ludovic APVRILLE + * @version 1.0 20/04/2010 */ public class AvatarRDPanel extends TDiagramPanel implements TDPWithAttributes { public Vector validated, ignored; - - public AvatarRDPanel(MainGUI mgui, TToolBar _ttb) { + + public AvatarRDPanel(MainGUI mgui, TToolBar _ttb) { super(mgui, _ttb); /*TDiagramMouseManager tdmm = new TDiagramMouseManager(this); addMouseListener(tdmm); addMouseMotionListener(tdmm);*/ } - + public boolean actionOnDoubleClick(TGComponent tgc) { return true; } - + public boolean actionOnAdd(TGComponent tgc) { /*if (tgc instanceof TCDTClass) { TCDTClass tgcc = (TCDTClass)(tgc); @@ -78,7 +77,7 @@ public class AvatarRDPanel extends TDiagramPanel implements TDPWithAttributes { }*/ return false; } - + public boolean actionOnRemove(TGComponent tgc) { /*if (tgc instanceof TCDTClass) { TCDTClass tgcc = (TCDTClass)(tgc); @@ -88,41 +87,41 @@ public class AvatarRDPanel extends TDiagramPanel implements TDPWithAttributes { }*/ return false; } - + public boolean actionOnValueChanged(TGComponent tgc) { /*if (tgc instanceof TCDTClass) { return actionOnDoubleClick(tgc); }*/ return false; } - + public String getXMLHead() { return "<AvatarRDPanel name=\"" + name + "\"" + sizeParam() + zoomParam() + " >"; } - + public String getXMLTail() { return "</AvatarRDPanel>"; } - + public String getXMLSelectedHead() { return "<AvatarRDPanelCopy name=\"" + name + "\" xSel=\"" + xSel + "\" ySel=\"" + ySel + "\" widthSel=\"" + widthSel + "\" heightSel=\"" + heightSel + "\" >"; } - + public String getXMLSelectedTail() { return "</AvatarRDPanelCopy>"; } - + public String getXMLCloneHead() { return "<AvatarRDPanelCopy name=\"" + name + "\" xSel=\"" + 0 + "\" ySel=\"" + 0 + "\" widthSel=\"" + 0 + "\" heightSel=\"" + 0 + "\" >"; } - + public String getXMLCloneTail() { return "</AvatarRDPanelCopy>"; } - - + + public void makePostLoadingProcessing() throws MalformedModelingException { - + } /*public int nbOfVerifyStartingAt(TGComponent tgc) { @@ -144,23 +143,23 @@ public class AvatarRDPanel extends TDiagramPanel implements TDPWithAttributes { return cpt; }*/ - - public LinkedList<TGComponent> getAllRequirements() { - LinkedList<TGComponent> list = new LinkedList<TGComponent>(); - TGComponent tgc; - - ListIterator iterator = getComponentList().listIterator(); - - while(iterator.hasNext()) { - tgc = (TGComponent)(iterator.next()); + + public LinkedList<TGComponent> getAllRequirements() { + LinkedList<TGComponent> list = new LinkedList<TGComponent>(); + TGComponent tgc; + + ListIterator iterator = getComponentList().listIterator(); + + while (iterator.hasNext()) { + tgc = (TGComponent) (iterator.next()); if (tgc instanceof AvatarRDRequirement) { - list.add(tgc); - } - } - - return list; - - } + list.add(tgc); + } + } + + return list; + + } /*public boolean isLinkedByVerifyTo(TGComponent tgc1, TGComponent tgc2) { ListIterator iterator = getComponentList().listIterator(); @@ -180,11 +179,332 @@ public class AvatarRDPanel extends TDiagramPanel implements TDPWithAttributes { return false; }*/ - - public void enhance() { - autoAdjust(); + + public void enhance() { + autoAdjust(); + } + + public ArrayList<AvatarRDProperty> getAllPropertiesVerify(AvatarRDRequirement req) { + ArrayList<AvatarRDProperty> listOfProps = new ArrayList<>(); + + // We parse all AvatarRDVerifyConnector + ListIterator iterator = getComponentList().listIterator(); + TGComponent tgc; + TGConnectingPoint p1, p2, pother; + + while (iterator.hasNext()) { + tgc = (TGComponent) (iterator.next()); + //TraceManager.addDev("Considering component=" + tgc); + if (tgc instanceof AvatarRDVerifyConnector) { + //TraceManager.addDev("Connector verify"); + p1 = ((AvatarRDVerifyConnector) (tgc)).getTGConnectingPointP1(); + p2 = ((AvatarRDVerifyConnector) (tgc)).getTGConnectingPointP2(); + pother = null; + if (req.belongsToMe(p1)) { + pother = p2; + //TraceManager.addDev("pother = p2"); + } + if (req.belongsToMe(p2)) { + pother = p1; + //TraceManager.addDev("pother = p1"); + } + //TraceManager.addDev("pother computed"); + + //TraceManager.addDev("pother=" + pother); + + if (pother != null) { + TGComponent foundC = getComponentToWhichBelongs(pother); + //TraceManager.addDev("FoundC=" + foundC); + if (foundC instanceof AvatarRDProperty) { + //TraceManager.addDev("Adding foundC"); + listOfProps.add((AvatarRDProperty)foundC); + } + } + } + } + + return listOfProps; + + } + + public ArrayList<AvatarRDElementReference> getAllElementsSatified(AvatarRDRequirement req) { + ArrayList<AvatarRDElementReference> listOfProps = new ArrayList<>(); + + // We parse all AvatarRDVerifyConnector + ListIterator iterator = getComponentList().listIterator(); + TGComponent tgc; + TGConnectingPoint p1, p2, pother; + + while (iterator.hasNext()) { + tgc = (TGComponent) (iterator.next()); + //TraceManager.addDev("Considering component=" + tgc); + if (tgc instanceof AvatarRDSatisfyConnector) { + //TraceManager.addDev("Connector verify"); + p1 = ((AvatarRDSatisfyConnector) (tgc)).getTGConnectingPointP1(); + p2 = ((AvatarRDSatisfyConnector) (tgc)).getTGConnectingPointP2(); + pother = null; + if (req.belongsToMe(p1)) { + pother = p2; + //TraceManager.addDev("pother = p2"); + } + if (req.belongsToMe(p2)) { + pother = p1; + //TraceManager.addDev("pother = p1"); + } + //TraceManager.addDev("pother computed"); + + //TraceManager.addDev("pother=" + pother); + + if (pother != null) { + TGComponent foundC = getComponentToWhichBelongs(pother); + //TraceManager.addDev("FoundC=" + foundC); + if (foundC instanceof AvatarRDElementReference) { + //TraceManager.addDev("Adding foundC"); + listOfProps.add((AvatarRDElementReference)foundC); + } + } + } + } + + return listOfProps; + + } + + public ArrayList<AvatarRDRequirement> getAllImmediateSons(AvatarRDRequirement req) { + ArrayList<AvatarRDRequirement> listOfProps = new ArrayList<>(); + + // We parse all AvatarRDVerifyConnector + ListIterator iterator = getComponentList().listIterator(); + TGComponent tgc; + TGConnectingPoint p1, p2, pother; + + while (iterator.hasNext()) { + tgc = (TGComponent) (iterator.next()); + //TraceManager.addDev("Considering component=" + tgc); + if (tgc instanceof AvatarRDCompositionConnector) { + //TraceManager.addDev("Connector verify"); + p1 = ((AvatarRDCompositionConnector) (tgc)).getTGConnectingPointP1(); + p2 = ((AvatarRDCompositionConnector) (tgc)).getTGConnectingPointP2(); + pother = null; + + if (req.belongsToMe(p2)) { + pother = p1; + //TraceManager.addDev("pother = p1"); + } + //TraceManager.addDev("pother computed"); + + //TraceManager.addDev("pother=" + pother); + + if (pother != null) { + TGComponent foundC = getComponentToWhichBelongs(pother); + //TraceManager.addDev("FoundC=" + foundC); + if (foundC instanceof AvatarRDRequirement) { + //TraceManager.addDev("Adding foundC"); + listOfProps.add((AvatarRDRequirement)foundC); + } + } + } + } + + return listOfProps; + + } + + + public ArrayList<AvatarRDRequirement> getAllSons(AvatarRDRequirement req) { + HashSet<AvatarRDRequirement> met = new HashSet<>(); + met.add(req); + + ArrayList<AvatarRDRequirement> listOfSons = new ArrayList<>(); + ArrayList<AvatarRDRequirement> tmpList = new ArrayList<>(); + ArrayList<AvatarRDRequirement> tmpNew = new ArrayList<>(); + tmpList.add(req); + + for(;;) { + tmpNew.clear(); + for(AvatarRDRequirement rq: tmpList) { + tmpNew.addAll(getAllImmediateSons(rq)); + } + tmpList.clear(); + for(AvatarRDRequirement rq: tmpNew) { + if (!(met.contains(rq))) { + met.add(rq); + listOfSons.add(rq); + tmpList.add(rq); + } + } + if(tmpList.size() == 0) { + break; + } + } + + return listOfSons; + } + + public ArrayList<AvatarRDRequirement> getAllImmediateFathers(AvatarRDRequirement req) { + ArrayList<AvatarRDRequirement> listOfProps = new ArrayList<>(); + + // We parse all AvatarRDVerifyConnector + ListIterator iterator = getComponentList().listIterator(); + TGComponent tgc; + TGConnectingPoint p1, p2, pother; + + while (iterator.hasNext()) { + tgc = (TGComponent) (iterator.next()); + //TraceManager.addDev("Considering component=" + tgc); + if (tgc instanceof AvatarRDCompositionConnector) { + //TraceManager.addDev("Connector verify"); + p1 = ((AvatarRDCompositionConnector) (tgc)).getTGConnectingPointP1(); + p2 = ((AvatarRDCompositionConnector) (tgc)).getTGConnectingPointP2(); + pother = null; + + if (req.belongsToMe(p1)) { + pother = p2; + //TraceManager.addDev("pother = p1"); + } + //TraceManager.addDev("pother computed"); + + //TraceManager.addDev("pother=" + pother); + + if (pother != null) { + TGComponent foundC = getComponentToWhichBelongs(pother); + //TraceManager.addDev("FoundC=" + foundC); + if (foundC instanceof AvatarRDRequirement) { + //TraceManager.addDev("Adding foundC"); + listOfProps.add((AvatarRDRequirement)foundC); + } + } + } + } + + return listOfProps; + + } + + public ArrayList<AvatarRDRequirement> getAllFathers(AvatarRDRequirement req) { + HashSet<AvatarRDRequirement> met = new HashSet<>(); + met.add(req); + + ArrayList<AvatarRDRequirement> listOfSons = new ArrayList<>(); + ArrayList<AvatarRDRequirement> tmpList = new ArrayList<>(); + ArrayList<AvatarRDRequirement> tmpNew = new ArrayList<>(); + tmpList.add(req); + + for(;;) { + tmpNew.clear(); + for(AvatarRDRequirement rq: tmpList) { + tmpNew.addAll(getAllImmediateFathers(rq)); + } + tmpList.clear(); + for(AvatarRDRequirement rq: tmpNew) { + if (!(met.contains(rq))) { + met.add(rq); + listOfSons.add(rq); + tmpList.add(rq); + } + } + if(tmpList.size() == 0) { + break; + } + } + + return listOfSons; + } + + + public ArrayList<AvatarRDRequirement> getAllMeRefine(AvatarRDRequirement req, int origin) { + ArrayList<AvatarRDRequirement> listOfProps = new ArrayList<>(); + + // We parse all AvatarRDVerifyConnector + ListIterator iterator = getComponentList().listIterator(); + TGComponent tgc; + TGConnectingPoint p1, p2, pother; + + while (iterator.hasNext()) { + tgc = (TGComponent) (iterator.next()); + //TraceManager.addDev("Considering component=" + tgc); + if (tgc instanceof AvatarRDRefineConnector) { + //TraceManager.addDev("Connector verify"); + p1 = ((AvatarRDRefineConnector) (tgc)).getTGConnectingPointP1(); + p2 = ((AvatarRDRefineConnector) (tgc)).getTGConnectingPointP2(); + pother = null; + + if (origin ==0) { + if (req.belongsToMe(p1)) { + pother = p2; + //TraceManager.addDev("pother = p1"); + } + } else { + if (req.belongsToMe(p2)) { + pother = p1; + //TraceManager.addDev("pother = p1"); + } + } + //TraceManager.addDev("pother computed"); + + //TraceManager.addDev("pother=" + pother); + + if (pother != null) { + TGComponent foundC = getComponentToWhichBelongs(pother); + //TraceManager.addDev("FoundC=" + foundC); + if (foundC instanceof AvatarRDRequirement) { + //TraceManager.addDev("Adding foundC"); + listOfProps.add((AvatarRDRequirement)foundC); + } + } + } + } + + return listOfProps; + + } + + public ArrayList<AvatarRDRequirement> getAllMeDerive(AvatarRDRequirement req, int origin) { + ArrayList<AvatarRDRequirement> listOfProps = new ArrayList<>(); + + // We parse all AvatarRDVerifyConnector + ListIterator iterator = getComponentList().listIterator(); + TGComponent tgc; + TGConnectingPoint p1, p2, pother; + + while (iterator.hasNext()) { + tgc = (TGComponent) (iterator.next()); + //TraceManager.addDev("Considering component=" + tgc); + if (tgc instanceof AvatarRDDeriveConnector) { + //TraceManager.addDev("Connector verify"); + p1 = ((AvatarRDDeriveConnector) (tgc)).getTGConnectingPointP1(); + p2 = ((AvatarRDDeriveConnector) (tgc)).getTGConnectingPointP2(); + pother = null; + + if (origin ==0) { + if (req.belongsToMe(p1)) { + pother = p2; + //TraceManager.addDev("pother = p1"); + } + } else { + if (req.belongsToMe(p2)) { + pother = p1; + //TraceManager.addDev("pother = p1"); + } + } + //TraceManager.addDev("pother computed"); + + //TraceManager.addDev("pother=" + pother); + + if (pother != null) { + TGComponent foundC = getComponentToWhichBelongs(pother); + //TraceManager.addDev("FoundC=" + foundC); + if (foundC instanceof AvatarRDRequirement) { + //TraceManager.addDev("Adding foundC"); + listOfProps.add((AvatarRDRequirement)foundC); + } + } + } + } + + return listOfProps; + } - } diff --git a/src/main/java/ui/avatarrd/AvatarRDRequirement.java b/src/main/java/ui/avatarrd/AvatarRDRequirement.java index ec0503ce1f1a2390f32b74332085914d8f9065ad..605cd44377fca4e81f9626250db404c2b5e1e7ce 100755 --- a/src/main/java/ui/avatarrd/AvatarRDRequirement.java +++ b/src/main/java/ui/avatarrd/AvatarRDRequirement.java @@ -48,6 +48,7 @@ import org.w3c.dom.Node; import org.w3c.dom.NodeList; import ui.*; import ui.util.IconManager; +import ui.window.JDialogIDAndStereotype; import ui.window.JDialogRequirement; import javax.swing.*; @@ -55,6 +56,7 @@ import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.ArrayList; +import java.util.Arrays; import java.util.LinkedList; /** @@ -85,8 +87,10 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem private int currentFontSize = -1; private boolean displayText = true; - protected static String[] REQ_TYPE_STR = {"<<Requirement>>", "<<SafetyRequirement>>", "<<SecurityRequirement>>"}; - protected static int NB_REQ_TYPE = 3; + //protected static String[] DEFAULT_REQ = {"<<Requirement>>", "<<SafetyRequirement>>", "<<SecurityRequirement>>"}; + protected static ArrayList<String> REQ_TYPE_STR = new ArrayList<String>(Arrays.asList("Requirement", "SafetyRequirement", + "SecurityRequirement")); + //protected static int NB_REQ_TYPE = 3; protected final static int REGULAR_REQ = 0; protected final static int SAFETY_REQ = 1; @@ -112,9 +116,9 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem protected boolean satisfied = false; protected boolean verified = false; - private JMenuItem isRegular = null; + /*private JMenuItem isRegular = null; private JMenuItem isSafety = null; - private JMenuItem isSecurity = null; + private JMenuItem isSecurity = null;*/ private JMenuItem menuNonSatisfied = null; private JMenuItem menuSatisfied = null; private JMenuItem menuNonVerified = null; @@ -271,7 +275,7 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem size = currentFontSize - 2; g.setFont(myFont.deriveFont((float) (myFont.getSize() - 2))); - drawLimitedString(g, REQ_TYPE_STR[reqType], x, y + size, width, 1); + drawLimitedString(g, "<<" + REQ_TYPE_STR.get(reqType) + ">>", x, y + size, width, 1); size += currentFontSize; g.setFont(myFontB); @@ -338,16 +342,18 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem if (size < (height - 2)) { drawLimitedString(g, "Reference elements=\"" + referenceElements + "\"", x + textX, y + size, width, 0); - size += currentFontSize; + if (size < (height - 2)) { if (reqType == SECURITY_REQ) { drawLimitedString(g, "Targeted attacks=\"" + attackTreeNode + "\"", x + textX, y + size, width, 0); + size += currentFontSize; } if (reqType == SAFETY_REQ) { - drawLimitedString(g, "Violated action=\"" + violatedAction + "\"", x + textX, y + size, width, 0); + drawLimitedString(g, "State violating req.=\"" + violatedAction + "\"", x + textX, y + size, width, 0); + size += currentFontSize; } } } @@ -376,46 +382,74 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem if (hasFather()) { text = getTopLevelName() + " / " + text; } - String s = (String) JOptionPane.showInputDialog(frame, text, + /*String s = (String) JOptionPane.showInputDialog(frame, text, "Setting requirement name", JOptionPane.PLAIN_MESSAGE, IconManager.imgic101, null, - getValue()); + getValue());*/ + + JDialogIDAndStereotype dialog = new JDialogIDAndStereotype(frame, "Setting Requirement ID", REQ_TYPE_STR.toArray(new String[0]), getValue + (), reqType); + //dialog.setSize(400, 300); + GraphicLib.centerOnParent(dialog, 400, 300); + // dialog.show(); // blocked until dialog has been closed + dialog.setVisible(true); + + if (dialog.hasBeenCancelled()) { + return false; + } + + String s = dialog.getName(); - if ((s != null) && (s.length() > 0) && (!s.equals(oldValue))) { + if ((s != null) && (s.length() > 0)){ //boolean b; - if (!TAttribute.isAValidId(s, false, false)) { - JOptionPane.showMessageDialog(frame, - "Could not change the name of the Requirement: the new name is not a valid name", - "Error", - JOptionPane.INFORMATION_MESSAGE); - return false; + if (!s.equals(oldValue)) { + if (!TAttribute.isAValidId(s, false, false)) { + JOptionPane.showMessageDialog(frame, + "Could not change the name of the Requirement: the new name is not a valid name", + "Error", + JOptionPane.INFORMATION_MESSAGE); + return false; + } + + if (!tdp.isRequirementNameUnique(s)) { + JOptionPane.showMessageDialog(frame, + "Could not change the name of the Requirement: the new name is already in use", + "Error", + JOptionPane.INFORMATION_MESSAGE); + return false; + } + + + int size = graphics.getFontMetrics().stringWidth(s) + iconSize + 5; + minDesiredWidth = Math.max(size, minWidth); + if (minDesiredWidth != width) { + newSizeForSon(null); + } + setValue(s); } - if (!tdp.isRequirementNameUnique(s)) { + if (!(tdp.actionOnDoubleClick(this))) { JOptionPane.showMessageDialog(frame, - "Could not change the name of the Requirement: the new name is already in use", + "Could not change the name of the Requirement: this name is already in use", "Error", JOptionPane.INFORMATION_MESSAGE); + setValue(oldValue); return false; } + // Setting stereotype + s = dialog.getStereotype().trim(); - int size = graphics.getFontMetrics().stringWidth(s) + iconSize + 5; - minDesiredWidth = Math.max(size, minWidth); - if (minDesiredWidth != width) { - newSizeForSon(null); - } - setValue(s); - - if (tdp.actionOnDoubleClick(this)) { - return true; - } else { + if (!TAttribute.isAValidId(s, false, false)) { JOptionPane.showMessageDialog(frame, - "Could not change the name of the Requirement: this name is already in use", + "Could not use the new stereotype: the new stereotype name is not valid", "Error", JOptionPane.INFORMATION_MESSAGE); - setValue(oldValue); + return false; } + + addStereotype(s); + } return false; } @@ -424,6 +458,29 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem } + public boolean addStereotype(String s) { + int index = -1; + String sLower = s.toLowerCase(); + for (int i=0; i<REQ_TYPE_STR.size(); i++) { + if (REQ_TYPE_STR.get(i).toLowerCase().compareTo(sLower) == 0) { + index = i; + break; + } + } + + // Found stereotype + if (index != -1) { + reqType = index; + return false; + + // Must add a new stereotype + } else { + REQ_TYPE_STR.add(s); + reqType = REQ_TYPE_STR.size()-1; + return true; + } + } + public boolean editAttributes() { //String oldValue = value; String atn = null; @@ -536,18 +593,12 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem componentMenu.addSeparator(); - isRegular = new JMenuItem("Set as regular requirement"); - isSafety = new JMenuItem("Set as safety requirement"); - isSecurity = new JMenuItem("Set as security requirement"); menuNonSatisfied = new JMenuItem("Set as non satisfied"); menuSatisfied = new JMenuItem("Set as satisfied"); menuNonVerified = new JMenuItem("Set as non verified"); menuVerified = new JMenuItem("Set as verified"); - isRegular.addActionListener(menuAL); - isSafety.addActionListener(menuAL); - isSecurity.addActionListener(menuAL); menuNonSatisfied.addActionListener(menuAL); menuSatisfied.addActionListener(menuAL); menuNonVerified.addActionListener(menuAL); @@ -556,9 +607,6 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem editAttributes = new JMenuItem("Edit attributes"); editAttributes.addActionListener(menuAL); - isRegular.setEnabled(reqType != REGULAR_REQ); - isSafety.setEnabled(reqType != SAFETY_REQ); - isSecurity.setEnabled(reqType != SECURITY_REQ); menuNonSatisfied.setEnabled(satisfied); menuSatisfied.setEnabled(!satisfied); @@ -566,9 +614,7 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem menuNonVerified.setEnabled(verified); menuVerified.setEnabled(!verified); - componentMenu.add(isRegular); - componentMenu.add(isSafety); - componentMenu.add(isSecurity); + componentMenu.addSeparator(); componentMenu.add(menuNonSatisfied); componentMenu.add(menuSatisfied); @@ -588,17 +634,10 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem verified = false; } else if (e.getSource() == menuVerified) { verified = true; - } else if (e.getSource() == isRegular) { - reqType = REGULAR_REQ; - } else if (e.getSource() == isSafety) { - reqType = SAFETY_REQ; - } else if (e.getSource() == isSecurity) { - reqType = SECURITY_REQ; } else { return editAttributes(); } - return true; } @@ -635,7 +674,7 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem sb.append(criticality); sb.append("\" />\n"); sb.append("<reqType data=\""); - sb.append(reqType); + sb.append(REQ_TYPE_STR.get(reqType)); sb.append("\" />\n"); sb.append("<id data=\""); sb.append(id); @@ -741,12 +780,12 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem reqType = REGULAR_REQ; } else { try { - reqType = Integer.decode(s).intValue(); + reqType = Integer.decode(s).intValue(); // default stereo: old way } catch (Exception e) { - reqType = REGULAR_REQ; + addStereotype(s); } } - if (reqType > (NB_REQ_TYPE - 1)) { + if (reqType > (REQ_TYPE_STR.size() - 1)) { reqType = REGULAR_REQ; } @@ -827,6 +866,10 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem } } + public String getStereotype() { + return REQ_TYPE_STR.get(reqType); + } + public String getAttributes() { String attr = "ID=" + id + "\n"; attr += "Text= " + text + "\n"; @@ -846,6 +889,17 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem return attr; } + public String getExtraAttributes() { + String allAttr = ""; + for (int i=0; i<extraParamIDs.size(); i++) { + if (i > 0) { + allAttr += " / "; + } + allAttr += extraParamIDs.get(i) + ":" + extraParamValues.get(i); + } + return allAttr; + } + public void autoAdjust(int mode) { // @@ -860,7 +914,7 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem // Must find for both modes which width is desirable String s0, s1; - s0 = REQ_TYPE_STR[reqType]; + s0 = "<<" + REQ_TYPE_STR.get(reqType) + ">>"; s1 = "Text="; graphics.setFont(f2); @@ -908,9 +962,158 @@ public class AvatarRDRequirement extends TGCScalableWithInternalComponent implem h = ((texts.length + 5) * currentFontSize) + lineHeight; } - resize(w4, h); } + public ArrayList<AvatarRDProperty> getAllPropertiesVerified() { + AvatarRDPanel myPanel = (AvatarRDPanel)(getTDiagramPanel()); + return myPanel.getAllPropertiesVerify(this); + } + + public String getStringOfAllPropertiesVerified() { + ArrayList<AvatarRDProperty> list = getAllPropertiesVerified(); + String s = ""; + for(int i=0; i<list.size(); i++) { + if (i>0) s+= " / "; + s += list.get(i).getValue(); + } + return s; + } + + public ArrayList<AvatarRDElementReference> getAllElementsSatisfied() { + AvatarRDPanel myPanel = (AvatarRDPanel)(getTDiagramPanel()); + return myPanel.getAllElementsSatified(this); + } + + public String getStringOfAllElementsSatisfied() { + ArrayList<AvatarRDElementReference> list = getAllElementsSatisfied(); + String s = ""; + for(int i=0; i<list.size(); i++) { + if (i>0) s+= " / "; + s += list.get(i).getValue(); + } + return s; + } + + public ArrayList<AvatarRDRequirement> getAllImmediateSons() { + AvatarRDPanel myPanel = (AvatarRDPanel)(getTDiagramPanel()); + return myPanel.getAllImmediateSons(this); + } + + public String getStringOfAllImmediateSons() { + ArrayList<AvatarRDRequirement> list = getAllImmediateSons(); + String s = ""; + for(int i=0; i<list.size(); i++) { + if (i>0) s+= " / "; + s += list.get(i).getValue(); + } + return s; + } + + public ArrayList<AvatarRDRequirement> getAllSons() { + AvatarRDPanel myPanel = (AvatarRDPanel)(getTDiagramPanel()); + return myPanel.getAllSons(this); + } + + public String getStringOfAllSons() { + ArrayList<AvatarRDRequirement> list = getAllSons(); + String s = ""; + for(int i=0; i<list.size(); i++) { + if (i>0) s+= " / "; + s += list.get(i).getValue(); + } + return s; + } + + public ArrayList<AvatarRDRequirement> getAllImmediateFathers() { + AvatarRDPanel myPanel = (AvatarRDPanel)(getTDiagramPanel()); + return myPanel.getAllImmediateFathers(this); + } + + public String getStringOfAllImmediateFathers() { + ArrayList<AvatarRDRequirement> list = getAllImmediateFathers(); + String s = ""; + for(int i=0; i<list.size(); i++) { + if (i>0) s+= " / "; + s += list.get(i).getValue(); + } + return s; + } + + public ArrayList<AvatarRDRequirement> getAllFathers() { + AvatarRDPanel myPanel = (AvatarRDPanel)(getTDiagramPanel()); + return myPanel.getAllFathers(this); + } + + public String getStringOfAllFathers() { + ArrayList<AvatarRDRequirement> list = getAllFathers(); + String s = ""; + for(int i=0; i<list.size(); i++) { + if (i>0) s+= " / "; + s += list.get(i).getValue(); + } + return s; + } + + public ArrayList<AvatarRDRequirement> getAllMeRefineOrigin() { + AvatarRDPanel myPanel = (AvatarRDPanel)(getTDiagramPanel()); + return myPanel.getAllMeRefine(this, 0); + } + + public String getStringAllMeRefineOrigin() { + ArrayList<AvatarRDRequirement> list = getAllMeRefineOrigin(); + String s = ""; + for(int i=0; i<list.size(); i++) { + if (i>0) s+= " / "; + s += list.get(i).getValue(); + } + return s; + } + + public ArrayList<AvatarRDRequirement> getAllMeRefineDestination() { + AvatarRDPanel myPanel = (AvatarRDPanel)(getTDiagramPanel()); + return myPanel.getAllMeRefine(this, 1); + } + + public String getStringAllMeRefineDestination() { + ArrayList<AvatarRDRequirement> list = getAllMeRefineDestination(); + String s = ""; + for(int i=0; i<list.size(); i++) { + if (i>0) s+= " / "; + s += list.get(i).getValue(); + } + return s; + } + + public ArrayList<AvatarRDRequirement> getAllMeDeriveOrigin() { + AvatarRDPanel myPanel = (AvatarRDPanel)(getTDiagramPanel()); + return myPanel.getAllMeDerive(this, 0); + } + + public String getStringAllMeDeriveOrigin() { + ArrayList<AvatarRDRequirement> list = getAllMeDeriveOrigin(); + String s = ""; + for(int i=0; i<list.size(); i++) { + if (i>0) s+= " / "; + s += list.get(i).getValue(); + } + return s; + } + + public ArrayList<AvatarRDRequirement> getAllMeDeriveDestination() { + AvatarRDPanel myPanel = (AvatarRDPanel)(getTDiagramPanel()); + return myPanel.getAllMeDerive(this, 1); + } + + public String getStringAllMeDeriveDestination() { + ArrayList<AvatarRDRequirement> list = getAllMeDeriveDestination(); + String s = ""; + for(int i=0; i<list.size(); i++) { + if (i>0) s+= " / "; + s += list.get(i).getValue(); + } + return s; + } + } diff --git a/src/main/java/ui/util/DefaultText.java b/src/main/java/ui/util/DefaultText.java index 1a97da72b27407025dfdd590f7d4e0cef1c85110..26d3005acdb07bc4a8fcc418d50710fbbfe95451 100755 --- a/src/main/java/ui/util/DefaultText.java +++ b/src/main/java/ui/util/DefaultText.java @@ -50,8 +50,8 @@ package ui.util; */ public class DefaultText { - public static String BUILD = "12682"; - public static String DATE = "2018/07/04 02:01:36 CET"; + public static String BUILD = "12683"; + public static String DATE = "2018/07/05 09:28:40 CET"; public static StringBuffer sbAbout = makeAbout(); diff --git a/src/main/java/ui/window/JDialogAvatarSignal.java b/src/main/java/ui/window/JDialogAvatarSignal.java index 881ce3cb41c6d5322af0ae960161e947852c61dd..c463100117e717db09c6518b180c254d5dfd0185 100644 --- a/src/main/java/ui/window/JDialogAvatarSignal.java +++ b/src/main/java/ui/window/JDialogAvatarSignal.java @@ -143,18 +143,12 @@ public class JDialogAvatarSignal extends JDialogBase implements ActionListener c1.gridwidth = GridBagConstraints.REMAINDER; //end row c1.fill = GridBagConstraints.BOTH; c1.gridheight = 1; - listSignals = new JComboBox<String>(showSignals.toArray (new String[0])); + c1.anchor = GridBagConstraints.CENTER; panel1.add(new JLabel(" "), c1); // Combo box - c1.gridwidth = 1; - c1.gridheight = 1; - c1.weighty = 1.0; - c1.weightx = 1.0; c1.fill = GridBagConstraints.HORIZONTAL; - c1.anchor = GridBagConstraints.CENTER; - c1.gridwidth = GridBagConstraints.REMAINDER; //end row - listSignals = new JComboBox<String> (showSignals.toArray (new String[0])); + listSignals = new JComboBox<String> (showSignals.toArray (new String[showSignals.size()])); panel1.add(listSignals, c1); diff --git a/src/main/java/ui/window/JDialogBase.java b/src/main/java/ui/window/JDialogBase.java index b3aacf69d60f5a52ea07162aca16015f7c7329aa..92dae668abc1375f4e5dd907a941e06bf66dfd25 100644 --- a/src/main/java/ui/window/JDialogBase.java +++ b/src/main/java/ui/window/JDialogBase.java @@ -101,6 +101,10 @@ public class JDialogBase extends JDialog { return buttonPanel; } + protected void renameSaveButton(String label) { + closeButton.setText(label); + } + protected void initButtons(Container c, diff --git a/src/main/java/ui/window/JDialogIDAndStereotype.java b/src/main/java/ui/window/JDialogIDAndStereotype.java new file mode 100644 index 0000000000000000000000000000000000000000..e7aaecf9d1025714a1d22c1e165c1e76b85155b8 --- /dev/null +++ b/src/main/java/ui/window/JDialogIDAndStereotype.java @@ -0,0 +1,205 @@ +/* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille + * + * ludovic.apvrille AT enst.fr + * + * This software is a computer program whose purpose is to allow the + * edition of TURTLE analysis, design and deployment diagrams, to + * allow the generation of RT-LOTOS or Java code from this diagram, + * and at last to allow the analysis of formal validation traces + * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP + * from INRIA Rhone-Alpes. + * + * This software is governed by the CeCILL license under French law and + * abiding by the rules of distribution of free software. You can use, + * modify and/ or redistribute the software under the terms of the CeCILL + * license as circulated by CEA, CNRS and INRIA at the following URL + * "http://www.cecill.info". + * + * As a counterpart to the access to the source code and rights to copy, + * modify and redistribute granted by the license, users are provided only + * with a limited warranty and the software's author, the holder of the + * economic rights, and the successive licensors have only limited + * liability. + * + * In this respect, the user's attention is drawn to the risks associated + * with loading, using, modifying and/or developing or reproducing the + * software by the user in light of its specific status of free software, + * that may mean that it is complicated to manipulate, and that also + * therefore means that it is reserved for developers and experienced + * professionals having in-depth computer knowledge. Users are therefore + * encouraged to load and test the software's suitability as regards their + * requirements in conditions enabling the security of their systems and/or + * data to be ensured and, more generally, to use and operate it in the + * same conditions as regards security. + * + * The fact that you are presently reading this means that you have had + * knowledge of the CeCILL license and that you accept its terms. + */ + +package ui.window; + +import ui.AvatarSignal; +import ui.util.IconManager; +import ui.TGComponent; +import myutil.TraceManager; + +import javax.swing.*; +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.util.ArrayList; +import java.util.LinkedList; +import java.util.List; +import java.util.Vector; + + +/** + * Class JDialogIDAndStereotype + * Dialog for managing several names and stereotype + * Creation: 04/07/2018 + * @version 1.0 04/07/2018 + * @author Ludovic APVRILLE + */ +public class JDialogIDAndStereotype extends JDialogBase implements ActionListener { + + private String[] availableStereotypes; + private String currentName; + private int currentStereotype; + + + private JPanel panel1; + + // Panel1 + private JComboBox<String> listStereotypes; + private JButton selectStereotype; + private JTextField stereotype, name; + + + private boolean cancelled; + + /** Creates new form */ + public JDialogIDAndStereotype(Frame _f, String _title, + String[] _availableStereotypes, String _currentName, + int _currentStereotype) { + + super(_f, _title, true); + + availableStereotypes = _availableStereotypes; + currentName = _currentName; + currentStereotype = _currentStereotype; + + initComponents(); + myInitComponents(); + + pack(); + } + + + + private void myInitComponents() { + } + + + private void initComponents() { + Container c = getContentPane(); + //GridBagLayout gridbag0 = new GridBagLayout(); + GridBagLayout gridbag1 = new GridBagLayout(); + //GridBagConstraints c0 = new GridBagConstraints(); + GridBagConstraints c1 = new GridBagConstraints(); + + setFont(new Font("Helvetica", Font.PLAIN, 14)); + c.setLayout(new BorderLayout()); + + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + panel1 = new JPanel(); + panel1.setLayout(gridbag1); + + panel1.setBorder(new javax.swing.border.TitledBorder("Requirement")); + + //panel1.setPreferredSize(new Dimension(500, 250)); + + // first line panel1 + c1.weighty = 1.0; + c1.weightx = 1.0; + c1.gridwidth = GridBagConstraints.REMAINDER; //end row + c1.gridheight = 1; + c1.fill = GridBagConstraints.HORIZONTAL; + c1.anchor = GridBagConstraints.CENTER; + panel1.add(new JLabel(" "), c1); + + // Combo box + listStereotypes = new JComboBox<String>(availableStereotypes); + listStereotypes.setSelectedIndex(currentStereotype); + panel1.add(listStereotypes, c1); + + + // List of stereotypes + c1.gridwidth = GridBagConstraints.REMAINDER; //end row + selectStereotype = new JButton("Select stereotype"); + panel1.add(selectStereotype, c1); + selectStereotype.setEnabled(availableStereotypes.length > 0); + selectStereotype.addActionListener(this); + + // Text of stereotype + stereotype = new JTextField(availableStereotypes[currentStereotype], 30); + panel1.add(stereotype, c1); + //panel1.setEditable(true); + + // ID + name = new JTextField(currentName, 30); + panel1.add(name, c1); + //panel1.setEditable(true); + + + c.add(panel1, BorderLayout.CENTER); + + JPanel buttons = initBasicButtons(this); + c.add(buttons, BorderLayout.SOUTH); + } + + public void actionPerformed(ActionEvent evt) { + //String command = evt.getActionCommand(); + + // Compare the action command to the known actions. + if (evt.getSource() == closeButton) { + closeDialog(); + } else if (evt.getSource() == cancelButton) { + cancelDialog(); + } else if (evt.getSource() == selectStereotype) { + selectStereotype(); + } + } + + public void selectStereotype() { + int index = listStereotypes.getSelectedIndex(); + stereotype.setText(availableStereotypes[index]); + } + + public void closeDialog() { + cancelled = false; + dispose(); + } + + public String getStereotype() { + return stereotype.getText(); + } + + public String getName() { + return name.getText(); + } + + + public boolean hasValidString() { + return stereotype.getText().length() > 0; + } + + public boolean hasBeenCancelled() { + return cancelled; + } + + public void cancelDialog() { + cancelled = true; + dispose(); + } +} diff --git a/src/main/java/ui/window/JDialogRequirementTable.java b/src/main/java/ui/window/JDialogRequirementTable.java index feff78d5021e4e8c0a5a36997564d757ba5c8c28..b200b74da7d2d99210371896655e9ffed491599b 100644 --- a/src/main/java/ui/window/JDialogRequirementTable.java +++ b/src/main/java/ui/window/JDialogRequirementTable.java @@ -59,12 +59,23 @@ import java.util.ArrayList; */ public class JDialogRequirementTable extends JDialogBase implements ActionListener { - static String[] items = {"none", "ID", "Name", "Type", "Description", "Kind", "Criticality", "Violated action", "Targetted attacks", "Satisfied", "Reference elements"}; + // Direct sons / fathers + // All sons / fathers + // Property verifiying the req + // Elements satisfying the req. + + static String[] items = {"none", "ID", "Stereotype", "Name", + "Description", "Kind", "Criticality", "Violated action", "Targeted " + + "attacks", "Satisfied", "Reference elements", "Custom attributes", + "Verification Properties", "Satisfied by", "Immediate sons", + "All sons", "Immediate fathers", "All fathers", "Me -> refine -> Other", + "Other -> refine -> Me", "Me -> derive -> Other", "Other -> derive -> Me"}; + private static String[] sizes = {"0", "50", "100", "150", "200", "250", "300", "350", "400", "450", "500"}; - private int nbColumn = 10; - private static int[] selectedItems = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - private static int[] selectedSizes = {1, 3, 2, 6, 2, 2, 2, 2, 1, 2}; + private int nbColumn = 21; + private static int[] selectedItems = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21}; + private static int[] selectedSizes = {1, 3, 2, 6, 2, 2, 2, 2, 1, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6}; // Panel1 private ArrayList<JComboBox<String>> itemBoxes, sizeBoxes; @@ -102,7 +113,7 @@ public class JDialogRequirementTable extends JDialogBase implements ActionListen JPanel panel1 = new JPanel(); panel1.setLayout(gridbag1); panel1.setBorder(new javax.swing.border.TitledBorder("Setting columns parameters ")); - panel1.setPreferredSize(new Dimension(500, 300)); + panel1.setPreferredSize(new Dimension(500, 500)); // first line panel1 //c1.gridwidth = 1; @@ -142,17 +153,18 @@ public class JDialogRequirementTable extends JDialogBase implements ActionListen c0.gridheight = 1; c0.fill = GridBagConstraints.HORIZONTAL; - + + initButtons(c0, c, this); + renameSaveButton("Show table"); } public void actionPerformed(ActionEvent evt) { - String command = evt.getActionCommand(); // Compare the action command to the known actions. - if (command.equals("Save and Close")) { + if (evt.getSource() == closeButton) { closeDialog(); - } else if (command.equals("Cancel")) { + } else if (evt.getSource() == cancelButton) { cancelDialog(); } } diff --git a/src/main/java/ui/window/JFrameRequirementTable.java b/src/main/java/ui/window/JFrameRequirementTable.java index d424658d20286588140a5ce8a76a953e9fe49d31..d859b328e02a4379b53099800a5d51dd906b1d8f 100644 --- a/src/main/java/ui/window/JFrameRequirementTable.java +++ b/src/main/java/ui/window/JFrameRequirementTable.java @@ -308,7 +308,7 @@ public class JFrameRequirementTable extends JFrame implements ActionListener /*, for (i = 0; i < ts.getRowCount(); i++) { for (j = 0; j < ts.getColumnCount(); j++) { if (j != 0) - sb.append(", "); + sb.append("; "); String tmp = ts.getValueAt(i, j).toString(); tmp = Conversion.replaceAllString(tmp, "\n", " "); tmp = Conversion.replaceAllString(tmp, "\r", " "); diff --git a/src/main/java/ui/window/RequirementsTableModel.java b/src/main/java/ui/window/RequirementsTableModel.java index 76490dd34c97d0f98c760cdd7f0a2c57654a90c1..6ee76175810ee1c55973792d490986b3eca5eb53 100644 --- a/src/main/java/ui/window/RequirementsTableModel.java +++ b/src/main/java/ui/window/RequirementsTableModel.java @@ -1,26 +1,26 @@ /* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille - * + * * ludovic.apvrille AT enst.fr - * + * * This software is a computer program whose purpose is to allow the * edition of TURTLE analysis, design and deployment diagrams, to * allow the generation of RT-LOTOS or Java code from this diagram, * and at last to allow the analysis of formal validation traces * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP * from INRIA Rhone-Alpes. - * + * * This software is governed by the CeCILL license under French law and * abiding by the rules of distribution of free software. You can use, * modify and/ or redistribute the software under the terms of the CeCILL * license as circulated by CEA, CNRS and INRIA at the following URL * "http://www.cecill.info". - * + * * As a counterpart to the access to the source code and rights to copy, * modify and redistribute granted by the license, users are provided only * with a limited warranty and the software's author, the holder of the * economic rights, and the successive licensors have only limited * liability. - * + * * In this respect, the user's attention is drawn to the risks associated * with loading, using, modifying and/or developing or reproducing the * software by the user in light of its specific status of free software, @@ -31,16 +31,15 @@ * requirements in conditions enabling the security of their systems and/or * data to be ensured and, more generally, to use and operate it in the * same conditions as regards security. - * + * * The fact that you are presently reading this means that you have had * knowledge of the CeCILL license and that you accept its terms. */ - - package ui.window; +import myutil.TraceManager; import ui.TGComponent; import ui.avatarrd.AvatarRDRequirement; import ui.req.Requirement; @@ -50,147 +49,197 @@ import java.awt.*; import java.util.LinkedList; /** -* Class RequirementsTableModel -* Main data of requirements -* Creation: 17/02/2009 -* @version 1.0 17/02/2009 -* @author Ludovic APVRILLE + * Class RequirementsTableModel + * Main data of requirements + * Creation: 17/02/2009 + * + * @author Ludovic APVRILLE + * @version 1.0 17/02/2009 */ public class RequirementsTableModel extends AbstractTableModel { - private LinkedList<TGComponent> list; - private Point[] pts; - - //private String [] names; - public RequirementsTableModel(LinkedList<TGComponent> _list, Point [] _pts) { - list = _list; - pts = _pts; - //computeData(_ncs); - } - - // From AbstractTableModel - public int getRowCount() { - return list.size(); - } - - public int getColumnCount() { - return pts.length; - } - - public Object getValueAt(int row, int column) { - TGComponent tgc = list.get(row); - - if (tgc instanceof Requirement) { - Requirement r = (Requirement)(tgc); - int index; - int type; - - index = pts[column].x-1; - - switch(index) { - case 0: - return r.getID(); - case 1: - return r.getValue(); - case 2: - type = r.getRequirementType(); - if (type == 0) { - return "Regular req."; - } else if (type == 1) { - return "Formal req."; - } else { - return "Security req."; - } - case 3: - return r.getText(); - case 4: - return r.getKind(); - case 5: - return r.getCriticality(); - case 6: - if (r.getRequirementType() == 1) { - return r.getViolatedAction(); - } else { - return " - "; - } - case 7: - if (r.getRequirementType() == 2) { - return r.getAttackTreeNode(); - } else { - return " - "; - } - case 8: - if (r.isVerified()) { - if (r.isSatisfied()) { - return "yes"; - } else { - return "no"; - } - } else { - return "-"; - } - } - } - - if (tgc instanceof AvatarRDRequirement) { - AvatarRDRequirement rd = (AvatarRDRequirement)(tgc); - int index; - int type; - - index = pts[column].x-1; - - switch(index) { - case 0: - return rd.getID(); - case 1: - return rd.getValue(); - case 2: - type = rd.getRequirementType(); - if (type == 0) { - return "Regular req."; - } else if (type == 1) { - return "Safety req."; - } else { - return "Security req."; - } - case 3: - return rd.getText(); - case 4: - return rd.getKind(); - case 5: - return rd.getCriticality(); - case 6: + private LinkedList<TGComponent> list; + private Point[] pts; + + //private String [] names; + public RequirementsTableModel(LinkedList<TGComponent> _list, Point[] _pts) { + list = _list; + pts = _pts; + //computeData(_ncs); + } + + // From AbstractTableModel + public int getRowCount() { + return list.size(); + } + + public int getColumnCount() { + return pts.length; + } + + public Object getValueAt(int row, int column) { + TGComponent tgc = list.get(row); + + if (tgc instanceof Requirement) { + Requirement r = (Requirement) (tgc); + int index; + int type; + + index = pts[column].x - 1; + + switch (index) { + case 0: + return r.getID(); + case 1: + type = r.getRequirementType(); + if (type == 0) { + return "Regular req."; + } else if (type == 1) { + return "Formal req."; + } else { + return "Security req."; + } + case 2: + return r.getValue(); + case 3: + return r.getText(); + case 4: + return r.getKind(); + case 5: + return r.getCriticality(); + case 6: + if (r.getRequirementType() == 1) { + return r.getViolatedAction(); + } else { + return " - "; + } + case 7: + if (r.getRequirementType() == 2) { + return r.getAttackTreeNode(); + } else { + return " - "; + } + case 8: + if (r.isVerified()) { + if (r.isSatisfied()) { + return "yes"; + } else { + return "no"; + } + } else { + return "-"; + } + case 9: + return "-"; + case 10: + return "-"; + case 11: + return "-"; + case 12: + return "-"; + case 13: + return "-"; + case 14: + return "-"; + case 15: + return "-"; + case 16: + return "-"; + case 17: + return "-"; + case 18: + return "-"; + case 19: + return "-"; + case 20: + return "-"; + } + } + + if (tgc instanceof AvatarRDRequirement) { + AvatarRDRequirement rd = (AvatarRDRequirement) (tgc); + int index; + int type; + + index = pts[column].x - 1; + + switch (index) { + case 0: + return rd.getID(); + case 1: + return rd.getStereotype(); + case 2: + return rd.getValue(); + case 3: + return rd.getText(); + case 4: + return rd.getKind(); + case 5: + return rd.getCriticality(); + case 6: /*if (rd.getRequirementType() == 1) { return rd.getViolatedAction(); } else { return " - "; }*/ - return " - "; - case 7: - return rd.getAttackTreeNode(); - case 8: - if (rd.isVerified()) { - if (rd.isSatisfied()) { - return "yes"; - } else { - return "no"; - } - } else { - return "-"; - } - case 9: - return rd.getReferenceElements(); - } - - } - - return "Invalid column"; - - } - - public String getColumnName(int columnIndex) { - int index = pts[columnIndex].x; - - return JDialogRequirementTable.items[index]; + return " - "; + case 7: + return rd.getAttackTreeNode(); + case 8: + if (rd.isVerified()) { + if (rd.isSatisfied()) { + return "yes"; + } else { + return "no"; + } + } else { + return "-"; + } + case 9: + return rd.getReferenceElements(); + case 10: + return rd.getExtraAttributes(); + case 11: + //TraceManager.addDev("Getting Info on properties in rd=" + rd); + return rd.getStringOfAllPropertiesVerified(); + case 12: + //TraceManager.addDev("Getting Info on properties in rd=" + rd); + return rd.getStringOfAllElementsSatisfied(); + case 13: + //TraceManager.addDev("Getting Info on properties in rd=" + rd); + return rd.getStringOfAllImmediateSons(); + case 14: + //TraceManager.addDev("Getting Info on properties in rd=" + rd); + return rd.getStringOfAllSons(); + case 15: + //TraceManager.addDev("Getting Info on properties in rd=" + rd); + return rd.getStringOfAllImmediateFathers(); + case 16: + //TraceManager.addDev("Getting Info on properties in rd=" + rd); + return rd.getStringOfAllFathers(); + case 17: + //TraceManager.addDev("Getting Info on properties in rd=" + rd); + return rd.getStringAllMeRefineOrigin(); + case 18: + //TraceManager.addDev("Getting Info on properties in rd=" + rd); + return rd.getStringAllMeRefineDestination(); + case 19: + //TraceManager.addDev("Getting Info on properties in rd=" + rd); + return rd.getStringAllMeDeriveOrigin(); + case 20: + //TraceManager.addDev("Getting Info on properties in rd=" + rd); + return rd.getStringAllMeDeriveDestination(); + } + + } + + return "Invalid column"; + + } + + public String getColumnName(int columnIndex) { + int index = pts[columnIndex].x; + + return JDialogRequirementTable.items[index]; /*switch(columnIndex) { case 0: @@ -212,7 +261,7 @@ public class RequirementsTableModel extends AbstractTableModel { case 8: return "Satisfied"; }*/ - //return "none"; - } - + //return "none"; + } + } \ No newline at end of file