urtware / doc / activitydiagrams / request / frtrequest / urtFrtRequestAcquire.svg @ 03ed5026
History | View | Annotate | Download (11.096 KB)
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="421px" preserveAspectRatio="none" style="width:782px;height:421px;" version="1.1" viewBox="0 0 782 421" width="782px" zoomAndPan="magnify"><defs><filter height="300%" id="f1gbl90iinqcbe" 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="345.75" y="26.708">µRtWare</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="204" x="288.25" y="47.6611">urtFrtRequestAcquire()</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="0" x="393.25" y="68.6143"/><path d="M189.5,72.8594 L189.5,183.6563 L770.5,183.6563 L770.5,82.8594 L760.5,72.8594 L189.5,72.8594 " fill="#FBFB77" filter="url(#f1gbl90iinqcbe)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M760.5,72.8594 L760.5,82.8594 L770.5,82.8594 L760.5,72.8594 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="189.5" x2="388" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="392" y="89.4263"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="57" x="392" y="89.4263">request</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="115" x="453" y="89.4263">: urt_frtrequest_t*</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="572" x2="770.5" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="202" x="195.5" y="105.0591">The FRT request to be acquired.</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="76" x="195.5" y="120.1919">Must not be</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="275.5" y="120.1919">NULL</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="307.5" y="120.1919">.</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="189.5" x2="770.5" y1="128.2578" y2="128.2578"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="189.5" x2="770.5" y1="130.2578" y2="130.2578"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="189.5" x2="409" y1="140.8242" y2="140.8242"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="413" y="144.8247"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="45" x="413" y="144.8247">return</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="85" x="462" y="144.8247">: urt_status_t</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="551" x2="770.5" y1="140.8242" y2="140.8242"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="195.5" y="160.4575">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="248.5" y="160.4575">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="120" x="356.5" y="160.4575">in case of success.</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="195.5" y="175.5903">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="216" x="248.5" y="175.5903">URT_STATUS_REQUEST_BADOWNER</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="287" x="468.5" y="175.5903">if the request is aloready owned by a service.</text><ellipse cx="480" cy="213.6563" fill="#000000" filter="url(#f1gbl90iinqcbe)" rx="10" ry="10" style="stroke: none; stroke-width: 1.0;"/><path d="M122,248.0742 L122,273.207 A0,0 0 0 0 122,273.207 L411,273.207 A0,0 0 0 0 411,273.207 L411,266.0742 L431,260.6406 L411,258.0742 L411,258.0742 L401,248.0742 L122,248.0742 A0,0 0 0 0 122,248.0742 " fill="#FBFB77" filter="url(#f1gbl90iinqcbe)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M401,248.0742 L401,258.0742 L411,258.0742 L401,248.0742 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="268" x="128" y="265.1411">Execution is blocked until mutex is locked.</text><rect fill="#FEFECE" filter="url(#f1gbl90iinqcbe)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="98" x="431" y="243.6563"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="78" x="441" y="264.7949">lock request</text><polygon fill="#FEFECE" filter="url(#f1gbl90iinqcbe)" points="390,297.625,570,297.625,582,309.625,570,321.625,390,321.625,378,309.625,390,297.625" style="stroke: #A80036; stroke-width: 1.5;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="180" x="390" y="313.4331">Request is owned by a service?</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="20" x="358" y="307.0308">yes</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="14" x="582" y="307.0308">no</text><rect fill="#FEFECE" filter="url(#f1gbl90iinqcbe)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="114" x="278" y="331.625"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="94" x="288" y="352.7637">unlock request</text><path d="M10,384.0273 L10,409.1602 A0,0 0 0 0 10,409.1602 L304,409.1602 A0,0 0 0 0 304,409.1602 L304,402.0273 L324,396.5938 L304,394.0273 L304,394.0273 L294,384.0273 L10,384.0273 A0,0 0 0 0 10,384.0273 " fill="#FBFB77" filter="url(#f1gbl90iinqcbe)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M294,384.0273 L294,394.0273 L304,394.0273 L294,384.0273 " 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="401.0942">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="216" x="69" y="401.0942">URT_STATUS_REQUEST_BADOWNER</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="285" y="401.0942">.</text><ellipse cx="335" cy="396.5938" fill="#FFFFFF" filter="url(#f1gbl90iinqcbe)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="335" cy="396.5938" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><path d="M412,331.625 L412,356.7578 A0,0 0 0 0 412,356.7578 L594,356.7578 A0,0 0 0 0 594,356.7578 L594,349.625 L614,344.1914 L594,341.625 L594,341.625 L584,331.625 L412,331.625 A0,0 0 0 0 412,331.625 " fill="#FBFB77" filter="url(#f1gbl90iinqcbe)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M584,331.625 L584,341.625 L594,341.625 L584,331.625 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="418" y="348.6919">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="471" y="348.6919">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="575" y="348.6919">.</text><ellipse cx="625" cy="344.1914" fill="#FFFFFF" filter="url(#f1gbl90iinqcbe)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="625" cy="344.1914" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="480" x2="480" y1="183.6563" y2="203.6563"/><polygon fill="#A80036" points="476,193.6563,480,203.6563,484,193.6563,480,197.6563" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="480" x2="480" y1="223.6563" y2="243.6563"/><polygon fill="#A80036" points="476,233.6563,480,243.6563,484,233.6563,480,237.6563" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="335" x2="335" y1="365.5938" y2="385.5938"/><polygon fill="#A80036" points="331,375.5938,335,385.5938,339,375.5938,335,379.5938" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="378" x2="335" y1="309.625" y2="309.625"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="335" x2="335" y1="309.625" y2="331.625"/><polygon fill="#A80036" points="331,321.625,335,331.625,339,321.625,335,325.625" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="582" x2="625" y1="309.625" y2="309.625"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="625" x2="625" y1="309.625" y2="333.1914"/><polygon fill="#A80036" points="621,323.1914,625,333.1914,629,323.1914,625,327.1914" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="480" x2="480" y1="277.625" y2="297.625"/><polygon fill="#A80036" points="476,287.625,480,297.625,484,287.625,480,291.625" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[d9a94f0468e46b67092d7b1e76c19955] |
---|---|
2 |
@startuml |
3 |
|
4 |
title **µRtWare**\nurtFrtRequestAcquire()\n |
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
note |
12 |
- - **request** : urt_frtrequest_t* - - |
13 |
The FRT request to be acquired. |
14 |
Must not be ""NULL"". |
15 |
==== |
16 |
- - **return** : urt_status_t - - |
17 |
Returns ""URT_STATUS_OK"" in case of success. |
18 |
Returns ""URT_STATUS_REQUEST_BADOWNER"" if the request is aloready owned by a service. |
19 |
endnote |
20 |
|
21 |
|
22 |
start |
23 |
:lock request; |
24 |
note |
25 |
Execution is blocked until mutex is locked. |
26 |
endnote |
27 |
if (Request is owned by a service?) then (yes) |
28 |
:unlock request; |
29 |
stop |
30 |
note |
31 |
Returns ""URT_STATUS_REQUEST_BADOWNER"". |
32 |
endnote |
33 |
else (no) |
34 |
stop |
35 |
note |
36 |
Returns ""URT_STATUS_OK"". |
37 |
endnote |
38 |
endif |
39 |
|
40 |
|
41 |
@enduml |
42 |
|
43 |
PlantUML version 1.2020.00(Sat Jan 11 13:30:53 CET 2020) |
44 |
(GPL source distribution) |
45 |
Java Runtime: OpenJDK Runtime Environment |
46 |
JVM: OpenJDK 64-Bit Server VM |
47 |
Java Version: 11.0.7+10-post-Ubuntu-2ubuntu218.04 |
48 |
Operating System: Linux |
49 |
Default Encoding: UTF-8 |
50 |
Language: en |
51 |
Country: US |
52 |
--></g></svg> |