add Doxygen documentation
[o-du/phy.git] / docs / API / xran__transport_8c.html
diff --git a/docs/API/xran__transport_8c.html b/docs/API/xran__transport_8c.html
new file mode 100644 (file)
index 0000000..96322e4
--- /dev/null
@@ -0,0 +1,533 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>o-du/phy: xran_transport.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">o-du/phy
+   </div>
+   <div id="projectbrief">Intel O-RAN/X-RAN Generated Doxygen Documentation</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_a4c74d6baed87eba72f3b201b7b4b8f2.html">fhi_lib</a></li><li class="navelem"><a class="el" href="dir_5cc0cc0264b57168b75ca56bde6cc403.html">lib</a></li><li class="navelem"><a class="el" href="dir_9fc50806095da30fbd4a2dbe2e456ff5.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">xran_transport.c File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This file provides the implementation for Transport lyaer (eCPRI) API.  
+<a href="#details">More...</a></p>
+<div class="textblock"><code>#include &lt;stdint.h&gt;</code><br />
+<code>#include &lt;endian.h&gt;</code><br />
+<code>#include &lt;rte_common.h&gt;</code><br />
+<code>#include &lt;rte_config.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="xran__common_8h_source.html">xran_common.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="xran__transport_8h_source.html">xran_transport.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="xran__pkt__cp_8h_source.html">xran_pkt_cp.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="xran__cp__api_8h_source.html">xran_cp_api.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="xran__up__api_8h_source.html">xran_up_api.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="xran__printf_8h_source.html">xran_printf.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for xran_transport.c:</div>
+<div class="dyncontent">
+<div class="center"><img src="xran__transport_8c__incl.png" border="0" usemap="#xran__transport_8c" alt=""/></div>
+<map name="xran__transport_8c" id="xran__transport_8c">
+<area shape="rect" id="node6" href="xran__fh__o__du_8h.html" title="This file provides public interface to xRAN Front Haul layer implementation as defined in the ORAN&#45;WG..." alt="" coords="707,229,817,256"/>
+<area shape="rect" id="node20" href="xran__common_8h.html" title="XRAN layer common functionality for both lls&#45;CU and RU as well as C&#45;plane and U&#45;plane. " alt="" coords="1075,80,1190,107"/>
+<area shape="rect" id="node28" href="xran__cp__api_8h.html" title="This file provides the definitions for Control Plane Messages APIs. " alt="" coords="1301,155,1404,181"/>
+<area shape="rect" id="node29" href="xran__pkt__cp_8h.html" title="This file provides the definition of Control Plane Messages for XRAN Front Haul layer as defined in X..." alt="" coords="1301,229,1405,256"/>
+<area shape="rect" id="node30" href="xran__transport_8h.html" title="This file provides the definitions for Transport layer (eCPRI) API. " alt="" coords="1429,229,1545,256"/>
+<area shape="rect" id="node31" href="xran__up__api_8h.html" title="This file provides the definitions for User Plane Messages APIs. " alt="" coords="1672,155,1775,181"/>
+<area shape="rect" id="node32" href="xran__printf_8h.html" title="Modules provide debug prints and utility functions. " alt="" coords="167,229,261,256"/>
+<area shape="rect" id="node24" href="xran__pkt__up_8h.html" title="Definitions and support functions to process XRAN packet. " alt="" coords="1671,229,1775,256"/>
+<area shape="rect" id="node25" href="xran__pkt_8h.html" title="Definitions and support functions to process XRAN packet. " alt="" coords="1822,304,1905,331"/>
+</map>
+</div>
+</div>
+<p><a href="xran__transport_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a0f378609208ec66467c58f0702ced85c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#a0f378609208ec66467c58f0702ced85c">xran_get_ecpri_hdr_size</a> (void)</td></tr>
+<tr class="memdesc:a0f378609208ec66467c58f0702ced85c"><td class="mdescLeft">&#160;</td><td class="mdescRight">return eCPRI header size without eCPRI common header  <a href="#a0f378609208ec66467c58f0702ced85c">More...</a><br /></td></tr>
+<tr class="separator:a0f378609208ec66467c58f0702ced85c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae834080139ba785f1a3ac5781bf2ec88"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#ae834080139ba785f1a3ac5781bf2ec88">xran_compose_cid</a> (uint8_t CU_Port_ID, uint8_t BandSector_ID, uint8_t CC_ID, uint8_t Ant_ID)</td></tr>
+<tr class="memdesc:ae834080139ba785f1a3ac5781bf2ec88"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compose ecpriRtcid/ecpriPcid.  <a href="#ae834080139ba785f1a3ac5781bf2ec88">More...</a><br /></td></tr>
+<tr class="separator:ae834080139ba785f1a3ac5781bf2ec88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab08a85b6527f45a9ba22d25061a96a3c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#ab08a85b6527f45a9ba22d25061a96a3c">xran_decompose_cid</a> (uint16_t cid, struct <a class="el" href="structxran__eaxc__info.html">xran_eaxc_info</a> *result)</td></tr>
+<tr class="memdesc:ab08a85b6527f45a9ba22d25061a96a3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decompose ecpriRtcid/ecpriPcid.  <a href="#ab08a85b6527f45a9ba22d25061a96a3c">More...</a><br /></td></tr>
+<tr class="separator:ab08a85b6527f45a9ba22d25061a96a3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7070bae58b40a4621354bda1677261af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#a7070bae58b40a4621354bda1677261af">xran_update_ecpri_payload_size</a> (struct rte_mbuf *mbuf, int size)</td></tr>
+<tr class="memdesc:a7070bae58b40a4621354bda1677261af"><td class="mdescLeft">&#160;</td><td class="mdescRight">modify the payload size of eCPRI header in xRAN packet  <a href="#a7070bae58b40a4621354bda1677261af">More...</a><br /></td></tr>
+<tr class="separator:a7070bae58b40a4621354bda1677261af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa21387dfaba47c2046d4a05f50cfc768"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#aa21387dfaba47c2046d4a05f50cfc768">xran_build_ecpri_hdr</a> (struct rte_mbuf *mbuf, uint8_t CC_ID, uint8_t Ant_ID, uint8_t seq_id, struct <a class="el" href="structxran__ecpri__hdr.html">xran_ecpri_hdr</a> **ecpri_hdr)</td></tr>
+<tr class="memdesc:aa21387dfaba47c2046d4a05f50cfc768"><td class="mdescLeft">&#160;</td><td class="mdescRight">Build ECPRI header and returns added length.  <a href="#aa21387dfaba47c2046d4a05f50cfc768">More...</a><br /></td></tr>
+<tr class="separator:aa21387dfaba47c2046d4a05f50cfc768"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad199c3f4bfa018f5d0846471206217d1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#ad199c3f4bfa018f5d0846471206217d1">xran_parse_ecpri_hdr</a> (struct rte_mbuf *mbuf, struct <a class="el" href="structxran__ecpri__hdr.html">xran_ecpri_hdr</a> **ecpri_hdr, struct <a class="el" href="structxran__recv__packet__info.html">xran_recv_packet_info</a> *pkt_info)</td></tr>
+<tr class="memdesc:ad199c3f4bfa018f5d0846471206217d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parse ECPRI header.  <a href="#ad199c3f4bfa018f5d0846471206217d1">More...</a><br /></td></tr>
+<tr class="separator:ad199c3f4bfa018f5d0846471206217d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>This file provides the implementation for Transport lyaer (eCPRI) API. </p>
+<dl class="section author"><dt>Author</dt><dd>Intel Corporation </dd></dl>
+
+<p class="definition">Definition in file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
+</div><h2 class="groupheader">Function Documentation</h2>
+<a id="aa21387dfaba47c2046d4a05f50cfc768"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa21387dfaba47c2046d4a05f50cfc768">&#9670;&nbsp;</a></span>xran_build_ecpri_hdr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int xran_build_ecpri_hdr </td>
+          <td>(</td>
+          <td class="paramtype">struct rte_mbuf *&#160;</td>
+          <td class="paramname"><em>mbuf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>CC_ID</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>Ant_ID</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>seq_id</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">struct <a class="el" href="structxran__ecpri__hdr.html">xran_ecpri_hdr</a> **&#160;</td>
+          <td class="paramname"><em>ecpri_hdr</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Build ECPRI header and returns added length. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">mbuf</td><td>The pointer of the packet buffer to be parsed </td></tr>
+    <tr><td class="paramname">CC_ID</td><td>Component Carrier ID for this C-Plane message </td></tr>
+    <tr><td class="paramname">Ant_ID</td><td>Antenna ID(RU Port ID) for this C-Plane message </td></tr>
+    <tr><td class="paramname">seq_id</td><td>Sequence ID for this C-Plane message </td></tr>
+    <tr><td class="paramname">ecpri_hdr</td><td>The pointer to ECPRI header </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>added payload size on success XRAN_STATUS_RESOURCE if failed to allocate the space to packet buffer </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00142">142</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
+<div class="dynheader">
+Here is the call graph for this function:</div>
+<div class="dyncontent">
+<div class="center"><img src="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_cgraph.png" border="0" usemap="#xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_cgraph" alt=""/></div>
+<map name="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_cgraph" id="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_cgraph">
+<area shape="rect" id="node2" href="xran__transport_8c.html#ae834080139ba785f1a3ac5781bf2ec88" title="Compose ecpriRtcid/ecpriPcid. " alt="" coords="211,5,341,32"/>
+<area shape="rect" id="node5" href="xran__transport_8c.html#a0f378609208ec66467c58f0702ced85c" title="return eCPRI header size without eCPRI common header " alt="" coords="195,56,357,83"/>
+<area shape="rect" id="node3" href="xran__common_8h.html#a761e3947dcc547008a12a9cca10b1ea0" title="Get the configuration of eAxC ID. " alt="" coords="405,5,549,32"/>
+<area shape="rect" id="node4" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="597,5,723,32"/>
+</map>
+</div>
+<div class="dynheader">
+Here is the caller graph for this function:</div>
+<div class="dyncontent">
+<div class="center"><img src="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_icgraph.png" border="0" usemap="#xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_icgraph" alt=""/></div>
+<map name="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_icgraph" id="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_icgraph">
+<area shape="rect" id="node2" href="xran__cp__api_8c.html#af9eb550e92ea270af41b4b6bcda363db" title="Create a C&#45;Plane packet Transport layer fragmentation is not supported. " alt="" coords="195,81,341,108"/>
+<area shape="rect" id="node3" href="c__plane__tests_8cc.html#ab22c1305386eabc256bc6d3492d50846" title="xran_ut_prepare_cp" alt="" coords="400,5,536,32"/>
+<area shape="rect" id="node5" href="c__plane__tests_8cc.html#a11a0b914a08e5375cae792dc6db08c7a" title="TEST_P" alt="" coords="432,56,504,83"/>
+<area shape="rect" id="node6" href="xran__common_8h.html#aaa01e98d3b3439a332302aebe21459dd" title="generate_cpmsg_dlul" alt="" coords="395,107,541,133"/>
+<area shape="rect" id="node7" href="xran__common_8h.html#ab8a6ed3cee8fa183142d0c23d0b4971d" title="generate_cpmsg_prach" alt="" coords="389,157,547,184"/>
+<area shape="rect" id="node4" href="c__plane__tests_8cc.html#a21d05f2c6607fc534e67ed32883de81f" title="TEST_P" alt="" coords="616,5,688,32"/>
+<area shape="rect" id="node8" href="prach__functional_8cc.html#a62307393b7f454a2b348ada67997b796" title="TEST_P" alt="" coords="616,132,688,159"/>
+<area shape="rect" id="node9" href="prach__performance_8cc.html#a540e426541deb753f7c69d8df5d5b090" title="performance_cp" alt="" coords="595,183,709,209"/>
+<area shape="rect" id="node10" href="prach__performance_8cc.html#a048e029f091d3d395e44cc24b3f197ee" title="TEST_P" alt="" coords="757,183,829,209"/>
+</map>
+</div>
+
+</div>
+</div>
+<a id="ae834080139ba785f1a3ac5781bf2ec88"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae834080139ba785f1a3ac5781bf2ec88">&#9670;&nbsp;</a></span>xran_compose_cid()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint16_t xran_compose_cid </td>
+          <td>(</td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>CU_Port_ID</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>BandSector_ID</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>CC_ID</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">uint8_t&#160;</td>
+          <td class="paramname"><em>Ant_ID</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Compose ecpriRtcid/ecpriPcid. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">CU_Port_ID</td><td>CU Port ID </td></tr>
+    <tr><td class="paramname">BanbSector_ID</td><td>Band Sector ID </td></tr>
+    <tr><td class="paramname">CC_ID</td><td>Component Carrier ID </td></tr>
+    <tr><td class="paramname">Ant_ID</td><td>RU Port ID (antenna ID) </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>uint16_t composed ecpriRtcid/ecpriPcid (network byte order) </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00065">65</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
+<div class="dynheader">
+Here is the call graph for this function:</div>
+<div class="dyncontent">
+<div class="center"><img src="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_cgraph.png" border="0" usemap="#xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_cgraph" alt=""/></div>
+<map name="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_cgraph" id="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_cgraph">
+<area shape="rect" id="node2" href="xran__common_8h.html#a761e3947dcc547008a12a9cca10b1ea0" title="Get the configuration of eAxC ID. " alt="" coords="184,5,328,32"/>
+<area shape="rect" id="node3" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="376,5,501,32"/>
+</map>
+</div>
+<div class="dynheader">
+Here is the caller graph for this function:</div>
+<div class="dyncontent">
+<div class="center"><img src="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_icgraph.png" border="0" usemap="#xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_icgraph" alt=""/></div>
+<map name="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_icgraph" id="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_icgraph">
+<area shape="rect" id="node2" href="xran__transport_8c.html#aa21387dfaba47c2046d4a05f50cfc768" title="Build ECPRI header and returns added length. " alt="" coords="184,81,325,108"/>
+<area shape="rect" id="node3" href="xran__cp__api_8c.html#af9eb550e92ea270af41b4b6bcda363db" title="Create a C&#45;Plane packet Transport layer fragmentation is not supported. " alt="" coords="373,81,520,108"/>
+<area shape="rect" id="node4" href="c__plane__tests_8cc.html#ab22c1305386eabc256bc6d3492d50846" title="xran_ut_prepare_cp" alt="" coords="579,5,715,32"/>
+<area shape="rect" id="node6" href="c__plane__tests_8cc.html#a11a0b914a08e5375cae792dc6db08c7a" title="TEST_P" alt="" coords="611,56,683,83"/>
+<area shape="rect" id="node7" href="xran__common_8h.html#aaa01e98d3b3439a332302aebe21459dd" title="generate_cpmsg_dlul" alt="" coords="574,107,719,133"/>
+<area shape="rect" id="node8" href="xran__common_8h.html#ab8a6ed3cee8fa183142d0c23d0b4971d" title="generate_cpmsg_prach" alt="" coords="568,157,725,184"/>
+<area shape="rect" id="node5" href="c__plane__tests_8cc.html#a21d05f2c6607fc534e67ed32883de81f" title="TEST_P" alt="" coords="795,5,867,32"/>
+<area shape="rect" id="node9" href="prach__functional_8cc.html#a62307393b7f454a2b348ada67997b796" title="TEST_P" alt="" coords="795,132,867,159"/>
+<area shape="rect" id="node10" href="prach__performance_8cc.html#a540e426541deb753f7c69d8df5d5b090" title="performance_cp" alt="" coords="773,183,888,209"/>
+<area shape="rect" id="node11" href="prach__performance_8cc.html#a048e029f091d3d395e44cc24b3f197ee" title="TEST_P" alt="" coords="936,183,1008,209"/>
+</map>
+</div>
+
+</div>
+</div>
+<a id="ab08a85b6527f45a9ba22d25061a96a3c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab08a85b6527f45a9ba22d25061a96a3c">&#9670;&nbsp;</a></span>xran_decompose_cid()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void xran_decompose_cid </td>
+          <td>(</td>
+          <td class="paramtype">uint16_t&#160;</td>
+          <td class="paramname"><em>cid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">struct <a class="el" href="structxran__eaxc__info.html">xran_eaxc_info</a> *&#160;</td>
+          <td class="paramname"><em>result</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Decompose ecpriRtcid/ecpriPcid. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">cid</td><td>composed ecpriRtcid/ecpriPcid (network byte order) </td></tr>
+    <tr><td class="paramname">result</td><td>the pointer of the structure to store decomposed values </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00089">89</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
+<div class="dynheader">
+Here is the call graph for this function:</div>
+<div class="dyncontent">
+<div class="center"><img src="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_cgraph.png" border="0" usemap="#xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_cgraph" alt=""/></div>
+<map name="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_cgraph" id="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_cgraph">
+<area shape="rect" id="node2" href="xran__common_8h.html#a761e3947dcc547008a12a9cca10b1ea0" title="Get the configuration of eAxC ID. " alt="" coords="199,5,343,32"/>
+<area shape="rect" id="node3" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="391,5,516,32"/>
+</map>
+</div>
+<div class="dynheader">
+Here is the caller graph for this function:</div>
+<div class="dyncontent">
+<div class="center"><img src="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_icgraph.png" border="0" usemap="#xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_icgraph" alt=""/></div>
+<map name="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_icgraph" id="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_icgraph">
+<area shape="rect" id="node2" href="xran__transport_8c.html#ad199c3f4bfa018f5d0846471206217d1" title="Parse ECPRI header. " alt="" coords="209,31,355,57"/>
+<area shape="rect" id="node8" href="xran__up__api_8c.html#adfc5ea408600c8de1384be020b359d95" title="Function for extracting all IQ samples from xRAN packet holding a single data section. " alt="" coords="199,81,365,108"/>
+<area shape="rect" id="node3" href="xran__cp__api_8c.html#a38c83cd67a7265920f3bd0b36510f713" title="Parse a C&#45;Plane packet (for RU emulation) Transport layer fragmentation is not supported. " alt="" coords="413,31,545,57"/>
+<area shape="rect" id="node4" href="c__plane__tests_8cc.html#a11a0b914a08e5375cae792dc6db08c7a" title="TEST_P" alt="" coords="635,5,707,32"/>
+<area shape="rect" id="node5" href="chain__tests_8cc.html#aa17765d107c851ebcc3d202cef78aa75" title="send_mbuf_cp_perf" alt="" coords="603,56,739,83"/>
+<area shape="rect" id="node6" href="chain__tests_8cc.html#a6c5f599800ca755367ad7df4da60eb86" title="TEST_P" alt="" coords="797,56,869,83"/>
+<area shape="rect" id="node7" href="chain__tests_8cc.html#a9dc1e3a47b655cad97eed3db3cdebd92" title="TEST_P" alt="" coords="957,56,1029,83"/>
+<area shape="rect" id="node9" href="u__plane__functional_8cc.html#a17e5d82ac5aec3860b1324a80fda79ed" title="TEST_P" alt="" coords="443,81,515,108"/>
+<area shape="rect" id="node10" href="chain__tests_8cc.html#a3d4bd5c7eec6da4ab71688e209100761" title="process_mbuf" alt="" coords="427,132,531,159"/>
+<area shape="rect" id="node11" href="xran__main_8c.html#a7a412a9cd0ac919dccb2112fb386d64a" title="handle_ecpri_ethertype" alt="" coords="593,132,749,159"/>
+<area shape="rect" id="node12" href="xran__main_8c.html#a4ea0e9c036a1dc7605f53f1f862f4952" title="xran_init" alt="" coords="798,132,869,159"/>
+<area shape="rect" id="node13" href="classxran_lib_wraper.html#a126b53d8cc57521b34496dbe3a26621f" title="xranLibWraper::SetUp" alt="" coords="917,132,1068,159"/>
+</map>
+</div>
+
+</div>
+</div>
+<a id="a0f378609208ec66467c58f0702ced85c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0f378609208ec66467c58f0702ced85c">&#9670;&nbsp;</a></span>xran_get_ecpri_hdr_size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int xran_get_ecpri_hdr_size </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>return eCPRI header size without eCPRI common header </p>
+<dl class="section return"><dt>Returns</dt><dd>the size of eCPRI header without common header </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00049">49</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
+<div class="dynheader">
+Here is the caller graph for this function:</div>
+<div class="dyncontent">
+<div class="center"><img src="xran__transport_8c_a0f378609208ec66467c58f0702ced85c_icgraph.png" border="0" usemap="#xran__transport_8c_a0f378609208ec66467c58f0702ced85c_icgraph" alt=""/></div>
+<map name="xran__transport_8c_a0f378609208ec66467c58f0702ced85c_icgraph" id="xran__transport_8c_a0f378609208ec66467c58f0702ced85c_icgraph">
+<area shape="rect" id="node2" href="xran__transport_8c.html#aa21387dfaba47c2046d4a05f50cfc768" title="Build ECPRI header and returns added length. " alt="" coords="216,81,357,108"/>
+<area shape="rect" id="node3" href="xran__cp__api_8c.html#af9eb550e92ea270af41b4b6bcda363db" title="Create a C&#45;Plane packet Transport layer fragmentation is not supported. " alt="" coords="405,81,552,108"/>
+<area shape="rect" id="node4" href="c__plane__tests_8cc.html#ab22c1305386eabc256bc6d3492d50846" title="xran_ut_prepare_cp" alt="" coords="611,5,747,32"/>
+<area shape="rect" id="node6" href="c__plane__tests_8cc.html#a11a0b914a08e5375cae792dc6db08c7a" title="TEST_P" alt="" coords="643,56,715,83"/>
+<area shape="rect" id="node7" href="xran__common_8h.html#aaa01e98d3b3439a332302aebe21459dd" title="generate_cpmsg_dlul" alt="" coords="606,107,751,133"/>
+<area shape="rect" id="node8" href="xran__common_8h.html#ab8a6ed3cee8fa183142d0c23d0b4971d" title="generate_cpmsg_prach" alt="" coords="600,157,757,184"/>
+<area shape="rect" id="node5" href="c__plane__tests_8cc.html#a21d05f2c6607fc534e67ed32883de81f" title="TEST_P" alt="" coords="827,5,899,32"/>
+<area shape="rect" id="node9" href="prach__functional_8cc.html#a62307393b7f454a2b348ada67997b796" title="TEST_P" alt="" coords="827,132,899,159"/>
+<area shape="rect" id="node10" href="prach__performance_8cc.html#a540e426541deb753f7c69d8df5d5b090" title="performance_cp" alt="" coords="805,183,920,209"/>
+<area shape="rect" id="node11" href="prach__performance_8cc.html#a048e029f091d3d395e44cc24b3f197ee" title="TEST_P" alt="" coords="968,183,1040,209"/>
+</map>
+</div>
+
+</div>
+</div>
+<a id="ad199c3f4bfa018f5d0846471206217d1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad199c3f4bfa018f5d0846471206217d1">&#9670;&nbsp;</a></span>xran_parse_ecpri_hdr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int xran_parse_ecpri_hdr </td>
+          <td>(</td>
+          <td class="paramtype">struct rte_mbuf *&#160;</td>
+          <td class="paramname"><em>mbuf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">struct <a class="el" href="structxran__ecpri__hdr.html">xran_ecpri_hdr</a> **&#160;</td>
+          <td class="paramname"><em>ecpri_hdr</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">struct <a class="el" href="structxran__recv__packet__info.html">xran_recv_packet_info</a> *&#160;</td>
+          <td class="paramname"><em>pkt_info</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Parse ECPRI header. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">mbuf</td><td>The pointer of the packet buffer to be parsed </td></tr>
+    <tr><td class="paramname">ecpri_hdr</td><td>The pointer to ECPRI header </td></tr>
+    <tr><td class="paramname">pkt_info</td><td>The pointer of sturcture to store the information from header </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>XRAN_STATUS_SUCCESS on success XRAN_STATUS_INVALID_PACKET if failed to parse the packet </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00192">192</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
+<div class="dynheader">
+Here is the call graph for this function:</div>
+<div class="dyncontent">
+<div class="center"><img src="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_cgraph.png" border="0" usemap="#xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_cgraph" alt=""/></div>
+<map name="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_cgraph" id="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_cgraph">
+<area shape="rect" id="node2" href="xran__transport_8c.html#ab08a85b6527f45a9ba22d25061a96a3c" title="Decompose ecpriRtcid/ecpriPcid. " alt="" coords="200,5,345,32"/>
+<area shape="rect" id="node3" href="xran__common_8h.html#a761e3947dcc547008a12a9cca10b1ea0" title="Get the configuration of eAxC ID. " alt="" coords="393,5,537,32"/>
+<area shape="rect" id="node4" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="585,5,711,32"/>
+</map>
+</div>
+<div class="dynheader">
+Here is the caller graph for this function:</div>
+<div class="dyncontent">
+<div class="center"><img src="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_icgraph.png" border="0" usemap="#xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_icgraph" alt=""/></div>
+<map name="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_icgraph" id="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_icgraph">
+<area shape="rect" id="node2" href="xran__cp__api_8c.html#a38c83cd67a7265920f3bd0b36510f713" title="Parse a C&#45;Plane packet (for RU emulation) Transport layer fragmentation is not supported. " alt="" coords="200,31,332,57"/>
+<area shape="rect" id="node3" href="c__plane__tests_8cc.html#a11a0b914a08e5375cae792dc6db08c7a" title="TEST_P" alt="" coords="412,5,484,32"/>
+<area shape="rect" id="node4" href="chain__tests_8cc.html#aa17765d107c851ebcc3d202cef78aa75" title="send_mbuf_cp_perf" alt="" coords="380,56,516,83"/>
+<area shape="rect" id="node5" href="chain__tests_8cc.html#a6c5f599800ca755367ad7df4da60eb86" title="TEST_P" alt="" coords="564,56,636,83"/>
+<area shape="rect" id="node6" href="chain__tests_8cc.html#a9dc1e3a47b655cad97eed3db3cdebd92" title="TEST_P" alt="" coords="684,56,756,83"/>
+</map>
+</div>
+
+</div>
+</div>
+<a id="a7070bae58b40a4621354bda1677261af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7070bae58b40a4621354bda1677261af">&#9670;&nbsp;</a></span>xran_update_ecpri_payload_size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void xran_update_ecpri_payload_size </td>
+          <td>(</td>
+          <td class="paramtype">struct rte_mbuf *&#160;</td>
+          <td class="paramname"><em>mbuf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>modify the payload size of eCPRI header in xRAN packet </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">mbuf</td><td>Initialized rte_mbuf packet which has eCPRI header already </td></tr>
+    <tr><td class="paramname">size</td><td>payload size to be updated </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>none </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00113">113</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.13
+</small></address>
+</body>
+</html>