PWM_sf_c.html 146 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <script type="text/javascript" src="./js/coder_app.js"></script>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6. <script type="text/javascript" src="./rtwreport_utils.js"></script>
  7. <script type="text/javascript" src="./rtwannotate.js"></script>
  8. <link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
  9. </head>
  10. <body onload="srcFileOnload();">
  11. <pre id="code">
  12. <table class="code" id="codeTbl">
  13. <tr name="1" id="1">
  14. <td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
  15. <tr name="2" id="2">
  16. <td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * PWM_sf.c</span></td></tr>
  17. <tr name="3" id="3">
  18. <td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
  19. <tr name="4" id="4">
  20. <td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generation for model "PWM_sf".</span></td></tr>
  21. <tr name="5" id="5">
  22. <td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
  23. <tr name="6" id="6">
  24. <td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version : 1.825</span></td></tr>
  25. <tr name="7" id="7">
  26. <td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
  27. <tr name="8" id="8">
  28. <td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C source code generated on : Fri Apr 14 12:53:29 2023</span></td></tr>
  29. <tr name="9" id="9">
  30. <td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
  31. <tr name="10" id="10">
  32. <td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: rtwsfcn.tlc</span></td></tr>
  33. <tr name="11" id="11">
  34. <td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Note: GRT includes extra infrastructure and instrumentation for prototyping</span></td></tr>
  35. <tr name="12" id="12">
  36. <td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
  37. <tr name="13" id="13">
  38. <td><a id="l13" class='ln'>13</a></td><td><span class="ct"> * Emulation hardware selection:</span></td></tr>
  39. <tr name="14" id="14">
  40. <td><a id="l14" class='ln'>14</a></td><td><span class="ct"> * Differs from embedded hardware (MATLAB Host)</span></td></tr>
  41. <tr name="15" id="15">
  42. <td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
  43. <tr name="16" id="16">
  44. <td><a id="l16" class='ln'>16</a></td><td><span class="ct"> * 1. Execution efficiency</span></td></tr>
  45. <tr name="17" id="17">
  46. <td><a id="l17" class='ln'>17</a></td><td><span class="ct"> * 2. RAM efficiency</span></td></tr>
  47. <tr name="18" id="18">
  48. <td><a id="l18" class='ln'>18</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
  49. <tr name="19" id="19">
  50. <td><a id="l19" class='ln'>19</a></td><td><span class="ct"> */</span></td></tr>
  51. <tr name="20" id="20">
  52. <td><a id="l20" class='ln'>20</a></td><td></td></tr>
  53. <tr name="21" id="21">
  54. <td><a id="l21" class='ln'>21</a></td><td><span class="pp">#include &lt;math.h&gt;</span></td></tr>
  55. <tr name="22" id="22">
  56. <td><a id="l22" class='ln'>22</a></td><td><span class="pp">#include "PWM_sf.h"</span></td></tr>
  57. <tr name="23" id="23">
  58. <td><a id="l23" class='ln'>23</a></td><td><span class="pp">#include "PWM_sf_private.h"</span></td></tr>
  59. <tr name="24" id="24">
  60. <td><a id="l24" class='ln'>24</a></td><td><span class="pp">#include "simstruc.h"</span></td></tr>
  61. <tr name="25" id="25">
  62. <td><a id="l25" class='ln'>25</a></td><td><span class="pp">#include "fixedpoint.h"</span></td></tr>
  63. <tr name="26" id="26">
  64. <td><a id="l26" class='ln'>26</a></td><td><span class="pp">#if</span> <a id="26c5" class="tk">defined</a>(<a id="26c13" class="tk">RT_MALLOC</a>) <a id="26c24" class="tk">||</a> <a id="26c27" class="tk">defined</a>(<a id="26c35" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
  65. <tr name="27" id="27">
  66. <td><a id="l27" class='ln'>27</a></td><td></td></tr>
  67. <tr name="28" id="28">
  68. <td><a id="l28" class='ln'>28</a></td><td><span class="kw">extern</span> <span class="kw">void</span> <a id="28c13" class="tk">*</a><a id="28c14" class="tk">PWM_malloc</a>(<a id="28c25" class="tk">SimStruct</a> <a id="28c35" class="tk">*</a><a id="28c36" class="tk">S</a>);</td></tr>
  69. <tr name="29" id="29">
  70. <td><a id="l29" class='ln'>29</a></td><td></td></tr>
  71. <tr name="30" id="30">
  72. <td><a id="l30" class='ln'>30</a></td><td><span class="pp">#endif</span></td></tr>
  73. <tr name="31" id="31">
  74. <td><a id="l31" class='ln'>31</a></td><td></td></tr>
  75. <tr name="32" id="32">
  76. <td><a id="l32" class='ln'>32</a></td><td><span class="pp">#ifndef</span> <a id="32c9" class="tk">__RTW_UTFREE__</a></td></tr>
  77. <tr name="33" id="33">
  78. <td><a id="l33" class='ln'>33</a></td><td><span class="pp">#if</span> <a id="33c5" class="tk">defined</a> (<a id="33c14" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
  79. <tr name="34" id="34">
  80. <td><a id="l34" class='ln'>34</a></td><td></td></tr>
  81. <tr name="35" id="35">
  82. <td><a id="l35" class='ln'>35</a></td><td><span class="kw">extern</span> <span class="kw">void</span> <a id="35c13" class="tk">*</a> <a id="35c15" class="tk">utMalloc</a>(<a id="35c24" class="tk">size_t</a>);</td></tr>
  83. <tr name="36" id="36">
  84. <td><a id="l36" class='ln'>36</a></td><td><span class="kw">extern</span> <span class="kw">void</span> <a id="36c13" class="tk">utFree</a>(<span class="kw">void</span> <a id="36c25" class="tk">*</a>);</td></tr>
  85. <tr name="37" id="37">
  86. <td><a id="l37" class='ln'>37</a></td><td></td></tr>
  87. <tr name="38" id="38">
  88. <td><a id="l38" class='ln'>38</a></td><td><span class="pp">#endif</span></td></tr>
  89. <tr name="39" id="39">
  90. <td><a id="l39" class='ln'>39</a></td><td><span class="pp">#endif</span> <span class="ct">/* #ifndef __RTW_UTFREE__ */</span></td></tr>
  91. <tr name="40" id="40">
  92. <td><a id="l40" class='ln'>40</a></td><td></td></tr>
  93. <tr name="41" id="41">
  94. <td><a id="l41" class='ln'>41</a></td><td><span class="ct">/* Forward declaration for local functions */</span></td></tr>
  95. <tr name="42" id="42">
  96. <td><a id="l42" class='ln'>42</a></td><td><span class="kw">static</span> <a id="42c8" class="tk">real_T</a> <a id="42c15" class="tk">PWM_rt_remd_snf</a>(<a id="42c31" class="tk">real_T</a> <a id="42c38" class="tk">u0</a>, <a id="42c42" class="tk">real_T</a> <a id="42c49" class="tk">u1</a>);</td></tr>
  97. <tr name="43" id="43">
  98. <td><a id="l43" class='ln'>43</a></td><td></td></tr>
  99. <tr name="44" id="44">
  100. <td><a id="l44" class='ln'>44</a></td><td><span class="pp">#if</span> <a id="44c5" class="tk">defined</a>(<a id="44c13" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
  101. <tr name="45" id="45">
  102. <td><a id="l45" class='ln'>45</a></td><td><span class="pp">#include "rt_nonfinite.c"</span></td></tr>
  103. <tr name="46" id="46">
  104. <td><a id="l46" class='ln'>46</a></td><td><span class="pp">#endif</span></td></tr>
  105. <tr name="47" id="47">
  106. <td><a id="l47" class='ln'>47</a></td><td></td></tr>
  107. <tr name="48" id="48">
  108. <td><a id="l48" class='ln'>48</a></td><td><span class="kw">static</span> <span class="kw">const</span> <a id="48c14" class="tk">char_T</a> <a id="48c21" class="tk">*</a><a id="48c22" class="tk">RT_MEMORY_ALLOCATION_ERROR</a> =</td></tr>
  109. <tr name="49" id="49">
  110. <td><a id="l49" class='ln'>49</a></td><td> "memory allocation error in generated S-Function";</td></tr>
  111. <tr name="50" id="50">
  112. <td><a id="l50" class='ln'>50</a></td><td></td></tr>
  113. <tr name="51" id="51">
  114. <td><a id="l51" class='ln'>51</a></td><td><span class="ct">/*</span></td></tr>
  115. <tr name="52" id="52">
  116. <td><a id="l52" class='ln'>52</a></td><td><span class="ct"> * Time delay interpolation routine</span></td></tr>
  117. <tr name="53" id="53">
  118. <td><a id="l53" class='ln'>53</a></td><td><span class="ct"> *</span></td></tr>
  119. <tr name="54" id="54">
  120. <td><a id="l54" class='ln'>54</a></td><td><span class="ct"> * The linear interpolation is performed using the formula:</span></td></tr>
  121. <tr name="55" id="55">
  122. <td><a id="l55" class='ln'>55</a></td><td><span class="ct"> *</span></td></tr>
  123. <tr name="56" id="56">
  124. <td><a id="l56" class='ln'>56</a></td><td><span class="ct"> * (t2 - tMinusDelay) (tMinusDelay - t1)</span></td></tr>
  125. <tr name="57" id="57">
  126. <td><a id="l57" class='ln'>57</a></td><td><span class="ct"> * u(t) = ----------------- * u1 + ------------------- * u2</span></td></tr>
  127. <tr name="58" id="58">
  128. <td><a id="l58" class='ln'>58</a></td><td><span class="ct"> * (t2 - t1) (t2 - t1)</span></td></tr>
  129. <tr name="59" id="59">
  130. <td><a id="l59" class='ln'>59</a></td><td><span class="ct"> */</span></td></tr>
  131. <tr name="60" id="60">
  132. <td><a id="l60" class='ln'>60</a></td><td><a id="60c1" class="tk">real_T</a> <a id="60c8" class="tk">PWM_sf_rt_TDelayInterpolate</a>(</td></tr>
  133. <tr name="61" id="61">
  134. <td><a id="l61" class='ln'>61</a></td><td> <a id="61c3" class="tk">real_T</a> <a id="61c10" class="tk">tMinusDelay</a>, <span class="ct">/* tMinusDelay = currentSimTime - delay */</span></td></tr>
  135. <tr name="62" id="62">
  136. <td><a id="l62" class='ln'>62</a></td><td> <a id="62c3" class="tk">real_T</a> <a id="62c10" class="tk">tStart</a>,</td></tr>
  137. <tr name="63" id="63">
  138. <td><a id="l63" class='ln'>63</a></td><td> <a id="63c3" class="tk">real_T</a> <a id="63c10" class="tk">*</a><a id="63c11" class="tk">tBuf</a>,</td></tr>
  139. <tr name="64" id="64">
  140. <td><a id="l64" class='ln'>64</a></td><td> <a id="64c3" class="tk">real_T</a> <a id="64c10" class="tk">*</a><a id="64c11" class="tk">uBuf</a>,</td></tr>
  141. <tr name="65" id="65">
  142. <td><a id="l65" class='ln'>65</a></td><td> <a id="65c3" class="tk">int_T</a> <a id="65c9" class="tk">bufSz</a>,</td></tr>
  143. <tr name="66" id="66">
  144. <td><a id="l66" class='ln'>66</a></td><td> <a id="66c3" class="tk">int_T</a> <a id="66c9" class="tk">*</a><a id="66c10" class="tk">lastIdx</a>,</td></tr>
  145. <tr name="67" id="67">
  146. <td><a id="l67" class='ln'>67</a></td><td> <a id="67c3" class="tk">int_T</a> <a id="67c9" class="tk">oldestIdx</a>,</td></tr>
  147. <tr name="68" id="68">
  148. <td><a id="l68" class='ln'>68</a></td><td> <a id="68c3" class="tk">int_T</a> <a id="68c9" class="tk">newIdx</a>,</td></tr>
  149. <tr name="69" id="69">
  150. <td><a id="l69" class='ln'>69</a></td><td> <a id="69c3" class="tk">real_T</a> <a id="69c10" class="tk">initOutput</a>,</td></tr>
  151. <tr name="70" id="70">
  152. <td><a id="l70" class='ln'>70</a></td><td> <a id="70c3" class="tk">boolean_T</a> <a id="70c13" class="tk">discrete</a>,</td></tr>
  153. <tr name="71" id="71">
  154. <td><a id="l71" class='ln'>71</a></td><td> <a id="71c3" class="tk">boolean_T</a> <a id="71c13" class="tk">minorStepAndTAtLastMajorOutput</a>)</td></tr>
  155. <tr name="72" id="72">
  156. <td><a id="l72" class='ln'>72</a></td><td><span class="br">{</span></td></tr>
  157. <tr name="73" id="73">
  158. <td><a id="l73" class='ln'>73</a></td><td> <a id="73c3" class="tk">int_T</a> <a id="73c9" class="tk">i</a>;</td></tr>
  159. <tr name="74" id="74">
  160. <td><a id="l74" class='ln'>74</a></td><td> <a id="74c3" class="tk">real_T</a> <a id="74c10" class="tk">yout</a>, <a id="74c16" class="tk">t1</a>, <a id="74c20" class="tk">t2</a>, <a id="74c24" class="tk">u1</a>, <a id="74c28" class="tk">u2</a>;</td></tr>
  161. <tr name="75" id="75">
  162. <td><a id="l75" class='ln'>75</a></td><td></td></tr>
  163. <tr name="76" id="76">
  164. <td><a id="l76" class='ln'>76</a></td><td> <span class="ct">/*</span></td></tr>
  165. <tr name="77" id="77">
  166. <td><a id="l77" class='ln'>77</a></td><td><span class="ct"> * If there is only one data point in the buffer, this data point must be</span></td></tr>
  167. <tr name="78" id="78">
  168. <td><a id="l78" class='ln'>78</a></td><td><span class="ct"> * the t= 0 and tMinusDelay &gt; t0, it ask for something unknown. The best</span></td></tr>
  169. <tr name="79" id="79">
  170. <td><a id="l79" class='ln'>79</a></td><td><span class="ct"> * guess if initial output as well</span></td></tr>
  171. <tr name="80" id="80">
  172. <td><a id="l80" class='ln'>80</a></td><td><span class="ct"> */</span></td></tr>
  173. <tr name="81" id="81">
  174. <td><a id="l81" class='ln'>81</a></td><td> <span class="kw">if</span> ((<a id="81c8" class="tk">newIdx</a> <a id="81c15" class="tk">==</a> 0) <a id="81c21" class="tk">&amp;&amp;</a> (<a id="81c25" class="tk">oldestIdx</a> <a id="81c35" class="tk">==</a>0 ) <a id="81c41" class="tk">&amp;&amp;</a> (<a id="81c45" class="tk">tMinusDelay</a> <a id="81c57" class="tk">&gt;</a> <a id="81c59" class="tk">tStart</a>))</td></tr>
  175. <tr name="82" id="82">
  176. <td><a id="l82" class='ln'>82</a></td><td> <span class="kw">return</span> <a id="82c12" class="tk">initOutput</a>;</td></tr>
  177. <tr name="83" id="83">
  178. <td><a id="l83" class='ln'>83</a></td><td></td></tr>
  179. <tr name="84" id="84">
  180. <td><a id="l84" class='ln'>84</a></td><td> <span class="ct">/*</span></td></tr>
  181. <tr name="85" id="85">
  182. <td><a id="l85" class='ln'>85</a></td><td><span class="ct"> * If tMinusDelay is less than zero, should output initial value</span></td></tr>
  183. <tr name="86" id="86">
  184. <td><a id="l86" class='ln'>86</a></td><td><span class="ct"> */</span></td></tr>
  185. <tr name="87" id="87">
  186. <td><a id="l87" class='ln'>87</a></td><td> <span class="kw">if</span> (<a id="87c7" class="tk">tMinusDelay</a> <a id="87c19" class="tk">&lt;=</a> <a id="87c22" class="tk">tStart</a>)</td></tr>
  187. <tr name="88" id="88">
  188. <td><a id="l88" class='ln'>88</a></td><td> <span class="kw">return</span> <a id="88c12" class="tk">initOutput</a>;</td></tr>
  189. <tr name="89" id="89">
  190. <td><a id="l89" class='ln'>89</a></td><td></td></tr>
  191. <tr name="90" id="90">
  192. <td><a id="l90" class='ln'>90</a></td><td> <span class="ct">/* For fixed buffer extrapolation:</span></td></tr>
  193. <tr name="91" id="91">
  194. <td><a id="l91" class='ln'>91</a></td><td><span class="ct"> * if tMinusDelay is small than the time at oldestIdx, if discrete, output</span></td></tr>
  195. <tr name="92" id="92">
  196. <td><a id="l92" class='ln'>92</a></td><td><span class="ct"> * tailptr value, else use tailptr and tailptr+1 value to extrapolate</span></td></tr>
  197. <tr name="93" id="93">
  198. <td><a id="l93" class='ln'>93</a></td><td><span class="ct"> * It is also for fixed buffer. Note: The same condition can happen for transport delay block where</span></td></tr>
  199. <tr name="94" id="94">
  200. <td><a id="l94" class='ln'>94</a></td><td><span class="ct"> * use tStart and and t[tail] other than using t[tail] and t[tail+1].</span></td></tr>
  201. <tr name="95" id="95">
  202. <td><a id="l95" class='ln'>95</a></td><td><span class="ct"> * See below</span></td></tr>
  203. <tr name="96" id="96">
  204. <td><a id="l96" class='ln'>96</a></td><td><span class="ct"> */</span></td></tr>
  205. <tr name="97" id="97">
  206. <td><a id="l97" class='ln'>97</a></td><td> <span class="kw">if</span> ((<a id="97c8" class="tk">tMinusDelay</a> <a id="97c20" class="tk">&lt;=</a> <a id="97c23" class="tk">tBuf</a>[<a id="97c28" class="tk">oldestIdx</a>] ) ) <span class="br">{</span></td></tr>
  207. <tr name="98" id="98">
  208. <td><a id="l98" class='ln'>98</a></td><td> <span class="kw">if</span> (<a id="98c9" class="tk">discrete</a>) <span class="br">{</span></td></tr>
  209. <tr name="99" id="99">
  210. <td><a id="l99" class='ln'>99</a></td><td> <span class="kw">return</span>(<a id="99c14" class="tk">uBuf</a>[<a id="99c19" class="tk">oldestIdx</a>]);</td></tr>
  211. <tr name="100" id="100">
  212. <td><a id="l100" class='ln'>100</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  213. <tr name="101" id="101">
  214. <td><a id="l101" class='ln'>101</a></td><td> <a id="101c7" class="tk">int_T</a> <a id="101c13" class="tk">tempIdx</a>= <a id="101c22" class="tk">oldestIdx</a> <a id="101c32" class="tk">+</a> 1;</td></tr>
  215. <tr name="102" id="102">
  216. <td><a id="l102" class='ln'>102</a></td><td> <span class="kw">if</span> (<a id="102c11" class="tk">oldestIdx</a> <a id="102c21" class="tk">==</a> <a id="102c24" class="tk">bufSz</a><a id="102c29" class="tk">-</a>1)</td></tr>
  217. <tr name="103" id="103">
  218. <td><a id="l103" class='ln'>103</a></td><td> <a id="103c9" class="tk">tempIdx</a> = 0;</td></tr>
  219. <tr name="104" id="104">
  220. <td><a id="l104" class='ln'>104</a></td><td> <a id="104c7" class="tk">t1</a>= <a id="104c11" class="tk">tBuf</a>[<a id="104c16" class="tk">oldestIdx</a>];</td></tr>
  221. <tr name="105" id="105">
  222. <td><a id="l105" class='ln'>105</a></td><td> <a id="105c7" class="tk">t2</a>= <a id="105c11" class="tk">tBuf</a>[<a id="105c16" class="tk">tempIdx</a>];</td></tr>
  223. <tr name="106" id="106">
  224. <td><a id="l106" class='ln'>106</a></td><td> <a id="106c7" class="tk">u1</a>= <a id="106c11" class="tk">uBuf</a>[<a id="106c16" class="tk">oldestIdx</a>];</td></tr>
  225. <tr name="107" id="107">
  226. <td><a id="l107" class='ln'>107</a></td><td> <a id="107c7" class="tk">u2</a>= <a id="107c11" class="tk">uBuf</a>[<a id="107c16" class="tk">tempIdx</a>];</td></tr>
  227. <tr name="108" id="108">
  228. <td><a id="l108" class='ln'>108</a></td><td> <span class="kw">if</span> (<a id="108c11" class="tk">t2</a> <a id="108c14" class="tk">==</a> <a id="108c17" class="tk">t1</a>) <span class="br">{</span></td></tr>
  229. <tr name="109" id="109">
  230. <td><a id="l109" class='ln'>109</a></td><td> <span class="kw">if</span> (<a id="109c13" class="tk">tMinusDelay</a> <a id="109c25" class="tk">&gt;=</a> <a id="109c28" class="tk">t2</a>) <span class="br">{</span></td></tr>
  231. <tr name="110" id="110">
  232. <td><a id="l110" class='ln'>110</a></td><td> <a id="110c11" class="tk">yout</a> = <a id="110c18" class="tk">u2</a>;</td></tr>
  233. <tr name="111" id="111">
  234. <td><a id="l111" class='ln'>111</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  235. <tr name="112" id="112">
  236. <td><a id="l112" class='ln'>112</a></td><td> <a id="112c11" class="tk">yout</a> = <a id="112c18" class="tk">u1</a>;</td></tr>
  237. <tr name="113" id="113">
  238. <td><a id="l113" class='ln'>113</a></td><td> <span class="br">}</span></td></tr>
  239. <tr name="114" id="114">
  240. <td><a id="l114" class='ln'>114</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  241. <tr name="115" id="115">
  242. <td><a id="l115" class='ln'>115</a></td><td> <a id="115c9" class="tk">real_T</a> <a id="115c16" class="tk">f1</a> = (<a id="115c22" class="tk">t2</a><a id="115c24" class="tk">-</a><a id="115c25" class="tk">tMinusDelay</a>) <a id="115c38" class="tk">/</a> (<a id="115c41" class="tk">t2</a><a id="115c43" class="tk">-</a><a id="115c44" class="tk">t1</a>);</td></tr>
  243. <tr name="116" id="116">
  244. <td><a id="l116" class='ln'>116</a></td><td> <a id="116c9" class="tk">real_T</a> <a id="116c16" class="tk">f2</a> = 1.0 <a id="116c25" class="tk">-</a> <a id="116c27" class="tk">f1</a>;</td></tr>
  245. <tr name="117" id="117">
  246. <td><a id="l117" class='ln'>117</a></td><td></td></tr>
  247. <tr name="118" id="118">
  248. <td><a id="l118" class='ln'>118</a></td><td> <span class="ct">/*</span></td></tr>
  249. <tr name="119" id="119">
  250. <td><a id="l119" class='ln'>119</a></td><td><span class="ct"> * Use Lagrange's interpolation formula. Exact outputs at t1, t2.</span></td></tr>
  251. <tr name="120" id="120">
  252. <td><a id="l120" class='ln'>120</a></td><td><span class="ct"> */</span></td></tr>
  253. <tr name="121" id="121">
  254. <td><a id="l121" class='ln'>121</a></td><td> <a id="121c9" class="tk">yout</a> = <a id="121c16" class="tk">f1</a><a id="121c18" class="tk">*</a><a id="121c19" class="tk">u1</a> <a id="121c22" class="tk">+</a> <a id="121c24" class="tk">f2</a><a id="121c26" class="tk">*</a><a id="121c27" class="tk">u2</a>;</td></tr>
  255. <tr name="122" id="122">
  256. <td><a id="l122" class='ln'>122</a></td><td> <span class="br">}</span></td></tr>
  257. <tr name="123" id="123">
  258. <td><a id="l123" class='ln'>123</a></td><td></td></tr>
  259. <tr name="124" id="124">
  260. <td><a id="l124" class='ln'>124</a></td><td> <span class="kw">return</span> <a id="124c14" class="tk">yout</a>;</td></tr>
  261. <tr name="125" id="125">
  262. <td><a id="l125" class='ln'>125</a></td><td> <span class="br">}</span></td></tr>
  263. <tr name="126" id="126">
  264. <td><a id="l126" class='ln'>126</a></td><td> <span class="br">}</span></td></tr>
  265. <tr name="127" id="127">
  266. <td><a id="l127" class='ln'>127</a></td><td></td></tr>
  267. <tr name="128" id="128">
  268. <td><a id="l128" class='ln'>128</a></td><td> <span class="ct">/*</span></td></tr>
  269. <tr name="129" id="129">
  270. <td><a id="l129" class='ln'>129</a></td><td><span class="ct"> * When block does not have direct feedthrough, we use the table of</span></td></tr>
  271. <tr name="130" id="130">
  272. <td><a id="l130" class='ln'>130</a></td><td><span class="ct"> * values to extrapolate off the end of the table for delays that are less</span></td></tr>
  273. <tr name="131" id="131">
  274. <td><a id="l131" class='ln'>131</a></td><td><span class="ct"> * than 0 (less then step size). This is not completely accurate. The</span></td></tr>
  275. <tr name="132" id="132">
  276. <td><a id="l132" class='ln'>132</a></td><td><span class="ct"> * chain of events is as follows for a given time t. Major output - look</span></td></tr>
  277. <tr name="133" id="133">
  278. <td><a id="l133" class='ln'>133</a></td><td><span class="ct"> * in table. Update - add entry to table. Now, if we call the output at</span></td></tr>
  279. <tr name="134" id="134">
  280. <td><a id="l134" class='ln'>134</a></td><td><span class="ct"> * time t again, there is a new entry in the table. For very small delays,</span></td></tr>
  281. <tr name="135" id="135">
  282. <td><a id="l135" class='ln'>135</a></td><td><span class="ct"> * this means that we will have a different answer from the previous call</span></td></tr>
  283. <tr name="136" id="136">
  284. <td><a id="l136" class='ln'>136</a></td><td><span class="ct"> * to the output fcn at the same time t. The following code prevents this</span></td></tr>
  285. <tr name="137" id="137">
  286. <td><a id="l137" class='ln'>137</a></td><td><span class="ct"> * from happening.</span></td></tr>
  287. <tr name="138" id="138">
  288. <td><a id="l138" class='ln'>138</a></td><td><span class="ct"> */</span></td></tr>
  289. <tr name="139" id="139">
  290. <td><a id="l139" class='ln'>139</a></td><td> <span class="kw">if</span> (<a id="139c7" class="tk">minorStepAndTAtLastMajorOutput</a>) <span class="br">{</span></td></tr>
  291. <tr name="140" id="140">
  292. <td><a id="l140" class='ln'>140</a></td><td> <span class="ct">/* pretend that the new entry has not been added to table */</span></td></tr>
  293. <tr name="141" id="141">
  294. <td><a id="l141" class='ln'>141</a></td><td> <span class="kw">if</span> (<a id="141c9" class="tk">newIdx</a> <a id="141c16" class="tk">!=</a> 0) <span class="br">{</span></td></tr>
  295. <tr name="142" id="142">
  296. <td><a id="l142" class='ln'>142</a></td><td> <span class="kw">if</span> (<a id="142c11" class="tk">*</a><a id="142c12" class="tk">lastIdx</a> <a id="142c20" class="tk">==</a> <a id="142c23" class="tk">newIdx</a>) <span class="br">{</span></td></tr>
  297. <tr name="143" id="143">
  298. <td><a id="l143" class='ln'>143</a></td><td> (<a id="143c10" class="tk">*</a><a id="143c11" class="tk">lastIdx</a>)<a id="143c19" class="tk">--</a>;</td></tr>
  299. <tr name="144" id="144">
  300. <td><a id="l144" class='ln'>144</a></td><td> <span class="br">}</span></td></tr>
  301. <tr name="145" id="145">
  302. <td><a id="l145" class='ln'>145</a></td><td></td></tr>
  303. <tr name="146" id="146">
  304. <td><a id="l146" class='ln'>146</a></td><td> <a id="146c7" class="tk">newIdx</a><a id="146c13" class="tk">--</a>;</td></tr>
  305. <tr name="147" id="147">
  306. <td><a id="l147" class='ln'>147</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  307. <tr name="148" id="148">
  308. <td><a id="l148" class='ln'>148</a></td><td> <span class="kw">if</span> (<a id="148c11" class="tk">*</a><a id="148c12" class="tk">lastIdx</a> <a id="148c20" class="tk">==</a> <a id="148c23" class="tk">newIdx</a>) <span class="br">{</span></td></tr>
  309. <tr name="149" id="149">
  310. <td><a id="l149" class='ln'>149</a></td><td> <a id="149c9" class="tk">*</a><a id="149c10" class="tk">lastIdx</a> = <a id="149c20" class="tk">bufSz</a><a id="149c25" class="tk">-</a>1;</td></tr>
  311. <tr name="150" id="150">
  312. <td><a id="l150" class='ln'>150</a></td><td> <span class="br">}</span></td></tr>
  313. <tr name="151" id="151">
  314. <td><a id="l151" class='ln'>151</a></td><td></td></tr>
  315. <tr name="152" id="152">
  316. <td><a id="l152" class='ln'>152</a></td><td> <a id="152c7" class="tk">newIdx</a> = <a id="152c16" class="tk">bufSz</a> <a id="152c22" class="tk">-</a> 1;</td></tr>
  317. <tr name="153" id="153">
  318. <td><a id="l153" class='ln'>153</a></td><td> <span class="br">}</span></td></tr>
  319. <tr name="154" id="154">
  320. <td><a id="l154" class='ln'>154</a></td><td> <span class="br">}</span></td></tr>
  321. <tr name="155" id="155">
  322. <td><a id="l155" class='ln'>155</a></td><td></td></tr>
  323. <tr name="156" id="156">
  324. <td><a id="l156" class='ln'>156</a></td><td> <a id="156c3" class="tk">i</a> = <a id="156c7" class="tk">*</a><a id="156c8" class="tk">lastIdx</a>;</td></tr>
  325. <tr name="157" id="157">
  326. <td><a id="l157" class='ln'>157</a></td><td> <span class="kw">if</span> (<a id="157c7" class="tk">tBuf</a>[<a id="157c12" class="tk">i</a>] <a id="157c15" class="tk">&lt;</a> <a id="157c17" class="tk">tMinusDelay</a>) <span class="br">{</span></td></tr>
  327. <tr name="158" id="158">
  328. <td><a id="l158" class='ln'>158</a></td><td> <span class="ct">/* Look forward starting at last index */</span></td></tr>
  329. <tr name="159" id="159">
  330. <td><a id="l159" class='ln'>159</a></td><td> <span class="kw">while</span> (<a id="159c12" class="tk">tBuf</a>[<a id="159c17" class="tk">i</a>] <a id="159c20" class="tk">&lt;</a> <a id="159c22" class="tk">tMinusDelay</a>) <span class="br">{</span></td></tr>
  331. <tr name="160" id="160">
  332. <td><a id="l160" class='ln'>160</a></td><td> <span class="ct">/* May occur if the delay is less than step-size - extrapolate */</span></td></tr>
  333. <tr name="161" id="161">
  334. <td><a id="l161" class='ln'>161</a></td><td> <span class="kw">if</span> (<a id="161c11" class="tk">i</a> <a id="161c13" class="tk">==</a> <a id="161c16" class="tk">newIdx</a>)</td></tr>
  335. <tr name="162" id="162">
  336. <td><a id="l162" class='ln'>162</a></td><td> <span class="kw">break</span>;</td></tr>
  337. <tr name="163" id="163">
  338. <td><a id="l163" class='ln'>163</a></td><td> <a id="163c7" class="tk">i</a> = ( <a id="163c13" class="tk">i</a> <a id="163c15" class="tk">&lt;</a> (<a id="163c18" class="tk">bufSz</a><a id="163c23" class="tk">-</a>1) ) <a id="163c29" class="tk">?</a> (<a id="163c32" class="tk">i</a><a id="163c33" class="tk">+</a>1) <a id="163c37" class="tk">:</a> 0;<span class="ct">/* move through buffer */</span></td></tr>
  339. <tr name="164" id="164">
  340. <td><a id="l164" class='ln'>164</a></td><td> <span class="br">}</span></td></tr>
  341. <tr name="165" id="165">
  342. <td><a id="l165" class='ln'>165</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  343. <tr name="166" id="166">
  344. <td><a id="l166" class='ln'>166</a></td><td> <span class="ct">/*</span></td></tr>
  345. <tr name="167" id="167">
  346. <td><a id="l167" class='ln'>167</a></td><td><span class="ct"> * Look backwards starting at last index which can happen when the</span></td></tr>
  347. <tr name="168" id="168">
  348. <td><a id="l168" class='ln'>168</a></td><td><span class="ct"> * delay time increases.</span></td></tr>
  349. <tr name="169" id="169">
  350. <td><a id="l169" class='ln'>169</a></td><td><span class="ct"> */</span></td></tr>
  351. <tr name="170" id="170">
  352. <td><a id="l170" class='ln'>170</a></td><td> <span class="kw">while</span> (<a id="170c12" class="tk">tBuf</a>[<a id="170c17" class="tk">i</a>] <a id="170c20" class="tk">&gt;=</a> <a id="170c23" class="tk">tMinusDelay</a>) <span class="br">{</span></td></tr>
  353. <tr name="171" id="171">
  354. <td><a id="l171" class='ln'>171</a></td><td> <span class="ct">/*</span></td></tr>
  355. <tr name="172" id="172">
  356. <td><a id="l172" class='ln'>172</a></td><td><span class="ct"> * Due to the entry condition at top of function, we</span></td></tr>
  357. <tr name="173" id="173">
  358. <td><a id="l173" class='ln'>173</a></td><td><span class="ct"> * should never hit the end.</span></td></tr>
  359. <tr name="174" id="174">
  360. <td><a id="l174" class='ln'>174</a></td><td><span class="ct"> */</span></td></tr>
  361. <tr name="175" id="175">
  362. <td><a id="l175" class='ln'>175</a></td><td> <a id="175c7" class="tk">i</a> = (<a id="175c12" class="tk">i</a> <a id="175c14" class="tk">&gt;</a> 0) <a id="175c19" class="tk">?</a> <a id="175c21" class="tk">i</a><a id="175c22" class="tk">-</a>1 <a id="175c25" class="tk">:</a> (<a id="175c28" class="tk">bufSz</a><a id="175c33" class="tk">-</a>1); <span class="ct">/* move through buffer */</span></td></tr>
  363. <tr name="176" id="176">
  364. <td><a id="l176" class='ln'>176</a></td><td> <span class="br">}</span></td></tr>
  365. <tr name="177" id="177">
  366. <td><a id="l177" class='ln'>177</a></td><td></td></tr>
  367. <tr name="178" id="178">
  368. <td><a id="l178" class='ln'>178</a></td><td> <a id="178c5" class="tk">i</a> = ( <a id="178c11" class="tk">i</a> <a id="178c13" class="tk">&lt;</a> (<a id="178c16" class="tk">bufSz</a><a id="178c21" class="tk">-</a>1) ) <a id="178c27" class="tk">?</a> (<a id="178c30" class="tk">i</a><a id="178c31" class="tk">+</a>1) <a id="178c35" class="tk">:</a> 0;</td></tr>
  369. <tr name="179" id="179">
  370. <td><a id="l179" class='ln'>179</a></td><td> <span class="br">}</span></td></tr>
  371. <tr name="180" id="180">
  372. <td><a id="l180" class='ln'>180</a></td><td></td></tr>
  373. <tr name="181" id="181">
  374. <td><a id="l181" class='ln'>181</a></td><td> <a id="181c3" class="tk">*</a><a id="181c4" class="tk">lastIdx</a> = <a id="181c14" class="tk">i</a>;</td></tr>
  375. <tr name="182" id="182">
  376. <td><a id="l182" class='ln'>182</a></td><td> <span class="kw">if</span> (<a id="182c7" class="tk">discrete</a>) <span class="br">{</span></td></tr>
  377. <tr name="183" id="183">
  378. <td><a id="l183" class='ln'>183</a></td><td> <span class="ct">/*</span></td></tr>
  379. <tr name="184" id="184">
  380. <td><a id="l184" class='ln'>184</a></td><td><span class="ct"> * tempEps = 128 * eps;</span></td></tr>
  381. <tr name="185" id="185">
  382. <td><a id="l185" class='ln'>185</a></td><td><span class="ct"> * localEps = max(tempEps, tempEps*fabs(tBuf[i]))/2;</span></td></tr>
  383. <tr name="186" id="186">
  384. <td><a id="l186" class='ln'>186</a></td><td><span class="ct"> */</span></td></tr>
  385. <tr name="187" id="187">
  386. <td><a id="l187" class='ln'>187</a></td><td> <span class="kw">double</span> <a id="187c12" class="tk">tempEps</a> = (<a id="187c23" class="tk">DBL_EPSILON</a>) <a id="187c36" class="tk">*</a> 128.0;</td></tr>
  387. <tr name="188" id="188">
  388. <td><a id="l188" class='ln'>188</a></td><td> <span class="kw">double</span> <a id="188c12" class="tk">localEps</a> = <a id="188c23" class="tk">tempEps</a> <a id="188c31" class="tk">*</a> <a id="188c33" class="tk">fabs</a>(<a id="188c38" class="tk">tBuf</a>[<a id="188c43" class="tk">i</a>]);</td></tr>
  389. <tr name="189" id="189">
  390. <td><a id="l189" class='ln'>189</a></td><td> <span class="kw">if</span> (<a id="189c9" class="tk">tempEps</a> <a id="189c17" class="tk">&gt;</a> <a id="189c19" class="tk">localEps</a>) <span class="br">{</span></td></tr>
  391. <tr name="190" id="190">
  392. <td><a id="l190" class='ln'>190</a></td><td> <a id="190c7" class="tk">localEps</a> = <a id="190c18" class="tk">tempEps</a>;</td></tr>
  393. <tr name="191" id="191">
  394. <td><a id="l191" class='ln'>191</a></td><td> <span class="br">}</span></td></tr>
  395. <tr name="192" id="192">
  396. <td><a id="l192" class='ln'>192</a></td><td></td></tr>
  397. <tr name="193" id="193">
  398. <td><a id="l193" class='ln'>193</a></td><td> <a id="193c5" class="tk">localEps</a> = <a id="193c16" class="tk">localEps</a> <a id="193c25" class="tk">/</a> 2.0;</td></tr>
  399. <tr name="194" id="194">
  400. <td><a id="l194" class='ln'>194</a></td><td> <span class="kw">if</span> (<a id="194c9" class="tk">tMinusDelay</a> <a id="194c21" class="tk">&gt;=</a> (<a id="194c25" class="tk">tBuf</a>[<a id="194c30" class="tk">i</a>] <a id="194c33" class="tk">-</a> <a id="194c35" class="tk">localEps</a>)) <span class="br">{</span></td></tr>
  401. <tr name="195" id="195">
  402. <td><a id="l195" class='ln'>195</a></td><td> <a id="195c7" class="tk">yout</a> = <a id="195c14" class="tk">uBuf</a>[<a id="195c19" class="tk">i</a>];</td></tr>
  403. <tr name="196" id="196">
  404. <td><a id="l196" class='ln'>196</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  405. <tr name="197" id="197">
  406. <td><a id="l197" class='ln'>197</a></td><td> <span class="kw">if</span> (<a id="197c11" class="tk">i</a> <a id="197c13" class="tk">==</a> 0) <span class="br">{</span></td></tr>
  407. <tr name="198" id="198">
  408. <td><a id="l198" class='ln'>198</a></td><td> <a id="198c9" class="tk">yout</a> = <a id="198c16" class="tk">uBuf</a>[<a id="198c21" class="tk">bufSz</a><a id="198c26" class="tk">-</a>1];</td></tr>
  409. <tr name="199" id="199">
  410. <td><a id="l199" class='ln'>199</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  411. <tr name="200" id="200">
  412. <td><a id="l200" class='ln'>200</a></td><td> <a id="200c9" class="tk">yout</a> = <a id="200c16" class="tk">uBuf</a>[<a id="200c21" class="tk">i</a><a id="200c22" class="tk">-</a>1];</td></tr>
  413. <tr name="201" id="201">
  414. <td><a id="l201" class='ln'>201</a></td><td> <span class="br">}</span></td></tr>
  415. <tr name="202" id="202">
  416. <td><a id="l202" class='ln'>202</a></td><td> <span class="br">}</span></td></tr>
  417. <tr name="203" id="203">
  418. <td><a id="l203" class='ln'>203</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  419. <tr name="204" id="204">
  420. <td><a id="l204" class='ln'>204</a></td><td> <span class="kw">if</span> (<a id="204c9" class="tk">i</a> <a id="204c11" class="tk">==</a> 0) <span class="br">{</span></td></tr>
  421. <tr name="205" id="205">
  422. <td><a id="l205" class='ln'>205</a></td><td> <a id="205c7" class="tk">t1</a> = <a id="205c12" class="tk">tBuf</a>[<a id="205c17" class="tk">bufSz</a><a id="205c22" class="tk">-</a>1];</td></tr>
  423. <tr name="206" id="206">
  424. <td><a id="l206" class='ln'>206</a></td><td> <a id="206c7" class="tk">u1</a> = <a id="206c12" class="tk">uBuf</a>[<a id="206c17" class="tk">bufSz</a><a id="206c22" class="tk">-</a>1];</td></tr>
  425. <tr name="207" id="207">
  426. <td><a id="l207" class='ln'>207</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  427. <tr name="208" id="208">
  428. <td><a id="l208" class='ln'>208</a></td><td> <a id="208c7" class="tk">t1</a> = <a id="208c12" class="tk">tBuf</a>[<a id="208c17" class="tk">i</a><a id="208c18" class="tk">-</a>1];</td></tr>
  429. <tr name="209" id="209">
  430. <td><a id="l209" class='ln'>209</a></td><td> <a id="209c7" class="tk">u1</a> = <a id="209c12" class="tk">uBuf</a>[<a id="209c17" class="tk">i</a><a id="209c18" class="tk">-</a>1];</td></tr>
  431. <tr name="210" id="210">
  432. <td><a id="l210" class='ln'>210</a></td><td> <span class="br">}</span></td></tr>
  433. <tr name="211" id="211">
  434. <td><a id="l211" class='ln'>211</a></td><td></td></tr>
  435. <tr name="212" id="212">
  436. <td><a id="l212" class='ln'>212</a></td><td> <a id="212c5" class="tk">t2</a> = <a id="212c10" class="tk">tBuf</a>[<a id="212c15" class="tk">i</a>];</td></tr>
  437. <tr name="213" id="213">
  438. <td><a id="l213" class='ln'>213</a></td><td> <a id="213c5" class="tk">u2</a> = <a id="213c10" class="tk">uBuf</a>[<a id="213c15" class="tk">i</a>];</td></tr>
  439. <tr name="214" id="214">
  440. <td><a id="l214" class='ln'>214</a></td><td> <span class="kw">if</span> (<a id="214c9" class="tk">t2</a> <a id="214c12" class="tk">==</a> <a id="214c15" class="tk">t1</a>) <span class="br">{</span></td></tr>
  441. <tr name="215" id="215">
  442. <td><a id="l215" class='ln'>215</a></td><td> <span class="kw">if</span> (<a id="215c11" class="tk">tMinusDelay</a> <a id="215c23" class="tk">&gt;=</a> <a id="215c26" class="tk">t2</a>) <span class="br">{</span></td></tr>
  443. <tr name="216" id="216">
  444. <td><a id="l216" class='ln'>216</a></td><td> <a id="216c9" class="tk">yout</a> = <a id="216c16" class="tk">u2</a>;</td></tr>
  445. <tr name="217" id="217">
  446. <td><a id="l217" class='ln'>217</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  447. <tr name="218" id="218">
  448. <td><a id="l218" class='ln'>218</a></td><td> <a id="218c9" class="tk">yout</a> = <a id="218c16" class="tk">u1</a>;</td></tr>
  449. <tr name="219" id="219">
  450. <td><a id="l219" class='ln'>219</a></td><td> <span class="br">}</span></td></tr>
  451. <tr name="220" id="220">
  452. <td><a id="l220" class='ln'>220</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  453. <tr name="221" id="221">
  454. <td><a id="l221" class='ln'>221</a></td><td> <a id="221c7" class="tk">real_T</a> <a id="221c14" class="tk">f1</a> = (<a id="221c20" class="tk">t2</a><a id="221c22" class="tk">-</a><a id="221c23" class="tk">tMinusDelay</a>) <a id="221c36" class="tk">/</a> (<a id="221c39" class="tk">t2</a><a id="221c41" class="tk">-</a><a id="221c42" class="tk">t1</a>);</td></tr>
  455. <tr name="222" id="222">
  456. <td><a id="l222" class='ln'>222</a></td><td> <a id="222c7" class="tk">real_T</a> <a id="222c14" class="tk">f2</a> = 1.0 <a id="222c23" class="tk">-</a> <a id="222c25" class="tk">f1</a>;</td></tr>
  457. <tr name="223" id="223">
  458. <td><a id="l223" class='ln'>223</a></td><td></td></tr>
  459. <tr name="224" id="224">
  460. <td><a id="l224" class='ln'>224</a></td><td> <span class="ct">/*</span></td></tr>
  461. <tr name="225" id="225">
  462. <td><a id="l225" class='ln'>225</a></td><td><span class="ct"> * Use Lagrange's interpolation formula. Exact outputs at t1, t2.</span></td></tr>
  463. <tr name="226" id="226">
  464. <td><a id="l226" class='ln'>226</a></td><td><span class="ct"> */</span></td></tr>
  465. <tr name="227" id="227">
  466. <td><a id="l227" class='ln'>227</a></td><td> <a id="227c7" class="tk">yout</a> = <a id="227c14" class="tk">f1</a><a id="227c16" class="tk">*</a><a id="227c17" class="tk">u1</a> <a id="227c20" class="tk">+</a> <a id="227c22" class="tk">f2</a><a id="227c24" class="tk">*</a><a id="227c25" class="tk">u2</a>;</td></tr>
  467. <tr name="228" id="228">
  468. <td><a id="l228" class='ln'>228</a></td><td> <span class="br">}</span></td></tr>
  469. <tr name="229" id="229">
  470. <td><a id="l229" class='ln'>229</a></td><td> <span class="br">}</span></td></tr>
  471. <tr name="230" id="230">
  472. <td><a id="l230" class='ln'>230</a></td><td></td></tr>
  473. <tr name="231" id="231">
  474. <td><a id="l231" class='ln'>231</a></td><td> <span class="kw">return</span>(<a id="231c10" class="tk">yout</a>);</td></tr>
  475. <tr name="232" id="232">
  476. <td><a id="l232" class='ln'>232</a></td><td><span class="br">}</span></td></tr>
  477. <tr name="233" id="233">
  478. <td><a id="l233" class='ln'>233</a></td><td></td></tr>
  479. <tr name="234" id="234">
  480. <td><a id="l234" class='ln'>234</a></td><td><a id="234c1" class="tk">real_T</a> <a id="234c8" class="tk">PWM_look1_binlx</a>(<a id="234c24" class="tk">real_T</a> <a id="234c31" class="tk">u0</a>, <span class="kw">const</span> <a id="234c41" class="tk">real_T</a> <a id="234c48" class="tk">bp0</a>[], <span class="kw">const</span> <a id="234c61" class="tk">real_T</a> <a id="234c68" class="tk">table</a>[],</td></tr>
  481. <tr name="235" id="235">
  482. <td><a id="l235" class='ln'>235</a></td><td> <a id="235c3" class="tk">uint32_T</a> <a id="235c12" class="tk">maxIndex</a>)</td></tr>
  483. <tr name="236" id="236">
  484. <td><a id="l236" class='ln'>236</a></td><td><span class="br">{</span></td></tr>
  485. <tr name="237" id="237">
  486. <td><a id="l237" class='ln'>237</a></td><td> <a id="237c3" class="tk">real_T</a> <a id="237c10" class="tk">frac</a>;</td></tr>
  487. <tr name="238" id="238">
  488. <td><a id="l238" class='ln'>238</a></td><td> <a id="238c3" class="tk">real_T</a> <a id="238c10" class="tk">yL_0d0</a>;</td></tr>
  489. <tr name="239" id="239">
  490. <td><a id="l239" class='ln'>239</a></td><td> <a id="239c3" class="tk">uint32_T</a> <a id="239c12" class="tk">bpIdx</a>;</td></tr>
  491. <tr name="240" id="240">
  492. <td><a id="l240" class='ln'>240</a></td><td> <a id="240c3" class="tk">uint32_T</a> <a id="240c12" class="tk">iLeft</a>;</td></tr>
  493. <tr name="241" id="241">
  494. <td><a id="l241" class='ln'>241</a></td><td> <a id="241c3" class="tk">uint32_T</a> <a id="241c12" class="tk">iRght</a>;</td></tr>
  495. <tr name="242" id="242">
  496. <td><a id="l242" class='ln'>242</a></td><td></td></tr>
  497. <tr name="243" id="243">
  498. <td><a id="l243" class='ln'>243</a></td><td> <span class="ct">/* Column-major Lookup 1-D</span></td></tr>
  499. <tr name="244" id="244">
  500. <td><a id="l244" class='ln'>244</a></td><td><span class="ct"> Search method: 'binary'</span></td></tr>
  501. <tr name="245" id="245">
  502. <td><a id="l245" class='ln'>245</a></td><td><span class="ct"> Use previous index: 'off'</span></td></tr>
  503. <tr name="246" id="246">
  504. <td><a id="l246" class='ln'>246</a></td><td><span class="ct"> Interpolation method: 'Linear point-slope'</span></td></tr>
  505. <tr name="247" id="247">
  506. <td><a id="l247" class='ln'>247</a></td><td><span class="ct"> Extrapolation method: 'Linear'</span></td></tr>
  507. <tr name="248" id="248">
  508. <td><a id="l248" class='ln'>248</a></td><td><span class="ct"> Use last breakpoint for index at or above upper limit: 'off'</span></td></tr>
  509. <tr name="249" id="249">
  510. <td><a id="l249" class='ln'>249</a></td><td><span class="ct"> Remove protection against out-of-range input in generated code: 'off'</span></td></tr>
  511. <tr name="250" id="250">
  512. <td><a id="l250" class='ln'>250</a></td><td><span class="ct"> */</span></td></tr>
  513. <tr name="251" id="251">
  514. <td><a id="l251" class='ln'>251</a></td><td> <span class="ct">/* Prelookup - Index and Fraction</span></td></tr>
  515. <tr name="252" id="252">
  516. <td><a id="l252" class='ln'>252</a></td><td><span class="ct"> Index Search method: 'binary'</span></td></tr>
  517. <tr name="253" id="253">
  518. <td><a id="l253" class='ln'>253</a></td><td><span class="ct"> Extrapolation method: 'Linear'</span></td></tr>
  519. <tr name="254" id="254">
  520. <td><a id="l254" class='ln'>254</a></td><td><span class="ct"> Use previous index: 'off'</span></td></tr>
  521. <tr name="255" id="255">
  522. <td><a id="l255" class='ln'>255</a></td><td><span class="ct"> Use last breakpoint for index at or above upper limit: 'off'</span></td></tr>
  523. <tr name="256" id="256">
  524. <td><a id="l256" class='ln'>256</a></td><td><span class="ct"> Remove protection against out-of-range input in generated code: 'off'</span></td></tr>
  525. <tr name="257" id="257">
  526. <td><a id="l257" class='ln'>257</a></td><td><span class="ct"> */</span></td></tr>
  527. <tr name="258" id="258">
  528. <td><a id="l258" class='ln'>258</a></td><td> <span class="kw">if</span> (<a id="258c7" class="tk">u0</a> <a id="258c10" class="tk">&lt;=</a> <a id="258c13" class="tk">bp0</a>[0U]) <span class="br">{</span></td></tr>
  529. <tr name="259" id="259">
  530. <td><a id="l259" class='ln'>259</a></td><td> <a id="259c5" class="tk">iLeft</a> = 0U;</td></tr>
  531. <tr name="260" id="260">
  532. <td><a id="l260" class='ln'>260</a></td><td> <a id="260c5" class="tk">frac</a> = (<a id="260c13" class="tk">u0</a> <a id="260c16" class="tk">-</a> <a id="260c18" class="tk">bp0</a>[0U]) <a id="260c27" class="tk">/</a> (<a id="260c30" class="tk">bp0</a>[1U] <a id="260c38" class="tk">-</a> <a id="260c40" class="tk">bp0</a>[0U]);</td></tr>
  533. <tr name="261" id="261">
  534. <td><a id="l261" class='ln'>261</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="261c14" class="tk">u0</a> <a id="261c17" class="tk">&lt;</a> <a id="261c19" class="tk">bp0</a>[<a id="261c23" class="tk">maxIndex</a>]) <span class="br">{</span></td></tr>
  535. <tr name="262" id="262">
  536. <td><a id="l262" class='ln'>262</a></td><td> <span class="ct">/* Binary Search */</span></td></tr>
  537. <tr name="263" id="263">
  538. <td><a id="l263" class='ln'>263</a></td><td> <a id="263c5" class="tk">bpIdx</a> = <a id="263c13" class="tk">maxIndex</a> <a id="263c22" class="tk">&gt;&gt;</a> 1U;</td></tr>
  539. <tr name="264" id="264">
  540. <td><a id="l264" class='ln'>264</a></td><td> <a id="264c5" class="tk">iLeft</a> = 0U;</td></tr>
  541. <tr name="265" id="265">
  542. <td><a id="l265" class='ln'>265</a></td><td> <a id="265c5" class="tk">iRght</a> = <a id="265c13" class="tk">maxIndex</a>;</td></tr>
  543. <tr name="266" id="266">
  544. <td><a id="l266" class='ln'>266</a></td><td> <span class="kw">while</span> (<a id="266c12" class="tk">iRght</a> <a id="266c18" class="tk">-</a> <a id="266c20" class="tk">iLeft</a> <a id="266c26" class="tk">&gt;</a> 1U) <span class="br">{</span></td></tr>
  545. <tr name="267" id="267">
  546. <td><a id="l267" class='ln'>267</a></td><td> <span class="kw">if</span> (<a id="267c11" class="tk">u0</a> <a id="267c14" class="tk">&lt;</a> <a id="267c16" class="tk">bp0</a>[<a id="267c20" class="tk">bpIdx</a>]) <span class="br">{</span></td></tr>
  547. <tr name="268" id="268">
  548. <td><a id="l268" class='ln'>268</a></td><td> <a id="268c9" class="tk">iRght</a> = <a id="268c17" class="tk">bpIdx</a>;</td></tr>
  549. <tr name="269" id="269">
  550. <td><a id="l269" class='ln'>269</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  551. <tr name="270" id="270">
  552. <td><a id="l270" class='ln'>270</a></td><td> <a id="270c9" class="tk">iLeft</a> = <a id="270c17" class="tk">bpIdx</a>;</td></tr>
  553. <tr name="271" id="271">
  554. <td><a id="l271" class='ln'>271</a></td><td> <span class="br">}</span></td></tr>
  555. <tr name="272" id="272">
  556. <td><a id="l272" class='ln'>272</a></td><td></td></tr>
  557. <tr name="273" id="273">
  558. <td><a id="l273" class='ln'>273</a></td><td> <a id="273c7" class="tk">bpIdx</a> = (<a id="273c16" class="tk">iRght</a> <a id="273c22" class="tk">+</a> <a id="273c24" class="tk">iLeft</a>) <a id="273c31" class="tk">&gt;&gt;</a> 1U;</td></tr>
  559. <tr name="274" id="274">
  560. <td><a id="l274" class='ln'>274</a></td><td> <span class="br">}</span></td></tr>
  561. <tr name="275" id="275">
  562. <td><a id="l275" class='ln'>275</a></td><td></td></tr>
  563. <tr name="276" id="276">
  564. <td><a id="l276" class='ln'>276</a></td><td> <a id="276c5" class="tk">frac</a> = (<a id="276c13" class="tk">u0</a> <a id="276c16" class="tk">-</a> <a id="276c18" class="tk">bp0</a>[<a id="276c22" class="tk">iLeft</a>]) <a id="276c30" class="tk">/</a> (<a id="276c33" class="tk">bp0</a>[<a id="276c37" class="tk">iLeft</a> <a id="276c43" class="tk">+</a> 1U] <a id="276c49" class="tk">-</a> <a id="276c51" class="tk">bp0</a>[<a id="276c55" class="tk">iLeft</a>]);</td></tr>
  565. <tr name="277" id="277">
  566. <td><a id="l277" class='ln'>277</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  567. <tr name="278" id="278">
  568. <td><a id="l278" class='ln'>278</a></td><td> <a id="278c5" class="tk">iLeft</a> = <a id="278c13" class="tk">maxIndex</a> <a id="278c22" class="tk">-</a> 1U;</td></tr>
  569. <tr name="279" id="279">
  570. <td><a id="l279" class='ln'>279</a></td><td> <a id="279c5" class="tk">frac</a> = (<a id="279c13" class="tk">u0</a> <a id="279c16" class="tk">-</a> <a id="279c18" class="tk">bp0</a>[<a id="279c22" class="tk">maxIndex</a> <a id="279c31" class="tk">-</a> 1U]) <a id="279c38" class="tk">/</a> (<a id="279c41" class="tk">bp0</a>[<a id="279c45" class="tk">maxIndex</a>] <a id="279c55" class="tk">-</a> <a id="279c57" class="tk">bp0</a>[<a id="279c61" class="tk">maxIndex</a> <a id="279c70" class="tk">-</a> 1U]);</td></tr>
  571. <tr name="280" id="280">
  572. <td><a id="l280" class='ln'>280</a></td><td> <span class="br">}</span></td></tr>
  573. <tr name="281" id="281">
  574. <td><a id="l281" class='ln'>281</a></td><td></td></tr>
  575. <tr name="282" id="282">
  576. <td><a id="l282" class='ln'>282</a></td><td> <span class="ct">/* Column-major Interpolation 1-D</span></td></tr>
  577. <tr name="283" id="283">
  578. <td><a id="l283" class='ln'>283</a></td><td><span class="ct"> Interpolation method: 'Linear point-slope'</span></td></tr>
  579. <tr name="284" id="284">
  580. <td><a id="l284" class='ln'>284</a></td><td><span class="ct"> Use last breakpoint for index at or above upper limit: 'off'</span></td></tr>
  581. <tr name="285" id="285">
  582. <td><a id="l285" class='ln'>285</a></td><td><span class="ct"> Overflow mode: 'wrapping'</span></td></tr>
  583. <tr name="286" id="286">
  584. <td><a id="l286" class='ln'>286</a></td><td><span class="ct"> */</span></td></tr>
  585. <tr name="287" id="287">
  586. <td><a id="l287" class='ln'>287</a></td><td> <a id="287c3" class="tk">yL_0d0</a> = <a id="287c12" class="tk">table</a>[<a id="287c18" class="tk">iLeft</a>];</td></tr>
  587. <tr name="288" id="288">
  588. <td><a id="l288" class='ln'>288</a></td><td> <span class="kw">return</span> (<a id="288c11" class="tk">table</a>[<a id="288c17" class="tk">iLeft</a> <a id="288c23" class="tk">+</a> 1U] <a id="288c29" class="tk">-</a> <a id="288c31" class="tk">yL_0d0</a>) <a id="288c39" class="tk">*</a> <a id="288c41" class="tk">frac</a> <a id="288c46" class="tk">+</a> <a id="288c48" class="tk">yL_0d0</a>;</td></tr>
  589. <tr name="289" id="289">
  590. <td><a id="l289" class='ln'>289</a></td><td><span class="br">}</span></td></tr>
  591. <tr name="290" id="290">
  592. <td><a id="l290" class='ln'>290</a></td><td></td></tr>
  593. <tr name="291" id="291">
  594. <td><a id="l291" class='ln'>291</a></td><td><span class="kw">static</span> <a id="291c8" class="tk">real_T</a> <a id="291c15" class="tk">PWM_rt_remd_snf</a>(<a id="291c31" class="tk">real_T</a> <a id="291c38" class="tk">u0</a>, <a id="291c42" class="tk">real_T</a> <a id="291c49" class="tk">u1</a>)</td></tr>
  595. <tr name="292" id="292">
  596. <td><a id="l292" class='ln'>292</a></td><td><span class="br">{</span></td></tr>
  597. <tr name="293" id="293">
  598. <td><a id="l293" class='ln'>293</a></td><td> <a id="293c3" class="tk">real_T</a> <a id="293c10" class="tk">q</a>;</td></tr>
  599. <tr name="294" id="294">
  600. <td><a id="l294" class='ln'>294</a></td><td> <a id="294c3" class="tk">real_T</a> <a id="294c10" class="tk">y</a>;</td></tr>
  601. <tr name="295" id="295">
  602. <td><a id="l295" class='ln'>295</a></td><td> <span class="kw">if</span> (<a id="295c7" class="tk">rtIsNaN</a>(<a id="295c15" class="tk">u0</a>) <a id="295c19" class="tk">||</a> <a id="295c22" class="tk">rtIsNaN</a>(<a id="295c30" class="tk">u1</a>) <a id="295c34" class="tk">||</a> <a id="295c37" class="tk">rtIsInf</a>(<a id="295c45" class="tk">u0</a>)) <span class="br">{</span></td></tr>
  603. <tr name="296" id="296">
  604. <td><a id="l296" class='ln'>296</a></td><td> <a id="296c5" class="tk">y</a> = (<a id="296c10" class="tk">rtNaN</a>);</td></tr>
  605. <tr name="297" id="297">
  606. <td><a id="l297" class='ln'>297</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="297c14" class="tk">rtIsInf</a>(<a id="297c22" class="tk">u1</a>)) <span class="br">{</span></td></tr>
  607. <tr name="298" id="298">
  608. <td><a id="l298" class='ln'>298</a></td><td> <a id="298c5" class="tk">y</a> = <a id="298c9" class="tk">u0</a>;</td></tr>
  609. <tr name="299" id="299">
  610. <td><a id="l299" class='ln'>299</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> ((<a id="299c15" class="tk">u1</a> <a id="299c18" class="tk">!=</a> 0.0) <a id="299c26" class="tk">&amp;&amp;</a> (<a id="299c30" class="tk">u1</a> <a id="299c33" class="tk">!=</a> <a id="299c36" class="tk">trunc</a>(<a id="299c42" class="tk">u1</a>))) <span class="br">{</span></td></tr>
  611. <tr name="300" id="300">
  612. <td><a id="l300" class='ln'>300</a></td><td> <a id="300c5" class="tk">q</a> = <a id="300c9" class="tk">fabs</a>(<a id="300c14" class="tk">u0</a> <a id="300c17" class="tk">/</a> <a id="300c19" class="tk">u1</a>);</td></tr>
  613. <tr name="301" id="301">
  614. <td><a id="l301" class='ln'>301</a></td><td> <span class="kw">if</span> (<a id="301c9" class="tk">!</a>(<a id="301c11" class="tk">fabs</a>(<a id="301c16" class="tk">q</a> <a id="301c18" class="tk">-</a> <a id="301c20" class="tk">floor</a>(<a id="301c26" class="tk">q</a> <a id="301c28" class="tk">+</a> 0.5)) <a id="301c36" class="tk">&gt;</a> <a id="301c38" class="tk">DBL_EPSILON</a> <a id="301c50" class="tk">*</a> <a id="301c52" class="tk">q</a>)) <span class="br">{</span></td></tr>
  615. <tr name="302" id="302">
  616. <td><a id="l302" class='ln'>302</a></td><td> <a id="302c7" class="tk">y</a> = 0.0 <a id="302c15" class="tk">*</a> <a id="302c17" class="tk">u0</a>;</td></tr>
  617. <tr name="303" id="303">
  618. <td><a id="l303" class='ln'>303</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  619. <tr name="304" id="304">
  620. <td><a id="l304" class='ln'>304</a></td><td> <a id="304c7" class="tk">y</a> = <a id="304c11" class="tk">fmod</a>(<a id="304c16" class="tk">u0</a>, <a id="304c20" class="tk">u1</a>);</td></tr>
  621. <tr name="305" id="305">
  622. <td><a id="l305" class='ln'>305</a></td><td> <span class="br">}</span></td></tr>
  623. <tr name="306" id="306">
  624. <td><a id="l306" class='ln'>306</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  625. <tr name="307" id="307">
  626. <td><a id="l307" class='ln'>307</a></td><td> <a id="307c5" class="tk">y</a> = <a id="307c9" class="tk">fmod</a>(<a id="307c14" class="tk">u0</a>, <a id="307c18" class="tk">u1</a>);</td></tr>
  627. <tr name="308" id="308">
  628. <td><a id="l308" class='ln'>308</a></td><td> <span class="br">}</span></td></tr>
  629. <tr name="309" id="309">
  630. <td><a id="l309" class='ln'>309</a></td><td></td></tr>
  631. <tr name="310" id="310">
  632. <td><a id="l310" class='ln'>310</a></td><td> <span class="kw">return</span> <a id="310c10" class="tk">y</a>;</td></tr>
  633. <tr name="311" id="311">
  634. <td><a id="l311" class='ln'>311</a></td><td><span class="br">}</span></td></tr>
  635. <tr name="312" id="312">
  636. <td><a id="l312" class='ln'>312</a></td><td></td></tr>
  637. <tr name="313" id="313">
  638. <td><a id="l313" class='ln'>313</a></td><td><span class="ct">/* Start for root system: '&lt;Root&gt;' */</span></td></tr>
  639. <tr name="314" id="314">
  640. <td><a id="l314" class='ln'>314</a></td><td><span class="pp">#define</span> <a id="314c9" class="tk">MDL_START</a></td></tr>
  641. <tr name="315" id="315">
  642. <td><a id="l315" class='ln'>315</a></td><td></td></tr>
  643. <tr name="316" id="316">
  644. <td><a id="l316" class='ln'>316</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="316c13" class="tk">mdlStart</a>(<a id="316c22" class="tk">SimStruct</a> <a id="316c32" class="tk">*</a><a id="316c33" class="tk">S</a>)</td></tr>
  645. <tr name="317" id="317">
  646. <td><a id="l317" class='ln'>317</a></td><td><span class="br">{</span></td></tr>
  647. <tr name="318" id="318">
  648. <td><a id="l318" class='ln'>318</a></td><td> <span class="ct">/* instance underlying S-Function data */</span></td></tr>
  649. <tr name="319" id="319">
  650. <td><a id="l319" class='ln'>319</a></td><td><span class="pp">#if</span> <a id="319c5" class="tk">defined</a>(<a id="319c13" class="tk">RT_MALLOC</a>) <a id="319c24" class="tk">||</a> <a id="319c27" class="tk">defined</a>(<a id="319c35" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
  651. <tr name="320" id="320">
  652. <td><a id="l320" class='ln'>320</a></td><td><span class="pp">#if</span> <a id="320c5" class="tk">defined</a>(<a id="320c13" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
  653. <tr name="321" id="321">
  654. <td><a id="l321" class='ln'>321</a></td><td></td></tr>
  655. <tr name="322" id="322">
  656. <td><a id="l322" class='ln'>322</a></td><td> <span class="ct">/* non-finites */</span></td></tr>
  657. <tr name="323" id="323">
  658. <td><a id="l323" class='ln'>323</a></td><td> <a id="323c3" class="tk">rt_InitInfAndNaN</a>(<span class="kw">sizeof</span>(<a id="323c27" class="tk">real_T</a>));</td></tr>
  659. <tr name="324" id="324">
  660. <td><a id="l324" class='ln'>324</a></td><td></td></tr>
  661. <tr name="325" id="325">
  662. <td><a id="l325" class='ln'>325</a></td><td> <span class="ct">/* Check for invalid switching between solver types */</span></td></tr>
  663. <tr name="326" id="326">
  664. <td><a id="l326" class='ln'>326</a></td><td> <span class="kw">if</span> (<a id="326c7" class="tk">ssIsVariableStepSolver</a>(<a id="326c30" class="tk">S</a>)) <span class="br">{</span></td></tr>
  665. <tr name="327" id="327">
  666. <td><a id="l327" class='ln'>327</a></td><td> <a id="327c5" class="tk">ssSetErrorStatus</a>(<a id="327c22" class="tk">S</a>, "This Simulink Coder generated "</td></tr>
  667. <tr name="328" id="328">
  668. <td><a id="l328" class='ln'>328</a></td><td> "S-Function cannot be used in a simulation with "</td></tr>
  669. <tr name="329" id="329">
  670. <td><a id="l329" class='ln'>329</a></td><td> "a solver type of variable-step "</td></tr>
  671. <tr name="330" id="330">
  672. <td><a id="l330" class='ln'>330</a></td><td> "because this S-Function was created from a model with "</td></tr>
  673. <tr name="331" id="331">
  674. <td><a id="l331" class='ln'>331</a></td><td> "solver type of fixed-step and it has continuous time blocks. "</td></tr>
  675. <tr name="332" id="332">
  676. <td><a id="l332" class='ln'>332</a></td><td> "See the Solver page of the simulation parameters dialog.");</td></tr>
  677. <tr name="333" id="333">
  678. <td><a id="l333" class='ln'>333</a></td><td> <span class="kw">return</span>;</td></tr>
  679. <tr name="334" id="334">
  680. <td><a id="l334" class='ln'>334</a></td><td> <span class="br">}</span></td></tr>
  681. <tr name="335" id="335">
  682. <td><a id="l335" class='ln'>335</a></td><td></td></tr>
  683. <tr name="336" id="336">
  684. <td><a id="l336" class='ln'>336</a></td><td> <span class="kw">if</span> (<a id="336c7" class="tk">fabs</a>(<a id="336c12" class="tk">ssGetFixedStepSize</a>(<a id="336c31" class="tk">S</a>) <a id="336c34" class="tk">-</a> 5.0E-7) <a id="336c44" class="tk">&gt;</a> <a id="336c46" class="tk">mxGetEps</a>()<a id="336c56" class="tk">*</a>100<a id="336c60" class="tk">*</a>5.0E-7) <span class="br">{</span></td></tr>
  685. <tr name="337" id="337">
  686. <td><a id="l337" class='ln'>337</a></td><td> <a id="337c5" class="tk">ssSetErrorStatus</a>(<a id="337c22" class="tk">S</a>, "This Simulink Coder generated "</td></tr>
  687. <tr name="338" id="338">
  688. <td><a id="l338" class='ln'>338</a></td><td> "S-Function cannot be used in a simulation with "</td></tr>
  689. <tr name="339" id="339">
  690. <td><a id="l339" class='ln'>339</a></td><td> "the current fixed step size "</td></tr>
  691. <tr name="340" id="340">
  692. <td><a id="l340" class='ln'>340</a></td><td> "because this S-Function was created from a model with "</td></tr>
  693. <tr name="341" id="341">
  694. <td><a id="l341" class='ln'>341</a></td><td> "a fixed step size of 5.0E-7 and had both "</td></tr>
  695. <tr name="342" id="342">
  696. <td><a id="l342" class='ln'>342</a></td><td> "continuous blocks and discrete blocks running at this rate. "</td></tr>
  697. <tr name="343" id="343">
  698. <td><a id="l343" class='ln'>343</a></td><td> "See the Solver page of the simulation parameters dialog.");</td></tr>
  699. <tr name="344" id="344">
  700. <td><a id="l344" class='ln'>344</a></td><td> <span class="kw">return</span>;</td></tr>
  701. <tr name="345" id="345">
  702. <td><a id="l345" class='ln'>345</a></td><td> <span class="br">}</span></td></tr>
  703. <tr name="346" id="346">
  704. <td><a id="l346" class='ln'>346</a></td><td></td></tr>
  705. <tr name="347" id="347">
  706. <td><a id="l347" class='ln'>347</a></td><td><span class="pp">#endif</span></td></tr>
  707. <tr name="348" id="348">
  708. <td><a id="l348" class='ln'>348</a></td><td></td></tr>
  709. <tr name="349" id="349">
  710. <td><a id="l349" class='ln'>349</a></td><td> <a id="349c3" class="tk">PWM_malloc</a>(<a id="349c14" class="tk">S</a>);</td></tr>
  711. <tr name="350" id="350">
  712. <td><a id="l350" class='ln'>350</a></td><td> <span class="kw">if</span> (<a id="350c7" class="tk">ssGetErrorStatus</a>(<a id="350c24" class="tk">S</a>) <a id="350c27" class="tk">!=</a> (<a id="350c31" class="tk">NULL</a>) ) <span class="br">{</span></td></tr>
  713. <tr name="351" id="351">
  714. <td><a id="l351" class='ln'>351</a></td><td> <span class="kw">return</span>;</td></tr>
  715. <tr name="352" id="352">
  716. <td><a id="l352" class='ln'>352</a></td><td> <span class="br">}</span></td></tr>
  717. <tr name="353" id="353">
  718. <td><a id="l353" class='ln'>353</a></td><td></td></tr>
  719. <tr name="354" id="354">
  720. <td><a id="l354" class='ln'>354</a></td><td><span class="pp">#endif</span></td></tr>
  721. <tr name="355" id="355">
  722. <td><a id="l355" class='ln'>355</a></td><td></td></tr>
  723. <tr name="356" id="356">
  724. <td><a id="l356" class='ln'>356</a></td><td> <span class="br">{</span></td></tr>
  725. <tr name="357" id="357">
  726. <td><a id="l357" class='ln'>357</a></td><td> <a id="357c5" class="tk">B_PWM_T</a> <a id="357c13" class="tk">*</a><a id="357c14" class="tk">_rtB</a>;</td></tr>
  727. <tr name="358" id="358">
  728. <td><a id="l358" class='ln'>358</a></td><td> <a id="358c5" class="tk">_rtB</a> = ((<a id="358c14" class="tk">B_PWM_T</a> <a id="358c22" class="tk">*</a>) <a id="358c25" class="tk">ssGetLocalBlockIO</a>(<a id="358c43" class="tk">S</a>));</td></tr>
  729. <tr name="359" id="359">
  730. <td><a id="l359" class='ln'>359</a></td><td></td></tr>
  731. <tr name="360" id="360">
  732. <td><a id="l360" class='ln'>360</a></td><td> <span class="ct">/* Start for TransportDelay: '&lt;S2&gt;/Transport Delay' */</span></td></tr>
  733. <tr name="361" id="361">
  734. <td><a id="l361" class='ln'>361</a></td><td> <span class="br">{</span></td></tr>
  735. <tr name="362" id="362">
  736. <td><a id="l362" class='ln'>362</a></td><td> <a id="362c7" class="tk">real_T</a> <a id="362c14" class="tk">*</a><a id="362c15" class="tk">pBuffer</a> = <a id="362c25" class="tk">&amp;</a>((<a id="362c28" class="tk">real_T</a><a id="362c34" class="tk">*</a>) <a id="362c37" class="tk">ssGetDWork</a>(<a id="362c48" class="tk">S</a>, 0))[1];</td></tr>
  737. <tr name="363" id="363">
  738. <td><a id="l363" class='ln'>363</a></td><td> ((<a id="363c9" class="tk">int_T</a><a id="363c14" class="tk">*</a>) <a id="363c17" class="tk">ssGetDWork</a>(<a id="363c28" class="tk">S</a>, 6))[0] = 0;</td></tr>
  739. <tr name="364" id="364">
  740. <td><a id="l364" class='ln'>364</a></td><td> ((<a id="364c9" class="tk">int_T</a><a id="364c14" class="tk">*</a>) <a id="364c17" class="tk">ssGetDWork</a>(<a id="364c28" class="tk">S</a>, 6))[1] = 0;</td></tr>
  741. <tr name="365" id="365">
  742. <td><a id="l365" class='ln'>365</a></td><td> ((<a id="365c9" class="tk">int_T</a><a id="365c14" class="tk">*</a>) <a id="365c17" class="tk">ssGetDWork</a>(<a id="365c28" class="tk">S</a>, 6))[2] = 0;</td></tr>
  743. <tr name="366" id="366">
  744. <td><a id="l366" class='ln'>366</a></td><td> ((<a id="366c9" class="tk">int_T</a><a id="366c14" class="tk">*</a>) <a id="366c17" class="tk">ssGetDWork</a>(<a id="366c28" class="tk">S</a>, 6))[3] = 1024;</td></tr>
  745. <tr name="367" id="367">
  746. <td><a id="l367" class='ln'>367</a></td><td> <a id="367c7" class="tk">pBuffer</a>[0] = 0.0;</td></tr>
  747. <tr name="368" id="368">
  748. <td><a id="l368" class='ln'>368</a></td><td> <a id="368c7" class="tk">pBuffer</a>[1024] = <a id="368c23" class="tk">ssGetT</a>(<a id="368c30" class="tk">S</a>);</td></tr>
  749. <tr name="369" id="369">
  750. <td><a id="l369" class='ln'>369</a></td><td> ((<span class="kw">void</span><a id="369c13" class="tk">*</a><a id="369c14" class="tk">*</a>) <a id="369c17" class="tk">ssGetDWork</a>(<a id="369c28" class="tk">S</a>, 3))[0] = (<span class="kw">void</span> <a id="369c46" class="tk">*</a>) <a id="369c49" class="tk">&amp;</a><a id="369c50" class="tk">pBuffer</a>[0];</td></tr>
  751. <tr name="370" id="370">
  752. <td><a id="l370" class='ln'>370</a></td><td> ((<span class="kw">void</span><a id="370c13" class="tk">*</a><a id="370c14" class="tk">*</a>) <a id="370c17" class="tk">ssGetDWork</a>(<a id="370c28" class="tk">S</a>, 3))[1] = (<span class="kw">void</span> <a id="370c46" class="tk">*</a>) <a id="370c49" class="tk">&amp;</a><a id="370c50" class="tk">pBuffer</a>[1024];</td></tr>
  753. <tr name="371" id="371">
  754. <td><a id="l371" class='ln'>371</a></td><td> <span class="br">}</span></td></tr>
  755. <tr name="372" id="372">
  756. <td><a id="l372" class='ln'>372</a></td><td></td></tr>
  757. <tr name="373" id="373">
  758. <td><a id="l373" class='ln'>373</a></td><td> <span class="ct">/* Start for TransportDelay: '&lt;S2&gt;/Transport Delay1' */</span></td></tr>
  759. <tr name="374" id="374">
  760. <td><a id="l374" class='ln'>374</a></td><td> <span class="br">{</span></td></tr>
  761. <tr name="375" id="375">
  762. <td><a id="l375" class='ln'>375</a></td><td> <a id="375c7" class="tk">real_T</a> <a id="375c14" class="tk">*</a><a id="375c15" class="tk">pBuffer</a> = <a id="375c25" class="tk">&amp;</a>((<a id="375c28" class="tk">real_T</a><a id="375c34" class="tk">*</a>) <a id="375c37" class="tk">ssGetDWork</a>(<a id="375c48" class="tk">S</a>, 1))[1];</td></tr>
  763. <tr name="376" id="376">
  764. <td><a id="l376" class='ln'>376</a></td><td> ((<a id="376c9" class="tk">int_T</a><a id="376c14" class="tk">*</a>) <a id="376c17" class="tk">ssGetDWork</a>(<a id="376c28" class="tk">S</a>, 7))[0] = 0;</td></tr>
  765. <tr name="377" id="377">
  766. <td><a id="l377" class='ln'>377</a></td><td> ((<a id="377c9" class="tk">int_T</a><a id="377c14" class="tk">*</a>) <a id="377c17" class="tk">ssGetDWork</a>(<a id="377c28" class="tk">S</a>, 7))[1] = 0;</td></tr>
  767. <tr name="378" id="378">
  768. <td><a id="l378" class='ln'>378</a></td><td> ((<a id="378c9" class="tk">int_T</a><a id="378c14" class="tk">*</a>) <a id="378c17" class="tk">ssGetDWork</a>(<a id="378c28" class="tk">S</a>, 7))[2] = 0;</td></tr>
  769. <tr name="379" id="379">
  770. <td><a id="l379" class='ln'>379</a></td><td> ((<a id="379c9" class="tk">int_T</a><a id="379c14" class="tk">*</a>) <a id="379c17" class="tk">ssGetDWork</a>(<a id="379c28" class="tk">S</a>, 7))[3] = 1024;</td></tr>
  771. <tr name="380" id="380">
  772. <td><a id="l380" class='ln'>380</a></td><td> <a id="380c7" class="tk">pBuffer</a>[0] = 0.0;</td></tr>
  773. <tr name="381" id="381">
  774. <td><a id="l381" class='ln'>381</a></td><td> <a id="381c7" class="tk">pBuffer</a>[1024] = <a id="381c23" class="tk">ssGetT</a>(<a id="381c30" class="tk">S</a>);</td></tr>
  775. <tr name="382" id="382">
  776. <td><a id="l382" class='ln'>382</a></td><td> ((<span class="kw">void</span><a id="382c13" class="tk">*</a><a id="382c14" class="tk">*</a>) <a id="382c17" class="tk">ssGetDWork</a>(<a id="382c28" class="tk">S</a>, 4))[0] = (<span class="kw">void</span> <a id="382c46" class="tk">*</a>) <a id="382c49" class="tk">&amp;</a><a id="382c50" class="tk">pBuffer</a>[0];</td></tr>
  777. <tr name="383" id="383">
  778. <td><a id="l383" class='ln'>383</a></td><td> ((<span class="kw">void</span><a id="383c13" class="tk">*</a><a id="383c14" class="tk">*</a>) <a id="383c17" class="tk">ssGetDWork</a>(<a id="383c28" class="tk">S</a>, 4))[1] = (<span class="kw">void</span> <a id="383c46" class="tk">*</a>) <a id="383c49" class="tk">&amp;</a><a id="383c50" class="tk">pBuffer</a>[1024];</td></tr>
  779. <tr name="384" id="384">
  780. <td><a id="l384" class='ln'>384</a></td><td> <span class="br">}</span></td></tr>
  781. <tr name="385" id="385">
  782. <td><a id="l385" class='ln'>385</a></td><td></td></tr>
  783. <tr name="386" id="386">
  784. <td><a id="l386" class='ln'>386</a></td><td> <span class="ct">/* Start for TransportDelay: '&lt;S2&gt;/Transport Delay2' */</span></td></tr>
  785. <tr name="387" id="387">
  786. <td><a id="l387" class='ln'>387</a></td><td> <span class="br">{</span></td></tr>
  787. <tr name="388" id="388">
  788. <td><a id="l388" class='ln'>388</a></td><td> <a id="388c7" class="tk">real_T</a> <a id="388c14" class="tk">*</a><a id="388c15" class="tk">pBuffer</a> = <a id="388c25" class="tk">&amp;</a>((<a id="388c28" class="tk">real_T</a><a id="388c34" class="tk">*</a>) <a id="388c37" class="tk">ssGetDWork</a>(<a id="388c48" class="tk">S</a>, 2))[1];</td></tr>
  789. <tr name="389" id="389">
  790. <td><a id="l389" class='ln'>389</a></td><td> ((<a id="389c9" class="tk">int_T</a><a id="389c14" class="tk">*</a>) <a id="389c17" class="tk">ssGetDWork</a>(<a id="389c28" class="tk">S</a>, 8))[0] = 0;</td></tr>
  791. <tr name="390" id="390">
  792. <td><a id="l390" class='ln'>390</a></td><td> ((<a id="390c9" class="tk">int_T</a><a id="390c14" class="tk">*</a>) <a id="390c17" class="tk">ssGetDWork</a>(<a id="390c28" class="tk">S</a>, 8))[1] = 0;</td></tr>
  793. <tr name="391" id="391">
  794. <td><a id="l391" class='ln'>391</a></td><td> ((<a id="391c9" class="tk">int_T</a><a id="391c14" class="tk">*</a>) <a id="391c17" class="tk">ssGetDWork</a>(<a id="391c28" class="tk">S</a>, 8))[2] = 0;</td></tr>
  795. <tr name="392" id="392">
  796. <td><a id="l392" class='ln'>392</a></td><td> ((<a id="392c9" class="tk">int_T</a><a id="392c14" class="tk">*</a>) <a id="392c17" class="tk">ssGetDWork</a>(<a id="392c28" class="tk">S</a>, 8))[3] = 1024;</td></tr>
  797. <tr name="393" id="393">
  798. <td><a id="l393" class='ln'>393</a></td><td> <a id="393c7" class="tk">pBuffer</a>[0] = 0.0;</td></tr>
  799. <tr name="394" id="394">
  800. <td><a id="l394" class='ln'>394</a></td><td> <a id="394c7" class="tk">pBuffer</a>[1024] = <a id="394c23" class="tk">ssGetT</a>(<a id="394c30" class="tk">S</a>);</td></tr>
  801. <tr name="395" id="395">
  802. <td><a id="l395" class='ln'>395</a></td><td> ((<span class="kw">void</span><a id="395c13" class="tk">*</a><a id="395c14" class="tk">*</a>) <a id="395c17" class="tk">ssGetDWork</a>(<a id="395c28" class="tk">S</a>, 5))[0] = (<span class="kw">void</span> <a id="395c46" class="tk">*</a>) <a id="395c49" class="tk">&amp;</a><a id="395c50" class="tk">pBuffer</a>[0];</td></tr>
  803. <tr name="396" id="396">
  804. <td><a id="l396" class='ln'>396</a></td><td> ((<span class="kw">void</span><a id="396c13" class="tk">*</a><a id="396c14" class="tk">*</a>) <a id="396c17" class="tk">ssGetDWork</a>(<a id="396c28" class="tk">S</a>, 5))[1] = (<span class="kw">void</span> <a id="396c46" class="tk">*</a>) <a id="396c49" class="tk">&amp;</a><a id="396c50" class="tk">pBuffer</a>[1024];</td></tr>
  805. <tr name="397" id="397">
  806. <td><a id="l397" class='ln'>397</a></td><td> <span class="br">}</span></td></tr>
  807. <tr name="398" id="398">
  808. <td><a id="l398" class='ln'>398</a></td><td> <span class="br">}</span></td></tr>
  809. <tr name="399" id="399">
  810. <td><a id="l399" class='ln'>399</a></td><td><span class="br">}</span></td></tr>
  811. <tr name="400" id="400">
  812. <td><a id="l400" class='ln'>400</a></td><td></td></tr>
  813. <tr name="401" id="401">
  814. <td><a id="l401" class='ln'>401</a></td><td><span class="ct">/* Outputs for root system: '&lt;Root&gt;' */</span></td></tr>
  815. <tr name="402" id="402">
  816. <td><a id="l402" class='ln'>402</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="402c13" class="tk">mdlOutputs</a>(<a id="402c24" class="tk">SimStruct</a> <a id="402c34" class="tk">*</a><a id="402c35" class="tk">S</a>, <a id="402c38" class="tk">int_T</a> <a id="402c44" class="tk">tid</a>)</td></tr>
  817. <tr name="403" id="403">
  818. <td><a id="l403" class='ln'>403</a></td><td><span class="br">{</span></td></tr>
  819. <tr name="404" id="404">
  820. <td><a id="l404" class='ln'>404</a></td><td> <span class="ct">/* local block i/o variables */</span></td></tr>
  821. <tr name="405" id="405">
  822. <td><a id="l405" class='ln'>405</a></td><td> <a id="405c3" class="tk">real_T</a> <a id="405c10" class="tk">rtb_TransportDelay1</a>;</td></tr>
  823. <tr name="406" id="406">
  824. <td><a id="l406" class='ln'>406</a></td><td> <a id="406c3" class="tk">real_T</a> <a id="406c10" class="tk">rtb_TransportDelay2</a>;</td></tr>
  825. <tr name="407" id="407">
  826. <td><a id="l407" class='ln'>407</a></td><td> <a id="407c3" class="tk">real_T</a> <a id="407c10" class="tk">rtb_TransportDelay</a>;</td></tr>
  827. <tr name="408" id="408">
  828. <td><a id="l408" class='ln'>408</a></td><td> <a id="408c3" class="tk">B_PWM_T</a> <a id="408c11" class="tk">*</a><a id="408c12" class="tk">_rtB</a>;</td></tr>
  829. <tr name="409" id="409">
  830. <td><a id="l409" class='ln'>409</a></td><td> <a id="409c3" class="tk">real_T</a> <a id="409c10" class="tk">expr_2_0_0</a>;</td></tr>
  831. <tr name="410" id="410">
  832. <td><a id="l410" class='ln'>410</a></td><td> <a id="410c3" class="tk">real_T</a> <a id="410c10" class="tk">rtb_Abs</a>;</td></tr>
  833. <tr name="411" id="411">
  834. <td><a id="l411" class='ln'>411</a></td><td> <a id="411c3" class="tk">real_T</a> <a id="411c10" class="tk">rtb_Abs2</a>;</td></tr>
  835. <tr name="412" id="412">
  836. <td><a id="l412" class='ln'>412</a></td><td> <a id="412c3" class="tk">boolean_T</a> <a id="412c13" class="tk">rtb_RelationalOperator</a>;</td></tr>
  837. <tr name="413" id="413">
  838. <td><a id="l413" class='ln'>413</a></td><td> <a id="413c3" class="tk">boolean_T</a> <a id="413c13" class="tk">rtb_RelationalOperator1</a>;</td></tr>
  839. <tr name="414" id="414">
  840. <td><a id="l414" class='ln'>414</a></td><td> <a id="414c3" class="tk">boolean_T</a> <a id="414c13" class="tk">rtb_RelationalOperator2</a>;</td></tr>
  841. <tr name="415" id="415">
  842. <td><a id="l415" class='ln'>415</a></td><td> <a id="415c3" class="tk">_rtB</a> = ((<a id="415c12" class="tk">B_PWM_T</a> <a id="415c20" class="tk">*</a>) <a id="415c23" class="tk">ssGetLocalBlockIO</a>(<a id="415c41" class="tk">S</a>));</td></tr>
  843. <tr name="416" id="416">
  844. <td><a id="l416" class='ln'>416</a></td><td> <span class="kw">if</span> (<a id="416c7" class="tk">ssIsContinuousTask</a>(<a id="416c26" class="tk">S</a>, <a id="416c29" class="tk">tid</a>)) <span class="br">{</span></td></tr>
  845. <tr name="417" id="417">
  846. <td><a id="l417" class='ln'>417</a></td><td> <span class="ct">/* S-Function (sfun_tstart): '&lt;S3&gt;/startTime' */</span></td></tr>
  847. <tr name="418" id="418">
  848. <td><a id="l418" class='ln'>418</a></td><td> <span class="ct">/* S-Function Block (sfun_tstart): &lt;S3&gt;/startTime */</span></td></tr>
  849. <tr name="419" id="419">
  850. <td><a id="l419" class='ln'>419</a></td><td> <a id="419c5" class="tk">expr_2_0_0</a> = <a id="419c18" class="tk">ssGetTStart</a>(<a id="419c30" class="tk">S</a>);</td></tr>
  851. <tr name="420" id="420">
  852. <td><a id="l420" class='ln'>420</a></td><td></td></tr>
  853. <tr name="421" id="421">
  854. <td><a id="l421" class='ln'>421</a></td><td> <span class="ct">/* Lookup_n-D: '&lt;S3&gt;/Look-Up Table1' incorporates:</span></td></tr>
  855. <tr name="422" id="422">
  856. <td><a id="l422" class='ln'>422</a></td><td><span class="ct"> * Clock: '&lt;S3&gt;/Clock'</span></td></tr>
  857. <tr name="423" id="423">
  858. <td><a id="l423" class='ln'>423</a></td><td><span class="ct"> * Constant: '&lt;S3&gt;/Constant'</span></td></tr>
  859. <tr name="424" id="424">
  860. <td><a id="l424" class='ln'>424</a></td><td><span class="ct"> * Math: '&lt;S3&gt;/Math Function'</span></td></tr>
  861. <tr name="425" id="425">
  862. <td><a id="l425" class='ln'>425</a></td><td><span class="ct"> * Sum: '&lt;S3&gt;/Sum'</span></td></tr>
  863. <tr name="426" id="426">
  864. <td><a id="l426" class='ln'>426</a></td><td><span class="ct"> */</span></td></tr>
  865. <tr name="427" id="427">
  866. <td><a id="l427" class='ln'>427</a></td><td> <a id="427c5" class="tk">expr_2_0_0</a> = <a id="427c18" class="tk">PWM_look1_binlx</a>(<a id="427c34" class="tk">PWM_rt_remd_snf</a>(<a id="427c50" class="tk">ssGetT</a>(<a id="427c57" class="tk">S</a>) <a id="427c60" class="tk">-</a> <a id="427c62" class="tk">expr_2_0_0</a>, 0.0001),</td></tr>
  867. <tr name="428" id="428">
  868. <td><a id="l428" class='ln'>428</a></td><td> <a id="428c7" class="tk">PWM_ConstP</a>.<a id="428c18" class="tk">LookUpTable1_bp01Data</a>, <a id="428c41" class="tk">PWM_ConstP</a>.<a id="428c52" class="tk">LookUpTable1_tableData</a>, 2U);</td></tr>
  869. <tr name="429" id="429">
  870. <td><a id="l429" class='ln'>429</a></td><td></td></tr>
  871. <tr name="430" id="430">
  872. <td><a id="l430" class='ln'>430</a></td><td> <span class="ct">/* RelationalOperator: '&lt;S2&gt;/Relational Operator' */</span></td></tr>
  873. <tr name="431" id="431">
  874. <td><a id="l431" class='ln'>431</a></td><td> <a id="431c5" class="tk">rtb_RelationalOperator</a> = (<a id="431c31" class="tk">expr_2_0_0</a> <a id="431c42" class="tk">&gt;</a> <a id="431c44" class="tk">*</a>((<span class="kw">const</span> <a id="431c53" class="tk">real_T</a> <a id="431c60" class="tk">*</a><a id="431c61" class="tk">*</a>)</td></tr>
  875. <tr name="432" id="432">
  876. <td><a id="l432" class='ln'>432</a></td><td> <a id="432c7" class="tk">ssGetInputPortSignalPtrs</a>(<a id="432c32" class="tk">S</a>, 0))[0]);</td></tr>
  877. <tr name="433" id="433">
  878. <td><a id="l433" class='ln'>433</a></td><td></td></tr>
  879. <tr name="434" id="434">
  880. <td><a id="l434" class='ln'>434</a></td><td> <span class="ct">/* TransportDelay: '&lt;S2&gt;/Transport Delay' */</span></td></tr>
  881. <tr name="435" id="435">
  882. <td><a id="l435" class='ln'>435</a></td><td> <span class="br">{</span></td></tr>
  883. <tr name="436" id="436">
  884. <td><a id="l436" class='ln'>436</a></td><td> <a id="436c7" class="tk">real_T</a> <a id="436c14" class="tk">*</a><a id="436c15" class="tk">*</a><a id="436c16" class="tk">uBuffer</a> = (<a id="436c27" class="tk">real_T</a><a id="436c33" class="tk">*</a><a id="436c34" class="tk">*</a>)<a id="436c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="436c43" class="tk">*</a><a id="436c44" class="tk">*</a>) <a id="436c47" class="tk">ssGetDWork</a>(<a id="436c58" class="tk">S</a>, 3))[0];</td></tr>
  885. <tr name="437" id="437">
  886. <td><a id="l437" class='ln'>437</a></td><td> <a id="437c7" class="tk">real_T</a> <a id="437c14" class="tk">*</a><a id="437c15" class="tk">*</a><a id="437c16" class="tk">tBuffer</a> = (<a id="437c27" class="tk">real_T</a><a id="437c33" class="tk">*</a><a id="437c34" class="tk">*</a>)<a id="437c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="437c43" class="tk">*</a><a id="437c44" class="tk">*</a>) <a id="437c47" class="tk">ssGetDWork</a>(<a id="437c58" class="tk">S</a>, 3))[1];</td></tr>
  887. <tr name="438" id="438">
  888. <td><a id="l438" class='ln'>438</a></td><td> <a id="438c7" class="tk">real_T</a> <a id="438c14" class="tk">simTime</a> = <a id="438c24" class="tk">ssGetT</a>(<a id="438c31" class="tk">S</a>);</td></tr>
  889. <tr name="439" id="439">
  890. <td><a id="l439" class='ln'>439</a></td><td> <a id="439c7" class="tk">real_T</a> <a id="439c14" class="tk">tMinusDelay</a> = <a id="439c28" class="tk">simTime</a> <a id="439c36" class="tk">-</a> 2.0E-6;</td></tr>
  891. <tr name="440" id="440">
  892. <td><a id="l440" class='ln'>440</a></td><td> <a id="440c7" class="tk">rtb_TransportDelay</a> = <a id="440c28" class="tk">PWM_sf_rt_TDelayInterpolate</a>(</td></tr>
  893. <tr name="441" id="441">
  894. <td><a id="l441" class='ln'>441</a></td><td> <a id="441c9" class="tk">tMinusDelay</a>,</td></tr>
  895. <tr name="442" id="442">
  896. <td><a id="l442" class='ln'>442</a></td><td> 0.0,</td></tr>
  897. <tr name="443" id="443">
  898. <td><a id="l443" class='ln'>443</a></td><td> <a id="443c9" class="tk">*</a><a id="443c10" class="tk">tBuffer</a>,</td></tr>
  899. <tr name="444" id="444">
  900. <td><a id="l444" class='ln'>444</a></td><td> <a id="444c9" class="tk">*</a><a id="444c10" class="tk">uBuffer</a>,</td></tr>
  901. <tr name="445" id="445">
  902. <td><a id="l445" class='ln'>445</a></td><td> ((<a id="445c11" class="tk">int_T</a><a id="445c16" class="tk">*</a>) <a id="445c19" class="tk">ssGetDWork</a>(<a id="445c30" class="tk">S</a>, 6))[3],</td></tr>
  903. <tr name="446" id="446">
  904. <td><a id="l446" class='ln'>446</a></td><td> <a id="446c9" class="tk">&amp;</a>((<a id="446c12" class="tk">int_T</a><a id="446c17" class="tk">*</a>) <a id="446c20" class="tk">ssGetDWork</a>(<a id="446c31" class="tk">S</a>, 6))[2],</td></tr>
  905. <tr name="447" id="447">
  906. <td><a id="l447" class='ln'>447</a></td><td> ((<a id="447c11" class="tk">int_T</a><a id="447c16" class="tk">*</a>) <a id="447c19" class="tk">ssGetDWork</a>(<a id="447c30" class="tk">S</a>, 6))[0],</td></tr>
  907. <tr name="448" id="448">
  908. <td><a id="l448" class='ln'>448</a></td><td> ((<a id="448c11" class="tk">int_T</a><a id="448c16" class="tk">*</a>) <a id="448c19" class="tk">ssGetDWork</a>(<a id="448c30" class="tk">S</a>, 6))[1],</td></tr>
  909. <tr name="449" id="449">
  910. <td><a id="l449" class='ln'>449</a></td><td> 0.0,</td></tr>
  911. <tr name="450" id="450">
  912. <td><a id="l450" class='ln'>450</a></td><td> 0,</td></tr>
  913. <tr name="451" id="451">
  914. <td><a id="l451" class='ln'>451</a></td><td> (<a id="451c10" class="tk">boolean_T</a>) (<a id="451c22" class="tk">ssIsMinorTimeStep</a>(<a id="451c40" class="tk">S</a>) <a id="451c43" class="tk">&amp;&amp;</a> (<a id="451c47" class="tk">ssGetTimeOfLastOutput</a>(<a id="451c69" class="tk">S</a>) <a id="451c72" class="tk">==</a> <a id="451c75" class="tk">ssGetT</a></td></tr>
  915. <tr name="452" id="452">
  916. <td><a id="l452" class='ln'>452</a></td><td> (<a id="452c10" class="tk">S</a>))));</td></tr>
  917. <tr name="453" id="453">
  918. <td><a id="l453" class='ln'>453</a></td><td> <span class="br">}</span></td></tr>
  919. <tr name="454" id="454">
  920. <td><a id="l454" class='ln'>454</a></td><td></td></tr>
  921. <tr name="455" id="455">
  922. <td><a id="l455" class='ln'>455</a></td><td> <span class="ct">/* DataTypeConversion: '&lt;S2&gt;/Data Type Conversion3' incorporates:</span></td></tr>
  923. <tr name="456" id="456">
  924. <td><a id="l456" class='ln'>456</a></td><td><span class="ct"> * Logic: '&lt;S2&gt;/Logical Operator'</span></td></tr>
  925. <tr name="457" id="457">
  926. <td><a id="l457" class='ln'>457</a></td><td><span class="ct"> */</span></td></tr>
  927. <tr name="458" id="458">
  928. <td><a id="l458" class='ln'>458</a></td><td> <a id="458c5" class="tk">rtb_Abs2</a> = <a id="458c16" class="tk">!</a><a id="458c17" class="tk">rtb_RelationalOperator</a>;</td></tr>
  929. <tr name="459" id="459">
  930. <td><a id="l459" class='ln'>459</a></td><td></td></tr>
  931. <tr name="460" id="460">
  932. <td><a id="l460" class='ln'>460</a></td><td> <span class="ct">/* Abs: '&lt;S2&gt;/Abs' incorporates:</span></td></tr>
  933. <tr name="461" id="461">
  934. <td><a id="l461" class='ln'>461</a></td><td><span class="ct"> * DataTypeConversion: '&lt;S2&gt;/Data Type Conversion3'</span></td></tr>
  935. <tr name="462" id="462">
  936. <td><a id="l462" class='ln'>462</a></td><td><span class="ct"> * Sum: '&lt;S2&gt;/Subtract'</span></td></tr>
  937. <tr name="463" id="463">
  938. <td><a id="l463" class='ln'>463</a></td><td><span class="ct"> */</span></td></tr>
  939. <tr name="464" id="464">
  940. <td><a id="l464" class='ln'>464</a></td><td> <a id="464c5" class="tk">rtb_Abs</a> = <a id="464c15" class="tk">fabs</a>(<a id="464c20" class="tk">rtb_Abs2</a> <a id="464c29" class="tk">-</a> <a id="464c31" class="tk">rtb_TransportDelay</a>);</td></tr>
  941. <tr name="465" id="465">
  942. <td><a id="l465" class='ln'>465</a></td><td></td></tr>
  943. <tr name="466" id="466">
  944. <td><a id="l466" class='ln'>466</a></td><td> <span class="ct">/* Product: '&lt;S2&gt;/Product' */</span></td></tr>
  945. <tr name="467" id="467">
  946. <td><a id="l467" class='ln'>467</a></td><td> <a id="467c5" class="tk">_rtB</a>-&gt;<a id="467c11" class="tk">Product</a> = <a id="467c21" class="tk">rtb_Abs2</a> <a id="467c30" class="tk">*</a> <a id="467c32" class="tk">rtb_Abs</a>;</td></tr>
  947. <tr name="468" id="468">
  948. <td><a id="l468" class='ln'>468</a></td><td></td></tr>
  949. <tr name="469" id="469">
  950. <td><a id="l469" class='ln'>469</a></td><td> <span class="ct">/* Product: '&lt;S2&gt;/Product1' */</span></td></tr>
  951. <tr name="470" id="470">
  952. <td><a id="l470" class='ln'>470</a></td><td> <a id="470c5" class="tk">_rtB</a>-&gt;<a id="470c11" class="tk">Product1</a> = <a id="470c22" class="tk">rtb_Abs</a> <a id="470c30" class="tk">*</a> <a id="470c32" class="tk">rtb_TransportDelay</a>;</td></tr>
  953. <tr name="471" id="471">
  954. <td><a id="l471" class='ln'>471</a></td><td></td></tr>
  955. <tr name="472" id="472">
  956. <td><a id="l472" class='ln'>472</a></td><td> <span class="ct">/* RelationalOperator: '&lt;S2&gt;/Relational Operator1' */</span></td></tr>
  957. <tr name="473" id="473">
  958. <td><a id="l473" class='ln'>473</a></td><td> <a id="473c5" class="tk">rtb_RelationalOperator1</a> = (<a id="473c32" class="tk">expr_2_0_0</a> <a id="473c43" class="tk">&gt;</a> <a id="473c45" class="tk">*</a>((<span class="kw">const</span> <a id="473c54" class="tk">real_T</a> <a id="473c61" class="tk">*</a><a id="473c62" class="tk">*</a>)</td></tr>
  959. <tr name="474" id="474">
  960. <td><a id="l474" class='ln'>474</a></td><td> <a id="474c7" class="tk">ssGetInputPortSignalPtrs</a>(<a id="474c32" class="tk">S</a>, 0))[1]);</td></tr>
  961. <tr name="475" id="475">
  962. <td><a id="l475" class='ln'>475</a></td><td></td></tr>
  963. <tr name="476" id="476">
  964. <td><a id="l476" class='ln'>476</a></td><td> <span class="ct">/* TransportDelay: '&lt;S2&gt;/Transport Delay1' */</span></td></tr>
  965. <tr name="477" id="477">
  966. <td><a id="l477" class='ln'>477</a></td><td> <span class="br">{</span></td></tr>
  967. <tr name="478" id="478">
  968. <td><a id="l478" class='ln'>478</a></td><td> <a id="478c7" class="tk">real_T</a> <a id="478c14" class="tk">*</a><a id="478c15" class="tk">*</a><a id="478c16" class="tk">uBuffer</a> = (<a id="478c27" class="tk">real_T</a><a id="478c33" class="tk">*</a><a id="478c34" class="tk">*</a>)<a id="478c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="478c43" class="tk">*</a><a id="478c44" class="tk">*</a>) <a id="478c47" class="tk">ssGetDWork</a>(<a id="478c58" class="tk">S</a>, 4))[0];</td></tr>
  969. <tr name="479" id="479">
  970. <td><a id="l479" class='ln'>479</a></td><td> <a id="479c7" class="tk">real_T</a> <a id="479c14" class="tk">*</a><a id="479c15" class="tk">*</a><a id="479c16" class="tk">tBuffer</a> = (<a id="479c27" class="tk">real_T</a><a id="479c33" class="tk">*</a><a id="479c34" class="tk">*</a>)<a id="479c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="479c43" class="tk">*</a><a id="479c44" class="tk">*</a>) <a id="479c47" class="tk">ssGetDWork</a>(<a id="479c58" class="tk">S</a>, 4))[1];</td></tr>
  971. <tr name="480" id="480">
  972. <td><a id="l480" class='ln'>480</a></td><td> <a id="480c7" class="tk">real_T</a> <a id="480c14" class="tk">simTime</a> = <a id="480c24" class="tk">ssGetT</a>(<a id="480c31" class="tk">S</a>);</td></tr>
  973. <tr name="481" id="481">
  974. <td><a id="l481" class='ln'>481</a></td><td> <a id="481c7" class="tk">real_T</a> <a id="481c14" class="tk">tMinusDelay</a> = <a id="481c28" class="tk">simTime</a> <a id="481c36" class="tk">-</a> 2.0E-6;</td></tr>
  975. <tr name="482" id="482">
  976. <td><a id="l482" class='ln'>482</a></td><td> <a id="482c7" class="tk">rtb_TransportDelay1</a> = <a id="482c29" class="tk">PWM_sf_rt_TDelayInterpolate</a>(</td></tr>
  977. <tr name="483" id="483">
  978. <td><a id="l483" class='ln'>483</a></td><td> <a id="483c9" class="tk">tMinusDelay</a>,</td></tr>
  979. <tr name="484" id="484">
  980. <td><a id="l484" class='ln'>484</a></td><td> 0.0,</td></tr>
  981. <tr name="485" id="485">
  982. <td><a id="l485" class='ln'>485</a></td><td> <a id="485c9" class="tk">*</a><a id="485c10" class="tk">tBuffer</a>,</td></tr>
  983. <tr name="486" id="486">
  984. <td><a id="l486" class='ln'>486</a></td><td> <a id="486c9" class="tk">*</a><a id="486c10" class="tk">uBuffer</a>,</td></tr>
  985. <tr name="487" id="487">
  986. <td><a id="l487" class='ln'>487</a></td><td> ((<a id="487c11" class="tk">int_T</a><a id="487c16" class="tk">*</a>) <a id="487c19" class="tk">ssGetDWork</a>(<a id="487c30" class="tk">S</a>, 7))[3],</td></tr>
  987. <tr name="488" id="488">
  988. <td><a id="l488" class='ln'>488</a></td><td> <a id="488c9" class="tk">&amp;</a>((<a id="488c12" class="tk">int_T</a><a id="488c17" class="tk">*</a>) <a id="488c20" class="tk">ssGetDWork</a>(<a id="488c31" class="tk">S</a>, 7))[2],</td></tr>
  989. <tr name="489" id="489">
  990. <td><a id="l489" class='ln'>489</a></td><td> ((<a id="489c11" class="tk">int_T</a><a id="489c16" class="tk">*</a>) <a id="489c19" class="tk">ssGetDWork</a>(<a id="489c30" class="tk">S</a>, 7))[0],</td></tr>
  991. <tr name="490" id="490">
  992. <td><a id="l490" class='ln'>490</a></td><td> ((<a id="490c11" class="tk">int_T</a><a id="490c16" class="tk">*</a>) <a id="490c19" class="tk">ssGetDWork</a>(<a id="490c30" class="tk">S</a>, 7))[1],</td></tr>
  993. <tr name="491" id="491">
  994. <td><a id="l491" class='ln'>491</a></td><td> 0.0,</td></tr>
  995. <tr name="492" id="492">
  996. <td><a id="l492" class='ln'>492</a></td><td> 0,</td></tr>
  997. <tr name="493" id="493">
  998. <td><a id="l493" class='ln'>493</a></td><td> (<a id="493c10" class="tk">boolean_T</a>) (<a id="493c22" class="tk">ssIsMinorTimeStep</a>(<a id="493c40" class="tk">S</a>) <a id="493c43" class="tk">&amp;&amp;</a> (<a id="493c47" class="tk">ssGetTimeOfLastOutput</a>(<a id="493c69" class="tk">S</a>) <a id="493c72" class="tk">==</a> <a id="493c75" class="tk">ssGetT</a></td></tr>
  999. <tr name="494" id="494">
  1000. <td><a id="l494" class='ln'>494</a></td><td> (<a id="494c10" class="tk">S</a>))));</td></tr>
  1001. <tr name="495" id="495">
  1002. <td><a id="l495" class='ln'>495</a></td><td> <span class="br">}</span></td></tr>
  1003. <tr name="496" id="496">
  1004. <td><a id="l496" class='ln'>496</a></td><td></td></tr>
  1005. <tr name="497" id="497">
  1006. <td><a id="l497" class='ln'>497</a></td><td> <span class="ct">/* RelationalOperator: '&lt;S2&gt;/Relational Operator2' */</span></td></tr>
  1007. <tr name="498" id="498">
  1008. <td><a id="l498" class='ln'>498</a></td><td> <a id="498c5" class="tk">rtb_RelationalOperator2</a> = (<a id="498c32" class="tk">expr_2_0_0</a> <a id="498c43" class="tk">&gt;</a> <a id="498c45" class="tk">*</a>((<span class="kw">const</span> <a id="498c54" class="tk">real_T</a> <a id="498c61" class="tk">*</a><a id="498c62" class="tk">*</a>)</td></tr>
  1009. <tr name="499" id="499">
  1010. <td><a id="l499" class='ln'>499</a></td><td> <a id="499c7" class="tk">ssGetInputPortSignalPtrs</a>(<a id="499c32" class="tk">S</a>, 0))[2]);</td></tr>
  1011. <tr name="500" id="500">
  1012. <td><a id="l500" class='ln'>500</a></td><td></td></tr>
  1013. <tr name="501" id="501">
  1014. <td><a id="l501" class='ln'>501</a></td><td> <span class="ct">/* TransportDelay: '&lt;S2&gt;/Transport Delay2' */</span></td></tr>
  1015. <tr name="502" id="502">
  1016. <td><a id="l502" class='ln'>502</a></td><td> <span class="br">{</span></td></tr>
  1017. <tr name="503" id="503">
  1018. <td><a id="l503" class='ln'>503</a></td><td> <a id="503c7" class="tk">real_T</a> <a id="503c14" class="tk">*</a><a id="503c15" class="tk">*</a><a id="503c16" class="tk">uBuffer</a> = (<a id="503c27" class="tk">real_T</a><a id="503c33" class="tk">*</a><a id="503c34" class="tk">*</a>)<a id="503c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="503c43" class="tk">*</a><a id="503c44" class="tk">*</a>) <a id="503c47" class="tk">ssGetDWork</a>(<a id="503c58" class="tk">S</a>, 5))[0];</td></tr>
  1019. <tr name="504" id="504">
  1020. <td><a id="l504" class='ln'>504</a></td><td> <a id="504c7" class="tk">real_T</a> <a id="504c14" class="tk">*</a><a id="504c15" class="tk">*</a><a id="504c16" class="tk">tBuffer</a> = (<a id="504c27" class="tk">real_T</a><a id="504c33" class="tk">*</a><a id="504c34" class="tk">*</a>)<a id="504c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="504c43" class="tk">*</a><a id="504c44" class="tk">*</a>) <a id="504c47" class="tk">ssGetDWork</a>(<a id="504c58" class="tk">S</a>, 5))[1];</td></tr>
  1021. <tr name="505" id="505">
  1022. <td><a id="l505" class='ln'>505</a></td><td> <a id="505c7" class="tk">real_T</a> <a id="505c14" class="tk">simTime</a> = <a id="505c24" class="tk">ssGetT</a>(<a id="505c31" class="tk">S</a>);</td></tr>
  1023. <tr name="506" id="506">
  1024. <td><a id="l506" class='ln'>506</a></td><td> <a id="506c7" class="tk">real_T</a> <a id="506c14" class="tk">tMinusDelay</a> = <a id="506c28" class="tk">simTime</a> <a id="506c36" class="tk">-</a> 2.0E-6;</td></tr>
  1025. <tr name="507" id="507">
  1026. <td><a id="l507" class='ln'>507</a></td><td> <a id="507c7" class="tk">rtb_TransportDelay2</a> = <a id="507c29" class="tk">PWM_sf_rt_TDelayInterpolate</a>(</td></tr>
  1027. <tr name="508" id="508">
  1028. <td><a id="l508" class='ln'>508</a></td><td> <a id="508c9" class="tk">tMinusDelay</a>,</td></tr>
  1029. <tr name="509" id="509">
  1030. <td><a id="l509" class='ln'>509</a></td><td> 0.0,</td></tr>
  1031. <tr name="510" id="510">
  1032. <td><a id="l510" class='ln'>510</a></td><td> <a id="510c9" class="tk">*</a><a id="510c10" class="tk">tBuffer</a>,</td></tr>
  1033. <tr name="511" id="511">
  1034. <td><a id="l511" class='ln'>511</a></td><td> <a id="511c9" class="tk">*</a><a id="511c10" class="tk">uBuffer</a>,</td></tr>
  1035. <tr name="512" id="512">
  1036. <td><a id="l512" class='ln'>512</a></td><td> ((<a id="512c11" class="tk">int_T</a><a id="512c16" class="tk">*</a>) <a id="512c19" class="tk">ssGetDWork</a>(<a id="512c30" class="tk">S</a>, 8))[3],</td></tr>
  1037. <tr name="513" id="513">
  1038. <td><a id="l513" class='ln'>513</a></td><td> <a id="513c9" class="tk">&amp;</a>((<a id="513c12" class="tk">int_T</a><a id="513c17" class="tk">*</a>) <a id="513c20" class="tk">ssGetDWork</a>(<a id="513c31" class="tk">S</a>, 8))[2],</td></tr>
  1039. <tr name="514" id="514">
  1040. <td><a id="l514" class='ln'>514</a></td><td> ((<a id="514c11" class="tk">int_T</a><a id="514c16" class="tk">*</a>) <a id="514c19" class="tk">ssGetDWork</a>(<a id="514c30" class="tk">S</a>, 8))[0],</td></tr>
  1041. <tr name="515" id="515">
  1042. <td><a id="l515" class='ln'>515</a></td><td> ((<a id="515c11" class="tk">int_T</a><a id="515c16" class="tk">*</a>) <a id="515c19" class="tk">ssGetDWork</a>(<a id="515c30" class="tk">S</a>, 8))[1],</td></tr>
  1043. <tr name="516" id="516">
  1044. <td><a id="l516" class='ln'>516</a></td><td> 0.0,</td></tr>
  1045. <tr name="517" id="517">
  1046. <td><a id="l517" class='ln'>517</a></td><td> 0,</td></tr>
  1047. <tr name="518" id="518">
  1048. <td><a id="l518" class='ln'>518</a></td><td> (<a id="518c10" class="tk">boolean_T</a>) (<a id="518c22" class="tk">ssIsMinorTimeStep</a>(<a id="518c40" class="tk">S</a>) <a id="518c43" class="tk">&amp;&amp;</a> (<a id="518c47" class="tk">ssGetTimeOfLastOutput</a>(<a id="518c69" class="tk">S</a>) <a id="518c72" class="tk">==</a> <a id="518c75" class="tk">ssGetT</a></td></tr>
  1049. <tr name="519" id="519">
  1050. <td><a id="l519" class='ln'>519</a></td><td> (<a id="519c10" class="tk">S</a>))));</td></tr>
  1051. <tr name="520" id="520">
  1052. <td><a id="l520" class='ln'>520</a></td><td> <span class="br">}</span></td></tr>
  1053. <tr name="521" id="521">
  1054. <td><a id="l521" class='ln'>521</a></td><td></td></tr>
  1055. <tr name="522" id="522">
  1056. <td><a id="l522" class='ln'>522</a></td><td> <span class="ct">/* DataTypeConversion: '&lt;S2&gt;/Data Type Conversion1' incorporates:</span></td></tr>
  1057. <tr name="523" id="523">
  1058. <td><a id="l523" class='ln'>523</a></td><td><span class="ct"> * Logic: '&lt;S2&gt;/Logical Operator1'</span></td></tr>
  1059. <tr name="524" id="524">
  1060. <td><a id="l524" class='ln'>524</a></td><td><span class="ct"> * ManualSwitch: '&lt;S1&gt;/Manual Switch'</span></td></tr>
  1061. <tr name="525" id="525">
  1062. <td><a id="l525" class='ln'>525</a></td><td><span class="ct"> */</span></td></tr>
  1063. <tr name="526" id="526">
  1064. <td><a id="l526" class='ln'>526</a></td><td> <a id="526c5" class="tk">rtb_Abs2</a> = <a id="526c16" class="tk">!</a><a id="526c17" class="tk">rtb_RelationalOperator1</a>;</td></tr>
  1065. <tr name="527" id="527">
  1066. <td><a id="l527" class='ln'>527</a></td><td></td></tr>
  1067. <tr name="528" id="528">
  1068. <td><a id="l528" class='ln'>528</a></td><td> <span class="ct">/* Abs: '&lt;S2&gt;/Abs1' incorporates:</span></td></tr>
  1069. <tr name="529" id="529">
  1070. <td><a id="l529" class='ln'>529</a></td><td><span class="ct"> * DataTypeConversion: '&lt;S2&gt;/Data Type Conversion1'</span></td></tr>
  1071. <tr name="530" id="530">
  1072. <td><a id="l530" class='ln'>530</a></td><td><span class="ct"> * ManualSwitch: '&lt;S1&gt;/Manual Switch'</span></td></tr>
  1073. <tr name="531" id="531">
  1074. <td><a id="l531" class='ln'>531</a></td><td><span class="ct"> * Sum: '&lt;S2&gt;/Subtract1'</span></td></tr>
  1075. <tr name="532" id="532">
  1076. <td><a id="l532" class='ln'>532</a></td><td><span class="ct"> */</span></td></tr>
  1077. <tr name="533" id="533">
  1078. <td><a id="l533" class='ln'>533</a></td><td> <a id="533c5" class="tk">expr_2_0_0</a> = <a id="533c18" class="tk">fabs</a>(<a id="533c23" class="tk">rtb_Abs2</a> <a id="533c32" class="tk">-</a> <a id="533c34" class="tk">rtb_TransportDelay1</a>);</td></tr>
  1079. <tr name="534" id="534">
  1080. <td><a id="l534" class='ln'>534</a></td><td></td></tr>
  1081. <tr name="535" id="535">
  1082. <td><a id="l535" class='ln'>535</a></td><td> <span class="ct">/* Outport: '&lt;Root&gt;/PWMb' incorporates:</span></td></tr>
  1083. <tr name="536" id="536">
  1084. <td><a id="l536" class='ln'>536</a></td><td><span class="ct"> * ManualSwitch: '&lt;S1&gt;/Manual Switch'</span></td></tr>
  1085. <tr name="537" id="537">
  1086. <td><a id="l537" class='ln'>537</a></td><td><span class="ct"> * Product: '&lt;S2&gt;/Product2'</span></td></tr>
  1087. <tr name="538" id="538">
  1088. <td><a id="l538" class='ln'>538</a></td><td><span class="ct"> * Product: '&lt;S2&gt;/Product3'</span></td></tr>
  1089. <tr name="539" id="539">
  1090. <td><a id="l539" class='ln'>539</a></td><td><span class="ct"> */</span></td></tr>
  1091. <tr name="540" id="540">
  1092. <td><a id="l540" class='ln'>540</a></td><td> ((<a id="540c7" class="tk">real_T</a> <a id="540c14" class="tk">*</a>)<a id="540c16" class="tk">ssGetOutputPortSignal</a>(<a id="540c38" class="tk">S</a>, 0))[2] = <a id="540c50" class="tk">rtb_Abs2</a> <a id="540c59" class="tk">*</a> <a id="540c61" class="tk">expr_2_0_0</a>;</td></tr>
  1093. <tr name="541" id="541">
  1094. <td><a id="l541" class='ln'>541</a></td><td> ((<a id="541c7" class="tk">real_T</a> <a id="541c14" class="tk">*</a>)<a id="541c16" class="tk">ssGetOutputPortSignal</a>(<a id="541c38" class="tk">S</a>, 0))[3] = <a id="541c50" class="tk">expr_2_0_0</a> <a id="541c61" class="tk">*</a></td></tr>
  1095. <tr name="542" id="542">
  1096. <td><a id="l542" class='ln'>542</a></td><td> <a id="542c7" class="tk">rtb_TransportDelay1</a>;</td></tr>
  1097. <tr name="543" id="543">
  1098. <td><a id="l543" class='ln'>543</a></td><td></td></tr>
  1099. <tr name="544" id="544">
  1100. <td><a id="l544" class='ln'>544</a></td><td> <span class="ct">/* DataTypeConversion: '&lt;S2&gt;/Data Type Conversion5' incorporates:</span></td></tr>
  1101. <tr name="545" id="545">
  1102. <td><a id="l545" class='ln'>545</a></td><td><span class="ct"> * Logic: '&lt;S2&gt;/Logical Operator2'</span></td></tr>
  1103. <tr name="546" id="546">
  1104. <td><a id="l546" class='ln'>546</a></td><td><span class="ct"> * ManualSwitch: '&lt;S1&gt;/Manual Switch'</span></td></tr>
  1105. <tr name="547" id="547">
  1106. <td><a id="l547" class='ln'>547</a></td><td><span class="ct"> */</span></td></tr>
  1107. <tr name="548" id="548">
  1108. <td><a id="l548" class='ln'>548</a></td><td> <a id="548c5" class="tk">expr_2_0_0</a> = <a id="548c18" class="tk">!</a><a id="548c19" class="tk">rtb_RelationalOperator2</a>;</td></tr>
  1109. <tr name="549" id="549">
  1110. <td><a id="l549" class='ln'>549</a></td><td></td></tr>
  1111. <tr name="550" id="550">
  1112. <td><a id="l550" class='ln'>550</a></td><td> <span class="ct">/* Abs: '&lt;S2&gt;/Abs2' incorporates:</span></td></tr>
  1113. <tr name="551" id="551">
  1114. <td><a id="l551" class='ln'>551</a></td><td><span class="ct"> * ManualSwitch: '&lt;S1&gt;/Manual Switch'</span></td></tr>
  1115. <tr name="552" id="552">
  1116. <td><a id="l552" class='ln'>552</a></td><td><span class="ct"> * Sum: '&lt;S2&gt;/Subtract2'</span></td></tr>
  1117. <tr name="553" id="553">
  1118. <td><a id="l553" class='ln'>553</a></td><td><span class="ct"> */</span></td></tr>
  1119. <tr name="554" id="554">
  1120. <td><a id="l554" class='ln'>554</a></td><td> <a id="554c5" class="tk">rtb_Abs2</a> = <a id="554c16" class="tk">fabs</a>(<a id="554c21" class="tk">expr_2_0_0</a> <a id="554c32" class="tk">-</a> <a id="554c34" class="tk">rtb_TransportDelay2</a>);</td></tr>
  1121. <tr name="555" id="555">
  1122. <td><a id="l555" class='ln'>555</a></td><td></td></tr>
  1123. <tr name="556" id="556">
  1124. <td><a id="l556" class='ln'>556</a></td><td> <span class="ct">/* Outport: '&lt;Root&gt;/PWMb' incorporates:</span></td></tr>
  1125. <tr name="557" id="557">
  1126. <td><a id="l557" class='ln'>557</a></td><td><span class="ct"> * ManualSwitch: '&lt;S1&gt;/Manual Switch'</span></td></tr>
  1127. <tr name="558" id="558">
  1128. <td><a id="l558" class='ln'>558</a></td><td><span class="ct"> * Product: '&lt;S2&gt;/Product4'</span></td></tr>
  1129. <tr name="559" id="559">
  1130. <td><a id="l559" class='ln'>559</a></td><td><span class="ct"> * Product: '&lt;S2&gt;/Product5'</span></td></tr>
  1131. <tr name="560" id="560">
  1132. <td><a id="l560" class='ln'>560</a></td><td><span class="ct"> */</span></td></tr>
  1133. <tr name="561" id="561">
  1134. <td><a id="l561" class='ln'>561</a></td><td> ((<a id="561c7" class="tk">real_T</a> <a id="561c14" class="tk">*</a>)<a id="561c16" class="tk">ssGetOutputPortSignal</a>(<a id="561c38" class="tk">S</a>, 0))[0] = <a id="561c50" class="tk">_rtB</a>-&gt;<a id="561c56" class="tk">Product</a>;</td></tr>
  1135. <tr name="562" id="562">
  1136. <td><a id="l562" class='ln'>562</a></td><td> ((<a id="562c7" class="tk">real_T</a> <a id="562c14" class="tk">*</a>)<a id="562c16" class="tk">ssGetOutputPortSignal</a>(<a id="562c38" class="tk">S</a>, 0))[1] = <a id="562c50" class="tk">_rtB</a>-&gt;<a id="562c56" class="tk">Product1</a>;</td></tr>
  1137. <tr name="563" id="563">
  1138. <td><a id="l563" class='ln'>563</a></td><td> ((<a id="563c7" class="tk">real_T</a> <a id="563c14" class="tk">*</a>)<a id="563c16" class="tk">ssGetOutputPortSignal</a>(<a id="563c38" class="tk">S</a>, 0))[4] = <a id="563c50" class="tk">expr_2_0_0</a> <a id="563c61" class="tk">*</a> <a id="563c63" class="tk">rtb_Abs2</a>;</td></tr>
  1139. <tr name="564" id="564">
  1140. <td><a id="l564" class='ln'>564</a></td><td> ((<a id="564c7" class="tk">real_T</a> <a id="564c14" class="tk">*</a>)<a id="564c16" class="tk">ssGetOutputPortSignal</a>(<a id="564c38" class="tk">S</a>, 0))[5] = <a id="564c50" class="tk">rtb_Abs2</a> <a id="564c59" class="tk">*</a> <a id="564c61" class="tk">rtb_TransportDelay2</a>;</td></tr>
  1141. <tr name="565" id="565">
  1142. <td><a id="l565" class='ln'>565</a></td><td></td></tr>
  1143. <tr name="566" id="566">
  1144. <td><a id="l566" class='ln'>566</a></td><td> <span class="ct">/* DataTypeConversion: '&lt;S2&gt;/Data Type Conversion6' */</span></td></tr>
  1145. <tr name="567" id="567">
  1146. <td><a id="l567" class='ln'>567</a></td><td> <a id="567c5" class="tk">_rtB</a>-&gt;<a id="567c11" class="tk">DataTypeConversion6</a> = <a id="567c33" class="tk">rtb_RelationalOperator2</a>;</td></tr>
  1147. <tr name="568" id="568">
  1148. <td><a id="l568" class='ln'>568</a></td><td></td></tr>
  1149. <tr name="569" id="569">
  1150. <td><a id="l569" class='ln'>569</a></td><td> <span class="ct">/* DataTypeConversion: '&lt;S2&gt;/Data Type Conversion2' */</span></td></tr>
  1151. <tr name="570" id="570">
  1152. <td><a id="l570" class='ln'>570</a></td><td> <a id="570c5" class="tk">_rtB</a>-&gt;<a id="570c11" class="tk">DataTypeConversion2</a> = <a id="570c33" class="tk">rtb_RelationalOperator1</a>;</td></tr>
  1153. <tr name="571" id="571">
  1154. <td><a id="l571" class='ln'>571</a></td><td> <span class="br">}</span></td></tr>
  1155. <tr name="572" id="572">
  1156. <td><a id="l572" class='ln'>572</a></td><td></td></tr>
  1157. <tr name="573" id="573">
  1158. <td><a id="l573" class='ln'>573</a></td><td> <span class="kw">if</span> (<a id="573c7" class="tk">ssIsSampleHit</a>(<a id="573c21" class="tk">S</a>, 1, <a id="573c27" class="tk">tid</a>)) <span class="br">{</span></td></tr>
  1159. <tr name="574" id="574">
  1160. <td><a id="l574" class='ln'>574</a></td><td> <span class="br">}</span></td></tr>
  1161. <tr name="575" id="575">
  1162. <td><a id="l575" class='ln'>575</a></td><td></td></tr>
  1163. <tr name="576" id="576">
  1164. <td><a id="l576" class='ln'>576</a></td><td> <span class="kw">if</span> (<a id="576c7" class="tk">ssIsContinuousTask</a>(<a id="576c26" class="tk">S</a>, <a id="576c29" class="tk">tid</a>)) <span class="br">{</span></td></tr>
  1165. <tr name="577" id="577">
  1166. <td><a id="l577" class='ln'>577</a></td><td> <span class="ct">/* DataTypeConversion: '&lt;S2&gt;/Data Type Conversion4' */</span></td></tr>
  1167. <tr name="578" id="578">
  1168. <td><a id="l578" class='ln'>578</a></td><td> <a id="578c5" class="tk">_rtB</a>-&gt;<a id="578c11" class="tk">DataTypeConversion4</a> = <a id="578c33" class="tk">rtb_RelationalOperator</a>;</td></tr>
  1169. <tr name="579" id="579">
  1170. <td><a id="l579" class='ln'>579</a></td><td> <span class="br">}</span></td></tr>
  1171. <tr name="580" id="580">
  1172. <td><a id="l580" class='ln'>580</a></td><td></td></tr>
  1173. <tr name="581" id="581">
  1174. <td><a id="l581" class='ln'>581</a></td><td> <a id="581c3" class="tk">UNUSED_PARAMETER</a>(<a id="581c20" class="tk">tid</a>);</td></tr>
  1175. <tr name="582" id="582">
  1176. <td><a id="l582" class='ln'>582</a></td><td><span class="br">}</span></td></tr>
  1177. <tr name="583" id="583">
  1178. <td><a id="l583" class='ln'>583</a></td><td></td></tr>
  1179. <tr name="584" id="584">
  1180. <td><a id="l584" class='ln'>584</a></td><td><span class="ct">/* Update for root system: '&lt;Root&gt;' */</span></td></tr>
  1181. <tr name="585" id="585">
  1182. <td><a id="l585" class='ln'>585</a></td><td><span class="pp">#define</span> <a id="585c9" class="tk">MDL_UPDATE</a></td></tr>
  1183. <tr name="586" id="586">
  1184. <td><a id="l586" class='ln'>586</a></td><td></td></tr>
  1185. <tr name="587" id="587">
  1186. <td><a id="l587" class='ln'>587</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="587c13" class="tk">mdlUpdate</a>(<a id="587c23" class="tk">SimStruct</a> <a id="587c33" class="tk">*</a><a id="587c34" class="tk">S</a>, <a id="587c37" class="tk">int_T</a> <a id="587c43" class="tk">tid</a>)</td></tr>
  1187. <tr name="588" id="588">
  1188. <td><a id="l588" class='ln'>588</a></td><td><span class="br">{</span></td></tr>
  1189. <tr name="589" id="589">
  1190. <td><a id="l589" class='ln'>589</a></td><td> <a id="589c3" class="tk">B_PWM_T</a> <a id="589c11" class="tk">*</a><a id="589c12" class="tk">_rtB</a>;</td></tr>
  1191. <tr name="590" id="590">
  1192. <td><a id="l590" class='ln'>590</a></td><td> <a id="590c3" class="tk">_rtB</a> = ((<a id="590c12" class="tk">B_PWM_T</a> <a id="590c20" class="tk">*</a>) <a id="590c23" class="tk">ssGetLocalBlockIO</a>(<a id="590c41" class="tk">S</a>));</td></tr>
  1193. <tr name="591" id="591">
  1194. <td><a id="l591" class='ln'>591</a></td><td> <span class="kw">if</span> (<a id="591c7" class="tk">ssIsContinuousTask</a>(<a id="591c26" class="tk">S</a>, <a id="591c29" class="tk">tid</a>)) <span class="br">{</span></td></tr>
  1195. <tr name="592" id="592">
  1196. <td><a id="l592" class='ln'>592</a></td><td> <span class="ct">/* Update for TransportDelay: '&lt;S2&gt;/Transport Delay' */</span></td></tr>
  1197. <tr name="593" id="593">
  1198. <td><a id="l593" class='ln'>593</a></td><td> <span class="br">{</span></td></tr>
  1199. <tr name="594" id="594">
  1200. <td><a id="l594" class='ln'>594</a></td><td> <a id="594c7" class="tk">real_T</a> <a id="594c14" class="tk">*</a><a id="594c15" class="tk">*</a><a id="594c16" class="tk">uBuffer</a> = (<a id="594c27" class="tk">real_T</a><a id="594c33" class="tk">*</a><a id="594c34" class="tk">*</a>)<a id="594c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="594c43" class="tk">*</a><a id="594c44" class="tk">*</a>) <a id="594c47" class="tk">ssGetDWork</a>(<a id="594c58" class="tk">S</a>, 3))[0];</td></tr>
  1201. <tr name="595" id="595">
  1202. <td><a id="l595" class='ln'>595</a></td><td> <a id="595c7" class="tk">real_T</a> <a id="595c14" class="tk">*</a><a id="595c15" class="tk">*</a><a id="595c16" class="tk">tBuffer</a> = (<a id="595c27" class="tk">real_T</a><a id="595c33" class="tk">*</a><a id="595c34" class="tk">*</a>)<a id="595c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="595c43" class="tk">*</a><a id="595c44" class="tk">*</a>) <a id="595c47" class="tk">ssGetDWork</a>(<a id="595c58" class="tk">S</a>, 3))[1];</td></tr>
  1203. <tr name="596" id="596">
  1204. <td><a id="l596" class='ln'>596</a></td><td> <a id="596c7" class="tk">real_T</a> <a id="596c14" class="tk">simTime</a> = <a id="596c24" class="tk">ssGetT</a>(<a id="596c31" class="tk">S</a>);</td></tr>
  1205. <tr name="597" id="597">
  1206. <td><a id="l597" class='ln'>597</a></td><td> ((<a id="597c9" class="tk">int_T</a><a id="597c14" class="tk">*</a>) <a id="597c17" class="tk">ssGetDWork</a>(<a id="597c28" class="tk">S</a>, 6))[1] = ((((<a id="597c44" class="tk">int_T</a><a id="597c49" class="tk">*</a>) <a id="597c52" class="tk">ssGetDWork</a>(<a id="597c63" class="tk">S</a>, 6))[1] <a id="597c73" class="tk">&lt;</a></td></tr>
  1207. <tr name="598" id="598">
  1208. <td><a id="l598" class='ln'>598</a></td><td> (((<a id="598c12" class="tk">int_T</a><a id="598c17" class="tk">*</a>) <a id="598c20" class="tk">ssGetDWork</a>(<a id="598c31" class="tk">S</a>, 6))[3]<a id="598c40" class="tk">-</a>1)) <a id="598c45" class="tk">?</a> (((<a id="598c50" class="tk">int_T</a><a id="598c55" class="tk">*</a>) <a id="598c58" class="tk">ssGetDWork</a>(<a id="598c69" class="tk">S</a>, 6))[1]<a id="598c78" class="tk">+</a>1)</td></tr>
  1209. <tr name="599" id="599">
  1210. <td><a id="l599" class='ln'>599</a></td><td> <a id="599c9" class="tk">:</a> 0);</td></tr>
  1211. <tr name="600" id="600">
  1212. <td><a id="l600" class='ln'>600</a></td><td> <span class="kw">if</span> (((<a id="600c13" class="tk">int_T</a><a id="600c18" class="tk">*</a>) <a id="600c21" class="tk">ssGetDWork</a>(<a id="600c32" class="tk">S</a>, 6))[1] <a id="600c42" class="tk">==</a> ((<a id="600c47" class="tk">int_T</a><a id="600c52" class="tk">*</a>) <a id="600c55" class="tk">ssGetDWork</a>(<a id="600c66" class="tk">S</a>, 6))[0]) <span class="br">{</span></td></tr>
  1213. <tr name="601" id="601">
  1214. <td><a id="l601" class='ln'>601</a></td><td> ((<a id="601c11" class="tk">int_T</a><a id="601c16" class="tk">*</a>) <a id="601c19" class="tk">ssGetDWork</a>(<a id="601c30" class="tk">S</a>, 6))[0] = ((((<a id="601c46" class="tk">int_T</a><a id="601c51" class="tk">*</a>) <a id="601c54" class="tk">ssGetDWork</a>(<a id="601c65" class="tk">S</a>, 6))[0] <a id="601c75" class="tk">&lt;</a></td></tr>
  1215. <tr name="602" id="602">
  1216. <td><a id="l602" class='ln'>602</a></td><td> (((<a id="602c14" class="tk">int_T</a><a id="602c19" class="tk">*</a>) <a id="602c22" class="tk">ssGetDWork</a>(<a id="602c33" class="tk">S</a>, 6))[3]<a id="602c42" class="tk">-</a>1)) <a id="602c47" class="tk">?</a> (((<a id="602c52" class="tk">int_T</a><a id="602c57" class="tk">*</a>) <a id="602c60" class="tk">ssGetDWork</a>(<a id="602c71" class="tk">S</a>, 6))[0]<a id="602c80" class="tk">+</a></td></tr>
  1217. <tr name="603" id="603">
  1218. <td><a id="l603" class='ln'>603</a></td><td> 1) <a id="603c14" class="tk">:</a> 0);</td></tr>
  1219. <tr name="604" id="604">
  1220. <td><a id="l604" class='ln'>604</a></td><td> <span class="br">}</span></td></tr>
  1221. <tr name="605" id="605">
  1222. <td><a id="l605" class='ln'>605</a></td><td></td></tr>
  1223. <tr name="606" id="606">
  1224. <td><a id="l606" class='ln'>606</a></td><td> (<a id="606c8" class="tk">*</a><a id="606c9" class="tk">tBuffer</a>)[((<a id="606c20" class="tk">int_T</a><a id="606c25" class="tk">*</a>) <a id="606c28" class="tk">ssGetDWork</a>(<a id="606c39" class="tk">S</a>, 6))[1]] = <a id="606c52" class="tk">simTime</a>;</td></tr>
  1225. <tr name="607" id="607">
  1226. <td><a id="l607" class='ln'>607</a></td><td> (<a id="607c8" class="tk">*</a><a id="607c9" class="tk">uBuffer</a>)[((<a id="607c20" class="tk">int_T</a><a id="607c25" class="tk">*</a>) <a id="607c28" class="tk">ssGetDWork</a>(<a id="607c39" class="tk">S</a>, 6))[1]] = <a id="607c52" class="tk">_rtB</a>-&gt;<a id="607c58" class="tk">DataTypeConversion4</a>;</td></tr>
  1227. <tr name="608" id="608">
  1228. <td><a id="l608" class='ln'>608</a></td><td> <span class="br">}</span></td></tr>
  1229. <tr name="609" id="609">
  1230. <td><a id="l609" class='ln'>609</a></td><td></td></tr>
  1231. <tr name="610" id="610">
  1232. <td><a id="l610" class='ln'>610</a></td><td> <span class="ct">/* Update for TransportDelay: '&lt;S2&gt;/Transport Delay1' */</span></td></tr>
  1233. <tr name="611" id="611">
  1234. <td><a id="l611" class='ln'>611</a></td><td> <span class="br">{</span></td></tr>
  1235. <tr name="612" id="612">
  1236. <td><a id="l612" class='ln'>612</a></td><td> <a id="612c7" class="tk">real_T</a> <a id="612c14" class="tk">*</a><a id="612c15" class="tk">*</a><a id="612c16" class="tk">uBuffer</a> = (<a id="612c27" class="tk">real_T</a><a id="612c33" class="tk">*</a><a id="612c34" class="tk">*</a>)<a id="612c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="612c43" class="tk">*</a><a id="612c44" class="tk">*</a>) <a id="612c47" class="tk">ssGetDWork</a>(<a id="612c58" class="tk">S</a>, 4))[0];</td></tr>
  1237. <tr name="613" id="613">
  1238. <td><a id="l613" class='ln'>613</a></td><td> <a id="613c7" class="tk">real_T</a> <a id="613c14" class="tk">*</a><a id="613c15" class="tk">*</a><a id="613c16" class="tk">tBuffer</a> = (<a id="613c27" class="tk">real_T</a><a id="613c33" class="tk">*</a><a id="613c34" class="tk">*</a>)<a id="613c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="613c43" class="tk">*</a><a id="613c44" class="tk">*</a>) <a id="613c47" class="tk">ssGetDWork</a>(<a id="613c58" class="tk">S</a>, 4))[1];</td></tr>
  1239. <tr name="614" id="614">
  1240. <td><a id="l614" class='ln'>614</a></td><td> <a id="614c7" class="tk">real_T</a> <a id="614c14" class="tk">simTime</a> = <a id="614c24" class="tk">ssGetT</a>(<a id="614c31" class="tk">S</a>);</td></tr>
  1241. <tr name="615" id="615">
  1242. <td><a id="l615" class='ln'>615</a></td><td> ((<a id="615c9" class="tk">int_T</a><a id="615c14" class="tk">*</a>) <a id="615c17" class="tk">ssGetDWork</a>(<a id="615c28" class="tk">S</a>, 7))[1] = ((((<a id="615c44" class="tk">int_T</a><a id="615c49" class="tk">*</a>) <a id="615c52" class="tk">ssGetDWork</a>(<a id="615c63" class="tk">S</a>, 7))[1] <a id="615c73" class="tk">&lt;</a></td></tr>
  1243. <tr name="616" id="616">
  1244. <td><a id="l616" class='ln'>616</a></td><td> (((<a id="616c12" class="tk">int_T</a><a id="616c17" class="tk">*</a>) <a id="616c20" class="tk">ssGetDWork</a>(<a id="616c31" class="tk">S</a>, 7))[3]<a id="616c40" class="tk">-</a>1)) <a id="616c45" class="tk">?</a> (((<a id="616c50" class="tk">int_T</a><a id="616c55" class="tk">*</a>) <a id="616c58" class="tk">ssGetDWork</a>(<a id="616c69" class="tk">S</a>, 7))[1]<a id="616c78" class="tk">+</a>1)</td></tr>
  1245. <tr name="617" id="617">
  1246. <td><a id="l617" class='ln'>617</a></td><td> <a id="617c9" class="tk">:</a> 0);</td></tr>
  1247. <tr name="618" id="618">
  1248. <td><a id="l618" class='ln'>618</a></td><td> <span class="kw">if</span> (((<a id="618c13" class="tk">int_T</a><a id="618c18" class="tk">*</a>) <a id="618c21" class="tk">ssGetDWork</a>(<a id="618c32" class="tk">S</a>, 7))[1] <a id="618c42" class="tk">==</a> ((<a id="618c47" class="tk">int_T</a><a id="618c52" class="tk">*</a>) <a id="618c55" class="tk">ssGetDWork</a>(<a id="618c66" class="tk">S</a>, 7))[0]) <span class="br">{</span></td></tr>
  1249. <tr name="619" id="619">
  1250. <td><a id="l619" class='ln'>619</a></td><td> ((<a id="619c11" class="tk">int_T</a><a id="619c16" class="tk">*</a>) <a id="619c19" class="tk">ssGetDWork</a>(<a id="619c30" class="tk">S</a>, 7))[0] = ((((<a id="619c46" class="tk">int_T</a><a id="619c51" class="tk">*</a>) <a id="619c54" class="tk">ssGetDWork</a>(<a id="619c65" class="tk">S</a>, 7))[0] <a id="619c75" class="tk">&lt;</a></td></tr>
  1251. <tr name="620" id="620">
  1252. <td><a id="l620" class='ln'>620</a></td><td> (((<a id="620c14" class="tk">int_T</a><a id="620c19" class="tk">*</a>) <a id="620c22" class="tk">ssGetDWork</a>(<a id="620c33" class="tk">S</a>, 7))[3]<a id="620c42" class="tk">-</a>1)) <a id="620c47" class="tk">?</a> (((<a id="620c52" class="tk">int_T</a><a id="620c57" class="tk">*</a>) <a id="620c60" class="tk">ssGetDWork</a>(<a id="620c71" class="tk">S</a>, 7))[0]<a id="620c80" class="tk">+</a></td></tr>
  1253. <tr name="621" id="621">
  1254. <td><a id="l621" class='ln'>621</a></td><td> 1) <a id="621c14" class="tk">:</a> 0);</td></tr>
  1255. <tr name="622" id="622">
  1256. <td><a id="l622" class='ln'>622</a></td><td> <span class="br">}</span></td></tr>
  1257. <tr name="623" id="623">
  1258. <td><a id="l623" class='ln'>623</a></td><td></td></tr>
  1259. <tr name="624" id="624">
  1260. <td><a id="l624" class='ln'>624</a></td><td> (<a id="624c8" class="tk">*</a><a id="624c9" class="tk">tBuffer</a>)[((<a id="624c20" class="tk">int_T</a><a id="624c25" class="tk">*</a>) <a id="624c28" class="tk">ssGetDWork</a>(<a id="624c39" class="tk">S</a>, 7))[1]] = <a id="624c52" class="tk">simTime</a>;</td></tr>
  1261. <tr name="625" id="625">
  1262. <td><a id="l625" class='ln'>625</a></td><td> (<a id="625c8" class="tk">*</a><a id="625c9" class="tk">uBuffer</a>)[((<a id="625c20" class="tk">int_T</a><a id="625c25" class="tk">*</a>) <a id="625c28" class="tk">ssGetDWork</a>(<a id="625c39" class="tk">S</a>, 7))[1]] = <a id="625c52" class="tk">_rtB</a>-&gt;<a id="625c58" class="tk">DataTypeConversion2</a>;</td></tr>
  1263. <tr name="626" id="626">
  1264. <td><a id="l626" class='ln'>626</a></td><td> <span class="br">}</span></td></tr>
  1265. <tr name="627" id="627">
  1266. <td><a id="l627" class='ln'>627</a></td><td></td></tr>
  1267. <tr name="628" id="628">
  1268. <td><a id="l628" class='ln'>628</a></td><td> <span class="ct">/* Update for TransportDelay: '&lt;S2&gt;/Transport Delay2' */</span></td></tr>
  1269. <tr name="629" id="629">
  1270. <td><a id="l629" class='ln'>629</a></td><td> <span class="br">{</span></td></tr>
  1271. <tr name="630" id="630">
  1272. <td><a id="l630" class='ln'>630</a></td><td> <a id="630c7" class="tk">real_T</a> <a id="630c14" class="tk">*</a><a id="630c15" class="tk">*</a><a id="630c16" class="tk">uBuffer</a> = (<a id="630c27" class="tk">real_T</a><a id="630c33" class="tk">*</a><a id="630c34" class="tk">*</a>)<a id="630c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="630c43" class="tk">*</a><a id="630c44" class="tk">*</a>) <a id="630c47" class="tk">ssGetDWork</a>(<a id="630c58" class="tk">S</a>, 5))[0];</td></tr>
  1273. <tr name="631" id="631">
  1274. <td><a id="l631" class='ln'>631</a></td><td> <a id="631c7" class="tk">real_T</a> <a id="631c14" class="tk">*</a><a id="631c15" class="tk">*</a><a id="631c16" class="tk">tBuffer</a> = (<a id="631c27" class="tk">real_T</a><a id="631c33" class="tk">*</a><a id="631c34" class="tk">*</a>)<a id="631c36" class="tk">&amp;</a>((<span class="kw">void</span><a id="631c43" class="tk">*</a><a id="631c44" class="tk">*</a>) <a id="631c47" class="tk">ssGetDWork</a>(<a id="631c58" class="tk">S</a>, 5))[1];</td></tr>
  1275. <tr name="632" id="632">
  1276. <td><a id="l632" class='ln'>632</a></td><td> <a id="632c7" class="tk">real_T</a> <a id="632c14" class="tk">simTime</a> = <a id="632c24" class="tk">ssGetT</a>(<a id="632c31" class="tk">S</a>);</td></tr>
  1277. <tr name="633" id="633">
  1278. <td><a id="l633" class='ln'>633</a></td><td> ((<a id="633c9" class="tk">int_T</a><a id="633c14" class="tk">*</a>) <a id="633c17" class="tk">ssGetDWork</a>(<a id="633c28" class="tk">S</a>, 8))[1] = ((((<a id="633c44" class="tk">int_T</a><a id="633c49" class="tk">*</a>) <a id="633c52" class="tk">ssGetDWork</a>(<a id="633c63" class="tk">S</a>, 8))[1] <a id="633c73" class="tk">&lt;</a></td></tr>
  1279. <tr name="634" id="634">
  1280. <td><a id="l634" class='ln'>634</a></td><td> (((<a id="634c12" class="tk">int_T</a><a id="634c17" class="tk">*</a>) <a id="634c20" class="tk">ssGetDWork</a>(<a id="634c31" class="tk">S</a>, 8))[3]<a id="634c40" class="tk">-</a>1)) <a id="634c45" class="tk">?</a> (((<a id="634c50" class="tk">int_T</a><a id="634c55" class="tk">*</a>) <a id="634c58" class="tk">ssGetDWork</a>(<a id="634c69" class="tk">S</a>, 8))[1]<a id="634c78" class="tk">+</a>1)</td></tr>
  1281. <tr name="635" id="635">
  1282. <td><a id="l635" class='ln'>635</a></td><td> <a id="635c9" class="tk">:</a> 0);</td></tr>
  1283. <tr name="636" id="636">
  1284. <td><a id="l636" class='ln'>636</a></td><td> <span class="kw">if</span> (((<a id="636c13" class="tk">int_T</a><a id="636c18" class="tk">*</a>) <a id="636c21" class="tk">ssGetDWork</a>(<a id="636c32" class="tk">S</a>, 8))[1] <a id="636c42" class="tk">==</a> ((<a id="636c47" class="tk">int_T</a><a id="636c52" class="tk">*</a>) <a id="636c55" class="tk">ssGetDWork</a>(<a id="636c66" class="tk">S</a>, 8))[0]) <span class="br">{</span></td></tr>
  1285. <tr name="637" id="637">
  1286. <td><a id="l637" class='ln'>637</a></td><td> ((<a id="637c11" class="tk">int_T</a><a id="637c16" class="tk">*</a>) <a id="637c19" class="tk">ssGetDWork</a>(<a id="637c30" class="tk">S</a>, 8))[0] = ((((<a id="637c46" class="tk">int_T</a><a id="637c51" class="tk">*</a>) <a id="637c54" class="tk">ssGetDWork</a>(<a id="637c65" class="tk">S</a>, 8))[0] <a id="637c75" class="tk">&lt;</a></td></tr>
  1287. <tr name="638" id="638">
  1288. <td><a id="l638" class='ln'>638</a></td><td> (((<a id="638c14" class="tk">int_T</a><a id="638c19" class="tk">*</a>) <a id="638c22" class="tk">ssGetDWork</a>(<a id="638c33" class="tk">S</a>, 8))[3]<a id="638c42" class="tk">-</a>1)) <a id="638c47" class="tk">?</a> (((<a id="638c52" class="tk">int_T</a><a id="638c57" class="tk">*</a>) <a id="638c60" class="tk">ssGetDWork</a>(<a id="638c71" class="tk">S</a>, 8))[0]<a id="638c80" class="tk">+</a></td></tr>
  1289. <tr name="639" id="639">
  1290. <td><a id="l639" class='ln'>639</a></td><td> 1) <a id="639c14" class="tk">:</a> 0);</td></tr>
  1291. <tr name="640" id="640">
  1292. <td><a id="l640" class='ln'>640</a></td><td> <span class="br">}</span></td></tr>
  1293. <tr name="641" id="641">
  1294. <td><a id="l641" class='ln'>641</a></td><td></td></tr>
  1295. <tr name="642" id="642">
  1296. <td><a id="l642" class='ln'>642</a></td><td> (<a id="642c8" class="tk">*</a><a id="642c9" class="tk">tBuffer</a>)[((<a id="642c20" class="tk">int_T</a><a id="642c25" class="tk">*</a>) <a id="642c28" class="tk">ssGetDWork</a>(<a id="642c39" class="tk">S</a>, 8))[1]] = <a id="642c52" class="tk">simTime</a>;</td></tr>
  1297. <tr name="643" id="643">
  1298. <td><a id="l643" class='ln'>643</a></td><td> (<a id="643c8" class="tk">*</a><a id="643c9" class="tk">uBuffer</a>)[((<a id="643c20" class="tk">int_T</a><a id="643c25" class="tk">*</a>) <a id="643c28" class="tk">ssGetDWork</a>(<a id="643c39" class="tk">S</a>, 8))[1]] = <a id="643c52" class="tk">_rtB</a>-&gt;<a id="643c58" class="tk">DataTypeConversion6</a>;</td></tr>
  1299. <tr name="644" id="644">
  1300. <td><a id="l644" class='ln'>644</a></td><td> <span class="br">}</span></td></tr>
  1301. <tr name="645" id="645">
  1302. <td><a id="l645" class='ln'>645</a></td><td> <span class="br">}</span></td></tr>
  1303. <tr name="646" id="646">
  1304. <td><a id="l646" class='ln'>646</a></td><td></td></tr>
  1305. <tr name="647" id="647">
  1306. <td><a id="l647" class='ln'>647</a></td><td> <a id="647c3" class="tk">UNUSED_PARAMETER</a>(<a id="647c20" class="tk">tid</a>);</td></tr>
  1307. <tr name="648" id="648">
  1308. <td><a id="l648" class='ln'>648</a></td><td><span class="br">}</span></td></tr>
  1309. <tr name="649" id="649">
  1310. <td><a id="l649" class='ln'>649</a></td><td></td></tr>
  1311. <tr name="650" id="650">
  1312. <td><a id="l650" class='ln'>650</a></td><td><span class="ct">/* Termination for root system: '&lt;Root&gt;' */</span></td></tr>
  1313. <tr name="651" id="651">
  1314. <td><a id="l651" class='ln'>651</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="651c13" class="tk">mdlTerminate</a>(<a id="651c26" class="tk">SimStruct</a> <a id="651c36" class="tk">*</a><a id="651c37" class="tk">S</a>)</td></tr>
  1315. <tr name="652" id="652">
  1316. <td><a id="l652" class='ln'>652</a></td><td><span class="br">{</span></td></tr>
  1317. <tr name="653" id="653">
  1318. <td><a id="l653" class='ln'>653</a></td><td> <a id="653c3" class="tk">B_PWM_T</a> <a id="653c11" class="tk">*</a><a id="653c12" class="tk">_rtB</a>;</td></tr>
  1319. <tr name="654" id="654">
  1320. <td><a id="l654" class='ln'>654</a></td><td> <a id="654c3" class="tk">_rtB</a> = ((<a id="654c12" class="tk">B_PWM_T</a> <a id="654c20" class="tk">*</a>) <a id="654c23" class="tk">ssGetLocalBlockIO</a>(<a id="654c41" class="tk">S</a>));</td></tr>
  1321. <tr name="655" id="655">
  1322. <td><a id="l655" class='ln'>655</a></td><td></td></tr>
  1323. <tr name="656" id="656">
  1324. <td><a id="l656" class='ln'>656</a></td><td><span class="pp">#if</span> <a id="656c5" class="tk">defined</a>(<a id="656c13" class="tk">RT_MALLOC</a>) <a id="656c24" class="tk">||</a> <a id="656c27" class="tk">defined</a>(<a id="656c35" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
  1325. <tr name="657" id="657">
  1326. <td><a id="l657" class='ln'>657</a></td><td></td></tr>
  1327. <tr name="658" id="658">
  1328. <td><a id="l658" class='ln'>658</a></td><td> <span class="kw">if</span> (<a id="658c7" class="tk">ssGetUserData</a>(<a id="658c21" class="tk">S</a>) <a id="658c24" class="tk">!=</a> (<a id="658c28" class="tk">NULL</a>) ) <span class="br">{</span></td></tr>
  1329. <tr name="659" id="659">
  1330. <td><a id="l659" class='ln'>659</a></td><td> <a id="659c5" class="tk">rt_FREE</a>(<a id="659c13" class="tk">ssGetLocalBlockIO</a>(<a id="659c31" class="tk">S</a>));</td></tr>
  1331. <tr name="660" id="660">
  1332. <td><a id="l660" class='ln'>660</a></td><td> <span class="br">}</span></td></tr>
  1333. <tr name="661" id="661">
  1334. <td><a id="l661" class='ln'>661</a></td><td></td></tr>
  1335. <tr name="662" id="662">
  1336. <td><a id="l662" class='ln'>662</a></td><td> <a id="662c3" class="tk">rt_FREE</a>(<a id="662c11" class="tk">ssGetUserData</a>(<a id="662c25" class="tk">S</a>));</td></tr>
  1337. <tr name="663" id="663">
  1338. <td><a id="l663" class='ln'>663</a></td><td></td></tr>
  1339. <tr name="664" id="664">
  1340. <td><a id="l664" class='ln'>664</a></td><td><span class="pp">#endif</span></td></tr>
  1341. <tr name="665" id="665">
  1342. <td><a id="l665" class='ln'>665</a></td><td></td></tr>
  1343. <tr name="666" id="666">
  1344. <td><a id="l666" class='ln'>666</a></td><td><span class="br">}</span></td></tr>
  1345. <tr name="667" id="667">
  1346. <td><a id="l667" class='ln'>667</a></td><td></td></tr>
  1347. <tr name="668" id="668">
  1348. <td><a id="l668" class='ln'>668</a></td><td><span class="pp">#if</span> <a id="668c5" class="tk">defined</a>(<a id="668c13" class="tk">RT_MALLOC</a>) <a id="668c24" class="tk">||</a> <a id="668c27" class="tk">defined</a>(<a id="668c35" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
  1349. <tr name="669" id="669">
  1350. <td><a id="l669" class='ln'>669</a></td><td><span class="pp">#include "PWM_mid.h"</span></td></tr>
  1351. <tr name="670" id="670">
  1352. <td><a id="l670" class='ln'>670</a></td><td><span class="pp">#endif</span></td></tr>
  1353. <tr name="671" id="671">
  1354. <td><a id="l671" class='ln'>671</a></td><td></td></tr>
  1355. <tr name="672" id="672">
  1356. <td><a id="l672" class='ln'>672</a></td><td><span class="ct">/* Function to initialize sizes. */</span></td></tr>
  1357. <tr name="673" id="673">
  1358. <td><a id="l673" class='ln'>673</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="673c13" class="tk">mdlInitializeSizes</a>(<a id="673c32" class="tk">SimStruct</a> <a id="673c42" class="tk">*</a><a id="673c43" class="tk">S</a>)</td></tr>
  1359. <tr name="674" id="674">
  1360. <td><a id="l674" class='ln'>674</a></td><td><span class="br">{</span></td></tr>
  1361. <tr name="675" id="675">
  1362. <td><a id="l675" class='ln'>675</a></td><td> <a id="675c3" class="tk">ssSetNumSampleTimes</a>(<a id="675c23" class="tk">S</a>, 2); <span class="ct">/* Number of sample times */</span></td></tr>
  1363. <tr name="676" id="676">
  1364. <td><a id="l676" class='ln'>676</a></td><td> <a id="676c3" class="tk">ssSetNumContStates</a>(<a id="676c22" class="tk">S</a>, 0); <span class="ct">/* Number of continuous states */</span></td></tr>
  1365. <tr name="677" id="677">
  1366. <td><a id="l677" class='ln'>677</a></td><td> <a id="677c3" class="tk">ssSetNumNonsampledZCs</a>(<a id="677c25" class="tk">S</a>, 0); <span class="ct">/* Number of nonsampled ZCs */</span></td></tr>
  1367. <tr name="678" id="678">
  1368. <td><a id="l678" class='ln'>678</a></td><td></td></tr>
  1369. <tr name="679" id="679">
  1370. <td><a id="l679" class='ln'>679</a></td><td> <span class="ct">/* Number of output ports */</span></td></tr>
  1371. <tr name="680" id="680">
  1372. <td><a id="l680" class='ln'>680</a></td><td> <span class="kw">if</span> (<a id="680c7" class="tk">!</a><a id="680c8" class="tk">ssSetNumOutputPorts</a>(<a id="680c28" class="tk">S</a>, 1))</td></tr>
  1373. <tr name="681" id="681">
  1374. <td><a id="l681" class='ln'>681</a></td><td> <span class="kw">return</span>;</td></tr>
  1375. <tr name="682" id="682">
  1376. <td><a id="l682" class='ln'>682</a></td><td></td></tr>
  1377. <tr name="683" id="683">
  1378. <td><a id="l683" class='ln'>683</a></td><td> <span class="ct">/* outport number: 0 */</span></td></tr>
  1379. <tr name="684" id="684">
  1380. <td><a id="l684" class='ln'>684</a></td><td> <span class="kw">if</span> (<a id="684c7" class="tk">!</a><a id="684c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="684c39" class="tk">S</a>, 0, 6))</td></tr>
  1381. <tr name="685" id="685">
  1382. <td><a id="l685" class='ln'>685</a></td><td> <span class="kw">return</span>;</td></tr>
  1383. <tr name="686" id="686">
  1384. <td><a id="l686" class='ln'>686</a></td><td> <span class="kw">if</span> (<a id="686c7" class="tk">ssGetSimMode</a>(<a id="686c20" class="tk">S</a>) <a id="686c23" class="tk">!=</a> <a id="686c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
  1385. <tr name="687" id="687">
  1386. <td><a id="l687" class='ln'>687</a></td><td> <a id="687c5" class="tk">ssSetOutputPortDataType</a>(<a id="687c29" class="tk">S</a>, 0, <a id="687c35" class="tk">SS_DOUBLE</a>);</td></tr>
  1387. <tr name="688" id="688">
  1388. <td><a id="l688" class='ln'>688</a></td><td> <span class="br">}</span></td></tr>
  1389. <tr name="689" id="689">
  1390. <td><a id="l689" class='ln'>689</a></td><td></td></tr>
  1391. <tr name="690" id="690">
  1392. <td><a id="l690" class='ln'>690</a></td><td> <a id="690c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="690c29" class="tk">S</a>, 0, 0.0);</td></tr>
  1393. <tr name="691" id="691">
  1394. <td><a id="l691" class='ln'>691</a></td><td> <a id="691c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="691c29" class="tk">S</a>, 0, 0.0);</td></tr>
  1395. <tr name="692" id="692">
  1396. <td><a id="l692" class='ln'>692</a></td><td> <a id="692c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="692c28" class="tk">S</a>, 0, <a id="692c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
  1397. <tr name="693" id="693">
  1398. <td><a id="l693" class='ln'>693</a></td><td></td></tr>
  1399. <tr name="694" id="694">
  1400. <td><a id="l694" class='ln'>694</a></td><td> <span class="ct">/* Number of input ports */</span></td></tr>
  1401. <tr name="695" id="695">
  1402. <td><a id="l695" class='ln'>695</a></td><td> <span class="kw">if</span> (<a id="695c7" class="tk">!</a><a id="695c8" class="tk">ssSetNumInputPorts</a>(<a id="695c27" class="tk">S</a>, 1))</td></tr>
  1403. <tr name="696" id="696">
  1404. <td><a id="l696" class='ln'>696</a></td><td> <span class="kw">return</span>;</td></tr>
  1405. <tr name="697" id="697">
  1406. <td><a id="l697" class='ln'>697</a></td><td></td></tr>
  1407. <tr name="698" id="698">
  1408. <td><a id="l698" class='ln'>698</a></td><td> <span class="ct">/* inport number: 0 */</span></td></tr>
  1409. <tr name="699" id="699">
  1410. <td><a id="l699" class='ln'>699</a></td><td> <span class="br">{</span></td></tr>
  1411. <tr name="700" id="700">
  1412. <td><a id="l700" class='ln'>700</a></td><td> <span class="kw">if</span> (<a id="700c9" class="tk">!</a><a id="700c10" class="tk">ssSetInputPortVectorDimension</a>(<a id="700c40" class="tk">S</a>, 0, 3))</td></tr>
  1413. <tr name="701" id="701">
  1414. <td><a id="l701" class='ln'>701</a></td><td> <span class="kw">return</span>;</td></tr>
  1415. <tr name="702" id="702">
  1416. <td><a id="l702" class='ln'>702</a></td><td> <span class="kw">if</span> (<a id="702c9" class="tk">ssGetSimMode</a>(<a id="702c22" class="tk">S</a>) <a id="702c25" class="tk">!=</a> <a id="702c28" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
  1417. <tr name="703" id="703">
  1418. <td><a id="l703" class='ln'>703</a></td><td> <a id="703c7" class="tk">ssSetInputPortDataType</a>(<a id="703c30" class="tk">S</a>, 0, <a id="703c36" class="tk">SS_DOUBLE</a>);</td></tr>
  1419. <tr name="704" id="704">
  1420. <td><a id="l704" class='ln'>704</a></td><td> <span class="br">}</span></td></tr>
  1421. <tr name="705" id="705">
  1422. <td><a id="l705" class='ln'>705</a></td><td></td></tr>
  1423. <tr name="706" id="706">
  1424. <td><a id="l706" class='ln'>706</a></td><td> <a id="706c5" class="tk">ssSetInputPortDirectFeedThrough</a>(<a id="706c37" class="tk">S</a>, 0, 1);</td></tr>
  1425. <tr name="707" id="707">
  1426. <td><a id="l707" class='ln'>707</a></td><td> <a id="707c5" class="tk">ssSetInputPortSampleTime</a>(<a id="707c30" class="tk">S</a>, 0, 5.0E-7);</td></tr>
  1427. <tr name="708" id="708">
  1428. <td><a id="l708" class='ln'>708</a></td><td> <a id="708c5" class="tk">ssSetInputPortOffsetTime</a>(<a id="708c30" class="tk">S</a>, 0, 0.0);</td></tr>
  1429. <tr name="709" id="709">
  1430. <td><a id="l709" class='ln'>709</a></td><td> <a id="709c5" class="tk">ssSetInputPortOverWritable</a>(<a id="709c32" class="tk">S</a>, 0, 0);</td></tr>
  1431. <tr name="710" id="710">
  1432. <td><a id="l710" class='ln'>710</a></td><td> <a id="710c5" class="tk">ssSetInputPortOptimOpts</a>(<a id="710c29" class="tk">S</a>, 0, <a id="710c35" class="tk">SS_NOT_REUSABLE_AND_GLOBAL</a>);</td></tr>
  1433. <tr name="711" id="711">
  1434. <td><a id="l711" class='ln'>711</a></td><td> <span class="br">}</span></td></tr>
  1435. <tr name="712" id="712">
  1436. <td><a id="l712" class='ln'>712</a></td><td></td></tr>
  1437. <tr name="713" id="713">
  1438. <td><a id="l713" class='ln'>713</a></td><td> <a id="713c3" class="tk">ssSetRTWGeneratedSFcn</a>(<a id="713c25" class="tk">S</a>, 1); <span class="ct">/* Generated S-function */</span></td></tr>
  1439. <tr name="714" id="714">
  1440. <td><a id="l714" class='ln'>714</a></td><td></td></tr>
  1441. <tr name="715" id="715">
  1442. <td><a id="l715" class='ln'>715</a></td><td> <span class="ct">/* DWork */</span></td></tr>
  1443. <tr name="716" id="716">
  1444. <td><a id="l716" class='ln'>716</a></td><td> <span class="kw">if</span> (<a id="716c7" class="tk">!</a><a id="716c8" class="tk">ssSetNumDWork</a>(<a id="716c22" class="tk">S</a>, 9)) <span class="br">{</span></td></tr>
  1445. <tr name="717" id="717">
  1446. <td><a id="l717" class='ln'>717</a></td><td> <span class="kw">return</span>;</td></tr>
  1447. <tr name="718" id="718">
  1448. <td><a id="l718" class='ln'>718</a></td><td> <span class="br">}</span></td></tr>
  1449. <tr name="719" id="719">
  1450. <td><a id="l719" class='ln'>719</a></td><td></td></tr>
  1451. <tr name="720" id="720">
  1452. <td><a id="l720" class='ln'>720</a></td><td> <span class="ct">/* '&lt;S2&gt;/Transport Delay': RWORK */</span></td></tr>
  1453. <tr name="721" id="721">
  1454. <td><a id="l721" class='ln'>721</a></td><td> <a id="721c3" class="tk">ssSetDWorkName</a>(<a id="721c18" class="tk">S</a>, 0, "DWORK0");</td></tr>
  1455. <tr name="722" id="722">
  1456. <td><a id="l722" class='ln'>722</a></td><td> <a id="722c3" class="tk">ssSetDWorkWidth</a>(<a id="722c19" class="tk">S</a>, 0, 2049);</td></tr>
  1457. <tr name="723" id="723">
  1458. <td><a id="l723" class='ln'>723</a></td><td></td></tr>
  1459. <tr name="724" id="724">
  1460. <td><a id="l724" class='ln'>724</a></td><td> <span class="ct">/* '&lt;S2&gt;/Transport Delay1': RWORK */</span></td></tr>
  1461. <tr name="725" id="725">
  1462. <td><a id="l725" class='ln'>725</a></td><td> <a id="725c3" class="tk">ssSetDWorkName</a>(<a id="725c18" class="tk">S</a>, 1, "DWORK1");</td></tr>
  1463. <tr name="726" id="726">
  1464. <td><a id="l726" class='ln'>726</a></td><td> <a id="726c3" class="tk">ssSetDWorkWidth</a>(<a id="726c19" class="tk">S</a>, 1, 2049);</td></tr>
  1465. <tr name="727" id="727">
  1466. <td><a id="l727" class='ln'>727</a></td><td></td></tr>
  1467. <tr name="728" id="728">
  1468. <td><a id="l728" class='ln'>728</a></td><td> <span class="ct">/* '&lt;S2&gt;/Transport Delay2': RWORK */</span></td></tr>
  1469. <tr name="729" id="729">
  1470. <td><a id="l729" class='ln'>729</a></td><td> <a id="729c3" class="tk">ssSetDWorkName</a>(<a id="729c18" class="tk">S</a>, 2, "DWORK2");</td></tr>
  1471. <tr name="730" id="730">
  1472. <td><a id="l730" class='ln'>730</a></td><td> <a id="730c3" class="tk">ssSetDWorkWidth</a>(<a id="730c19" class="tk">S</a>, 2, 2049);</td></tr>
  1473. <tr name="731" id="731">
  1474. <td><a id="l731" class='ln'>731</a></td><td></td></tr>
  1475. <tr name="732" id="732">
  1476. <td><a id="l732" class='ln'>732</a></td><td> <span class="ct">/* '&lt;S2&gt;/Transport Delay': PWORK */</span></td></tr>
  1477. <tr name="733" id="733">
  1478. <td><a id="l733" class='ln'>733</a></td><td> <a id="733c3" class="tk">ssSetDWorkName</a>(<a id="733c18" class="tk">S</a>, 3, "DWORK3");</td></tr>
  1479. <tr name="734" id="734">
  1480. <td><a id="l734" class='ln'>734</a></td><td> <a id="734c3" class="tk">ssSetDWorkWidth</a>(<a id="734c19" class="tk">S</a>, 3, 2);</td></tr>
  1481. <tr name="735" id="735">
  1482. <td><a id="l735" class='ln'>735</a></td><td> <a id="735c3" class="tk">ssSetDWorkDataType</a>(<a id="735c22" class="tk">S</a>, 3, <a id="735c28" class="tk">SS_POINTER</a>);</td></tr>
  1483. <tr name="736" id="736">
  1484. <td><a id="l736" class='ln'>736</a></td><td></td></tr>
  1485. <tr name="737" id="737">
  1486. <td><a id="l737" class='ln'>737</a></td><td> <span class="ct">/* '&lt;S2&gt;/Transport Delay1': PWORK */</span></td></tr>
  1487. <tr name="738" id="738">
  1488. <td><a id="l738" class='ln'>738</a></td><td> <a id="738c3" class="tk">ssSetDWorkName</a>(<a id="738c18" class="tk">S</a>, 4, "DWORK4");</td></tr>
  1489. <tr name="739" id="739">
  1490. <td><a id="l739" class='ln'>739</a></td><td> <a id="739c3" class="tk">ssSetDWorkWidth</a>(<a id="739c19" class="tk">S</a>, 4, 2);</td></tr>
  1491. <tr name="740" id="740">
  1492. <td><a id="l740" class='ln'>740</a></td><td> <a id="740c3" class="tk">ssSetDWorkDataType</a>(<a id="740c22" class="tk">S</a>, 4, <a id="740c28" class="tk">SS_POINTER</a>);</td></tr>
  1493. <tr name="741" id="741">
  1494. <td><a id="l741" class='ln'>741</a></td><td></td></tr>
  1495. <tr name="742" id="742">
  1496. <td><a id="l742" class='ln'>742</a></td><td> <span class="ct">/* '&lt;S2&gt;/Transport Delay2': PWORK */</span></td></tr>
  1497. <tr name="743" id="743">
  1498. <td><a id="l743" class='ln'>743</a></td><td> <a id="743c3" class="tk">ssSetDWorkName</a>(<a id="743c18" class="tk">S</a>, 5, "DWORK5");</td></tr>
  1499. <tr name="744" id="744">
  1500. <td><a id="l744" class='ln'>744</a></td><td> <a id="744c3" class="tk">ssSetDWorkWidth</a>(<a id="744c19" class="tk">S</a>, 5, 2);</td></tr>
  1501. <tr name="745" id="745">
  1502. <td><a id="l745" class='ln'>745</a></td><td> <a id="745c3" class="tk">ssSetDWorkDataType</a>(<a id="745c22" class="tk">S</a>, 5, <a id="745c28" class="tk">SS_POINTER</a>);</td></tr>
  1503. <tr name="746" id="746">
  1504. <td><a id="l746" class='ln'>746</a></td><td></td></tr>
  1505. <tr name="747" id="747">
  1506. <td><a id="l747" class='ln'>747</a></td><td> <span class="ct">/* '&lt;S2&gt;/Transport Delay': IWORK */</span></td></tr>
  1507. <tr name="748" id="748">
  1508. <td><a id="l748" class='ln'>748</a></td><td> <a id="748c3" class="tk">ssSetDWorkName</a>(<a id="748c18" class="tk">S</a>, 6, "DWORK6");</td></tr>
  1509. <tr name="749" id="749">
  1510. <td><a id="l749" class='ln'>749</a></td><td> <a id="749c3" class="tk">ssSetDWorkWidth</a>(<a id="749c19" class="tk">S</a>, 6, 4);</td></tr>
  1511. <tr name="750" id="750">
  1512. <td><a id="l750" class='ln'>750</a></td><td> <a id="750c3" class="tk">ssSetDWorkDataType</a>(<a id="750c22" class="tk">S</a>, 6, <a id="750c28" class="tk">SS_INTEGER</a>);</td></tr>
  1513. <tr name="751" id="751">
  1514. <td><a id="l751" class='ln'>751</a></td><td></td></tr>
  1515. <tr name="752" id="752">
  1516. <td><a id="l752" class='ln'>752</a></td><td> <span class="ct">/* '&lt;S2&gt;/Transport Delay1': IWORK */</span></td></tr>
  1517. <tr name="753" id="753">
  1518. <td><a id="l753" class='ln'>753</a></td><td> <a id="753c3" class="tk">ssSetDWorkName</a>(<a id="753c18" class="tk">S</a>, 7, "DWORK7");</td></tr>
  1519. <tr name="754" id="754">
  1520. <td><a id="l754" class='ln'>754</a></td><td> <a id="754c3" class="tk">ssSetDWorkWidth</a>(<a id="754c19" class="tk">S</a>, 7, 4);</td></tr>
  1521. <tr name="755" id="755">
  1522. <td><a id="l755" class='ln'>755</a></td><td> <a id="755c3" class="tk">ssSetDWorkDataType</a>(<a id="755c22" class="tk">S</a>, 7, <a id="755c28" class="tk">SS_INTEGER</a>);</td></tr>
  1523. <tr name="756" id="756">
  1524. <td><a id="l756" class='ln'>756</a></td><td></td></tr>
  1525. <tr name="757" id="757">
  1526. <td><a id="l757" class='ln'>757</a></td><td> <span class="ct">/* '&lt;S2&gt;/Transport Delay2': IWORK */</span></td></tr>
  1527. <tr name="758" id="758">
  1528. <td><a id="l758" class='ln'>758</a></td><td> <a id="758c3" class="tk">ssSetDWorkName</a>(<a id="758c18" class="tk">S</a>, 8, "DWORK8");</td></tr>
  1529. <tr name="759" id="759">
  1530. <td><a id="l759" class='ln'>759</a></td><td> <a id="759c3" class="tk">ssSetDWorkWidth</a>(<a id="759c19" class="tk">S</a>, 8, 4);</td></tr>
  1531. <tr name="760" id="760">
  1532. <td><a id="l760" class='ln'>760</a></td><td> <a id="760c3" class="tk">ssSetDWorkDataType</a>(<a id="760c22" class="tk">S</a>, 8, <a id="760c28" class="tk">SS_INTEGER</a>);</td></tr>
  1533. <tr name="761" id="761">
  1534. <td><a id="l761" class='ln'>761</a></td><td></td></tr>
  1535. <tr name="762" id="762">
  1536. <td><a id="l762" class='ln'>762</a></td><td> <span class="ct">/* Tunable Parameters */</span></td></tr>
  1537. <tr name="763" id="763">
  1538. <td><a id="l763" class='ln'>763</a></td><td> <a id="763c3" class="tk">ssSetNumSFcnParams</a>(<a id="763c22" class="tk">S</a>, 0);</td></tr>
  1539. <tr name="764" id="764">
  1540. <td><a id="l764" class='ln'>764</a></td><td></td></tr>
  1541. <tr name="765" id="765">
  1542. <td><a id="l765" class='ln'>765</a></td><td> <span class="ct">/* Number of expected parameters */</span></td></tr>
  1543. <tr name="766" id="766">
  1544. <td><a id="l766" class='ln'>766</a></td><td><span class="pp">#if</span> <a id="766c5" class="tk">defined</a>(<a id="766c13" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
  1545. <tr name="767" id="767">
  1546. <td><a id="l767" class='ln'>767</a></td><td></td></tr>
  1547. <tr name="768" id="768">
  1548. <td><a id="l768" class='ln'>768</a></td><td> <span class="kw">if</span> (<a id="768c7" class="tk">ssGetNumSFcnParams</a>(<a id="768c26" class="tk">S</a>) <a id="768c29" class="tk">==</a> <a id="768c32" class="tk">ssGetSFcnParamsCount</a>(<a id="768c53" class="tk">S</a>)) <span class="br">{</span></td></tr>
  1549. <tr name="769" id="769">
  1550. <td><a id="l769" class='ln'>769</a></td><td></td></tr>
  1551. <tr name="770" id="770">
  1552. <td><a id="l770" class='ln'>770</a></td><td><span class="pp">#if</span> <a id="770c5" class="tk">defined</a>(<a id="770c13" class="tk">MDL_CHECK_PARAMETERS</a>)</td></tr>
  1553. <tr name="771" id="771">
  1554. <td><a id="l771" class='ln'>771</a></td><td></td></tr>
  1555. <tr name="772" id="772">
  1556. <td><a id="l772" class='ln'>772</a></td><td> <a id="772c5" class="tk">mdlCheckParameters</a>(<a id="772c24" class="tk">S</a>);</td></tr>
  1557. <tr name="773" id="773">
  1558. <td><a id="l773" class='ln'>773</a></td><td></td></tr>
  1559. <tr name="774" id="774">
  1560. <td><a id="l774" class='ln'>774</a></td><td><span class="pp">#endif</span> <span class="ct">/* MDL_CHECK_PARAMETERS */</span></td></tr>
  1561. <tr name="775" id="775">
  1562. <td><a id="l775" class='ln'>775</a></td><td></td></tr>
  1563. <tr name="776" id="776">
  1564. <td><a id="l776" class='ln'>776</a></td><td> <span class="kw">if</span> (<a id="776c9" class="tk">ssGetErrorStatus</a>(<a id="776c26" class="tk">S</a>) <a id="776c29" class="tk">!=</a> (<a id="776c33" class="tk">NULL</a>) ) <span class="br">{</span></td></tr>
  1565. <tr name="777" id="777">
  1566. <td><a id="l777" class='ln'>777</a></td><td> <span class="kw">return</span>;</td></tr>
  1567. <tr name="778" id="778">
  1568. <td><a id="l778" class='ln'>778</a></td><td> <span class="br">}</span></td></tr>
  1569. <tr name="779" id="779">
  1570. <td><a id="l779" class='ln'>779</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
  1571. <tr name="780" id="780">
  1572. <td><a id="l780" class='ln'>780</a></td><td> <span class="kw">return</span>; <span class="ct">/* Parameter mismatch will be reported by Simulink */</span></td></tr>
  1573. <tr name="781" id="781">
  1574. <td><a id="l781" class='ln'>781</a></td><td> <span class="br">}</span></td></tr>
  1575. <tr name="782" id="782">
  1576. <td><a id="l782" class='ln'>782</a></td><td></td></tr>
  1577. <tr name="783" id="783">
  1578. <td><a id="l783" class='ln'>783</a></td><td><span class="pp">#endif</span> <span class="ct">/* MATLAB_MEX_FILE */</span></td></tr>
  1579. <tr name="784" id="784">
  1580. <td><a id="l784" class='ln'>784</a></td><td></td></tr>
  1581. <tr name="785" id="785">
  1582. <td><a id="l785" class='ln'>785</a></td><td> <span class="ct">/* Options */</span></td></tr>
  1583. <tr name="786" id="786">
  1584. <td><a id="l786" class='ln'>786</a></td><td> <a id="786c3" class="tk">ssSetOptions</a>(<a id="786c16" class="tk">S</a>, (<a id="786c20" class="tk">SS_OPTION_RUNTIME_EXCEPTION_FREE_CODE</a> <a id="786c58" class="tk">|</a></td></tr>
  1585. <tr name="787" id="787">
  1586. <td><a id="l787" class='ln'>787</a></td><td> <a id="787c20" class="tk">SS_OPTION_PORT_SAMPLE_TIMES_ASSIGNED</a> ));</td></tr>
  1587. <tr name="788" id="788">
  1588. <td><a id="l788" class='ln'>788</a></td><td></td></tr>
  1589. <tr name="789" id="789">
  1590. <td><a id="l789" class='ln'>789</a></td><td><span class="pp">#if</span> <a id="789c5" class="tk">SS_SFCN_FOR_SIM</a></td></tr>
  1591. <tr name="790" id="790">
  1592. <td><a id="l790" class='ln'>790</a></td><td></td></tr>
  1593. <tr name="791" id="791">
  1594. <td><a id="l791" class='ln'>791</a></td><td> <span class="br">{</span></td></tr>
  1595. <tr name="792" id="792">
  1596. <td><a id="l792" class='ln'>792</a></td><td> <a id="792c5" class="tk">ssSupportsMultipleExecInstances</a>(<a id="792c37" class="tk">S</a>, false);</td></tr>
  1597. <tr name="793" id="793">
  1598. <td><a id="l793" class='ln'>793</a></td><td> <a id="793c5" class="tk">ssRegisterMsgForNotSupportingMultiExecInst</a>(<a id="793c48" class="tk">S</a>,</td></tr>
  1599. <tr name="794" id="794">
  1600. <td><a id="l794" class='ln'>794</a></td><td> "&lt;diag_root&gt;&lt;diag id=\"Simulink:blocks:BlockDoesNotSupportMultiExecInstances\" pr=\"d\"&gt;&lt;arguments&gt;&lt;arg type=\"encoded\"&gt;UABXAE0ALwBQAFcATQAvAG0AbwBkAHUAbABhAHQAZQBkACAAdwBhAHYAZQAvAHMAdABhAHIAdABUAGkAbQBlAAAA&lt;/arg&gt;&lt;arg type=\"encoded\"&gt;PABfAF8AaQBpAFMAUwBfAF8APgA8AC8AXwBfAGkAaQBTAFMAXwBfAD4AAAA=&lt;/arg&gt;&lt;arg type=\"encoded\"&gt;PABfAF8AaQB0AGUAcgBCAGwAawBfAF8APgA8AC8AXwBfAGkAdABlAHIAQgBsAGsAXwBfAD4AAAA=&lt;/arg&gt;&lt;/arguments&gt;&lt;hs&gt;&lt;h&gt;AAAACIDlzUD+&lt;/h&gt;&lt;/hs&gt;&lt;/diag&gt;&lt;/diag_root&gt;");</td></tr>
  1601. <tr name="795" id="795">
  1602. <td><a id="l795" class='ln'>795</a></td><td> <a id="795c5" class="tk">ssHasStateInsideForEachSS</a>(<a id="795c31" class="tk">S</a>, false);</td></tr>
  1603. <tr name="796" id="796">
  1604. <td><a id="l796" class='ln'>796</a></td><td> <span class="br">}</span></td></tr>
  1605. <tr name="797" id="797">
  1606. <td><a id="l797" class='ln'>797</a></td><td></td></tr>
  1607. <tr name="798" id="798">
  1608. <td><a id="l798" class='ln'>798</a></td><td><span class="pp">#endif</span></td></tr>
  1609. <tr name="799" id="799">
  1610. <td><a id="l799" class='ln'>799</a></td><td></td></tr>
  1611. <tr name="800" id="800">
  1612. <td><a id="l800" class='ln'>800</a></td><td><span class="br">}</span></td></tr>
  1613. <tr name="801" id="801">
  1614. <td><a id="l801" class='ln'>801</a></td><td></td></tr>
  1615. <tr name="802" id="802">
  1616. <td><a id="l802" class='ln'>802</a></td><td><span class="ct">/* Function to initialize sample times. */</span></td></tr>
  1617. <tr name="803" id="803">
  1618. <td><a id="l803" class='ln'>803</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="803c13" class="tk">mdlInitializeSampleTimes</a>(<a id="803c38" class="tk">SimStruct</a> <a id="803c48" class="tk">*</a><a id="803c49" class="tk">S</a>)</td></tr>
  1619. <tr name="804" id="804">
  1620. <td><a id="l804" class='ln'>804</a></td><td><span class="br">{</span></td></tr>
  1621. <tr name="805" id="805">
  1622. <td><a id="l805" class='ln'>805</a></td><td> <span class="ct">/* task periods */</span></td></tr>
  1623. <tr name="806" id="806">
  1624. <td><a id="l806" class='ln'>806</a></td><td> <a id="806c3" class="tk">ssSetSampleTime</a>(<a id="806c19" class="tk">S</a>, 0, 0.0);</td></tr>
  1625. <tr name="807" id="807">
  1626. <td><a id="l807" class='ln'>807</a></td><td> <a id="807c3" class="tk">ssSetSampleTime</a>(<a id="807c19" class="tk">S</a>, 1, 5.0E-7);</td></tr>
  1627. <tr name="808" id="808">
  1628. <td><a id="l808" class='ln'>808</a></td><td></td></tr>
  1629. <tr name="809" id="809">
  1630. <td><a id="l809" class='ln'>809</a></td><td> <span class="ct">/* task offsets */</span></td></tr>
  1631. <tr name="810" id="810">
  1632. <td><a id="l810" class='ln'>810</a></td><td> <a id="810c3" class="tk">ssSetOffsetTime</a>(<a id="810c19" class="tk">S</a>, 0, 0.0);</td></tr>
  1633. <tr name="811" id="811">
  1634. <td><a id="l811" class='ln'>811</a></td><td> <a id="811c3" class="tk">ssSetOffsetTime</a>(<a id="811c19" class="tk">S</a>, 1, 0.0);</td></tr>
  1635. <tr name="812" id="812">
  1636. <td><a id="l812" class='ln'>812</a></td><td><span class="br">}</span></td></tr>
  1637. <tr name="813" id="813">
  1638. <td><a id="l813" class='ln'>813</a></td><td></td></tr>
  1639. <tr name="814" id="814">
  1640. <td><a id="l814" class='ln'>814</a></td><td><span class="pp">#if</span> <a id="814c5" class="tk">defined</a>(<a id="814c13" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
  1641. <tr name="815" id="815">
  1642. <td><a id="l815" class='ln'>815</a></td><td><span class="pp">#include "fixedpoint.c"</span></td></tr>
  1643. <tr name="816" id="816">
  1644. <td><a id="l816" class='ln'>816</a></td><td><span class="pp">#include "simulink.c"</span></td></tr>
  1645. <tr name="817" id="817">
  1646. <td><a id="l817" class='ln'>817</a></td><td><span class="pp">#else</span></td></tr>
  1647. <tr name="818" id="818">
  1648. <td><a id="l818" class='ln'>818</a></td><td><span class="pp">#undef</span> <a id="818c8" class="tk">S_FUNCTION_NAME</a></td></tr>
  1649. <tr name="819" id="819">
  1650. <td><a id="l819" class='ln'>819</a></td><td><span class="pp">#define</span> <a id="819c9" class="tk">S_FUNCTION_NAME</a> <a id="819c40" class="tk">PWM_sf</a></td></tr>
  1651. <tr name="820" id="820">
  1652. <td><a id="l820" class='ln'>820</a></td><td><span class="pp">#include "cg_sfun.h"</span></td></tr>
  1653. <tr name="821" id="821">
  1654. <td><a id="l821" class='ln'>821</a></td><td><span class="pp">#endif</span> <span class="ct">/* defined(MATLAB_MEX_FILE) */</span></td></tr>
  1655. <tr name="822" id="822">
  1656. <td><a id="l822" class='ln'>822</a></td><td></td></tr>
  1657. </table>
  1658. </pre>
  1659. </body>
  1660. </html>