Revision ee83a495 doc/classdiagrams/urtware.svg

View differences:

doc/classdiagrams/urtware.svg
1
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="1429px" preserveAspectRatio="none" style="width:4669px;height:1429px;" version="1.1" viewBox="0 0 4669 1429" width="4669px" zoomAndPan="magnify"><defs><filter height="300%" id="f1b93bo83bsyl7" 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="2292.5" y="16.708">µRtWare</text><!--MD5=[b9de0669a29c7bc934fd916b09c39491]
2
cluster node--><rect fill="#FFFFFF" filter="url(#f1b93bo83bsyl7)" height="440.5" style="stroke: #000000; stroke-width: 1.5;" width="1138" x="2854" y="392.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="40" x="3403" y="407.9482">node</text><!--MD5=[d74e2ef346f73688f9378f6d3d42598c]
3
cluster Publish-Subscribe System--><polygon fill="#FFFFFF" filter="url(#f1b93bo83bsyl7)" points="14,302.9531,24,292.9531,2846,292.9531,2846,1407.9531,2836,1417.9531,14,1417.9531,14,302.9531" style="stroke: #000000; stroke-width: 1.5;"/><line style="stroke: #000000; stroke-width: 1.5;" x1="2836" x2="2845" y1="302.9531" y2="293.9531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="14" x2="2836" y1="302.9531" y2="302.9531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="2836" x2="2836" y1="302.9531" y2="1417.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="205" x="1323.5" y="318.9482">Publish-Subscribe System</text><!--MD5=[16a3bbbe805f94d6e6ce317c08ab945e]
4
cluster subscriber--><rect fill="#FFFFFF" filter="url(#f1b93bo83bsyl7)" height="1085" style="stroke: #000000; stroke-width: 1.5;" width="1611" x="1227" y="324.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="85" x="1990" y="339.9482">subscriber</text><!--MD5=[94ad99421f5a0f525bc1c13a3777c25e]
5
cluster real-time constraint data--><rect fill="#FFFFFF" filter="url(#f1b93bo83bsyl7)" height="671" style="stroke: #000000; stroke-width: 1.5;" width="1595" x="1235" y="730.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="194" x="1935.5" y="745.9482">real-time constraint data</text><!--MD5=[57c3116dbac3d3a2ea35fece1cdc00f4]
6
cluster SRT data--><rect fill="#FFFFFF" filter="url(#f1b93bo83bsyl7)" height="283" style="stroke: #000000; stroke-width: 1.5;" width="390" x="1912" y="1110.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="69" x="2072.5" y="1125.9482">SRT data</text><!--MD5=[810d0f07e53ef611b6d803ef30301147]
7
cluster Remote Procedure Call System--><polygon fill="#FFFFFF" filter="url(#f1b93bo83bsyl7)" points="4011,374.9531,4021,364.9531,4647,364.9531,4647,823.4531,4637,833.4531,4011,833.4531,4011,374.9531" style="stroke: #000000; stroke-width: 1.5;"/><line style="stroke: #000000; stroke-width: 1.5;" x1="4637" x2="4646" y1="374.9531" y2="365.9531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="4011" x2="4637" y1="374.9531" y2="374.9531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="4637" x2="4637" y1="374.9531" y2="833.4531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="244" x="4203" y="390.9482">Remote Procedure Call System</text><!--MD5=[a7dea26996a1231aa68629b332780450]
8
class urt_nodeSetupCallback_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="60.8047" id="urt_nodeSetupCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="456" x="2870" y="764.4531"/><ellipse cx="3015.75" cy="780.4531" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3016.5938,787.2031 L3014.1406,787.2031 L3014.1406,776.9531 L3011,776.9531 L3011,774.8125 L3019.7344,774.8125 L3019.7344,776.9531 L3016.5938,776.9531 L3016.5938,787.2031 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="156" x="3036.25" y="784.6074">urt_nodeSetupCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2871" x2="3325" y1="796.4531" y2="796.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="2871" x2="3325" y1="804.4531" y2="804.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="444" x="2876" y="818.6636">urt_nodeSetupCallback_t (node : urt_node_t*, arg : void*) : urt_osEventMask_t</text><!--MD5=[7f869e17e281b89d59a4c09e0f22c3af]
9
class urt_nodeLoopCallback_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="60.8047" id="urt_nodeLoopCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="614" x="3361" y="764.4531"/><ellipse cx="3589.25" cy="780.4531" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3590.0938,787.2031 L3587.6406,787.2031 L3587.6406,776.9531 L3584.5,776.9531 L3584.5,774.8125 L3593.2344,774.8125 L3593.2344,776.9531 L3590.0938,776.9531 L3590.0938,787.2031 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="149" x="3609.75" y="784.6074">urt_nodeLoopCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3362" x2="3974" y1="796.4531" y2="796.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="3362" x2="3974" y1="804.4531" y2="804.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="602" x="3367" y="818.6636">urt_nodeLoopCallback_t (node : urt_node_t*, events : urt_osEventMask_t, arg : void*) : urt_osEventMask_t</text><!--MD5=[d2563153d77472384a15c07b815d639f]
10
class urt_node_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="176.0469" id="urt_node_t" style="stroke: #A80036; stroke-width: 1.5;" width="1104" x="2862" y="419.9531"/><ellipse cx="3376.25" cy="435.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3375.7344,436.5156 Q3373.875,435.8125 3373.2188,435.0469 Q3372.5781,434.2656 3372.5781,432.9531 Q3372.5781,431.2656 3373.6563,430.2969 Q3374.7344,429.3281 3376.6094,429.3281 Q3377.4688,429.3281 3378.3125,429.5313 Q3379.1719,429.7188 3380.0156,430.1094 L3380.0156,432.5 Q3379.2344,431.9375 3378.4063,431.6563 Q3377.5938,431.3594 3376.7969,431.3594 Q3375.9219,431.3594 3375.4375,431.7188 Q3374.9688,432.0781 3374.9688,432.7344 Q3374.9688,433.25 3375.3125,433.5938 Q3375.6563,433.9219 3376.75,434.3281 L3377.8125,434.7344 Q3379.2969,435.2813 3380,436.1875 Q3380.7188,437.0938 3380.7188,438.4688 Q3380.7188,440.3438 3379.6094,441.2656 Q3378.5,442.1875 3376.25,442.1875 Q3375.3281,442.1875 3374.4063,441.9688 Q3373.4844,441.75 3372.625,441.3281 L3372.625,438.7969 Q3373.5938,439.4844 3374.5156,439.8281 Q3375.4375,440.1719 3376.3281,440.1719 Q3377.2344,440.1719 3377.7344,439.7656 Q3378.2344,439.3438 3378.2344,438.6094 Q3378.2344,438.0469 3377.8906,437.6406 Q3377.5625,437.2188 3376.9375,436.9688 L3375.7344,436.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="67" x="3396.75" y="440.1074">urt_node_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2863" x2="3965" y1="451.9531" y2="451.9531"/><ellipse cx="2873" cy="462.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="2882" y="466.1636">next : urt_node_t*</text><ellipse cx="2873" cy="475.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="2882" y="478.9683">thread : urt_osThread_t*</text><ellipse cx="2873" cy="488.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="2882" y="491.7729">setupcallback : urt_nodeSetupCallback_t*</text><ellipse cx="2873" 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="117" x="2882" y="504.5776">setupparams : void*</text><ellipse cx="2873" 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="221" x="2882" y="517.3823">loopcallback : urt_nodeLoopCallback_t*</text><ellipse cx="2873" cy="526.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="2882" y="530.187">loopparams : void*</text><ellipse cx="2873" cy="539.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="136" x="2882" y="542.9917">stage : urt_nodestage_t</text><ellipse cx="2873" cy="552.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="178" x="2882" y="555.7964">listener : urt_osEventListener_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2863" x2="3965" y1="562.3906" y2="562.3906"/><rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="2870" y="570.3906"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="179" x="2882" y="576.6011">_main : urt_osThreadFunction_t</text><ellipse cx="2873" 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="1078" x="2882" y="589.4058">urtNodeInit (node : urt_node_t*, stacksize : size_t, setupcallback : urt_nodeSetupCallback_t*, setupparams : void*, loopcallback : urt_nodeLoopCallback_t*, loopparams : void*) : urt_status_t</text><!--MD5=[e602aa6d45f270ad04f88c9ca5352b33]
11
class urt_message_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="141.6328" id="urt_message_t" style="stroke: #A80036; stroke-width: 1.5;" width="451" x="750.5" y="723.9531"/><ellipse cx="925.75" cy="739.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M925.2344,740.5156 Q923.375,739.8125 922.7188,739.0469 Q922.0781,738.2656 922.0781,736.9531 Q922.0781,735.2656 923.1563,734.2969 Q924.2344,733.3281 926.1094,733.3281 Q926.9688,733.3281 927.8125,733.5313 Q928.6719,733.7188 929.5156,734.1094 L929.5156,736.5 Q928.7344,735.9375 927.9063,735.6563 Q927.0938,735.3594 926.2969,735.3594 Q925.4219,735.3594 924.9375,735.7188 Q924.4688,736.0781 924.4688,736.7344 Q924.4688,737.25 924.8125,737.5938 Q925.1563,737.9219 926.25,738.3281 L927.3125,738.7344 Q928.7969,739.2813 929.5,740.1875 Q930.2188,741.0938 930.2188,742.4688 Q930.2188,744.3438 929.1094,745.2656 Q928,746.1875 925.75,746.1875 Q924.8281,746.1875 923.9063,745.9688 Q922.9844,745.75 922.125,745.3281 L922.125,742.7969 Q923.0938,743.4844 924.0156,743.8281 Q924.9375,744.1719 925.8281,744.1719 Q926.7344,744.1719 927.2344,743.7656 Q927.7344,743.3438 927.7344,742.6094 Q927.7344,742.0469 927.3906,741.6406 Q927.0625,741.2188 926.4375,740.9688 L925.2344,740.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="92" x="946.25" y="744.1074">urt_message_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="751.5" x2="1200.5" y1="755.9531" y2="755.9531"/><ellipse cx="761.5" cy="766.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="770.5" y="770.1636">next : urt_message_t*</text><ellipse cx="761.5" cy="779.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="770.5" y="782.9683">payload : void*</text><ellipse cx="761.5" cy="792.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="770.5" y="795.7729">originTime : urt_osTime_t</text><ellipse cx="761.5" cy="805.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="770.5" y="808.5776">numHrtConsumersLeft : unsigned int</text><ellipse cx="761.5" cy="834.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="770.5" y="838.187">numConsumersLeft : unsigned int</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="751.5" x2="867.5" y1="821.5742" y2="821.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="867.5" y="824.8823">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1084.5" x2="1200.5" y1="821.5742" y2="821.5742"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="751.5" x2="1200.5" y1="844.7813" y2="844.7813"/><ellipse cx="761.5" cy="855.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="425" x="770.5" y="858.9917">urtMessageInit (message : urt_message_t*, payload : void*) : urt_status_t</text><!--MD5=[2ac85a9c1cceb8bb0c9045edc105e6e3]
12
class urt_publisher_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="128.8281" id="urt_publisher_t" style="stroke: #A80036; stroke-width: 1.5;" width="759" x="22.5" y="443.4531"/><ellipse cx="351.25" cy="459.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M350.7344,460.0156 Q348.875,459.3125 348.2188,458.5469 Q347.5781,457.7656 347.5781,456.4531 Q347.5781,454.7656 348.6563,453.7969 Q349.7344,452.8281 351.6094,452.8281 Q352.4688,452.8281 353.3125,453.0313 Q354.1719,453.2188 355.0156,453.6094 L355.0156,456 Q354.2344,455.4375 353.4063,455.1563 Q352.5938,454.8594 351.7969,454.8594 Q350.9219,454.8594 350.4375,455.2188 Q349.9688,455.5781 349.9688,456.2344 Q349.9688,456.75 350.3125,457.0938 Q350.6563,457.4219 351.75,457.8281 L352.8125,458.2344 Q354.2969,458.7813 355,459.6875 Q355.7188,460.5938 355.7188,461.9688 Q355.7188,463.8438 354.6094,464.7656 Q353.5,465.6875 351.25,465.6875 Q350.3281,465.6875 349.4063,465.4688 Q348.4844,465.25 347.625,464.8281 L347.625,462.2969 Q348.5938,462.9844 349.5156,463.3281 Q350.4375,463.6719 351.3281,463.6719 Q352.2344,463.6719 352.7344,463.2656 Q353.2344,462.8438 353.2344,462.1094 Q353.2344,461.5469 352.8906,461.1406 Q352.5625,460.7188 351.9375,460.4688 L350.7344,460.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="93" x="371.75" y="463.6074">urt_publisher_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="23.5" x2="780.5" y1="475.4531" y2="475.4531"/><ellipse cx="33.5" cy="486.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="489.6636">topic : urt_topic_t*</text><ellipse cx="33.5" cy="516.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="519.2729">publishAttempts : uint64_t</text><ellipse cx="33.5" cy="528.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="532.0776">publishFails : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="23.5" x2="320" y1="502.6602" y2="502.6602"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="164" x="320" y="505.9683">URT_CFG_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="484" x2="780.5" y1="502.6602" y2="502.6602"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="23.5" x2="780.5" y1="538.6719" y2="538.6719"/><ellipse cx="33.5" cy="549.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="617" x="42.5" y="552.8823">urtPublisherInit (publisher : urt_publisher_t*, topic : urt_topic_t*, messages : urt_message_t*) : urt_status_t</text><ellipse cx="33.5" cy="562.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="733" x="42.5" y="565.687">urtPublisherPublish (publisher : urt_publisher_t*, payload : void*, n : size_t, t : urt_osTime_t, timeout : urt_delay_t) : urt_status_t</text><!--MD5=[a1b1e66ec52c209a9fa2dab315cd7630]
13
class urt_topic_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="248.0703" id="urt_topic_t" style="stroke: #A80036; stroke-width: 1.5;" width="384" x="817" y="383.9531"/><ellipse cx="971.75" cy="399.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M971.2344,400.5156 Q969.375,399.8125 968.7188,399.0469 Q968.0781,398.2656 968.0781,396.9531 Q968.0781,395.2656 969.1563,394.2969 Q970.2344,393.3281 972.1094,393.3281 Q972.9688,393.3281 973.8125,393.5313 Q974.6719,393.7188 975.5156,394.1094 L975.5156,396.5 Q974.7344,395.9375 973.9063,395.6563 Q973.0938,395.3594 972.2969,395.3594 Q971.4219,395.3594 970.9375,395.7188 Q970.4688,396.0781 970.4688,396.7344 Q970.4688,397.25 970.8125,397.5938 Q971.1563,397.9219 972.25,398.3281 L973.3125,398.7344 Q974.7969,399.2813 975.5,400.1875 Q976.2188,401.0938 976.2188,402.4688 Q976.2188,404.3438 975.1094,405.2656 Q974,406.1875 971.75,406.1875 Q970.8281,406.1875 969.9063,405.9688 Q968.9844,405.75 968.125,405.3281 L968.125,402.7969 Q969.0938,403.4844 970.0156,403.8281 Q970.9375,404.1719 971.8281,404.1719 Q972.7344,404.1719 973.2344,403.7656 Q973.7344,403.3438 973.7344,402.6094 Q973.7344,402.0469 973.3906,401.6406 Q973.0625,401.2188 972.4375,400.9688 L971.2344,400.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="992.25" y="404.1074">urt_topic_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="818" x2="1200" y1="415.9531" y2="415.9531"/><ellipse cx="828" cy="426.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="837" y="430.1636">next : urt_topic_t*</text><ellipse cx="828" cy="439.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="837" y="442.9683">id : urt_topicid_t</text><ellipse cx="828" cy="452.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="837" y="455.7729">lock : urt_osMutex_t</text><ellipse cx="828" cy="465.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="837" y="468.5776">evtSource : urt_osEventSource_t</text><ellipse cx="828" cy="478.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="837" y="481.3823">numHrtSubscribers : unsigned int</text><ellipse cx="828" cy="490.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="196" x="837" y="494.187">hrtSubscribers : urt_subscriber_t*</text><ellipse cx="828" cy="503.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="173" x="837" y="506.9917">hrtReleased : urt_osCondvar_t</text><ellipse cx="828" cy="516.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="209" x="837" y="519.7964">mandatoryMessage : urt_message_t</text><ellipse cx="828" cy="529.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="186" x="837" y="532.6011">latestMessage : urt_message_t*</text><ellipse cx="828" cy="559" 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="837" y="562.2104">qosRateTimer : urt_osTimer_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="818" x2="876.5" y1="545.5977" y2="545.5977"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="265" x="876.5" y="548.9058">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1141.5" x2="1200" y1="545.5977" y2="545.5977"/><ellipse cx="828" cy="588.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="197" x="837" y="591.8198">numDiscardedMessages : uint64_t</text><ellipse cx="828" cy="601.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="176" x="837" y="604.6245">numSubscribers : unsigned int</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="818" x2="900.5" y1="575.207" y2="575.207"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="900.5" y="578.5151">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1117.5" x2="1200" y1="575.207" y2="575.207"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="818" x2="1200" y1="611.2188" y2="611.2188"/><ellipse cx="828" cy="622.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="358" x="837" y="625.4292">urtTopicInit (topic : urt_topic_t*, id : urt_topicid_t) : urt_status_t</text><!--MD5=[ab7cf431813e3be5d474948fd959cdbf]
14
class urt_subscriber_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="312.0938" id="urt_subscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="1068" x="1254" y="351.9531"/><ellipse cx="1733.25" cy="367.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1732.7344,368.5156 Q1730.875,367.8125 1730.2188,367.0469 Q1729.5781,366.2656 1729.5781,364.9531 Q1729.5781,363.2656 1730.6563,362.2969 Q1731.7344,361.3281 1733.6094,361.3281 Q1734.4688,361.3281 1735.3125,361.5313 Q1736.1719,361.7188 1737.0156,362.1094 L1737.0156,364.5 Q1736.2344,363.9375 1735.4063,363.6563 Q1734.5938,363.3594 1733.7969,363.3594 Q1732.9219,363.3594 1732.4375,363.7188 Q1731.9688,364.0781 1731.9688,364.7344 Q1731.9688,365.25 1732.3125,365.5938 Q1732.6563,365.9219 1733.75,366.3281 L1734.8125,366.7344 Q1736.2969,367.2813 1737,368.1875 Q1737.7188,369.0938 1737.7188,370.4688 Q1737.7188,372.3438 1736.6094,373.2656 Q1735.5,374.1875 1733.25,374.1875 Q1732.3281,374.1875 1731.4063,373.9688 Q1730.4844,373.75 1729.625,373.3281 L1729.625,370.7969 Q1730.5938,371.4844 1731.5156,371.8281 Q1732.4375,372.1719 1733.3281,372.1719 Q1734.2344,372.1719 1734.7344,371.7656 Q1735.2344,371.3438 1735.2344,370.6094 Q1735.2344,370.0469 1734.8906,369.6406 Q1734.5625,369.2188 1733.9375,368.9688 L1732.7344,368.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="101" x="1753.75" y="372.1074">urt_subscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1255" x2="2321" y1="383.9531" y2="383.9531"/><ellipse cx="1265" cy="394.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="1274" y="398.1636">topic : urt_topic_t*</text><ellipse cx="1265" cy="407.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="1274" y="410.9683">evtListener : urt_osEventListener_t</text><ellipse cx="1265" cy="420.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="112" x="1274" y="423.7729">rtdata : urt_rtdata_t</text><ellipse cx="1265" cy="433.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="175" x="1274" y="436.5776">lastMessage : urt_message_t*</text><ellipse cx="1265" cy="446.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="186" x="1274" y="449.3823">lastMessageTime : urt_osTime_t</text><ellipse cx="1265" cy="475.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="136" x="1274" y="478.9917">sumLatencies : uint64_t</text><ellipse cx="1265" cy="488.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="190" x="1274" y="491.7964">numMessagesReceived : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1255" x2="1679.5" y1="462.3789" y2="462.3789"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="1679.5" y="465.687">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1896.5" x2="2321" y1="462.3789" y2="462.3789"/><ellipse cx="1265" cy="518.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="138" x="1274" y="521.4058">minLatency : urt_delay_t</text><ellipse cx="1265" cy="531" 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="1274" y="534.2104">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1255" x2="1679.5" y1="504.793" y2="504.793"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="1679.5" y="508.1011">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1896.5" x2="2321" y1="504.793" y2="504.793"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="1255" x2="2321" y1="540.8047" y2="540.8047"/><ellipse cx="1265" cy="551.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="359" x="1274" y="555.0151">urtSubscriberInit (subscriber : urt_subscriber_t*) : urt_status_t</text><ellipse cx="1265" cy="564.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="1042" x="1274" y="567.8198">urtSubscriberSubscribeHrt (subscriber : urt_subscriber_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="1265" cy="577.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="1040" x="1274" y="580.6245">urtSubscriberSubscribeFrt (subscriber : urt_subscriber_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="1265" cy="590.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="1042" x="1274" y="593.4292">urtSubscriberSubscribeSrt (subscriber : urt_subscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, usefulnesscb : urt_srtusefulnessfunc_t*, cbparams : void*) : urt_status_t</text><ellipse cx="1265" cy="603.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="699" x="1274" y="606.2339">urtSubscriberSubscribeNrt (subscriber : urt_subscriber_t*, topic : urt_topic_t*, messages : urt_message_t*) : urt_status_t</text><ellipse cx="1265" cy="615.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="413" x="1274" y="619.0386">urtSubscriberUnsubscribe (subscriber : urt_subscriber_t*) : urt_status_t</text><ellipse cx="1265" cy="628.6328" 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="752" x="1274" y="631.8433">urtSubscriberFetchNextMessage (subscriber : urt_subscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="1265" cy="641.4375" 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="762" x="1274" y="644.6479">urtSubscriberFetchLatestMessage (subscriber : urt_subscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="1265" cy="654.2422" 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="537" x="1274" y="657.4526">urtSubscriberCalculateUsefulness (subscriber : urt_subscriber_t*, latency : urt_delay_t) : float</text><!--MD5=[82a1b6b26b12edcbd86fa16935c3353e]
15
class urt_rtdata_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="73.6094" id="urt_rtdata_t" style="stroke: #A80036; stroke-width: 1.5;" width="231" x="1672.5" y="757.9531"/><ellipse cx="1746.75" cy="773.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1746.2344,774.5156 Q1744.375,773.8125 1743.7188,773.0469 Q1743.0781,772.2656 1743.0781,770.9531 Q1743.0781,769.2656 1744.1563,768.2969 Q1745.2344,767.3281 1747.1094,767.3281 Q1747.9688,767.3281 1748.8125,767.5313 Q1749.6719,767.7188 1750.5156,768.1094 L1750.5156,770.5 Q1749.7344,769.9375 1748.9063,769.6563 Q1748.0938,769.3594 1747.2969,769.3594 Q1746.4219,769.3594 1745.9375,769.7188 Q1745.4688,770.0781 1745.4688,770.7344 Q1745.4688,771.25 1745.8125,771.5938 Q1746.1563,771.9219 1747.25,772.3281 L1748.3125,772.7344 Q1749.7969,773.2813 1750.5,774.1875 Q1751.2188,775.0938 1751.2188,776.4688 Q1751.2188,778.3438 1750.1094,779.2656 Q1749,780.1875 1746.75,780.1875 Q1745.8281,780.1875 1744.9063,779.9688 Q1743.9844,779.75 1743.125,779.3281 L1743.125,776.7969 Q1744.0938,777.4844 1745.0156,777.8281 Q1745.9375,778.1719 1746.8281,778.1719 Q1747.7344,778.1719 1748.2344,777.7656 Q1748.7344,777.3438 1748.7344,776.6094 Q1748.7344,776.0469 1748.3906,775.6406 Q1748.0625,775.2188 1747.4375,774.9688 L1746.2344,774.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="74" x="1767.25" y="778.1074">urt_rtdata_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1673.5" x2="1902.5" y1="789.9531" y2="789.9531"/><ellipse cx="1683.5" cy="800.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="170" x="1692.5" y="804.1636">class : urt_rtconstraintclass_t</text><ellipse cx="1683.5" cy="813.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="205" x="1692.5" y="816.9683">params : urt_rtconstraintsparams_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1673.5" x2="1902.5" y1="823.5625" y2="823.5625"/><!--MD5=[4bd59d3bc50b317c5523bafe6b73a042]
16
class urt_rtclass_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="99.2188" id="urt_rtclass_t" style="stroke: #A80036; stroke-width: 1.5;" width="153" x="1648.5" y="925.9531"/><ellipse cx="1683.3" cy="941.9531" fill="#FF7F3F" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1687.4094,947.9531 L1679.6906,947.9531 L1679.6906,935.5625 L1687.4094,935.5625 L1687.4094,937.7188 L1682.1438,937.7188 L1682.1438,940.3906 L1686.9094,940.3906 L1686.9094,942.5469 L1682.1438,942.5469 L1682.1438,945.7969 L1687.4094,945.7969 L1687.4094,947.9531 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="77" x="1701.7" y="946.1074">urt_rtclass_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1649.5" x2="1800.5" y1="957.9531" y2="957.9531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="139" x="1654.5" y="972.1636">URT_RTCLASS_HARD = 0</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="134" x="1654.5" y="984.9683">URT_RTCLASS_FIRM = 1</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="139" x="1654.5" y="997.7729">URT_RTCLASS_SOFT = 2</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="141" x="1654.5" y="1010.5776">URT_RTCLASS_NONE = 3</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1649.5" x2="1800.5" y1="1017.1719" y2="1017.1719"/><!--MD5=[7b207cc31d63d27c526f257c1fda2512]
17
class urt_rtclassdata_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="99.2188" id="urt_rtclassdata_t" style="stroke: #A80036; stroke-width: 1.5;" width="146" x="1837" y="925.9531"/><ellipse cx="1855.6" cy="941.9531" fill="#7FCF7F" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1851.475,943.875 L1851.475,936.0625 L1853.9281,936.0625 L1853.9281,944.5 Q1853.9281,945.4219 1854.3969,945.9531 Q1854.8813,946.4844 1855.7094,946.4844 Q1856.5531,946.4844 1857.0219,945.9531 Q1857.4906,945.4219 1857.4906,944.5 L1857.4906,936.0625 L1859.9438,936.0625 L1859.9438,943.875 Q1859.9438,946.4063 1858.9438,947.5469 Q1857.9438,948.6875 1855.7094,948.6875 Q1853.4906,948.6875 1852.475,947.5469 Q1851.475,946.4063 1851.475,943.875 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="106" x="1870.4" y="946.1074">urt_rtclassdata_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1838" x2="1982" y1="957.9531" y2="957.9531"/><ellipse cx="1848" cy="968.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="120" x="1857" y="972.1636">hrt : urt_hrtparams_t</text><ellipse cx="1848" cy="981.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="114" x="1857" y="984.9683">frt : urt_frtparams_t</text><ellipse cx="1848" cy="994.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="116" x="1857" y="997.7729">srt : urt_srtparans_t</text><ellipse cx="1848" cy="1007.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="120" x="1857" y="1010.5776">nrt : urt_nrtparams_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1838" x2="1982" y1="1017.1719" y2="1017.1719"/><!--MD5=[c57ade65ef97beb73587233399d5250a]
18
class urt_hrtdata_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="180.0469" id="urt_hrtdata_t" style="stroke: #A80036; stroke-width: 1.5;" width="512" x="2310" y="1084.9531"/><ellipse cx="2520.75" cy="1100.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2520.2344,1101.5156 Q2518.375,1100.8125 2517.7188,1100.0469 Q2517.0781,1099.2656 2517.0781,1097.9531 Q2517.0781,1096.2656 2518.1563,1095.2969 Q2519.2344,1094.3281 2521.1094,1094.3281 Q2521.9688,1094.3281 2522.8125,1094.5313 Q2523.6719,1094.7188 2524.5156,1095.1094 L2524.5156,1097.5 Q2523.7344,1096.9375 2522.9063,1096.6563 Q2522.0938,1096.3594 2521.2969,1096.3594 Q2520.4219,1096.3594 2519.9375,1096.7188 Q2519.4688,1097.0781 2519.4688,1097.7344 Q2519.4688,1098.25 2519.8125,1098.5938 Q2520.1563,1098.9219 2521.25,1099.3281 L2522.3125,1099.7344 Q2523.7969,1100.2813 2524.5,1101.1875 Q2525.2188,1102.0938 2525.2188,1103.4688 Q2525.2188,1105.3438 2524.1094,1106.2656 Q2523,1107.1875 2520.75,1107.1875 Q2519.8281,1107.1875 2518.9063,1106.9688 Q2517.9844,1106.75 2517.125,1106.3281 L2517.125,1103.7969 Q2518.0938,1104.4844 2519.0156,1104.8281 Q2519.9375,1105.1719 2520.8281,1105.1719 Q2521.7344,1105.1719 2522.2344,1104.7656 Q2522.7344,1104.3438 2522.7344,1103.6094 Q2522.7344,1103.0469 2522.3906,1102.6406 Q2522.0625,1102.2188 2521.4375,1101.9688 L2520.2344,1101.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="82" x="2541.25" y="1105.1074">urt_hrtdata_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2311" x2="2821" y1="1116.9531" y2="1116.9531"/><ellipse cx="2321" cy="1127.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="135" x="2330" y="1131.1636">next : urt_subscriber_t*</text><ellipse cx="2321" cy="1157.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="194" x="2330" y="1160.7729">qosDeadlineTimer : urt_osTimer_t</text><ellipse cx="2321" cy="1170.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="157" x="2330" y="1173.5776">deadlineOffset : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2311" x2="2420.5" y1="1144.1602" y2="1144.1602"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="291" x="2420.5" y="1147.4683">URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2711.5" x2="2821" y1="1144.1602" y2="1144.1602"/><ellipse cx="2321" cy="1199.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="150" x="2330" y="1203.187">expectedRate : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2311" x2="2433.5" y1="1186.5742" y2="1186.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="265" x="2433.5" y="1189.8823">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2698.5" x2="2821" y1="1186.5742" y2="1186.5742"/><ellipse cx="2321" cy="1229.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="124" x="2330" y="1232.7964">maxJitter : urt_delay_t</text><ellipse cx="2321" cy="1242.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="138" x="2330" y="1245.6011">minLatency : urt_delay_t</text><ellipse cx="2321" cy="1255.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="141" x="2330" y="1258.4058">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2311" x2="2314" y1="1216.1836" y2="1216.1836"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="504" x="2314" y="1219.4917">URT_CFG_PUBSUB_PROFILING == true || URT_CFG_PUBSUB_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2818" x2="2821" y1="1216.1836" y2="1216.1836"/><!--MD5=[72774668522d2286013bfbc0db723956]
19
class urt_frtdata_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="154.4375" id="urt_frtdata_t" style="stroke: #A80036; stroke-width: 1.5;" width="512" x="1243" y="1097.9531"/><ellipse cx="1455.75" cy="1113.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1455.2344,1114.5156 Q1453.375,1113.8125 1452.7188,1113.0469 Q1452.0781,1112.2656 1452.0781,1110.9531 Q1452.0781,1109.2656 1453.1563,1108.2969 Q1454.2344,1107.3281 1456.1094,1107.3281 Q1456.9688,1107.3281 1457.8125,1107.5313 Q1458.6719,1107.7188 1459.5156,1108.1094 L1459.5156,1110.5 Q1458.7344,1109.9375 1457.9063,1109.6563 Q1457.0938,1109.3594 1456.2969,1109.3594 Q1455.4219,1109.3594 1454.9375,1109.7188 Q1454.4688,1110.0781 1454.4688,1110.7344 Q1454.4688,1111.25 1454.8125,1111.5938 Q1455.1563,1111.9219 1456.25,1112.3281 L1457.3125,1112.7344 Q1458.7969,1113.2813 1459.5,1114.1875 Q1460.2188,1115.0938 1460.2188,1116.4688 Q1460.2188,1118.3438 1459.1094,1119.2656 Q1458,1120.1875 1455.75,1120.1875 Q1454.8281,1120.1875 1453.9063,1119.9688 Q1452.9844,1119.75 1452.125,1119.3281 L1452.125,1116.7969 Q1453.0938,1117.4844 1454.0156,1117.8281 Q1454.9375,1118.1719 1455.8281,1118.1719 Q1456.7344,1118.1719 1457.2344,1117.7656 Q1457.7344,1117.3438 1457.7344,1116.6094 Q1457.7344,1116.0469 1457.3906,1115.6406 Q1457.0625,1115.2188 1456.4375,1114.9688 L1455.2344,1114.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="78" x="1476.25" y="1118.1074">urt_frtdata_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1244" x2="1754" y1="1129.9531" y2="1129.9531"/><ellipse cx="1254" cy="1157.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="1263" y="1160.9683">deadlineOffset : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1244" x2="1353.5" y1="1144.3555" y2="1144.3555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="291" x="1353.5" y="1147.6636">URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1644.5" x2="1754" y1="1144.3555" y2="1144.3555"/><ellipse cx="1254" cy="1187.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="150" x="1263" y="1190.5776">expectedRate : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1244" x2="1366.5" y1="1173.9648" y2="1173.9648"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="265" x="1366.5" y="1177.2729">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1631.5" x2="1754" y1="1173.9648" y2="1173.9648"/><ellipse cx="1254" cy="1216.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="1263" y="1220.187">maxJitter : urt_delay_t</text><ellipse cx="1254" cy="1229.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="138" x="1263" y="1232.9917">minLatency : urt_delay_t</text><ellipse cx="1254" cy="1242.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="141" x="1263" y="1245.7964">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1244" x2="1247" y1="1203.5742" y2="1203.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="504" x="1247" y="1206.8823">URT_CFG_PUBSUB_PROFILING == true || URT_CFG_PUBSUB_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1751" x2="1754" y1="1203.5742" y2="1203.5742"/><!--MD5=[ca63c4d42025d7ce195746a6a8d32f3e]
20
class urt_nrtdata_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="48" id="urt_nrtdata_t" style="stroke: #A80036; stroke-width: 1.5;" width="114" x="1790" y="1150.9531"/><ellipse cx="1805" cy="1166.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1804.4844,1167.5156 Q1802.625,1166.8125 1801.9688,1166.0469 Q1801.3281,1165.2656 1801.3281,1163.9531 Q1801.3281,1162.2656 1802.4063,1161.2969 Q1803.4844,1160.3281 1805.3594,1160.3281 Q1806.2188,1160.3281 1807.0625,1160.5313 Q1807.9219,1160.7188 1808.7656,1161.1094 L1808.7656,1163.5 Q1807.9844,1162.9375 1807.1563,1162.6563 Q1806.3438,1162.3594 1805.5469,1162.3594 Q1804.6719,1162.3594 1804.1875,1162.7188 Q1803.7188,1163.0781 1803.7188,1163.7344 Q1803.7188,1164.25 1804.0625,1164.5938 Q1804.4063,1164.9219 1805.5,1165.3281 L1806.5625,1165.7344 Q1808.0469,1166.2813 1808.75,1167.1875 Q1809.4688,1168.0938 1809.4688,1169.4688 Q1809.4688,1171.3438 1808.3594,1172.2656 Q1807.25,1173.1875 1805,1173.1875 Q1804.0781,1173.1875 1803.1563,1172.9688 Q1802.2344,1172.75 1801.375,1172.3281 L1801.375,1169.7969 Q1802.3438,1170.4844 1803.2656,1170.8281 Q1804.1875,1171.1719 1805.0781,1171.1719 Q1805.9844,1171.1719 1806.4844,1170.7656 Q1806.9844,1170.3438 1806.9844,1169.6094 Q1806.9844,1169.0469 1806.6406,1168.6406 Q1806.3125,1168.2188 1805.6875,1167.9688 L1804.4844,1167.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="82" x="1819" y="1171.1074">urt_nrtdata_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1791" x2="1903" y1="1182.9531" y2="1182.9531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="1791" x2="1903" y1="1190.9531" y2="1190.9531"/><!--MD5=[fc7708c915a0148c667d62e1370980fd]
21
class urt_srtusefulnessfunc_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="60.8047" id="urt_srtusefulnessfunc_t" style="stroke: #A80036; stroke-width: 1.5;" width="374" x="1920" y="1324.9531"/><ellipse cx="2029.25" cy="1340.9531" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2033.4844,1336.7188 L2028.2031,1336.7188 L2028.2031,1339.3906 L2033,1339.3906 L2033,1341.5469 L2028.2031,1341.5469 L2028.2031,1346.9531 L2025.7656,1346.9531 L2025.7656,1334.5625 L2033.4844,1334.5625 L2033.4844,1336.7188 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="147" x="2049.75" y="1345.1074">urt_srtusefulnessfunc_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1921" x2="2293" y1="1356.9531" y2="1356.9531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="1921" x2="2293" y1="1364.9531" y2="1364.9531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="362" x="1926" y="1379.1636">urt_srtusefulnessfunc_t (dt : urt_delay_t, params : void*) : float</text><!--MD5=[4a2daf41193a31389d6311337c2a120f]
22
class urt_srtdata_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="73.6094" id="urt_srtdata_t" style="stroke: #A80036; stroke-width: 1.5;" width="258" x="1958" y="1137.9531"/><ellipse cx="2042.25" cy="1153.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2041.7344,1154.5156 Q2039.875,1153.8125 2039.2188,1153.0469 Q2038.5781,1152.2656 2038.5781,1150.9531 Q2038.5781,1149.2656 2039.6563,1148.2969 Q2040.7344,1147.3281 2042.6094,1147.3281 Q2043.4688,1147.3281 2044.3125,1147.5313 Q2045.1719,1147.7188 2046.0156,1148.1094 L2046.0156,1150.5 Q2045.2344,1149.9375 2044.4063,1149.6563 Q2043.5938,1149.3594 2042.7969,1149.3594 Q2041.9219,1149.3594 2041.4375,1149.7188 Q2040.9688,1150.0781 2040.9688,1150.7344 Q2040.9688,1151.25 2041.3125,1151.5938 Q2041.6563,1151.9219 2042.75,1152.3281 L2043.8125,1152.7344 Q2045.2969,1153.2813 2046,1154.1875 Q2046.7188,1155.0938 2046.7188,1156.4688 Q2046.7188,1158.3438 2045.6094,1159.2656 Q2044.5,1160.1875 2042.25,1160.1875 Q2041.3281,1160.1875 2040.4063,1159.9688 Q2039.4844,1159.75 2038.625,1159.3281 L2038.625,1156.7969 Q2039.5938,1157.4844 2040.5156,1157.8281 Q2041.4375,1158.1719 2042.3281,1158.1719 Q2043.2344,1158.1719 2043.7344,1157.7656 Q2044.2344,1157.3438 2044.2344,1156.6094 Q2044.2344,1156.0469 2043.8906,1155.6406 Q2043.5625,1155.2188 2042.9375,1154.9688 L2041.7344,1154.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="81" x="2062.75" y="1158.1074">urt_srtdata_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1959" x2="2215" y1="1169.9531" y2="1169.9531"/><ellipse cx="1969" cy="1180.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="232" x="1978" y="1184.1636">usefullnesscb : urt_srtusefulnessfunc_t*</text><ellipse cx="1969" cy="1193.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="1978" y="1196.9683">cbparams : void*</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1959" x2="2215" y1="1203.5625" y2="1203.5625"/><!--MD5=[3226071078d8aeaa18fbafa5359ddee6]
23
class urt_servicefunc_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="60.8047" id="urt_servicefunc_t" style="stroke: #A80036; stroke-width: 1.5;" width="451" x="4094.5" y="764.4531"/><ellipse cx="4262.75" cy="780.4531" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4266.9844,776.2188 L4261.7031,776.2188 L4261.7031,778.8906 L4266.5,778.8906 L4266.5,781.0469 L4261.7031,781.0469 L4261.7031,786.4531 L4259.2656,786.4531 L4259.2656,774.0625 L4266.9844,774.0625 L4266.9844,776.2188 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="106" x="4283.25" y="784.6074">urt_servicefunc_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4095.5" x2="4544.5" y1="796.4531" y2="796.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4095.5" x2="4544.5" y1="804.4531" y2="804.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="439" x="4100.5" y="818.6636">urt_servicefunc_t (arg : void*, ret : void*, timeout : urt_delay_t) : urt_status_t</text><!--MD5=[e60e0f8379a14e7a4a292c65add9d735]
24
class urt_service_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="222.4609" id="urt_service_t" style="stroke: #A80036; stroke-width: 1.5;" width="602" x="4019" y="396.9531"/><ellipse cx="4276.25" cy="412.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4275.7344,413.5156 Q4273.875,412.8125 4273.2188,412.0469 Q4272.5781,411.2656 4272.5781,409.9531 Q4272.5781,408.2656 4273.6563,407.2969 Q4274.7344,406.3281 4276.6094,406.3281 Q4277.4688,406.3281 4278.3125,406.5313 Q4279.1719,406.7188 4280.0156,407.1094 L4280.0156,409.5 Q4279.2344,408.9375 4278.4063,408.6563 Q4277.5938,408.3594 4276.7969,408.3594 Q4275.9219,408.3594 4275.4375,408.7188 Q4274.9688,409.0781 4274.9688,409.7344 Q4274.9688,410.25 4275.3125,410.5938 Q4275.6563,410.9219 4276.75,411.3281 L4277.8125,411.7344 Q4279.2969,412.2813 4280,413.1875 Q4280.7188,414.0938 4280.7188,415.4688 Q4280.7188,417.3438 4279.6094,418.2656 Q4278.5,419.1875 4276.25,419.1875 Q4275.3281,419.1875 4274.4063,418.9688 Q4273.4844,418.75 4272.625,418.3281 L4272.625,415.7969 Q4273.5938,416.4844 4274.5156,416.8281 Q4275.4375,417.1719 4276.3281,417.1719 Q4277.2344,417.1719 4277.7344,416.7656 Q4278.2344,416.3438 4278.2344,415.6094 Q4278.2344,415.0469 4277.8906,414.6406 Q4277.5625,414.2188 4276.9375,413.9688 L4275.7344,413.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="79" x="4296.75" y="417.1074">urt_service_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4020" x2="4620" y1="428.9531" y2="428.9531"/><ellipse cx="4030" 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="115" x="4039" y="443.1636">next : urt_service_t*</text><ellipse cx="4030" 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="105" x="4039" y="455.9683">id : urt_serviceid_t</text><ellipse cx="4030" 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="113" x="4039" y="468.7729">lock : urt_osMutex_t</text><ellipse cx="4030" 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="160" x="4039" y="481.5776">callback : urt_servicefunc_t*</text><ellipse cx="4030" cy="507.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="137" x="4039" y="511.187">sumDurations : uint64_t</text><ellipse cx="4030" cy="520.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="110" x="4039" y="523.9917">numCalls : uint64_t</text><ellipse cx="4030" cy="533.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="135" x="4039" y="536.7964">numTimeouts : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4020" x2="4225.5" y1="494.5742" y2="494.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="189" x="4225.5" y="497.8823">URT_CFG_RPC_PROFLING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4414.5" x2="4620" y1="494.5742" y2="494.5742"/><ellipse cx="4030" cy="563.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="143" x="4039" y="566.4058">minDuration : urt_delay_t</text><ellipse cx="4030" cy="576" 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="4039" y="579.2104">maxDuration : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4020" x2="4093" y1="549.793" y2="549.793"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="454" x="4093" y="553.1011">URT_CFG_RPC_PROFILING == true || URT_CFG_RPC_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4547" x2="4620" y1="549.793" y2="549.793"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4020" x2="4620" y1="585.8047" y2="585.8047"/><ellipse cx="4030" cy="596.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="576" x="4039" y="600.0151">urtServiceInit(service : urt_service_t*, id : urt_serviceid_t, callback : urt_servicefunc_t*) : urt_status_t</text><ellipse cx="4030" cy="609.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="557" x="4039" y="612.8198">urtServiceCall(service : urt_service_t*, arg : void*, ret : void*, timeout : urt_delay_t) : urt_status_t</text><!--MD5=[89d25e87afdd75480e1ec2bd05524873]
25
class urt_core_t--><rect fill="#FEFECE" filter="url(#f1b93bo83bsyl7)" height="256.0703" id="urt_core_t" style="stroke: #A80036; stroke-width: 1.5;" width="515" x="3156.5" y="28.9531"/><ellipse cx="3378.25" cy="44.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3377.7344,45.5156 Q3375.875,44.8125 3375.2188,44.0469 Q3374.5781,43.2656 3374.5781,41.9531 Q3374.5781,40.2656 3375.6563,39.2969 Q3376.7344,38.3281 3378.6094,38.3281 Q3379.4688,38.3281 3380.3125,38.5313 Q3381.1719,38.7188 3382.0156,39.1094 L3382.0156,41.5 Q3381.2344,40.9375 3380.4063,40.6563 Q3379.5938,40.3594 3378.7969,40.3594 Q3377.9219,40.3594 3377.4375,40.7188 Q3376.9688,41.0781 3376.9688,41.7344 Q3376.9688,42.25 3377.3125,42.5938 Q3377.6563,42.9219 3378.75,43.3281 L3379.8125,43.7344 Q3381.2969,44.2813 3382,45.1875 Q3382.7188,46.0938 3382.7188,47.4688 Q3382.7188,49.3438 3381.6094,50.2656 Q3380.5,51.1875 3378.25,51.1875 Q3377.3281,51.1875 3376.4063,50.9688 Q3375.4844,50.75 3374.625,50.3281 L3374.625,47.7969 Q3375.5938,48.4844 3376.5156,48.8281 Q3377.4375,49.1719 3378.3281,49.1719 Q3379.2344,49.1719 3379.7344,48.7656 Q3380.2344,48.3438 3380.2344,47.6094 Q3380.2344,47.0469 3379.8906,46.6406 Q3379.5625,46.2188 3378.9375,45.9688 L3377.7344,45.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="63" x="3398.75" y="49.1074">urt_core_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3157.5" x2="3670.5" y1="60.9531" y2="60.9531"/><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="3164.5" y="68.9531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="119" x="3176.5" y="75.1636">_nodes : urt_node_t*</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="3164.5" y="81.7578"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="192" x="3176.5" y="87.9683">_evtSource : urt_osEventSource_t</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="3164.5" y="94.5625"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="119" x="3176.5" y="100.7729">_lock : urt_osMutex_t</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="3164.5" y="124.1719"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="117" x="3176.5" y="130.3823">_topics : urt_topic_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3157.5" x2="3309" y1="113.7695" y2="113.7695"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="210" x="3309" y="117.0776">URT_CFG_PUBSUB_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3519" x2="3670.5" y1="113.7695" y2="113.7695"/><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="3164.5" y="153.7813"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="145" x="3176.5" y="159.9917">_services : urt_service_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3157.5" x2="3321.5" y1="143.3789" y2="143.3789"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="185" x="3321.5" y="146.687">URT_CFG_RPC_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3506.5" x2="3670.5" y1="143.3789" y2="143.3789"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="3157.5" x2="3670.5" y1="166.5859" y2="166.5859"/><ellipse cx="3167.5" cy="177.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="175" x="3176.5" y="180.7964">urtCoreInit (void) : urt_status_t</text><ellipse cx="3167.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="222" x="3176.5" y="193.6011">urtCoreStartNodes (void) : urt_status_t</text><ellipse cx="3167.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="489" x="3176.5" y="206.4058">urtCoreSynchronizeNodes (node : urt_node_t*, stage : urt_nodestage_t) : urt_status_t</text><ellipse cx="3167.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="220" x="3176.5" y="219.2104">urtCoreStopNodes (void) : urt_status_t</text><ellipse cx="3167.5" cy="245.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="299" x="3176.5" y="248.8198">urtCoreRetrieveTopic (id : urt_topicid_t) : urt_topic_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3157.5" x2="3309" y1="232.207" y2="232.207"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="210" x="3309" y="235.5151">URT_CFG_PUBSUB_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3519" x2="3670.5" y1="232.207" y2="232.207"/><ellipse cx="3167.5" cy="275.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="339" x="3176.5" y="278.4292">urtCoreRetrieveService (id : urt_serviceid_t) : urt_service_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3157.5" x2="3321.5" y1="261.8164" y2="261.8164"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="185" x="3321.5" y="265.1245">URT_CFG_RPC_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3506.5" x2="3670.5" y1="261.8164" y2="261.8164"/><!--MD5=[182342162f0b9b45ddce11acc6582c59]
26
reverse link urt_node_t to urt_node_t--><path d="M3978.4188,481.5181 C3992.8891,488.8478 4001,497.6595 4001,507.9531 C4001,520.8706 3988.2271,531.4543 3966.1426,539.7044 " fill="none" id="urt_node_t&lt;-urt_node_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="3966.1426,476.2018,3970.0589,482.2568,3977.1544,480.9706,3973.2381,474.9156,3966.1426,476.2018" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3973.9634" y="472.7174">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="3974.0759" y="537.113">0..1</text><!--MD5=[55d7f7c946c3356baf68288566af1bf6]
27
reverse link urt_node_t to urt_nodeSetupCallback_t--><path d="M3295.1788,604.8507 C3232.3651,660.5148 3160.8212,726.6736 3123.358,764.4451 " fill="none" id="urt_node_t&lt;-urt_nodeSetupCallback_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="3305.1785,596.013,3298.0338,596.9892,3296.1869,603.9598,3303.3316,602.9836,3305.1785,596.013" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3287.8355" y="615.997">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3120.0301" y="753.2337">1</text><!--MD5=[55d7f7c946c3356baf68288566af1bf6]
28
reverse link urt_node_t to urt_nodeSetupCallback_t--><path d="M3325.6402,599.7277 C3265.0921,656.4038 3187.6817,725.5079 3140.3077,764.4451 " 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="3329.6035,596.013,3320.3016,599.2496,3325.9555,599.4324,3325.7727,605.0863,3329.6035,596.013" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[b913f036db99e36b937989146817bd94]
29
reverse link urt_node_t to urt_nodeLoopCallback_t--><path d="M3488.8046,606.2272 C3536.3459,661.6019 3595.523,726.9845 3632.7672,764.4451 " fill="none" id="urt_node_t&lt;-urt_nodeLoopCallback_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="3480.071,596.013,3480.9301,603.1728,3487.8695,605.1335,3487.0104,597.9738,3480.071,596.013" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3477.2113" y="615.997">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3616.185" y="753.2337">1</text><!--MD5=[b913f036db99e36b937989146817bd94]
30
reverse link urt_node_t to urt_nodeLoopCallback_t--><path d="M3507.9104,599.7277 C3559.9245,656.4038 3619.7591,725.5079 3649.7168,764.4451 " 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="3504.496,596.013,3507.6416,605.3461,3507.8796,599.6942,3513.5315,599.9323,3504.496,596.013" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[0c465c1a61dfd99ff8b5568ca35c92d1]
31
reverse link urt_srtdata_t to urt_srtusefulnessfunc_t--><path d="M2092.5955,1225.4523 C2096.1293,1257.3446 2100.5801,1297.5133 2103.592,1324.6963 " fill="none" id="urt_srtdata_t&lt;-urt_srtusefulnessfunc_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="2091.144,1212.3528,2087.8292,1218.7569,2092.4657,1224.2798,2095.7805,1217.8757,2091.144,1212.3528" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="2083.167" y="1231.6173">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="2076.4141" y="1313.9066">0..1</text><!--MD5=[3f22cd2af9b1d30da63b75b4db75ae6e]
32
reverse link urt_rtclassdata_t to urt_hrtdata_t--><path d="M1995.297,1028.0604 C2123.8884,1076.5033 2170.7904,1049.0452 2306,1084.9531 C2307.2696,1085.2903 2308.5419,1085.6306 2309.8167,1085.9739 " fill="none" id="urt_rtclassdata_t&lt;-urt_hrtdata_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1983.0096,1023.2973,1987.1582,1029.1956,1994.1983,1027.6347,1990.0497,1021.7365,1983.0096,1023.2973" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1990.9512" y="1024.5203">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="2277.855" y="1080.1779">0..1</text><!--MD5=[a94a8c9c209e194384613684e912df80]
33
reverse link urt_rtclassdata_t to urt_frtdata_t--><path d="M1825.0133,1021.8881 C1822.9927,1022.9255 1820.986,1023.9486 1819,1024.9531 C1770.545,1049.4609 1717.3487,1074.9504 1668.4801,1097.814 " fill="none" id="urt_rtclassdata_t&lt;-urt_frtdata_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1836.6931,1015.8175,1829.5245,1015.0354,1826.0455,1021.3517,1833.214,1022.1339,1836.6931,1015.8175" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1821.0832" y="1016.1153">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1659.4899" y="1086.7992">0..1</text><!--MD5=[e6a6d7a2212fadf5661857a71d4f05c3]
34
reverse link urt_rtclassdata_t to urt_srtdata_t--><path d="M1962.9469,1035.1306 C1992.5584,1068.5062 2028.5389,1109.0605 2054.1083,1137.8803 " fill="none" id="urt_rtclassdata_t&lt;-urt_srtdata_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1953.9802,1025.024,1954.97,1032.1669,1961.9441,1034.0004,1960.9543,1026.8576,1953.9802,1025.024" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1951.6024" y="1045.1105">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="2021.8314" y="1126.7774">0..1</text><!--MD5=[206fe31eaf8244c7272230bb0ec7137c]
35
reverse link urt_rtclassdata_t to urt_nrtdata_t--><path d="M1890.3632,1037.6363 C1878.2731,1075.9215 1863.4526,1122.8532 1854.6423,1150.7525 " fill="none" id="urt_rtclassdata_t&lt;-urt_nrtdata_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1894.346,1025.024,1888.7248,1029.5409,1890.7323,1036.467,1896.3535,1031.9501,1894.346,1025.024" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1883.5822" y="1045.1105">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1829.5256" y="1139.7132">0..1</text><!--MD5=[1ba55993ff077c77667f6c7be6552d53]
36
reverse link urt_rtdata_t to urt_rtclass_t--><path d="M1770.6561,844.6449 C1761.8403,869.9028 1751.1568,900.5119 1742.3414,925.7687 " fill="none" id="urt_rtdata_t&lt;-urt_rtclass_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1774.9464,832.3528,1769.1926,836.6995,1770.9919,843.6825,1776.7457,839.3358,1774.9464,832.3528" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1764.2285" y="851.6173">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1736.2175" y="914.788">1</text><!--MD5=[8318054091d2ecf2336b9e490f482e2a]
37
reverse link urt_rtdata_t to urt_rtclassdata_t--><path d="M1820.6549,843.2663 C1837.9015,868.7828 1859.0354,900.0506 1876.4183,925.7687 " fill="none" id="urt_rtdata_t&lt;-urt_rtclassdata_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1813.2785,832.3528,1813.3244,839.5638,1819.9983,842.2948,1819.9524,835.0839,1813.2785,832.3528" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1808.6698" y="851.6173">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1863.1334" y="914.788">1</text><!--MD5=[b6ee30948a218449c72edbee7363b5d7]
38
link urt_subscriber_t to urt_hrtdata_t--><path d="M1970.4064,664.335 C2118.9742,791.706 2324.1798,967.6342 2450.8238,1076.2095 " fill="none" id="urt_subscriber_t-&gt;urt_hrtdata_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="2460.9373,1084.88,2458.9857,1077.938,2451.827,1077.0696,2453.7787,1084.0116,2460.9373,1084.88" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1954.6605" y="684.3409">0..1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="2443.9055" y="1073.8702">1</text><!--MD5=[536025241394544a90bc53fb552f3a08]
39
reverse link urt_message_t to urt_message_t--><path d="M1213.9841,771.7582 C1228.0653,777.3042 1236.5,785.0359 1236.5,794.9531 C1236.5,807.5215 1222.9528,816.5795 1201.534,822.1273 " fill="none" id="urt_message_t&lt;-urt_message_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1201.534,767.7789,1206.0314,773.4157,1212.9643,771.4323,1208.467,765.7955,1201.534,767.7789" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1209.7829" y="763.6087">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1209.3281" y="819.848">0..1</text><!--MD5=[f7eb638a1c2d853c6fb0ae6f53692e50]
40
reverse link urt_subscriber_t to urt_rtdata_t--><path d="M1788,677.1506 C1788,707.5282 1788,736.3175 1788,757.8315 " fill="none" id="urt_subscriber_t&lt;-urt_rtdata_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1788,664.051,1784,670.051,1788,676.051,1792,670.051,1788,664.051" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1779.8063" y="684.0431">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1779.2875" y="746.9968">1</text><!--MD5=[bf7bf5810813e0e9b75d3053dc098443]
41
reverse link urt_subscriber_t to urt_topic_t--><path d="M1240.6352,507.9531 C1227.4526,507.9531 1214.27,507.9531 1201.0874,507.9531 " fill="none" id="urt_subscriber_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1253.8178,507.9531,1247.8178,503.9531,1241.8178,507.9531,1247.8178,511.9531,1253.8178,507.9531" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1238.2496" y="504.9148">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1209.0596" y="504.7283">0..1</text><!--MD5=[d3b08a81de663c21a5ec062e6c430f2b]
42
reverse link urt_topic_t to urt_subscriber_t--><path d="M1214.27,507.9531 C1227.4526,507.9531 1240.6352,507.9531 1253.8178,507.9531 " fill="none" id="urt_topic_t&lt;-urt_subscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1201.0874,507.9531,1207.0874,511.9531,1213.0874,507.9531,1207.0874,503.9531,1201.0874,507.9531" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1208.7471" y="520.3142">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1222.1371" y="520.1258">0..1</text><!--MD5=[67fd999c5486ad1c37ee9b77e12afd1b]
43
reverse link urt_subscriber_t to urt_message_t--><path d="M1333.8985,668.4545 C1279.0698,687.8336 1225.428,706.7932 1177.0491,723.8927 " fill="none" id="urt_subscriber_t&lt;-urt_message_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1346.3572,664.051,1339.3672,662.2792,1335.0432,668.0501,1342.0332,669.8219,1346.3572,664.051" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1316.7714" y="684.0431">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1172.5448" y="712.8839">0..1</text><!--MD5=[54fcf25ad8c5f1d36e678e42d5bfd4cc]
44
reverse link urt_publisher_t to urt_topic_t--><path d="M794.8249,507.9531 C802.1324,507.9531 809.44,507.9531 816.7475,507.9531 " fill="none" id="urt_publisher_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="781.6714,507.9531,787.6714,511.9531,793.6714,507.9531,787.6714,503.9531,781.6714,507.9531" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="789.4647" y="504.8708">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="801.0814" y="504.7283">1</text><!--MD5=[5025b4c4053b8e7c7ca8a657f09f21c0]
45
link urt_publisher_t to urt_message_t--><path d="M531.1745,572.5403 C619.685,616.7956 737.2604,675.5833 829.3022,721.6042 " 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="833.9416,723.9239,827.6807,716.3212,829.4695,721.6878,824.1029,723.4766,833.9416,723.9239" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[6b2afc1defaa6ed5a86f99c07f8466dd]
46
reverse link urt_topic_t to urt_topic_t--><path d="M1213.0439,468.8634 C1227.3061,477.7857 1236,490.8156 1236,507.9531 C1236,529.459 1222.309,544.4963 1201.1039,553.065 " fill="none" id="urt_topic_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1201.1039,462.8412,1204.6597,469.1147,1211.8182,468.2453,1208.2624,461.9718,1201.1039,462.8412" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1208.7642" y="457.8542">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1209.0767" y="551.6024">0..1</text><!--MD5=[0b5167e958c0ed93ffc0c98ce399b54d]
47
reverse link urt_topic_t to urt_message_t--><path d="M980.4936,645.083 C977.2625,672.3513 974.611,699.9269 972.9932,723.861 " fill="none" id="urt_topic_t&lt;-urt_message_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="982.0706,632.1663,977.3729,637.6373,980.6162,644.0779,985.3139,638.6069,982.0706,632.1663" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="972.1858" y="652.2614">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="947.4456" y="712.8489">1..1</text><!--MD5=[0b5167e958c0ed93ffc0c98ce399b54d]
48
reverse link urt_topic_t to urt_message_t--><path d="M1006.6794,645.4532 C1003.6529,672.6008 999.9482,700.0352 996.0133,723.861 " fill="none" id="urt_topic_t&lt;-urt_message_t-1" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1008.1087,632.1663,1003.4898,637.704,1006.8251,644.0975,1011.4439,638.5598,1008.1087,632.1663" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="999.8106" y="652.2614">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="989.6647" y="712.8489">1</text><!--MD5=[05f2c35569573d3273c65d3342945557]
49
reverse link urt_service_t to urt_service_t--><path d="M4632.7882,474.1943 C4647.4237,482.7097 4656,493.9626 4656,507.9531 C4656,525.3393 4642.7552,538.4979 4621.0965,547.4287 " fill="none" id="urt_service_t&lt;-urt_service_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="4621.0965,468.4775,4624.7296,474.7065,4631.8768,473.7487,4628.2437,467.5197,4621.0965,468.4775" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="4629.2006" y="464.2923">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="4629.4131" y="545.3406">0..1</text><!--MD5=[586e61fedafd54ae7ea71cebd9f9032a]
50
reverse link urt_service_t to urt_servicefunc_t--><path d="M4320,632.5748 C4320,681.0765 4320,732.5063 4320,764.179 " fill="none" id="urt_service_t&lt;-urt_servicefunc_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="4320,619.3256,4316,625.3256,4320,631.3256,4324,625.3256,4320,619.3256" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="4311.7313" y="639.3682">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="4293.525" y="753.3857">0..1</text><!--MD5=[694e7400eb99f74d44ea388aed89d199]
51
reverse link urt_core_t to urt_node_t--><path d="M3414,298.3868 C3414,339.4358 3414,383.0706 3414,419.8362 " fill="none" id="urt_core_t&lt;-urt_node_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="3414,285.1621,3410,291.1621,3414,297.1621,3418,291.1621,3414,285.1621" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3405.7688" y="305.0765">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="3389.0063" y="408.9884">0..1</text><!--MD5=[250695c91040478b50550bc37a8775c7]
52
reverse link urt_core_t to urt_topic_t--><path d="M3143.0912,162.8691 C2594.5177,176.4214 1389.7388,214.7476 1219,292.9531 C1174.1713,313.4865 1133.8232,348.1574 1100.7563,383.7304 " fill="none" id="urt_core_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="3156.3271,162.5438,3150.2306,158.6925,3144.3307,162.8388,3150.4272,166.6901,3156.3271,162.5438" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3140.5587" y="159.555">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1081.6164" y="372.7724">0..1</text><!--MD5=[8d0a227ec56585cdbc167f8316b34b64]
53
reverse link urt_core_t to urt_service_t--><path d="M3684.694,198.4163 C3786.2037,219.4381 3900.9032,249.9035 4000,292.9531 C4062.1554,319.9546 4125.2013,359.2292 4178.7107,396.8449 " fill="none" id="urt_core_t&lt;-urt_service_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="3671.744,195.7706,3676.8219,200.8907,3683.5011,198.1727,3678.4233,193.0526,3671.744,195.7706" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3679.5145" y="193.7682">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="4144.4116" y="385.9318">0..1</text><!--MD5=[828ff7637e287d291ac9bfc598412fa9]
1
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="846px" preserveAspectRatio="none" style="width:7229px;height:846px;" version="1.1" viewBox="0 0 7229 846" width="7229px" zoomAndPan="magnify"><defs><filter height="300%" id="f6i8e5hg9h7lm" 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="3572.5" y="16.708">µRtWare</text><!--MD5=[b9de0669a29c7bc934fd916b09c39491]
2
cluster node--><rect fill="#FFFFFF" filter="url(#f6i8e5hg9h7lm)" height="434" style="stroke: #000000; stroke-width: 1.5;" width="1184" x="5368" y="356.4531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="40" x="5940" y="371.4482">node</text><!--MD5=[d74e2ef346f73688f9378f6d3d42598c]
3
cluster Publish-Subscribe System--><polygon fill="#FFFFFF" filter="url(#f6i8e5hg9h7lm)" points="14,302.9531,24,292.9531,5357,292.9531,5357,824.9531,5347,834.9531,14,834.9531,14,302.9531" style="stroke: #000000; stroke-width: 1.5;"/><line style="stroke: #000000; stroke-width: 1.5;" x1="5347" x2="5356" y1="302.9531" y2="293.9531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="14" x2="5347" y1="302.9531" y2="302.9531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="5347" x2="5347" y1="302.9531" y2="834.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="205" x="2579" y="318.9482">Publish-Subscribe System</text><!--MD5=[16a3bbbe805f94d6e6ce317c08ab945e]
4
cluster subscriber--><rect fill="#FFFFFF" filter="url(#f6i8e5hg9h7lm)" height="502" style="stroke: #000000; stroke-width: 1.5;" width="4102" x="1247" y="324.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="85" x="3255.5" y="339.9482">subscriber</text><!--MD5=[810d0f07e53ef611b6d803ef30301147]
5
cluster Remote Procedure Call System--><polygon fill="#FFFFFF" filter="url(#f6i8e5hg9h7lm)" points="6571,353.4531,6581,343.4531,7207,343.4531,7207,780.4531,7197,790.4531,6571,790.4531,6571,353.4531" style="stroke: #000000; stroke-width: 1.5;"/><line style="stroke: #000000; stroke-width: 1.5;" x1="7197" x2="7206" y1="353.4531" y2="344.4531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="6571" x2="7197" y1="353.4531" y2="353.4531"/><line style="stroke: #000000; stroke-width: 1.5;" x1="7197" x2="7197" y1="353.4531" y2="790.4531"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="244" x="6763" y="369.4482">Remote Procedure Call System</text><!--MD5=[a7dea26996a1231aa68629b332780450]
6
class urt_nodeSetupCallback_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="60.8047" id="urt_nodeSetupCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="456" x="5407" y="721.4531"/><ellipse cx="5552.75" cy="737.4531" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M5553.5938,744.2031 L5551.1406,744.2031 L5551.1406,733.9531 L5548,733.9531 L5548,731.8125 L5556.7344,731.8125 L5556.7344,733.9531 L5553.5938,733.9531 L5553.5938,744.2031 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="156" x="5573.25" y="741.6074">urt_nodeSetupCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5408" x2="5862" y1="753.4531" y2="753.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5408" x2="5862" y1="761.4531" y2="761.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="444" x="5413" y="775.6636">urt_nodeSetupCallback_t (node : urt_node_t*, arg : void*) : urt_osEventMask_t</text><!--MD5=[7f869e17e281b89d59a4c09e0f22c3af]
7
class urt_nodeLoopCallback_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="60.8047" id="urt_nodeLoopCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="614" x="5898" y="721.4531"/><ellipse cx="6126.25" cy="737.4531" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6127.0938,744.2031 L6124.6406,744.2031 L6124.6406,733.9531 L6121.5,733.9531 L6121.5,731.8125 L6130.2344,731.8125 L6130.2344,733.9531 L6127.0938,733.9531 L6127.0938,744.2031 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="149" x="6146.75" y="741.6074">urt_nodeLoopCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5899" x2="6511" y1="753.4531" y2="753.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5899" x2="6511" y1="761.4531" y2="761.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="602" x="5904" y="775.6636">urt_nodeLoopCallback_t (node : urt_node_t*, events : urt_osEventMask_t, arg : void*) : urt_osEventMask_t</text><!--MD5=[d2563153d77472384a15c07b815d639f]
8
class urt_node_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="205.6563" id="urt_node_t" style="stroke: #A80036; stroke-width: 1.5;" width="1149" x="5376.5" y="383.4531"/><ellipse cx="5913.25" cy="399.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M5912.7344,400.0156 Q5910.875,399.3125 5910.2188,398.5469 Q5909.5781,397.7656 5909.5781,396.4531 Q5909.5781,394.7656 5910.6563,393.7969 Q5911.7344,392.8281 5913.6094,392.8281 Q5914.4688,392.8281 5915.3125,393.0313 Q5916.1719,393.2188 5917.0156,393.6094 L5917.0156,396 Q5916.2344,395.4375 5915.4063,395.1563 Q5914.5938,394.8594 5913.7969,394.8594 Q5912.9219,394.8594 5912.4375,395.2188 Q5911.9688,395.5781 5911.9688,396.2344 Q5911.9688,396.75 5912.3125,397.0938 Q5912.6563,397.4219 5913.75,397.8281 L5914.8125,398.2344 Q5916.2969,398.7813 5917,399.6875 Q5917.7188,400.5938 5917.7188,401.9688 Q5917.7188,403.8438 5916.6094,404.7656 Q5915.5,405.6875 5913.25,405.6875 Q5912.3281,405.6875 5911.4063,405.4688 Q5910.4844,405.25 5909.625,404.8281 L5909.625,402.2969 Q5910.5938,402.9844 5911.5156,403.3281 Q5912.4375,403.6719 5913.3281,403.6719 Q5914.2344,403.6719 5914.7344,403.2656 Q5915.2344,402.8438 5915.2344,402.1094 Q5915.2344,401.5469 5914.8906,401.1406 Q5914.5625,400.7188 5913.9375,400.4688 L5912.7344,400.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="67" x="5933.75" y="403.6074">urt_node_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5377.5" x2="6524.5" y1="415.4531" y2="415.4531"/><ellipse cx="5387.5" cy="426.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="5396.5" y="429.6636">next : urt_node_t*</text><ellipse cx="5387.5" cy="439.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="5396.5" y="442.4683">thread : urt_osThread_t*</text><ellipse cx="5387.5" cy="452.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="5396.5" y="455.2729">setupcallback : urt_nodeSetupCallback_t*</text><ellipse cx="5387.5" cy="464.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="5396.5" y="468.0776">setupparams : void*</text><ellipse cx="5387.5" cy="477.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="5396.5" y="480.8823">loopcallback : urt_nodeLoopCallback_t*</text><ellipse cx="5387.5" cy="490.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="5396.5" y="493.687">loopparams : void*</text><ellipse cx="5387.5" cy="503.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="136" x="5396.5" y="506.4917">stage : urt_nodestage_t</text><ellipse cx="5387.5" cy="516.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="178" x="5396.5" y="519.2964">listener : urt_osEventListener_t</text><ellipse cx="5387.5" cy="545.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="88" x="5396.5" y="548.9058">loops : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5377.5" x2="5743" y1="532.293" y2="532.293"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="416" x="5743" y="535.6011">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="6159" x2="6524.5" y1="532.293" y2="532.293"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5377.5" x2="6524.5" y1="555.5" y2="555.5"/><rect fill="#F24D5C" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5384.5" y="563.5"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="179" x="5396.5" y="569.7104">_main : urt_osThreadFunction_t</text><ellipse cx="5387.5" cy="579.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="1123" x="5396.5" y="582.5151">urtNodeInit (node : urt_node_t*, thread : urt_osThread_t*, setupcallback : urt_nodeSetupCallback_t*, setupparams : void*, loopcallback : urt_nodeLoopCallback_t*, loopparams : void*) : urt_status_t</text><!--MD5=[e602aa6d45f270ad04f88c9ca5352b33]
9
class urt_message_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="141.6328" id="urt_message_t" style="stroke: #A80036; stroke-width: 1.5;" width="451" x="770.5" y="680.9531"/><ellipse cx="945.75" cy="696.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M945.2344,697.5156 Q943.375,696.8125 942.7188,696.0469 Q942.0781,695.2656 942.0781,693.9531 Q942.0781,692.2656 943.1563,691.2969 Q944.2344,690.3281 946.1094,690.3281 Q946.9688,690.3281 947.8125,690.5313 Q948.6719,690.7188 949.5156,691.1094 L949.5156,693.5 Q948.7344,692.9375 947.9063,692.6563 Q947.0938,692.3594 946.2969,692.3594 Q945.4219,692.3594 944.9375,692.7188 Q944.4688,693.0781 944.4688,693.7344 Q944.4688,694.25 944.8125,694.5938 Q945.1563,694.9219 946.25,695.3281 L947.3125,695.7344 Q948.7969,696.2813 949.5,697.1875 Q950.2188,698.0938 950.2188,699.4688 Q950.2188,701.3438 949.1094,702.2656 Q948,703.1875 945.75,703.1875 Q944.8281,703.1875 943.9063,702.9688 Q942.9844,702.75 942.125,702.3281 L942.125,699.7969 Q943.0938,700.4844 944.0156,700.8281 Q944.9375,701.1719 945.8281,701.1719 Q946.7344,701.1719 947.2344,700.7656 Q947.7344,700.3438 947.7344,699.6094 Q947.7344,699.0469 947.3906,698.6406 Q947.0625,698.2188 946.4375,697.9688 L945.2344,697.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="92" x="966.25" y="701.1074">urt_message_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="771.5" x2="1220.5" y1="712.9531" y2="712.9531"/><ellipse cx="781.5" cy="723.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="790.5" y="727.1636">next : urt_message_t*</text><ellipse cx="781.5" cy="736.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="790.5" y="739.9683">payload : void*</text><ellipse cx="781.5" cy="749.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="790.5" y="752.7729">originTime : urt_osTime_t</text><ellipse cx="781.5" cy="762.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="790.5" y="765.5776">numHrtConsumersLeft : unsigned int</text><ellipse cx="781.5" cy="791.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="790.5" y="795.187">numConsumersLeft : unsigned int</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="771.5" x2="887.5" y1="778.5742" y2="778.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="887.5" y="781.8823">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1104.5" x2="1220.5" y1="778.5742" y2="778.5742"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="771.5" x2="1220.5" y1="801.7813" y2="801.7813"/><ellipse cx="781.5" cy="812.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="425" x="790.5" y="815.9917">urtMessageInit (message : urt_message_t*, payload : void*) : urt_status_t</text><!--MD5=[2ac85a9c1cceb8bb0c9045edc105e6e3]
10
class urt_publisher_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="128.8281" id="urt_publisher_t" style="stroke: #A80036; stroke-width: 1.5;" width="759" x="22.5" y="421.9531"/><ellipse cx="351.25" cy="437.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M350.7344,438.5156 Q348.875,437.8125 348.2188,437.0469 Q347.5781,436.2656 347.5781,434.9531 Q347.5781,433.2656 348.6563,432.2969 Q349.7344,431.3281 351.6094,431.3281 Q352.4688,431.3281 353.3125,431.5313 Q354.1719,431.7188 355.0156,432.1094 L355.0156,434.5 Q354.2344,433.9375 353.4063,433.6563 Q352.5938,433.3594 351.7969,433.3594 Q350.9219,433.3594 350.4375,433.7188 Q349.9688,434.0781 349.9688,434.7344 Q349.9688,435.25 350.3125,435.5938 Q350.6563,435.9219 351.75,436.3281 L352.8125,436.7344 Q354.2969,437.2813 355,438.1875 Q355.7188,439.0938 355.7188,440.4688 Q355.7188,442.3438 354.6094,443.2656 Q353.5,444.1875 351.25,444.1875 Q350.3281,444.1875 349.4063,443.9688 Q348.4844,443.75 347.625,443.3281 L347.625,440.7969 Q348.5938,441.4844 349.5156,441.8281 Q350.4375,442.1719 351.3281,442.1719 Q352.2344,442.1719 352.7344,441.7656 Q353.2344,441.3438 353.2344,440.6094 Q353.2344,440.0469 352.8906,439.6406 Q352.5625,439.2188 351.9375,438.9688 L350.7344,438.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="93" x="371.75" y="442.1074">urt_publisher_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="23.5" x2="780.5" y1="453.9531" y2="453.9531"/><ellipse cx="33.5" cy="464.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="468.1636">topic : urt_topic_t*</text><ellipse cx="33.5" cy="494.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="497.7729">publishAttempts : uint64_t</text><ellipse cx="33.5" cy="507.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="510.5776">publishFails : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="23.5" x2="293.5" y1="481.1602" y2="481.1602"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="293.5" y="484.4683">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="510.5" x2="780.5" y1="481.1602" y2="481.1602"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="23.5" x2="780.5" y1="517.1719" y2="517.1719"/><ellipse cx="33.5" cy="528.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="617" x="42.5" y="531.3823">urtPublisherInit (publisher : urt_publisher_t*, topic : urt_topic_t*, messages : urt_message_t*) : urt_status_t</text><ellipse cx="33.5" cy="540.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="733" x="42.5" y="544.187">urtPublisherPublish (publisher : urt_publisher_t*, payload : void*, n : size_t, t : urt_osTime_t, timeout : urt_delay_t) : urt_status_t</text><!--MD5=[a1b1e66ec52c209a9fa2dab315cd7630]
11
class urt_topic_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="248.0703" id="urt_topic_t" style="stroke: #A80036; stroke-width: 1.5;" width="384" x="817" y="362.4531"/><ellipse cx="971.75" cy="378.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M971.2344,379.0156 Q969.375,378.3125 968.7188,377.5469 Q968.0781,376.7656 968.0781,375.4531 Q968.0781,373.7656 969.1563,372.7969 Q970.2344,371.8281 972.1094,371.8281 Q972.9688,371.8281 973.8125,372.0313 Q974.6719,372.2188 975.5156,372.6094 L975.5156,375 Q974.7344,374.4375 973.9063,374.1563 Q973.0938,373.8594 972.2969,373.8594 Q971.4219,373.8594 970.9375,374.2188 Q970.4688,374.5781 970.4688,375.2344 Q970.4688,375.75 970.8125,376.0938 Q971.1563,376.4219 972.25,376.8281 L973.3125,377.2344 Q974.7969,377.7813 975.5,378.6875 Q976.2188,379.5938 976.2188,380.9688 Q976.2188,382.8438 975.1094,383.7656 Q974,384.6875 971.75,384.6875 Q970.8281,384.6875 969.9063,384.4688 Q968.9844,384.25 968.125,383.8281 L968.125,381.2969 Q969.0938,381.9844 970.0156,382.3281 Q970.9375,382.6719 971.8281,382.6719 Q972.7344,382.6719 973.2344,382.2656 Q973.7344,381.8438 973.7344,381.1094 Q973.7344,380.5469 973.3906,380.1406 Q973.0625,379.7188 972.4375,379.4688 L971.2344,379.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="992.25" y="382.6074">urt_topic_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="818" x2="1200" y1="394.4531" y2="394.4531"/><ellipse cx="828" cy="405.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="837" y="408.6636">next : urt_topic_t*</text><ellipse cx="828" cy="418.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="837" y="421.4683">id : urt_topicid_t</text><ellipse cx="828" cy="431.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="837" y="434.2729">lock : urt_osMutex_t</text><ellipse cx="828" cy="443.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="837" y="447.0776">evtSource : urt_osEventSource_t</text><ellipse cx="828" cy="456.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="837" y="459.8823">numHrtSubscribers : unsigned int</text><ellipse cx="828" cy="469.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="212" x="837" y="472.687">hrtSubscribers : urt_hrtsubscriber_t*</text><ellipse cx="828" cy="482.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="173" x="837" y="485.4917">hrtReleased : urt_osCondvar_t</text><ellipse cx="828" cy="495.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="209" x="837" y="498.2964">mandatoryMessage : urt_message_t</text><ellipse cx="828" cy="507.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="186" x="837" y="511.1011">latestMessage : urt_message_t*</text><ellipse cx="828" cy="537.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="837" y="540.7104">qosRateTimer : urt_osTimer_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="818" x2="876.5" y1="524.0977" y2="524.0977"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="265" x="876.5" y="527.4058">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1141.5" x2="1200" y1="524.0977" y2="524.0977"/><ellipse cx="828" cy="567.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="197" x="837" y="570.3198">numDiscardedMessages : uint64_t</text><ellipse cx="828" cy="579.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="176" x="837" y="583.1245">numSubscribers : unsigned int</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="818" x2="900.5" y1="553.707" y2="553.707"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="900.5" y="557.0151">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1117.5" x2="1200" y1="553.707" y2="553.707"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="818" x2="1200" y1="589.7188" y2="589.7188"/><ellipse cx="828" cy="600.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="358" x="837" y="603.9292">urtTopicInit (topic : urt_topic_t*, id : urt_topicid_t) : urt_status_t</text><!--MD5=[50a042e24f957794dab9ba3ea8701c50]
12
class urt_basesubscriber_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="133.6328" id="urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="225" x="3081.5" y="684.9531"/><ellipse cx="3123.95" cy="700.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3123.4344,701.5156 Q3121.575,700.8125 3120.9188,700.0469 Q3120.2781,699.2656 3120.2781,697.9531 Q3120.2781,696.2656 3121.3563,695.2969 Q3122.4344,694.3281 3124.3094,694.3281 Q3125.1688,694.3281 3126.0125,694.5313 Q3126.8719,694.7188 3127.7156,695.1094 L3127.7156,697.5 Q3126.9344,696.9375 3126.1063,696.6563 Q3125.2938,696.3594 3124.4969,696.3594 Q3123.6219,696.3594 3123.1375,696.7188 Q3122.6688,697.0781 3122.6688,697.7344 Q3122.6688,698.25 3123.0125,698.5938 Q3123.3563,698.9219 3124.45,699.3281 L3125.5125,699.7344 Q3126.9969,700.2813 3127.7,701.1875 Q3128.4188,702.0938 3128.4188,703.4688 Q3128.4188,705.3438 3127.3094,706.2656 Q3126.2,707.1875 3123.95,707.1875 Q3123.0281,707.1875 3122.1063,706.9688 Q3121.1844,706.75 3120.325,706.3281 L3120.325,703.7969 Q3121.2938,704.4844 3122.2156,704.8281 Q3123.1375,705.1719 3124.0281,705.1719 Q3124.9344,705.1719 3125.4344,704.7656 Q3125.9344,704.3438 3125.9344,703.6094 Q3125.9344,703.0469 3125.5906,702.6406 Q3125.2625,702.2188 3124.6375,701.9688 L3123.4344,701.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="132" x="3144.05" y="705.1074">urt_basesubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3082.5" x2="3305.5" y1="716.9531" y2="716.9531"/><ellipse cx="3092.5" cy="727.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="3101.5" y="731.1636">topic : urt_topic_t*</text><ellipse cx="3092.5" cy="740.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="3101.5" y="743.9683">evtListener : urt_osEventListener_t</text><ellipse cx="3092.5" cy="753.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="3101.5" y="756.7729">lastMessage : urt_message_t*</text><ellipse cx="3092.5" cy="766.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="3101.5" y="769.5776">lastMessageTime : urt_osTime_t</text><ellipse cx="3092.5" cy="795.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="3101.5" y="799.187">sumLatencies : uint64_t</text><ellipse cx="3092.5" cy="808.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="3101.5" y="811.9917">numMessagesReceived : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3082.5" x2="3085.5" y1="782.5742" y2="782.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="3085.5" y="785.8823">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3302.5" x2="3305.5" y1="782.5742" y2="782.5742"/><!--MD5=[fc7708c915a0148c667d62e1370980fd]
13
class urt_srtusefulnessfunc_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="60.8047" id="urt_srtusefulnessfunc_t" style="stroke: #A80036; stroke-width: 1.5;" width="374" x="4612" y="721.4531"/><ellipse cx="4721.25" cy="737.4531" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4725.4844,733.2188 L4720.2031,733.2188 L4720.2031,735.8906 L4725,735.8906 L4725,738.0469 L4720.2031,738.0469 L4720.2031,743.4531 L4717.7656,743.4531 L4717.7656,731.0625 L4725.4844,731.0625 L4725.4844,733.2188 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="147" x="4741.75" y="741.6074">urt_srtusefulnessfunc_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4613" x2="4985" y1="753.4531" y2="753.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4613" x2="4985" y1="761.4531" y2="761.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="362" x="4618" y="775.6636">urt_srtusefulnessfunc_t (dt : urt_delay_t, params : void*) : float</text><!--MD5=[9ff46073dd541e50679ef35e851c67d6]
14
class urt_nrtsubscriber_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="154.4375" id="urt_nrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="821" x="1254.5" y="409.4531"/><ellipse cx="1601.25" cy="425.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1600.7344,426.0156 Q1598.875,425.3125 1598.2188,424.5469 Q1597.5781,423.7656 1597.5781,422.4531 Q1597.5781,420.7656 1598.6563,419.7969 Q1599.7344,418.8281 1601.6094,418.8281 Q1602.4688,418.8281 1603.3125,419.0313 Q1604.1719,419.2188 1605.0156,419.6094 L1605.0156,422 Q1604.2344,421.4375 1603.4063,421.1563 Q1602.5938,420.8594 1601.7969,420.8594 Q1600.9219,420.8594 1600.4375,421.2188 Q1599.9688,421.5781 1599.9688,422.2344 Q1599.9688,422.75 1600.3125,423.0938 Q1600.6563,423.4219 1601.75,423.8281 L1602.8125,424.2344 Q1604.2969,424.7813 1605,425.6875 Q1605.7188,426.5938 1605.7188,427.9688 Q1605.7188,429.8438 1604.6094,430.7656 Q1603.5,431.6875 1601.25,431.6875 Q1600.3281,431.6875 1599.4063,431.4688 Q1598.4844,431.25 1597.625,430.8281 L1597.625,428.2969 Q1598.5938,428.9844 1599.5156,429.3281 Q1600.4375,429.6719 1601.3281,429.6719 Q1602.2344,429.6719 1602.7344,429.2656 Q1603.2344,428.8438 1603.2344,428.1094 Q1603.2344,427.5469 1602.8906,427.1406 Q1602.5625,426.7188 1601.9375,426.4688 L1600.7344,426.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="119" x="1621.75" y="429.6074">urt_nrtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1255.5" x2="2074.5" y1="441.4531" y2="441.4531"/><ellipse cx="1265.5" cy="469.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="1274.5" y="472.4683">minLatency : urt_delay_t</text><ellipse cx="1265.5" cy="482.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="1274.5" y="485.2729">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1255.5" x2="1556.5" y1="455.8555" y2="455.8555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="1556.5" y="459.1636">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1773.5" x2="2074.5" y1="455.8555" y2="455.8555"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="1255.5" x2="2074.5" y1="491.8672" y2="491.8672"/><ellipse cx="1265.5" cy="502.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="392" x="1274.5" y="506.0776">urtNrtSubscriberInit (subscriber : urt_nrtsubscriber_t*) : urt_status_t</text><ellipse cx="1265.5" cy="515.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="1274.5" y="518.8823">urtNrtSubscriberSubscribe (subscriber : urt_nrtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*) : urt_status_t</text><ellipse cx="1265.5" cy="528.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="1274.5" y="531.687">urtNrtSubscriberFetchNextMessage (subscriber : urt_nrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="1265.5" cy="541.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="1274.5" y="544.4917">urtNrtSubscriberFetchLatestMessage (subscriber : urt_nrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="1265.5" cy="554.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="1274.5" y="557.2964">urtNrtSubscriberUnsubscribe (subscriber : urt_nrtsubscriber_t*) : urt_status_t</text><!--MD5=[5c7929572d87ccc448d875bea5da0fb1]
15
class urt_srtsubscriber_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="192.8516" id="urt_srtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="1084" x="4257" y="389.9531"/><ellipse cx="4735.75" cy="405.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4735.2344,406.5156 Q4733.375,405.8125 4732.7188,405.0469 Q4732.0781,404.2656 4732.0781,402.9531 Q4732.0781,401.2656 4733.1563,400.2969 Q4734.2344,399.3281 4736.1094,399.3281 Q4736.9688,399.3281 4737.8125,399.5313 Q4738.6719,399.7188 4739.5156,400.1094 L4739.5156,402.5 Q4738.7344,401.9375 4737.9063,401.6563 Q4737.0938,401.3594 4736.2969,401.3594 Q4735.4219,401.3594 4734.9375,401.7188 Q4734.4688,402.0781 4734.4688,402.7344 Q4734.4688,403.25 4734.8125,403.5938 Q4735.1563,403.9219 4736.25,404.3281 L4737.3125,404.7344 Q4738.7969,405.2813 4739.5,406.1875 Q4740.2188,407.0938 4740.2188,408.4688 Q4740.2188,410.3438 4739.1094,411.2656 Q4738,412.1875 4735.75,412.1875 Q4734.8281,412.1875 4733.9063,411.9688 Q4732.9844,411.75 4732.125,411.3281 L4732.125,408.7969 Q4733.0938,409.4844 4734.0156,409.8281 Q4734.9375,410.1719 4735.8281,410.1719 Q4736.7344,410.1719 4737.2344,409.7656 Q4737.7344,409.3438 4737.7344,408.6094 Q4737.7344,408.0469 4737.3906,407.6406 Q4737.0625,407.2188 4736.4375,406.9688 L4735.2344,406.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="118" x="4756.25" y="410.1074">urt_srtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4258" x2="5340" y1="421.9531" y2="421.9531"/><ellipse cx="4268" cy="432.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="4277" y="436.1636">usefulnesscb : urt_srtusefulnessfunc_t*</text><ellipse cx="4268" cy="445.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="4277" y="448.9683">cbparams : void*</text><ellipse cx="4268" cy="475.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="4277" y="478.5776">minLatency : urt_delay_t</text><ellipse cx="4268" cy="488.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="4277" y="491.3823">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4258" x2="4690.5" y1="461.9648" y2="461.9648"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="217" x="4690.5" y="465.2729">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="4907.5" x2="5340" y1="461.9648" y2="461.9648"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4258" x2="5340" y1="497.9766" y2="497.9766"/><ellipse cx="4268" cy="508.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="392" x="4277" y="512.187">urtSrtSubscriberInit (subscriber : urt_srtsubscriber_t*) : urt_status_t</text><ellipse cx="4268" cy="521.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="4277" y="524.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="4268" cy="534.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="4277" y="537.7964">urtSrtSubscriberFetchNextMessage (subscriber : urt_srtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="4268" cy="547.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="4277" y="550.6011">urtSrtSubscriberFetchLatestMessage (subscriber : urt_srtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="4268" cy="560.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="4277" y="563.4058">urtSrtSubscriberCalculateUsefulness (subscriber : urt_srtsubscriber_t*, latency : urt_delay_t) : float</text><ellipse cx="4268" cy="573" 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="4277" y="576.2104">urtSrtSubscriberUnsubscribe (subscriber : urt_srtsubscriber_t*) : urt_status_t</text><!--MD5=[17838fb05fe219fd399839979ec8a4a4]
16
class urt_frtsubscriber_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="226.4609" id="urt_frtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="974" x="3248" y="373.4531"/><ellipse cx="3673.25" cy="389.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3672.7344,390.0156 Q3670.875,389.3125 3670.2188,388.5469 Q3669.5781,387.7656 3669.5781,386.4531 Q3669.5781,384.7656 3670.6563,383.7969 Q3671.7344,382.8281 3673.6094,382.8281 Q3674.4688,382.8281 3675.3125,383.0313 Q3676.1719,383.2188 3677.0156,383.6094 L3677.0156,386 Q3676.2344,385.4375 3675.4063,385.1563 Q3674.5938,384.8594 3673.7969,384.8594 Q3672.9219,384.8594 3672.4375,385.2188 Q3671.9688,385.5781 3671.9688,386.2344 Q3671.9688,386.75 3672.3125,387.0938 Q3672.6563,387.4219 3673.75,387.8281 L3674.8125,388.2344 Q3676.2969,388.7813 3677,389.6875 Q3677.7188,390.5938 3677.7188,391.9688 Q3677.7188,393.8438 3676.6094,394.7656 Q3675.5,395.6875 3673.25,395.6875 Q3672.3281,395.6875 3671.4063,395.4688 Q3670.4844,395.25 3669.625,394.8281 L3669.625,392.2969 Q3670.5938,392.9844 3671.5156,393.3281 Q3672.4375,393.6719 3673.3281,393.6719 Q3674.2344,393.6719 3674.7344,393.2656 Q3675.2344,392.8438 3675.2344,392.1094 Q3675.2344,391.5469 3674.8906,391.1406 Q3674.5625,390.7188 3673.9375,390.4688 L3672.7344,390.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="115" x="3693.75" y="393.6074">urt_frtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3249" x2="4221" y1="405.4531" y2="405.4531"/><ellipse cx="3259" cy="433.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="3268" y="436.4683">deadlineOffset : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3249" x2="3589.5" y1="419.8555" y2="419.8555"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="291" x="3589.5" y="423.1636">URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3880.5" x2="4221" y1="419.8555" y2="419.8555"/><ellipse cx="3259" cy="462.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="3268" y="466.0776">maxJitter : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3249" x2="3599.5" y1="449.4648" y2="449.4648"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="271" x="3599.5" y="452.7729">URT_CFG_PUBSUB_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3870.5" x2="4221" y1="449.4648" y2="449.4648"/><ellipse cx="3259" cy="492.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="3268" y="495.687">minLatency : urt_delay_t</text><ellipse cx="3259" cy="505.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="3268" y="508.4917">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="3249" x2="3481" y1="479.0742" y2="479.0742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="508" x="3481" y="482.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="3989" x2="4221" y1="479.0742" y2="479.0742"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="3249" x2="4221" y1="515.0859" y2="515.0859"/><ellipse cx="3259" cy="526.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="387" x="3268" y="529.2964">urtFrtSubscriberInit (subscriber : urt_frtsubscriber_t*) : urt_status_t</text><ellipse cx="3259" cy="538.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="3268" y="542.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="3259" cy="551.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="3268" y="554.9058">urtFrtSubscriberFetchNextMessage (subscriber : urt_frtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="3259" cy="564.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="3268" y="567.7104">urtFrtSubscriberFetchLatestMessage (subscriber : urt_frtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="3259" cy="577.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="3268" y="580.5151">urtFrtSubscriberCalculateValidity (subscriber : urt_frtsubscriber_t*, latency : urt_delay_t) : bool</text><ellipse cx="3259" cy="590.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="3268" y="593.3198">urtFrtSubscriberUnsubscribe (subscriber : urt_frtsubscriber_t*) : urt_status_t</text><!--MD5=[104dc879e5721421b987fcc467bc3a1d]
17
class urt_hrtsubscriber_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="268.875" id="urt_hrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.5;" width="1084" x="2111" y="351.9531"/><ellipse cx="2589.25" cy="367.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2588.7344,368.5156 Q2586.875,367.8125 2586.2188,367.0469 Q2585.5781,366.2656 2585.5781,364.9531 Q2585.5781,363.2656 2586.6563,362.2969 Q2587.7344,361.3281 2589.6094,361.3281 Q2590.4688,361.3281 2591.3125,361.5313 Q2592.1719,361.7188 2593.0156,362.1094 L2593.0156,364.5 Q2592.2344,363.9375 2591.4063,363.6563 Q2590.5938,363.3594 2589.7969,363.3594 Q2588.9219,363.3594 2588.4375,363.7188 Q2587.9688,364.0781 2587.9688,364.7344 Q2587.9688,365.25 2588.3125,365.5938 Q2588.6563,365.9219 2589.75,366.3281 L2590.8125,366.7344 Q2592.2969,367.2813 2593,368.1875 Q2593.7188,369.0938 2593.7188,370.4688 Q2593.7188,372.3438 2592.6094,373.2656 Q2591.5,374.1875 2589.25,374.1875 Q2588.3281,374.1875 2587.4063,373.9688 Q2586.4844,373.75 2585.625,373.3281 L2585.625,370.7969 Q2586.5938,371.4844 2587.5156,371.8281 Q2588.4375,372.1719 2589.3281,372.1719 Q2590.2344,372.1719 2590.7344,371.7656 Q2591.2344,371.3438 2591.2344,370.6094 Q2591.2344,370.0469 2590.8906,369.6406 Q2590.5625,369.2188 2589.9375,368.9688 L2588.7344,368.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="119" x="2609.75" y="372.1074">urt_hrtsubscriber_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2112" x2="3194" y1="383.9531" y2="383.9531"/><ellipse cx="2122" cy="394.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="2131" y="398.1636">next : urt_hrtsubscriber_t*</text><ellipse cx="2122" cy="424.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="2131" y="427.7729">deadlineOffset : urt_delay_t</text><ellipse cx="2122" cy="437.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="2131" y="440.5776">qosDeadlineTimer : urt_osTimer_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2112" x2="2507.5" y1="411.1602" y2="411.1602"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="291" x="2507.5" y="414.4683">URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2798.5" x2="3194" y1="411.1602" y2="411.1602"/><ellipse cx="2122" cy="466.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="2131" y="470.187">maxJitter : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2112" x2="2517.5" y1="453.5742" y2="453.5742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="271" x="2517.5" y="456.8823">URT_CFG_PUBSUB_QOS_JITTERCHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2788.5" x2="3194" y1="453.5742" y2="453.5742"/><ellipse cx="2122" cy="496.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="2131" y="499.7964">minLatency : urt_delay_t</text><ellipse cx="2122" cy="509.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="2131" y="512.6011">maxLatency : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2112" x2="2401" y1="483.1836" y2="483.1836"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="504" x="2401" y="486.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="2905" x2="3194" y1="483.1836" y2="483.1836"/><ellipse cx="2122" cy="539" 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="2131" y="542.2104">expectedRate : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2112" x2="2520.5" y1="525.5977" y2="525.5977"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="265" x="2520.5" y="528.9058">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="2785.5" x2="3194" y1="525.5977" y2="525.5977"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="2112" x2="3194" y1="548.8047" y2="548.8047"/><ellipse cx="2122" cy="559.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="392" x="2131" y="563.0151">urtHrtSubscriberInit (subscriber : urt_hrtsubscriber_t*) : urt_status_t</text><ellipse cx="2122" cy="572.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="2131" y="575.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="2122" cy="585.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="2131" y="588.6245">urtHrtSubscriberFetchNextMessage (subscriber : urt_hrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="2122" cy="598.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="2131" y="601.4292">urtHrtSubscriberFetchLatestMessage (subscriber : urt_hrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t</text><ellipse cx="2122" cy="611.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="2131" y="614.2339">urtHrtSubscriberUnsubscribe (subscriber : urt_hrtsubscriber_t*) : urt_status_t</text><!--MD5=[3226071078d8aeaa18fbafa5359ddee6]
18
class urt_servicefunc_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="60.8047" id="urt_servicefunc_t" style="stroke: #A80036; stroke-width: 1.5;" width="451" x="6654.5" y="721.4531"/><ellipse cx="6822.75" cy="737.4531" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6826.9844,733.2188 L6821.7031,733.2188 L6821.7031,735.8906 L6826.5,735.8906 L6826.5,738.0469 L6821.7031,738.0469 L6821.7031,743.4531 L6819.2656,743.4531 L6819.2656,731.0625 L6826.9844,731.0625 L6826.9844,733.2188 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="106" x="6843.25" y="741.6074">urt_servicefunc_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="6655.5" x2="7104.5" y1="753.4531" y2="753.4531"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="6655.5" x2="7104.5" y1="761.4531" y2="761.4531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="439" x="6660.5" y="775.6636">urt_servicefunc_t (arg : void*, ret : void*, timeout : urt_delay_t) : urt_status_t</text><!--MD5=[e60e0f8379a14e7a4a292c65add9d735]
19
class urt_service_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="222.4609" id="urt_service_t" style="stroke: #A80036; stroke-width: 1.5;" width="602" x="6579" y="375.4531"/><ellipse cx="6836.25" cy="391.4531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M6835.7344,392.0156 Q6833.875,391.3125 6833.2188,390.5469 Q6832.5781,389.7656 6832.5781,388.4531 Q6832.5781,386.7656 6833.6563,385.7969 Q6834.7344,384.8281 6836.6094,384.8281 Q6837.4688,384.8281 6838.3125,385.0313 Q6839.1719,385.2188 6840.0156,385.6094 L6840.0156,388 Q6839.2344,387.4375 6838.4063,387.1563 Q6837.5938,386.8594 6836.7969,386.8594 Q6835.9219,386.8594 6835.4375,387.2188 Q6834.9688,387.5781 6834.9688,388.2344 Q6834.9688,388.75 6835.3125,389.0938 Q6835.6563,389.4219 6836.75,389.8281 L6837.8125,390.2344 Q6839.2969,390.7813 6840,391.6875 Q6840.7188,392.5938 6840.7188,393.9688 Q6840.7188,395.8438 6839.6094,396.7656 Q6838.5,397.6875 6836.25,397.6875 Q6835.3281,397.6875 6834.4063,397.4688 Q6833.4844,397.25 6832.625,396.8281 L6832.625,394.2969 Q6833.5938,394.9844 6834.5156,395.3281 Q6835.4375,395.6719 6836.3281,395.6719 Q6837.2344,395.6719 6837.7344,395.2656 Q6838.2344,394.8438 6838.2344,394.1094 Q6838.2344,393.5469 6837.8906,393.1406 Q6837.5625,392.7188 6836.9375,392.4688 L6835.7344,392.0156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="79" x="6856.75" y="395.6074">urt_service_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="6580" x2="7180" y1="407.4531" y2="407.4531"/><ellipse cx="6590" cy="418.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="6599" y="421.6636">next : urt_service_t*</text><ellipse cx="6590" cy="431.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="6599" y="434.4683">id : urt_serviceid_t</text><ellipse cx="6590" cy="444.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="6599" y="447.2729">lock : urt_osMutex_t</text><ellipse cx="6590" cy="456.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="6599" y="460.0776">callback : urt_servicefunc_t*</text><ellipse cx="6590" cy="486.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="6599" y="489.687">sumDurations : uint64_t</text><ellipse cx="6590" cy="499.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="6599" y="502.4917">numCalls : uint64_t</text><ellipse cx="6590" cy="512.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="6599" y="515.2964">numTimeouts : uint64_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6580" x2="6784" y1="473.0742" y2="473.0742"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="192" x="6784" y="476.3823">URT_CFG_RPC_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6976" x2="7180" y1="473.0742" y2="473.0742"/><ellipse cx="6590" cy="541.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="143" x="6599" y="544.9058">minDuration : urt_delay_t</text><ellipse cx="6590" cy="554.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="146" x="6599" y="557.7104">maxDuration : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6580" x2="6653" y1="528.293" y2="528.293"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="454" x="6653" y="531.6011">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="7107" x2="7180" y1="528.293" y2="528.293"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="6580" x2="7180" y1="564.3047" y2="564.3047"/><ellipse cx="6590" cy="575.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="576" x="6599" y="578.5151">urtServiceInit(service : urt_service_t*, id : urt_serviceid_t, callback : urt_servicefunc_t*) : urt_status_t</text><ellipse cx="6590" cy="588.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="557" x="6599" y="591.3198">urtServiceCall(service : urt_service_t*, arg : void*, ret : void*, timeout : urt_delay_t) : urt_status_t</text><!--MD5=[89d25e87afdd75480e1ec2bd05524873]
20
class urt_core_t--><rect fill="#FEFECE" filter="url(#f6i8e5hg9h7lm)" height="256.0703" id="urt_core_t" style="stroke: #A80036; stroke-width: 1.5;" width="515" x="5693.5" y="28.9531"/><ellipse cx="5915.25" cy="44.9531" fill="#BFAFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M5914.7344,45.5156 Q5912.875,44.8125 5912.2188,44.0469 Q5911.5781,43.2656 5911.5781,41.9531 Q5911.5781,40.2656 5912.6563,39.2969 Q5913.7344,38.3281 5915.6094,38.3281 Q5916.4688,38.3281 5917.3125,38.5313 Q5918.1719,38.7188 5919.0156,39.1094 L5919.0156,41.5 Q5918.2344,40.9375 5917.4063,40.6563 Q5916.5938,40.3594 5915.7969,40.3594 Q5914.9219,40.3594 5914.4375,40.7188 Q5913.9688,41.0781 5913.9688,41.7344 Q5913.9688,42.25 5914.3125,42.5938 Q5914.6563,42.9219 5915.75,43.3281 L5916.8125,43.7344 Q5918.2969,44.2813 5919,45.1875 Q5919.7188,46.0938 5919.7188,47.4688 Q5919.7188,49.3438 5918.6094,50.2656 Q5917.5,51.1875 5915.25,51.1875 Q5914.3281,51.1875 5913.4063,50.9688 Q5912.4844,50.75 5911.625,50.3281 L5911.625,47.7969 Q5912.5938,48.4844 5913.5156,48.8281 Q5914.4375,49.1719 5915.3281,49.1719 Q5916.2344,49.1719 5916.7344,48.7656 Q5917.2344,48.3438 5917.2344,47.6094 Q5917.2344,47.0469 5916.8906,46.6406 Q5916.5625,46.2188 5915.9375,45.9688 L5914.7344,45.5156 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="63" x="5935.75" y="49.1074">urt_core_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5694.5" x2="6207.5" y1="60.9531" y2="60.9531"/><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5701.5" y="68.9531"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="119" x="5713.5" y="75.1636">_nodes : urt_node_t*</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5701.5" y="81.7578"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="192" x="5713.5" y="87.9683">_evtSource : urt_osEventSource_t</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5701.5" y="94.5625"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="119" x="5713.5" y="100.7729">_lock : urt_osMutex_t</text><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5701.5" y="124.1719"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="117" x="5713.5" y="130.3823">_topics : urt_topic_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5694.5" x2="5846" y1="113.7695" y2="113.7695"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="210" x="5846" y="117.0776">URT_CFG_PUBSUB_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6056" x2="6207.5" y1="113.7695" y2="113.7695"/><rect fill="none" height="6" style="stroke: #C82930; stroke-width: 1.0;" width="6" x="5701.5" y="153.7813"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="145" x="5713.5" y="159.9917">_services : urt_service_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5694.5" x2="5858.5" y1="143.3789" y2="143.3789"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="185" x="5858.5" y="146.687">URT_CFG_RPC_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6043.5" x2="6207.5" y1="143.3789" y2="143.3789"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5694.5" x2="6207.5" y1="166.5859" y2="166.5859"/><ellipse cx="5704.5" cy="177.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="175" x="5713.5" y="180.7964">urtCoreInit (void) : urt_status_t</text><ellipse cx="5704.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="222" x="5713.5" y="193.6011">urtCoreStartNodes (void) : urt_status_t</text><ellipse cx="5704.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="489" x="5713.5" y="206.4058">urtCoreSynchronizeNodes (node : urt_node_t*, stage : urt_nodestage_t) : urt_status_t</text><ellipse cx="5704.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="220" x="5713.5" y="219.2104">urtCoreStopNodes (void) : urt_status_t</text><ellipse cx="5704.5" cy="245.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="273" x="5713.5" y="248.8198">urtCoreGetTopic (id : urt_topicid_t) : urt_topic_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5694.5" x2="5846" y1="232.207" y2="232.207"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="210" x="5846" y="235.5151">URT_CFG_PUBSUB_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6056" x2="6207.5" y1="232.207" y2="232.207"/><ellipse cx="5704.5" cy="275.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="313" x="5713.5" y="278.4292">urtCoreGetService (id : urt_serviceid_t) : urt_service_t*</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="5694.5" x2="5858.5" y1="261.8164" y2="261.8164"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="185" x="5858.5" y="265.1245">URT_CFG_RPC_ENABLED == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="6043.5" x2="6207.5" y1="261.8164" y2="261.8164"/><!--MD5=[182342162f0b9b45ddce11acc6582c59]
21
reverse link urt_node_t to urt_node_t--><path d="M6538.0185,462.4923 C6552.4384,469.1698 6560.5,477.1567 6560.5,486.4531 C6560.5,498.1191 6547.8048,507.7231 6525.7804,515.265 " fill="none" id="urt_node_t&lt;-urt_node_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6525.7804,457.6412,6529.8842,463.5707,6536.936,462.0631,6532.8322,456.1337,6525.7804,457.6412" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6533.9195" y="454.2008">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="6534.032" y="512.635">0..1</text><!--MD5=[55d7f7c946c3356baf68288566af1bf6]
22
reverse link urt_node_t to urt_nodeSetupCallback_t--><path d="M5805.8325,597.8333 C5751.6925,642.7938 5695.5513,691.113 5662.8371,721.426 " fill="none" id="urt_node_t&lt;-urt_nodeSetupCallback_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="5815.9122,589.4823,5808.74,590.23,5806.6715,597.1381,5813.8438,596.3904,5815.9122,589.4823" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="5798.1326" y="609.3376">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="5660.0515" y="710.2104">1</text><!--MD5=[55d7f7c946c3356baf68288566af1bf6]
23
reverse link urt_node_t to urt_nodeSetupCallback_t--><path d="M5837.6716,592.8114 C5783.3605,639.1598 5721.4515,689.981 5680.3298,721.426 " 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="5841.5685,589.4823,5832.1274,592.287,5837.7669,592.7301,5837.3238,598.3695,5841.5685,589.4823" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[b913f036db99e36b937989146817bd94]
24
reverse link urt_node_t to urt_nodeLoopCallback_t--><path d="M6046.0101,598.9533 C6088.1282,643.5946 6135.2027,691.3646 6167.2987,721.426 " fill="none" id="urt_node_t&lt;-urt_nodeLoopCallback_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6037.1049,589.4823,6038.3009,596.5936,6045.3251,598.2247,6044.1291,591.1135,6037.1049,589.4823" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6034.8779" y="609.3376">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6150.1765" y="710.2104">1</text><!--MD5=[b913f036db99e36b937989146817bd94]
25
reverse link urt_node_t to urt_nodeLoopCallback_t--><path d="M6066.2826,593.0895 C6111.3941,639.363 6158.4568,690.0439 6184.7915,721.426 " 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="6062.7612,589.4823,6066.186,598.7165,6066.254,593.0601,6071.9104,593.1281,6062.7612,589.4823" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[536025241394544a90bc53fb552f3a08]
26
reverse link urt_message_t to urt_message_t--><path d="M1233.5642,717.6932 C1247.8974,725.8439 1256.5,737.2638 1256.5,751.9531 C1256.5,770.3867 1242.9528,783.6718 1221.534,791.8085 " fill="none" id="urt_message_t&lt;-urt_message_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1221.534,712.0977,1225.2873,718.2551,1232.4146,717.1587,1228.6613,711.0014,1221.534,712.0977" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1229.7829" y="707.4718">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1229.3281" y="789.9453">0..1</text><!--MD5=[0585cd4928de92ce6927d9c389eadd29]
27
link urt_nrtsubscriber_t to urt_basesubscriber_t--><path d="M1875.1787,563.5304 C1944.02,585.7483 2021.4622,607.5767 2094,620.9531 C2518.3586,699.2072 2655.925,553.8706 3069.8574,678.9137 " fill="none" id="urt_nrtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="3072.0992,672.2797,3089.1409,684.8726,3067.9658,685.6557,3072.0992,672.2797" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[37a8b7f2877a6b7bb4e9d0352ce3d221]
28
link urt_nrtsubscriber_t to urt_message_t--><path d="M1470.5988,563.6033 C1378.9737,599.9658 1270.2314,643.1214 1179.9674,678.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="1175.1402,680.8594,1184.981,681.2574,1179.7876,679.015,1182.03,673.8216,1175.1402,680.8594" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[6d81edfa5aa102b898ad487ae19b49f9]
29
link urt_srtsubscriber_t to urt_basesubscriber_t--><path d="M4422.8492,583.0151 C4361.961,596.8959 4299.4105,610.1204 4240,620.9531 C3914.22,680.3547 3526.4148,721.2295 3327.013,740.0919 " fill="none" id="urt_srtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="3327.4203,747.0843,3306.8536,741.9844,3326.1117,733.1456,3327.4203,747.0843" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[47304731969ac4130b45cc7169c5cada]
30
reverse link urt_srtsubscriber_t to urt_srtusefulnessfunc_t--><path d="M4799,596.0612 C4799,641.4783 4799,690.6246 4799,721.342 " fill="none" id="urt_srtsubscriber_t&lt;-urt_srtusefulnessfunc_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="4799,583.0557,4795,589.0557,4799,595.0557,4803,589.0557,4799,583.0557" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="4790.7063" y="602.778">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="4772.525" y="710.5823">0..1</text><!--MD5=[dffdac3aea8c81c86dd1d0b8122fcada]
31
link urt_srtsubscriber_t to urt_message_t--><path d="M4448.5378,582.9959 C4379.885,598.4322 4308.0632,612.1893 4240,620.9531 C3578.4393,706.1356 1898.3185,579.8704 1239,680.9531 C1234.8627,681.5874 1230.6969,682.2728 1226.5104,683.0046 " 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="1221.5869,683.8846,1231.1503,686.2385,1226.5089,683.0048,1229.7426,678.3633,1221.5869,683.8846" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[f626d284cba98e1d5d5fe914b1fa4188]
32
link urt_frtsubscriber_t to urt_basesubscriber_t--><path d="M3504.3905,599.6265 C3443.0717,629.7192 3378.9567,661.1842 3325.0246,687.6518 " fill="none" id="urt_frtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="3327.8079,694.0833,3306.7695,696.6106,3321.64,681.5152,3327.8079,694.0833" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[cfcdebdb88febc368723fd91f781523c]
33
link urt_frtsubscriber_t to urt_message_t--><path d="M3347.1778,599.4981 C3308.1799,607.9851 3268.9705,615.391 3231,620.9531 C2354.6178,749.329 2113.8147,542.2973 1239,680.9531 C1234.8659,681.6083 1230.7031,682.3131 1226.5195,683.0628 " 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="1221.5992,683.9631,1231.1722,686.2778,1226.5175,683.0631,1229.7322,678.4085,1221.5992,683.9631" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[1ea71f2b33e56ab0ac5545988c1af396]
34
link urt_hrtsubscriber_t to urt_basesubscriber_t--><path d="M2958.7123,620.9972 C2993.82,637.8002 3029.0613,655.278 3067.3977,675.4154 " fill="none" id="urt_hrtsubscriber_t-&gt;urt_basesubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="3070.8401,669.3173,3085.2402,684.862,3064.2893,681.6902,3070.8401,669.3173" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[ea2ec5c5272e65289dabade75a749f58]
35
reverse link urt_hrtsubscriber_t to urt_hrtsubscriber_t--><path d="M3207.3399,461.8326 C3221.8539,468.6417 3230,476.8486 3230,486.4531 C3230,498.5058 3217.1717,508.3575 3195.0292,516.0082 " fill="none" id="urt_hrtsubscriber_t&lt;-urt_hrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="3195.0292,456.898,3199.1102,462.8432,3206.1677,461.3628,3202.0867,455.4176,3195.0292,456.898" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="3202.7077" y="453.4456">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="3202.8202" y="513.3871">0..1</text><!--MD5=[a8adaa0500715125c1ab51b9b0fda3ce]
36
link urt_hrtsubscriber_t to urt_message_t--><path d="M2110.872,618.1203 C2104.8881,619.0943 2098.9292,620.0392 2093,620.9531 C1716.9494,678.9143 1613.5328,613.8804 1239,680.9531 C1234.8799,681.6909 1230.73,682.4722 1226.5583,683.2925 " 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="1221.6515,684.2732,1231.2609,686.4316,1226.5545,683.2932,1229.6929,678.5868,1221.6515,684.2732" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[54fcf25ad8c5f1d36e678e42d5bfd4cc]
37
reverse link urt_publisher_t to urt_topic_t--><path d="M794.8249,486.4531 C802.1324,486.4531 809.44,486.4531 816.7475,486.4531 " fill="none" id="urt_publisher_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="781.6714,486.4531,787.6714,490.4531,793.6714,486.4531,787.6714,482.4531,781.6714,486.4531" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="789.4647" y="483.3708">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="801.0814" y="483.2283">1</text><!--MD5=[5025b4c4053b8e7c7ca8a657f09f21c0]
38
link urt_publisher_t to urt_message_t--><path d="M546.5492,551.0622 C632.8323,589.6281 742.6672,638.721 832.1603,678.7217 " 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="836.9443,680.86,830.3602,673.5355,832.3796,678.8196,827.0955,680.839,836.9443,680.86" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[6b2afc1defaa6ed5a86f99c07f8466dd]
39
reverse link urt_topic_t to urt_topic_t--><path d="M1213.0439,450.3703 C1227.3061,458.6063 1236,470.6339 1236,486.4531 C1236,506.3047 1222.309,520.1852 1201.1039,528.0949 " fill="none" id="urt_topic_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1201.1039,444.8113,1204.855,450.97,1211.9826,449.8762,1208.2316,443.7175,1201.1039,444.8113" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1208.7642" y="439.9598">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1209.0767" y="526.4967">0..1</text><!--MD5=[ed3fb6de0913094c41bd74c175d366df]
40
reverse link urt_topic_t to urt_hrtsubscriber_t--><path d="M1145.317,354.0079 C1174.4977,330.942 1206.4088,309.1844 1239,292.9531 C1246.1417,289.3963 1248.5719,289.8476 1256.5,288.9531 C1301.7131,283.8517 2030.2869,283.8517 2075.5,288.9531 C2163.5516,298.888 2255.7005,323.4069 2339.8741,351.9215 " fill="none" id="urt_topic_t&lt;-urt_hrtsubscriber_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="1135.1127,362.2142,1142.2951,361.5712,1144.4639,354.694,1137.2816,355.337,1135.1127,362.2142" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="1134.5539" y="351.2552">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="2297.0778" y="340.7847">0..1</text><!--MD5=[0b5167e958c0ed93ffc0c98ce399b54d]
41
reverse link urt_topic_t to urt_message_t--><path d="M1002.2699,623.9018 C1001.3084,643.5395 1000.3536,663.0399 999.4898,680.6812 " fill="none" id="urt_topic_t&lt;-urt_message_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1002.9187,610.6522,998.63,616.4494,1002.3318,622.6379,1006.6204,616.8407,1002.9187,610.6522" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="994.3044" y="630.7464">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="991.4372" y="669.6505">1</text><!--MD5=[05f2c35569573d3273c65d3342945557]
42
reverse link urt_service_t to urt_service_t--><path d="M7193.2128,455.5207 C7207.5894,463.3534 7216,473.6642 7216,486.4531 C7216,502.5019 7202.7552,514.6483 7181.0965,522.8921 " fill="none" id="urt_service_t&lt;-urt_service_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="7181.0965,450.0141,7184.9038,456.1382,7192.0211,454.9792,7188.2139,448.8551,7181.0965,450.0141" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="7189.2006" y="445.9095">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="7189.4131" y="520.7234">0..1</text><!--MD5=[586e61fedafd54ae7ea71cebd9f9032a]
43
reverse link urt_service_t to urt_servicefunc_t--><path d="M6880,610.5187 C6880,651.6673 6880,693.9335 6880,721.4119 " fill="none" id="urt_service_t&lt;-urt_servicefunc_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="6880,597.5107,6876,603.5107,6880,609.5107,6884,603.5107,6880,597.5107" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6871.7188" y="617.9022">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="6853.375" y="710.1932">0..1</text><!--MD5=[694e7400eb99f74d44ea388aed89d199]
44
reverse link urt_core_t to urt_node_t--><path d="M5951,298.3422 C5951,326.9245 5951,356.4642 5951,383.4257 " fill="none" id="urt_core_t&lt;-urt_node_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#FFFFFF" points="5951,285.2899,5947,291.2899,5951,297.2899,5955,291.2899,5951,285.2899" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="5942.7688" y="305.2117">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="5926.1188" y="372.3933">0..1</text><!--MD5=[250695c91040478b50550bc37a8775c7]
45
reverse link urt_core_t to urt_topic_t--><path d="M5680.1235,159.8486 C4708.8115,170.8701 1447.1032,213.6375 1239,292.9531 C1198.2848,308.4711 1159.6607,334.4522 1126.0951,362.4198 " fill="none" id="urt_core_t&lt;-urt_topic_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="5693.2023,159.7005,5687.1574,155.7688,5681.2031,159.8365,5687.248,163.7682,5693.2023,159.7005" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="5677.4302" y="156.6273">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="1108.4993" y="351.4733">0..1</text><!--MD5=[8d0a227ec56585cdbc167f8316b34b64]
46
reverse link urt_core_t to urt_service_t--><path d="M6221.8221,197.9187 C6329.4468,219.1837 6452.8876,249.9491 6560,292.9531 C6614.2235,314.723 6669.8719,345.1018 6719.2415,375.3457 " fill="none" id="urt_core_t&lt;-urt_service_t" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="6208.7777,195.3723,6213.9002,200.4478,6220.5554,197.6715,6215.4329,192.596,6208.7777,195.3723" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="8" x="6216.5492" y="193.3581">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="24" x="6683.6343" y="364.4327">0..1</text><!--MD5=[3935ae215845a45a68762d1af2ae6721]
54 47
@startuml
55 48

  
56 49
title **µRtWare**
......
81 74
  + {method} urtCoreSynchronizeNodes (node : urt_node_t*, stage : urt_nodestage_t) : urt_status_t
82 75
  + {method} urtCoreStopNodes (void) : urt_status_t
83 76
  .. URT_CFG_PUBSUB_ENABLED == true ..
84
  + {method} urtCoreRetrieveTopic (id : urt_topicid_t) : urt_topic_t*
77
  + {method} urtCoreGetTopic (id : urt_topicid_t) : urt_topic_t*
85 78
  .. URT_CFG_RPC_ENABLED == true ..
86
  + {method} urtCoreRetrieveService (id : urt_serviceid_t) : urt_service_t*
79
  + {method} urtCoreGetService (id : urt_serviceid_t) : urt_service_t*
87 80
}
88 81

  
89 82
  package "node" <<Rectangle>> {
......
104 97
    + {field} loopparams : void*
105 98
    + {field} stage : urt_nodestage_t
106 99
    + {field} listener : urt_osEventListener_t
100
    .. URT_CFG_PUBSUB_PROFILING == true || URT_CFG_RPC_PROFILING = true ..
101
    + {field} loops : uint64_t
107 102
    __
108 103
    - {method} {static} _main : urt_osThreadFunction_t
109
    + {method} urtNodeInit (node : urt_node_t*, stacksize : size_t, setupcallback : urt_nodeSetupCallback_t*, setupparams : void*, loopcallback : urt_nodeLoopCallback_t*, loopparams : void*) : urt_status_t
104
    + {method} urtNodeInit (node : urt_node_t*, thread : urt_osThread_t*, setupcallback : urt_nodeSetupCallback_t*, setupparams : void*, loopcallback : urt_nodeLoopCallback_t*, loopparams : void*) : urt_status_t
110 105
  }
111 106
} 
112 107

  
......
124 119
}
125 120

  
126 121
  package "subscriber" <<Rectangle>> {
127
    package "real-time constraint data" <<Rectangle>> {
128
      class urt_rtdata_t <<S,BFAFFF>> {
129
      + {field} class : urt_rtconstraintclass_t
130
      + {field} params : urt_rtconstraintsparams_t
131
    }
132

  
133
      class urt_rtclass_t <<E,FF7F3F>> {
134
      URT_RTCLASS_HARD = 0
135
      URT_RTCLASS_FIRM = 1
136
      URT_RTCLASS_SOFT = 2
137
      URT_RTCLASS_NONE = 3
138
    }
139

  
140
      class urt_rtclassdata_t <<U,7FCF7F>> {
141
      + {field} hrt : urt_hrtparams_t
142
      + {field} frt : urt_frtparams_t
143
      + {field} srt : urt_srtparans_t
144
      + {field} nrt : urt_nrtparams_t
145
    }
146

  
147
      class urt_hrtdata_t <<S,BFAFFF>> {
148
      + {field} next : urt_subscriber_t*
149
      .. URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true ..
150
      + {field} qosDeadlineTimer : urt_osTimer_t
151
      + {field} deadlineOffset : urt_delay_t
152
      .. URT_CFG_PUBSUB_QOS_RATECHECKS == true ..
153
      + {field} expectedRate : urt_delay_t
154
      .. URT_CFG_PUBSUB_PROFILING == true || URT_CFG_PUBSUB_QOS_JITTERCHECKS == true ..
155
      + {field} maxJitter : urt_delay_t
156
      + {field} minLatency : urt_delay_t
157
      + {field} maxLatency : urt_delay_t
158
    }
159

  
160
      class urt_frtdata_t <<S,BFAFFF>> {
161
      .. URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true ..
162
      + {field} deadlineOffset : urt_delay_t
163
      .. URT_CFG_PUBSUB_QOS_RATECHECKS == true ..
164
      + {field} expectedRate : urt_delay_t
165
      .. URT_CFG_PUBSUB_PROFILING == true || URT_CFG_PUBSUB_QOS_JITTERCHECKS == true ..
166
      + {field} maxJitter : urt_delay_t
167
      + {field} minLatency : urt_delay_t
168
      + {field} maxLatency : urt_delay_t
169
    }
170

  
171
      package "SRT data" <<Rectangle>> {
172
        class urt_srtusefulnessfunc_t <<F,E0E0E0>> {
173
        urt_srtusefulnessfunc_t (dt : urt_delay_t, params : void*) : float
174
      }
175

  
176
        class urt_srtdata_t <<S,BFAFFF>> {
177
        + {field} usefullnesscb : urt_srtusefulnessfunc_t*
178
        + {field} cbparams : void*
179
      }
180
    } 
181

  
182
      class urt_nrtdata_t <<S,BFAFFF>> {
183
    }
184
  } 
185

  
186
    class urt_subscriber_t <<S,BFAFFF>> {
122
    class urt_basesubscriber_t <<S,BFAFFF>> {
187 123
    + {field} topic : urt_topic_t*
188 124
    + {field} evtListener : urt_osEventListener_t
189
    + {field} rtdata : urt_rtdata_t
190 125
    + {field} lastMessage : urt_message_t*
191 126
    + {field} lastMessageTime : urt_osTime_t
192 127
    .. URT_CFG_PUBSUB_PROFILING == true ..
193 128
    + {field} sumLatencies : uint64_t
194 129
    + {field} numMessagesReceived : uint64_t
130
  }
131

  
132
    class urt_srtusefulnessfunc_t <<F,E0E0E0>> {
133
    urt_srtusefulnessfunc_t (dt : urt_delay_t, params : void*) : float
134
  }
135

  
136
    class urt_nrtsubscriber_t <<S,BFAFFF>> {
137
    .. URT_CFG_PUBSUB_PROFILING == true ..
138
    + {field} minLatency : urt_delay_t
139
    + {field} maxLatency : urt_delay_t
140
    __
141
    + {method} urtNrtSubscriberInit (subscriber : urt_nrtsubscriber_t*) : urt_status_t
142
    + {method} urtNrtSubscriberSubscribe (subscriber : urt_nrtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*) : urt_status_t
143
    + {method} urtNrtSubscriberFetchNextMessage (subscriber : urt_nrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
144
    + {method} urtNrtSubscriberFetchLatestMessage (subscriber : urt_nrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
145
    + {method} urtNrtSubscriberUnsubscribe (subscriber : urt_nrtsubscriber_t*) : urt_status_t
146
  }
147

  
148
    class urt_srtsubscriber_t <<S,BFAFFF>> {
149
    + {field} usefulnesscb : urt_srtusefulnessfunc_t*
150
    + {field} cbparams : void*
195 151
    .. URT_CFG_PUBSUB_PROFILING == true ..
196 152
    + {field} minLatency : urt_delay_t
197 153
    + {field} maxLatency : urt_delay_t
198 154
    __
199
    + {method} urtSubscriberInit (subscriber : urt_subscriber_t*) : urt_status_t
200
    + {method} urtSubscriberSubscribeHrt (subscriber : urt_subscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, deadline : urt_delay_t, rate : urt_delay_t, jitter : urt_delay_t) : urt_status_t
201
    + {method} urtSubscriberSubscribeFrt (subscriber : urt_subscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, deadline : urt_delay_t, rate : urt_delay_t, jitter : urt_delay_t) : urt_status_t
202
    + {method} urtSubscriberSubscribeSrt (subscriber : urt_subscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, usefulnesscb : urt_srtusefulnessfunc_t*, cbparams : void*) : urt_status_t
203
    + {method} urtSubscriberSubscribeNrt (subscriber : urt_subscriber_t*, topic : urt_topic_t*, messages : urt_message_t*) : urt_status_t
204
    + {method} urtSubscriberUnsubscribe (subscriber : urt_subscriber_t*) : urt_status_t
205
    + {method} urtSubscriberFetchNextMessage (subscriber : urt_subscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
206
    + {method} urtSubscriberFetchLatestMessage (subscriber : urt_subscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
207
    + {method} urtSubscriberCalculateUsefulness (subscriber : urt_subscriber_t*, latency : urt_delay_t) : float
155
    + {method} urtSrtSubscriberInit (subscriber : urt_srtsubscriber_t*) : urt_status_t
156
    + {method} urtSrtSubscriberSubscribe (subscriber : urt_srtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, usefulnesscb : urt_srtusefulnessfunc_t*, cbparams : void*) : urt_status_t
157
    + {method} urtSrtSubscriberFetchNextMessage (subscriber : urt_srtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
158
    + {method} urtSrtSubscriberFetchLatestMessage (subscriber : urt_srtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
159
    + {method} urtSrtSubscriberCalculateUsefulness (subscriber : urt_srtsubscriber_t*, latency : urt_delay_t) : float
160
    + {method} urtSrtSubscriberUnsubscribe (subscriber : urt_srtsubscriber_t*) : urt_status_t
161
  }
162

  
163
    class urt_frtsubscriber_t <<S,BFAFFF>> {
164
    .. URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true ..
165
    + {field} deadlineOffset : urt_delay_t
166
    .. URT_CFG_PUBSUB_QOS_JITTERCHECKS == true ..
167
    + {field} maxJitter : urt_delay_t
168
    .. URT_CFG_PUBSUB_QOS_JITTERCHECKS == true ||  URT_CFG_PUBSUB_PROFILING == true ..
169
    + {field} minLatency : urt_delay_t
170
    + {field} maxLatency : urt_delay_t
171
    __
172
    + {method} urtFrtSubscriberInit (subscriber : urt_frtsubscriber_t*) : urt_status_t
173
    + {method} urtFrtSubscriberSubscribe (subscriber : urt_frtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, deadline : urt_delay_t, jitter : urt_delay_t) : urt_status_t
174
    + {method} urtFrtSubscriberFetchNextMessage (subscriber : urt_frtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
175
    + {method} urtFrtSubscriberFetchLatestMessage (subscriber : urt_frtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
176
    + {method} urtFrtSubscriberCalculateValidity (subscriber : urt_frtsubscriber_t*, latency : urt_delay_t) : bool
177
    + {method} urtFrtSubscriberUnsubscribe (subscriber : urt_frtsubscriber_t*) : urt_status_t
178
  }
179

  
180
    class urt_hrtsubscriber_t <<S,BFAFFF>> {
181
    + {field} next : urt_hrtsubscriber_t*
182
    .. URT_CFG_PUBSUB_QOS_DEADLINECHECKS == true ..
183
    + {field} deadlineOffset : urt_delay_t
184
    + {field} qosDeadlineTimer : urt_osTimer_t
185
    .. URT_CFG_PUBSUB_QOS_JITTERCHECKS == true ..
186
    + {field} maxJitter : urt_delay_t
187
    .. URT_CFG_PUBSUB_QOS_JITTERCHECKS == true || URT_CFG_PUBSUB_PROFILING == true..
188
    + {field} minLatency : urt_delay_t
189
    + {field} maxLatency : urt_delay_t
190
    .. URT_CFG_PUBSUB_QOS_RATECHECKS == true ..
191
    + {field} expectedRate : urt_delay_t
192
    __
193
    + {method} urtHrtSubscriberInit (subscriber : urt_hrtsubscriber_t*) : urt_status_t
194
    + {method} 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
195
    + {method} urtHrtSubscriberFetchNextMessage (subscriber : urt_hrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
196
    + {method} urtHrtSubscriberFetchLatestMessage (subscriber : urt_hrtsubscriber_t*, payload : void*, bytes : size_t, latency : urt_delay_t*) : urt_status_t
197
    + {method} urtHrtSubscriberUnsubscribe (subscriber : urt_hrtsubscriber_t*) : urt_status_t
208 198
  }
209 199
} 
210 200

  
211 201
  class urt_publisher_t <<S,BFAFFF>> {
212 202
  + {field} topic : urt_topic_t*
213
  .. URT_CFG_PROFILING == true ..
203
  .. URT_CFG_PUBSUB_PROFILING == true ..
214 204
  + {field} publishAttempts : uint64_t
215 205
  + {field} publishFails : uint64_t
216 206
  __
......
224 214
  + {field} lock : urt_osMutex_t
225 215
  + {field} evtSource : urt_osEventSource_t
226 216
  + {field} numHrtSubscribers : unsigned int
227
  + {field} hrtSubscribers : urt_subscriber_t*
217
  + {field} hrtSubscribers : urt_hrtsubscriber_t*
228 218
  + {field} hrtReleased : urt_osCondvar_t
229 219
  + {field} mandatoryMessage : urt_message_t
230 220
  + {field} latestMessage : urt_message_t*
......
250 240
  + {field} id : urt_serviceid_t
251 241
  + {field} lock : urt_osMutex_t
252 242
  + {field} callback : urt_servicefunc_t*
253
  .. URT_CFG_RPC_PROFLING == true ..
243
  .. URT_CFG_RPC_PROFILING == true ..
254 244
  + {field} sumDurations : uint64_t
255 245
  + {field} numCalls : uint64_t
256 246
  + {field} numTimeouts : uint64_t
257
  .. URT_CFG_RPC_PROFILING == true || URT_CFG_RPC_QOS_JITTERCHECKS == true ..
247
  .. URT_CFG_RPC_QOS_JITTERCHECKS == true || URT_CFG_RPC_PROFILING == true  ..
258 248
  + {field} minDuration : urt_delay_t
259 249
  + {field} maxDuration : urt_delay_t
260 250
  __
......
274 264
urt_node_t <.. urt_nodeLoopCallback_t
275 265

  
276 266

  
277
urt_srtdata_t "1" o- - "0..1" urt_srtusefulnessfunc_t
278

  
279
urt_rtclassdata_t "1" *- - "0..1" urt_hrtdata_t
280
urt_rtclassdata_t "1" *- - "0..1" urt_frtdata_t
281
urt_rtclassdata_t "1" *- - "0..1" urt_srtdata_t
282
urt_rtclassdata_t "1" *- - "0..1" urt_nrtdata_t
267
urt_message_t "1" o- - "0..1" urt_message_t
283 268

  
284
urt_rtdata_t "1" *- - "1" urt_rtclass_t
285
urt_rtdata_t "1" *- - "1" urt_rtclassdata_t
269
urt_nrtsubscriber_t - -|> urt_basesubscriber_t
270
urt_nrtsubscriber_t ..> urt_message_t
286 271

  
287
urt_hrtdata_t "1" o-up- "0..1" urt_subscriber_t
272
urt_srtsubscriber_t - -|> urt_basesubscriber_t
273
urt_srtsubscriber_t "1" o- - "0..1" urt_srtusefulnessfunc_t
274
urt_srtsubscriber_t ..> urt_message_t
288 275

  
289
urt_message_t "1" o- - "0..1" urt_message_t
276
urt_frtsubscriber_t - -|> urt_basesubscriber_t
277
urt_frtsubscriber_t ..> urt_message_t
290 278

  
291
urt_subscriber_t "1" *- - "1" urt_rtdata_t
292
urt_subscriber_t "1" o- "0..1" urt_topic_t
293
urt_subscriber_t "1" o- - "0..1" urt_message_t
279
urt_hrtsubscriber_t - -|> urt_basesubscriber_t
280
urt_hrtsubscriber_t "1" o- - "0..1" urt_hrtsubscriber_t
281
urt_hrtsubscriber_t ..> urt_message_t
294 282

  
295 283
urt_publisher_t "1" o- "1" urt_topic_t
296 284
urt_publisher_t ..> urt_message_t
297 285

  
298 286
urt_topic_t "1" o- - "0..1" urt_topic_t
299
urt_topic_t "1" o- "0..1" urt_subscriber_t
300
urt_topic_t "1" o- - "1..1" urt_message_t
287
urt_topic_t "1" o- "0..1" urt_hrtsubscriber_t
301 288
urt_topic_t "1" *- - "1" urt_message_t
302 289

  
303 290

  

Also available in: Unified diff