Revision 621aa0b6

View differences:

doc/activitydiagrams/core/urtCoreGetEventSource.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="248px" preserveAspectRatio="none" style="width:523px;height:248px;" version="1.1" viewBox="0 0 523 248" width="523px" zoomAndPan="magnify"><defs><filter height="300%" id="f1rbwp4ws1lf8i" 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="216" y="26.708">µRtWare</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="227" x="147" y="47.6611">urtCoreGetEventSource()</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="0" x="263.5" y="68.6143"/><path d="M205,72.8594 L205,153.3906 L511,153.3906 L511,82.8594 L501,72.8594 L205,72.8594 " fill="#FBFB77" filter="url(#f1rbwp4ws1lf8i)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M501,72.8594 L501,82.8594 L511,82.8594 L501,72.8594 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="205" x2="340.5" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="344.5" y="89.4263"/><text fill="#000000" font-family="sans-serif" font-size="13" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="27" x="344.5" y="89.4263">void</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="375.5" y="89.4263"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="375.5" x2="511" y1="85.4258" y2="85.4258"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="205" x2="511" y1="97.9922" y2="97.9922"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="205" x2="511" y1="99.9922" y2="99.9922"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="205" x2="255.5" y1="110.5586" y2="110.5586"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="259.5" y="114.5591"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="45" x="259.5" y="114.5591">return</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="148" x="308.5" y="114.5591">: urt_osEventSource_t*</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="460.5" x2="511" y1="110.5586" y2="110.5586"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="285" x="211" y="130.1919">Returns a pointer to the core's event source.</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="103" x="211" y="145.3247">Will never return</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="318" y="145.3247">NULL</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="350" y="145.3247">.</text><ellipse cx="358" cy="183.3906" fill="#000000" filter="url(#f1rbwp4ws1lf8i)" rx="10" ry="10" style="stroke: none; stroke-width: 1.0;"/><path d="M10,211.8242 L10,236.957 A0,0 0 0 0 10,236.957 L327,236.957 A0,0 0 0 0 327,236.957 L327,229.8242 L347,224.3906 L327,221.8242 L327,221.8242 L317,211.8242 L10,211.8242 A0,0 0 0 0 10,211.8242 " fill="#FBFB77" filter="url(#f1rbwp4ws1lf8i)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M317,211.8242 L317,221.8242 L327,221.8242 L317,211.8242 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="115" x="16" y="228.8911">Returns pointer to</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="80" x="135" y="228.8911">_evtSource</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="93" x="219" y="228.8911">static variable.</text><ellipse cx="358" cy="224.3906" fill="#FFFFFF" filter="url(#f1rbwp4ws1lf8i)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="358" cy="224.3906" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="358" x2="358" y1="153.3906" y2="173.3906"/><polygon fill="#A80036" points="354,163.3906,358,173.3906,362,163.3906,358,167.3906" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="358" x2="358" y1="193.3906" y2="213.3906"/><polygon fill="#A80036" points="354,203.3906,358,213.3906,362,203.3906,358,207.3906" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[4061d537ea802e172427e3ae34b7d33d]
2
@startuml
3

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

  
6

  
7
note
8
  - - //void// - -
9
  ====
10
  - - **return** : urt_osEventSource_t* - -
11
  Returns a pointer to the core's event source.
12
  Will never return ""NULL"".
13
endnote
14

  
15

  
16
start
17
stop
18
note
19
  Returns pointer to ""_evtSource"" static variable.
