Revision dd31cb03 doc/activitydiagrams/topic/urtTopicInit.svg

View differences:

doc/activitydiagrams/topic/urtTopicInit.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="1031px" preserveAspectRatio="none" style="width:999px;height:1031px;" version="1.1" viewBox="0 0 999 1031" width="999px" zoomAndPan="magnify"><defs><filter height="300%" id="fxpvnq5f0ubws" 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="454.25" y="26.708">µRtWare</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="117" x="440.25" y="47.6611">urtTopicInit()</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="0" x="501.75" y="68.6143"/><path d="M223.75,72.8594 L223.75,213.9219 L774.75,213.9219 L774.75,82.8594 L764.75,72.8594 L223.75,72.8594 " fill="#FBFB77" filter="url(#fxpvnq5f0ubws)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M764.75,72.8594 L764.75,82.8594 L774.75,82.8594 L764.75,72.8594 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="223.75" x2="433.25" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="437.25" y="89.4263"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="37" x="437.25" y="89.4263">topic</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="83" x="478.25" y="89.4263">: urt_topic_t*</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="565.25" x2="774.75" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="134" x="229.75" y="105.0591">The topic to initialize.</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="76" x="229.75" y="120.1919">Must not be</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="309.75" y="120.1919">NULL</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="341.75" y="120.1919">.</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="223.75" x2="442.75" y1="130.8242" y2="130.8242"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="446.75" y="134.8247"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="14" x="446.75" y="134.8247">id</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="87" x="464.75" y="134.8247">: urt_topicid_t</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="555.75" x2="774.75" y1="130.8242" y2="130.8242"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="244" x="229.75" y="150.4575">Unique, numeric identifier of the topic.</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="223.75" x2="774.75" y1="158.5234" y2="158.5234"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="223.75" x2="774.75" y1="160.5234" y2="160.5234"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="223.75" x2="428.25" y1="171.0898" y2="171.0898"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="432.25" y="175.0903"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="45" x="432.25" y="175.0903">return</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="85" x="481.25" y="175.0903">: urt_status_t</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="570.25" x2="774.75" y1="171.0898" y2="171.0898"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="229.75" y="190.7231">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="282.75" y="190.7231">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="75" x="390.75" y="190.7231">on success.</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="229.75" y="205.856">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="128" x="282.75" y="205.856">URT_STATUS_ERROR</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="345" x="414.75" y="205.856">if another topic with the same identifier already exists.</text><ellipse cx="499.25" cy="243.9219" fill="#000000" filter="url(#fxpvnq5f0ubws)" rx="10" ry="10" style="stroke: none; stroke-width: 1.0;"/><path d="M80.75,263.9219 L80.75,485.7813 A0,0 0 0 0 80.75,485.7813 L413.75,485.7813 A0,0 0 0 0 413.75,485.7813 L413.75,378.8516 L433.75,374.8516 L413.75,370.8516 L413.75,273.9219 L403.75,263.9219 L80.75,263.9219 A0,0 0 0 0 80.75,263.9219 " fill="#FBFB77" filter="url(#fxpvnq5f0ubws)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M403.75,263.9219 L403.75,273.9219 L413.75,273.9219 L403.75,263.9219 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="32" x="86.75" y="280.9888">next</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="11" x="122.75" y="280.9888">←</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="137.75" y="280.9888">NULL</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="14" x="86.75" y="296.1216">id</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="26" x="104.75" y="296.1216">← id</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="81" x="86.75" y="311.2544">urtMutexInit(</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="30" x="167.75" y="311.2544">lock</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="5" x="197.75" y="311.2544">)</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="123" x="86.75" y="326.3872">urtEventSourceInit(</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="73" x="209.75" y="326.3872">evtSource</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="5" x="282.75" y="326.3872">)</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="134" x="86.75" y="341.52">numHrtSubscriber</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="23" x="224.75" y="341.52">← 0</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="108" x="86.75" y="356.6528">hrtSubscribers</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="11" x="198.75" y="356.6528">←</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="213.75" y="356.6528">NULL</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="95" x="86.75" y="371.7856">urtCondvarInit(</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="89" x="181.75" y="371.7856">hrtReleased</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="5" x="270.75" y="371.7856">)</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="99" x="86.75" y="386.9185">urtMessageInit(</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="146" x="185.75" y="386.9185">mandatoryMessage</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="5" x="331.75" y="386.9185">)</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="108" x="86.75" y="402.0513">latestMessage</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="153" x="198.75" y="402.0513">← &amp;mandatoryMessage</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="80.75" x2="91.25" y1="412.6836" y2="412.6836"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="304" x="95.25" y="416.6841">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="403.25" x2="413.75" y1="412.6836" y2="412.6836"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="78" x="86.75" y="432.3169">urtTimerInit(</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="102" x="164.75" y="432.3169">qosRateTimer</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="5" x="266.75" y="432.3169">)</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="80.75" x2="118.75" y1="442.9492" y2="442.9492"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="249" x="122.75" y="446.9497">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="375.75" x2="413.75" y1="442.9492" y2="442.9492"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="181" x="86.75" y="462.5825">numDiscardedMessages</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="23" x="271.75" y="462.5825">← 0</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="119" x="86.75" y="477.7153">numSubscribers</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="23" x="209.75" y="477.7153">← 0</text><rect fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="131" x="433.75" y="357.8672"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="111" x="443.75" y="379.0059">initialize members</text><path d="M106.75,510.1992 L106.75,535.332 A0,0 0 0 0 106.75,535.332 L376.75,535.332 A0,0 0 0 0 376.75,535.332 L376.75,528.1992 L396.75,522.7656 L376.75,520.1992 L376.75,520.1992 L366.75,510.1992 L106.75,510.1992 A0,0 0 0 0 106.75,510.1992 " fill="#FBFB77" filter="url(#fxpvnq5f0ubws)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M366.75,510.1992 L366.75,520.1992 L376.75,520.1992 L366.75,510.1992 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="93" x="112.75" y="527.2661">latestMessage</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="16" x="205.75" y="527.2661">-&gt;</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="140" x="221.75" y="527.2661">next ← latestMessage</text><rect fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="205" x="396.75" y="505.7813"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="185" x="406.75" y="526.9199">close circular message buffer</text><rect fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="77" x="460.75" y="559.75"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="57" x="470.75" y="580.8887">lock core</text><rect fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="127" x="435.75" y="613.7188"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="107" x="445.75" y="634.8574">access first topic</text><rect fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="155" x="421.75" y="725.0073"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="135" x="431.75" y="746.146">proceed to next topic</text><polygon fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" points="438.25,667.6875,560.25,667.6875,572.25,680.4922,560.25,693.2969,438.25,693.2969,426.25,680.4922,438.25,667.6875" style="stroke: #A80036; stroke-width: 1.5;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="20" x="503.25" y="703.5073">yes</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="66" x="438.25" y="677.8979">Topic is not</text><text fill="#000000" font-family="monospace" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="28" x="508.25" y="677.8979">NULL</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="122" x="438.25" y="690.7026">and topic ID is lower?</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="14" x="412.25" y="677.8979">no</text><polygon fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" points="160,800.9761,286,800.9761,298,812.9761,286,824.9761,160,824.9761,148,812.9761,160,800.9761" style="stroke: #A80036; stroke-width: 1.5;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="20" x="227" y="835.1865">yes</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="88" x="160" y="816.7842">Current topic is</text><text fill="#000000" font-family="monospace" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="28" x="252" y="816.7842">NULL</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="6" x="280" y="816.7842">?</text><rect fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="226" x="110" y="856.6865"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="206" x="120" y="877.8252">append self to core's list of topic</text><rect fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="93" x="176.5" y="925.6553"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="73" x="186.5" y="946.7939">unlock core</text><path d="M10,994.624 L10,1019.7568 A0,0 0 0 0 10,1019.7568 L192,1019.7568 A0,0 0 0 0 192,1019.7568 L192,1012.624 L212,1007.1904 L192,1004.624 L192,1004.624 L182,994.624 L10,994.624 A0,0 0 0 0 10,994.624 " fill="#FBFB77" filter="url(#fxpvnq5f0ubws)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M182,994.624 L182,1004.624 L192,1004.624 L182,994.624 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="16" y="1011.6909">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="69" y="1011.6909">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="173" y="1011.6909">.</text><ellipse cx="223" cy="1007.1904" fill="#FFFFFF" filter="url(#fxpvnq5f0ubws)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="223" cy="1007.1904" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><polygon fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" points="491.5,800.9761,646.5,800.9761,658.5,812.9761,646.5,824.9761,491.5,824.9761,479.5,812.9761,491.5,800.9761" style="stroke: #A80036; stroke-width: 1.5;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="20" x="573" y="835.1865">yes</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="155" x="491.5" y="816.7842">Current topic ID is greater?</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="14" x="658.5" y="810.3818">no</text><rect fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="232" x="453" y="856.6865"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="212" x="463" y="877.8252">insert self in front of current topic</text><rect fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="93" x="522.5" y="925.6553"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="73" x="532.5" y="946.7939">unlock core</text><path d="M356,994.624 L356,1019.7568 A0,0 0 0 0 356,1019.7568 L538,1019.7568 A0,0 0 0 0 538,1019.7568 L538,1012.624 L558,1007.1904 L538,1004.624 L538,1004.624 L528,994.624 L356,994.624 A0,0 0 0 0 356,994.624 " fill="#FBFB77" filter="url(#fxpvnq5f0ubws)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M528,994.624 L528,1004.624 L538,1004.624 L528,994.624 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="362" y="1011.6909">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="415" y="1011.6909">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="519" y="1011.6909">.</text><ellipse cx="569" cy="1007.1904" fill="#FFFFFF" filter="url(#fxpvnq5f0ubws)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="569" cy="1007.1904" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><rect fill="#FEFECE" filter="url(#fxpvnq5f0ubws)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="93" x="895.5" y="887.7686"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="73" x="905.5" y="908.9072">unlock core</text><path d="M705,956.7373 L705,981.8701 A0,0 0 0 0 705,981.8701 L911,981.8701 A0,0 0 0 0 911,981.8701 L911,974.7373 L931,969.3037 L911,966.7373 L911,966.7373 L901,956.7373 L705,956.7373 A0,0 0 0 0 705,956.7373 " fill="#FBFB77" filter="url(#fxpvnq5f0ubws)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M901,956.7373 L901,966.7373 L911,966.7373 L901,956.7373 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="711" y="973.8042">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="128" x="764" y="973.8042">URT_STATUS_ERROR</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="892" y="973.8042">.</text><ellipse cx="942" cy="969.3037" fill="#FFFFFF" filter="url(#fxpvnq5f0ubws)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="942" cy="969.3037" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="499.25" y1="213.9219" y2="233.9219"/><polygon fill="#A80036" points="495.25,223.9219,499.25,233.9219,503.25,223.9219,499.25,227.9219" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="499.25" y1="253.9219" y2="357.8672"/><polygon fill="#A80036" points="495.25,347.8672,499.25,357.8672,503.25,347.8672,499.25,351.8672" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="499.25" y1="391.8359" y2="505.7813"/><polygon fill="#A80036" points="495.25,495.7813,499.25,505.7813,503.25,495.7813,499.25,499.7813" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="499.25" y1="539.75" y2="559.75"/><polygon fill="#A80036" points="495.25,549.75,499.25,559.75,503.25,549.75,499.25,553.75" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="499.25" y1="593.7188" y2="613.7188"/><polygon fill="#A80036" points="495.25,603.7188,499.25,613.7188,503.25,603.7188,499.25,607.7188" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="499.25" y1="693.2969" y2="725.0073"/><polygon fill="#A80036" points="495.25,715.0073,499.25,725.0073,503.25,715.0073,499.25,719.0073" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="499.25" y1="758.9761" y2="768.9761"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="588.75" y1="768.9761" y2="768.9761"/><polygon fill="#A80036" points="584.75,733.187,588.75,723.187,592.75,733.187,588.75,729.187" style="stroke: #A80036; stroke-width: 1.5;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="588.75" x2="588.75" y1="680.4922" y2="768.9761"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="588.75" x2="572.25" y1="680.4922" y2="680.4922"/><polygon fill="#A80036" points="582.25,676.4922,572.25,680.4922,582.25,684.4922,578.25,680.4922" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="426.25" x2="409.75" y1="680.4922" y2="680.4922"/><polygon fill="#A80036" points="405.75,719.187,409.75,729.187,413.75,719.187,409.75,723.187" style="stroke: #A80036; stroke-width: 1.5;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="409.75" x2="409.75" y1="680.4922" y2="780.9761"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="409.75" x2="499.25" y1="780.9761" y2="780.9761"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="499.25" y1="780.9761" y2="785.9761"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="499.25" y1="647.6875" y2="667.6875"/><polygon fill="#A80036" points="495.25,657.6875,499.25,667.6875,503.25,657.6875,499.25,661.6875" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="890.6553" y2="925.6553"/><polygon fill="#A80036" points="219,915.6553,223,925.6553,227,915.6553,223,919.6553" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="959.624" y2="996.1904"/><polygon fill="#A80036" points="219,986.1904,223,996.1904,227,986.1904,223,990.1904" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="569" x2="569" y1="890.6553" y2="925.6553"/><polygon fill="#A80036" points="565,915.6553,569,925.6553,573,915.6553,569,919.6553" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="569" x2="569" y1="959.624" y2="996.1904"/><polygon fill="#A80036" points="565,986.1904,569,996.1904,573,986.1904,569,990.1904" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="942" x2="942" y1="921.7373" y2="958.3037"/><polygon fill="#A80036" points="938,948.3037,942,958.3037,946,948.3037,942,952.3037" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="824.9761" y2="856.6865"/><polygon fill="#A80036" points="219,846.6865,223,856.6865,227,846.6865,223,850.6865" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="569" x2="569" y1="824.9761" y2="856.6865"/><polygon fill="#A80036" points="565,846.6865,569,856.6865,573,846.6865,569,850.6865" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="298" x2="479.5" y1="812.9761" y2="812.9761"/><polygon fill="#A80036" points="469.5,808.9761,479.5,812.9761,469.5,816.9761,473.5,812.9761" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="499.25" x2="223" y1="785.9761" y2="785.9761"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="785.9761" y2="800.9761"/><polygon fill="#A80036" points="219,790.9761,223,800.9761,227,790.9761,223,794.9761" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="658.5" x2="942" y1="812.9761" y2="812.9761"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="942" x2="942" y1="812.9761" y2="887.7686"/><polygon fill="#A80036" points="938,877.7686,942,887.7686,946,877.7686,942,881.7686" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[75588162bd2c775fc0dfe49fc5f43cd1]
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="1046px" preserveAspectRatio="none" style="width:1079px;height:1046px;" version="1.1" viewBox="0 0 1079 1046" width="1079px" zoomAndPan="magnify"><defs><filter height="300%" id="f3yh9yl8gxttz" 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="494.25" y="26.708">µRtWare</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="117" x="480.25" y="47.6611">urtTopicInit()</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="0" x="541.75" y="68.6143"/><path d="M223.75,72.8594 L223.75,213.9219 L854.75,213.9219 L854.75,82.8594 L844.75,72.8594 L223.75,72.8594 " fill="#FBFB77" filter="url(#f3yh9yl8gxttz)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M844.75,72.8594 L844.75,82.8594 L854.75,82.8594 L844.75,72.8594 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="223.75" x2="473.25" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="477.25" y="89.4263"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="37" x="477.25" y="89.4263">topic</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="83" x="518.25" y="89.4263">: urt_topic_t*</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="605.25" x2="854.75" y1="85.4258" y2="85.4258"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="134" x="229.75" y="105.0591">The topic to initialize.</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="76" x="229.75" y="120.1919">Must not be</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="309.75" y="120.1919">NULL</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="341.75" y="120.1919">.</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="223.75" x2="482.75" y1="130.8242" y2="130.8242"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="486.75" y="134.8247"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="14" x="486.75" y="134.8247">id</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="87" x="504.75" y="134.8247">: urt_topicid_t</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="595.75" x2="854.75" y1="130.8242" y2="130.8242"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="244" x="229.75" y="150.4575">Unique, numeric identifier of the topic.</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="223.75" x2="854.75" y1="158.5234" y2="158.5234"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="223.75" x2="854.75" y1="160.5234" y2="160.5234"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="223.75" x2="468.25" y1="171.0898" y2="171.0898"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="0" x="472.25" y="175.0903"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="45" x="472.25" y="175.0903">return</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="85" x="521.25" y="175.0903">: urt_status_t</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="610.25" x2="854.75" y1="171.0898" y2="171.0898"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="229.75" y="190.7231">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="282.75" y="190.7231">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="75" x="390.75" y="190.7231">on success.</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="229.75" y="205.856">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="208" x="282.75" y="205.856">URT_STATUS_TOPIC_DUPLICATE</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="345" x="494.75" y="205.856">if another topic with the same identifier already exists.</text><ellipse cx="539.25" cy="243.9219" fill="#000000" filter="url(#f3yh9yl8gxttz)" rx="10" ry="10" style="stroke: none; stroke-width: 1.0;"/><path d="M120.75,263.9219 L120.75,500.9141 A0,0 0 0 0 120.75,500.9141 L453.75,500.9141 A0,0 0 0 0 453.75,500.9141 L453.75,386.418 L473.75,382.418 L453.75,378.418 L453.75,273.9219 L443.75,263.9219 L120.75,263.9219 A0,0 0 0 0 120.75,263.9219 " fill="#FBFB77" filter="url(#f3yh9yl8gxttz)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M443.75,263.9219 L443.75,273.9219 L453.75,273.9219 L443.75,263.9219 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><ellipse cx="132.25" cy="276.5547" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="32" x="137.75" y="280.9888">next</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="11" x="173.75" y="280.9888">←</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="188.75" y="280.9888">NULL</text><ellipse cx="132.25" cy="291.6875" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="14" x="137.75" y="296.1216">id</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="26" x="155.75" y="296.1216">← id</text><ellipse cx="132.25" cy="306.8203" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="81" x="137.75" y="311.2544">urtMutexInit(</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="30" x="218.75" y="311.2544">lock</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="5" x="248.75" y="311.2544">)</text><ellipse cx="132.25" cy="321.9531" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="123" x="137.75" y="326.3872">urtEventSourceInit(</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="73" x="260.75" y="326.3872">evtSource</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="5" x="333.75" y="326.3872">)</text><ellipse cx="132.25" cy="337.0859" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="134" x="137.75" y="341.52">numHrtSubscriber</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="23" x="275.75" y="341.52">← 0</text><ellipse cx="132.25" cy="352.2188" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="95" x="137.75" y="356.6528">urtCondvarInit(</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="89" x="232.75" y="356.6528">hrtReleased</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="5" x="321.75" y="356.6528">)</text><ellipse cx="132.25" cy="367.3516" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="99" x="137.75" y="371.7856">urtMessageInit(</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="146" x="236.75" y="371.7856">mandatoryMessage</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="5" x="382.75" y="371.7856">)</text><ellipse cx="132.25" cy="382.4844" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="108" x="137.75" y="386.9185">latestMessage</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="153" x="249.75" y="386.9185">← &amp;mandatoryMessage</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="120.75" x2="131.25" y1="397.5508" y2="397.5508"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="304" x="135.25" y="401.5513">URT_CFG_PUBSUB_QOS_RATECHECKS == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="443.25" x2="453.75" y1="397.5508" y2="397.5508"/><ellipse cx="132.25" cy="412.75" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="108" x="137.75" y="417.1841">hrtSubscribers</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="11" x="249.75" y="417.1841">←</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="32" x="264.75" y="417.1841">NULL</text><ellipse cx="132.25" cy="427.8828" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="78" x="137.75" y="432.3169">urtTimerInit(</text><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="102" x="215.75" y="432.3169">qosRateTimer</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="5" x="317.75" y="432.3169">)</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="120.75" x2="158.75" y1="442.9492" y2="442.9492"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="249" x="162.75" y="446.9497">URT_CFG_PUBSUB_PROFILING == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="415.75" x2="453.75" y1="442.9492" y2="442.9492"/><ellipse cx="132.25" cy="458.1484" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="179" x="137.75" y="462.5825">numMessagesPublished</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="23" x="320.75" y="462.5825">← 0</text><ellipse cx="132.25" cy="473.2813" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="181" x="137.75" y="477.7153">numMessagesDiscarded</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="23" x="322.75" y="477.7153">← 0</text><ellipse cx="132.25" cy="488.4141" fill="#000000" rx="2.5" ry="2.5" style="stroke: #000000; stroke-width: 0.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="119" x="137.75" y="492.8481">numSubscribers</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="23" x="260.75" y="492.8481">← 0</text><rect fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="131" x="473.75" y="365.4336"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="111" x="483.75" y="386.5723">initialize members</text><path d="M146.75,525.332 L146.75,550.4648 A0,0 0 0 0 146.75,550.4648 L416.75,550.4648 A0,0 0 0 0 416.75,550.4648 L416.75,543.332 L436.75,537.8984 L416.75,535.332 L416.75,535.332 L406.75,525.332 L146.75,525.332 A0,0 0 0 0 146.75,525.332 " fill="#FBFB77" filter="url(#f3yh9yl8gxttz)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M406.75,525.332 L406.75,535.332 L416.75,535.332 L406.75,525.332 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="93" x="152.75" y="542.3989">latestMessage</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="16" x="245.75" y="542.3989">-&gt;</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="140" x="261.75" y="542.3989">next ← latestMessage</text><rect fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="205" x="436.75" y="520.9141"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="185" x="446.75" y="542.0527">close circular message buffer</text><rect fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="77" x="500.75" y="574.8828"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="57" x="510.75" y="596.0215">lock core</text><rect fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="127" x="475.75" y="628.8516"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="107" x="485.75" y="649.9902">access first topic</text><rect fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="155" x="461.75" y="740.1401"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="135" x="471.75" y="761.2788">proceed to next topic</text><polygon fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" points="478.25,682.8203,600.25,682.8203,612.25,695.625,600.25,708.4297,478.25,708.4297,466.25,695.625,478.25,682.8203" style="stroke: #A80036; stroke-width: 1.5;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="20" x="543.25" y="718.6401">yes</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="66" x="478.25" y="693.0308">Topic is not</text><text fill="#000000" font-family="monospace" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="28" x="548.25" y="693.0308">NULL</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="122" x="478.25" y="705.8354">and topic ID is lower?</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="14" x="452.25" y="693.0308">no</text><polygon fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" points="160,816.1089,286,816.1089,298,828.1089,286,840.1089,160,840.1089,148,828.1089,160,816.1089" style="stroke: #A80036; stroke-width: 1.5;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="20" x="227" y="850.3193">yes</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="88" x="160" y="831.917">Current topic is</text><text fill="#000000" font-family="monospace" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="28" x="252" y="831.917">NULL</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="6" x="280" y="831.917">?</text><rect fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="226" x="110" y="871.8193"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="206" x="120" y="892.958">append self to core's list of topic</text><rect fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="93" x="176.5" y="940.7881"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="73" x="186.5" y="961.9268">unlock core</text><path d="M10,1009.7568 L10,1034.8896 A0,0 0 0 0 10,1034.8896 L192,1034.8896 A0,0 0 0 0 192,1034.8896 L192,1027.7568 L212,1022.3232 L192,1019.7568 L192,1019.7568 L182,1009.7568 L10,1009.7568 A0,0 0 0 0 10,1009.7568 " fill="#FBFB77" filter="url(#f3yh9yl8gxttz)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M182,1009.7568 L182,1019.7568 L192,1019.7568 L182,1009.7568 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="16" y="1026.8237">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="69" y="1026.8237">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="173" y="1026.8237">.</text><ellipse cx="223" cy="1022.3232" fill="#FFFFFF" filter="url(#f3yh9yl8gxttz)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="223" cy="1022.3232" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><polygon fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" points="491.5,816.1089,646.5,816.1089,658.5,828.1089,646.5,840.1089,491.5,840.1089,479.5,828.1089,491.5,816.1089" style="stroke: #A80036; stroke-width: 1.5;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="20" x="573" y="850.3193">yes</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="155" x="491.5" y="831.917">Current topic ID is greater?</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="14" x="658.5" y="825.5146">no</text><rect fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="232" x="453" y="871.8193"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="212" x="463" y="892.958">insert self in front of current topic</text><rect fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="93" x="522.5" y="940.7881"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="73" x="532.5" y="961.9268">unlock core</text><path d="M356,1009.7568 L356,1034.8896 A0,0 0 0 0 356,1034.8896 L538,1034.8896 A0,0 0 0 0 538,1034.8896 L538,1027.7568 L558,1022.3232 L538,1019.7568 L538,1019.7568 L528,1009.7568 L356,1009.7568 A0,0 0 0 0 356,1009.7568 " fill="#FBFB77" filter="url(#f3yh9yl8gxttz)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M528,1009.7568 L528,1019.7568 L538,1019.7568 L528,1009.7568 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="362" y="1026.8237">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="415" y="1026.8237">URT_STATUS_OK</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="519" y="1026.8237">.</text><ellipse cx="569" cy="1022.3232" fill="#FFFFFF" filter="url(#f3yh9yl8gxttz)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="569" cy="1022.3232" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><rect fill="#FEFECE" filter="url(#f3yh9yl8gxttz)" height="33.9688" rx="12.5" ry="12.5" style="stroke: #A80036; stroke-width: 1.5;" width="93" x="975.5" y="902.9014"/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="73" x="985.5" y="924.04">unlock core</text><path d="M705,971.8701 L705,997.0029 A0,0 0 0 0 705,997.0029 L991,997.0029 A0,0 0 0 0 991,997.0029 L991,989.8701 L1011,984.4365 L991,981.8701 L991,981.8701 L981,971.8701 L705,971.8701 A0,0 0 0 0 705,971.8701 " fill="#FBFB77" filter="url(#f3yh9yl8gxttz)" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M981,971.8701 L981,981.8701 L991,981.8701 L981,971.8701 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="49" x="711" y="988.937">Returns</text><text fill="#000000" font-family="monospace" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="208" x="764" y="988.937">URT_STATUS_TOPIC_DUPLICATE</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="4" x="972" y="988.937">.</text><ellipse cx="1022" cy="984.4365" fill="#FFFFFF" filter="url(#f3yh9yl8gxttz)" rx="11" ry="11" style="stroke: #000000; stroke-width: 1.0;"/><ellipse cx="1022" cy="984.4365" fill="#000000" rx="6" ry="6" style="stroke: #7F7F7F; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="539.25" y1="213.9219" y2="233.9219"/><polygon fill="#A80036" points="535.25,223.9219,539.25,233.9219,543.25,223.9219,539.25,227.9219" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="539.25" y1="253.9219" y2="365.4336"/><polygon fill="#A80036" points="535.25,355.4336,539.25,365.4336,543.25,355.4336,539.25,359.4336" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="539.25" y1="399.4023" y2="520.9141"/><polygon fill="#A80036" points="535.25,510.9141,539.25,520.9141,543.25,510.9141,539.25,514.9141" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="539.25" y1="554.8828" y2="574.8828"/><polygon fill="#A80036" points="535.25,564.8828,539.25,574.8828,543.25,564.8828,539.25,568.8828" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="539.25" y1="608.8516" y2="628.8516"/><polygon fill="#A80036" points="535.25,618.8516,539.25,628.8516,543.25,618.8516,539.25,622.8516" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="539.25" y1="708.4297" y2="740.1401"/><polygon fill="#A80036" points="535.25,730.1401,539.25,740.1401,543.25,730.1401,539.25,734.1401" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="539.25" y1="774.1089" y2="784.1089"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="628.75" y1="784.1089" y2="784.1089"/><polygon fill="#A80036" points="624.75,748.3198,628.75,738.3198,632.75,748.3198,628.75,744.3198" style="stroke: #A80036; stroke-width: 1.5;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="628.75" x2="628.75" y1="695.625" y2="784.1089"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="628.75" x2="612.25" y1="695.625" y2="695.625"/><polygon fill="#A80036" points="622.25,691.625,612.25,695.625,622.25,699.625,618.25,695.625" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="466.25" x2="449.75" y1="695.625" y2="695.625"/><polygon fill="#A80036" points="445.75,734.3198,449.75,744.3198,453.75,734.3198,449.75,738.3198" style="stroke: #A80036; stroke-width: 1.5;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="449.75" x2="449.75" y1="695.625" y2="796.1089"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="449.75" x2="539.25" y1="796.1089" y2="796.1089"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="539.25" y1="796.1089" y2="801.1089"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="539.25" y1="662.8203" y2="682.8203"/><polygon fill="#A80036" points="535.25,672.8203,539.25,682.8203,543.25,672.8203,539.25,676.8203" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="905.7881" y2="940.7881"/><polygon fill="#A80036" points="219,930.7881,223,940.7881,227,930.7881,223,934.7881" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="974.7568" y2="1011.3232"/><polygon fill="#A80036" points="219,1001.3232,223,1011.3232,227,1001.3232,223,1005.3232" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="569" x2="569" y1="905.7881" y2="940.7881"/><polygon fill="#A80036" points="565,930.7881,569,940.7881,573,930.7881,569,934.7881" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="569" x2="569" y1="974.7568" y2="1011.3232"/><polygon fill="#A80036" points="565,1001.3232,569,1011.3232,573,1001.3232,569,1005.3232" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="1022" x2="1022" y1="936.8701" y2="973.4365"/><polygon fill="#A80036" points="1018,963.4365,1022,973.4365,1026,963.4365,1022,967.4365" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="840.1089" y2="871.8193"/><polygon fill="#A80036" points="219,861.8193,223,871.8193,227,861.8193,223,865.8193" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="569" x2="569" y1="840.1089" y2="871.8193"/><polygon fill="#A80036" points="565,861.8193,569,871.8193,573,861.8193,569,865.8193" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="298" x2="479.5" y1="828.1089" y2="828.1089"/><polygon fill="#A80036" points="469.5,824.1089,479.5,828.1089,469.5,832.1089,473.5,828.1089" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="539.25" x2="223" y1="801.1089" y2="801.1089"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="223" x2="223" y1="801.1089" y2="816.1089"/><polygon fill="#A80036" points="219,806.1089,223,816.1089,227,806.1089,223,810.1089" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="658.5" x2="1022" y1="828.1089" y2="828.1089"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="1022" x2="1022" y1="828.1089" y2="902.9014"/><polygon fill="#A80036" points="1018,892.9014,1022,902.9014,1026,892.9014,1022,896.9014" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[fe0afca51ebd473d286847938fa2571b]
2 2
@startuml
3 3

  
4 4
title **µRtWare**\nurtTopicInit()\n
......
13 13
  ====
