add Doxygen documentation
[o-du/phy.git] / docs / API / prach__performance_8cc_source.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6 <meta name="generator" content="Doxygen 1.8.13"/>
7 <meta name="viewport" content="width=device-width, initial-scale=1"/>
8 <title>o-du/phy: prach_performance.cc Source File</title>
9 <link href="tabs.css" rel="stylesheet" type="text/css"/>
10 <script type="text/javascript" src="jquery.js"></script>
11 <script type="text/javascript" src="dynsections.js"></script>
12 <link href="search/search.css" rel="stylesheet" type="text/css"/>
13 <script type="text/javascript" src="search/searchdata.js"></script>
14 <script type="text/javascript" src="search/search.js"></script>
15 <link href="doxygen.css" rel="stylesheet" type="text/css" />
16 </head>
17 <body>
18 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
19 <div id="titlearea">
20 <table cellspacing="0" cellpadding="0">
21  <tbody>
22  <tr style="height: 56px;">
23   <td id="projectalign" style="padding-left: 0.5em;">
24    <div id="projectname">o-du/phy
25    </div>
26    <div id="projectbrief">Intel O-RAN/X-RAN Generated Doxygen Documentation</div>
27   </td>
28  </tr>
29  </tbody>
30 </table>
31 </div>
32 <!-- end header part -->
33 <!-- Generated by Doxygen 1.8.13 -->
34 <script type="text/javascript">
35 var searchBox = new SearchBox("searchBox", "search",false,'Search');
36 </script>
37 <script type="text/javascript" src="menudata.js"></script>
38 <script type="text/javascript" src="menu.js"></script>
39 <script type="text/javascript">
40 $(function() {
41   initMenu('',true,false,'search.php','Search');
42   $(document).ready(function() { init_search(); });
43 });
44 </script>
45 <div id="main-nav"></div>
46 <!-- window showing the filter options -->
47 <div id="MSearchSelectWindow"
48      onmouseover="return searchBox.OnSearchSelectShow()"
49      onmouseout="return searchBox.OnSearchSelectHide()"
50      onkeydown="return searchBox.OnSearchSelectKey(event)">
51 </div>
52
53 <!-- iframe showing the search results (closed by default) -->
54 <div id="MSearchResultsWindow">
55 <iframe src="javascript:void(0)" frameborder="0" 
56         name="MSearchResults" id="MSearchResults">
57 </iframe>
58 </div>
59
60 <div id="nav-path" class="navpath">
61   <ul>
62 <li class="navelem"><a class="el" href="dir_a4c74d6baed87eba72f3b201b7b4b8f2.html">fhi_lib</a></li><li class="navelem"><a class="el" href="dir_babe8eacf738372576863f88f66866a5.html">test</a></li><li class="navelem"><a class="el" href="dir_eb25680e5ae075ef825a327f00297047.html">test_xran</a></li>  </ul>
63 </div>
64 </div><!-- top -->
65 <div class="header">
66   <div class="headertitle">
67 <div class="title">prach_performance.cc</div>  </div>
68 </div><!--header-->
69 <div class="contents">
70 <a href="prach__performance_8cc.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/******************************************************************************</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">*</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">*   Copyright (c) 2019 Intel.</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">*</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">*   Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">*   you may not use this file except in compliance with the License.</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">*   You may obtain a copy of the License at</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">*</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">*       http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">*</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">*   Unless required by applicable law or agreed to in writing, software</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">*   distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">*   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">*   See the License for the specific language governing permissions and</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">*   limitations under the License.</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">*</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">*******************************************************************************/</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="common_8hpp.html">common.hpp</a>&quot;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="xran__common_8h.html">xran_common.h</a>&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="xran__fh__o__du_8h.html">xran_fh_o_du.h</a>&quot;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ethernet_8h.html">ethernet.h</a>&quot;</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="xran__transport_8h.html">xran_transport.h</a>&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="xran__cp__api_8h.html">xran_cp_api.h</a>&quot;</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="prach__performance_8cc.html#a69b4bff6061152ff85770d725cced3cc">   30</a></span>&#160;<span class="keyword">const</span> std::string <a class="code" href="prach__performance_8cc.html#a69b4bff6061152ff85770d725cced3cc">module_name</a> = <span class="stringliteral">&quot;Prach_test&quot;</span>;</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="class_prach_perf.html">   33</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_prach_perf.html">PrachPerf</a> : <span class="keyword">public</span> <a class="code" href="class_kernel_tests.html">KernelTests</a></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;{</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keyword">struct </span><a class="code" href="structxran__section__gen__info.html">xran_section_gen_info</a> *m_pSectResult = NULL;</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="class_prach_perf.html#acb7ae6f5547d5e166b643084db28b2fa">   40</a></span>&#160;        <span class="keyword">struct </span><a class="code" href="structxran__fh__config.html">xran_fh_config</a> <a class="code" href="class_prach_perf.html#acb7ae6f5547d5e166b643084db28b2fa">m_xranConf</a>;</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a48dc9763aed8e2af7ff83eb1648aa96e">   41</a></span>&#160;        <span class="keyword">struct </span><a class="code" href="structxran__device__ctx.html">xran_device_ctx</a> <a class="code" href="class_prach_perf.html#a48dc9763aed8e2af7ff83eb1648aa96e">m_xran_dev_ctx</a>;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a21909f3922fb3485559575d6252575aa">   42</a></span>&#160;        <span class="keyword">struct </span><a class="code" href="structxran__prach__config.html">xran_prach_config</a> *<a class="code" href="class_prach_perf.html#a21909f3922fb3485559575d6252575aa">m_pPRACHConfig</a>;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a45887981986f86c7811031b354fb4a36">   43</a></span>&#160;        <span class="keyword">struct </span><a class="code" href="structxran__prach__cp__config.html">xran_prach_cp_config</a>  *<a class="code" href="class_prach_perf.html#a45887981986f86c7811031b354fb4a36">m_pPrachCPConfig</a>;</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a8afca7ac895ea509b38432d1b45bff55">   45</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="structxran__section__gen__info.html">xran_section_gen_info</a> *<a class="code" href="class_prach_perf.html#a8afca7ac895ea509b38432d1b45bff55">m_pSectGenInfo</a> = NULL;</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="class_prach_perf.html#ae68e73b40ca04879362dc67fbb368682">   46</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_prach_perf.html#ae68e73b40ca04879362dc67fbb368682">m_maxSections</a> = 8;  <span class="comment">/*  not used */</span></div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a28e2512868d0865874dc55150a46f39a">   47</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_prach_perf.html#a28e2512868d0865874dc55150a46f39a">lastsymbol</a>;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="class_prach_perf.html#aafa40e823e408268e48585ec7a623eae">   49</a></span>&#160;    <span class="keyword">struct </span>rte_mbuf *<a class="code" href="class_prach_perf.html#aafa40e823e408268e48585ec7a623eae">m_pTestBuffer</a>;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a16c92b16fc21a700c50a7faf19da41b9">   51</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="structxran__cp__gen__params.html">xran_cp_gen_params</a> <a class="code" href="class_prach_perf.html#a16c92b16fc21a700c50a7faf19da41b9">m_params</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a431f2e351a321b762ccd64984d566913">   52</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="structxran__recv__packet__info.html">xran_recv_packet_info</a> <a class="code" href="class_prach_perf.html#a431f2e351a321b762ccd64984d566913">m_pktInfo</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="class_prach_perf.html#aa42dde0a7ce436df7e5b607d17d52668">   53</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="structxran__cp__gen__params.html">xran_cp_gen_params</a> <a class="code" href="class_prach_perf.html#aa42dde0a7ce436df7e5b607d17d52668">m_result</a>;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="class_prach_perf.html#afa985909bf1a1a9cc7a7070c9a73016e">   55</a></span>&#160;    uint8_t     <a class="code" href="class_prach_perf.html#afa985909bf1a1a9cc7a7070c9a73016e">m_dir</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a4bb0d1ca82a59555014c6c0e1060cbdf">   56</a></span>&#160;    std::string <a class="code" href="class_prach_perf.html#a4bb0d1ca82a59555014c6c0e1060cbdf">m_dirStr</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="class_prach_perf.html#abc4c88e1904502c47099799767ea3991">   57</a></span>&#160;    uint8_t     <a class="code" href="class_prach_perf.html#abc4c88e1904502c47099799767ea3991">m_sectionType</a>;</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a9f102f8bfc163d6a26411d1855c8c97c">   59</a></span>&#160;    uint8_t     <a class="code" href="class_prach_perf.html#a9f102f8bfc163d6a26411d1855c8c97c">m_ccId</a>, <a class="code" href="class_prach_perf.html#a73f8e8274bd97892f58f73d1d83b533a">m_antId</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a7a0ce01c67c4067cc3ba42fd380e858a">   60</a></span>&#160;    uint8_t     <a class="code" href="class_prach_perf.html#a7a0ce01c67c4067cc3ba42fd380e858a">m_seqId</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="class_prach_perf.html#afa13542efadbf6db6e8ddfa388a345c0">   61</a></span>&#160;    uint8_t     <a class="code" href="class_prach_perf.html#a65389015c6ac952ac5108c2ae802fa52">m_frameId</a>, <a class="code" href="class_prach_perf.html#afa13542efadbf6db6e8ddfa388a345c0">m_subframeId</a>, <a class="code" href="class_prach_perf.html#a7f021a016314b5d3a9bb095c5c08048f">m_slotId</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="class_prach_perf.html#aba23eca36e0c5cc06d74919fa5fe0dd6">   62</a></span>&#160;    uint8_t     <a class="code" href="class_prach_perf.html#aba23eca36e0c5cc06d74919fa5fe0dd6">m_symStart</a>, <a class="code" href="class_prach_perf.html#a88a1f1ad78450f64aab4fa3f6499060a">m_symNum</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a59b4057d63386649d2facf030a08fa0e">   63</a></span>&#160;    uint16_t    *<a class="code" href="class_prach_perf.html#a59b4057d63386649d2facf030a08fa0e">m_prbStart</a> = NULL, *<a class="code" href="class_prach_perf.html#a81096035b0802bc24810c07ca13df7e9">m_prbNum</a> = NULL;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a5b1a6d8e8257b3bb7e3a187c0cce4011">   65</a></span>&#160;    uint8_t     <a class="code" href="class_prach_perf.html#a5b1a6d8e8257b3bb7e3a187c0cce4011">m_iqWidth</a>, <a class="code" href="class_prach_perf.html#a493740cacd8f8d3e235c4626e501d3e2">m_compMethod</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a047b603d6d908d93ce5d58dcc2b63036">   66</a></span>&#160;    uint16_t    <a class="code" href="class_prach_perf.html#a047b603d6d908d93ce5d58dcc2b63036">m_beamId</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="class_prach_perf.html#ab4be4cfb9be32a9a6c516f5cfbae0d6f">   67</a></span>&#160;    uint16_t    <a class="code" href="class_prach_perf.html#ab4be4cfb9be32a9a6c516f5cfbae0d6f">m_reMask</a> = 0xfff;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a9c4d35a4cce2560e384f2fe95c4c341f">   68</a></span>&#160;    uint16_t    <a class="code" href="class_prach_perf.html#a9c4d35a4cce2560e384f2fe95c4c341f">m_sectionId</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="class_prach_perf.html#adfa9d2df36650f369b04652749c1134b">   69</a></span>&#160;    uint8_t     <a class="code" href="class_prach_perf.html#adfa9d2df36650f369b04652749c1134b">m_filterIndex</a>;</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="comment">//uint16_t    m_timeOffset;</span></div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a7a8bdb868f3812cf7270734d13159255">   71</a></span>&#160;    uint8_t     <a class="code" href="class_prach_perf.html#a7a8bdb868f3812cf7270734d13159255">m_fftSize</a>;</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        <span class="comment">//define reference values</span></div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a1d28f82423abf4fde782a34ae064aea9">   74</a></span>&#160;        uint8_t     <a class="code" href="class_prach_perf.html#a1d28f82423abf4fde782a34ae064aea9">m_startSymId</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a95b34835c7215dd09bdfdd82698c1232">   75</a></span>&#160;        uint8_t     <a class="code" href="class_prach_perf.html#a95b34835c7215dd09bdfdd82698c1232">m_x</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="class_prach_perf.html#aa6a94180919a3f3827f581cb9b6038ef">   76</a></span>&#160;        uint8_t     <a class="code" href="class_prach_perf.html#aa6a94180919a3f3827f581cb9b6038ef">m_filterIdx</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="class_prach_perf.html#acef6d7b2a1494b7d98e70d4759875349">   77</a></span>&#160;        uint16_t    <a class="code" href="class_prach_perf.html#acef6d7b2a1494b7d98e70d4759875349">m_startPrbc</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="class_prach_perf.html#af2657f421b39bfe018266cfe11d27b51">   78</a></span>&#160;        uint8_t     <a class="code" href="class_prach_perf.html#af2657f421b39bfe018266cfe11d27b51">m_numPrbc</a>;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="class_prach_perf.html#ab7158c23dfca189475b254c35ede1da7">   79</a></span>&#160;        uint8_t     <a class="code" href="class_prach_perf.html#ab7158c23dfca189475b254c35ede1da7">m_numSymbol</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a509c970617e65a99c8120eef3d309bcb">   80</a></span>&#160;        uint16_t    <a class="code" href="class_prach_perf.html#a509c970617e65a99c8120eef3d309bcb">m_timeOffset</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a9c9ab811b57b6250d1712aa6e59c0853">   81</a></span>&#160;        int32_t     <a class="code" href="class_prach_perf.html#a9c9ab811b57b6250d1712aa6e59c0853">m_freqOffset</a>;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a8c2ff60cb0ad0f81eafada59dc92c4c6">   82</a></span>&#160;        uint8_t     <a class="code" href="class_prach_perf.html#a8c2ff60cb0ad0f81eafada59dc92c4c6">m_nrofPrachInSlot</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a0baaeee595bffc14f68fefd762c6fa5a">   83</a></span>&#160;        uint8_t     <a class="code" href="class_prach_perf.html#a0baaeee595bffc14f68fefd762c6fa5a">m_occassionsInPrachSlot</a>;</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a5067ab67bdb57355a12a0282ced79bdc">   84</a></span>&#160;        uint8_t     <a class="code" href="class_prach_perf.html#a5067ab67bdb57355a12a0282ced79bdc">m_y</a>[<a class="code" href="xran__common_8h.html#a342c40a4877f7760c65eca32523efea1">XRAN_PRACH_CANDIDATE_Y</a>];</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a9ef01047ab319b03151146a47e4516c4">   85</a></span>&#160;        uint8_t     <a class="code" href="class_prach_perf.html#a9ef01047ab319b03151146a47e4516c4">m_isPRACHslot</a>[<a class="code" href="xran__common_8h.html#af7a48e76794ce5d801ab6d0f848abb53">XRAN_PRACH_CANDIDATE_SLOT</a>];</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="class_prach_perf.html#aee24498b1349e41e8e14f822c6bd8fff">   86</a></span>&#160;        <span class="keywordtype">int</span>         <a class="code" href="class_prach_perf.html#aee24498b1349e41e8e14f822c6bd8fff">m_prach_start_symbol</a>;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a98ba28864455aad01fecfc51992a252a">   87</a></span>&#160;        <span class="keywordtype">int</span>         <a class="code" href="class_prach_perf.html#a98ba28864455aad01fecfc51992a252a">m_prach_last_symbol</a>;</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="class_prach_perf.html#ae0c317f2faf44b0e7bde79d34e00b2e7">   88</a></span>&#160;        uint8_t     <a class="code" href="class_prach_perf.html#ae0c317f2faf44b0e7bde79d34e00b2e7">m_SlotNrNum</a>;</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="class_prach_perf.html#a3a1707f6479611fdc609a3eb8a0cef1b">   91</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_prach_perf.html#a3a1707f6479611fdc609a3eb8a0cef1b">SetUp</a>()<span class="keyword"> override</span></div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="keyword">  </span>{</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <a class="code" href="class_kernel_tests.html#abf28e5ea54fab2b0685972fe6e75560a">init_test</a>(<span class="stringliteral">&quot;prach_performance&quot;</span>);</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        memset(&amp;<a class="code" href="class_prach_perf.html#acb7ae6f5547d5e166b643084db28b2fa">m_xranConf</a>, 0, <span class="keyword">sizeof</span>(<span class="keyword">struct</span> <a class="code" href="structxran__fh__config.html">xran_fh_config</a>));</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        memset(&amp;<a class="code" href="class_prach_perf.html#a48dc9763aed8e2af7ff83eb1648aa96e">m_xran_dev_ctx</a>, 0, <span class="keyword">sizeof</span>(<span class="keyword">struct</span> <a class="code" href="structxran__device__ctx.html">xran_device_ctx</a>));</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        m_pPRACHConfig = &amp;<a class="code" href="class_prach_perf.html#acb7ae6f5547d5e166b643084db28b2fa">m_xranConf</a>.<a class="code" href="structxran__fh__config.html#a167e91cb91119363bf10c9430b6f082c">prach_conf</a>;</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        m_pPrachCPConfig = &amp;<a class="code" href="class_prach_perf.html#a48dc9763aed8e2af7ff83eb1648aa96e">m_xran_dev_ctx</a>.<a class="code" href="structxran__device__ctx.html#ac1db3db55038ef0b2f69827746eaf87c">PrachCPConfig</a>;</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        <span class="comment">//initialize input parameters</span></div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        <a class="code" href="class_prach_perf.html#acb7ae6f5547d5e166b643084db28b2fa">m_xranConf</a>.<a class="code" href="structxran__fh__config.html#a72b0cba491d0dd2703d684cb2c2a14cf">frame_conf</a>.<a class="code" href="structxran__frame__config.html#a78b2fab8e8d6a6424c2712d528fd9a58">nNumerology</a> = get_input_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;Numerology&quot;</span>);</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        <a class="code" href="class_prach_perf.html#acb7ae6f5547d5e166b643084db28b2fa">m_xranConf</a>.<a class="code" href="structxran__fh__config.html#a72b0cba491d0dd2703d684cb2c2a14cf">frame_conf</a>.<a class="code" href="structxran__frame__config.html#a3b86317723a592e240c0047e53a6326d">nFrameDuplexType</a> = get_input_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;FrameDuplexType&quot;</span>);</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;        <a class="code" href="class_prach_perf.html#acb7ae6f5547d5e166b643084db28b2fa">m_xranConf</a>.<a class="code" href="structxran__fh__config.html#a583c2f58d0655789ea36e22d605ab9ad">log_level</a> = get_input_parameter&lt;uint32_t&gt;(<span class="stringliteral">&quot;loglevel&quot;</span>);</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        m_pPRACHConfig-&gt;<a class="code" href="structxran__prach__config.html#acb5fe8097b0115e038eb02d5900f66d6">nPrachConfIdx</a> = get_input_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;PrachConfIdx&quot;</span>);</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        m_pPRACHConfig-&gt;<a class="code" href="structxran__prach__config.html#a5c648c99c04370a4e8767f919a2289bf">nPrachFreqStart</a> = get_input_parameter&lt;uint16_t&gt;(<span class="stringliteral">&quot;PrachFreqStart&quot;</span>);</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        m_pPRACHConfig-&gt;<a class="code" href="structxran__prach__config.html#a3b43924c5ef23b0496d1a7adf2752dbf">nPrachFreqOffset</a> = get_input_parameter&lt;int32_t&gt;(<span class="stringliteral">&quot;PrachFreqOffset&quot;</span>);</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        m_pPRACHConfig-&gt;<a class="code" href="structxran__prach__config.html#ab9b99e41ea39f16780f66a539aa872c8">nPrachSubcSpacing</a> = get_input_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;PrachSubcSpacing&quot;</span>);</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        m_frameId = get_input_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;frameId&quot;</span>);</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        m_subframeId = get_input_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;subframeId&quot;</span>);</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        m_slotId = get_input_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;slotId&quot;</span>);</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        m_beamId = get_input_parameter&lt;uint16_t&gt;(<span class="stringliteral">&quot;beamId&quot;</span>);</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        m_ccId = get_input_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;ccId&quot;</span>);</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        m_antId = get_input_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;antId&quot;</span>);</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="comment">//initialize reference output</span></div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        m_startSymId = get_reference_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;startSymId&quot;</span>);</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        m_x = get_reference_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;x_value&quot;</span>);</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        m_filterIdx = get_reference_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;filterIdx&quot;</span>);</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        m_startPrbc = get_reference_parameter&lt;uint16_t&gt;(<span class="stringliteral">&quot;startPrbc&quot;</span>);</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        m_numPrbc = get_reference_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;numPrbc&quot;</span>);</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        m_timeOffset = get_reference_parameter&lt;uint16_t&gt;(<span class="stringliteral">&quot;timeOffset&quot;</span>);</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        m_freqOffset = get_reference_parameter&lt;uint32_t&gt;(<span class="stringliteral">&quot;freqOffset&quot;</span>);</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        m_nrofPrachInSlot = get_reference_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;nrofPrachInSlot&quot;</span>);</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        <span class="comment">//get the values from a vector</span></div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        std::vector&lt;uint8_t&gt; y_vec = get_reference_parameter&lt;std::vector&lt;uint8_t&gt;&gt;(<span class="stringliteral">&quot;y_value&quot;</span>);</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i=0; i &lt; <a class="code" href="xran__common_8h.html#a342c40a4877f7760c65eca32523efea1">XRAN_PRACH_CANDIDATE_Y</a>; i++) {</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;            m_y[i] = y_vec[i];</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        }</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        m_numSymbol = get_reference_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;numSymbol&quot;</span>);</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        m_occassionsInPrachSlot = get_reference_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;occassionsInPrachSlot&quot;</span>);</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        std::vector&lt;uint8_t&gt; index_vec = get_reference_parameter&lt;std::vector&lt;uint8_t&gt;&gt;(<span class="stringliteral">&quot;isPRACHslot&quot;</span>);</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        m_SlotNrNum = get_reference_parameter&lt;uint8_t&gt;(<span class="stringliteral">&quot;SlotNrNum&quot;</span>);</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="xran__common_8h.html#af7a48e76794ce5d801ab6d0f848abb53">XRAN_PRACH_CANDIDATE_SLOT</a>; i++){</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;            m_isPRACHslot[i]=0;</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        }</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i=0; i&lt;<a class="code" href="class_prach_perf.html#ae0c317f2faf44b0e7bde79d34e00b2e7">m_SlotNrNum</a>;i++){</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;            m_isPRACHslot[index_vec[i]]=1;</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        }</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        m_prach_start_symbol = get_reference_parameter&lt;int&gt;(<span class="stringliteral">&quot;prach_start_symbol&quot;</span>);</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        m_prach_last_symbol = get_reference_parameter&lt;int&gt;(<span class="stringliteral">&quot;prach_last_symbol&quot;</span>);</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        <span class="comment">/* allocate and prepare required data storage */</span></div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        m_pSectGenInfo = <span class="keyword">new</span> <span class="keyword">struct </span><a class="code" href="structxran__section__gen__info.html">xran_section_gen_info</a>[8];</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        ASSERT_NE(m_pSectGenInfo, <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        <a class="code" href="class_prach_perf.html#a16c92b16fc21a700c50a7faf19da41b9">m_params</a>.<a class="code" href="structxran__cp__gen__params.html#a5921f2439294279b8111fed577c5c37a">sections</a> = <a class="code" href="class_prach_perf.html#a8afca7ac895ea509b38432d1b45bff55">m_pSectGenInfo</a>;</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        <span class="comment">/* allocating an mbuf for packet generatrion */</span></div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        m_pTestBuffer = (<span class="keyword">struct </span>rte_mbuf*)rte_pktmbuf_alloc(<a class="code" href="ethernet_8c.html#a8d83e3adb6c9e839b3b7259288f100ba">_eth_mbuf_pool</a>);</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        ASSERT_FALSE(m_pTestBuffer == NULL);</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;    }</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="class_prach_perf.html#ac4fca95dc3b93372ce7f2078baf8e8b6">  160</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_prach_perf.html#ac4fca95dc3b93372ce7f2078baf8e8b6">TearDown</a>()<span class="keyword"> override</span></div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        <span class="keywordflow">if</span>(m_pTestBuffer != NULL)</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;            rte_pktmbuf_free(m_pTestBuffer);</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        <span class="keywordflow">if</span>(m_pSectGenInfo)</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;            <span class="keyword">delete</span>[] <a class="code" href="class_prach_perf.html#a8afca7ac895ea509b38432d1b45bff55">m_pSectGenInfo</a>;</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        <span class="keywordflow">return</span>;</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    }</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;};</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="prach__performance_8cc.html#a540e426541deb753f7c69d8df5d5b090">  172</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="prach__performance_8cc.html#a540e426541deb753f7c69d8df5d5b090">performance_cp</a>(<span class="keywordtype">void</span> *pHandle,<span class="keyword">struct</span> <a class="code" href="structxran__cp__gen__params.html">xran_cp_gen_params</a> *params, <span class="keyword">struct</span> <a class="code" href="structxran__section__gen__info.html">xran_section_gen_info</a> *sect_geninfo, <span class="keyword">struct</span> <a class="code" href="structxran__device__ctx.html">xran_device_ctx</a> *pxran_lib_ctx,</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;                uint8_t frame_id, uint8_t subframe_id, uint8_t slot_id,</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;                uint16_t beam_id, uint8_t cc_id, uint8_t prach_port_id, uint8_t seq_id)</div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;{</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;    <span class="keyword">struct </span>rte_mbuf *mbuf;</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    mbuf = (<span class="keyword">struct </span>rte_mbuf*)rte_pktmbuf_alloc(<a class="code" href="ethernet_8c.html#a8d83e3adb6c9e839b3b7259288f100ba">_eth_mbuf_pool</a>);</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;    <a class="code" href="xran__common_8c.html#ab8a6ed3cee8fa183142d0c23d0b4971d">generate_cpmsg_prach</a>(pHandle, params, sect_geninfo, mbuf, pxran_lib_ctx,</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;        frame_id, subframe_id, slot_id,</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;        beam_id, cc_id, prach_port_id, seq_id);</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;    seq_id++;</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    rte_pktmbuf_free(mbuf);</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;}</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="prach__performance_8cc.html#a048e029f091d3d395e44cc24b3f197ee">  189</a></span>&#160;<a class="code" href="prach__performance_8cc.html#a048e029f091d3d395e44cc24b3f197ee">TEST_P</a>(<a class="code" href="class_prach_perf.html">PrachPerf</a>, PacketGen)<span class="comment">//TestCaseName   TestName</span></div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;{</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;    <span class="keywordtype">int</span> ret;</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;    <span class="keywordtype">void</span> *pHandle = NULL;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="comment">/* Preparing input data for prach config */</span></div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;    ret = <a class="code" href="xran__common_8h.html#a00025c5bad7b7b6eea4374226f8c54bb">xran_init_prach</a>(&amp;<a class="code" href="class_prach_perf.html#acb7ae6f5547d5e166b643084db28b2fa">m_xranConf</a>, &amp;<a class="code" href="class_prach_perf.html#a48dc9763aed8e2af7ff83eb1648aa96e">m_xran_dev_ctx</a>);</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    ASSERT_TRUE(ret == <a class="code" href="xran__fh__o__du_8h.html#a814959a7b5ff6cd4474433f62312eee0">XRAN_STATUS_SUCCESS</a>);</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    ret = <a class="code" href="xran__common_8c.html#ab8a6ed3cee8fa183142d0c23d0b4971d">generate_cpmsg_prach</a>(pHandle, &amp;<a class="code" href="class_prach_perf.html#a16c92b16fc21a700c50a7faf19da41b9">m_params</a>, <a class="code" href="class_prach_perf.html#a8afca7ac895ea509b38432d1b45bff55">m_pSectGenInfo</a>, <a class="code" href="class_prach_perf.html#aafa40e823e408268e48585ec7a623eae">m_pTestBuffer</a>, &amp;<a class="code" href="class_prach_perf.html#a48dc9763aed8e2af7ff83eb1648aa96e">m_xran_dev_ctx</a>,</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        <a class="code" href="class_prach_perf.html#a65389015c6ac952ac5108c2ae802fa52">m_frameId</a>, <a class="code" href="class_prach_perf.html#afa13542efadbf6db6e8ddfa388a345c0">m_subframeId</a>, <a class="code" href="class_prach_perf.html#a7f021a016314b5d3a9bb095c5c08048f">m_slotId</a>,</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        <a class="code" href="class_prach_perf.html#a047b603d6d908d93ce5d58dcc2b63036">m_beamId</a>, <a class="code" href="class_prach_perf.html#a9f102f8bfc163d6a26411d1855c8c97c">m_ccId</a>, <a class="code" href="class_prach_perf.html#a73f8e8274bd97892f58f73d1d83b533a">m_antId</a>, 0);</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    ASSERT_TRUE(ret == <a class="code" href="xran__fh__o__du_8h.html#a814959a7b5ff6cd4474433f62312eee0">XRAN_STATUS_SUCCESS</a>);</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    <a class="code" href="class_kernel_tests.html#a3cf2e25a99be565a4ab570737cfeac41">performance</a>(<span class="stringliteral">&quot;C&quot;</span>, <a class="code" href="prach__performance_8cc.html#a69b4bff6061152ff85770d725cced3cc">module_name</a>,</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;            &amp;<a class="code" href="prach__performance_8cc.html#a540e426541deb753f7c69d8df5d5b090">performance_cp</a>, pHandle, &amp;<a class="code" href="class_prach_perf.html#a16c92b16fc21a700c50a7faf19da41b9">m_params</a>, <a class="code" href="class_prach_perf.html#a8afca7ac895ea509b38432d1b45bff55">m_pSectGenInfo</a>, &amp;<a class="code" href="class_prach_perf.html#a48dc9763aed8e2af7ff83eb1648aa96e">m_xran_dev_ctx</a>,</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;        <a class="code" href="class_prach_perf.html#a65389015c6ac952ac5108c2ae802fa52">m_frameId</a>, <a class="code" href="class_prach_perf.html#afa13542efadbf6db6e8ddfa388a345c0">m_subframeId</a>, <a class="code" href="class_prach_perf.html#a7f021a016314b5d3a9bb095c5c08048f">m_slotId</a>,</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;        <a class="code" href="class_prach_perf.html#a047b603d6d908d93ce5d58dcc2b63036">m_beamId</a>, <a class="code" href="class_prach_perf.html#a9f102f8bfc163d6a26411d1855c8c97c">m_ccId</a>, <a class="code" href="class_prach_perf.html#a73f8e8274bd97892f58f73d1d83b533a">m_antId</a>, 0);</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;}</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<a class="code" href="prach__performance_8cc.html#ab4e27bca35e8082ffbe84519993b0e47">INSTANTIATE_TEST_CASE_P</a>(UnitTest, <a class="code" href="class_prach_perf.html">PrachPerf</a>,</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        testing::ValuesIn(<a class="code" href="common_8cpp.html#a39bf4f7770751080f5b72046abfd01a5">get_sequence</a>(<a class="code" href="class_kernel_tests.html#a6157ff083be863bba0a7804cd1788d96">PrachPerf::get_number_of_cases</a>(<span class="stringliteral">&quot;prach_performance&quot;</span>))));</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div><div class="ttc" id="xran__common_8c_html_ab8a6ed3cee8fa183142d0c23d0b4971d"><div class="ttname"><a href="xran__common_8c.html#ab8a6ed3cee8fa183142d0c23d0b4971d">generate_cpmsg_prach</a></div><div class="ttdeci">int generate_cpmsg_prach(void *pHandle, struct xran_cp_gen_params *params, struct xran_section_gen_info *sect_geninfo, struct rte_mbuf *mbuf, struct xran_device_ctx *pxran_lib_ctx, uint8_t frame_id, uint8_t subframe_id, uint8_t slot_id, uint16_t beam_id, uint8_t cc_id, uint8_t prach_port_id, uint8_t seq_id)</div><div class="ttdef"><b>Definition:</b> <a href="xran__common_8c_source.html#l00595">xran_common.c:595</a></div></div>
71 <div class="ttc" id="class_prach_perf_html_a5b1a6d8e8257b3bb7e3a187c0cce4011"><div class="ttname"><a href="class_prach_perf.html#a5b1a6d8e8257b3bb7e3a187c0cce4011">PrachPerf::m_iqWidth</a></div><div class="ttdeci">uint8_t m_iqWidth</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00065">prach_performance.cc:65</a></div></div>
72 <div class="ttc" id="class_prach_perf_html_a48dc9763aed8e2af7ff83eb1648aa96e"><div class="ttname"><a href="class_prach_perf.html#a48dc9763aed8e2af7ff83eb1648aa96e">PrachPerf::m_xran_dev_ctx</a></div><div class="ttdeci">struct xran_device_ctx m_xran_dev_ctx</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00041">prach_performance.cc:41</a></div></div>
73 <div class="ttc" id="class_prach_perf_html_a98ba28864455aad01fecfc51992a252a"><div class="ttname"><a href="class_prach_perf.html#a98ba28864455aad01fecfc51992a252a">PrachPerf::m_prach_last_symbol</a></div><div class="ttdeci">int m_prach_last_symbol</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00087">prach_performance.cc:87</a></div></div>
74 <div class="ttc" id="class_prach_perf_html_a28e2512868d0865874dc55150a46f39a"><div class="ttname"><a href="class_prach_perf.html#a28e2512868d0865874dc55150a46f39a">PrachPerf::lastsymbol</a></div><div class="ttdeci">int lastsymbol</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00047">prach_performance.cc:47</a></div></div>
75 <div class="ttc" id="xran__fh__o__du_8h_html_a814959a7b5ff6cd4474433f62312eee0"><div class="ttname"><a href="xran__fh__o__du_8h.html#a814959a7b5ff6cd4474433f62312eee0">XRAN_STATUS_SUCCESS</a></div><div class="ttdeci">#define XRAN_STATUS_SUCCESS</div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00054">xran_fh_o_du.h:54</a></div></div>
76 <div class="ttc" id="class_prach_perf_html_a7a0ce01c67c4067cc3ba42fd380e858a"><div class="ttname"><a href="class_prach_perf.html#a7a0ce01c67c4067cc3ba42fd380e858a">PrachPerf::m_seqId</a></div><div class="ttdeci">uint8_t m_seqId</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00060">prach_performance.cc:60</a></div></div>
77 <div class="ttc" id="structxran__prach__config_html_a3b43924c5ef23b0496d1a7adf2752dbf"><div class="ttname"><a href="structxran__prach__config.html#a3b43924c5ef23b0496d1a7adf2752dbf">xran_prach_config::nPrachFreqOffset</a></div><div class="ttdeci">int32_t nPrachFreqOffset</div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00442">xran_fh_o_du.h:442</a></div></div>
78 <div class="ttc" id="class_prach_perf_html_a0baaeee595bffc14f68fefd762c6fa5a"><div class="ttname"><a href="class_prach_perf.html#a0baaeee595bffc14f68fefd762c6fa5a">PrachPerf::m_occassionsInPrachSlot</a></div><div class="ttdeci">uint8_t m_occassionsInPrachSlot</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00083">prach_performance.cc:83</a></div></div>
79 <div class="ttc" id="class_kernel_tests_html_a6157ff083be863bba0a7804cd1788d96"><div class="ttname"><a href="class_kernel_tests.html#a6157ff083be863bba0a7804cd1788d96">KernelTests::get_number_of_cases</a></div><div class="ttdeci">static unsigned get_number_of_cases(const std::string &amp;type)</div><div class="ttdef"><b>Definition:</b> <a href="common_8hpp_source.html#l00190">common.hpp:190</a></div></div>
80 <div class="ttc" id="class_prach_perf_html_ae0c317f2faf44b0e7bde79d34e00b2e7"><div class="ttname"><a href="class_prach_perf.html#ae0c317f2faf44b0e7bde79d34e00b2e7">PrachPerf::m_SlotNrNum</a></div><div class="ttdeci">uint8_t m_SlotNrNum</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00088">prach_performance.cc:88</a></div></div>
81 <div class="ttc" id="class_prach_perf_html_a65389015c6ac952ac5108c2ae802fa52"><div class="ttname"><a href="class_prach_perf.html#a65389015c6ac952ac5108c2ae802fa52">PrachPerf::m_frameId</a></div><div class="ttdeci">uint8_t m_frameId</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00061">prach_performance.cc:61</a></div></div>
82 <div class="ttc" id="class_kernel_tests_html_a3cf2e25a99be565a4ab570737cfeac41"><div class="ttname"><a href="class_kernel_tests.html#a3cf2e25a99be565a4ab570737cfeac41">KernelTests::performance</a></div><div class="ttdeci">void performance(const std::string &amp;isa, const std::string &amp;module_name, F function, Args ... args)</div><div class="ttdoc">Run performance test case for a given function. </div><div class="ttdef"><b>Definition:</b> <a href="common_8hpp_source.html#l00253">common.hpp:253</a></div></div>
83 <div class="ttc" id="class_prach_perf_html_ab7158c23dfca189475b254c35ede1da7"><div class="ttname"><a href="class_prach_perf.html#ab7158c23dfca189475b254c35ede1da7">PrachPerf::m_numSymbol</a></div><div class="ttdeci">uint8_t m_numSymbol</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00079">prach_performance.cc:79</a></div></div>
84 <div class="ttc" id="class_kernel_tests_html"><div class="ttname"><a href="class_kernel_tests.html">KernelTests</a></div><div class="ttdef"><b>Definition:</b> <a href="common_8hpp_source.html#l00156">common.hpp:156</a></div></div>
85 <div class="ttc" id="class_prach_perf_html_ac4fca95dc3b93372ce7f2078baf8e8b6"><div class="ttname"><a href="class_prach_perf.html#ac4fca95dc3b93372ce7f2078baf8e8b6">PrachPerf::TearDown</a></div><div class="ttdeci">void TearDown() override</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00160">prach_performance.cc:160</a></div></div>
86 <div class="ttc" id="class_prach_perf_html_afa13542efadbf6db6e8ddfa388a345c0"><div class="ttname"><a href="class_prach_perf.html#afa13542efadbf6db6e8ddfa388a345c0">PrachPerf::m_subframeId</a></div><div class="ttdeci">uint8_t m_subframeId</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00061">prach_performance.cc:61</a></div></div>
87 <div class="ttc" id="class_prach_perf_html_a73f8e8274bd97892f58f73d1d83b533a"><div class="ttname"><a href="class_prach_perf.html#a73f8e8274bd97892f58f73d1d83b533a">PrachPerf::m_antId</a></div><div class="ttdeci">uint8_t m_antId</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00059">prach_performance.cc:59</a></div></div>
88 <div class="ttc" id="structxran__prach__config_html_a5c648c99c04370a4e8767f919a2289bf"><div class="ttname"><a href="structxran__prach__config.html#a5c648c99c04370a4e8767f919a2289bf">xran_prach_config::nPrachFreqStart</a></div><div class="ttdeci">uint16_t nPrachFreqStart</div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00441">xran_fh_o_du.h:441</a></div></div>
89 <div class="ttc" id="class_prach_perf_html_a047b603d6d908d93ce5d58dcc2b63036"><div class="ttname"><a href="class_prach_perf.html#a047b603d6d908d93ce5d58dcc2b63036">PrachPerf::m_beamId</a></div><div class="ttdeci">uint16_t m_beamId</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00066">prach_performance.cc:66</a></div></div>
90 <div class="ttc" id="class_prach_perf_html_a7f021a016314b5d3a9bb095c5c08048f"><div class="ttname"><a href="class_prach_perf.html#a7f021a016314b5d3a9bb095c5c08048f">PrachPerf::m_slotId</a></div><div class="ttdeci">uint8_t m_slotId</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00061">prach_performance.cc:61</a></div></div>
91 <div class="ttc" id="structxran__recv__packet__info_html"><div class="ttname"><a href="structxran__recv__packet__info.html">xran_recv_packet_info</a></div><div class="ttdef"><b>Definition:</b> <a href="xran__transport_8h_source.html#l00047">xran_transport.h:47</a></div></div>
92 <div class="ttc" id="class_prach_perf_html_a1d28f82423abf4fde782a34ae064aea9"><div class="ttname"><a href="class_prach_perf.html#a1d28f82423abf4fde782a34ae064aea9">PrachPerf::m_startSymId</a></div><div class="ttdeci">uint8_t m_startSymId</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00074">prach_performance.cc:74</a></div></div>
93 <div class="ttc" id="class_prach_perf_html_acb7ae6f5547d5e166b643084db28b2fa"><div class="ttname"><a href="class_prach_perf.html#acb7ae6f5547d5e166b643084db28b2fa">PrachPerf::m_xranConf</a></div><div class="ttdeci">struct xran_fh_config m_xranConf</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00040">prach_performance.cc:40</a></div></div>
94 <div class="ttc" id="structxran__frame__config_html_a3b86317723a592e240c0047e53a6326d"><div class="ttname"><a href="structxran__frame__config.html#a3b86317723a592e240c0047e53a6326d">xran_frame_config::nFrameDuplexType</a></div><div class="ttdeci">uint8_t nFrameDuplexType</div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00460">xran_fh_o_du.h:460</a></div></div>
95 <div class="ttc" id="structxran__device__ctx_html"><div class="ttname"><a href="structxran__device__ctx.html">xran_device_ctx</a></div><div class="ttdef"><b>Definition:</b> <a href="xran__common_8h_source.html#l00203">xran_common.h:203</a></div></div>
96 <div class="ttc" id="class_prach_perf_html_a45887981986f86c7811031b354fb4a36"><div class="ttname"><a href="class_prach_perf.html#a45887981986f86c7811031b354fb4a36">PrachPerf::m_pPrachCPConfig</a></div><div class="ttdeci">struct xran_prach_cp_config * m_pPrachCPConfig</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00043">prach_performance.cc:43</a></div></div>
97 <div class="ttc" id="class_prach_perf_html_af2657f421b39bfe018266cfe11d27b51"><div class="ttname"><a href="class_prach_perf.html#af2657f421b39bfe018266cfe11d27b51">PrachPerf::m_numPrbc</a></div><div class="ttdeci">uint8_t m_numPrbc</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00078">prach_performance.cc:78</a></div></div>
98 <div class="ttc" id="common_8hpp_html"><div class="ttname"><a href="common_8hpp.html">common.hpp</a></div></div>
99 <div class="ttc" id="class_prach_perf_html_aa42dde0a7ce436df7e5b607d17d52668"><div class="ttname"><a href="class_prach_perf.html#aa42dde0a7ce436df7e5b607d17d52668">PrachPerf::m_result</a></div><div class="ttdeci">struct xran_cp_gen_params m_result</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00053">prach_performance.cc:53</a></div></div>
100 <div class="ttc" id="xran__common_8h_html_a00025c5bad7b7b6eea4374226f8c54bb"><div class="ttname"><a href="xran__common_8h.html#a00025c5bad7b7b6eea4374226f8c54bb">xran_init_prach</a></div><div class="ttdeci">int xran_init_prach(struct xran_fh_config *pConf, struct xran_device_ctx *p_xran_dev_ctx)</div><div class="ttdef"><b>Definition:</b> <a href="xran__main_8c_source.html#l00308">xran_main.c:308</a></div></div>
101 <div class="ttc" id="class_prach_perf_html_a88a1f1ad78450f64aab4fa3f6499060a"><div class="ttname"><a href="class_prach_perf.html#a88a1f1ad78450f64aab4fa3f6499060a">PrachPerf::m_symNum</a></div><div class="ttdeci">uint8_t m_symNum</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00062">prach_performance.cc:62</a></div></div>
102 <div class="ttc" id="prach__performance_8cc_html_a69b4bff6061152ff85770d725cced3cc"><div class="ttname"><a href="prach__performance_8cc.html#a69b4bff6061152ff85770d725cced3cc">module_name</a></div><div class="ttdeci">const std::string module_name</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00030">prach_performance.cc:30</a></div></div>
103 <div class="ttc" id="ethernet_8h_html"><div class="ttname"><a href="ethernet_8h.html">ethernet.h</a></div><div class="ttdoc">This file has all definitions for the Ethernet Data Interface Layer. </div></div>
104 <div class="ttc" id="structxran__fh__config_html_a583c2f58d0655789ea36e22d605ab9ad"><div class="ttname"><a href="structxran__fh__config.html#a583c2f58d0655789ea36e22d605ab9ad">xran_fh_config::log_level</a></div><div class="ttdeci">uint32_t log_level</div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00523">xran_fh_o_du.h:523</a></div></div>
105 <div class="ttc" id="xran__common_8h_html_af7a48e76794ce5d801ab6d0f848abb53"><div class="ttname"><a href="xran__common_8h.html#af7a48e76794ce5d801ab6d0f848abb53">XRAN_PRACH_CANDIDATE_SLOT</a></div><div class="ttdeci">#define XRAN_PRACH_CANDIDATE_SLOT</div><div class="ttdef"><b>Definition:</b> <a href="xran__common_8h_source.html#l00080">xran_common.h:80</a></div></div>
106 <div class="ttc" id="prach__performance_8cc_html_a540e426541deb753f7c69d8df5d5b090"><div class="ttname"><a href="prach__performance_8cc.html#a540e426541deb753f7c69d8df5d5b090">performance_cp</a></div><div class="ttdeci">void performance_cp(void *pHandle, struct xran_cp_gen_params *params, struct xran_section_gen_info *sect_geninfo, struct xran_device_ctx *pxran_lib_ctx, uint8_t frame_id, uint8_t subframe_id, uint8_t slot_id, uint16_t beam_id, uint8_t cc_id, uint8_t prach_port_id, uint8_t seq_id)</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00172">prach_performance.cc:172</a></div></div>
107 <div class="ttc" id="class_prach_perf_html_a16c92b16fc21a700c50a7faf19da41b9"><div class="ttname"><a href="class_prach_perf.html#a16c92b16fc21a700c50a7faf19da41b9">PrachPerf::m_params</a></div><div class="ttdeci">struct xran_cp_gen_params m_params</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00051">prach_performance.cc:51</a></div></div>
108 <div class="ttc" id="class_prach_perf_html_aee24498b1349e41e8e14f822c6bd8fff"><div class="ttname"><a href="class_prach_perf.html#aee24498b1349e41e8e14f822c6bd8fff">PrachPerf::m_prach_start_symbol</a></div><div class="ttdeci">int m_prach_start_symbol</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00086">prach_performance.cc:86</a></div></div>
109 <div class="ttc" id="structxran__fh__config_html_a72b0cba491d0dd2703d684cb2c2a14cf"><div class="ttname"><a href="structxran__fh__config.html#a72b0cba491d0dd2703d684cb2c2a14cf">xran_fh_config::frame_conf</a></div><div class="ttdeci">struct xran_frame_config frame_conf</div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00517">xran_fh_o_du.h:517</a></div></div>
110 <div class="ttc" id="class_prach_perf_html_a9ef01047ab319b03151146a47e4516c4"><div class="ttname"><a href="class_prach_perf.html#a9ef01047ab319b03151146a47e4516c4">PrachPerf::m_isPRACHslot</a></div><div class="ttdeci">uint8_t m_isPRACHslot[XRAN_PRACH_CANDIDATE_SLOT]</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00085">prach_performance.cc:85</a></div></div>
111 <div class="ttc" id="class_prach_perf_html_a8afca7ac895ea509b38432d1b45bff55"><div class="ttname"><a href="class_prach_perf.html#a8afca7ac895ea509b38432d1b45bff55">PrachPerf::m_pSectGenInfo</a></div><div class="ttdeci">struct xran_section_gen_info * m_pSectGenInfo</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00045">prach_performance.cc:45</a></div></div>
112 <div class="ttc" id="structxran__prach__config_html"><div class="ttname"><a href="structxran__prach__config.html">xran_prach_config</a></div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00429">xran_fh_o_du.h:429</a></div></div>
113 <div class="ttc" id="structxran__prach__cp__config_html"><div class="ttname"><a href="structxran__prach__cp__config.html">xran_prach_cp_config</a></div><div class="ttdef"><b>Definition:</b> <a href="xran__common_8h_source.html#l00125">xran_common.h:125</a></div></div>
114 <div class="ttc" id="class_prach_perf_html_aafa40e823e408268e48585ec7a623eae"><div class="ttname"><a href="class_prach_perf.html#aafa40e823e408268e48585ec7a623eae">PrachPerf::m_pTestBuffer</a></div><div class="ttdeci">struct rte_mbuf * m_pTestBuffer</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00049">prach_performance.cc:49</a></div></div>
115 <div class="ttc" id="class_prach_perf_html_aa6a94180919a3f3827f581cb9b6038ef"><div class="ttname"><a href="class_prach_perf.html#aa6a94180919a3f3827f581cb9b6038ef">PrachPerf::m_filterIdx</a></div><div class="ttdeci">uint8_t m_filterIdx</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00076">prach_performance.cc:76</a></div></div>
116 <div class="ttc" id="structxran__fh__config_html"><div class="ttname"><a href="structxran__fh__config.html">xran_fh_config</a></div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00497">xran_fh_o_du.h:497</a></div></div>
117 <div class="ttc" id="class_kernel_tests_html_abf28e5ea54fab2b0685972fe6e75560a"><div class="ttname"><a href="class_kernel_tests.html#abf28e5ea54fab2b0685972fe6e75560a">KernelTests::init_test</a></div><div class="ttdeci">void init_test(const std::string &amp;type)</div><div class="ttdoc">Defines section in the conf.json that is used to load parameters from. </div><div class="ttdef"><b>Definition:</b> <a href="common_8hpp_source.html#l00358">common.hpp:358</a></div></div>
118 <div class="ttc" id="ethernet_8c_html_a8d83e3adb6c9e839b3b7259288f100ba"><div class="ttname"><a href="ethernet_8c.html#a8d83e3adb6c9e839b3b7259288f100ba">_eth_mbuf_pool</a></div><div class="ttdeci">struct rte_mempool * _eth_mbuf_pool</div><div class="ttdef"><b>Definition:</b> <a href="ethernet_8c_source.html#l00070">ethernet.c:70</a></div></div>
119 <div class="ttc" id="class_prach_perf_html_a9c4d35a4cce2560e384f2fe95c4c341f"><div class="ttname"><a href="class_prach_perf.html#a9c4d35a4cce2560e384f2fe95c4c341f">PrachPerf::m_sectionId</a></div><div class="ttdeci">uint16_t m_sectionId</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00068">prach_performance.cc:68</a></div></div>
120 <div class="ttc" id="structxran__fh__config_html_a167e91cb91119363bf10c9430b6f082c"><div class="ttname"><a href="structxran__fh__config.html#a167e91cb91119363bf10c9430b6f082c">xran_fh_config::prach_conf</a></div><div class="ttdeci">struct xran_prach_config prach_conf</div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00515">xran_fh_o_du.h:515</a></div></div>
121 <div class="ttc" id="class_prach_perf_html_a3a1707f6479611fdc609a3eb8a0cef1b"><div class="ttname"><a href="class_prach_perf.html#a3a1707f6479611fdc609a3eb8a0cef1b">PrachPerf::SetUp</a></div><div class="ttdeci">void SetUp() override</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00091">prach_performance.cc:91</a></div></div>
122 <div class="ttc" id="class_prach_perf_html_a431f2e351a321b762ccd64984d566913"><div class="ttname"><a href="class_prach_perf.html#a431f2e351a321b762ccd64984d566913">PrachPerf::m_pktInfo</a></div><div class="ttdeci">struct xran_recv_packet_info m_pktInfo</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00052">prach_performance.cc:52</a></div></div>
123 <div class="ttc" id="xran__common_8h_html_a342c40a4877f7760c65eca32523efea1"><div class="ttname"><a href="xran__common_8h.html#a342c40a4877f7760c65eca32523efea1">XRAN_PRACH_CANDIDATE_Y</a></div><div class="ttdeci">#define XRAN_PRACH_CANDIDATE_Y</div><div class="ttdef"><b>Definition:</b> <a href="xran__common_8h_source.html#l00079">xran_common.h:79</a></div></div>
124 <div class="ttc" id="structxran__frame__config_html_a78b2fab8e8d6a6424c2712d528fd9a58"><div class="ttname"><a href="structxran__frame__config.html#a78b2fab8e8d6a6424c2712d528fd9a58">xran_frame_config::nNumerology</a></div><div class="ttdeci">uint8_t nNumerology</div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00461">xran_fh_o_du.h:461</a></div></div>
125 <div class="ttc" id="class_prach_perf_html_aba23eca36e0c5cc06d74919fa5fe0dd6"><div class="ttname"><a href="class_prach_perf.html#aba23eca36e0c5cc06d74919fa5fe0dd6">PrachPerf::m_symStart</a></div><div class="ttdeci">uint8_t m_symStart</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00062">prach_performance.cc:62</a></div></div>
126 <div class="ttc" id="class_prach_perf_html"><div class="ttname"><a href="class_prach_perf.html">PrachPerf</a></div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00033">prach_performance.cc:33</a></div></div>
127 <div class="ttc" id="class_prach_perf_html_a5067ab67bdb57355a12a0282ced79bdc"><div class="ttname"><a href="class_prach_perf.html#a5067ab67bdb57355a12a0282ced79bdc">PrachPerf::m_y</a></div><div class="ttdeci">uint8_t m_y[XRAN_PRACH_CANDIDATE_Y]</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00084">prach_performance.cc:84</a></div></div>
128 <div class="ttc" id="class_prach_perf_html_abc4c88e1904502c47099799767ea3991"><div class="ttname"><a href="class_prach_perf.html#abc4c88e1904502c47099799767ea3991">PrachPerf::m_sectionType</a></div><div class="ttdeci">uint8_t m_sectionType</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00057">prach_performance.cc:57</a></div></div>
129 <div class="ttc" id="xran__common_8h_html"><div class="ttname"><a href="xran__common_8h.html">xran_common.h</a></div><div class="ttdoc">XRAN layer common functionality for both lls-CU and RU as well as C-plane and U-plane. </div></div>
130 <div class="ttc" id="class_prach_perf_html_a7a8bdb868f3812cf7270734d13159255"><div class="ttname"><a href="class_prach_perf.html#a7a8bdb868f3812cf7270734d13159255">PrachPerf::m_fftSize</a></div><div class="ttdeci">uint8_t m_fftSize</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00071">prach_performance.cc:71</a></div></div>
131 <div class="ttc" id="structxran__cp__gen__params_html"><div class="ttname"><a href="structxran__cp__gen__params.html">xran_cp_gen_params</a></div><div class="ttdef"><b>Definition:</b> <a href="xran__cp__api_8h_source.html#l00315">xran_cp_api.h:315</a></div></div>
132 <div class="ttc" id="class_prach_perf_html_a81096035b0802bc24810c07ca13df7e9"><div class="ttname"><a href="class_prach_perf.html#a81096035b0802bc24810c07ca13df7e9">PrachPerf::m_prbNum</a></div><div class="ttdeci">uint16_t * m_prbNum</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00063">prach_performance.cc:63</a></div></div>
133 <div class="ttc" id="class_prach_perf_html_acef6d7b2a1494b7d98e70d4759875349"><div class="ttname"><a href="class_prach_perf.html#acef6d7b2a1494b7d98e70d4759875349">PrachPerf::m_startPrbc</a></div><div class="ttdeci">uint16_t m_startPrbc</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00077">prach_performance.cc:77</a></div></div>
134 <div class="ttc" id="class_prach_perf_html_a4bb0d1ca82a59555014c6c0e1060cbdf"><div class="ttname"><a href="class_prach_perf.html#a4bb0d1ca82a59555014c6c0e1060cbdf">PrachPerf::m_dirStr</a></div><div class="ttdeci">std::string m_dirStr</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00056">prach_performance.cc:56</a></div></div>
135 <div class="ttc" id="class_prach_perf_html_a21909f3922fb3485559575d6252575aa"><div class="ttname"><a href="class_prach_perf.html#a21909f3922fb3485559575d6252575aa">PrachPerf::m_pPRACHConfig</a></div><div class="ttdeci">struct xran_prach_config * m_pPRACHConfig</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00042">prach_performance.cc:42</a></div></div>
136 <div class="ttc" id="class_prach_perf_html_a9f102f8bfc163d6a26411d1855c8c97c"><div class="ttname"><a href="class_prach_perf.html#a9f102f8bfc163d6a26411d1855c8c97c">PrachPerf::m_ccId</a></div><div class="ttdeci">uint8_t m_ccId</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00059">prach_performance.cc:59</a></div></div>
137 <div class="ttc" id="prach__performance_8cc_html_ab4e27bca35e8082ffbe84519993b0e47"><div class="ttname"><a href="prach__performance_8cc.html#ab4e27bca35e8082ffbe84519993b0e47">INSTANTIATE_TEST_CASE_P</a></div><div class="ttdeci">INSTANTIATE_TEST_CASE_P(UnitTest, PrachPerf, testing::ValuesIn(get_sequence(PrachPerf::get_number_of_cases(&quot;prach_performance&quot;))))</div></div>
138 <div class="ttc" id="xran__fh__o__du_8h_html"><div class="ttname"><a href="xran__fh__o__du_8h.html">xran_fh_o_du.h</a></div><div class="ttdoc">This file provides public interface to xRAN Front Haul layer implementation as defined in the ORAN-WG...</div></div>
139 <div class="ttc" id="class_prach_perf_html_a493740cacd8f8d3e235c4626e501d3e2"><div class="ttname"><a href="class_prach_perf.html#a493740cacd8f8d3e235c4626e501d3e2">PrachPerf::m_compMethod</a></div><div class="ttdeci">uint8_t m_compMethod</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00065">prach_performance.cc:65</a></div></div>
140 <div class="ttc" id="structxran__device__ctx_html_ac1db3db55038ef0b2f69827746eaf87c"><div class="ttname"><a href="structxran__device__ctx.html#ac1db3db55038ef0b2f69827746eaf87c">xran_device_ctx::PrachCPConfig</a></div><div class="ttdeci">struct xran_prach_cp_config PrachCPConfig</div><div class="ttdef"><b>Definition:</b> <a href="xran__common_8h_source.html#l00210">xran_common.h:210</a></div></div>
141 <div class="ttc" id="class_prach_perf_html_afa985909bf1a1a9cc7a7070c9a73016e"><div class="ttname"><a href="class_prach_perf.html#afa985909bf1a1a9cc7a7070c9a73016e">PrachPerf::m_dir</a></div><div class="ttdeci">uint8_t m_dir</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00055">prach_performance.cc:55</a></div></div>
142 <div class="ttc" id="class_prach_perf_html_a8c2ff60cb0ad0f81eafada59dc92c4c6"><div class="ttname"><a href="class_prach_perf.html#a8c2ff60cb0ad0f81eafada59dc92c4c6">PrachPerf::m_nrofPrachInSlot</a></div><div class="ttdeci">uint8_t m_nrofPrachInSlot</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00082">prach_performance.cc:82</a></div></div>
143 <div class="ttc" id="structxran__cp__gen__params_html_a5921f2439294279b8111fed577c5c37a"><div class="ttname"><a href="structxran__cp__gen__params.html#a5921f2439294279b8111fed577c5c37a">xran_cp_gen_params::sections</a></div><div class="ttdeci">struct xran_section_gen_info * sections</div><div class="ttdef"><b>Definition:</b> <a href="xran__cp__api_8h_source.html#l00322">xran_cp_api.h:322</a></div></div>
144 <div class="ttc" id="prach__performance_8cc_html_a048e029f091d3d395e44cc24b3f197ee"><div class="ttname"><a href="prach__performance_8cc.html#a048e029f091d3d395e44cc24b3f197ee">TEST_P</a></div><div class="ttdeci">TEST_P(PrachPerf, PacketGen)</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00189">prach_performance.cc:189</a></div></div>
145 <div class="ttc" id="class_prach_perf_html_a95b34835c7215dd09bdfdd82698c1232"><div class="ttname"><a href="class_prach_perf.html#a95b34835c7215dd09bdfdd82698c1232">PrachPerf::m_x</a></div><div class="ttdeci">uint8_t m_x</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00075">prach_performance.cc:75</a></div></div>
146 <div class="ttc" id="structxran__section__gen__info_html"><div class="ttname"><a href="structxran__section__gen__info.html">xran_section_gen_info</a></div><div class="ttdef"><b>Definition:</b> <a href="xran__cp__api_8h_source.html#l00295">xran_cp_api.h:295</a></div></div>
147 <div class="ttc" id="class_prach_perf_html_ae68e73b40ca04879362dc67fbb368682"><div class="ttname"><a href="class_prach_perf.html#ae68e73b40ca04879362dc67fbb368682">PrachPerf::m_maxSections</a></div><div class="ttdeci">int m_maxSections</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00046">prach_performance.cc:46</a></div></div>
148 <div class="ttc" id="structxran__prach__config_html_acb5fe8097b0115e038eb02d5900f66d6"><div class="ttname"><a href="structxran__prach__config.html#acb5fe8097b0115e038eb02d5900f66d6">xran_prach_config::nPrachConfIdx</a></div><div class="ttdeci">uint8_t nPrachConfIdx</div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00432">xran_fh_o_du.h:432</a></div></div>
149 <div class="ttc" id="class_prach_perf_html_ab4be4cfb9be32a9a6c516f5cfbae0d6f"><div class="ttname"><a href="class_prach_perf.html#ab4be4cfb9be32a9a6c516f5cfbae0d6f">PrachPerf::m_reMask</a></div><div class="ttdeci">uint16_t m_reMask</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00067">prach_performance.cc:67</a></div></div>
150 <div class="ttc" id="class_prach_perf_html_a59b4057d63386649d2facf030a08fa0e"><div class="ttname"><a href="class_prach_perf.html#a59b4057d63386649d2facf030a08fa0e">PrachPerf::m_prbStart</a></div><div class="ttdeci">uint16_t * m_prbStart</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00063">prach_performance.cc:63</a></div></div>
151 <div class="ttc" id="common_8cpp_html_a39bf4f7770751080f5b72046abfd01a5"><div class="ttname"><a href="common_8cpp.html#a39bf4f7770751080f5b72046abfd01a5">get_sequence</a></div><div class="ttdeci">std::vector&lt; unsigned &gt; get_sequence(const unsigned number)</div><div class="ttdoc">For a given number return sequence of number from 0 to number - 1. </div><div class="ttdef"><b>Definition:</b> <a href="common_8cpp_source.html#l00078">common.cpp:78</a></div></div>
152 <div class="ttc" id="class_prach_perf_html_a9c9ab811b57b6250d1712aa6e59c0853"><div class="ttname"><a href="class_prach_perf.html#a9c9ab811b57b6250d1712aa6e59c0853">PrachPerf::m_freqOffset</a></div><div class="ttdeci">int32_t m_freqOffset</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00081">prach_performance.cc:81</a></div></div>
153 <div class="ttc" id="xran__cp__api_8h_html"><div class="ttname"><a href="xran__cp__api_8h.html">xran_cp_api.h</a></div><div class="ttdoc">This file provides the definitions for Control Plane Messages APIs. </div></div>
154 <div class="ttc" id="class_prach_perf_html_a509c970617e65a99c8120eef3d309bcb"><div class="ttname"><a href="class_prach_perf.html#a509c970617e65a99c8120eef3d309bcb">PrachPerf::m_timeOffset</a></div><div class="ttdeci">uint16_t m_timeOffset</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00080">prach_performance.cc:80</a></div></div>
155 <div class="ttc" id="class_prach_perf_html_adfa9d2df36650f369b04652749c1134b"><div class="ttname"><a href="class_prach_perf.html#adfa9d2df36650f369b04652749c1134b">PrachPerf::m_filterIndex</a></div><div class="ttdeci">uint8_t m_filterIndex</div><div class="ttdef"><b>Definition:</b> <a href="prach__performance_8cc_source.html#l00069">prach_performance.cc:69</a></div></div>
156 <div class="ttc" id="structxran__prach__config_html_ab9b99e41ea39f16780f66a539aa872c8"><div class="ttname"><a href="structxran__prach__config.html#ab9b99e41ea39f16780f66a539aa872c8">xran_prach_config::nPrachSubcSpacing</a></div><div class="ttdeci">uint8_t nPrachSubcSpacing</div><div class="ttdef"><b>Definition:</b> <a href="xran__fh__o__du_8h_source.html#l00433">xran_fh_o_du.h:433</a></div></div>
157 <div class="ttc" id="xran__transport_8h_html"><div class="ttname"><a href="xran__transport_8h.html">xran_transport.h</a></div><div class="ttdoc">This file provides the definitions for Transport layer (eCPRI) API. </div></div>
158 </div><!-- fragment --></div><!-- contents -->
159 <!-- start footer part -->
160 <hr class="footer"/><address class="footer"><small>
161 Generated by &#160;<a href="http://www.doxygen.org/index.html">
162 <img class="footer" src="doxygen.png" alt="doxygen"/>
163 </a> 1.8.13
164 </small></address>
165 </body>
166 </html>