20
endnote
21

  
22

  
23
@enduml
24

  
25
PlantUML version 1.2020.00(Sat Jan 11 13:30:53 CET 2020)
26
(GPL source distribution)
27
Java Runtime: OpenJDK Runtime Environment
28
JVM: OpenJDK 64-Bit Server VM
29
Java Version: 11.0.7+10-post-Ubuntu-2ubuntu218.04
30
Operating System: Linux
31
Default Encoding: UTF-8
32
Language: en
33
Country: US
34
--></g></svg>
doc/activitydiagrams/core/urtCoreGetEventSource.uml
1
/'
2
µRtWare is a lightweight publish/subscribe middleware for real-time
3
applications. It was developed as part of the software habitat for the
4
Autonomous Mini Robot [1] (AMiRo) but can be used for other purposes as well.
5

  
6
Copyright (C) 2018..2020  Thomas Schöpping et al.
7

  
8
This program is free software: you can redistribute it and/or modify
9
it under the terms of the GNU General Public License as published by
10
the Free Software Foundation, either version 3 of the License, or
11
(at your option) any later version.
12

  
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
GNU General Public License for more details.
17

  
18
You should have received a copy of the GNU General Public License
19
along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
'/
21

  
22
/'### INTRO ##################################################################'/
23

  
24
@startuml
25

  
26
title **µRtWare**\nurtCoreGetEventSource()\n
27

  
28
/'### PARAMETERS & RETURN ####################################################'/
29

  
30
note
31
  -- //void// --
32
  ====
33
  -- **return** : urt_osEventSource_t* --
34
  Returns a pointer to the core's event source.
35
  Will never return ""NULL"".
36
endnote
37

  
38
/'### PROCEDURE ##############################################################'/
39

  
40
start
41
stop
42
note
43
  Returns pointer to ""_evtSource"" static variable.
44
endnote
45

  
46
/'### OUTRO ##################################################################'/
47

  
48
@enduml
doc/activitydiagrams/core/urtCoreGetMutex.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="248px" preserveAspectRatio="none" style="width:476px;height:248px;" version="1.1" viewBox="0 0 476 248" width="476px" zoomAndPan="magnify"><defs><filter height="300%" id="f1p16lxz9od5sc" 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="192.75" y="26.708">µRtWare</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="171" x="151.75" y="47.6611">urtCoreGetMutex()</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="0" x="240.25" y="68.6143"/><path d="M171.5,72.8594 L171.5,153.3906 L464.5,153.3906 L464.5,82.8594 L454.5,72.8594 L171.5,72.8594 " fill="#FBFB77" filter="url(#f1p16lxz9od5sc)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M454.5,72.8594 L454.5,82.8594 L464.5,82.8594 L454.5,72.8594 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="171.5" x2="300.5" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="304.5" y="89.4263"/><text fill="#000000" font-family="sans-serif" font-size="13" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="27" x="304.5" y="89.4263">void</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="335.5" y="89.4263"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="335.5" x2="464.5" y1="85.4258" y2="85.4258"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="171.5" x2="464.5" y1="97.9922" y2="97.9922"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="171.5" x2="464.5" y1="99.9922" y2="99.9922"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="171.5" x2="236.5" y1="110.5586" y2="110.5586"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="240.5" y="114.5591"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="45" x="240.5" y="114.5591">return</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="106" x="289.5" y="114.5591">: urt_osMutex_t*</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="399.5" x2="464.5" y1="110.5586" y2="110.5586"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="272" x="177.5" y="130.1919">Returns a pointer to the core's mutex lock.</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="103" x="177.5" y="145.3247">Will never return</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="284.5" y="145.3247">NULL</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="316.5" y="145.3247">.</text><ellipse cx="318" cy="183.3906" fill="#000000" filter="url(#f1p16lxz9od5sc)" rx="10" ry="10" style="stroke: none; stroke-width: 1.0;"/><path d="M10,211.8242 L10,236.957 A0,0 0 0 0 10,236.957 L287,236.957 A0,0 0 0 0 287,236.957 L287,229.8242 L307,224.3906 L287,221.8242 L287,221.8242 L277,211.8242 L10,211.8242 A0,0 0 0 0 10,211.8242 " fill="#FBFB77" filter="url(#f1p16lxz9od5sc)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M277,211.8242 L277,221.8242 L287,221.8242 L277,211.8242 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="115" x="16" y="228.8911">Returns pointer to</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="40" x="135" y="228.8911">_lock</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="93" x="179" y="228.8911">static variable.</text><ellipse cx="318" cy="224.3906" fill="#FFFFFF" filter="url(#f1p16lxz9od5sc)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="318" cy="224.3906" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="318" x2="318" y1="153.3906" y2="173.3906"/><polygon fill="#A80036" points="314,163.3906,318,173.3906,322,163.3906,318,167.3906" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="318" x2="318" y1="193.3906" y2="213.3906"/><polygon fill="#A80036" points="314,203.3906,318,213.3906,322,203.3906,318,207.3906" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[06bc3db2030929c034def7a76ec8eadc]
2
@startuml
3

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

  
6

  
7
note
8
  - - //void// - -