14 14
  - - **return** : urt_status_t - -
15 15
  Returns ""URT_STATUS_OK"" on success.
16
  Returns ""URT_STATUS_ERROR"" if another topic with the same identifier already exists.
16
  Returns ""URT_STATUS_TOPIC_DUPLICATE"" if another topic with the same identifier already exists.
17 17
endnote
18 18

  
19 19

  
20 20
start
21 21
:initialize members;
22 22
note
23
  **next** ← ""NULL""
24
  **id** ← id
25
  urtMutexInit(**lock**)
26
  urtEventSourceInit(**evtSource**)
27
  **numHrtSubscriber** ← 0
28
  **hrtSubscribers** ← ""NULL""
29
  urtCondvarInit(**hrtReleased**)
30
  urtMessageInit(**mandatoryMessage**)
31
  **latestMessage** ← &mandatoryMessage
23
  * **next** ← ""NULL""
24
  * **id** ← id
25
  * urtMutexInit(**lock**)
26
  * urtEventSourceInit(**evtSource**)
27
  * **numHrtSubscriber** ← 0
28
  * urtCondvarInit(**hrtReleased**)
29
  * urtMessageInit(**mandatoryMessage**)
30
  * **latestMessage** ← &mandatoryMessage
32 31
  .. URT_CFG_PUBSUB_QOS_RATECHECKS == true ..
33
  urtTimerInit(**qosRateTimer**)
32
  * **hrtSubscribers** ← ""NULL""
33
  * urtTimerInit(**qosRateTimer**)
34 34
  .. URT_CFG_PUBSUB_PROFILING == true ..
35
  **numDiscardedMessages** ← 0
36
  **numSubscribers** ← 0
35
  * **numMessagesPublished** ← 0
36
  * **numMessagesDiscarded** ← 0
37
  * **numSubscribers** ← 0
37 38
endnote
38 39
:close circular message buffer;
39 40
note
......
62 63
  :unlock core;
63 64
  stop
64 65
  note
65
    Returns ""URT_STATUS_ERROR"".
66
    Returns ""URT_STATUS_TOPIC_DUPLICATE"".
66 67
  endnote
67 68
endif
68 69

  

Also available in: Unified diff