commit 2d31587003068f754f1c662c620964cbdd99750f
Author: Thomas Schöpping <tschoepp@cit-ec.uni-bielefeld.de>
Date:   Mon May 11 13:10:28 2020 +0200

    Documentation massively overhauled:
    - Remote Procedure Call system massively reworked.
    - Component diagram slightly enhanced.
    - Several fixes.

diff --git a/doc/classdiagrams/urtware.svg b/doc/classdiagrams/urtware.svg
index 0cbb4c7..d33ce09 100644
--- a/doc/classdiagrams/urtware.svg
+++ b/doc/classdiagrams/urtware.svg
@@ -1,52 +1,63 @@
-<?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="872px" preserveAspectRatio="none" style="width:7729px;height:872px;" version="1.1" viewBox="0 0 7729 872" width="7729px" zoomAndPan="magnify"><defs><filter height="300%" id="f809dau48hy9h" 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="3822.5" y="16.708">µRtWare</text><!--MD5=[b9de0669a29c7bc934fd916b09c39491]
-cluster node--><rect fill="#FFFFFF" filter="url(#f809dau48hy9h)" height="446.5" style="stroke: #000000; stroke-width: 1.5;" width="1674" x="5389" y="369.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="40" x="6206" y="384.9482">node</text><!--MD5=[d74e2ef346f73688f9378f6d3d42598c]
-cluster Publish-Subscribe System--><polygon fill="#FFFFFF" filter="url(#f809dau48hy9h)" points="14,328.9531,24,318.9531,5381,318.9531,5381,850.9531,5371,860.9531,14,860.9531,14,328.9531" style="stroke: #000000; stroke-width: 1.5;"/><line style="stroke: #000000; stroke-width: 1.5;" x1="5371" x2="5380" y1="328.9531" y2="319.9531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="14" x2="5371" y1="328.9531" y2="328.9531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="5371" x2="5371" y1="328.9531" y2="860.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="205" x="2591" y="344.9482">Publish-Subscribe System</text><!--MD5=[16a3bbbe805f94d6e6ce317c08ab945e]
-cluster subscriber--><rect fill="#FFFFFF" filter="url(#f809dau48hy9h)" height="502" style="stroke: #000000; stroke-width: 1.5;" width="4102" x="1271" y="350.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="85" x="3279.5" y="365.9482">subscriber</text><!--MD5=[810d0f07e53ef611b6d803ef30301147]
-cluster Remote Procedure Call System--><polygon fill="#FFFFFF" filter="url(#f809dau48hy9h)" points="7071,387.4531,7081,377.4531,7707,377.4531,7707,806.4531,7697,816.4531,7071,816.4531,7071,387.4531" style="stroke: #000000; stroke-width: 1.5;"/><line style="stroke: #000000; stroke-width: 1.5;" x1="7697" x2="7706" y1="387.4531" y2="378.4531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="7071" x2="7697" y1="387.4531" y2="387.4531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="7697" x2="7697" y1="387.4531" y2="816.4531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="244" x="7263" y="403.4482">Remote Procedure Call System</text><!--MD5=[a7dea26996a1231aa68629b332780450]
-class urt_nodeSetupCallback_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="60.8047" id="urt_nodeSetupCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="456" x="5950" y="747.4531"/><ellipse cx="6095.75" cy="763.4531" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6096.5938,770.2031 L6094.1406,770.2031 L6094.1406,759.9531 L6091,759.9531 L6091,757.8125 L6099.7344,757.8125 L6099.7344,759.9531 L6096.5938,759.9531 L6096.5938,770.2031 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="156" x="6116.25" y="767.6074">urt_nodeSetupCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5951" x2="6405" y1="779.4531" y2="779.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5951" x2="6405" y1="787.4531" y2="787.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="444" x="5956" y="801.6636">urt_nodeSetupCallback_t (node : urt_node_t*, arg : void*) : urt_osEventMask_t</text><!--MD5=[7f869e17e281b89d59a4c09e0f22c3af]
-class urt_nodeLoopCallback_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="60.8047" id="urt_nodeLoopCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="614" x="6441" y="747.4531"/><ellipse cx="6669.25" cy="763.4531" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6670.0938,770.2031 L6667.6406,770.2031 L6667.6406,759.9531 L6664.5,759.9531 L6664.5,757.8125 L6673.2344,757.8125 L6673.2344,759.9531 L6670.0938,759.9531 L6670.0938,770.2031 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="149" x="6689.75" y="767.6074">urt_nodeLoopCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="6442" x2="7054" y1="779.4531" y2="779.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="6442" x2="7054" y1="787.4531" y2="787.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="602" x="6447" y="801.6636">urt_nodeLoopCallback_t (node : urt_node_t*, events : urt_osEventMask_t, arg : void*) : urt_osEventMask_t</text><!--MD5=[843db13320bebc2ca47f25c6a57c2ae5]
-class urt_nodeShutdownCallback_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="60.8047" id="urt_nodeShutdownCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="518" x="5397" y="747.4531"/><ellipse cx="5561.25" cy="763.4531" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M5562.0938,770.2031 L5559.6406,770.2031 L5559.6406,759.9531 L5556.5,759.9531 L5556.5,757.8125 L5565.2344,757.8125 L5565.2344,759.9531 L5562.0938,759.9531 L5562.0938,770.2031 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="181" x="5581.75" y="767.6074">urt_nodeShutdownCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5398" x2="5914" y1="779.4531" y2="779.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5398" x2="5914" y1="787.4531" y2="787.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="506" x="5403" y="801.6636">urt_nodeShutdownCallback_t (node : urt_node_t*, cause : urt_status_t, arg : void*) : void</text><!--MD5=[d2563153d77472384a15c07b815d639f]
-class urt_node_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="231.2656" id="urt_node_t" style="stroke: #A80036; stroke-width: 1.5;" width="1541" x="5407.5" y="396.9531"/><ellipse cx="6140.25" cy="412.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6139.7344,413.5156 Q6137.875,412.8125 6137.2188,412.0469 Q6136.5781,411.2656 6136.5781,409.9531 Q6136.5781,408.2656 6137.6563,407.2969 Q6138.7344,406.3281 6140.6094,406.3281 Q6141.4688,406.3281 6142.3125,406.5313 Q6143.1719,406.7188 6144.0156,407.1094 L6144.0156,409.5 Q6143.2344,408.9375 6142.4063,408.6563 Q6141.5938,408.3594 6140.7969,408.3594 Q6139.9219,408.3594 6139.4375,408.7188 Q6138.9688,409.0781 6138.9688,409.7344 Q6138.9688,410.25 6139.3125,410.5938 Q6139.6563,410.9219 6140.75,411.3281 L6141.8125,411.7344 Q6143.2969,412.2813 6144,413.1875 Q6144.7188,414.0938 6144.7188,415.4688 Q6144.7188,417.3438 6143.6094,418.2656 Q6142.5,419.1875 6140.25,419.1875 Q6139.3281,419.1875 6138.4063,418.9688 Q6137.4844,418.75 6136.625,418.3281 L6136.625,415.7969 Q6137.5938,416.4844 6138.5156,416.8281 Q6139.4375,417.1719 6140.3281,417.1719 Q6141.2344,417.1719 6141.7344,416.7656 Q6142.2344,416.3438 6142.2344,415.6094 Q6142.2344,415.0469 6141.8906,414.6406 Q6141.5625,414.2188 6140.9375,413.9688 L6139.7344,413.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="67" x="6160.75" y="417.1074">urt_node_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5408.5" x2="6947.5" y1="428.9531" y2="428.9531"/><ellipse cx="5418.5" cy="439.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="102" x="5427.5" y="443.1636">next : urt_node_t*</text><ellipse cx="5418.5" cy="452.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="141" x="5427.5" y="455.9683">thread : urt_osThread_t*</text><ellipse cx="5418.5" cy="465.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="235" x="5427.5" y="468.7729">setupcallback : urt_nodeSetupCallback_t*</text><ellipse cx="5418.5" cy="478.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="117" x="5427.5" y="481.5776">setupparams : void*</text><ellipse cx="5418.5" cy="491.1719" 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="5427.5" y="494.3823">loopcallback : urt_nodeLoopCallback_t*</text><ellipse cx="5418.5" cy="503.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="109" x="5427.5" y="507.187">loopparams : void*</text><ellipse cx="5418.5" cy="516.7813" 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="5427.5" y="519.9917">shutdowncallback : urt_nodeShutdownCallback_t*</text><ellipse cx="5418.5" cy="529.5859" 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="5427.5" y="532.7964">shutdownparams : void*</text><ellipse cx="5418.5" cy="542.3906" 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="5427.5" y="545.6011">stage : urt_nodestage_t</text><ellipse cx="5418.5" cy="555.1953" 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="5427.5" y="558.4058">listener : urt_osEventListener_t</text><ellipse cx="5418.5" cy="584.8047" 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="5427.5" y="588.0151">loops : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5408.5" x2="5970" y1="571.4023" y2="571.4023"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="416" x="5970" y="574.7104">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="6386" x2="6947.5" y1="571.4023" y2="571.4023"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5408.5" x2="6947.5" y1="594.6094" y2="594.6094"/><rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5415.5" y="602.6094"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="179" x="5427.5" y="608.8198">_main : urt_osThreadFunction_t</text><ellipse cx="5418.5" cy="618.4141" 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="5427.5" y="621.6245">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]
-class urt_message_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="141.6328" id="urt_message_t" style="stroke: #A80036; stroke-width: 1.5;" width="406" x="839" y="706.9531"/><ellipse cx="991.75" cy="722.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M991.2344,723.5156 Q989.375,722.8125 988.7188,722.0469 Q988.0781,721.2656 988.0781,719.9531 Q988.0781,718.2656 989.1563,717.2969 Q990.2344,716.3281 992.1094,716.3281 Q992.9688,716.3281 993.8125,716.5313 Q994.6719,716.7188 995.5156,717.1094 L995.5156,719.5 Q994.7344,718.9375 993.9063,718.6563 Q993.0938,718.3594 992.2969,718.3594 Q991.4219,718.3594 990.9375,718.7188 Q990.4688,719.0781 990.4688,719.7344 Q990.4688,720.25 990.8125,720.5938 Q991.1563,720.9219 992.25,721.3281 L993.3125,721.7344 Q994.7969,722.2813 995.5,723.1875 Q996.2188,724.0938 996.2188,725.4688 Q996.2188,727.3438 995.1094,728.2656 Q994,729.1875 991.75,729.1875 Q990.8281,729.1875 989.9063,728.9688 Q988.9844,728.75 988.125,728.3281 L988.125,725.7969 Q989.0938,726.4844 990.0156,726.8281 Q990.9375,727.1719 991.8281,727.1719 Q992.7344,727.1719 993.2344,726.7656 Q993.7344,726.3438 993.7344,725.6094 Q993.7344,725.0469 993.3906,724.6406 Q993.0625,724.2188 992.4375,723.9688 L991.2344,723.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="92" x="1012.25" y="727.1074">urt_message_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="840" x2="1244" y1="738.9531" y2="738.9531"/><ellipse cx="850" cy="749.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="859" y="753.1636">next : urt_message_t*</text><ellipse cx="850" cy="762.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="859" y="765.9683">payload : void*</text><ellipse cx="850" cy="775.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="859" y="778.7729">originTime : urt_osTime_t</text><ellipse cx="850" cy="788.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="859" y="791.5776">numHrtConsumersLeft : unsigned int</text><ellipse cx="850" cy="817.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="859" y="821.187">numConsumersLeft : unsigned int</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="840" x2="933.5" y1="804.5742" y2="804.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="933.5" y="807.8823">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1150.5" x2="1244" y1="804.5742" y2="804.5742"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="840" x2="1244" y1="827.7813" y2="827.7813"/><ellipse cx="850" cy="838.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="859" y="841.9917">urtMessageInit (message : urt_message_t*, payload : void*) : void</text><!--MD5=[2ac85a9c1cceb8bb0c9045edc105e6e3]
-class urt_publisher_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="128.8281" id="urt_publisher_t" style="stroke: #A80036; stroke-width: 1.5;" width="783" x="22.5" y="447.9531"/><ellipse cx="363.25" cy="463.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M362.7344,464.5156 Q360.875,463.8125 360.2188,463.0469 Q359.5781,462.2656 359.5781,460.9531 Q359.5781,459.2656 360.6563,458.2969 Q361.7344,457.3281 363.6094,457.3281 Q364.4688,457.3281 365.3125,457.5313 Q366.1719,457.7188 367.0156,458.1094 L367.0156,460.5 Q366.2344,459.9375 365.4063,459.6563 Q364.5938,459.3594 363.7969,459.3594 Q362.9219,459.3594 362.4375,459.7188 Q361.9688,460.0781 361.9688,460.7344 Q361.9688,461.25 362.3125,461.5938 Q362.6563,461.9219 363.75,462.3281 L364.8125,462.7344 Q366.2969,463.2813 367,464.1875 Q367.7188,465.0938 367.7188,466.4688 Q367.7188,468.3438 366.6094,469.2656 Q365.5,470.1875 363.25,470.1875 Q362.3281,470.1875 361.4063,469.9688 Q360.4844,469.75 359.625,469.3281 L359.625,466.7969 Q360.5938,467.4844 361.5156,467.8281 Q362.4375,468.1719 363.3281,468.1719 Q364.2344,468.1719 364.7344,467.7656 Q365.2344,467.3438 365.2344,466.6094 Q365.2344,466.0469 364.8906,465.6406 Q364.5625,465.2188 363.9375,464.9688 L362.7344,464.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="93" x="383.75" y="468.1074">urt_publisher_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="23.5" x2="804.5" y1="479.9531" y2="479.9531"/><ellipse cx="33.5" cy="490.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="104" x="42.5" y="494.1636">topic : urt_topic_t*</text><ellipse cx="33.5" cy="520.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="149" x="42.5" y="523.7729">publishAttempts : uint64_t</text><ellipse cx="33.5" cy="533.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="124" x="42.5" y="536.5776">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="507.1602" y2="507.1602"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="305.5" y="510.4683">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="507.1602" y2="507.1602"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="23.5" x2="804.5" y1="543.1719" y2="543.1719"/><ellipse cx="33.5" cy="554.1719" 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="557.3823">urtPublisherInit (publisher : urt_publisher_t*, topic : urt_topic_t*, messages : urt_message_t*) : void</text><ellipse cx="33.5" cy="566.9766" 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="570.187">urtPublisherPublish (publisher : urt_publisher_t*, payload : void*, bytes : size_t, t : urt_osTime_t, timeout : urt_delay_t) : urt_status_t</text><!--MD5=[a1b1e66ec52c209a9fa2dab315cd7630]
-class urt_topic_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="260.875" id="urt_topic_t" style="stroke: #A80036; stroke-width: 1.5;" width="384" x="841" y="381.9531"/><ellipse cx="995.75" cy="397.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M995.2344,398.5156 Q993.375,397.8125 992.7188,397.0469 Q992.0781,396.2656 992.0781,394.9531 Q992.0781,393.2656 993.1563,392.2969 Q994.2344,391.3281 996.1094,391.3281 Q996.9688,391.3281 997.8125,391.5313 Q998.6719,391.7188 999.5156,392.1094 L999.5156,394.5 Q998.7344,393.9375 997.9063,393.6563 Q997.0938,393.3594 996.2969,393.3594 Q995.4219,393.3594 994.9375,393.7188 Q994.4688,394.0781 994.4688,394.7344 Q994.4688,395.25 994.8125,395.5938 Q995.1563,395.9219 996.25,396.3281 L997.3125,396.7344 Q998.7969,397.2813 999.5,398.1875 Q1000.2188,399.0938 1000.2188,400.4688 Q1000.2188,402.3438 999.1094,403.2656 Q998,404.1875 995.75,404.1875 Q994.8281,404.1875 993.9063,403.9688 Q992.9844,403.75 992.125,403.3281 L992.125,400.7969 Q993.0938,401.4844 994.0156,401.8281 Q994.9375,402.1719 995.8281,402.1719 Q996.7344,402.1719 997.2344,401.7656 Q997.7344,401.3438 997.7344,400.6094 Q997.7344,400.0469 997.3906,399.6406 Q997.0625,399.2188 996.4375,398.9688 L995.2344,398.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="1016.25" y="402.1074">urt_topic_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="842" x2="1224" y1="413.9531" y2="413.9531"/><ellipse cx="852" cy="424.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="101" x="861" y="428.1636">next : urt_topic_t*</text><ellipse cx="852" cy="437.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="91" x="861" y="440.9683">id : urt_topicid_t</text><ellipse cx="852" cy="450.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="113" x="861" y="453.7729">lock : urt_osMutex_t</text><ellipse cx="852" cy="463.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="186" x="861" y="466.5776">evtSource : urt_osEventSource_t</text><ellipse cx="852" cy="476.1719" 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="479.3823">numHrtSubscribers : unsigned int</text><ellipse cx="852" cy="488.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="173" x="861" y="492.187">hrtReleased : urt_osCondvar_t</text><ellipse cx="852" cy="501.7813" 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="209" x="861" y="504.9917">mandatoryMessage : urt_message_t</text><ellipse cx="852" cy="514.5859" 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="517.7964">latestMessage : urt_message_t*</text><ellipse cx="852" cy="544.1953" 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="212" x="861" y="547.4058">hrtSubscribers : urt_hrtsubscriber_t*</text><ellipse cx="852" cy="557" 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="170" x="861" y="560.2104">qosRateTimer : urt_osTimer_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="842" x2="900.5" y1="530.793" y2="530.793"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="265" x="900.5" y="534.1011">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1165.5" x2="1224" y1="530.793" y2="530.793"/><ellipse cx="852" cy="586.6094" 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="195" x="861" y="589.8198">numMessagesPublished : uint64_t</text><ellipse cx="852" cy="599.4141" 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="197" x="861" y="602.6245">numMessagesDiscarded : uint64_t</text><ellipse cx="852" cy="612.2188" 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="176" x="861" y="615.4292">numSubscribers : unsigned int</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="842" x2="924.5" y1="573.207" y2="573.207"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="924.5" y="576.5151">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1141.5" x2="1224" y1="573.207" y2="573.207"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="842" x2="1224" y1="622.0234" y2="622.0234"/><ellipse cx="852" cy="633.0234" 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="358" x="861" y="636.2339">urtTopicInit (topic : urt_topic_t*, id : urt_topicid_t) : urt_status_t</text><!--MD5=[50a042e24f957794dab9ba3ea8701c50]
-class urt_basesubscriber_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="133.6328" id="urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="225" x="3105.5" y="710.9531"/><ellipse cx="3147.95" cy="726.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3147.4344,727.5156 Q3145.575,726.8125 3144.9188,726.0469 Q3144.2781,725.2656 3144.2781,723.9531 Q3144.2781,722.2656 3145.3563,721.2969 Q3146.4344,720.3281 3148.3094,720.3281 Q3149.1688,720.3281 3150.0125,720.5313 Q3150.8719,720.7188 3151.7156,721.1094 L3151.7156,723.5 Q3150.9344,722.9375 3150.1063,722.6563 Q3149.2938,722.3594 3148.4969,722.3594 Q3147.6219,722.3594 3147.1375,722.7188 Q3146.6688,723.0781 3146.6688,723.7344 Q3146.6688,724.25 3147.0125,724.5938 Q3147.3563,724.9219 3148.45,725.3281 L3149.5125,725.7344 Q3150.9969,726.2813 3151.7,727.1875 Q3152.4188,728.0938 3152.4188,729.4688 Q3152.4188,731.3438 3151.3094,732.2656 Q3150.2,733.1875 3147.95,733.1875 Q3147.0281,733.1875 3146.1063,732.9688 Q3145.1844,732.75 3144.325,732.3281 L3144.325,729.7969 Q3145.2938,730.4844 3146.2156,730.8281 Q3147.1375,731.1719 3148.0281,731.1719 Q3148.9344,731.1719 3149.4344,730.7656 Q3149.9344,730.3438 3149.9344,729.6094 Q3149.9344,729.0469 3149.5906,728.6406 Q3149.2625,728.2188 3148.6375,727.9688 L3147.4344,727.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="132" x="3168.05" y="731.1074">urt_basesubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3106.5" x2="3329.5" y1="742.9531" y2="742.9531"/><ellipse cx="3116.5" cy="753.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="104" x="3125.5" y="757.1636">topic : urt_topic_t*</text><ellipse cx="3116.5" cy="766.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="198" x="3125.5" y="769.9683">evtListener : urt_osEventListener_t</text><ellipse cx="3116.5" cy="779.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="175" x="3125.5" y="782.7729">lastMessage : urt_message_t*</text><ellipse cx="3116.5" cy="792.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="186" x="3125.5" y="795.5776">lastMessageTime : urt_osTime_t</text><ellipse cx="3116.5" cy="821.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="136" x="3125.5" y="825.187">sumLatencies : uint64_t</text><ellipse cx="3116.5" cy="834.7813" 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="190" x="3125.5" y="837.9917">numMessagesReceived : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3106.5" x2="3109.5" y1="808.5742" y2="808.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="3109.5" y="811.8823">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3326.5" x2="3329.5" y1="808.5742" y2="808.5742"/><!--MD5=[fc7708c915a0148c667d62e1370980fd]
-class urt_srtusefulnessfunc_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="60.8047" id="urt_srtusefulnessfunc_t" style="stroke: #A80036; stroke-width: 1.5;" width="374" x="4636" y="747.4531"/><ellipse cx="4745.25" cy="763.4531" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4749.4844,759.2188 L4744.2031,759.2188 L4744.2031,761.8906 L4749,761.8906 L4749,764.0469 L4744.2031,764.0469 L4744.2031,769.4531 L4741.7656,769.4531 L4741.7656,757.0625 L4749.4844,757.0625 L4749.4844,759.2188 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="147" x="4765.75" y="767.6074">urt_srtusefulnessfunc_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4637" x2="5009" y1="779.4531" y2="779.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4637" x2="5009" y1="787.4531" y2="787.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="362" x="4642" y="801.6636">urt_srtusefulnessfunc_t (dt : urt_delay_t, params : void*) : float</text><!--MD5=[9ff46073dd541e50679ef35e851c67d6]
-class urt_nrtsubscriber_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="154.4375" id="urt_nrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="821" x="1278.5" y="435.4531"/><ellipse cx="1625.25" cy="451.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1624.7344,452.0156 Q1622.875,451.3125 1622.2188,450.5469 Q1621.5781,449.7656 1621.5781,448.4531 Q1621.5781,446.7656 1622.6563,445.7969 Q1623.7344,444.8281 1625.6094,444.8281 Q1626.4688,444.8281 1627.3125,445.0313 Q1628.1719,445.2188 1629.0156,445.6094 L1629.0156,448 Q1628.2344,447.4375 1627.4063,447.1563 Q1626.5938,446.8594 1625.7969,446.8594 Q1624.9219,446.8594 1624.4375,447.2188 Q1623.9688,447.5781 1623.9688,448.2344 Q1623.9688,448.75 1624.3125,449.0938 Q1624.6563,449.4219 1625.75,449.8281 L1626.8125,450.2344 Q1628.2969,450.7813 1629,451.6875 Q1629.7188,452.5938 1629.7188,453.9688 Q1629.7188,455.8438 1628.6094,456.7656 Q1627.5,457.6875 1625.25,457.6875 Q1624.3281,457.6875 1623.4063,457.4688 Q1622.4844,457.25 1621.625,456.8281 L1621.625,454.2969 Q1622.5938,454.9844 1623.5156,455.3281 Q1624.4375,455.6719 1625.3281,455.6719 Q1626.2344,455.6719 1626.7344,455.2656 Q1627.2344,454.8438 1627.2344,454.1094 Q1627.2344,453.5469 1626.8906,453.1406 Q1626.5625,452.7188 1625.9375,452.4688 L1624.7344,452.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="119" x="1645.75" y="455.6074">urt_nrtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1279.5" x2="2098.5" y1="467.4531" y2="467.4531"/><ellipse cx="1289.5" cy="495.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="138" x="1298.5" y="498.4683">minLatency : urt_delay_t</text><ellipse cx="1289.5" cy="508.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="141" x="1298.5" y="511.2729">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1279.5" x2="1580.5" y1="481.8555" y2="481.8555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="1580.5" y="485.1636">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1797.5" x2="2098.5" y1="481.8555" y2="481.8555"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="1279.5" x2="2098.5" y1="517.8672" y2="517.8672"/><ellipse cx="1289.5" cy="528.8672" 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="347" x="1298.5" y="532.0776">urtNrtSubscriberInit (subscriber : urt_nrtsubscriber_t*) : void</text><ellipse cx="1289.5" cy="541.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="715" x="1298.5" y="544.8823">urtNrtSubscriberSubscribe (subscriber : urt_nrtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*) : urt_status_t</text><ellipse cx="1289.5" cy="554.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="785" x="1298.5" y="557.687">urtNrtSubscriberFetchNextMessage (subscriber : urt_nrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="1289.5" cy="567.2813" 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="795" x="1298.5" y="570.4917">urtNrtSubscriberFetchLatestMessage (subscriber : urt_nrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="1289.5" cy="580.0859" 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="446" x="1298.5" y="583.2964">urtNrtSubscriberUnsubscribe (subscriber : urt_nrtsubscriber_t*) : urt_status_t</text><!--MD5=[5c7929572d87ccc448d875bea5da0fb1]
-class urt_srtsubscriber_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="192.8516" id="urt_srtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="1084" x="4281" y="415.9531"/><ellipse cx="4759.75" cy="431.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4759.2344,432.5156 Q4757.375,431.8125 4756.7188,431.0469 Q4756.0781,430.2656 4756.0781,428.9531 Q4756.0781,427.2656 4757.1563,426.2969 Q4758.2344,425.3281 4760.1094,425.3281 Q4760.9688,425.3281 4761.8125,425.5313 Q4762.6719,425.7188 4763.5156,426.1094 L4763.5156,428.5 Q4762.7344,427.9375 4761.9063,427.6563 Q4761.0938,427.3594 4760.2969,427.3594 Q4759.4219,427.3594 4758.9375,427.7188 Q4758.4688,428.0781 4758.4688,428.7344 Q4758.4688,429.25 4758.8125,429.5938 Q4759.1563,429.9219 4760.25,430.3281 L4761.3125,430.7344 Q4762.7969,431.2813 4763.5,432.1875 Q4764.2188,433.0938 4764.2188,434.4688 Q4764.2188,436.3438 4763.1094,437.2656 Q4762,438.1875 4759.75,438.1875 Q4758.8281,438.1875 4757.9063,437.9688 Q4756.9844,437.75 4756.125,437.3281 L4756.125,434.7969 Q4757.0938,435.4844 4758.0156,435.8281 Q4758.9375,436.1719 4759.8281,436.1719 Q4760.7344,436.1719 4761.2344,435.7656 Q4761.7344,435.3438 4761.7344,434.6094 Q4761.7344,434.0469 4761.3906,433.6406 Q4761.0625,433.2188 4760.4375,432.9688 L4759.2344,432.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="118" x="4780.25" y="436.1074">urt_srtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4282" x2="5364" y1="447.9531" y2="447.9531"/><ellipse cx="4292" cy="458.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="229" x="4301" y="462.1636">usefulnesscb : urt_srtusefulnessfunc_t*</text><ellipse cx="4292" cy="471.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="98" x="4301" y="474.9683">cbparams : void*</text><ellipse cx="4292" cy="501.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="138" x="4301" y="504.5776">minLatency : urt_delay_t</text><ellipse cx="4292" cy="514.1719" 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="4301" y="517.3823">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4282" x2="4714.5" y1="487.9648" y2="487.9648"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="4714.5" y="491.2729">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4931.5" x2="5364" y1="487.9648" y2="487.9648"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4282" x2="5364" y1="523.9766" y2="523.9766"/><ellipse cx="4292" cy="534.9766" 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="347" x="4301" y="538.187">urtSrtSubscriberInit (subscriber : urt_srtsubscriber_t*) : void</text><ellipse cx="4292" cy="547.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="1058" x="4301" y="550.9917">urtSrtSubscriberSubscribe (subscriber : urt_srtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, usefulnesscb : urt_srtusefulnessfunc_t*, cbparams : void*) : urt_status_t</text><ellipse cx="4292" cy="560.5859" 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="785" x="4301" y="563.7964">urtSrtSubscriberFetchNextMessage (subscriber : urt_srtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="4292" cy="573.3906" 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="795" x="4301" y="576.6011">urtSrtSubscriberFetchLatestMessage (subscriber : urt_srtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="4292" cy="586.1953" 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="570" x="4301" y="589.4058">urtSrtSubscriberCalculateUsefulness (subscriber : urt_srtsubscriber_t*, latency : urt_delay_t) : float</text><ellipse cx="4292" cy="599" 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="446" x="4301" y="602.2104">urtSrtSubscriberUnsubscribe (subscriber : urt_srtsubscriber_t*) : urt_status_t</text><!--MD5=[17838fb05fe219fd399839979ec8a4a4]
-class urt_frtsubscriber_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="226.4609" id="urt_frtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="974" x="3272" y="399.4531"/><ellipse cx="3697.25" cy="415.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3696.7344,416.0156 Q3694.875,415.3125 3694.2188,414.5469 Q3693.5781,413.7656 3693.5781,412.4531 Q3693.5781,410.7656 3694.6563,409.7969 Q3695.7344,408.8281 3697.6094,408.8281 Q3698.4688,408.8281 3699.3125,409.0313 Q3700.1719,409.2188 3701.0156,409.6094 L3701.0156,412 Q3700.2344,411.4375 3699.4063,411.1563 Q3698.5938,410.8594 3697.7969,410.8594 Q3696.9219,410.8594 3696.4375,411.2188 Q3695.9688,411.5781 3695.9688,412.2344 Q3695.9688,412.75 3696.3125,413.0938 Q3696.6563,413.4219 3697.75,413.8281 L3698.8125,414.2344 Q3700.2969,414.7813 3701,415.6875 Q3701.7188,416.5938 3701.7188,417.9688 Q3701.7188,419.8438 3700.6094,420.7656 Q3699.5,421.6875 3697.25,421.6875 Q3696.3281,421.6875 3695.4063,421.4688 Q3694.4844,421.25 3693.625,420.8281 L3693.625,418.2969 Q3694.5938,418.9844 3695.5156,419.3281 Q3696.4375,419.6719 3697.3281,419.6719 Q3698.2344,419.6719 3698.7344,419.2656 Q3699.2344,418.8438 3699.2344,418.1094 Q3699.2344,417.5469 3698.8906,417.1406 Q3698.5625,416.7188 3697.9375,416.4688 L3696.7344,416.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="115" x="3717.75" y="419.6074">urt_frtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3273" x2="4245" y1="431.4531" y2="431.4531"/><ellipse cx="3283" cy="459.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="157" x="3292" y="462.4683">deadlineOffset : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3273" x2="3613.5" y1="445.8555" y2="445.8555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="291" x="3613.5" y="449.1636">URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3904.5" x2="4245" y1="445.8555" y2="445.8555"/><ellipse cx="3283" cy="488.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="3292" y="492.0776">maxJitter : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3273" x2="3623.5" y1="475.4648" y2="475.4648"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="271" x="3623.5" y="478.7729">URT_CFG_PUBSUB_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3894.5" x2="4245" y1="475.4648" y2="475.4648"/><ellipse cx="3283" cy="518.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="138" x="3292" y="521.687">minLatency : urt_delay_t</text><ellipse cx="3283" cy="531.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="141" x="3292" y="534.4917">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3273" x2="3505" y1="505.0742" y2="505.0742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="508" x="3505" y="508.3823">URT_CFG_PUBSUB_QOS_JITTERCHECKS == true ||  URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4013" x2="4245" y1="505.0742" y2="505.0742"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="3273" x2="4245" y1="541.0859" y2="541.0859"/><ellipse cx="3283" cy="552.0859" 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="342" x="3292" y="555.2964">urtFrtSubscriberInit (subscriber : urt_frtsubscriber_t*) : void</text><ellipse cx="3283" cy="564.8906" 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="948" x="3292" y="568.1011">urtFrtSubscriberSubscribe (subscriber : urt_frtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, deadline : urt_delay_t, jitter : urt_delay_t) : urt_status_t</text><ellipse cx="3283" cy="577.6953" 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="780" x="3292" y="580.9058">urtFrtSubscriberFetchNextMessage (subscriber : urt_frtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="3283" cy="590.5" 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="790" x="3292" y="593.7104">urtFrtSubscriberFetchLatestMessage (subscriber : urt_frtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="3283" cy="603.3047" 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="540" x="3292" y="606.5151">urtFrtSubscriberCalculateValidity (subscriber : urt_frtsubscriber_t*, latency : urt_delay_t) : bool</text><ellipse cx="3283" cy="616.1094" 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="441" x="3292" y="619.3198">urtFrtSubscriberUnsubscribe (subscriber : urt_frtsubscriber_t*) : urt_status_t</text><!--MD5=[104dc879e5721421b987fcc467bc3a1d]
-class urt_hrtsubscriber_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="268.875" id="urt_hrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="1084" x="2135" y="377.9531"/><ellipse cx="2613.25" cy="393.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2612.7344,394.5156 Q2610.875,393.8125 2610.2188,393.0469 Q2609.5781,392.2656 2609.5781,390.9531 Q2609.5781,389.2656 2610.6563,388.2969 Q2611.7344,387.3281 2613.6094,387.3281 Q2614.4688,387.3281 2615.3125,387.5313 Q2616.1719,387.7188 2617.0156,388.1094 L2617.0156,390.5 Q2616.2344,389.9375 2615.4063,389.6563 Q2614.5938,389.3594 2613.7969,389.3594 Q2612.9219,389.3594 2612.4375,389.7188 Q2611.9688,390.0781 2611.9688,390.7344 Q2611.9688,391.25 2612.3125,391.5938 Q2612.6563,391.9219 2613.75,392.3281 L2614.8125,392.7344 Q2616.2969,393.2813 2617,394.1875 Q2617.7188,395.0938 2617.7188,396.4688 Q2617.7188,398.3438 2616.6094,399.2656 Q2615.5,400.1875 2613.25,400.1875 Q2612.3281,400.1875 2611.4063,399.9688 Q2610.4844,399.75 2609.625,399.3281 L2609.625,396.7969 Q2610.5938,397.4844 2611.5156,397.8281 Q2612.4375,398.1719 2613.3281,398.1719 Q2614.2344,398.1719 2614.7344,397.7656 Q2615.2344,397.3438 2615.2344,396.6094 Q2615.2344,396.0469 2614.8906,395.6406 Q2614.5625,395.2188 2613.9375,394.9688 L2612.7344,394.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="119" x="2633.75" y="398.1074">urt_hrtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2136" x2="3218" y1="409.9531" y2="409.9531"/><ellipse cx="2146" cy="420.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="151" x="2155" y="424.1636">next : urt_hrtsubscriber_t*</text><ellipse cx="2146" cy="450.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="157" x="2155" y="453.7729">deadlineOffset : urt_delay_t</text><ellipse cx="2146" cy="463.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="194" x="2155" y="466.5776">qosDeadlineTimer : urt_osTimer_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2136" x2="2531.5" y1="437.1602" y2="437.1602"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="291" x="2531.5" y="440.4683">URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2822.5" x2="3218" y1="437.1602" y2="437.1602"/><ellipse cx="2146" cy="492.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="124" x="2155" y="496.187">maxJitter : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2136" x2="2541.5" y1="479.5742" y2="479.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="271" x="2541.5" y="482.8823">URT_CFG_PUBSUB_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2812.5" x2="3218" y1="479.5742" y2="479.5742"/><ellipse cx="2146" cy="522.5859" 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="138" x="2155" y="525.7964">minLatency : urt_delay_t</text><ellipse cx="2146" cy="535.3906" 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="2155" y="538.6011">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2136" x2="2425" y1="509.1836" y2="509.1836"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="504" x="2425" y="512.4917">URT_CFG_PUBSUB_QOS_JITTERCHECKS == true || URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2929" x2="3218" y1="509.1836" y2="509.1836"/><ellipse cx="2146" cy="565" 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="150" x="2155" y="568.2104">expectedRate : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2136" x2="2544.5" y1="551.5977" y2="551.5977"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="265" x="2544.5" y="554.9058">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2809.5" x2="3218" y1="551.5977" y2="551.5977"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="2136" x2="3218" y1="574.8047" y2="574.8047"/><ellipse cx="2146" cy="585.8047" 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="347" x="2155" y="589.0151">urtHrtSubscriberInit (subscriber : urt_hrtsubscriber_t*) : void</text><ellipse cx="2146" cy="598.6094" 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="1058" x="2155" y="601.8198">urtHrtSubscriberSubscribe (subscriber : urt_hrtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, deadline : urt_delay_t, rate : urt_delay_t, jitter : urt_delay_t) : urt_status_t</text><ellipse cx="2146" cy="611.4141" 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="785" x="2155" y="614.6245">urtHrtSubscriberFetchNextMessage (subscriber : urt_hrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="2146" cy="624.2188" 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="795" x="2155" y="627.4292">urtHrtSubscriberFetchLatestMessage (subscriber : urt_hrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="2146" cy="637.0234" 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="446" x="2155" y="640.2339">urtHrtSubscriberUnsubscribe (subscriber : urt_hrtsubscriber_t*) : urt_status_t</text><!--MD5=[3226071078d8aeaa18fbafa5359ddee6]
-class urt_servicefunc_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="60.8047" id="urt_servicefunc_t" style="stroke: #A80036; stroke-width: 1.5;" width="451" x="7154.5" y="747.4531"/><ellipse cx="7322.75" cy="763.4531" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M7326.9844,759.2188 L7321.7031,759.2188 L7321.7031,761.8906 L7326.5,761.8906 L7326.5,764.0469 L7321.7031,764.0469 L7321.7031,769.4531 L7319.2656,769.4531 L7319.2656,757.0625 L7326.9844,757.0625 L7326.9844,759.2188 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="106" x="7343.25" y="767.6074">urt_servicefunc_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="7155.5" x2="7604.5" y1="779.4531" y2="779.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="7155.5" x2="7604.5" y1="787.4531" y2="787.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="439" x="7160.5" y="801.6636">urt_servicefunc_t (arg : void*, ret : void*, timeout : urt_delay_t) : urt_status_t</text><!--MD5=[e60e0f8379a14e7a4a292c65add9d735]
-class urt_service_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="205.6563" id="urt_service_t" style="stroke: #A80036; stroke-width: 1.5;" width="602" x="7079" y="409.4531"/><ellipse cx="7336.25" cy="425.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M7335.7344,426.0156 Q7333.875,425.3125 7333.2188,424.5469 Q7332.5781,423.7656 7332.5781,422.4531 Q7332.5781,420.7656 7333.6563,419.7969 Q7334.7344,418.8281 7336.6094,418.8281 Q7337.4688,418.8281 7338.3125,419.0313 Q7339.1719,419.2188 7340.0156,419.6094 L7340.0156,422 Q7339.2344,421.4375 7338.4063,421.1563 Q7337.5938,420.8594 7336.7969,420.8594 Q7335.9219,420.8594 7335.4375,421.2188 Q7334.9688,421.5781 7334.9688,422.2344 Q7334.9688,422.75 7335.3125,423.0938 Q7335.6563,423.4219 7336.75,423.8281 L7337.8125,424.2344 Q7339.2969,424.7813 7340,425.6875 Q7340.7188,426.5938 7340.7188,427.9688 Q7340.7188,429.8438 7339.6094,430.7656 Q7338.5,431.6875 7336.25,431.6875 Q7335.3281,431.6875 7334.4063,431.4688 Q7333.4844,431.25 7332.625,430.8281 L7332.625,428.2969 Q7333.5938,428.9844 7334.5156,429.3281 Q7335.4375,429.6719 7336.3281,429.6719 Q7337.2344,429.6719 7337.7344,429.2656 Q7338.2344,428.8438 7338.2344,428.1094 Q7338.2344,427.5469 7337.8906,427.1406 Q7337.5625,426.7188 7336.9375,426.4688 L7335.7344,426.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="79" x="7356.75" y="429.6074">urt_service_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="7080" x2="7680" y1="441.4531" y2="441.4531"/><ellipse cx="7090" cy="452.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="115" x="7099" y="455.6636">next : urt_service_t*</text><ellipse cx="7090" cy="465.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="105" x="7099" y="468.4683">id : urt_serviceid_t</text><ellipse cx="7090" cy="478.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="7099" y="481.2729">lock : urt_osMutex_t</text><ellipse cx="7090" cy="490.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="160" x="7099" y="494.0776">callback : urt_servicefunc_t*</text><ellipse cx="7090" cy="520.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="137" x="7099" y="523.687">sumDurations : uint64_t</text><ellipse cx="7090" cy="533.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="110" x="7099" y="536.4917">numCalls : uint64_t</text><ellipse cx="7090" cy="546.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="135" x="7099" y="549.2964">numTimeouts : uint64_t</text><ellipse cx="7090" cy="558.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="143" x="7099" y="562.1011">minDuration : urt_delay_t</text><ellipse cx="7090" cy="571.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="146" x="7099" y="574.9058">maxDuration : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7080" x2="7284" y1="507.0742" y2="507.0742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="192" x="7284" y="510.3823">URT_CFG_RPC_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7476" x2="7680" y1="507.0742" y2="507.0742"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="7080" x2="7680" y1="581.5" y2="581.5"/><ellipse cx="7090" cy="592.5" 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="576" x="7099" y="595.7104">urtServiceInit(service : urt_service_t*, id : urt_serviceid_t, callback : urt_servicefunc_t*) : urt_status_t</text><ellipse cx="7090" cy="605.3047" 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="557" x="7099" y="608.5151">urtServiceCall(service : urt_service_t*, arg : void*, ret : void*, timeout : urt_delay_t) : urt_status_t</text><!--MD5=[89d25e87afdd75480e1ec2bd05524873]
-class urt_core_t--><rect fill="#FEFECE" filter="url(#f809dau48hy9h)" height="281.6797" id="urt_core_t" style="stroke: #A80036; stroke-width: 1.5;" width="343" x="6006.5" y="28.9531"/><ellipse cx="6142.25" cy="44.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6141.7344,45.5156 Q6139.875,44.8125 6139.2188,44.0469 Q6138.5781,43.2656 6138.5781,41.9531 Q6138.5781,40.2656 6139.6563,39.2969 Q6140.7344,38.3281 6142.6094,38.3281 Q6143.4688,38.3281 6144.3125,38.5313 Q6145.1719,38.7188 6146.0156,39.1094 L6146.0156,41.5 Q6145.2344,40.9375 6144.4063,40.6563 Q6143.5938,40.3594 6142.7969,40.3594 Q6141.9219,40.3594 6141.4375,40.7188 Q6140.9688,41.0781 6140.9688,41.7344 Q6140.9688,42.25 6141.3125,42.5938 Q6141.6563,42.9219 6142.75,43.3281 L6143.8125,43.7344 Q6145.2969,44.2813 6146,45.1875 Q6146.7188,46.0938 6146.7188,47.4688 Q6146.7188,49.3438 6145.6094,50.2656 Q6144.5,51.1875 6142.25,51.1875 Q6141.3281,51.1875 6140.4063,50.9688 Q6139.4844,50.75 6138.625,50.3281 L6138.625,47.7969 Q6139.5938,48.4844 6140.5156,48.8281 Q6141.4375,49.1719 6142.3281,49.1719 Q6143.2344,49.1719 6143.7344,48.7656 Q6144.2344,48.3438 6144.2344,47.6094 Q6144.2344,47.0469 6143.8906,46.6406 Q6143.5625,46.2188 6142.9375,45.9688 L6141.7344,45.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="63" x="6162.75" y="49.1074">urt_core_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="6007.5" x2="6348.5" y1="60.9531" y2="60.9531"/><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="6014.5" y="68.9531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="119" x="6026.5" y="75.1636">_nodes : urt_node_t*</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="6014.5" y="81.7578"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="192" x="6026.5" y="87.9683">_evtSource : urt_osEventSource_t</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="6014.5" y="94.5625"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="119" x="6026.5" y="100.7729">_lock : urt_osMutex_t</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="6014.5" y="107.3672"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="122" x="6026.5" y="113.5776">_status : urt_status_t</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="6014.5" y="136.9766"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="117" x="6026.5" y="143.187">_topics : urt_topic_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6007.5" x2="6073" y1="126.5742" y2="126.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="210" x="6073" y="129.8823">URT_CFG_PUBSUB_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6283" x2="6348.5" y1="126.5742" y2="126.5742"/><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="6014.5" y="166.5859"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="145" x="6026.5" y="172.7964">_services : urt_service_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6007.5" x2="6085.5" y1="156.1836" y2="156.1836"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="185" x="6085.5" y="159.4917">URT_CFG_RPC_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6270.5" x2="6348.5" y1="156.1836" y2="156.1836"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="6007.5" x2="6348.5" y1="179.3906" y2="179.3906"/><ellipse cx="6017.5" cy="190.3906" 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="130" x="6026.5" y="193.6011">urtCoreInit (void) : void</text><ellipse cx="6017.5" cy="203.1953" 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="215" x="6026.5" y="206.4058">urtCoreGetStatus (void) : urt_status_t</text><ellipse cx="6017.5" cy="216" 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="177" x="6026.5" y="219.2104">urtCoreStartNodes (void) : void</text><ellipse cx="6017.5" cy="228.8047" 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="309" x="6026.5" y="232.0151">urtCoreSynchronize (node : urt_node_t*) : urt_status_t</text><ellipse cx="6017.5" cy="241.6094" 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="317" x="6026.5" y="244.8198">urtCoreStopNodes (reason : urt_status_t) : urt_status_t</text><ellipse cx="6017.5" cy="271.2188" 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="273" x="6026.5" y="274.4292">urtCoreGetTopic (id : urt_topicid_t) : urt_topic_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6007.5" x2="6073" y1="257.8164" y2="257.8164"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="210" x="6073" y="261.1245">URT_CFG_PUBSUB_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6283" x2="6348.5" y1="257.8164" y2="257.8164"/><ellipse cx="6017.5" cy="300.8281" 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="313" x="6026.5" y="304.0386">urtCoreGetService (id : urt_serviceid_t) : urt_service_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6007.5" x2="6085.5" y1="287.4258" y2="287.4258"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="185" x="6085.5" y="290.7339">URT_CFG_RPC_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6270.5" x2="6348.5" y1="287.4258" y2="287.4258"/><!--MD5=[182342162f0b9b45ddce11acc6582c59]
-reverse link urt_node_t to urt_node_t--><path d="M6960.9212,491.2176 C6975.4841,497.3109 6983.5,504.3894 6983.5,512.4531 C6983.5,522.5722 6970.8767,531.1399 6948.5332,538.1561 " fill="none" id="urt_node_t&lt;-urt_node_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6948.5332,486.7501,6952.8204,492.5484,6959.8215,490.8212,6955.5344,485.0229,6948.5332,486.7501" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6957.0047" y="483.4531">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="6957.0922" y="535.4214">0..1</text><!--MD5=[55d7f7c946c3356baf68288566af1bf6]
-reverse link urt_node_t to urt_nodeSetupCallback_t--><path d="M6165.2551,641.2168 C6165.1537,680.749 6166.5611,720.753 6169.4773,747.1888 " fill="none" id="urt_node_t&lt;-urt_nodeSetupCallback_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6165.3442,628.1329,6161.3034,634.1055,6165.2624,640.1326,6169.3032,634.16,6165.3442,628.1329" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6156.2251" y="648.4715">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="6141.2445" y="736.3975">0..1</text><!--MD5=[55d7f7c946c3356baf68288566af1bf6]
-reverse link urt_node_t to urt_nodeSetupCallback_t--><path d="M6191.4513,633.2524 C6191.7951,675.3075 6190.3194,718.9753 6187.024,747.1888 " fill="none" id="urt_node_t&lt;-urt_nodeSetupCallback_t-1" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="6191.4003,628.1329,6187.4902,637.1724,6191.4502,633.1327,6195.4898,637.0926,6191.4003,628.1329" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[b913f036db99e36b937989146817bd94]
-reverse link urt_node_t to urt_nodeLoopCallback_t--><path d="M6425.4811,633.646 C6515.3454,675.6499 6610.2616,719.2088 6673.7479,747.3298 " fill="none" id="urt_node_t&lt;-urt_nodeLoopCallback_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6413.6963,628.1329,6417.436,634.2985,6424.5657,633.2178,6420.826,627.0523,6413.6963,628.1329" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6421.2634" y="648.4715">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6649.6084" y="736.5676">1</text><!--MD5=[b913f036db99e36b937989146817bd94]
-reverse link urt_node_t to urt_nodeLoopCallback_t--><path d="M6444.4499,630.3098 C6537.2495,673.3301 6632.6737,718.4635 6691.2626,747.3298 " fill="none" id="urt_node_t&lt;-urt_nodeLoopCallback_t-1" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="6439.7525,628.1329,6446.2365,635.5463,6444.2891,630.2352,6449.6001,628.2878,6439.7525,628.1329" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[496dffc41052f1912ec8ad492f24fe61]
-reverse link urt_node_t to urt_nodeShutdownCallback_t--><path d="M5926.255,634.0314 C5843.603,675.9162 5759.7171,719.2948 5707.7014,747.3298 " fill="none" id="urt_node_t&lt;-urt_nodeShutdownCallback_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="5937.9059,628.1329,5930.7461,627.2743,5927.1998,633.5531,5934.3596,634.4117,5937.9059,628.1329" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="5913.5058" y="648.4715">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="5691.8898" y="736.5676">0..1</text><!--MD5=[496dffc41052f1912ec8ad492f24fe61]
-reverse link urt_node_t to urt_nodeShutdownCallback_t--><path d="M5959.4552,630.438 C5875.3841,673.4197 5785.2945,718.4921 5725.2161,747.3298 " fill="none" id="urt_node_t&lt;-urt_nodeShutdownCallback_t-1" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="5963.962,628.1329,5954.1278,628.67,5959.5105,630.4098,5957.7707,635.7924,5963.962,628.1329" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[536025241394544a90bc53fb552f3a08]
-reverse link urt_message_t to urt_message_t--><path d="M1257.0848,742.5198 C1271.3521,750.7337 1280,762.5448 1280,777.9531 C1280,797.289 1266.3815,810.9601 1245.1293,818.9664 " fill="none" id="urt_message_t&lt;-urt_message_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1245.1293,736.9398,1248.8745,743.1021,1256.0032,742.015,1252.258,735.8528,1245.1293,736.9398" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1253.2203" y="732.1214">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1252.8605" y="817.2467">0..1</text><!--MD5=[0585cd4928de92ce6927d9c389eadd29]
-link urt_nrtsubscriber_t to urt_basesubscriber_t--><path d="M1899.1787,589.5304 C1968.02,611.7483 2045.4622,633.5767 2118,646.9531 C2542.3586,725.2072 2679.925,579.8706 3093.8574,704.9137 " fill="none" id="urt_nrtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="3096.0992,698.2797,3113.1409,710.8726,3091.9658,711.6557,3096.0992,698.2797" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[37a8b7f2877a6b7bb4e9d0352ce3d221]
-link urt_nrtsubscriber_t to urt_message_t--><path d="M1500.9917,589.6033 C1412.3797,625.9658 1307.2133,669.1214 1219.9177,704.9436 " fill="none" id="urt_nrtsubscriber_t-&gt;urt_message_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="1215.2492,706.8594,1225.094,707.1433,1219.8749,704.9613,1222.0569,699.7422,1215.2492,706.8594" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[6d81edfa5aa102b898ad487ae19b49f9]
-link urt_srtsubscriber_t to urt_basesubscriber_t--><path d="M4446.8492,609.0151 C4385.961,622.8959 4323.4105,636.1204 4264,646.9531 C3938.22,706.3547 3550.4148,747.2295 3351.013,766.0919 " fill="none" id="urt_srtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="3351.4203,773.0843,3330.8536,767.9844,3350.1117,759.1456,3351.4203,773.0843" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[47304731969ac4130b45cc7169c5cada]
-reverse link urt_srtsubscriber_t to urt_srtusefulnessfunc_t--><path d="M4823,622.0612 C4823,667.4783 4823,716.6246 4823,747.342 " fill="none" id="urt_srtsubscriber_t&lt;-urt_srtusefulnessfunc_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="4823,609.0557,4819,615.0557,4823,621.0557,4827,615.0557,4823,609.0557" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="4814.7063" y="628.778">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="4796.525" y="736.5823">0..1</text><!--MD5=[dffdac3aea8c81c86dd1d0b8122fcada]
-link urt_srtsubscriber_t to urt_message_t--><path d="M4472.5378,608.9959 C4403.885,624.4322 4332.0632,638.1893 4264,646.9531 C3602.4393,732.1356 1920.9167,597.116 1263,706.9531 C1258.7859,707.6566 1254.5419,708.4236 1250.2776,709.2477 " fill="none" id="urt_srtsubscriber_t-&gt;urt_message_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="1245.2629,710.2409,1254.8685,712.4161,1250.1676,709.2695,1253.3143,704.5686,1245.2629,710.2409" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[f626d284cba98e1d5d5fe914b1fa4188]
-link urt_frtsubscriber_t to urt_basesubscriber_t--><path d="M3528.3905,625.6265 C3467.0717,655.7192 3402.9567,687.1842 3349.0246,713.6518 " fill="none" id="urt_frtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="3351.8079,720.0833,3330.7695,722.6106,3345.64,707.5152,3351.8079,720.0833" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[cfcdebdb88febc368723fd91f781523c]
-link urt_frtsubscriber_t to urt_message_t--><path d="M3371.1778,625.4981 C3332.1799,633.9851 3292.9705,641.391 3255,646.9531 C2378.6178,775.329 2135.8945,556.682 1263,706.9531 C1258.7896,707.6779 1254.5488,708.4645 1250.2876,709.3064 " fill="none" id="urt_frtsubscriber_t-&gt;urt_message_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="1245.2763,710.3199,1254.8906,712.4565,1250.1771,709.3288,1253.3048,704.6153,1245.2763,710.3199" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[1ea71f2b33e56ab0ac5545988c1af396]
-link urt_hrtsubscriber_t to urt_basesubscriber_t--><path d="M2982.7123,646.9972 C3017.82,663.8002 3053.0613,681.278 3091.3977,701.4154 " fill="none" id="urt_hrtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="3094.8401,695.3173,3109.2402,710.862,3088.2893,707.6902,3094.8401,695.3173" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[ea2ec5c5272e65289dabade75a749f58]
-reverse link urt_hrtsubscriber_t to urt_hrtsubscriber_t--><path d="M3231.3399,487.8326 C3245.8539,494.6417 3254,502.8486 3254,512.4531 C3254,524.5058 3241.1717,534.3575 3219.0292,542.0082 " fill="none" id="urt_hrtsubscriber_t&lt;-urt_hrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="3219.0292,482.898,3223.1102,488.8432,3230.1677,487.3628,3226.0867,481.4176,3219.0292,482.898" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3226.7077" y="479.4456">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="3226.8202" y="539.3871">0..1</text><!--MD5=[a8adaa0500715125c1ab51b9b0fda3ce]
-link urt_hrtsubscriber_t to urt_message_t--><path d="M2134.872,644.1203 C2128.8881,645.0943 2122.9292,646.0392 2117,646.9531 C1740.9494,704.9143 1636.6082,634.9082 1263,706.9531 C1258.7338,707.7758 1254.435,708.6551 1250.1138,709.5848 " fill="none" id="urt_hrtsubscriber_t-&gt;urt_message_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="1245.0316,710.699,1254.6794,712.6787,1249.9156,709.6282,1252.9661,704.8643,1245.0316,710.699" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[54fcf25ad8c5f1d36e678e42d5bfd4cc]
-reverse link urt_publisher_t to urt_topic_t--><path d="M818.8622,512.4531 C826.1684,512.4531 833.4747,512.4531 840.7809,512.4531 " fill="none" id="urt_publisher_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="805.7109,512.4531,811.7109,516.4531,817.7109,512.4531,811.7109,508.4531,805.7109,512.4531" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="813.7488" y="509.3708">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="825.1161" y="509.2321">1</text><!--MD5=[5025b4c4053b8e7c7ca8a657f09f21c0]
-link urt_publisher_t to urt_message_t--><path d="M566.823,577.0622 C658.1356,615.6665 774.3976,664.8186 869.0644,704.841 " fill="none" id="urt_publisher_t-&gt;urt_message_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="873.8401,706.86,867.1083,699.6709,869.2348,704.9129,863.9929,707.0394,873.8401,706.86" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[6b2afc1defaa6ed5a86f99c07f8466dd]
-reverse link urt_topic_t to urt_topic_t--><path d="M1237.0439,476.3703 C1251.3061,484.6063 1260,496.6339 1260,512.4531 C1260,532.3047 1246.309,546.1852 1225.1039,554.0949 " fill="none" id="urt_topic_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1225.1039,470.8113,1228.855,476.97,1235.9826,475.8762,1232.2316,469.7175,1225.1039,470.8113" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1232.7642" y="465.9637">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1233.0767" y="552.5005">0..1</text><!--MD5=[ed3fb6de0913094c41bd74c175d366df]
-reverse link urt_topic_t to urt_hrtsubscriber_t--><path d="M1177.7361,373.4498 C1204.5888,352.8434 1233.5161,333.6369 1263,318.9531 C1270.1417,315.3963 1272.5719,315.8476 1280.5,314.9531 C1325.7131,309.8517 2054.2869,309.8517 2099.5,314.9531 C2187.5516,324.888 2279.7005,349.4069 2363.8741,377.9215 " fill="none" id="urt_topic_t&lt;-urt_hrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1167.1558,381.7225,1174.3463,381.1778,1176.6091,374.331,1169.4186,374.8756,1167.1558,381.7225" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1166.6804" y="370.8054">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="2321.0778" y="366.7847">0..1</text><!--MD5=[0b5167e958c0ed93ffc0c98ce399b54d]
-reverse link urt_topic_t to urt_message_t--><path d="M1037.8766,656.3124 C1038.4682,673.7637 1039.051,690.9572 1039.5838,706.6751 " fill="none" id="urt_topic_t&lt;-urt_message_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1037.4341,643.2586,1033.6397,649.3907,1037.8408,655.2517,1041.6351,649.1196,1037.4341,643.2586" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1029.4578" y="662.8962">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1030.9221" y="695.6438">1</text><!--MD5=[05f2c35569573d3273c65d3342945557]
-reverse link urt_service_t to urt_service_t--><path d="M7693.2128,481.5207 C7707.5894,489.3534 7716,499.6642 7716,512.4531 C7716,528.5019 7702.7552,540.6483 7681.0965,548.8921 " fill="none" id="urt_service_t&lt;-urt_service_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="7681.0965,476.0141,7684.9038,482.1382,7692.0211,480.9792,7688.2139,474.8551,7681.0965,476.0141" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="7689.2006" y="471.9202">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="7689.4131" y="546.734">0..1</text><!--MD5=[586e61fedafd54ae7ea71cebd9f9032a]
-reverse link urt_service_t to urt_servicefunc_t--><path d="M7380,628.6021 C7380,672.1798 7380,718.1821 7380,747.426 " fill="none" id="urt_service_t&lt;-urt_servicefunc_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="7380,615.4823,7376,621.4823,7380,627.4823,7384,621.4823,7380,615.4823" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="7371.7188" y="635.3376">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="7353.375" y="736.2104">0..1</text><!--MD5=[694e7400eb99f74d44ea388aed89d199]
-reverse link urt_core_t to urt_node_t--><path d="M6178,324.3176 C6178,348.6799 6178,373.5026 6178,396.7874 " fill="none" id="urt_core_t&lt;-urt_node_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6178,311.2384,6174,317.2384,6178,323.2384,6182,317.2384,6178,311.2384" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6169.8063" y="330.5231">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="6153.2313" y="385.9598">0..1</text><!--MD5=[250695c91040478b50550bc37a8775c7]
-reverse link urt_core_t to urt_topic_t--><path d="M5993.0393,172.1608 C5124.9701,182.9541 1487.6328,233.1507 1263,318.9531 C1225.5865,333.2438 1189.9335,356.358 1158.3481,381.7206 " fill="none" id="urt_core_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="6006.2383,171.9971,6000.1891,168.0719,5994.2392,172.1461,6000.2884,176.0713,6006.2383,171.9971" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="5990.2741" y="168.8271">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1140.901" y="370.8034">0..1</text><!--MD5=[8d0a227ec56585cdbc167f8316b34b64]
-reverse link urt_core_t to urt_service_t--><path d="M6362.9198,179.6079 C6547.455,194.0869 6836.517,230.0497 7071,318.9531 C7130.0371,341.3368 7189.981,375.6553 7241.1616,409.2093 " fill="none" id="urt_core_t&lt;-urt_service_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="6349.8161,178.6021,6355.4923,183.0496,6361.7809,179.5206,6356.1047,175.0731,6349.8161,178.6021" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6357.2333" y="175.7271">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="7206.5558" y="398.5063">0..1</text><!--MD5=[8d087f1e7d37a6be8f03d7a9a644bbe9]
+<?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]
+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]
+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]
+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]
+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]
+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]
+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]
+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]
+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]
+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]
+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]
+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]
+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 fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="173" x="861" y="563.687">hrtReleased : urt_osCondvar_t</text><ellipse cx="852" cy="573.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="209" x="861" y="576.4917">mandatoryMessage : urt_message_t</text><ellipse cx="852" cy="586.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="186" x="861" y="589.2964">latestMessage : urt_message_t*</text><ellipse cx="852" cy="615.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="212" x="861" y="618.9058">hrtSubscribers : urt_hrtsubscriber_t*</text><ellipse cx="852" cy="628.5" 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="170" x="861" y="631.7104">qosRateTimer : urt_osTimer_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="842" x2="900.5" y1="602.293" y2="602.293"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="265" x="900.5" y="605.6011">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1165.5" x2="1224" y1="602.293" y2="602.293"/><ellipse cx="852" cy="658.1094" 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="195" x="861" y="661.3198">numMessagesPublished : uint64_t</text><ellipse cx="852" cy="670.9141" 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="197" x="861" y="674.1245">numMessagesDiscarded : uint64_t</text><ellipse cx="852" cy="683.7188" 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="176" x="861" y="686.9292">numSubscribers : unsigned int</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="842" x2="924.5" y1="644.707" y2="644.707"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="924.5" y="648.0151">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1141.5" x2="1224" y1="644.707" y2="644.707"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="842" x2="1224" y1="693.5234" y2="693.5234"/><ellipse cx="852" cy="704.5234" 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="358" x="861" y="707.7339">urtTopicInit (topic : urt_topic_t*, id : urt_topicid_t) : urt_status_t</text><!--MD5=[50a042e24f957794dab9ba3ea8701c50]
+class urt_basesubscriber_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="133.6328" id="urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="225" x="2564.5" y="778.9531"/><ellipse cx="2606.95" cy="794.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2606.4344,795.5156 Q2604.575,794.8125 2603.9188,794.0469 Q2603.2781,793.2656 2603.2781,791.9531 Q2603.2781,790.2656 2604.3563,789.2969 Q2605.4344,788.3281 2607.3094,788.3281 Q2608.1688,788.3281 2609.0125,788.5313 Q2609.8719,788.7188 2610.7156,789.1094 L2610.7156,791.5 Q2609.9344,790.9375 2609.1063,790.6563 Q2608.2938,790.3594 2607.4969,790.3594 Q2606.6219,790.3594 2606.1375,790.7188 Q2605.6688,791.0781 2605.6688,791.7344 Q2605.6688,792.25 2606.0125,792.5938 Q2606.3563,792.9219 2607.45,793.3281 L2608.5125,793.7344 Q2609.9969,794.2813 2610.7,795.1875 Q2611.4188,796.0938 2611.4188,797.4688 Q2611.4188,799.3438 2610.3094,800.2656 Q2609.2,801.1875 2606.95,801.1875 Q2606.0281,801.1875 2605.1063,800.9688 Q2604.1844,800.75 2603.325,800.3281 L2603.325,797.7969 Q2604.2938,798.4844 2605.2156,798.8281 Q2606.1375,799.1719 2607.0281,799.1719 Q2607.9344,799.1719 2608.4344,798.7656 Q2608.9344,798.3438 2608.9344,797.6094 Q2608.9344,797.0469 2608.5906,796.6406 Q2608.2625,796.2188 2607.6375,795.9688 L2606.4344,795.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="132" x="2627.05" y="799.1074">urt_basesubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2565.5" x2="2788.5" y1="810.9531" y2="810.9531"/><ellipse cx="2575.5" cy="821.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="104" x="2584.5" y="825.1636">topic : urt_topic_t*</text><ellipse cx="2575.5" cy="834.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="198" x="2584.5" y="837.9683">evtListener : urt_osEventListener_t</text><ellipse cx="2575.5" cy="847.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="175" x="2584.5" y="850.7729">lastMessage : urt_message_t*</text><ellipse cx="2575.5" cy="860.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="186" x="2584.5" y="863.5776">lastMessageTime : urt_osTime_t</text><ellipse cx="2575.5" cy="889.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="136" x="2584.5" y="893.187">sumLatencies : uint64_t</text><ellipse cx="2575.5" cy="902.7813" 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="190" x="2584.5" y="905.9917">numMessagesReceived : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2565.5" x2="2568.5" y1="876.5742" y2="876.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="2568.5" y="879.8823">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2785.5" x2="2788.5" y1="876.5742" y2="876.5742"/><!--MD5=[9ff46073dd541e50679ef35e851c67d6]
+class urt_nrtsubscriber_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="154.4375" id="urt_nrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="821" x="1278.5" y="506.9531"/><ellipse cx="1625.25" cy="522.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1624.7344,523.5156 Q1622.875,522.8125 1622.2188,522.0469 Q1621.5781,521.2656 1621.5781,519.9531 Q1621.5781,518.2656 1622.6563,517.2969 Q1623.7344,516.3281 1625.6094,516.3281 Q1626.4688,516.3281 1627.3125,516.5313 Q1628.1719,516.7188 1629.0156,517.1094 L1629.0156,519.5 Q1628.2344,518.9375 1627.4063,518.6563 Q1626.5938,518.3594 1625.7969,518.3594 Q1624.9219,518.3594 1624.4375,518.7188 Q1623.9688,519.0781 1623.9688,519.7344 Q1623.9688,520.25 1624.3125,520.5938 Q1624.6563,520.9219 1625.75,521.3281 L1626.8125,521.7344 Q1628.2969,522.2813 1629,523.1875 Q1629.7188,524.0938 1629.7188,525.4688 Q1629.7188,527.3438 1628.6094,528.2656 Q1627.5,529.1875 1625.25,529.1875 Q1624.3281,529.1875 1623.4063,528.9688 Q1622.4844,528.75 1621.625,528.3281 L1621.625,525.7969 Q1622.5938,526.4844 1623.5156,526.8281 Q1624.4375,527.1719 1625.3281,527.1719 Q1626.2344,527.1719 1626.7344,526.7656 Q1627.2344,526.3438 1627.2344,525.6094 Q1627.2344,525.0469 1626.8906,524.6406 Q1626.5625,524.2188 1625.9375,523.9688 L1624.7344,523.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="119" x="1645.75" y="527.1074">urt_nrtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1279.5" x2="2098.5" y1="538.9531" y2="538.9531"/><ellipse cx="1289.5" cy="566.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="138" x="1298.5" y="569.9683">minLatency : urt_delay_t</text><ellipse cx="1289.5" cy="579.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="141" x="1298.5" y="582.7729">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1279.5" x2="1580.5" y1="553.3555" y2="553.3555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="1580.5" y="556.6636">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1797.5" x2="2098.5" y1="553.3555" y2="553.3555"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="1279.5" x2="2098.5" y1="589.3672" y2="589.3672"/><ellipse cx="1289.5" cy="600.3672" 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="347" x="1298.5" y="603.5776">urtNrtSubscriberInit (subscriber : urt_nrtsubscriber_t*) : void</text><ellipse cx="1289.5" cy="613.1719" 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="715" x="1298.5" y="616.3823">urtNrtSubscriberSubscribe (subscriber : urt_nrtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*) : urt_status_t</text><ellipse cx="1289.5" cy="625.9766" 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="785" x="1298.5" y="629.187">urtNrtSubscriberFetchNextMessage (subscriber : urt_nrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="1289.5" cy="638.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="795" x="1298.5" y="641.9917">urtNrtSubscriberFetchLatestMessage (subscriber : urt_nrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="1289.5" cy="651.5859" 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="446" x="1298.5" y="654.7964">urtNrtSubscriberUnsubscribe (subscriber : urt_nrtsubscriber_t*) : urt_status_t</text><!--MD5=[5c7929572d87ccc448d875bea5da0fb1]
+class urt_srtsubscriber_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="192.8516" id="urt_srtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="1044" x="4281" y="487.4531"/><ellipse cx="4739.75" cy="503.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4739.2344,504.0156 Q4737.375,503.3125 4736.7188,502.5469 Q4736.0781,501.7656 4736.0781,500.4531 Q4736.0781,498.7656 4737.1563,497.7969 Q4738.2344,496.8281 4740.1094,496.8281 Q4740.9688,496.8281 4741.8125,497.0313 Q4742.6719,497.2188 4743.5156,497.6094 L4743.5156,500 Q4742.7344,499.4375 4741.9063,499.1563 Q4741.0938,498.8594 4740.2969,498.8594 Q4739.4219,498.8594 4738.9375,499.2188 Q4738.4688,499.5781 4738.4688,500.2344 Q4738.4688,500.75 4738.8125,501.0938 Q4739.1563,501.4219 4740.25,501.8281 L4741.3125,502.2344 Q4742.7969,502.7813 4743.5,503.6875 Q4744.2188,504.5938 4744.2188,505.9688 Q4744.2188,507.8438 4743.1094,508.7656 Q4742,509.6875 4739.75,509.6875 Q4738.8281,509.6875 4737.9063,509.4688 Q4736.9844,509.25 4736.125,508.8281 L4736.125,506.2969 Q4737.0938,506.9844 4738.0156,507.3281 Q4738.9375,507.6719 4739.8281,507.6719 Q4740.7344,507.6719 4741.2344,507.2656 Q4741.7344,506.8438 4741.7344,506.1094 Q4741.7344,505.5469 4741.3906,505.1406 Q4741.0625,504.7188 4740.4375,504.4688 L4739.2344,504.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="118" x="4760.25" y="507.6074">urt_srtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4282" x2="5324" y1="519.4531" y2="519.4531"/><ellipse cx="4292" cy="530.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="189" x="4301" y="533.6636">usefulnesscb : urt_usefulness_f*</text><ellipse cx="4292" cy="543.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="98" x="4301" y="546.4683">cbparams : void*</text><ellipse cx="4292" cy="572.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="138" x="4301" y="576.0776">minLatency : urt_delay_t</text><ellipse cx="4292" cy="585.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="141" x="4301" y="588.8823">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4282" x2="4694.5" y1="559.4648" y2="559.4648"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="4694.5" y="562.7729">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4911.5" x2="5324" y1="559.4648" y2="559.4648"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4282" x2="5324" y1="595.4766" y2="595.4766"/><ellipse cx="4292" cy="606.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="347" x="4301" y="609.687">urtSrtSubscriberInit (subscriber : urt_srtsubscriber_t*) : void</text><ellipse cx="4292" cy="619.2813" 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="1018" x="4301" y="622.4917">urtSrtSubscriberSubscribe (subscriber : urt_srtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, usefulnesscb : urt_usefulness_f*, cbparams : void*) : urt_status_t</text><ellipse cx="4292" cy="632.0859" 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="785" x="4301" y="635.2964">urtSrtSubscriberFetchNextMessage (subscriber : urt_srtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="4292" cy="644.8906" 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="795" x="4301" y="648.1011">urtSrtSubscriberFetchLatestMessage (subscriber : urt_srtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="4292" cy="657.6953" 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="570" x="4301" y="660.9058">urtSrtSubscriberCalculateUsefulness (subscriber : urt_srtsubscriber_t*, latency : urt_delay_t) : float</text><ellipse cx="4292" cy="670.5" 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="446" x="4301" y="673.7104">urtSrtSubscriberUnsubscribe (subscriber : urt_srtsubscriber_t*) : urt_status_t</text><!--MD5=[17838fb05fe219fd399839979ec8a4a4]
+class urt_frtsubscriber_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="226.4609" id="urt_frtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="974" x="3272" y="470.9531"/><ellipse cx="3697.25" cy="486.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3696.7344,487.5156 Q3694.875,486.8125 3694.2188,486.0469 Q3693.5781,485.2656 3693.5781,483.9531 Q3693.5781,482.2656 3694.6563,481.2969 Q3695.7344,480.3281 3697.6094,480.3281 Q3698.4688,480.3281 3699.3125,480.5313 Q3700.1719,480.7188 3701.0156,481.1094 L3701.0156,483.5 Q3700.2344,482.9375 3699.4063,482.6563 Q3698.5938,482.3594 3697.7969,482.3594 Q3696.9219,482.3594 3696.4375,482.7188 Q3695.9688,483.0781 3695.9688,483.7344 Q3695.9688,484.25 3696.3125,484.5938 Q3696.6563,484.9219 3697.75,485.3281 L3698.8125,485.7344 Q3700.2969,486.2813 3701,487.1875 Q3701.7188,488.0938 3701.7188,489.4688 Q3701.7188,491.3438 3700.6094,492.2656 Q3699.5,493.1875 3697.25,493.1875 Q3696.3281,493.1875 3695.4063,492.9688 Q3694.4844,492.75 3693.625,492.3281 L3693.625,489.7969 Q3694.5938,490.4844 3695.5156,490.8281 Q3696.4375,491.1719 3697.3281,491.1719 Q3698.2344,491.1719 3698.7344,490.7656 Q3699.2344,490.3438 3699.2344,489.6094 Q3699.2344,489.0469 3698.8906,488.6406 Q3698.5625,488.2188 3697.9375,487.9688 L3696.7344,487.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="115" x="3717.75" y="491.1074">urt_frtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3273" x2="4245" y1="502.9531" y2="502.9531"/><ellipse cx="3283" cy="530.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="157" x="3292" y="533.9683">deadlineOffset : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3273" x2="3613.5" y1="517.3555" y2="517.3555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="291" x="3613.5" y="520.6636">URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3904.5" x2="4245" y1="517.3555" y2="517.3555"/><ellipse cx="3283" cy="560.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="124" x="3292" y="563.5776">maxJitter : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3273" x2="3623.5" y1="546.9648" y2="546.9648"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="271" x="3623.5" y="550.2729">URT_CFG_PUBSUB_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3894.5" x2="4245" y1="546.9648" y2="546.9648"/><ellipse cx="3283" cy="589.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="138" x="3292" y="593.187">minLatency : urt_delay_t</text><ellipse cx="3283" cy="602.7813" 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="3292" y="605.9917">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3273" x2="3505" y1="576.5742" y2="576.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="508" x="3505" y="579.8823">URT_CFG_PUBSUB_QOS_JITTERCHECKS == true ||  URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4013" x2="4245" y1="576.5742" y2="576.5742"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="3273" x2="4245" y1="612.5859" y2="612.5859"/><ellipse cx="3283" cy="623.5859" 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="342" x="3292" y="626.7964">urtFrtSubscriberInit (subscriber : urt_frtsubscriber_t*) : void</text><ellipse cx="3283" cy="636.3906" 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="948" x="3292" y="639.6011">urtFrtSubscriberSubscribe (subscriber : urt_frtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, deadline : urt_delay_t, jitter : urt_delay_t) : urt_status_t</text><ellipse cx="3283" cy="649.1953" 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="780" x="3292" y="652.4058">urtFrtSubscriberFetchNextMessage (subscriber : urt_frtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="3283" cy="662" 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="790" x="3292" y="665.2104">urtFrtSubscriberFetchLatestMessage (subscriber : urt_frtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="3283" cy="674.8047" 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="540" x="3292" y="678.0151">urtFrtSubscriberCalculateValidity (subscriber : urt_frtsubscriber_t*, latency : urt_delay_t) : bool</text><ellipse cx="3283" cy="687.6094" 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="441" x="3292" y="690.8198">urtFrtSubscriberUnsubscribe (subscriber : urt_frtsubscriber_t*) : urt_status_t</text><!--MD5=[104dc879e5721421b987fcc467bc3a1d]
+class urt_hrtsubscriber_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="268.875" id="urt_hrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="1084" x="2135" y="449.4531"/><ellipse cx="2613.25" cy="465.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2612.7344,466.0156 Q2610.875,465.3125 2610.2188,464.5469 Q2609.5781,463.7656 2609.5781,462.4531 Q2609.5781,460.7656 2610.6563,459.7969 Q2611.7344,458.8281 2613.6094,458.8281 Q2614.4688,458.8281 2615.3125,459.0313 Q2616.1719,459.2188 2617.0156,459.6094 L2617.0156,462 Q2616.2344,461.4375 2615.4063,461.1563 Q2614.5938,460.8594 2613.7969,460.8594 Q2612.9219,460.8594 2612.4375,461.2188 Q2611.9688,461.5781 2611.9688,462.2344 Q2611.9688,462.75 2612.3125,463.0938 Q2612.6563,463.4219 2613.75,463.8281 L2614.8125,464.2344 Q2616.2969,464.7813 2617,465.6875 Q2617.7188,466.5938 2617.7188,467.9688 Q2617.7188,469.8438 2616.6094,470.7656 Q2615.5,471.6875 2613.25,471.6875 Q2612.3281,471.6875 2611.4063,471.4688 Q2610.4844,471.25 2609.625,470.8281 L2609.625,468.2969 Q2610.5938,468.9844 2611.5156,469.3281 Q2612.4375,469.6719 2613.3281,469.6719 Q2614.2344,469.6719 2614.7344,469.2656 Q2615.2344,468.8438 2615.2344,468.1094 Q2615.2344,467.5469 2614.8906,467.1406 Q2614.5625,466.7188 2613.9375,466.4688 L2612.7344,466.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="119" x="2633.75" y="469.6074">urt_hrtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2136" x2="3218" y1="481.4531" y2="481.4531"/><ellipse cx="2146" cy="492.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="151" x="2155" y="495.6636">next : urt_hrtsubscriber_t*</text><ellipse cx="2146" 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="157" x="2155" y="525.2729">deadlineOffset : urt_delay_t</text><ellipse cx="2146" 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="194" x="2155" y="538.0776">qosDeadlineTimer : urt_osTimer_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2136" x2="2531.5" y1="508.6602" y2="508.6602"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="291" x="2531.5" y="511.9683">URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2822.5" x2="3218" y1="508.6602" y2="508.6602"/><ellipse cx="2146" cy="564.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="124" x="2155" y="567.687">maxJitter : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2136" x2="2541.5" y1="551.0742" y2="551.0742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="271" x="2541.5" y="554.3823">URT_CFG_PUBSUB_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2812.5" x2="3218" y1="551.0742" y2="551.0742"/><ellipse cx="2146" cy="594.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="138" x="2155" y="597.2964">minLatency : urt_delay_t</text><ellipse cx="2146" cy="606.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="141" x="2155" y="610.1011">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2136" x2="2425" y1="580.6836" y2="580.6836"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="504" x="2425" y="583.9917">URT_CFG_PUBSUB_QOS_JITTERCHECKS == true || URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2929" x2="3218" y1="580.6836" y2="580.6836"/><ellipse cx="2146" cy="636.5" 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="150" x="2155" y="639.7104">expectedRate : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2136" x2="2544.5" y1="623.0977" y2="623.0977"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="265" x="2544.5" y="626.4058">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2809.5" x2="3218" y1="623.0977" y2="623.0977"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="2136" x2="3218" y1="646.3047" y2="646.3047"/><ellipse cx="2146" cy="657.3047" 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="347" x="2155" y="660.5151">urtHrtSubscriberInit (subscriber : urt_hrtsubscriber_t*) : void</text><ellipse cx="2146" cy="670.1094" 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="1058" x="2155" y="673.3198">urtHrtSubscriberSubscribe (subscriber : urt_hrtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, deadline : urt_delay_t, rate : urt_delay_t, jitter : urt_delay_t) : urt_status_t</text><ellipse cx="2146" cy="682.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="785" x="2155" y="686.1245">urtHrtSubscriberFetchNextMessage (subscriber : urt_hrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="2146" cy="695.7188" 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="795" x="2155" y="698.9292">urtHrtSubscriberFetchLatestMessage (subscriber : urt_hrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="2146" cy="708.5234" 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="446" x="2155" y="711.7339">urtHrtSubscriberUnsubscribe (subscriber : urt_hrtsubscriber_t*) : urt_status_t</text><!--MD5=[e60e0f8379a14e7a4a292c65add9d735]
+class urt_service_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="269.6797" id="urt_service_t" style="stroke: #A80036; stroke-width: 1.5;" width="596" x="7039" y="448.9531"/><ellipse cx="7293.25" cy="464.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M7292.7344,465.5156 Q7290.875,464.8125 7290.2188,464.0469 Q7289.5781,463.2656 7289.5781,461.9531 Q7289.5781,460.2656 7290.6563,459.2969 Q7291.7344,458.3281 7293.6094,458.3281 Q7294.4688,458.3281 7295.3125,458.5313 Q7296.1719,458.7188 7297.0156,459.1094 L7297.0156,461.5 Q7296.2344,460.9375 7295.4063,460.6563 Q7294.5938,460.3594 7293.7969,460.3594 Q7292.9219,460.3594 7292.4375,460.7188 Q7291.9688,461.0781 7291.9688,461.7344 Q7291.9688,462.25 7292.3125,462.5938 Q7292.6563,462.9219 7293.75,463.3281 L7294.8125,463.7344 Q7296.2969,464.2813 7297,465.1875 Q7297.7188,466.0938 7297.7188,467.4688 Q7297.7188,469.3438 7296.6094,470.2656 Q7295.5,471.1875 7293.25,471.1875 Q7292.3281,471.1875 7291.4063,470.9688 Q7290.4844,470.75 7289.625,470.3281 L7289.625,467.7969 Q7290.5938,468.4844 7291.5156,468.8281 Q7292.4375,469.1719 7293.3281,469.1719 Q7294.2344,469.1719 7294.7344,468.7656 Q7295.2344,468.3438 7295.2344,467.6094 Q7295.2344,467.0469 7294.8906,466.6406 Q7294.5625,466.2188 7293.9375,465.9688 L7292.7344,465.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="79" x="7313.75" y="469.1074">urt_service_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="7040" x2="7634" y1="480.9531" y2="480.9531"/><ellipse cx="7050" cy="491.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="115" x="7059" y="495.1636">next : urt_service_t*</text><ellipse cx="7050" cy="504.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="105" x="7059" y="507.9683">id : urt_serviceid_t</text><ellipse cx="7050" cy="517.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="113" x="7059" y="520.7729">lock : urt_osMutex_t</text><ellipse cx="7050" cy="530.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="236" x="7059" y="533.5776">requestQueue_front : urt_baserequest_t*</text><ellipse cx="7050" cy="543.1719" 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="240" x="7059" y="546.3823">requestQueue_hrtBack : urt_hrtrequest_t*</text><ellipse cx="7050" cy="555.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="256" x="7059" y="559.187">requestQueue_fsrtBack : urt_baserequest_t*</text><ellipse cx="7050" cy="568.7813" 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="7059" y="571.9917">requestQueue_back : urt_baserequest_t*</text><ellipse cx="7050" cy="581.5859" 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="7059" y="584.7964">evtSource : urt_osEventSource_t</text><ellipse cx="7050" cy="594.3906" 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="198" x="7059" y="597.6011">evtListener : urt_osEventListener_t</text><ellipse cx="7050" cy="624" 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="110" x="7059" y="627.2104">numCalls : uint64_t</text><ellipse cx="7050" cy="636.8047" 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="167" x="7059" y="640.0151">numOwnershipLost : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7040" x2="7241" y1="610.5977" y2="610.5977"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="192" x="7241" y="613.9058">URT_CFG_RPC_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7433" x2="7634" y1="610.5977" y2="610.5977"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="7040" x2="7634" y1="646.6094" y2="646.6094"/><ellipse cx="7050" cy="657.6094" 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="412" x="7059" y="660.8198">urtServiceInit (service : urt_service_t*, id : urt_serviceid_t) : urt_status_t</text><ellipse cx="7050" cy="670.4141" 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="549" x="7059" y="673.6245">urtServiceDispatch (service : urt_service_t*, payload : void*, bytes : size_t) : urt_baserequest_t*</text><ellipse cx="7050" cy="683.2188" 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="552" x="7059" y="686.4292">urtServiceAcquireRequest (service* urt_serviceid_t*, request : urt_baserequest_t*) : urt_status_t</text><ellipse cx="7050" cy="696.0234" 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="570" x="7059" y="699.2339">urtServiceTryAcquireRequest (service* urt_serviceid_t*, request : urt_baserequest_t*) : urt_status_t</text><ellipse cx="7050" cy="708.8281" 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="365" x="7059" y="712.0386">urtServiceRespond (request : urt_baserequest_t*) : urt_status_t</text><!--MD5=[7294e1cfaeb111bef046bc5d07a96458]
+class urt_baserequest_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="197.6563" id="urt_baserequest_t" style="stroke: #A80036; stroke-width: 1.5;" width="224" x="8519" y="484.9531"/><ellipse cx="8569.25" cy="500.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M8568.7344,501.5156 Q8566.875,500.8125 8566.2188,500.0469 Q8565.5781,499.2656 8565.5781,497.9531 Q8565.5781,496.2656 8566.6563,495.2969 Q8567.7344,494.3281 8569.6094,494.3281 Q8570.4688,494.3281 8571.3125,494.5313 Q8572.1719,494.7188 8573.0156,495.1094 L8573.0156,497.5 Q8572.2344,496.9375 8571.4063,496.6563 Q8570.5938,496.3594 8569.7969,496.3594 Q8568.9219,496.3594 8568.4375,496.7188 Q8567.9688,497.0781 8567.9688,497.7344 Q8567.9688,498.25 8568.3125,498.5938 Q8568.6563,498.9219 8569.75,499.3281 L8570.8125,499.7344 Q8572.2969,500.2813 8573,501.1875 Q8573.7188,502.0938 8573.7188,503.4688 Q8573.7188,505.3438 8572.6094,506.2656 Q8571.5,507.1875 8569.25,507.1875 Q8568.3281,507.1875 8567.4063,506.9688 Q8566.4844,506.75 8565.625,506.3281 L8565.625,503.7969 Q8566.5938,504.4844 8567.5156,504.8281 Q8568.4375,505.1719 8569.3281,505.1719 Q8570.2344,505.1719 8570.7344,504.7656 Q8571.2344,504.3438 8571.2344,503.6094 Q8571.2344,503.0469 8570.8906,502.6406 Q8570.5625,502.2188 8569.9375,501.9688 L8568.7344,501.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="115" x="8589.75" y="505.1074">urt_baserequest_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="8520" x2="8742" y1="516.9531" y2="516.9531"/><ellipse cx="8530" cy="527.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="147" x="8539" y="531.1636">prev : urt_baserequest_t*</text><ellipse cx="8530" cy="540.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="146" x="8539" y="543.9683">next : urt_baserequest_t*</text><ellipse cx="8530" cy="553.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="113" x="8539" y="556.7729">lock : urt_osMutex_t</text><ellipse cx="8530" cy="566.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="126" x="8539" y="569.5776">owner : urt_service_t*</text><ellipse cx="8530" cy="579.1719" 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="180" x="8539" y="582.3823">submissionTime : urt_osTime_t</text><ellipse cx="8530" cy="591.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="85" x="8539" y="595.187">payload : void*</text><ellipse cx="8530" cy="604.7813" 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="8539" y="607.9917">evtSource : urt_osEventSource_t</text><ellipse cx="8530" cy="617.5859" 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="198" x="8539" y="620.7964">evtListener : urt_osEventListener_t</text><ellipse cx="8530" cy="647.1953" 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="8539" y="650.4058">sumLatencies : uint64_t</text><ellipse cx="8530" cy="660" 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="110" x="8539" y="663.2104">numCalls : uint64_t</text><ellipse cx="8530" cy="672.8047" 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="108" x="8539" y="676.0151">numFails : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8520" x2="8535" y1="633.793" y2="633.793"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="192" x="8535" y="637.1011">URT_CFG_RPC_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8727" x2="8742" y1="633.793" y2="633.793"/><!--MD5=[65269c71e9a2a076bc4014c9b128c9e6]
+class urt_nrtrequest_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="167.2422" id="urt_nrtrequest_t" style="stroke: #A80036; stroke-width: 1.5;" width="531" x="8365.5" y="155.9531"/><ellipse cx="8575.75" cy="171.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M8575.2344,172.5156 Q8573.375,171.8125 8572.7188,171.0469 Q8572.0781,170.2656 8572.0781,168.9531 Q8572.0781,167.2656 8573.1563,166.2969 Q8574.2344,165.3281 8576.1094,165.3281 Q8576.9688,165.3281 8577.8125,165.5313 Q8578.6719,165.7188 8579.5156,166.1094 L8579.5156,168.5 Q8578.7344,167.9375 8577.9063,167.6563 Q8577.0938,167.3594 8576.2969,167.3594 Q8575.4219,167.3594 8574.9375,167.7188 Q8574.4688,168.0781 8574.4688,168.7344 Q8574.4688,169.25 8574.8125,169.5938 Q8575.1563,169.9219 8576.25,170.3281 L8577.3125,170.7344 Q8578.7969,171.2813 8579.5,172.1875 Q8580.2188,173.0938 8580.2188,174.4688 Q8580.2188,176.3438 8579.1094,177.2656 Q8578,178.1875 8575.75,178.1875 Q8574.8281,178.1875 8573.9063,177.9688 Q8572.9844,177.75 8572.125,177.3281 L8572.125,174.7969 Q8573.0938,175.4844 8574.0156,175.8281 Q8574.9375,176.1719 8575.8281,176.1719 Q8576.7344,176.1719 8577.2344,175.7656 Q8577.7344,175.3438 8577.7344,174.6094 Q8577.7344,174.0469 8577.3906,173.6406 Q8577.0625,173.2188 8576.4375,172.9688 L8575.2344,172.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="102" x="8596.25" y="176.1074">urt_nrtrequest_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="8366.5" x2="8895.5" y1="187.9531" y2="187.9531"/><ellipse cx="8376.5" cy="215.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="138" x="8385.5" y="218.9683">minLatency : urt_delay_t</text><ellipse cx="8376.5" cy="228.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="141" x="8385.5" y="231.7729">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8366.5" x2="8535" y1="202.3555" y2="202.3555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="192" x="8535" y="205.6636">URT_CFG_RPC_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8727" x2="8895.5" y1="202.3555" y2="202.3555"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="8366.5" x2="8895.5" y1="238.3672" y2="238.3672"/><ellipse cx="8376.5" cy="249.3672" 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="297" x="8385.5" y="252.5776">urtNrtRequestInit (request : urt_nrtrequest_t*) : void</text><ellipse cx="8376.5" cy="262.1719" 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="367" x="8385.5" y="265.3823">urtNrtRequestAcquire (request : urt_nrtrequest_t*) : urt_status_t</text><ellipse cx="8376.5" cy="274.9766" 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="385" x="8385.5" y="278.187">urtNrtRequestTryAcquire (request : urt_nrtrequest_t*) : urt_status_t</text><ellipse cx="8376.5" cy="287.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="370" x="8385.5" y="290.9917">urtNrtRequestRelease (request : urt_nrtrequest_t*) : urt_status_t</text><ellipse cx="8376.5" cy="300.5859" 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="505" x="8385.5" y="303.7964">urtNrtRequestSubmit (request : urt_nrtrequest_t*, service : urt_service_t*) : urt_status_t</text><ellipse cx="8376.5" cy="313.3906" 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="371" x="8385.5" y="316.6011">urtNrtRequestRetrieve (request : urt_nrtrequest_t*) : urt_status_t</text><!--MD5=[e9d515ad43a4cecec056dd09bc14a3c2]
+class urt_srtrequest_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="180.0469" id="urt_srtrequest_t" style="stroke: #A80036; stroke-width: 1.5;" width="675" x="9623.5" y="149.4531"/><ellipse cx="9906.25" cy="165.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M9905.7344,166.0156 Q9903.875,165.3125 9903.2188,164.5469 Q9902.5781,163.7656 9902.5781,162.4531 Q9902.5781,160.7656 9903.6563,159.7969 Q9904.7344,158.8281 9906.6094,158.8281 Q9907.4688,158.8281 9908.3125,159.0313 Q9909.1719,159.2188 9910.0156,159.6094 L9910.0156,162 Q9909.2344,161.4375 9908.4063,161.1563 Q9907.5938,160.8594 9906.7969,160.8594 Q9905.9219,160.8594 9905.4375,161.2188 Q9904.9688,161.5781 9904.9688,162.2344 Q9904.9688,162.75 9905.3125,163.0938 Q9905.6563,163.4219 9906.75,163.8281 L9907.8125,164.2344 Q9909.2969,164.7813 9910,165.6875 Q9910.7188,166.5938 9910.7188,167.9688 Q9910.7188,169.8438 9909.6094,170.7656 Q9908.5,171.6875 9906.25,171.6875 Q9905.3281,171.6875 9904.4063,171.4688 Q9903.4844,171.25 9902.625,170.8281 L9902.625,168.2969 Q9903.5938,168.9844 9904.5156,169.3281 Q9905.4375,169.6719 9906.3281,169.6719 Q9907.2344,169.6719 9907.7344,169.2656 Q9908.2344,168.8438 9908.2344,168.1094 Q9908.2344,167.5469 9907.8906,167.1406 Q9907.5625,166.7188 9906.9375,166.4688 L9905.7344,166.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="101" x="9926.75" y="169.6074">urt_srtrequest_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="9624.5" x2="10297.5" y1="181.4531" y2="181.4531"/><ellipse cx="9634.5" cy="209.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="138" x="9643.5" y="212.4683">minLatency : urt_delay_t</text><ellipse cx="9634.5" cy="222.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="141" x="9643.5" y="225.2729">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="9624.5" x2="9865" y1="195.8555" y2="195.8555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="192" x="9865" y="199.1636">URT_CFG_RPC_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="10057" x2="10297.5" y1="195.8555" y2="195.8555"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="9624.5" x2="10297.5" y1="231.8672" y2="231.8672"/><ellipse cx="9634.5" cy="242.8672" 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="297" x="9643.5" y="246.0776">urtSrtRequestInit (request : urt_srtrequest_t*) : void</text><ellipse cx="9634.5" cy="255.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="367" x="9643.5" y="258.8823">urtSrtRequestAcquire (request : urt_srtrequest_t*) : urt_status_t</text><ellipse cx="9634.5" cy="268.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="385" x="9643.5" y="271.687">urtSrtRequestTryAcquire (request : urt_srtrequest_t*) : urt_status_t</text><ellipse cx="9634.5" cy="281.2813" 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="370" x="9643.5" y="284.4917">urtSrtRequestRelease (request : urt_srtrequest_t*) : urt_status_t</text><ellipse cx="9634.5" cy="294.0859" 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="505" x="9643.5" y="297.2964">urtSrtRequestSubmit (request : urt_srtrequest_t*, service : urt_service_t*) : urt_status_t</text><ellipse cx="9634.5" cy="306.8906" 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="371" x="9643.5" y="310.1011">urtSrtRequestRetrieve (request : urt_srtrequest_t*) : urt_status_t</text><ellipse cx="9634.5" cy="319.6953" 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="649" x="9643.5" y="322.9058">urtSrtCalculateUsefulness (request : urt_srtrequest_t*, usefulnesscb : urt_usefulness_f, cbparams : void*) : float</text><!--MD5=[240977dbca9212fa5365c87da90aa051]
+class urt_frtrequest_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="268.875" id="urt_frtrequest_t" style="stroke: #A80036; stroke-width: 1.5;" width="656" x="8932" y="104.9531"/><ellipse cx="9206.75" cy="120.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M9206.2344,121.5156 Q9204.375,120.8125 9203.7188,120.0469 Q9203.0781,119.2656 9203.0781,117.9531 Q9203.0781,116.2656 9204.1563,115.2969 Q9205.2344,114.3281 9207.1094,114.3281 Q9207.9688,114.3281 9208.8125,114.5313 Q9209.6719,114.7188 9210.5156,115.1094 L9210.5156,117.5 Q9209.7344,116.9375 9208.9063,116.6563 Q9208.0938,116.3594 9207.2969,116.3594 Q9206.4219,116.3594 9205.9375,116.7188 Q9205.4688,117.0781 9205.4688,117.7344 Q9205.4688,118.25 9205.8125,118.5938 Q9206.1563,118.9219 9207.25,119.3281 L9208.3125,119.7344 Q9209.7969,120.2813 9210.5,121.1875 Q9211.2188,122.0938 9211.2188,123.4688 Q9211.2188,125.3438 9210.1094,126.2656 Q9209,127.1875 9206.75,127.1875 Q9205.8281,127.1875 9204.9063,126.9688 Q9203.9844,126.75 9203.125,126.3281 L9203.125,123.7969 Q9204.0938,124.4844 9205.0156,124.8281 Q9205.9375,125.1719 9206.8281,125.1719 Q9207.7344,125.1719 9208.2344,124.7656 Q9208.7344,124.3438 9208.7344,123.6094 Q9208.7344,123.0469 9208.3906,122.6406 Q9208.0625,122.2188 9207.4375,121.9688 L9206.2344,121.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="98" x="9227.25" y="125.1074">urt_frtrequest_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="8933" x2="9587" y1="136.9531" y2="136.9531"/><ellipse cx="8943" cy="164.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="157" x="8952" y="167.9683">deadlineOffset : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8933" x2="9127" y1="151.3555" y2="151.3555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="266" x="9127" y="154.6636">URT_CFG_RPC_QOS_DEADLINECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="9393" x2="9587" y1="151.3555" y2="151.3555"/><ellipse cx="8943" cy="194.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="124" x="8952" y="197.5776">maxJitter : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8933" x2="9137" y1="180.9648" y2="180.9648"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="246" x="9137" y="184.2729">URT_CFG_RPC_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="9383" x2="9587" y1="180.9648" y2="180.9648"/><ellipse cx="8943" cy="223.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="138" x="8952" y="227.187">minLatency : urt_delay_t</text><ellipse cx="8943" cy="236.7813" 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="8952" y="239.9917">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8933" x2="9033" y1="210.5742" y2="210.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="454" x="9033" y="213.8823">URT_CFG_RPC_QOS_JITTERCHECKS == true || URT_CFG_RPC_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="9487" x2="9587" y1="210.5742" y2="210.5742"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="8933" x2="9587" y1="246.5859" y2="246.5859"/><ellipse cx="8943" cy="257.5859" 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="292" x="8952" y="260.7964">urtFrtRequestInit (request : urt_frtrequest_t*) : void</text><ellipse cx="8943" cy="270.3906" 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="362" x="8952" y="273.6011">urtFrtRequestAcquire (request : urt_frtrequest_t*) : urt_status_t</text><ellipse cx="8943" cy="283.1953" 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="8952" y="286.4058">urtFrtRequestTryAcquire (request : urt_frtrequest_t*) : urt_status_t</text><ellipse cx="8943" cy="296" 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="365" x="8952" y="299.2104">urtFrtRequestRelease (request : urt_frtrequest_t*) : urt_status_t</text><ellipse cx="8943" cy="308.8047" 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="630" x="8952" y="312.0151">urtFrtRequestSubmit (request : urt_frtrequest_t*, service : urt_service_t*, deadline : urt_delay_t) : urt_status_t</text><ellipse cx="8943" cy="321.6094" 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="366" x="8952" y="324.8198">urtFrtRequestRetrieve (request : urt_frtrequest_t*) : urt_status_t</text><ellipse cx="8943" cy="334.4141" 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="318" x="8952" y="337.6245">urtDrtCalculateValidity (request : urt_frtrequest_t) : bool</text><ellipse cx="8943" cy="364.0234" 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="419" x="8952" y="367.2339">urtFrtRequestGetMaxJitter(request : urt_frtrequest_t*) : urt_delay_t* const</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8933" x2="9137" y1="350.6211" y2="350.6211"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="246" x="9137" y="353.9292">URT_CFG_RPC_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="9383" x2="9587" y1="350.6211" y2="350.6211"/><!--MD5=[2b0c3d572fefe037473ca776bdd2f803]
+class urt_hrtrequest_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="285.6797" id="urt_hrtrequest_t" style="stroke: #A80036; stroke-width: 1.5;" width="661" x="7669.5" y="96.4531"/><ellipse cx="7944.75" cy="112.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M7944.2344,113.0156 Q7942.375,112.3125 7941.7188,111.5469 Q7941.0781,110.7656 7941.0781,109.4531 Q7941.0781,107.7656 7942.1563,106.7969 Q7943.2344,105.8281 7945.1094,105.8281 Q7945.9688,105.8281 7946.8125,106.0313 Q7947.6719,106.2188 7948.5156,106.6094 L7948.5156,109 Q7947.7344,108.4375 7946.9063,108.1563 Q7946.0938,107.8594 7945.2969,107.8594 Q7944.4219,107.8594 7943.9375,108.2188 Q7943.4688,108.5781 7943.4688,109.2344 Q7943.4688,109.75 7943.8125,110.0938 Q7944.1563,110.4219 7945.25,110.8281 L7946.3125,111.2344 Q7947.7969,111.7813 7948.5,112.6875 Q7949.2188,113.5938 7949.2188,114.9688 Q7949.2188,116.8438 7948.1094,117.7656 Q7947,118.6875 7944.75,118.6875 Q7943.8281,118.6875 7942.9063,118.4688 Q7941.9844,118.25 7941.125,117.8281 L7941.125,115.2969 Q7942.0938,115.9844 7943.0156,116.3281 Q7943.9375,116.6719 7944.8281,116.6719 Q7945.7344,116.6719 7946.2344,116.2656 Q7946.7344,115.8438 7946.7344,115.1094 Q7946.7344,114.5469 7946.3906,114.1406 Q7946.0625,113.7188 7945.4375,113.4688 L7944.2344,113.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="102" x="7965.25" y="116.6074">urt_hrtrequest_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="7670.5" x2="8329.5" y1="128.4531" y2="128.4531"/><ellipse cx="7680.5" cy="156.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="157" x="7689.5" y="159.4683">deadlineOffset : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7670.5" x2="7867" y1="142.8555" y2="142.8555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="266" x="7867" y="146.1636">URT_CFG_RPC_QOS_DEADLINECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8133" x2="8329.5" y1="142.8555" y2="142.8555"/><ellipse cx="7680.5" cy="185.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="7689.5" y="189.0776">maxJitter : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7670.5" x2="7877" y1="172.4648" y2="172.4648"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="246" x="7877" y="175.7729">URT_CFG_RPC_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8123" x2="8329.5" y1="172.4648" y2="172.4648"/><ellipse cx="7680.5" cy="215.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="145" x="7689.5" y="218.687">qosTimer : urt_osTimer_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7670.5" x2="7736" y1="202.0742" y2="202.0742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="528" x="7736" y="205.3823">URT_CFG_RPC_QOS_DEADLINECHECKS == true || URT_CFG_RPC_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8264" x2="8329.5" y1="202.0742" y2="202.0742"/><ellipse cx="7680.5" cy="245.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="138" x="7689.5" y="248.2964">minLatency : urt_delay_t</text><ellipse cx="7680.5" cy="257.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="141" x="7689.5" y="261.1011">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7670.5" x2="7773" y1="231.6836" y2="231.6836"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="454" x="7773" y="234.9917">URT_CFG_RPC_QOS_JITTERCHECKS == true || URT_CFG_RPC_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8227" x2="8329.5" y1="231.6836" y2="231.6836"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="7670.5" x2="8329.5" y1="267.6953" y2="267.6953"/><ellipse cx="7680.5" cy="278.6953" 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="297" x="7689.5" y="281.9058">urtHrtRequestInit (request : urt_hrtrequest_t*) : void</text><ellipse cx="7680.5" cy="291.5" 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="367" x="7689.5" y="294.7104">urtHrtRequestAcquire (request : urt_hrtrequest_t*) : urt_status_t</text><ellipse cx="7680.5" cy="304.3047" 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="385" x="7689.5" y="307.5151">urtHrtRequestTryAcquire (request : urt_hrtrequest_t*) : urt_status_t</text><ellipse cx="7680.5" cy="317.1094" 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="370" x="7689.5" y="320.3198">urtHrtRequestRelease (request : urt_hrtrequest_t*) : urt_status_t</text><ellipse cx="7680.5" cy="329.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="635" x="7689.5" y="333.1245">urtHrtRequestSubmit (request : urt_hrtrequest_t*, service : urt_service_t*, deadline : urt_delay_t) : urt_status_t</text><ellipse cx="7680.5" cy="342.7188" 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="371" x="7689.5" y="345.9292">urtHrtRequestRetrieve (request : urt_hrtrequest_t*) : urt_status_t</text><ellipse cx="7680.5" cy="372.3281" 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="424" x="7689.5" y="375.5386">urtHrtRequestGetMaxJitter(request : urt_hrtrequest_t*) : urt_delay_t* const</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="7670.5" x2="7877" y1="358.9258" y2="358.9258"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="246" x="7877" y="362.2339">URT_CFG_RPC_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="8123" x2="8329.5" y1="358.9258" y2="358.9258"/><!--MD5=[89d25e87afdd75480e1ec2bd05524873]
+class urt_core_t--><rect fill="#FEFECE" filter="url(#f1rypo70thvq1p)" height="281.6797" id="urt_core_t" style="stroke: #A80036; stroke-width: 1.5;" width="343" x="5983.5" y="98.4531"/><ellipse cx="6119.25" cy="114.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6118.7344,115.0156 Q6116.875,114.3125 6116.2188,113.5469 Q6115.5781,112.7656 6115.5781,111.4531 Q6115.5781,109.7656 6116.6563,108.7969 Q6117.7344,107.8281 6119.6094,107.8281 Q6120.4688,107.8281 6121.3125,108.0313 Q6122.1719,108.2188 6123.0156,108.6094 L6123.0156,111 Q6122.2344,110.4375 6121.4063,110.1563 Q6120.5938,109.8594 6119.7969,109.8594 Q6118.9219,109.8594 6118.4375,110.2188 Q6117.9688,110.5781 6117.9688,111.2344 Q6117.9688,111.75 6118.3125,112.0938 Q6118.6563,112.4219 6119.75,112.8281 L6120.8125,113.2344 Q6122.2969,113.7813 6123,114.6875 Q6123.7188,115.5938 6123.7188,116.9688 Q6123.7188,118.8438 6122.6094,119.7656 Q6121.5,120.6875 6119.25,120.6875 Q6118.3281,120.6875 6117.4063,120.4688 Q6116.4844,120.25 6115.625,119.8281 L6115.625,117.2969 Q6116.5938,117.9844 6117.5156,118.3281 Q6118.4375,118.6719 6119.3281,118.6719 Q6120.2344,118.6719 6120.7344,118.2656 Q6121.2344,117.8438 6121.2344,117.1094 Q6121.2344,116.5469 6120.8906,116.1406 Q6120.5625,115.7188 6119.9375,115.4688 L6118.7344,115.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="63" x="6139.75" y="118.6074">urt_core_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5984.5" x2="6325.5" y1="130.4531" y2="130.4531"/><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5991.5" y="138.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="119" x="6003.5" y="144.6636">_nodes : urt_node_t*</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5991.5" y="151.2578"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="192" x="6003.5" y="157.4683">_evtSource : urt_osEventSource_t</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5991.5" y="164.0625"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="119" x="6003.5" y="170.2729">_lock : urt_osMutex_t</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5991.5" y="176.8672"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="122" x="6003.5" y="183.0776">_status : urt_status_t</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5991.5" y="206.4766"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="117" x="6003.5" y="212.687">_topics : urt_topic_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5984.5" x2="6050" y1="196.0742" y2="196.0742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="210" x="6050" y="199.3823">URT_CFG_PUBSUB_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6260" x2="6325.5" y1="196.0742" y2="196.0742"/><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5991.5" y="236.0859"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="145" x="6003.5" y="242.2964">_services : urt_service_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5984.5" x2="6062.5" y1="225.6836" y2="225.6836"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="185" x="6062.5" y="228.9917">URT_CFG_RPC_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6247.5" x2="6325.5" y1="225.6836" y2="225.6836"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5984.5" x2="6325.5" y1="248.8906" y2="248.8906"/><ellipse cx="5994.5" cy="259.8906" 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="130" x="6003.5" y="263.1011">urtCoreInit (void) : void</text><ellipse cx="5994.5" cy="272.6953" 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="215" x="6003.5" y="275.9058">urtCoreGetStatus (void) : urt_status_t</text><ellipse cx="5994.5" cy="285.5" 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="177" x="6003.5" y="288.7104">urtCoreStartNodes (void) : void</text><ellipse cx="5994.5" cy="298.3047" 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="309" x="6003.5" y="301.5151">urtCoreSynchronize (node : urt_node_t*) : urt_status_t</text><ellipse cx="5994.5" cy="311.1094" 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="317" x="6003.5" y="314.3198">urtCoreStopNodes (reason : urt_status_t) : urt_status_t</text><ellipse cx="5994.5" cy="340.7188" 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="273" x="6003.5" y="343.9292">urtCoreGetTopic (id : urt_topicid_t) : urt_topic_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5984.5" x2="6050" y1="327.3164" y2="327.3164"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="210" x="6050" y="330.6245">URT_CFG_PUBSUB_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6260" x2="6325.5" y1="327.3164" y2="327.3164"/><ellipse cx="5994.5" cy="370.3281" 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="313" x="6003.5" y="373.5386">urtCoreGetService (id : urt_serviceid_t) : urt_service_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5984.5" x2="6062.5" y1="356.9258" y2="356.9258"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="185" x="6062.5" y="360.2339">URT_CFG_RPC_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6247.5" x2="6325.5" y1="356.9258" y2="356.9258"/><!--MD5=[182342162f0b9b45ddce11acc6582c59]
+reverse link urt_node_t to urt_node_t--><path d="M6937.9212,562.8785 C6952.4841,568.9256 6960.5,575.9505 6960.5,583.9531 C6960.5,593.9956 6947.8767,602.4983 6925.5332,609.4614 " fill="none" id="urt_node_t&lt;-urt_node_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6925.5332,558.4448,6929.8344,564.2327,6936.8314,562.4885,6932.5302,556.7006,6925.5332,558.4448" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6934.0047" y="555.15">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="6934.0703" y="606.7246">0,1</text><!--MD5=[55d7f7c946c3356baf68288566af1bf6]
+reverse link urt_node_t to urt_nodeSetupCallback_t--><path d="M5878.6717,705.1213 C5789.6061,745.938 5699.4142,788.0348 5642.8397,815.4419 " fill="none" id="urt_node_t&lt;-urt_nodeSetupCallback_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="5890.6583,699.6328,5883.5377,698.4939,5879.7477,704.6288,5886.8683,705.7676,5890.6583,699.6328" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="5864.6291" y="719.9714">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="5633.3046" y="804.2298">0,1</text><!--MD5=[55d7f7c946c3356baf68288566af1bf6]
+reverse link urt_node_t to urt_nodeSetupCallback_t--><path d="M5912.1611,701.751 C5821.4884,743.6073 5725.0101,787.2798 5660.4215,815.4419 " fill="none" id="urt_node_t&lt;-urt_nodeSetupCallback_t-1" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="5916.7481,699.6328,5906.9003,699.7746,5912.2087,701.7291,5910.2543,707.0376,5916.7481,699.6328" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[b913f036db99e36b937989146817bd94]
+reverse link urt_node_t to urt_nodeLoopCallback_t--><path d="M6142.2514,712.8795 C6142.1989,751.2058 6143.6019,789.7688 6146.4603,815.4419 " fill="none" id="urt_node_t&lt;-urt_nodeLoopCallback_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6142.3278,699.6328,6138.2933,705.6096,6142.2586,711.6326,6146.2931,705.6558,6142.3278,699.6328" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6133.2076" y="719.9714">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6135.7172" y="804.2298">1</text><!--MD5=[b913f036db99e36b937989146817bd94]
+reverse link urt_node_t to urt_nodeLoopCallback_t--><path d="M6168.4661,705.1213 C6168.7477,745.938 6167.273,788.0348 6164.0421,815.4419 " fill="none" id="urt_node_t&lt;-urt_nodeLoopCallback_t-1" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="6168.4176,699.6328,6164.4975,708.6679,6168.4619,704.6326,6172.4972,708.597,6168.4176,699.6328" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[496dffc41052f1912ec8ad492f24fe61]
+reverse link urt_node_t to urt_nodeShutdownCallback_t--><path d="M6419.6574,704.8715 C6513.1922,745.7662 6611.416,787.9789 6677.4708,815.4419 " fill="none" id="urt_node_t&lt;-urt_nodeShutdownCallback_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6407.6846,699.6328,6411.578,705.7026,6418.6782,704.4432,6414.7849,698.3735,6407.6846,699.6328" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6416.3931" y="719.9714">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="6638.105" y="804.2298">0,1</text><!--MD5=[496dffc41052f1912ec8ad492f24fe61]
+reverse link urt_node_t to urt_nodeShutdownCallback_t--><path d="M6438.3674,701.6263 C6534.8611,743.5205 6633.7108,787.2518 6695.0525,815.4419 " fill="none" id="urt_node_t&lt;-urt_nodeShutdownCallback_t-1" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="6433.7744,699.6328,6440.4376,706.8855,6438.361,701.6236,6443.6229,699.547,6433.7744,699.6328" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[536025241394544a90bc53fb552f3a08]
+reverse link urt_message_t to urt_message_t--><path d="M1248.5028,1017.5601 C1262.5209,1023.7125 1271,1032.5102 1271,1043.9531 C1271,1058.4551 1257.3815,1068.7084 1236.1293,1074.7131 " fill="none" id="urt_message_t&lt;-urt_message_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1236.1293,1013.1931,1240.456,1018.962,1247.4452,1017.1869,1243.1185,1011.418,1236.1293,1013.1931" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1244.2203" y="1008.7753">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="1243.7886" y="1072.6249">0,1</text><!--MD5=[aa8990705afdbad14c7f998fe04b6f05]
+reverse link urt_basesubscriber_t to urt_message_t--><path d="M2568.7112,918.1333 C2566.1446,919.1376 2563.5726,920.0801 2561,920.9531 C2321.2643,1002.3021 1593.9511,1030.6718 1236.1648,1039.8784 " fill="none" id="urt_basesubscriber_t&lt;-urt_message_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="2580.6632,913.0124,2573.5728,911.6986,2569.633,917.7383,2576.7234,919.0521,2580.6632,913.0124" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="2562.316" y="932.794">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="1243.8254" y="1036.5383">0,1</text><!--MD5=[0585cd4928de92ce6927d9c389eadd29]
+link urt_nrtsubscriber_t to urt_basesubscriber_t--><path d="M1891.7135,661.0027 C1962.4365,685.3368 2042.9049,710.2157 2118,726.9531 C2304.8793,768.6053 2368.4942,720.082 2545.1263,773.9702 " fill="none" id="urt_nrtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="2547.3836,767.3426,2564.314,780.0847,2543.1328,780.6817,2547.3836,767.3426" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[6d81edfa5aa102b898ad487ae19b49f9]
+link urt_srtsubscriber_t to urt_basesubscriber_t--><path d="M4478.0414,680.4988 C4407.9682,698.4065 4333.9284,715.1589 4264,726.9531 C3730.3517,816.9585 3084.2591,838.8977 2810.1996,844.2383 " fill="none" id="urt_srtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="2810.0655,851.242,2789.9385,844.6159,2809.8046,837.2444,2810.0655,851.242" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[f626d284cba98e1d5d5fe914b1fa4188]
+link urt_frtsubscriber_t to urt_basesubscriber_t--><path d="M3371.4405,697.0088 C3332.2104,707.5233 3292.881,717.6928 3255,726.9531 C3103.1803,764.0664 2927.0543,799.2045 2809.5003,821.5426 " fill="none" id="urt_frtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="2810.6553,828.4482,2789.7026,825.2889,2808.0523,814.6923,2810.6553,828.4482" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[1ea71f2b33e56ab0ac5545988c1af396]
+link urt_hrtsubscriber_t to urt_basesubscriber_t--><path d="M2677,718.7905 C2677,732.2868 2677,745.7288 2677,758.5427 " fill="none" id="urt_hrtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="2684.0001,758.7395,2677,778.7395,2670.0001,758.7394,2684.0001,758.7395" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[ea2ec5c5272e65289dabade75a749f58]
+reverse link urt_hrtsubscriber_t to urt_hrtsubscriber_t--><path d="M3231.3399,559.5191 C3245.8539,566.2767 3254,574.4213 3254,583.9531 C3254,595.9145 3241.1717,605.6916 3219.0292,613.2843 " fill="none" id="urt_hrtsubscriber_t&lt;-urt_hrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="3219.0292,554.6219,3223.1257,560.5564,3230.1793,559.0575,3226.0828,553.123,3219.0292,554.6219" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3226.7077" y="551.1727">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="3226.7921" y="610.66">0,1</text><!--MD5=[54fcf25ad8c5f1d36e678e42d5bfd4cc]
+reverse link urt_publisher_t to urt_topic_t--><path d="M818.8622,583.9531 C826.1684,583.9531 833.4747,583.9531 840.7809,583.9531 " fill="none" id="urt_publisher_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="805.7109,583.9531,811.7109,587.9531,817.7109,583.9531,811.7109,579.9531,805.7109,583.9531" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="813.7488" y="580.8708">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="825.1161" y="580.7321">1</text><!--MD5=[5025b4c4053b8e7c7ca8a657f09f21c0]
+link urt_publisher_t to urt_message_t--><path d="M501.0477,648.6412 C614.7489,733.1365 813.3827,880.748 933.0977,969.7123 " fill="none" id="urt_publisher_t-&gt;urt_message_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="937.3228,972.8521,932.4848,964.2735,933.3096,969.8699,927.7132,970.6947,937.3228,972.8521" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[6b2afc1defaa6ed5a86f99c07f8466dd]
+reverse link urt_topic_t to urt_topic_t--><path d="M1237.0439,548.1437 C1251.3061,556.3173 1260,568.2537 1260,583.9531 C1260,603.6543 1246.309,617.4297 1225.1039,625.2794 " fill="none" id="urt_topic_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1225.1039,542.6268,1228.8728,548.7746,1235.9972,547.6602,1232.2284,541.5124,1225.1039,542.6268" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1232.7642" y="537.7915">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="1232.9986" y="623.6727">0,1</text><!--MD5=[ed3fb6de0913094c41bd74c175d366df]
+reverse link urt_topic_t to urt_hrtsubscriber_t--><path d="M1177.7361,444.9498 C1204.5888,424.3434 1233.5161,405.1369 1263,390.4531 C1270.1417,386.8963 1272.5719,387.3476 1280.5,386.4531 C1325.7131,381.3517 2054.2869,381.3517 2099.5,386.4531 C2187.5516,396.388 2279.7005,420.9069 2363.8741,449.4215 " fill="none" id="urt_topic_t&lt;-urt_hrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1167.1558,453.2225,1174.3463,452.6778,1176.6091,445.831,1169.4186,446.3756,1167.1558,453.2225" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1166.6804" y="442.3054">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="2325.1934" y="438.2847">0,1</text><!--MD5=[0b5167e958c0ed93ffc0c98ce399b54d]
+reverse link urt_topic_t to urt_message_t--><path d="M1033,727.7196 C1033,809.1756 1033,907.505 1033,972.6655 " fill="none" id="urt_topic_t&lt;-urt_message_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1033,714.5402,1029,720.5402,1033,726.5402,1037,720.5402,1033,714.5402" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1024.7688" y="734.5977">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1024.6063" y="962.0014">1</text><!--MD5=[ed8977051960dfa72b850fe399f41716]
+reverse link urt_baserequest_t to urt_baserequest_t--><path d="M8755.2263,542.5268 C8769.0583,550.3592 8778,564.168 8778,583.9531 C8778,609.0273 8763.6385,624.5028 8743.1623,630.3796 " fill="none" id="urt_baserequest_t&lt;-urt_baserequest_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="8743.1623,537.5266,8747.1735,543.5191,8754.2478,542.1213,8750.2366,536.1288,8743.1623,537.5266" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="8750.967" y="530.9863">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="8750.9722" y="629.8331">0,1,2</text><!--MD5=[426f0ba47802c5735a37a0acd494a192]
+reverse link urt_baserequest_t to urt_service_t--><path d="M8505.3111,583.9531 C8215.2829,583.9531 7925.2547,583.9531 7635.2266,583.9531 " fill="none" id="urt_baserequest_t&lt;-urt_service_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="8518.6838,583.9531,8512.6838,579.9531,8506.6838,583.9531,8512.6838,587.9531,8518.6838,583.9531" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="8502.8688" y="580.5321">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="7643.4139" y="580.8268">0,1</text><!--MD5=[09de7ef26922535bfe0682cb358ee29c]
+reverse link urt_service_t to urt_baserequest_t--><path d="M7648.5992,583.9531 C7938.6274,583.9531 8228.6556,583.9531 8518.6838,583.9531 " fill="none" id="urt_service_t&lt;-urt_baserequest_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="7635.2266,583.9531,7641.2266,587.9531,7647.2266,583.9531,7641.2266,579.9531,7635.2266,583.9531" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="7643.2545" y="596.2253">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="8478.8645" y="596.4916">0,2,3</text><!--MD5=[dc2d1805b45628aba9d654613b3d05f9]
+link urt_nrtrequest_t to urt_baserequest_t--><path d="M8631,323.2868 C8631,365.7056 8631,417.9394 8631,464.4822 " fill="none" id="urt_nrtrequest_t-&gt;urt_baserequest_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="8638.0001,464.7207,8631,484.7206,8624.0001,464.7206,8638.0001,464.7207" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[d53ae0f00163daee879678d1d1554717]
+link urt_nrtrequest_t to urt_service_t--><path d="M8496.6284,323.0707 C8451.1438,347.0238 8398.9343,370.0051 8348,382.4531 C8272.9806,400.7873 7727.2096,369.0754 7653,390.4531 C7609.3119,403.0384 7565.6616,423.4227 7525.358,446.3405 " fill="none" id="urt_nrtrequest_t-&gt;urt_service_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="7520.9658,448.8556,7530.7636,447.8544,7525.3047,446.3709,7526.7881,440.9121,7520.9658,448.8556" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[f9755d42ba41539dee622699d8be3a22]
+link urt_srtrequest_t to urt_baserequest_t--><path d="M9755.3342,329.5383 C9706.9422,348.704 9655.1353,367.6103 9606,382.4531 C9310.2555,471.7919 8952.1982,534.6051 8763.0082,564.3824 " fill="none" id="urt_srtrequest_t-&gt;urt_baserequest_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="8763.8519,571.3354,8743.0112,567.5055,8761.6915,557.5031,8763.8519,571.3354" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[90efd84e0f70286880ba110c49a1e8f8]
+link urt_srtrequest_t to urt_service_t--><path d="M9775.3002,329.5975 C9721.8984,351.26 9662.7276,371.3364 9606,382.4531 C9552.7622,392.8859 7705.1858,375.6291 7653,390.4531 C7609.1163,402.9188 7565.2964,423.3268 7524.8725,446.3203 " fill="none" id="urt_srtrequest_t-&gt;urt_service_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="7520.4674,448.8438,7530.2651,447.8412,7524.806,446.3585,7526.2886,440.8994,7520.4674,448.8438" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[bfc5f4e50344156edda6a5cfcff14fef]
+link urt_frtrequest_t to urt_baserequest_t--><path d="M9014.1097,374.1259 C8927.6867,421.4593 8833.9976,472.7724 8760.9016,512.8067 " fill="none" id="urt_frtrequest_t-&gt;urt_baserequest_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="8764.1603,519.003,8743.2564,522.4709,8757.4352,506.724,8764.1603,519.003" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[836450d5c472e7b2344319739fa0d5d1]
+link urt_frtrequest_t to urt_service_t--><path d="M8950.0775,374.0524 C8937.9986,377.2175 8925.9462,380.0423 8914,382.4531 C8845.3274,396.3115 7720.3692,371.2343 7653,390.4531 C7609.1303,402.9681 7565.3167,423.3981 7524.8945,446.3976 " fill="none" id="urt_frtrequest_t-&gt;urt_service_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="7520.4896,448.9217,7530.2872,447.9178,7524.8279,446.4359,7526.3098,440.9766,7520.4896,448.9217" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[7c5d2ea3f0b69f804ad9b60a9539ac96]
+link urt_hrtrequest_t to urt_baserequest_t--><path d="M8330.7138,378.3705 C8336.4965,379.8132 8342.2616,381.1766 8348,382.4531 C8366.1336,386.4867 8499.0599,380.913 8515,390.4531 C8544.8504,408.3184 8567.951,437.0791 8585.3922,467.0244 " fill="none" id="urt_hrtrequest_t-&gt;urt_baserequest_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="8591.6096,463.8052,8595.0156,484.7193,8579.3108,470.494,8591.6096,463.8052" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[189d7bd823f9a098ae8eb3eaa3789ee1]
+link urt_hrtrequest_t to urt_service_t--><path d="M7669.4732,373.486 C7658.1147,379.1004 7646.927,384.7652 7636,390.4531 C7603.0976,407.5801 7568.9856,426.8085 7536.0723,446.3228 " fill="none" id="urt_hrtrequest_t-&gt;urt_service_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="7531.6465,448.9528,7541.4269,447.7936,7535.9448,446.3985,7537.3399,440.9164,7531.6465,448.9528" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[bcf13f9307d05af3b11663d6e8155fbe]
+reverse link urt_service_t to urt_hrtrequest_t--><path d="M7577.6178,442.2654 C7608.7137,424.1502 7640.3807,406.3917 7671,390.4531 C7676.0992,387.7987 7681.2553,385.1494 7686.4576,382.5079 " fill="none" id="urt_service_t&lt;-urt_hrtrequest_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="7566.1902,448.9528,7573.389,449.3747,7576.5471,442.8919,7569.3483,442.4701,7566.1902,448.9528" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="7571.209" y="437.7945">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="7649.7749" y="402.3495">0,1</text><!--MD5=[05f2c35569573d3273c65d3342945557]
+reverse link urt_service_t to urt_service_t--><path d="M7647.2443,553.1615 C7661.5974,560.9463 7670,571.2101 7670,583.9531 C7670,599.9443 7656.7678,612.0314 7635.1491,620.2144 " fill="none" id="urt_service_t&lt;-urt_service_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="7635.1491,547.6918,7638.9678,553.8088,7646.083,552.6365,7642.2643,546.5195,7635.1491,547.6918" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="7643.1749" y="543.6023">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="7643.3343" y="618.0513">0,1</text><!--MD5=[694e7400eb99f74d44ea388aed89d199]
+reverse link urt_core_t to urt_node_t--><path d="M6155,393.6297 C6155,418.7185 6155,444.3245 6155,468.2869 " fill="none" id="urt_core_t&lt;-urt_node_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6155,380.5684,6151,386.5684,6155,392.5684,6159,386.5684,6155,380.5684" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6146.7938" y="400.31">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="6134.3594" y="457.4592">0,1</text><!--MD5=[250695c91040478b50550bc37a8775c7]
+reverse link urt_core_t to urt_topic_t--><path d="M5970.1881,241.7639 C5104.8953,253.0143 1486.5002,305.0128 1263,390.4531 C1225.5905,404.7541 1189.939,427.8725 1158.3539,453.2357 " fill="none" id="urt_core_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="5983.3455,241.5932,5977.2941,237.6714,5971.3465,241.749,5977.3979,245.6708,5983.3455,241.5932" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="5967.3862" y="238.4275">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="1145.0228" y="442.3194">0,1</text><!--MD5=[8d0a227ec56585cdbc167f8316b34b64]
+reverse link urt_core_t to urt_service_t--><path d="M6339.6834,250.2239 C6520.9052,265.6126 6802.5453,302.5572 7031,390.4531 C7070.7444,405.7444 7110.8841,426.4946 7148.4262,448.7433 " fill="none" id="urt_core_t&lt;-urt_service_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6326.5402,249.1307,6332.1879,253.6144,6338.4989,250.1255,6332.8512,245.6419,6326.5402,249.1307" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6334.4944" y="246.3066">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="20" x="7117.5667" y="438.0182">0,1</text><!--MD5=[60c4a790664b06acf20491face248cbe]
 @startuml
 
 title **µRtWare**
@@ -140,10 +151,6 @@ title **µRtWare**
     + {field} numMessagesReceived : uint64_t
   }
 
-    class urt_srtusefulnessfunc_t <<F,E0E0E0>> {
-    urt_srtusefulnessfunc_t (dt : urt_delay_t, params : void*) : float
-  }
-
     class urt_nrtsubscriber_t <<S,BFAFFF>> {
     .. URT_CFG_PUBSUB_PROFILING == true ..
     + {field} minLatency : urt_delay_t
@@ -157,14 +164,14 @@ title **µRtWare**
   }
 
     class urt_srtsubscriber_t <<S,BFAFFF>> {
-    + {field} usefulnesscb : urt_srtusefulnessfunc_t*
+    + {field} usefulnesscb : urt_usefulness_f*
     + {field} cbparams : void*
     .. URT_CFG_PUBSUB_PROFILING == true ..
     + {field} minLatency : urt_delay_t
     + {field} maxLatency : urt_delay_t
     __
     + {method} urtSrtSubscriberInit (subscriber : urt_srtsubscriber_t*) : void
-    + {method} urtSrtSubscriberSubscribe (subscriber : urt_srtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, usefulnesscb : urt_srtusefulnessfunc_t*, cbparams : void*) : urt_status_t
+    + {method} urtSrtSubscriberSubscribe (subscriber : urt_srtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, usefulnesscb : urt_usefulness_f*, cbparams : void*) : urt_status_t
     + {method} urtSrtSubscriberFetchNextMessage (subscriber : urt_srtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
     + {method} urtSrtSubscriberFetchLatestMessage (subscriber : urt_srtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
     + {method} urtSrtSubscriberCalculateUsefulness (subscriber : urt_srtsubscriber_t*, latency : urt_delay_t) : float
@@ -243,24 +250,110 @@ title **µRtWare**
 
   package "Remote Procedure Call System" <<Node>> {
 
-  class urt_servicefunc_t <<F,E0E0E0>> {
-  urt_servicefunc_t (arg : void*, ret : void*, timeout : urt_delay_t) : urt_status_t
+  package "request" <<Rectangle>> {
+    class urt_baserequest_t <<S,BFAFFF>> {
+    + {field} prev : urt_baserequest_t*
+    + {field} next : urt_baserequest_t*
+    + {field} lock : urt_osMutex_t
+    + {field} owner : urt_service_t*
+    + {field} submissionTime : urt_osTime_t
+    + {field} payload : void*
+    + {field} evtSource : urt_osEventSource_t
+    + {field} evtListener : urt_osEventListener_t
+    .. URT_CFG_RPC_PROFILING == true ..
+    + {field} sumLatencies : uint64_t
+    + {field} numCalls : uint64_t
+    + {field} numFails : uint64_t
+  }
+
+    class urt_nrtrequest_t <<S,BFAFFF>> {
+    .. URT_CFG_RPC_PROFILING == true ..
+    + {field} minLatency : urt_delay_t
+    + {field} maxLatency : urt_delay_t
+    __
+    + {method} urtNrtRequestInit (request : urt_nrtrequest_t*) : void
+    + {method} urtNrtRequestAcquire (request : urt_nrtrequest_t*) : urt_status_t
+    + {method} urtNrtRequestTryAcquire (request : urt_nrtrequest_t*) : urt_status_t
+    + {method} urtNrtRequestRelease (request : urt_nrtrequest_t*) : urt_status_t
+    + {method} urtNrtRequestSubmit (request : urt_nrtrequest_t*, service : urt_service_t*) : urt_status_t
+    + {method} urtNrtRequestRetrieve (request : urt_nrtrequest_t*) : urt_status_t
+  }
+
+    class urt_srtrequest_t <<S,BFAFFF>> {
+    .. URT_CFG_RPC_PROFILING == true ..
+    + {field} minLatency : urt_delay_t
+    + {field} maxLatency : urt_delay_t
+    __
+    + {method} urtSrtRequestInit (request : urt_srtrequest_t*) : void
+    + {method} urtSrtRequestAcquire (request : urt_srtrequest_t*) : urt_status_t
+    + {method} urtSrtRequestTryAcquire (request : urt_srtrequest_t*) : urt_status_t
+    + {method} urtSrtRequestRelease (request : urt_srtrequest_t*) : urt_status_t
+    + {method} urtSrtRequestSubmit (request : urt_srtrequest_t*, service : urt_service_t*) : urt_status_t
+    + {method} urtSrtRequestRetrieve (request : urt_srtrequest_t*) : urt_status_t
+    + {method} urtSrtCalculateUsefulness (request : urt_srtrequest_t*, usefulnesscb : urt_usefulness_f, cbparams : void*) : float
+  }
+
+    class urt_frtrequest_t <<S,BFAFFF>> {
+    .. URT_CFG_RPC_QOS_DEADLINECHECKS == true ..
+    + {field} deadlineOffset : urt_delay_t
+    .. URT_CFG_RPC_QOS_JITTERCHECKS == true ..
+    + {field} maxJitter : urt_delay_t
+    .. URT_CFG_RPC_QOS_JITTERCHECKS == true || URT_CFG_RPC_PROFILING == true ..
+    + {field} minLatency : urt_delay_t
+    + {field} maxLatency : urt_delay_t
+    __
+    + {method} urtFrtRequestInit (request : urt_frtrequest_t*) : void
+    + {method} urtFrtRequestAcquire (request : urt_frtrequest_t*) : urt_status_t
+    + {method} urtFrtRequestTryAcquire (request : urt_frtrequest_t*) : urt_status_t
+    + {method} urtFrtRequestRelease (request : urt_frtrequest_t*) : urt_status_t
+    + {method} urtFrtRequestSubmit (request : urt_frtrequest_t*, service : urt_service_t*, deadline : urt_delay_t) : urt_status_t
+    + {method} urtFrtRequestRetrieve (request : urt_frtrequest_t*) : urt_status_t
+    + {method} urtDrtCalculateValidity (request : urt_frtrequest_t) : bool
+    .. URT_CFG_RPC_QOS_JITTERCHECKS == true ..
+    + {method} urtFrtRequestGetMaxJitter(request : urt_frtrequest_t*) : urt_delay_t* const
+  }
+
+    class urt_hrtrequest_t <<S,BFAFFF>> {
+    .. URT_CFG_RPC_QOS_DEADLINECHECKS == true ..
+    + {field} deadlineOffset : urt_delay_t
+    .. URT_CFG_RPC_QOS_JITTERCHECKS == true ..
+    + {field} maxJitter : urt_delay_t
+    .. URT_CFG_RPC_QOS_DEADLINECHECKS == true || URT_CFG_RPC_QOS_JITTERCHECKS == true ..
+    + {field} qosTimer : urt_osTimer_t
+    .. URT_CFG_RPC_QOS_JITTERCHECKS == true || URT_CFG_RPC_PROFILING == true ..
+    + {field} minLatency : urt_delay_t
+    + {field} maxLatency : urt_delay_t
+    __
+    + {method} urtHrtRequestInit (request : urt_hrtrequest_t*) : void
+    + {method} urtHrtRequestAcquire (request : urt_hrtrequest_t*) : urt_status_t
+    + {method} urtHrtRequestTryAcquire (request : urt_hrtrequest_t*) : urt_status_t
+    + {method} urtHrtRequestRelease (request : urt_hrtrequest_t*) : urt_status_t
+    + {method} urtHrtRequestSubmit (request : urt_hrtrequest_t*, service : urt_service_t*, deadline : urt_delay_t) : urt_status_t
+    + {method} urtHrtRequestRetrieve (request : urt_hrtrequest_t*) : urt_status_t
+    .. URT_CFG_RPC_QOS_JITTERCHECKS == true ..
+    + {method} urtHrtRequestGetMaxJitter(request : urt_hrtrequest_t*) : urt_delay_t* const
+  }
 }
 
   class urt_service_t <<S,BFAFFF>> {
   + {field} next : urt_service_t*
   + {field} id : urt_serviceid_t
   + {field} lock : urt_osMutex_t
-  + {field} callback : urt_servicefunc_t*
+  + {field} requestQueue_front : urt_baserequest_t*
+  + {field} requestQueue_hrtBack : urt_hrtrequest_t*
+  + {field} requestQueue_fsrtBack : urt_baserequest_t*
+  + {field} requestQueue_back : urt_baserequest_t*
+  + {field} evtSource : urt_osEventSource_t
+  + {field} evtListener : urt_osEventListener_t
   .. URT_CFG_RPC_PROFILING == true ..
-  + {field} sumDurations : uint64_t
   + {field} numCalls : uint64_t
-  + {field} numTimeouts : uint64_t
-  + {field} minDuration : urt_delay_t
-  + {field} maxDuration : urt_delay_t
+  + {field} numOwnershipLost : uint64_t
   __
-  + {method} urtServiceInit(service : urt_service_t*, id : urt_serviceid_t, callback : urt_servicefunc_t*) : urt_status_t
-  + {method} urtServiceCall(service : urt_service_t*, arg : void*, ret : void*, timeout : urt_delay_t) : urt_status_t
+  + {method} urtServiceInit (service : urt_service_t*, id : urt_serviceid_t) : urt_status_t
+  + {method} urtServiceDispatch (service : urt_service_t*, payload : void*, bytes : size_t) : urt_baserequest_t*
+  + {method} urtServiceAcquireRequest (service* urt_serviceid_t*, request : urt_baserequest_t*) : urt_status_t
+  + {method} urtServiceTryAcquireRequest (service* urt_serviceid_t*, request : urt_baserequest_t*) : urt_status_t
+  + {method} urtServiceRespond (request : urt_baserequest_t*) : urt_status_t
 }
 
 }
@@ -268,47 +361,60 @@ title **µRtWare**
 
 
 
-urt_node_t "1" o- - "0..1" urt_node_t
-urt_node_t "1" o- - "0..1" urt_nodeSetupCallback_t
+urt_node_t "1" o- - "0,1" urt_node_t
+urt_node_t "1" o- - "0,1" urt_nodeSetupCallback_t
 urt_node_t <.. urt_nodeSetupCallback_t
 urt_node_t "1" o- - "1" urt_nodeLoopCallback_t
 urt_node_t <.. urt_nodeLoopCallback_t
-urt_node_t "1" o- - "0..1" urt_nodeShutdownCallback_t
+urt_node_t "1" o- - "0,1" urt_nodeShutdownCallback_t
 urt_node_t <.. urt_nodeShutdownCallback_t
 
 
-urt_message_t "1" o- - "0..1" urt_message_t
+urt_message_t "1" o- "0,1" urt_message_t
+
+urt_basesubscriber_t "1" o- - "0,1" urt_message_t
 
 urt_nrtsubscriber_t - -|> urt_basesubscriber_t
-urt_nrtsubscriber_t ..> urt_message_t
 
 urt_srtsubscriber_t - -|> urt_basesubscriber_t
-urt_srtsubscriber_t "1" o- - "0..1" urt_srtusefulnessfunc_t
-urt_srtsubscriber_t ..> urt_message_t
 
 urt_frtsubscriber_t - -|> urt_basesubscriber_t
-urt_frtsubscriber_t ..> urt_message_t
 
 urt_hrtsubscriber_t - -|> urt_basesubscriber_t
-urt_hrtsubscriber_t "1" o- - "0..1" urt_hrtsubscriber_t
-urt_hrtsubscriber_t ..> urt_message_t
+urt_hrtsubscriber_t "1" o- "0,1" urt_hrtsubscriber_t
 
 urt_publisher_t "1" o- "1" urt_topic_t
 urt_publisher_t ..> urt_message_t
 
-urt_topic_t "1" o- - "0..1" urt_topic_t
-urt_topic_t "1" o- "0..1" urt_hrtsubscriber_t
+urt_topic_t "1" o- "0,1" urt_topic_t
+urt_topic_t "1" o- "0,1" urt_hrtsubscriber_t
 urt_topic_t "1" *- - "1" urt_message_t
 
 
 
-urt_service_t "1" o- - "0..1" urt_service_t
-urt_service_t "1" o- - "0..1" urt_servicefunc_t
+urt_baserequest_t "1" o- "0,1,2" urt_baserequest_t
+urt_baserequest_t "1" o- "0,1" urt_service_t
+
+urt_nrtrequest_t - -|> urt_baserequest_t
+urt_nrtrequest_t ..> urt_service_t
+
+urt_srtrequest_t - -|> urt_baserequest_t
+urt_srtrequest_t ..> urt_service_t
+
+urt_frtrequest_t - -|> urt_baserequest_t
+urt_frtrequest_t ..> urt_service_t
+
+urt_hrtrequest_t - -|> urt_baserequest_t
+urt_hrtrequest_t ..> urt_service_t
+
+urt_service_t "1" o- "0,1" urt_service_t
+urt_service_t "1" o- "0,2,3" urt_baserequest_t
+urt_service_t "1" o- "0,1" urt_hrtrequest_t
 
 
-urt_core_t "1" o- - "0..1" urt_node_t
-urt_core_t "1" *- - "0..1" urt_topic_t
-urt_core_t "1" *- - "0..1" urt_service_t
+urt_core_t "1" o- - "0,1" urt_node_t
+urt_core_t "1" o- - "0,1" urt_topic_t
+urt_core_t "1" o- - "0,1" urt_service_t
 
 
 
@@ -318,7 +424,7 @@ PlantUML version 1.2020.00(Sat Jan 11 13:30:53 CET 2020)
 (GPL source distribution)
 Java Runtime: OpenJDK Runtime Environment
 JVM: OpenJDK 64-Bit Server VM
-Java Version: 11.0.6+10-post-Ubuntu-1ubuntu118.04.1
+Java Version: 11.0.7+10-post-Ubuntu-2ubuntu218.04
 Operating System: Linux
 Default Encoding: UTF-8
 Language: en