9
  ====
10
  - - **return** : urt_osMutex_t* - -
11
  Returns a pointer to the core's mutex lock.
12
  Will never return ""NULL"".
13
endnote
14

  
15

  
16
start
17
stop
18
note
19
  Returns pointer to ""_lock"" static variable.
20
endnote
21

  
22

  
23
@enduml
24

  
25
PlantUML version 1.2020.00(Sat Jan 11 13:30:53 CET 2020)
26
(GPL source distribution)
27
Java Runtime: OpenJDK Runtime Environment
28
JVM: OpenJDK 64-Bit Server VM
29
Java Version: 11.0.7+10-post-Ubuntu-2ubuntu218.04
30
Operating System: Linux
31
Default Encoding: UTF-8
32
Language: en
33
Country: US
34
--></g></svg>
doc/activitydiagrams/core/urtCoreGetMutex.uml
1
/'
2
µRtWare is a lightweight publish/subscribe middleware for real-time
3
applications. It was developed as part of the software habitat for the
4
Autonomous Mini Robot [1] (AMiRo) but can be used for other purposes as well.
5

  
6
Copyright (C) 2018..2020  Thomas Schöpping et al.
7

  
8
This program is free software: you can redistribute it and/or modify
9
it under the terms of the GNU General Public License as published by
10
the Free Software Foundation, either version 3 of the License, or
11
(at your option) any later version.
12

  
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
GNU General Public License for more details.
17

  
18
You should have received a copy of the GNU General Public License
19
along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
'/
21

  
22
/'### INTRO ##################################################################'/
23

  
24
@startuml
25

  
26
title **µRtWare**\nurtCoreGetMutex()\n
27

  
28
/'### PARAMETERS & RETURN ####################################################'/
29

  
30
note
31
  -- //void// --
32
  ====
33
  -- **return** : urt_osMutex_t* --
34
  Returns a pointer to the core's mutex lock.
35
  Will never return ""NULL"".
36
endnote
37

  
38
/'### PROCEDURE ##############################################################'/
39

  
40
start
41
stop
42
note
43
  Returns pointer to ""_lock"" static variable.
