Revision 0de5bed8 doc/classdiagrams/osal.svg

View differences:

doc/classdiagrams/osal.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="772px" preserveAspectRatio="none" style="width:5482px;height:772px;" version="1.1" viewBox="0 0 5482 772" width="5482px" zoomAndPan="magnify"><defs><filter height="300%" id="f1yyfxywx3cwk" 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="2704" y="16.708">µRtWare</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="387" x="2555" y="37.6611">Operating System Abstraction Layer (OSAL)</text><!--MD5=[3dab47d3fc3e186ff10f67819eb99ff8]
2
cluster time--><rect fill="#FFFFFF" filter="url(#f1yyfxywx3cwk)" height="121" style="stroke: #000000; stroke-width: 1.5;" width="402" x="2133" y="190.4063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="34" x="2317" y="205.4014">time</text><!--MD5=[48ccbfc44b1b031f9b243763d7ad5184]
3
cluster mutex--><rect fill="#FFFFFF" filter="url(#f1yyfxywx3cwk)" height="134" style="stroke: #000000; stroke-width: 1.5;" width="314" x="759" y="183.9063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="49" x="891.5" y="198.9014">mutex</text><!--MD5=[2e45f233f6bb64aa81ebe67fb6de8946]
4
cluster condition variable--><rect fill="#FFFFFF" filter="url(#f1yyfxywx3cwk)" height="438" style="stroke: #000000; stroke-width: 1.5;" width="726" x="14" y="183.9063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="140" x="307" y="198.9014">condition variable</text><!--MD5=[c7113df1f710ca294cbd01734aa00974]
5
cluster timer--><rect fill="#FFFFFF" filter="url(#f1yyfxywx3cwk)" height="432" style="stroke: #000000; stroke-width: 1.5;" width="754" x="2553" y="177.4063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="41" x="2909.5" y="192.4014">timer</text><!--MD5=[107bb3f79455a18bd83c75ada1ac7979]
6
cluster thread--><rect fill="#FFFFFF" filter="url(#f1yyfxywx3cwk)" height="596" style="stroke: #000000; stroke-width: 1.5;" width="1039" x="1081" y="57.9063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="52" x="1574.5" y="72.9014">thread</text><!--MD5=[8d74b40516bd265adb19f202ab81f40d]
7
cluster events--><rect fill="#FFFFFF" filter="url(#f1yyfxywx3cwk)" height="571.5" style="stroke: #000000; stroke-width: 1.5;" width="1642" x="3315" y="190.4063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="54" x="4109" y="205.4014">events</text><!--MD5=[b978ecedb6f4da3f32705dc09c84a7d6]
8
cluster streams--><rect fill="#FFFFFF" filter="url(#f1yyfxywx3cwk)" height="109" style="stroke: #000000; stroke-width: 1.5;" width="226" x="4965" y="196.4063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="64" x="5046" y="211.4014">streams</text><!--MD5=[62106fc051f244acf17caf792167c8db]
9
cluster debug--><rect fill="#FFFFFF" filter="url(#f1yyfxywx3cwk)" height="96" style="stroke: #000000; stroke-width: 1.5;" width="262" x="5209" y="202.9063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="50" x="5315" y="217.9014">debug</text><!--MD5=[3677786d1f00795918091b0110bfa4af]
10
class urt_osTime_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="86.4141" id="urt_osTime_t" style="stroke: #A80036; stroke-width: 1.5;" width="385" x="2141.5" y="217.4063"/><ellipse cx="2290.25" cy="233.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2291.0938,240.1563 L2288.6406,240.1563 L2288.6406,229.9063 L2285.5,229.9063 L2285.5,227.7656 L2294.2344,227.7656 L2294.2344,229.9063 L2291.0938,229.9063 L2291.0938,240.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="79" x="2310.75" y="237.5605">urt_osTime_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2142.5" x2="2525.5" y1="249.4063" y2="249.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="2142.5" x2="2525.5" y1="257.4063" y2="257.4063"/><ellipse cx="2152.5" cy="268.4063" 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="231" x="2161.5" y="271.6167">urtTime2Us (t : urt_osTime_t*) : uint64_t</text><ellipse cx="2152.5" cy="281.2109" 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="189" x="2161.5" y="284.4214">urtTimeNow (void) : urt_osTime_t</text><ellipse cx="2152.5" cy="294.0156" 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="2161.5" y="297.2261">urtTimeAddUs (time : urt_osTime_t*, offset : urt_delay_t) : void</text><!--MD5=[532279a7a1cac9af7f32856ca2ae6b9b]
11
class urt_osMutex_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="99.2188" id="urt_osMutex_t" style="stroke: #A80036; stroke-width: 1.5;" width="298" x="767" y="210.9063"/><ellipse cx="868.25" cy="226.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M869.0938,233.6563 L866.6406,233.6563 L866.6406,223.4063 L863.5,223.4063 L863.5,221.2656 L872.2344,221.2656 L872.2344,223.4063 L869.0938,223.4063 L869.0938,233.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="87" x="888.75" y="231.0605">urt_osMutex_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="768" x2="1064" y1="242.9063" y2="242.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="768" x2="1064" y1="250.9063" y2="250.9063"/><ellipse cx="778" cy="261.9063" 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="245" x="787" y="265.1167">urtMutexInit (mutex : urt_osMutex_t*) : void</text><ellipse cx="778" cy="274.7109" 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="253" x="787" y="277.9214">urtMutexLock (mutex : urt_osMutex_t*) : void</text><ellipse cx="778" cy="287.5156" 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="272" x="787" y="290.7261">urtMutexTryLock (mutex : urt_osMutex_t*) : bool</text><ellipse cx="778" cy="300.3203" 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="265" x="787" y="303.5308">urtMutexUnlock (mutex : urt_osMutex_t*) : void</text><!--MD5=[52fa11869cb40c93fa7702378ddd839e]
12
class urt_osCondvarWaitStatus_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="86.4141" id="urt_osCondvarWaitStatus_t" style="stroke: #A80036; stroke-width: 1.5;" width="270" x="242" y="527.9063"/><ellipse cx="288.25" cy="543.9063" fill="#FF7F3F" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M292.3594,549.9063 L284.6406,549.9063 L284.6406,537.5156 L292.3594,537.5156 L292.3594,539.6719 L287.0938,539.6719 L287.0938,542.3438 L291.8594,542.3438 L291.8594,544.5 L287.0938,544.5 L287.0938,547.75 L292.3594,547.75 L292.3594,549.9063 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="169" x="308.75" y="548.0605">urt_osCondvarWaitStatus_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="243" x2="511" y1="559.9063" y2="559.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="230" x="248" y="574.1167">URT_CONDVAR_WAITSTATUS_SIGNAL = 1</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="258" x="248" y="586.9214">URT_CONDVAR_WAITSTATUS_BROADCAST = 2</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="239" x="248" y="599.7261">URT_CONDVAR_WAITSTATUS_TIMEOUT = 0</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="243" x2="511" y1="606.3203" y2="606.3203"/><!--MD5=[004fc5dee471033e8e4138c1c73f0692]
13
class urt_osCondvar_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="99.2188" id="urt_osCondvar_t" style="stroke: #A80036; stroke-width: 1.5;" width="710" x="22" y="210.9063"/><ellipse cx="322.25" cy="226.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M323.0938,233.6563 L320.6406,233.6563 L320.6406,223.4063 L317.5,223.4063 L317.5,221.2656 L326.2344,221.2656 L326.2344,223.4063 L323.0938,223.4063 L323.0938,233.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="101" x="342.75" y="231.0605">urt_osCondvar_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="23" x2="731" y1="242.9063" y2="242.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="23" x2="731" y1="250.9063" y2="250.9063"/><ellipse cx="33" cy="261.9063" 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="283" x="42" y="265.1167">urtCondvarInit (condvar : urt_osCondvar_t*) : void</text><ellipse cx="33" cy="274.7109" 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="301" x="42" y="277.9214">urtCondvarSignal (condvar : urt_osCondvar_t*) : void</text><ellipse cx="33" cy="287.5156" 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="324" x="42" y="290.7261">urtCondvarBroadcast (condvar : urt_osCondvar_t*) : void</text><ellipse cx="33" cy="300.3203" 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="684" x="42" y="303.5308">urtCondvarWait (condvar : urt_osCondvar_t*, mutex : urt_osMutex_t*, timeout : urt_delay_t) : urt_osCondvarWaitStatus_t</text><!--MD5=[93799a03260ba286abda700174f4f205]
14
class urt_osTimerCallback_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="60.8047" id="urt_osTimerCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="286" x="2787" y="540.4063"/><ellipse cx="2857.75" cy="556.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2858.5938,563.1563 L2856.1406,563.1563 L2856.1406,552.9063 L2853,552.9063 L2853,550.7656 L2861.7344,550.7656 L2861.7344,552.9063 L2858.5938,552.9063 L2858.5938,563.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="136" x="2878.25" y="560.5605">urt_osTimerCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2788" x2="3072" y1="572.4063" y2="572.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="2788" x2="3072" y1="580.4063" y2="580.4063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="274" x="2793" y="594.6167">urt_osTimerCallback_t (parameter : void*) : void</text><!--MD5=[0b340d7b925b1eab6a1b7e084f68a7c2]
15
class urt_osTimer_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="112.0234" id="urt_osTimer_t" style="stroke: #A80036; stroke-width: 1.5;" width="737" x="2561.5" y="204.4063"/><ellipse cx="2883.75" cy="220.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2884.5938,227.1563 L2882.1406,227.1563 L2882.1406,216.9063 L2879,216.9063 L2879,214.7656 L2887.7344,214.7656 L2887.7344,216.9063 L2884.5938,216.9063 L2884.5938,227.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="84" x="2904.25" y="224.5605">urt_osTimer_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2562.5" x2="3297.5" y1="236.4063" y2="236.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="2562.5" x2="3297.5" y1="244.4063" y2="244.4063"/><ellipse cx="2572.5" cy="255.4063" 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="240" x="2581.5" y="258.6167">urtTimerInit (timer : urt_osTimer_t*) : void</text><ellipse cx="2572.5" cy="268.2109" 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="660" x="2581.5" y="271.4214">urtTimerSet (timer : urt_osTimer_t*, delay : urt_delay_t, callback : urt_osTimerCallback_t*, parameter : void*) : void</text><ellipse cx="2572.5" cy="281.0156" 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="711" x="2581.5" y="284.2261">urtTimerSetPeriodic (timer : urt_osTimer_t*, period : urt_delay_t, callback : urt_osTimerCallback_t*, parameter : void*) : void</text><ellipse cx="2572.5" cy="293.8203" 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="255" x="2581.5" y="297.0308">urtTimerReset (timer : urt_osTimer_t*) : void</text><ellipse cx="2572.5" cy="306.625" 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="271" x="2581.5" y="309.8354">urtTimerIsArmed (timer : urt_osTimer_t*) : bool</text><!--MD5=[86c16d91227b9a9ec3b6b9b0285de4e9]
16
class urt_osThreadPrio_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="150.4375" id="urt_osThreadPrio_t" style="stroke: #A80036; stroke-width: 1.5;" width="197" x="1089.5" y="495.9063"/><ellipse cx="1125.65" cy="511.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1126.4938,518.6563 L1124.0406,518.6563 L1124.0406,508.4063 L1120.9,508.4063 L1120.9,506.2656 L1129.6344,506.2656 L1129.6344,508.4063 L1126.4938,508.4063 L1126.4938,518.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="118" x="1144.35" y="516.0605">urt_osThreadPrio_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1090.5" x2="1285.5" y1="527.9063" y2="527.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="160" x="1095.5" y="542.1167">URT_THREAD_PRIO_LOW_MIN</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="163" x="1095.5" y="554.9214">URT_THREAD_PRIO_LOW_MAX</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="182" x="1095.5" y="567.7261">URT_THREAD_PRIO_NORMAL_MIN</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="185" x="1095.5" y="580.5308">URT_THREAD_PRIO_NORMAL_MAX</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="164" x="1095.5" y="593.3354">URT_THREAD_PRIO_HIGH_MIN</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="167" x="1095.5" y="606.1401">URT_THREAD_PRIO_HIGH_MAX</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="150" x="1095.5" y="618.9448">URT_THREAD_PRIO_RT_MIN</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="153" x="1095.5" y="631.7495">URT_THREAD_PRIO_RT_MAX</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1090.5" x2="1285.5" y1="638.3438" y2="638.3438"/><!--MD5=[69d8aab9aa387a2f5052ea3da80e80ea]
17
class urt_osThreadFunction_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="60.8047" id="urt_osThreadFunction_t" style="stroke: #A80036; stroke-width: 1.5;" width="252" x="1322" y="540.4063"/><ellipse cx="1369.75" cy="556.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1370.5938,563.1563 L1368.1406,563.1563 L1368.1406,552.9063 L1365,552.9063 L1365,550.7656 L1373.7344,550.7656 L1373.7344,552.9063 L1370.5938,552.9063 L1370.5938,563.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="148" x="1390.25" y="560.5605">urt_osThreadFunction_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1323" x2="1573" y1="572.4063" y2="572.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="1323" x2="1573" y1="580.4063" y2="580.4063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="240" x="1328" y="594.6167">urt_osThreadFunction_t (arg : void*) : void</text><!--MD5=[ab5f611d45c3fa10609c33f780d8c3e1]
18
class urt_osThreadTerminateSignal_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="73.6094" id="urt_osThreadTerminateSignal_t" style="stroke: #A80036; stroke-width: 1.5;" width="242" x="1609" y="533.9063"/><ellipse cx="1630.75" cy="549.9063" fill="#FF7F3F" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1634.8594,555.9063 L1627.1406,555.9063 L1627.1406,543.5156 L1634.8594,543.5156 L1634.8594,545.6719 L1629.5938,545.6719 L1629.5938,548.3438 L1634.3594,548.3438 L1634.3594,550.5 L1629.5938,550.5 L1629.5938,553.75 L1634.8594,553.75 L1634.8594,555.9063 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="195" x="1646.25" y="554.0605">urt_osThreadTerminateSignal_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1610" x2="1850" y1="565.9063" y2="565.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="230" x="1615" y="580.1167">URT_THREAD_TERMINATE_REQUEST = 15</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="192" x="1615" y="592.9214">URT_THREAD_TERMINATE_KILL = 9</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1610" x2="1850" y1="599.5156" y2="599.5156"/><!--MD5=[47d14ad2c233fae1b32b8d0a283e820a]
19
class urt_osThreadState_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="137.6328" id="urt_osThreadState_t" style="stroke: #A80036; stroke-width: 1.5;" width="226" x="1886" y="501.9063"/><ellipse cx="1930.75" cy="517.9063" fill="#FF7F3F" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1934.8594,523.9063 L1927.1406,523.9063 L1927.1406,511.5156 L1934.8594,511.5156 L1934.8594,513.6719 L1929.5938,513.6719 L1929.5938,516.3438 L1934.3594,516.3438 L1934.3594,518.5 L1929.5938,518.5 L1929.5938,521.75 L1934.8594,521.75 L1934.8594,523.9063 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="128" x="1951.25" y="522.0605">urt_osThreadState_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1887" x2="2111" y1="533.9063" y2="533.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="194" x="1892" y="548.1167">URT_THREAD_STATE_INACTIVE = 0</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="195" x="1892" y="560.9214">URT_THREAD_STATE_RUNNING = 1</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="180" x="1892" y="573.7261">URT_THREAD_STATE_READY = 2</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="199" x="1892" y="586.5308">URT_THREAD_STATE_SLEEPING = 3</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="213" x="1892" y="599.3354">URT_THREAD_STATE_SUSPENDED = 4</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="190" x="1892" y="612.1401">URT_THREAD_STATE_WAITING = 5</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="214" x="1892" y="624.9448">URT_THREAD_STATE_TERMINATED = 6</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1887" x2="2111" y1="631.5391" y2="631.5391"/><!--MD5=[0a16224ede9ffa9bb2d34e085a076e6d]
20
class urt_osThread_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="350.5078" id="urt_osThread_t" style="stroke: #A80036; stroke-width: 1.5;" width="778" x="1328" y="84.9063"/><ellipse cx="1665.75" cy="100.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1666.5938,107.6563 L1664.1406,107.6563 L1664.1406,97.4063 L1661,97.4063 L1661,95.2656 L1669.7344,95.2656 L1669.7344,97.4063 L1666.5938,97.4063 L1666.5938,107.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="94" x="1686.25" y="105.0605">urt_osThread_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1329" x2="2105" y1="116.9063" y2="116.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="179" x="1334" y="131.1167">URT_THREAD_SLEEP_MAX : float</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="225" x="1334" y="143.9214">URT_THREAD_SSLEP_MAX : unsigned int</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="233" x="1334" y="156.7261">URT_THREAD_MSLEEP_MAX : unsigned int</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="224" x="1334" y="169.5308">URT_THREAD_USLEEP_MAX : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="1329" x2="2105" y1="176.125" y2="176.125"/><ellipse cx="1339" cy="187.125" 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="248" x="1348" y="190.3354">URT_THREAD_MEMORY (varname, stacksize)</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1329" x2="2105" y1="196.9297" y2="196.9297"/><ellipse cx="1339" cy="207.9297" 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="1348" y="211.1401">urtThreadInit (memory : void*, size : size_t, prio : urt_osThreadPrio_t, func : urt_osThreadFunction_t*, arg : void*) : urt_osThread_t*</text><ellipse cx="1339" cy="220.7344" 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="272" x="1348" y="223.9448">urtThreadStart (thread : urt_osThread_t*) : void</text><ellipse cx="1339" cy="233.5391" 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="153" x="1348" y="236.7495">urtThreadYield (void) : void</text><ellipse cx="1339" cy="246.3438" 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="271" x="1348" y="249.5542">urtThreadGetPriority (void) : urt_osThreadPrio_t</text><ellipse cx="1339" cy="259.1484" 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="304" x="1348" y="262.3589">urtThreadSetPriority (prio : urt_osThreadPrio_t) : void</text><ellipse cx="1339" cy="271.9531" 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="1348" y="275.1636">urtThreadSleep (seconds : float) : void</text><ellipse cx="1339" cy="284.7578" 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="1348" y="287.9683">urtThreadSSleep (seconds : unsigned int) : void</text><ellipse cx="1339" cy="297.5625" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="297" x="1348" y="300.7729">urtThreadMSleep (milliseconds : unsigned int) : void</text><ellipse cx="1339" cy="310.3672" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="297" x="1348" y="313.5776">urtThreadUSleep (microseconds : urt_delay_t) : void</text><ellipse cx="1339" cy="323.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="271" x="1348" y="326.3823">urtThreadSleepUntil (time : urt_osTime_t) : void</text><ellipse cx="1339" cy="335.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="146" x="1348" y="339.187">urtThreadExit (void) : void</text><ellipse cx="1339" cy="348.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="518" x="1348" y="351.9917">urtThreadTerminate (thread : urt_osThread_t*, sig : urt_osThreadTerminateSignal_t) : void</text><ellipse cx="1339" cy="361.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="264" x="1348" y="364.7964">urtThreadJoin (thread : urt_osThread_t*) : void</text><ellipse cx="1339" cy="374.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="387" x="1348" y="377.6011">urtThreadGetState (thread : urt_osThread_t*) : urt_osThreadState_t</text><ellipse cx="1339" cy="387.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="237" x="1348" y="390.4058">urtThreadGetSelf (void) : urt_osThread_t*</text><ellipse cx="1339" cy="400" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="380" x="1348" y="403.2104">urtThreadGetChildren (thread : urt_osThread_t*) : urt_osThread_t*</text><ellipse cx="1339" cy="412.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="371" x="1348" y="416.0151">urtThreadGetSibling (thread : urt_osThread_t*) : urt_osThread_t*</text><ellipse cx="1339" cy="425.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="370" x="1348" y="428.8198">urtThreadGetParent (thread : urt_osThread_t*) : urt_osThread_t*</text><!--MD5=[0a4e0f34d8da0ad3ed6ecf72f02e09c8]
21
class urt_osEventMask_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="60.8047" id="urt_osEventMask_t" style="stroke: #A80036; stroke-width: 1.5;" width="280" x="3323" y="540.4063"/><ellipse cx="3400.25" cy="556.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3401.0938,563.1563 L3398.6406,563.1563 L3398.6406,552.9063 L3395.5,552.9063 L3395.5,550.7656 L3404.2344,550.7656 L3404.2344,552.9063 L3401.0938,552.9063 L3401.0938,563.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="117" x="3420.75" y="560.5605">urt_osEventMask_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3324" x2="3602" y1="572.4063" y2="572.4063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="268" x="3329" y="586.6167">URT_EVENTMASK_MAXPRIO : urt_osEventMask_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3324" x2="3602" y1="593.2109" y2="593.2109"/><!--MD5=[dc1cc33af288560680c15dec1e56eda0]
22
class urt_osEventFlags_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="48" id="urt_osEventFlags_t" style="stroke: #A80036; stroke-width: 1.5;" width="150" x="4044" y="705.9063"/><ellipse cx="4059" cy="721.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4059.8438,728.6563 L4057.3906,728.6563 L4057.3906,718.4063 L4054.25,718.4063 L4054.25,716.2656 L4062.9844,716.2656 L4062.9844,718.4063 L4059.8438,718.4063 L4059.8438,728.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="118" x="4073" y="726.0605">urt_osEventFlags_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4045" x2="4193" y1="737.9063" y2="737.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4045" x2="4193" y1="745.9063" y2="745.9063"/><!--MD5=[e2bbbd64e6979bf7b755747a6c0ba948]
23
class urt_osEventWait_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="86.4141" id="urt_osEventWait_t" style="stroke: #A80036; stroke-width: 1.5;" width="162" x="3675" y="527.9063"/><ellipse cx="3698.1" cy="543.9063" fill="#FF7F3F" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3702.2094,549.9063 L3694.4906,549.9063 L3694.4906,537.5156 L3702.2094,537.5156 L3702.2094,539.6719 L3696.9438,539.6719 L3696.9438,542.3438 L3701.7094,542.3438 L3701.7094,544.5 L3696.9438,544.5 L3696.9438,547.75 L3702.2094,547.75 L3702.2094,549.9063 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="112" x="3713.9" y="548.0605">urt_osEventWait_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3676" x2="3836" y1="559.9063" y2="559.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="150" x="3681" y="574.1167">URT_EVENT_WAIT_ONE = 0</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="148" x="3681" y="586.9214">URT_EVENT_WAIT_ANY = 1</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="145" x="3681" y="599.7261">URT_EVENT_WAIT_ALL = 2</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3676" x2="3836" y1="606.3203" y2="606.3203"/><!--MD5=[d054ac2eda12ce4b1fe5a18c9be716c1]
24
class urt_osEventListener_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="86.4141" id="urt_osEventListener_t" style="stroke: #A80036; stroke-width: 1.5;" width="494" x="3872" y="527.9063"/><ellipse cx="4047.25" cy="543.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4048.0938,550.6563 L4045.6406,550.6563 L4045.6406,540.4063 L4042.5,540.4063 L4042.5,538.2656 L4051.2344,538.2656 L4051.2344,540.4063 L4048.0938,540.4063 L4048.0938,550.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="135" x="4067.75" y="548.0605">urt_osEventListener_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3873" x2="4365" y1="559.9063" y2="559.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="3873" x2="4365" y1="567.9063" y2="567.9063"/><ellipse cx="3883" cy="578.9063" 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="341" x="3892" y="582.1167">urtEventListenerInit (listener : urt_osEventListener_t*) : void</text><ellipse cx="3883" cy="591.7109" 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="458" x="3892" y="594.9214">urtEventListenerGetFlags (listener : urt_osEventListener_t*) : urt_osEventFlags_t</text><ellipse cx="3883" cy="604.5156" 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="468" x="3892" y="607.7261">urtEventListenerClearFlags (listener : urt_osEventListener_t*) : urt_osEventFlags_t</text><!--MD5=[4d6906f8b977dc26629fa492460e6327]
25
class urt_osEventSource_t--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="73.6094" id="urt_osEventSource_t" style="stroke: #A80036; stroke-width: 1.5;" width="547" x="4401.5" y="533.9063"/><ellipse cx="4606.25" cy="549.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4607.0938,556.6563 L4604.6406,556.6563 L4604.6406,546.4063 L4601.5,546.4063 L4601.5,544.2656 L4610.2344,544.2656 L4610.2344,546.4063 L4607.0938,546.4063 L4607.0938,556.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="129" x="4626.75" y="554.0605">urt_osEventSource_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4402.5" x2="4947.5" y1="565.9063" y2="565.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4402.5" x2="4947.5" y1="573.9063" y2="573.9063"/><ellipse cx="4412.5" cy="584.9063" 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="325" x="4421.5" y="588.1167">urtEventSourceInit (source : urt_osEventSource_t*) : void</text><ellipse cx="4412.5" cy="597.7109" 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="521" x="4421.5" y="600.9214">urtEventSourceBroadcast (source : urt_osEventSource_t*, flags : urt_osEventFlags_t) : void</text><!--MD5=[04a3b5a37031e2a4d723f19d8adf86f5]
26
class urt_events--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="86.4141" id="urt_events" style="stroke: #A80036; stroke-width: 1.5;" width="845" x="3333.5" y="217.4063"/><ellipse cx="3718.75" cy="233.4063" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3722.9844,229.1719 L3717.7031,229.1719 L3717.7031,231.8438 L3722.5,231.8438 L3722.5,234 L3717.7031,234 L3717.7031,239.4063 L3715.2656,239.4063 L3715.2656,227.0156 L3722.9844,227.0156 L3722.9844,229.1719 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="3739.25" y="237.5605">urt_events</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3334.5" x2="4177.5" y1="249.4063" y2="249.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="3334.5" x2="4177.5" y1="257.4063" y2="257.4063"/><ellipse cx="3344.5" cy="268.4063" 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="819" x="3353.5" y="271.6167">urtEventRegister (source : urt_osEventSource_t*, listener : urt_osEventListener_t*, mask : urt_osEventMask_t, flags : urt_osEventFlags_t) : void</text><ellipse cx="3344.5" cy="281.2109" 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="522" x="3353.5" y="284.4214">urtEventUnregister (source _ urt_osEventSource_t*, listener : urt_osEventListener_t*) : void</text><ellipse cx="3344.5" cy="294.0156" 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="618" x="3353.5" y="297.2261">urtEventWait (mask : urt_osEventMask_t, type : urt_osEventWait_t, timeout : urt_delay_t) : urt_osEventMask_t</text><!--MD5=[0cf29100c96c506429a28b45d347cc92]
27
class urt_streams--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="73.6094" id="urt_streams" style="stroke: #A80036; stroke-width: 1.5;" width="209" x="4973.5" y="223.4063"/><ellipse cx="5036.25" cy="239.4063" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M5040.4844,235.1719 L5035.2031,235.1719 L5035.2031,237.8438 L5040,237.8438 L5040,240 L5035.2031,240 L5035.2031,245.4063 L5032.7656,245.4063 L5032.7656,233.0156 L5040.4844,233.0156 L5040.4844,235.1719 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="75" x="5056.75" y="243.5605">urt_streams</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4974.5" x2="5181.5" y1="255.4063" y2="255.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4974.5" x2="5181.5" y1="263.4063" y2="263.4063"/><ellipse cx="4984.5" cy="274.4063" 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="166" x="4993.5" y="277.6167">urtPrintf(fmt : char*, ... ) : int</text><ellipse cx="4984.5" cy="287.2109" 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="183" x="4993.5" y="290.4214">urtErrPrintf(fmt : char*, ... ) : int</text><!--MD5=[f106a25c06a671b3918b1a8f37571a4d]
28
class urt_debug--><rect fill="#FEFECE" filter="url(#f1yyfxywx3cwk)" height="60.8047" id="urt_debug" style="stroke: #A80036; stroke-width: 1.5;" width="245" x="5217.5" y="229.9063"/><ellipse cx="5303.75" cy="245.9063" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M5307.9844,241.6719 L5302.7031,241.6719 L5302.7031,244.3438 L5307.5,244.3438 L5307.5,246.5 L5302.7031,246.5 L5302.7031,251.9063 L5300.2656,251.9063 L5300.2656,239.5156 L5307.9844,239.5156 L5307.9844,241.6719 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="64" x="5324.25" y="250.0605">urt_debug</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5218.5" x2="5461.5" y1="261.9063" y2="261.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5218.5" x2="5461.5" y1="269.9063" y2="269.9063"/><ellipse cx="5228.5" cy="280.9063" 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="219" x="5237.5" y="284.1167">urtDebugAssert(condition : bool) : void</text><!--MD5=[7766572fa0c619a5409829048dc0b6d6]
29
link urt_osCondvar_t to urt_osCondvarWaitStatus_t--><path d="M377,309.9493 C377,368.2855 377,464.5429 377,522.4176 " fill="none" id="urt_osCondvar_t-&gt;urt_osCondvarWaitStatus_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="377,527.5507,381,518.5507,377,522.5507,373,518.5507,377,527.5507" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[9b2507ea88616aeae65e3c4d63560016]
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="772px" preserveAspectRatio="none" style="width:5482px;height:772px;" version="1.1" viewBox="0 0 5482 772" width="5482px" zoomAndPan="magnify"><defs><filter height="300%" id="f2bgca69xlx2b" 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="2704" y="16.708">µRtWare</text><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="387" x="2555" y="37.6611">Operating System Abstraction Layer (OSAL)</text><!--MD5=[3dab47d3fc3e186ff10f67819eb99ff8]
2
cluster time--><rect fill="#FFFFFF" filter="url(#f2bgca69xlx2b)" height="121" style="stroke: #000000; stroke-width: 1.5;" width="402" x="2133" y="190.4063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="34" x="2317" y="205.4014">time</text><!--MD5=[48ccbfc44b1b031f9b243763d7ad5184]
3
cluster mutex--><rect fill="#FFFFFF" filter="url(#f2bgca69xlx2b)" height="134" style="stroke: #000000; stroke-width: 1.5;" width="314" x="759" y="183.9063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="49" x="891.5" y="198.9014">mutex</text><!--MD5=[2e45f233f6bb64aa81ebe67fb6de8946]
4
cluster condition variable--><rect fill="#FFFFFF" filter="url(#f2bgca69xlx2b)" height="457.5" style="stroke: #000000; stroke-width: 1.5;" width="726" x="14" y="164.4063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="140" x="307" y="179.4014">condition variable</text><!--MD5=[c7113df1f710ca294cbd01734aa00974]
5
cluster timer--><rect fill="#FFFFFF" filter="url(#f2bgca69xlx2b)" height="432" style="stroke: #000000; stroke-width: 1.5;" width="754" x="2553" y="177.4063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="41" x="2909.5" y="192.4014">timer</text><!--MD5=[107bb3f79455a18bd83c75ada1ac7979]
6
cluster thread--><rect fill="#FFFFFF" filter="url(#f2bgca69xlx2b)" height="596" style="stroke: #000000; stroke-width: 1.5;" width="1039" x="1081" y="57.9063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="52" x="1574.5" y="72.9014">thread</text><!--MD5=[8d74b40516bd265adb19f202ab81f40d]
7
cluster events--><rect fill="#FFFFFF" filter="url(#f2bgca69xlx2b)" height="571.5" style="stroke: #000000; stroke-width: 1.5;" width="1642" x="3315" y="190.4063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="54" x="4109" y="205.4014">events</text><!--MD5=[b978ecedb6f4da3f32705dc09c84a7d6]
8
cluster streams--><rect fill="#FFFFFF" filter="url(#f2bgca69xlx2b)" height="109" style="stroke: #000000; stroke-width: 1.5;" width="226" x="4965" y="196.4063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="64" x="5046" y="211.4014">streams</text><!--MD5=[62106fc051f244acf17caf792167c8db]
9
cluster debug--><rect fill="#FFFFFF" filter="url(#f2bgca69xlx2b)" height="96" style="stroke: #000000; stroke-width: 1.5;" width="262" x="5209" y="202.9063"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="50" x="5315" y="217.9014">debug</text><!--MD5=[3677786d1f00795918091b0110bfa4af]
10
class urt_osTime_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="86.4141" id="urt_osTime_t" style="stroke: #A80036; stroke-width: 1.5;" width="385" x="2141.5" y="217.4063"/><ellipse cx="2290.25" cy="233.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2291.0938,240.1563 L2288.6406,240.1563 L2288.6406,229.9063 L2285.5,229.9063 L2285.5,227.7656 L2294.2344,227.7656 L2294.2344,229.9063 L2291.0938,229.9063 L2291.0938,240.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="79" x="2310.75" y="237.5605">urt_osTime_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2142.5" x2="2525.5" y1="249.4063" y2="249.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="2142.5" x2="2525.5" y1="257.4063" y2="257.4063"/><ellipse cx="2152.5" cy="268.4063" 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="231" x="2161.5" y="271.6167">urtTime2Us (t : urt_osTime_t*) : uint64_t</text><ellipse cx="2152.5" cy="281.2109" 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="189" x="2161.5" y="284.4214">urtTimeNow (void) : urt_osTime_t</text><ellipse cx="2152.5" cy="294.0156" 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="2161.5" y="297.2261">urtTimeAddUs (time : urt_osTime_t*, offset : urt_delay_t) : void</text><!--MD5=[532279a7a1cac9af7f32856ca2ae6b9b]
11
class urt_osMutex_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="99.2188" id="urt_osMutex_t" style="stroke: #A80036; stroke-width: 1.5;" width="298" x="767" y="210.9063"/><ellipse cx="868.25" cy="226.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M869.0938,233.6563 L866.6406,233.6563 L866.6406,223.4063 L863.5,223.4063 L863.5,221.2656 L872.2344,221.2656 L872.2344,223.4063 L869.0938,223.4063 L869.0938,233.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="87" x="888.75" y="231.0605">urt_osMutex_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="768" x2="1064" y1="242.9063" y2="242.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="768" x2="1064" y1="250.9063" y2="250.9063"/><ellipse cx="778" cy="261.9063" 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="245" x="787" y="265.1167">urtMutexInit (mutex : urt_osMutex_t*) : void</text><ellipse cx="778" cy="274.7109" 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="253" x="787" y="277.9214">urtMutexLock (mutex : urt_osMutex_t*) : void</text><ellipse cx="778" cy="287.5156" 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="272" x="787" y="290.7261">urtMutexTryLock (mutex : urt_osMutex_t*) : bool</text><ellipse cx="778" cy="300.3203" 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="265" x="787" y="303.5308">urtMutexUnlock (mutex : urt_osMutex_t*) : void</text><!--MD5=[52fa11869cb40c93fa7702378ddd839e]
12
class urt_osCondvarWaitStatus_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="86.4141" id="urt_osCondvarWaitStatus_t" style="stroke: #A80036; stroke-width: 1.5;" width="270" x="242" y="527.9063"/><ellipse cx="288.25" cy="543.9063" fill="#FF7F3F" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M292.3594,549.9063 L284.6406,549.9063 L284.6406,537.5156 L292.3594,537.5156 L292.3594,539.6719 L287.0938,539.6719 L287.0938,542.3438 L291.8594,542.3438 L291.8594,544.5 L287.0938,544.5 L287.0938,547.75 L292.3594,547.75 L292.3594,549.9063 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="169" x="308.75" y="548.0605">urt_osCondvarWaitStatus_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="243" x2="511" y1="559.9063" y2="559.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="230" x="248" y="574.1167">URT_CONDVAR_WAITSTATUS_SIGNAL = 1</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="258" x="248" y="586.9214">URT_CONDVAR_WAITSTATUS_BROADCAST = 2</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="239" x="248" y="599.7261">URT_CONDVAR_WAITSTATUS_TIMEOUT = 0</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="243" x2="511" y1="606.3203" y2="606.3203"/><!--MD5=[004fc5dee471033e8e4138c1c73f0692]
13
class urt_osCondvar_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="137.6328" id="urt_osCondvar_t" style="stroke: #A80036; stroke-width: 1.5;" width="710" x="22" y="191.4063"/><ellipse cx="322.25" cy="207.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M323.0938,214.1563 L320.6406,214.1563 L320.6406,203.9063 L317.5,203.9063 L317.5,201.7656 L326.2344,201.7656 L326.2344,203.9063 L323.0938,203.9063 L323.0938,214.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="101" x="342.75" y="211.5605">urt_osCondvar_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="23" x2="731" y1="223.4063" y2="223.4063"/><ellipse cx="33" cy="234.4063" 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="283" x="42" y="237.6167">urtCondvarInit (condvar : urt_osCondvar_t*) : void</text><ellipse cx="33" cy="247.2109" 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="301" x="42" y="250.4214">urtCondvarSignal (condvar : urt_osCondvar_t*) : void</text><ellipse cx="33" cy="260.0156" 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="324" x="42" y="263.2261">urtCondvarBroadcast (condvar : urt_osCondvar_t*) : void</text><ellipse cx="33" cy="289.625" 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="559" x="42" y="292.8354">urtCondvarWait (condvar : urt_osCondvar_t*, mutex : urt_osMutex_t*) : urt_osCondvarWaitStatus_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="23" x2="248.5" y1="276.2227" y2="276.2227"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="257" x="248.5" y="279.5308">URT_CFG_OSAL_CONDVAR_TIMEOUT == false</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="505.5" x2="731" y1="276.2227" y2="276.2227"/><ellipse cx="33" cy="319.2344" 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="684" x="42" y="322.4448">urtCondvarWait (condvar : urt_osCondvar_t*, mutex : urt_osMutex_t*, timeout : urt_delay_t) : urt_osCondvarWaitStatus_t</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="23" x2="251" y1="305.832" y2="305.832"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="252" x="251" y="309.1401">URT_CFG_OSAL_CONDVAR_TIMEOUT == true</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="503" x2="731" y1="305.832" y2="305.832"/><!--MD5=[93799a03260ba286abda700174f4f205]
14
class urt_osTimerCallback_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="60.8047" id="urt_osTimerCallback_t" style="stroke: #A80036; stroke-width: 1.5;" width="286" x="2787" y="540.4063"/><ellipse cx="2857.75" cy="556.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2858.5938,563.1563 L2856.1406,563.1563 L2856.1406,552.9063 L2853,552.9063 L2853,550.7656 L2861.7344,550.7656 L2861.7344,552.9063 L2858.5938,552.9063 L2858.5938,563.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="136" x="2878.25" y="560.5605">urt_osTimerCallback_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2788" x2="3072" y1="572.4063" y2="572.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="2788" x2="3072" y1="580.4063" y2="580.4063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="274" x="2793" y="594.6167">urt_osTimerCallback_t (parameter : void*) : void</text><!--MD5=[0b340d7b925b1eab6a1b7e084f68a7c2]
15
class urt_osTimer_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="112.0234" id="urt_osTimer_t" style="stroke: #A80036; stroke-width: 1.5;" width="737" x="2561.5" y="204.4063"/><ellipse cx="2883.75" cy="220.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M2884.5938,227.1563 L2882.1406,227.1563 L2882.1406,216.9063 L2879,216.9063 L2879,214.7656 L2887.7344,214.7656 L2887.7344,216.9063 L2884.5938,216.9063 L2884.5938,227.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="84" x="2904.25" y="224.5605">urt_osTimer_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="2562.5" x2="3297.5" y1="236.4063" y2="236.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="2562.5" x2="3297.5" y1="244.4063" y2="244.4063"/><ellipse cx="2572.5" cy="255.4063" 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="240" x="2581.5" y="258.6167">urtTimerInit (timer : urt_osTimer_t*) : void</text><ellipse cx="2572.5" cy="268.2109" 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="660" x="2581.5" y="271.4214">urtTimerSet (timer : urt_osTimer_t*, delay : urt_delay_t, callback : urt_osTimerCallback_t*, parameter : void*) : void</text><ellipse cx="2572.5" cy="281.0156" 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="711" x="2581.5" y="284.2261">urtTimerSetPeriodic (timer : urt_osTimer_t*, period : urt_delay_t, callback : urt_osTimerCallback_t*, parameter : void*) : void</text><ellipse cx="2572.5" cy="293.8203" 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="255" x="2581.5" y="297.0308">urtTimerReset (timer : urt_osTimer_t*) : void</text><ellipse cx="2572.5" cy="306.625" 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="271" x="2581.5" y="309.8354">urtTimerIsArmed (timer : urt_osTimer_t*) : bool</text><!--MD5=[86c16d91227b9a9ec3b6b9b0285de4e9]
16
class urt_osThreadPrio_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="150.4375" id="urt_osThreadPrio_t" style="stroke: #A80036; stroke-width: 1.5;" width="197" x="1089.5" y="495.9063"/><ellipse cx="1125.65" cy="511.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1126.4938,518.6563 L1124.0406,518.6563 L1124.0406,508.4063 L1120.9,508.4063 L1120.9,506.2656 L1129.6344,506.2656 L1129.6344,508.4063 L1126.4938,508.4063 L1126.4938,518.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="118" x="1144.35" y="516.0605">urt_osThreadPrio_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1090.5" x2="1285.5" y1="527.9063" y2="527.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="160" x="1095.5" y="542.1167">URT_THREAD_PRIO_LOW_MIN</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="163" x="1095.5" y="554.9214">URT_THREAD_PRIO_LOW_MAX</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="182" x="1095.5" y="567.7261">URT_THREAD_PRIO_NORMAL_MIN</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="185" x="1095.5" y="580.5308">URT_THREAD_PRIO_NORMAL_MAX</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="164" x="1095.5" y="593.3354">URT_THREAD_PRIO_HIGH_MIN</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="167" x="1095.5" y="606.1401">URT_THREAD_PRIO_HIGH_MAX</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="150" x="1095.5" y="618.9448">URT_THREAD_PRIO_RT_MIN</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="153" x="1095.5" y="631.7495">URT_THREAD_PRIO_RT_MAX</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1090.5" x2="1285.5" y1="638.3438" y2="638.3438"/><!--MD5=[69d8aab9aa387a2f5052ea3da80e80ea]
17
class urt_osThreadFunction_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="60.8047" id="urt_osThreadFunction_t" style="stroke: #A80036; stroke-width: 1.5;" width="252" x="1322" y="540.4063"/><ellipse cx="1369.75" cy="556.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1370.5938,563.1563 L1368.1406,563.1563 L1368.1406,552.9063 L1365,552.9063 L1365,550.7656 L1373.7344,550.7656 L1373.7344,552.9063 L1370.5938,552.9063 L1370.5938,563.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="148" x="1390.25" y="560.5605">urt_osThreadFunction_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1323" x2="1573" y1="572.4063" y2="572.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="1323" x2="1573" y1="580.4063" y2="580.4063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="240" x="1328" y="594.6167">urt_osThreadFunction_t (arg : void*) : void</text><!--MD5=[ab5f611d45c3fa10609c33f780d8c3e1]
18
class urt_osThreadTerminateSignal_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="73.6094" id="urt_osThreadTerminateSignal_t" style="stroke: #A80036; stroke-width: 1.5;" width="242" x="1609" y="533.9063"/><ellipse cx="1630.75" cy="549.9063" fill="#FF7F3F" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1634.8594,555.9063 L1627.1406,555.9063 L1627.1406,543.5156 L1634.8594,543.5156 L1634.8594,545.6719 L1629.5938,545.6719 L1629.5938,548.3438 L1634.3594,548.3438 L1634.3594,550.5 L1629.5938,550.5 L1629.5938,553.75 L1634.8594,553.75 L1634.8594,555.9063 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="195" x="1646.25" y="554.0605">urt_osThreadTerminateSignal_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1610" x2="1850" y1="565.9063" y2="565.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="230" x="1615" y="580.1167">URT_THREAD_TERMINATE_REQUEST = 15</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="192" x="1615" y="592.9214">URT_THREAD_TERMINATE_KILL = 9</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1610" x2="1850" y1="599.5156" y2="599.5156"/><!--MD5=[47d14ad2c233fae1b32b8d0a283e820a]
19
class urt_osThreadState_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="137.6328" id="urt_osThreadState_t" style="stroke: #A80036; stroke-width: 1.5;" width="226" x="1886" y="501.9063"/><ellipse cx="1930.75" cy="517.9063" fill="#FF7F3F" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1934.8594,523.9063 L1927.1406,523.9063 L1927.1406,511.5156 L1934.8594,511.5156 L1934.8594,513.6719 L1929.5938,513.6719 L1929.5938,516.3438 L1934.3594,516.3438 L1934.3594,518.5 L1929.5938,518.5 L1929.5938,521.75 L1934.8594,521.75 L1934.8594,523.9063 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="128" x="1951.25" y="522.0605">urt_osThreadState_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1887" x2="2111" y1="533.9063" y2="533.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="194" x="1892" y="548.1167">URT_THREAD_STATE_INACTIVE = 0</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="195" x="1892" y="560.9214">URT_THREAD_STATE_RUNNING = 1</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="180" x="1892" y="573.7261">URT_THREAD_STATE_READY = 2</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="199" x="1892" y="586.5308">URT_THREAD_STATE_SLEEPING = 3</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="213" x="1892" y="599.3354">URT_THREAD_STATE_SUSPENDED = 4</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="190" x="1892" y="612.1401">URT_THREAD_STATE_WAITING = 5</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="214" x="1892" y="624.9448">URT_THREAD_STATE_TERMINATED = 6</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1887" x2="2111" y1="631.5391" y2="631.5391"/><!--MD5=[0a16224ede9ffa9bb2d34e085a076e6d]
20
class urt_osThread_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="350.5078" id="urt_osThread_t" style="stroke: #A80036; stroke-width: 1.5;" width="778" x="1328" y="84.9063"/><ellipse cx="1665.75" cy="100.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M1666.5938,107.6563 L1664.1406,107.6563 L1664.1406,97.4063 L1661,97.4063 L1661,95.2656 L1669.7344,95.2656 L1669.7344,97.4063 L1666.5938,97.4063 L1666.5938,107.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="94" x="1686.25" y="105.0605">urt_osThread_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="1329" x2="2105" y1="116.9063" y2="116.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="179" x="1334" y="131.1167">URT_THREAD_SLEEP_MAX : float</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="225" x="1334" y="143.9214">URT_THREAD_SSLEP_MAX : unsigned int</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="233" x="1334" y="156.7261">URT_THREAD_MSLEEP_MAX : unsigned int</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="224" x="1334" y="169.5308">URT_THREAD_USLEEP_MAX : urt_delay_t</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="1329" x2="2105" y1="176.125" y2="176.125"/><ellipse cx="1339" cy="187.125" 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="248" x="1348" y="190.3354">URT_THREAD_MEMORY (varname, stacksize)</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 1.0,2.0;" x1="1329" x2="2105" y1="196.9297" y2="196.9297"/><ellipse cx="1339" cy="207.9297" 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="1348" y="211.1401">urtThreadInit (memory : void*, size : size_t, prio : urt_osThreadPrio_t, func : urt_osThreadFunction_t*, arg : void*) : urt_osThread_t*</text><ellipse cx="1339" cy="220.7344" 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="272" x="1348" y="223.9448">urtThreadStart (thread : urt_osThread_t*) : void</text><ellipse cx="1339" cy="233.5391" 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="153" x="1348" y="236.7495">urtThreadYield (void) : void</text><ellipse cx="1339" cy="246.3438" 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="271" x="1348" y="249.5542">urtThreadGetPriority (void) : urt_osThreadPrio_t</text><ellipse cx="1339" cy="259.1484" 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="304" x="1348" y="262.3589">urtThreadSetPriority (prio : urt_osThreadPrio_t) : void</text><ellipse cx="1339" cy="271.9531" 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="1348" y="275.1636">urtThreadSleep (seconds : float) : void</text><ellipse cx="1339" cy="284.7578" 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="1348" y="287.9683">urtThreadSSleep (seconds : unsigned int) : void</text><ellipse cx="1339" cy="297.5625" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="297" x="1348" y="300.7729">urtThreadMSleep (milliseconds : unsigned int) : void</text><ellipse cx="1339" cy="310.3672" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="297" x="1348" y="313.5776">urtThreadUSleep (microseconds : urt_delay_t) : void</text><ellipse cx="1339" cy="323.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="271" x="1348" y="326.3823">urtThreadSleepUntil (time : urt_osTime_t) : void</text><ellipse cx="1339" cy="335.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="146" x="1348" y="339.187">urtThreadExit (void) : void</text><ellipse cx="1339" cy="348.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="518" x="1348" y="351.9917">urtThreadTerminate (thread : urt_osThread_t*, sig : urt_osThreadTerminateSignal_t) : void</text><ellipse cx="1339" cy="361.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="264" x="1348" y="364.7964">urtThreadJoin (thread : urt_osThread_t*) : void</text><ellipse cx="1339" cy="374.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="387" x="1348" y="377.6011">urtThreadGetState (thread : urt_osThread_t*) : urt_osThreadState_t</text><ellipse cx="1339" cy="387.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="237" x="1348" y="390.4058">urtThreadGetSelf (void) : urt_osThread_t*</text><ellipse cx="1339" cy="400" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="380" x="1348" y="403.2104">urtThreadGetChildren (thread : urt_osThread_t*) : urt_osThread_t*</text><ellipse cx="1339" cy="412.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="371" x="1348" y="416.0151">urtThreadGetSibling (thread : urt_osThread_t*) : urt_osThread_t*</text><ellipse cx="1339" cy="425.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="370" x="1348" y="428.8198">urtThreadGetParent (thread : urt_osThread_t*) : urt_osThread_t*</text><!--MD5=[0a4e0f34d8da0ad3ed6ecf72f02e09c8]
21
class urt_osEventMask_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="60.8047" id="urt_osEventMask_t" style="stroke: #A80036; stroke-width: 1.5;" width="280" x="3323" y="540.4063"/><ellipse cx="3400.25" cy="556.4063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3401.0938,563.1563 L3398.6406,563.1563 L3398.6406,552.9063 L3395.5,552.9063 L3395.5,550.7656 L3404.2344,550.7656 L3404.2344,552.9063 L3401.0938,552.9063 L3401.0938,563.1563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="117" x="3420.75" y="560.5605">urt_osEventMask_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3324" x2="3602" y1="572.4063" y2="572.4063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="268" x="3329" y="586.6167">URT_EVENTMASK_MAXPRIO : urt_osEventMask_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3324" x2="3602" y1="593.2109" y2="593.2109"/><!--MD5=[dc1cc33af288560680c15dec1e56eda0]
22
class urt_osEventFlags_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="48" id="urt_osEventFlags_t" style="stroke: #A80036; stroke-width: 1.5;" width="150" x="4044" y="705.9063"/><ellipse cx="4059" cy="721.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4059.8438,728.6563 L4057.3906,728.6563 L4057.3906,718.4063 L4054.25,718.4063 L4054.25,716.2656 L4062.9844,716.2656 L4062.9844,718.4063 L4059.8438,718.4063 L4059.8438,728.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="118" x="4073" y="726.0605">urt_osEventFlags_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4045" x2="4193" y1="737.9063" y2="737.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4045" x2="4193" y1="745.9063" y2="745.9063"/><!--MD5=[e2bbbd64e6979bf7b755747a6c0ba948]
23
class urt_osEventWait_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="86.4141" id="urt_osEventWait_t" style="stroke: #A80036; stroke-width: 1.5;" width="162" x="3675" y="527.9063"/><ellipse cx="3698.1" cy="543.9063" fill="#FF7F3F" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3702.2094,549.9063 L3694.4906,549.9063 L3694.4906,537.5156 L3702.2094,537.5156 L3702.2094,539.6719 L3696.9438,539.6719 L3696.9438,542.3438 L3701.7094,542.3438 L3701.7094,544.5 L3696.9438,544.5 L3696.9438,547.75 L3702.2094,547.75 L3702.2094,549.9063 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="112" x="3713.9" y="548.0605">urt_osEventWait_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3676" x2="3836" y1="559.9063" y2="559.9063"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="150" x="3681" y="574.1167">URT_EVENT_WAIT_ONE = 0</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="148" x="3681" y="586.9214">URT_EVENT_WAIT_ANY = 1</text><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="145" x="3681" y="599.7261">URT_EVENT_WAIT_ALL = 2</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3676" x2="3836" y1="606.3203" y2="606.3203"/><!--MD5=[d054ac2eda12ce4b1fe5a18c9be716c1]
24
class urt_osEventListener_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="86.4141" id="urt_osEventListener_t" style="stroke: #A80036; stroke-width: 1.5;" width="494" x="3872" y="527.9063"/><ellipse cx="4047.25" cy="543.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4048.0938,550.6563 L4045.6406,550.6563 L4045.6406,540.4063 L4042.5,540.4063 L4042.5,538.2656 L4051.2344,538.2656 L4051.2344,540.4063 L4048.0938,540.4063 L4048.0938,550.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="135" x="4067.75" y="548.0605">urt_osEventListener_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3873" x2="4365" y1="559.9063" y2="559.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="3873" x2="4365" y1="567.9063" y2="567.9063"/><ellipse cx="3883" cy="578.9063" 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="341" x="3892" y="582.1167">urtEventListenerInit (listener : urt_osEventListener_t*) : void</text><ellipse cx="3883" cy="591.7109" 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="458" x="3892" y="594.9214">urtEventListenerGetFlags (listener : urt_osEventListener_t*) : urt_osEventFlags_t</text><ellipse cx="3883" cy="604.5156" 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="468" x="3892" y="607.7261">urtEventListenerClearFlags (listener : urt_osEventListener_t*) : urt_osEventFlags_t</text><!--MD5=[4d6906f8b977dc26629fa492460e6327]
25
class urt_osEventSource_t--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="73.6094" id="urt_osEventSource_t" style="stroke: #A80036; stroke-width: 1.5;" width="547" x="4401.5" y="533.9063"/><ellipse cx="4606.25" cy="549.9063" fill="#00CFFF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M4607.0938,556.6563 L4604.6406,556.6563 L4604.6406,546.4063 L4601.5,546.4063 L4601.5,544.2656 L4610.2344,544.2656 L4610.2344,546.4063 L4607.0938,546.4063 L4607.0938,556.6563 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="129" x="4626.75" y="554.0605">urt_osEventSource_t</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4402.5" x2="4947.5" y1="565.9063" y2="565.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4402.5" x2="4947.5" y1="573.9063" y2="573.9063"/><ellipse cx="4412.5" cy="584.9063" 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="325" x="4421.5" y="588.1167">urtEventSourceInit (source : urt_osEventSource_t*) : void</text><ellipse cx="4412.5" cy="597.7109" 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="521" x="4421.5" y="600.9214">urtEventSourceBroadcast (source : urt_osEventSource_t*, flags : urt_osEventFlags_t) : void</text><!--MD5=[04a3b5a37031e2a4d723f19d8adf86f5]
26
class urt_events--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="86.4141" id="urt_events" style="stroke: #A80036; stroke-width: 1.5;" width="845" x="3333.5" y="217.4063"/><ellipse cx="3718.75" cy="233.4063" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M3722.9844,229.1719 L3717.7031,229.1719 L3717.7031,231.8438 L3722.5,231.8438 L3722.5,234 L3717.7031,234 L3717.7031,239.4063 L3715.2656,239.4063 L3715.2656,227.0156 L3722.9844,227.0156 L3722.9844,229.1719 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="66" x="3739.25" y="237.5605">urt_events</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="3334.5" x2="4177.5" y1="249.4063" y2="249.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="3334.5" x2="4177.5" y1="257.4063" y2="257.4063"/><ellipse cx="3344.5" cy="268.4063" 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="819" x="3353.5" y="271.6167">urtEventRegister (source : urt_osEventSource_t*, listener : urt_osEventListener_t*, mask : urt_osEventMask_t, flags : urt_osEventFlags_t) : void</text><ellipse cx="3344.5" cy="281.2109" 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="522" x="3353.5" y="284.4214">urtEventUnregister (source _ urt_osEventSource_t*, listener : urt_osEventListener_t*) : void</text><ellipse cx="3344.5" cy="294.0156" 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="618" x="3353.5" y="297.2261">urtEventWait (mask : urt_osEventMask_t, type : urt_osEventWait_t, timeout : urt_delay_t) : urt_osEventMask_t</text><!--MD5=[0cf29100c96c506429a28b45d347cc92]
27
class urt_streams--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="73.6094" id="urt_streams" style="stroke: #A80036; stroke-width: 1.5;" width="209" x="4973.5" y="223.4063"/><ellipse cx="5036.25" cy="239.4063" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M5040.4844,235.1719 L5035.2031,235.1719 L5035.2031,237.8438 L5040,237.8438 L5040,240 L5035.2031,240 L5035.2031,245.4063 L5032.7656,245.4063 L5032.7656,233.0156 L5040.4844,233.0156 L5040.4844,235.1719 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="75" x="5056.75" y="243.5605">urt_streams</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="4974.5" x2="5181.5" y1="255.4063" y2="255.4063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="4974.5" x2="5181.5" y1="263.4063" y2="263.4063"/><ellipse cx="4984.5" cy="274.4063" 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="166" x="4993.5" y="277.6167">urtPrintf(fmt : char*, ... ) : int</text><ellipse cx="4984.5" cy="287.2109" 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="183" x="4993.5" y="290.4214">urtErrPrintf(fmt : char*, ... ) : int</text><!--MD5=[f106a25c06a671b3918b1a8f37571a4d]
28
class urt_debug--><rect fill="#FEFECE" filter="url(#f2bgca69xlx2b)" height="60.8047" id="urt_debug" style="stroke: #A80036; stroke-width: 1.5;" width="245" x="5217.5" y="229.9063"/><ellipse cx="5303.75" cy="245.9063" fill="#E0E0E0" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M5307.9844,241.6719 L5302.7031,241.6719 L5302.7031,244.3438 L5307.5,244.3438 L5307.5,246.5 L5302.7031,246.5 L5302.7031,251.9063 L5300.2656,251.9063 L5300.2656,239.5156 L5307.9844,239.5156 L5307.9844,241.6719 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="64" x="5324.25" y="250.0605">urt_debug</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="5218.5" x2="5461.5" y1="261.9063" y2="261.9063"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="5218.5" x2="5461.5" y1="269.9063" y2="269.9063"/><ellipse cx="5228.5" cy="280.9063" 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="219" x="5237.5" y="284.1167">urtDebugAssert(condition : bool) : void</text><!--MD5=[7766572fa0c619a5409829048dc0b6d6]
29
link urt_osCondvar_t to urt_osCondvarWaitStatus_t--><path d="M377,329.7021 C377,388.2809 377,470.7001 377,522.4347 " fill="none" id="urt_osCondvar_t-&gt;urt_osCondvarWaitStatus_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="377,527.6541,381,518.6541,377,522.6541,373,518.6541,377,527.6541" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[9b2507ea88616aeae65e3c4d63560016]
30 30
link urt_osCondvar_t to urt_osMutex_t--><path d="M732.0347,260.4063 C741.9278,260.4063 751.8209,260.4063 761.714,260.4063 " fill="none" id="urt_osCondvar_t-&gt;urt_osMutex_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="766.8875,260.4063,757.8875,256.4063,761.8875,260.4063,757.8875,264.4063,766.8875,260.4063" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[83094e108045c8f9585007cdb3b7cb2e]
31 31
link urt_osTimer_t to urt_osTimerCallback_t--><path d="M2930,316.6355 C2930,380.1229 2930,481.527 2930,535.0795 " fill="none" id="urt_osTimer_t-&gt;urt_osTimerCallback_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="2930,540.1097,2934,531.1097,2930,535.1097,2926,531.1097,2930,540.1097" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[8d8c3240b5b2b5edf6544088e583ffa5]
32 32
link urt_osThread_t to urt_osThreadPrio_t--><path d="M1405.8418,436.025 C1371.6683,455.9771 1337.503,476.2167 1305,495.9063 C1300.4181,498.6819 1295.7508,501.5403 1291.0475,504.4461 " fill="none" id="urt_osThread_t-&gt;urt_osThreadPrio_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="1286.7195,507.127,1296.4769,505.7882,1290.9701,504.494,1292.2642,498.9872,1286.7195,507.127" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[d7d1d43fd970fb07a484642bc19fcb13]
......
40 40
link urt_events to urt_osEventListener_t--><path d="M3806.4736,303.58 C3874.3757,361.6616 3994.6674,464.5557 4064.5482,524.3297 " fill="none" id="urt_events-&gt;urt_osEventListener_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="4068.6635,527.8499,4064.4244,518.96,4064.8639,524.5997,4059.2242,525.0393,4068.6635,527.8499" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[430bebba9cd89d3ba8f63b2078968bca]
41 41
link urt_events to urt_osEventMask_t--><path d="M3715.2596,303.58 C3656.4833,365.8668 3549.0751,479.6902 3495.3713,536.6016 " fill="none" id="urt_events-&gt;urt_osEventMask_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="3491.9126,540.2668,3500.9986,536.4662,3495.3441,536.6302,3495.1801,530.9757,3491.9126,540.2668" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[b1b185abc2161e087cab32ae7fdb2c40]
42 42
link urt_events to urt_osEventFlags_t--><path d="M3723.6428,303.49 C3668.6239,382.3567 3570.8784,551.2459 3658,653.9063 C3682.3308,682.5766 3913.2829,709.5873 4038.765,722.3005 " fill="none" id="urt_events-&gt;urt_osEventFlags_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="4043.9214,722.8209,4035.3686,717.9372,4038.9467,722.3187,4034.5652,725.8968,4043.9214,722.8209" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[706a1974d1b474cbba7e7b0213f243a1]
43
link urt_events to urt_osEventWait_t--><path d="M3756,303.58 C3756,361.0831 3756,462.5105 3756,522.5309 " fill="none" id="urt_events-&gt;urt_osEventWait_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="3756,527.8499,3760,518.8499,3756,522.8499,3752,518.8499,3756,527.8499" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[c46e4eed3b250d67081ad1f958672f83]
43
link urt_events to urt_osEventWait_t--><path d="M3756,303.58 C3756,361.0831 3756,462.5105 3756,522.5309 " fill="none" id="urt_events-&gt;urt_osEventWait_t" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="3756,527.8499,3760,518.8499,3756,522.8499,3752,518.8499,3756,527.8499" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[c53e933e32f0d55325f580d74728bef6]
44 44
@startuml
45 45

  
46 46
title **µRtWare**\nOperating System Abstraction Layer (OSAL)
......
85 85
    + {method} urtCondvarInit (condvar : urt_osCondvar_t*) : void
86 86
    + {method} urtCondvarSignal (condvar : urt_osCondvar_t*) : void
87 87
    + {method} urtCondvarBroadcast (condvar : urt_osCondvar_t*) : void
88
    .. URT_CFG_OSAL_CONDVAR_TIMEOUT == false ..
89
    + {method} urtCondvarWait (condvar : urt_osCondvar_t*, mutex : urt_osMutex_t*) : urt_osCondvarWaitStatus_t
90
    .. URT_CFG_OSAL_CONDVAR_TIMEOUT == true ..
88 91
    + {method} urtCondvarWait (condvar : urt_osCondvar_t*, mutex : urt_osMutex_t*, timeout : urt_delay_t) : urt_osCondvarWaitStatus_t
89 92
  }
90 93
}

Also available in: Unified diff