Revision e87bd7c7 doc/activitydiagrams/core/urtCoreStopNodes.svg

View differences:

doc/activitydiagrams/core/urtCoreStopNodes.svg
1
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="216px" preserveAspectRatio="none" style="width:202px;height:216px;" version="1.1" viewBox="0 0 202 216" width="202px" zoomAndPan="magnify"><defs><filter height="300%" id="fm2wpv20ubkyh" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="18" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="89" x="56.5" y="26.708">µRtWare</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="178" x="12" y="47.6611">urtCoreStopNodes()</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="0" x="104" y="68.6143"/><path d="M19.5,72.8594 L19.5,123.125 L182.5,123.125 L182.5,82.8594 L172.5,72.8594 L19.5,72.8594 " fill="#FBFB77" filter="url(#fm2wpv20ubkyh)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M172.5,72.8594 L172.5,82.8594 L182.5,82.8594 L172.5,72.8594 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="19.5" x2="83.5" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="87.5" y="89.4263"/><text fill="#000000" font-family="sans-serif" font-size="13" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="27" x="87.5" y="89.4263">void</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="118.5" y="89.4263"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="118.5" x2="182.5" y1="85.4258" y2="85.4258"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="19.5" x2="182.5" y1="97.9922" y2="97.9922"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="19.5" x2="182.5" y1="99.9922" y2="99.9922"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="19.5" x2="30" y1="110.5586" y2="110.5586"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="34" y="114.5591"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="45" x="34" y="114.5591">return</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="85" x="83" y="114.5591">: urt_status_t</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="172" x2="182.5" y1="110.5586" y2="110.5586"/><ellipse cx="101" cy="153.125" fill="#000000" filter="url(#fm2wpv20ubkyh)" rx="10" ry="10" style="stroke: none; stroke-width: 1.0;"/><ellipse cx="101" cy="194.125" fill="#FFFFFF" filter="url(#fm2wpv20ubkyh)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="101" cy="194.125" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="101" x2="101" y1="123.125" y2="143.125"/><polygon fill="#A80036" points="97,133.125,101,143.125,105,133.125,101,137.125" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="101" x2="101" y1="163.125" y2="183.125"/><polygon fill="#A80036" points="97,173.125,101,183.125,105,173.125,101,177.125" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[e688f9582e9e39fd5026de674d6fc281]
1
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="821px" preserveAspectRatio="none" style="width:435px;height:821px;" version="1.1" viewBox="0 0 435 821" width="435px" zoomAndPan="magnify"><defs><filter height="300%" id="f1po4rs4rxe2ur" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="18" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="89" x="172.25" y="26.708">µRtWare</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="178" x="127.75" y="47.6611">urtCoreStopNodes()</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="0" x="219.75" y="68.6143"/><path d="M39,72.8594 L39,168.5234 L407,168.5234 L407,82.8594 L397,72.8594 L39,72.8594 " fill="#FBFB77" filter="url(#f1po4rs4rxe2ur)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M397,72.8594 L397,82.8594 L407,82.8594 L397,72.8594 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="39" x2="149.5" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="153.5" y="89.4263"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="50" x="153.5" y="89.4263">reason</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="85" x="207.5" y="89.4263">: urt_status_t</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="296.5" x2="407" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="252" x="45" y="105.0591">The reason why the function was called.</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="134" x="45" y="120.1919">For normal shutdown</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="183" y="120.1919">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="101" x="291" y="120.1919">should be used.</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="39" x2="407" y1="128.2578" y2="128.2578"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="39" x2="407" y1="130.2578" y2="130.2578"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="39" x2="152" y1="140.8242" y2="140.8242"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="156" y="144.8247"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="45" x="156" y="144.8247">return</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="85" x="205" y="144.8247">: urt_status_t</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="294" x2="407" y1="140.8242" y2="140.8242"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="93" x="45" y="160.4575">Always returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="142" y="160.4575">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="246" y="160.4575">.</text><ellipse cx="223" cy="198.5234" fill="#000000" filter="url(#f1po4rs4rxe2ur)" rx="10" ry="10" style="stroke: none; stroke-width: 1.0;"/><rect fill="#FEFECE" filter="url(#f1po4rs4rxe2ur)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="77" x="184.5" y="228.5234"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="57" x="194.5" y="249.6621">lock core</text><rect fill="#FEFECE" filter="url(#f1po4rs4rxe2ur)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="254" x="96" y="330.8945"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="62" x="106" y="352.0332">set core's</text><text fill="#000000" font-family="monospace" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="49" x="172" y="352.0332">_status</text><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="115" x="225" y="352.0332">value to argument</text><polygon fill="#FEFECE" filter="url(#f1po4rs4rxe2ur)" points="60.5,282.4922,385.5,282.4922,397.5,294.4922,385.5,306.4922,60.5,306.4922,48.5,294.4922,60.5,282.4922" style="stroke: #A80036; stroke-width: 1.5;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="20" x="227" y="316.7026">yes</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="43" x="60.5" y="298.3003">Current</text><text fill="#000000" font-family="monospace" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="49" x="107.5" y="298.3003">_status</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="225" x="160.5" y="298.3003">value is smaller than specified reason?</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="14" x="397.5" y="291.8979">no</text><polygon fill="#FEFECE" filter="url(#f1po4rs4rxe2ur)" points="223,384.8633,235,396.8633,223,408.8633,211,396.8633,223,384.8633" style="stroke: #A80036; stroke-width: 1.5;"/><rect fill="#FEFECE" filter="url(#f1po4rs4rxe2ur)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="266" x="90" y="428.8633"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="246" x="100" y="450.002">access first node in core's list of nodes</text><rect fill="#FEFECE" filter="url(#f1po4rs4rxe2ur)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="187" x="129.5" y="538.5425"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="167" x="139.5" y="559.6812">request node to terminate</text><rect fill="#FEFECE" filter="url(#f1po4rs4rxe2ur)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="156" x="145" y="601.6089"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="136" x="155" y="622.7476">proceed to next node</text><polygon fill="#FEFECE" filter="url(#f1po4rs4rxe2ur)" points="148.5,482.832,297.5,482.832,309.5,494.832,297.5,506.832,148.5,506.832,136.5,494.832,148.5,482.832" style="stroke: #A80036; stroke-width: 1.5;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="20" x="227" y="517.0425">yes</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="111" x="148.5" y="498.6401">Current node is not</text><text fill="#000000" font-family="monospace" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="28" x="263.5" y="498.6401">NULL</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="6" x="291.5" y="498.6401">?</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="14" x="122.5" y="492.2378">no</text><rect fill="#FEFECE" filter="url(#f1po4rs4rxe2ur)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="246" x="100" y="677.5776"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="226" x="110" y="698.7163">broadcast control event (terminate)</text><rect fill="#FEFECE" filter="url(#f1po4rs4rxe2ur)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="93" x="176.5" y="731.5464"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="73" x="186.5" y="752.6851">unlock core</text><path d="M10,783.9487 L10,809.0815 A0,0 0 0 0 10,809.0815 L192,809.0815 A0,0 0 0 0 192,809.0815 L192,801.9487 L212,796.5151 L192,793.9487 L192,793.9487 L182,783.9487 L10,783.9487 A0,0 0 0 0 10,783.9487 " fill="#FBFB77" filter="url(#f1po4rs4rxe2ur)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M182,783.9487 L182,793.9487 L192,793.9487 L182,783.9487 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="16" y="801.0156">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="69" y="801.0156">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="173" y="801.0156">.</text><ellipse cx="223" cy="796.5151" fill="#FFFFFF" filter="url(#f1po4rs4rxe2ur)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="223" cy="796.5151" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="168.5234" y2="188.5234"/><polygon fill="#A80036" points="219,178.5234,223,188.5234,227,178.5234,223,182.5234" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="208.5234" y2="228.5234"/><polygon fill="#A80036" points="219,218.5234,223,228.5234,227,218.5234,223,222.5234" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="306.4922" y2="330.8945"/><polygon fill="#A80036" points="219,320.8945,223,330.8945,227,320.8945,223,324.8945" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="397.5" x2="409.5" y1="294.4922" y2="294.4922"/><polygon fill="#A80036" points="405.5,337.8789,409.5,347.8789,413.5,337.8789,409.5,341.8789" style="stroke: #A80036; stroke-width: 1.5;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="409.5" x2="409.5" y1="294.4922" y2="396.8633"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="409.5" x2="235" y1="396.8633" y2="396.8633"/><polygon fill="#A80036" points="245,392.8633,235,396.8633,245,400.8633,241,396.8633" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="364.8633" y2="384.8633"/><polygon fill="#A80036" points="219,374.8633,223,384.8633,227,374.8633,223,378.8633" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="262.4922" y2="282.4922"/><polygon fill="#A80036" points="219,272.4922,223,282.4922,227,272.4922,223,276.4922" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="408.8633" y2="428.8633"/><polygon fill="#A80036" points="219,418.8633,223,428.8633,227,418.8633,223,422.8633" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="572.5112" y2="601.6089"/><polygon fill="#A80036" points="219,591.6089,223,601.6089,227,591.6089,223,595.6089" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="506.832" y2="538.5425"/><polygon fill="#A80036" points="219,528.5425,223,538.5425,227,528.5425,223,532.5425" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="635.5776" y2="645.5776"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="328.5" y1="645.5776" y2="645.5776"/><polygon fill="#A80036" points="324.5,581.6089,328.5,571.6089,332.5,581.6089,328.5,577.6089" style="stroke: #A80036; stroke-width: 1.5;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="328.5" x2="328.5" y1="494.832" y2="645.5776"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="328.5" x2="309.5" y1="494.832" y2="494.832"/><polygon fill="#A80036" points="319.5,490.832,309.5,494.832,319.5,498.832,315.5,494.832" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="136.5" x2="117.5" y1="494.832" y2="494.832"/><polygon fill="#A80036" points="113.5,567.6089,117.5,577.6089,121.5,567.6089,117.5,571.6089" style="stroke: #A80036; stroke-width: 1.5;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="117.5" x2="117.5" y1="494.832" y2="657.5776"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="117.5" x2="223" y1="657.5776" y2="657.5776"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="657.5776" y2="677.5776"/><polygon fill="#A80036" points="219,667.5776,223,677.5776,227,667.5776,223,671.5776" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="462.832" y2="482.832"/><polygon fill="#A80036" points="219,472.832,223,482.832,227,472.832,223,476.832" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="711.5464" y2="731.5464"/><polygon fill="#A80036" points="219,721.5464,223,731.5464,227,721.5464,223,725.5464" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="765.5151" y2="785.5151"/><polygon fill="#A80036" points="219,775.5151,223,785.5151,227,775.5151,223,779.5151" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[e791fbcd63d82ee7576d5a83cc605131]
2 2
@startuml
3 3

  
4 4
title **µRtWare**\nurtCoreStopNodes()\n
5 5

  
6 6

  
7 7
note
8
  - - //void// - -
8
  - - **reason** : urt_status_t - -
9
  The reason why the function was called.
10
  For normal shutdown ""URT_STATUS_OK"" should be used.
9 11
  ====
10 12
  - - **return** : urt_status_t - -
13
  Always returns ""URT_STATUS_OK"".
11 14
endnote
12 15

  
13 16

  
14 17
start
18
:lock core;
19
if (Current ""_status"" value is smaller than specified reason?) then (yes)
20
  :set core's ""_status"" value to argument;
21
else (no)
22
endif
23
:access first node in core's list of nodes;
24
while (Current node is not ""NULL""?) is (yes)
25
  :request node to terminate;
26
  :proceed to next node;
27
endwhile (no)
28
:broadcast control event (terminate);
29
:unlock core;
15 30
stop
31
note
32
  Returns ""URT_STATUS_OK"".
33
endnote
16 34

  
17 35

  
18 36
@enduml

Also available in: Unified diff