44
endnote
45

  
46
/'### OUTRO ##################################################################'/
47

  
48
@enduml
doc/classdiagrams/urtware.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="1134px" preserveAspectRatio="none" style="width:10337px;height:1134px;" version="1.1" viewBox="0 0 10337 1134" width="10337px" zoomAndPan="magnify"><defs><filter height="300%" id="f1rypo70thvq1p" 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="5126" y="16.708">µRtWare</text><!--MD5=[b9de0669a29c7bc934fd916b09c39491]
2
cluster node--><rect fill="#FFFFFF" filter="url(#f1rypo70thvq1p)" height="443" style="stroke: #000000; stroke-width: 1.5;" width="1674" x="5349" y="441.4531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="40" x="6166" y="456.4482">node</text><!--MD5=[d74e2ef346f73688f9378f6d3d42598c]
3
cluster Publish-Subscribe System--><polygon fill="#FFFFFF" filter="url(#f1rypo70thvq1p)" points="14,400.4531,24,390.4531,5341,390.4531,5341,1112.9531,5331,1122.9531,14,1122.9531,14,400.4531" style="stroke: #000000; stroke-width: 1.5;"/><line style="stroke: #000000; stroke-width: 1.5;" x1="5331" x2="5340" y1="400.4531" y2="391.4531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="14" x2="5331" y1="400.4531" y2="400.4531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="5331" x2="5331" y1="400.4531" y2="1122.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="205" x="2571" y="416.4482">Publish-Subscribe System</text><!--MD5=[16a3bbbe805f94d6e6ce317c08ab945e]
4
cluster subscriber--><rect fill="#FFFFFF" filter="url(#f1rypo70thvq1p)" height="498.5" style="stroke: #000000; stroke-width: 1.5;" width="4062" x="1271" y="422.4531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="85" x="3259.5" y="437.4482">subscriber</text><!--MD5=[810d0f07e53ef611b6d803ef30301147]
5
cluster Remote Procedure Call System--><polygon fill="#FFFFFF" filter="url(#f1rypo70thvq1p)" points="7031,47.4531,7041,37.4531,10315,37.4531,10315,716.9531,10305,726.9531,7031,726.9531,7031,47.4531" style="stroke: #000000; stroke-width: 1.5;"/><line style="stroke: #000000; stroke-width: 1.5;" x1="10305" x2="10314" y1="47.4531" y2="38.4531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="7031" x2="10305" y1="47.4531" y2="47.4531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="10305" x2="10305" y1="47.4531" y2="726.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="244" x="8547" y="63.4482">Remote Procedure Call System</text><!--MD5=[ecaf13b018fb9788c80013f5b3634b61]
6
cluster request--><rect fill="#FFFFFF" filter="url(#f1rypo70thvq1p)" height="621.5" style="stroke: #000000; stroke-width: 1.5;" width="2646" x="7661" y="69.4531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="62" x="8953" y="84.4482">request</text><!--MD5=[a7dea26996a1231aa68629b332780450]
7
class urt_nodeSetupCallback_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="60.8047" id="urt_nodeSetupCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="456" x="5357" y="815.4531"/><ellipse cx="5502.75" cy="831.4531" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M5503.5938,838.2031 L5501.1406,838.2031 L5501.1406,827.9531 L5498,827.9531 L5498,825.8125 L5506.7344,825.8125 L5506.7344,827.9531 L5503.5938,827.9531 L5503.5938,838.2031 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="156" x="5523.25" y="835.6074">urt_nodeSetupCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5358" x2="5812" y1="847.4531" y2="847.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5358" x2="5812" y1="855.4531" y2="855.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="444" x="5363" y="869.6636">urt_nodeSetupCallback_t (node : urt_node_t*, arg : void*) : urt_osEventMask_t</text><!--MD5=[7f869e17e281b89d59a4c09e0f22c3af]
8
class urt_nodeLoopCallback_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="60.8047" id="urt_nodeLoopCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="614" x="5848" y="815.4531"/><ellipse cx="6076.25" cy="831.4531" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6077.0938,838.2031 L6074.6406,838.2031 L6074.6406,827.9531 L6071.5,827.9531 L6071.5,825.8125 L6080.2344,825.8125 L6080.2344,827.9531 L6077.0938,827.9531 L6077.0938,838.2031 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="149" x="6096.75" y="835.6074">urt_nodeLoopCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5849" x2="6461" y1="847.4531" y2="847.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5849" x2="6461" y1="855.4531" y2="855.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="602" x="5854" y="869.6636">urt_nodeLoopCallback_t (node : urt_node_t*, events : urt_osEventMask_t, arg : void*) : urt_osEventMask_t</text><!--MD5=[843db13320bebc2ca47f25c6a57c2ae5]
9
class urt_nodeShutdownCallback_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="60.8047" id="urt_nodeShutdownCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="518" x="6497" y="815.4531"/><ellipse cx="6661.25" cy="831.4531" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6662.0938,838.2031 L6659.6406,838.2031 L6659.6406,827.9531 L6656.5,827.9531 L6656.5,825.8125 L6665.2344,825.8125 L6665.2344,827.9531 L6662.0938,827.9531 L6662.0938,838.2031 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="181" x="6681.75" y="835.6074">urt_nodeShutdownCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="6498" x2="7014" y1="847.4531" y2="847.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="6498" x2="7014" y1="855.4531" y2="855.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="506" x="6503" y="869.6636">urt_nodeShutdownCallback_t (node : urt_node_t*, cause : urt_status_t, arg : void*) : void</text><!--MD5=[d2563153d77472384a15c07b815d639f]
10
class urt_node_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="231.2656" id="urt_node_t" style="stroke: #A80036; stroke-width: 1.5;" width="1541" x="5384.5" y="468.4531"/><ellipse cx="6117.25" cy="484.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6116.7344,485.0156 Q6114.875,484.3125 6114.2188,483.5469 Q6113.5781,482.7656 6113.5781,481.4531 Q6113.5781,479.7656 6114.6563,478.7969 Q6115.7344,477.8281 6117.6094,477.8281 Q6118.4688,477.8281 6119.3125,478.0313 Q6120.1719,478.2188 6121.0156,478.6094 L6121.0156,481 Q6120.2344,480.4375 6119.4063,480.1563 Q6118.5938,479.8594 6117.7969,479.8594 Q6116.9219,479.8594 6116.4375,480.2188 Q6115.9688,480.5781 6115.9688,481.2344 Q6115.9688,481.75 6116.3125,482.0938 Q6116.6563,482.4219 6117.75,482.8281 L6118.8125,483.2344 Q6120.2969,483.7813 6121,484.6875 Q6121.7188,485.5938 6121.7188,486.9688 Q6121.7188,488.8438 6120.6094,489.7656 Q6119.5,490.6875 6117.25,490.6875 Q6116.3281,490.6875 6115.4063,490.4688 Q6114.4844,490.25 6113.625,489.8281 L6113.625,487.2969 Q6114.5938,487.9844 6115.5156,488.3281 Q6116.4375,488.6719 6117.3281,488.6719 Q6118.2344,488.6719 6118.7344,488.2656 Q6119.2344,487.8438 6119.2344,487.1094 Q6119.2344,486.5469 6118.8906,486.1406 Q6118.5625,485.7188 6117.9375,485.4688 L6116.7344,485.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="67" x="6137.75" y="488.6074">urt_node_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5385.5" x2="6924.5" y1="500.4531" y2="500.4531"/><ellipse cx="5395.5" cy="511.4531" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="102" x="5404.5" y="514.6636">next : urt_node_t*</text><ellipse cx="5395.5" cy="524.2578" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="141" x="5404.5" y="527.4683">thread : urt_osThread_t*</text><ellipse cx="5395.5" cy="537.0625" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="235" x="5404.5" y="540.2729">setupcallback : urt_nodeSetupCallback_t*</text><ellipse cx="5395.5" cy="549.8672" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="117" x="5404.5" y="553.0776">setupparams : void*</text><ellipse cx="5395.5" cy="562.6719" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="221" x="5404.5" y="565.8823">loopcallback : urt_nodeLoopCallback_t*</text><ellipse cx="5395.5" cy="575.4766" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="109" x="5404.5" y="578.687">loopparams : void*</text><ellipse cx="5395.5" cy="588.2813" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="281" x="5404.5" y="591.4917">shutdowncallback : urt_nodeShutdownCallback_t*</text><ellipse cx="5395.5" cy="601.0859" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="140" x="5404.5" y="604.2964">shutdownparams : void*</text><ellipse cx="5395.5" cy="613.8906" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="136" x="5404.5" y="617.1011">stage : urt_nodestage_t</text><ellipse cx="5395.5" cy="626.6953" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="178" x="5404.5" y="629.9058">listener : urt_osEventListener_t</text><ellipse cx="5395.5" cy="656.3047" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="88" x="5404.5" y="659.5151">loops : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5385.5" x2="5947" y1="642.9023" y2="642.9023"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="416" x="5947" y="646.2104">URT_CFG_PUBSUB_PROFILING == true || URT_CFG_RPC_PROFILING = true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6363" x2="6924.5" y1="642.9023" y2="642.9023"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5385.5" x2="6924.5" y1="666.1094" y2="666.1094"/><rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5392.5" y="674.1094"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="179" x="5404.5" y="680.3198">_main : urt_osThreadFunction_t</text><ellipse cx="5395.5" cy="689.9141" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="1515" x="5404.5" y="693.1245">urtNodeInit (node : urt_node_t*, thread : urt_osThread_t*, setupcallback : urt_nodeSetupCallback_t*, setupparams : void*, loopcallback : urt_nodeLoopCallback_t*, loopparams : void*, shutdowncallback : urt_nodeShutdownCallback_t*, shutodwnparams : void*) : void</text><!--MD5=[e602aa6d45f270ad04f88c9ca5352b33]
11
class urt_message_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="141.6328" id="urt_message_t" style="stroke: #A80036; stroke-width: 1.5;" width="406" x="830" y="972.9531"/><ellipse cx="982.75" cy="988.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M982.2344,989.5156 Q980.375,988.8125 979.7188,988.0469 Q979.0781,987.2656 979.0781,985.9531 Q979.0781,984.2656 980.1563,983.2969 Q981.2344,982.3281 983.1094,982.3281 Q983.9688,982.3281 984.8125,982.5313 Q985.6719,982.7188 986.5156,983.1094 L986.5156,985.5 Q985.7344,984.9375 984.9063,984.6563 Q984.0938,984.3594 983.2969,984.3594 Q982.4219,984.3594 981.9375,984.7188 Q981.4688,985.0781 981.4688,985.7344 Q981.4688,986.25 981.8125,986.5938 Q982.1563,986.9219 983.25,987.3281 L984.3125,987.7344 Q985.7969,988.2813 986.5,989.1875 Q987.2188,990.0938 987.2188,991.4688 Q987.2188,993.3438 986.1094,994.2656 Q985,995.1875 982.75,995.1875 Q981.8281,995.1875 980.9063,994.9688 Q979.9844,994.75 979.125,994.3281 L979.125,991.7969 Q980.0938,992.4844 981.0156,992.8281 Q981.9375,993.1719 982.8281,993.1719 Q983.7344,993.1719 984.2344,992.7656 Q984.7344,992.3438 984.7344,991.6094 Q984.7344,991.0469 984.3906,990.6406 Q984.0625,990.2188 983.4375,989.9688 L982.2344,989.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="92" x="1003.25" y="993.1074">urt_message_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="831" x2="1235" y1="1004.9531" y2="1004.9531"/><ellipse cx="841" cy="1015.9531" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="127" x="850" y="1019.1636">next : urt_message_t*</text><ellipse cx="841" cy="1028.7578" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="85" x="850" y="1031.9683">payload : void*</text><ellipse cx="841" cy="1041.5625" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="146" x="850" y="1044.7729">originTime : urt_osTime_t</text><ellipse cx="841" cy="1054.3672" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="211" x="850" y="1057.5776">numHrtConsumersLeft : unsigned int</text><ellipse cx="841" cy="1083.9766" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="194" x="850" y="1087.187">numConsumersLeft : unsigned int</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="831" x2="924.5" y1="1070.5742" y2="1070.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="924.5" y="1073.8823">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1141.5" x2="1235" y1="1070.5742" y2="1070.5742"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="831" x2="1235" y1="1093.7813" y2="1093.7813"/><ellipse cx="841" cy="1104.7813" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="380" x="850" y="1107.9917">urtMessageInit (message : urt_message_t*, payload : void*) : void</text><!--MD5=[2ac85a9c1cceb8bb0c9045edc105e6e3]
12
class urt_publisher_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="128.8281" id="urt_publisher_t" style="stroke: #A80036; stroke-width: 1.5;" width="783" x="22.5" y="519.4531"/><ellipse cx="363.25" cy="535.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M362.7344,536.0156 Q360.875,535.3125 360.2188,534.5469 Q359.5781,533.7656 359.5781,532.4531 Q359.5781,530.7656 360.6563,529.7969 Q361.7344,528.8281 363.6094,528.8281 Q364.4688,528.8281 365.3125,529.0313 Q366.1719,529.2188 367.0156,529.6094 L367.0156,532 Q366.2344,531.4375 365.4063,531.1563 Q364.5938,530.8594 363.7969,530.8594 Q362.9219,530.8594 362.4375,531.2188 Q361.9688,531.5781 361.9688,532.2344 Q361.9688,532.75 362.3125,533.0938 Q362.6563,533.4219 363.75,533.8281 L364.8125,534.2344 Q366.2969,534.7813 367,535.6875 Q367.7188,536.5938 367.7188,537.9688 Q367.7188,539.8438 366.6094,540.7656 Q365.5,541.6875 363.25,541.6875 Q362.3281,541.6875 361.4063,541.4688 Q360.4844,541.25 359.625,540.8281 L359.625,538.2969 Q360.5938,538.9844 361.5156,539.3281 Q362.4375,539.6719 363.3281,539.6719 Q364.2344,539.6719 364.7344,539.2656 Q365.2344,538.8438 365.2344,538.1094 Q365.2344,537.5469 364.8906,537.1406 Q364.5625,536.7188 363.9375,536.4688 L362.7344,536.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="93" x="383.75" y="539.6074">urt_publisher_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="23.5" x2="804.5" y1="551.4531" y2="551.4531"/><ellipse cx="33.5" cy="562.4531" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="104" x="42.5" y="565.6636">topic : urt_topic_t*</text><ellipse cx="33.5" cy="592.0625" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="149" x="42.5" y="595.2729">publishAttempts : uint64_t</text><ellipse cx="33.5" cy="604.8672" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="124" x="42.5" y="608.0776">publishFails : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="23.5" x2="305.5" y1="578.6602" y2="578.6602"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="305.5" y="581.9683">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="522.5" x2="804.5" y1="578.6602" y2="578.6602"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="23.5" x2="804.5" y1="614.6719" y2="614.6719"/><ellipse cx="33.5" cy="625.6719" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="572" x="42.5" y="628.8823">urtPublisherInit (publisher : urt_publisher_t*, topic : urt_topic_t*, messages : urt_message_t*) : void</text><ellipse cx="33.5" cy="638.4766" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="757" x="42.5" y="641.687">urtPublisherPublish (publisher : urt_publisher_t*, payload : void*, bytes : size_t, t : urt_osTime_t, timeout : urt_delay_t) : urt_status_t</text><!--MD5=[a1b1e66ec52c209a9fa2dab315cd7630]
13
class urt_topic_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="260.875" id="urt_topic_t" style="stroke: #A80036; stroke-width: 1.5;" width="384" x="841" y="453.4531"/><ellipse cx="995.75" cy="469.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M995.2344,470.0156 Q993.375,469.3125 992.7188,468.5469 Q992.0781,467.7656 992.0781,466.4531 Q992.0781,464.7656 993.1563,463.7969 Q994.2344,462.8281 996.1094,462.8281 Q996.9688,462.8281 997.8125,463.0313 Q998.6719,463.2188 999.5156,463.6094 L999.5156,466 Q998.7344,465.4375 997.9063,465.1563 Q997.0938,464.8594 996.2969,464.8594 Q995.4219,464.8594 994.9375,465.2188 Q994.4688,465.5781 994.4688,466.2344 Q994.4688,466.75 994.8125,467.0938 Q995.1563,467.4219 996.25,467.8281 L997.3125,468.2344 Q998.7969,468.7813 999.5,469.6875 Q1000.2188,470.5938 1000.2188,471.9688 Q1000.2188,473.8438 999.1094,474.7656 Q998,475.6875 995.75,475.6875 Q994.8281,475.6875 993.9063,475.4688 Q992.9844,475.25 992.125,474.8281 L992.125,472.2969 Q993.0938,472.9844 994.0156,473.3281 Q994.9375,473.6719 995.8281,473.6719 Q996.7344,473.6719 997.2344,473.2656 Q997.7344,472.8438 997.7344,472.1094 Q997.7344,471.5469 997.3906,471.1406 Q997.0625,470.7188 996.4375,470.4688 L995.2344,470.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="1016.25" y="473.6074">urt_topic_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="842" x2="1224" y1="485.4531" y2="485.4531"/><ellipse cx="852" cy="496.4531" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="101" x="861" y="499.6636">next : urt_topic_t*</text><ellipse cx="852" cy="509.2578" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="91" x="861" y="512.4683">id : urt_topicid_t</text><ellipse cx="852" cy="522.0625" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="113" x="861" y="525.2729">lock : urt_osMutex_t</text><ellipse cx="852" cy="534.8672" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="186" x="861" y="538.0776">evtSource : urt_osEventSource_t</text><ellipse cx="852" cy="547.6719" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="193" x="861" y="550.8823">numHrtSubscribers : unsigned int</text><ellipse cx="852" cy="560.4766" fill="none" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text