Sophie

Sophie

distrib > Mageia > 5 > x86_64 > media > core-release > by-pkgid > 87aded5420321e37af1000cab6d33378 > files > 342

libomxil-bellagio-doc-0.9.3-6.mga5.noarch.rpm

<!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.8"/>
<title>OpenMAXBellagio: omx_base_port.h 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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</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 style="padding-left: 0.5em;">
   <div id="projectname">OpenMAXBellagio
   &#160;<span id="projectnumber">0.9.3</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('omx__base__port_8h.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">omx_base_port.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="tsemaphore_8h_source.html">tsemaphore.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="queue_8h_source.html">queue.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="omx__classmagic_8h_source.html">omx_classmagic.h</a>&quot;</code><br />
</div>
<p><a href="omx__base__port_8h_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="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:af69406c6f953793cfa4787d9905fbbb0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#af69406c6f953793cfa4787d9905fbbb0">TUNNEL_USE_BUFFER_RETRY</a>&#160;&#160;&#160;20</td></tr>
<tr class="separator:af69406c6f953793cfa4787d9905fbbb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48ca363f4754eefedeecc7f92502b8b5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a48ca363f4754eefedeecc7f92502b8b5">TUNNEL_USE_BUFFER_RETRY_USLEEP_TIME</a>&#160;&#160;&#160;50000</td></tr>
<tr class="separator:a48ca363f4754eefedeecc7f92502b8b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb1b7ed45bd0dbf4e2ef8b3714f99916"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#adb1b7ed45bd0dbf4e2ef8b3714f99916">PORT_IS_BEING_FLUSHED</a>(pPort)&#160;&#160;&#160;(pPort-&gt;bIsPortFlushed == <a class="el" href="_o_m_x___types_8h.html#a4aa524afe637a18762ac3cfdb3ce277babd8e08f19e313ba740188e0643ed08db">OMX_TRUE</a>)</td></tr>
<tr class="separator:adb1b7ed45bd0dbf4e2ef8b3714f99916"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a798aadadcfedd9a50eb6c66b87ce2fc2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a798aadadcfedd9a50eb6c66b87ce2fc2">PORT_IS_BEING_DISABLED</a>(pPort)&#160;&#160;&#160;(pPort-&gt;bIsTransientToDisabled == <a class="el" href="_o_m_x___types_8h.html#a4aa524afe637a18762ac3cfdb3ce277babd8e08f19e313ba740188e0643ed08db">OMX_TRUE</a>)</td></tr>
<tr class="separator:a798aadadcfedd9a50eb6c66b87ce2fc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96b9870fce37d9a71f49a4bd228976b8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a96b9870fce37d9a71f49a4bd228976b8">PORT_IS_ENABLED</a>(pPort)&#160;&#160;&#160;(pPort-&gt;sPortParam.bEnabled == <a class="el" href="_o_m_x___types_8h.html#a4aa524afe637a18762ac3cfdb3ce277babd8e08f19e313ba740188e0643ed08db">OMX_TRUE</a>)</td></tr>
<tr class="separator:a96b9870fce37d9a71f49a4bd228976b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6e6875809bffdf2ce5c7bbf7fbaa923"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#aa6e6875809bffdf2ce5c7bbf7fbaa923">PORT_IS_POPULATED</a>(pPort)&#160;&#160;&#160;(pPort-&gt;sPortParam.bPopulated == <a class="el" href="_o_m_x___types_8h.html#a4aa524afe637a18762ac3cfdb3ce277babd8e08f19e313ba740188e0643ed08db">OMX_TRUE</a>)</td></tr>
<tr class="separator:aa6e6875809bffdf2ce5c7bbf7fbaa923"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7871af92d96eb6e9e14ba60f808cf511"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a7871af92d96eb6e9e14ba60f808cf511">PORT_IS_TUNNELED</a>(pPort)&#160;&#160;&#160;(pPort-&gt;nTunnelFlags &amp; <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122a32f026a12f71a3aacc1332d3915a3a43">TUNNEL_ESTABLISHED</a>)</td></tr>
<tr class="separator:a7871af92d96eb6e9e14ba60f808cf511"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad776f6bd37f513944ff0910176506dcc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#ad776f6bd37f513944ff0910176506dcc">PORT_IS_DEEP_TUNNELED</a>(pPort)&#160;&#160;&#160;(pPort-&gt;nTunnelFlags &amp; <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122a28029a4d9ab595868a0c489837fcbcb6">PROPRIETARY_COMMUNICATION_ESTABLISHED</a>)</td></tr>
<tr class="separator:ad776f6bd37f513944ff0910176506dcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76c06ea50d8ecf7cffa4df100d1f6968"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a76c06ea50d8ecf7cffa4df100d1f6968">PORT_IS_BUFFER_SUPPLIER</a>(pPort)&#160;&#160;&#160;(pPort-&gt;nTunnelFlags &amp; <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122acf7a4e0abadd1aa873c1ff78985679fa">TUNNEL_IS_SUPPLIER</a>)</td></tr>
<tr class="separator:a76c06ea50d8ecf7cffa4df100d1f6968"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d5893b3b3196ccccf4f928cd211f044"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a2d5893b3b3196ccccf4f928cd211f044">PORT_IS_TUNNELED_N_BUFFER_SUPPLIER</a>(pPort)&#160;&#160;&#160;((pPort-&gt;nTunnelFlags &amp; <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122a32f026a12f71a3aacc1332d3915a3a43">TUNNEL_ESTABLISHED</a>) &amp;&amp; (pPort-&gt;nTunnelFlags &amp; <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122acf7a4e0abadd1aa873c1ff78985679fa">TUNNEL_IS_SUPPLIER</a>))</td></tr>
<tr class="separator:a2d5893b3b3196ccccf4f928cd211f044"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39533ac24079b670f65e5fdb19043f43"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a39533ac24079b670f65e5fdb19043f43">omx_base_PortType_FIELDS</a></td></tr>
<tr class="separator:a39533ac24079b670f65e5fdb19043f43"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a6ff9ee48177d3dfea33e8fcb299ed9ef"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="omx__base__port_8h.html#a35b97b91d535abcb6cfc2ec71b6fe88b">BUFFER_STATUS_FLAG</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a6ff9ee48177d3dfea33e8fcb299ed9ef">BUFFER_STATUS_FLAG</a></td></tr>
<tr class="separator:a6ff9ee48177d3dfea33e8fcb299ed9ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5f66a2fb1db7687fa2cda3537bbbf60"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122">TUNNEL_STATUS_FLAG</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#ae5f66a2fb1db7687fa2cda3537bbbf60">TUNNEL_STATUS_FLAG</a></td></tr>
<tr class="memdesc:ae5f66a2fb1db7687fa2cda3537bbbf60"><td class="mdescLeft">&#160;</td><td class="mdescRight">the status of a port related to the tunneling with another component  <a href="#ae5f66a2fb1db7687fa2cda3537bbbf60">More...</a><br /></td></tr>
<tr class="separator:ae5f66a2fb1db7687fa2cda3537bbbf60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe47131eeab7b51cdff7f7b48cd298ce"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structomx__base___port_type.html">omx_base_PortType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#abe47131eeab7b51cdff7f7b48cd298ce">omx_base_PortType</a></td></tr>
<tr class="memdesc:abe47131eeab7b51cdff7f7b48cd298ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">the base structure that describes each port.  <a href="#abe47131eeab7b51cdff7f7b48cd298ce">More...</a><br /></td></tr>
<tr class="separator:abe47131eeab7b51cdff7f7b48cd298ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a35b97b91d535abcb6cfc2ec71b6fe88b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a35b97b91d535abcb6cfc2ec71b6fe88b">BUFFER_STATUS_FLAG</a> { <a class="el" href="omx__base__port_8h.html#a35b97b91d535abcb6cfc2ec71b6fe88bab4085eca90c367ca2d8946ca015817a0">BUFFER_FREE</a> = 0, 
<a class="el" href="omx__base__port_8h.html#a35b97b91d535abcb6cfc2ec71b6fe88bade1813f6f1e1b8fa44e1c8b00ca2a3cf">BUFFER_ALLOCATED</a> = 0x0001, 
<a class="el" href="omx__base__port_8h.html#a35b97b91d535abcb6cfc2ec71b6fe88ba157b0a25ea3f3b78ab2adbfeefd9edf7">BUFFER_ASSIGNED</a> = 0x0002, 
<a class="el" href="omx__base__port_8h.html#a35b97b91d535abcb6cfc2ec71b6fe88ba3a58601f1616e976345a28ca963ae9e7">HEADER_ALLOCATED</a> = 0x0004
 }</td></tr>
<tr class="separator:a35b97b91d535abcb6cfc2ec71b6fe88b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67ccd9c6910efd960abc66edffa86122"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122">TUNNEL_STATUS_FLAG</a> { <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122aa73021a90ced2844e25879b5e13df784">NO_TUNNEL</a> = 0, 
<a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122a32f026a12f71a3aacc1332d3915a3a43">TUNNEL_ESTABLISHED</a> = 0x0001, 
<a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122acf7a4e0abadd1aa873c1ff78985679fa">TUNNEL_IS_SUPPLIER</a> = 0x0002, 
<a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122a28029a4d9ab595868a0c489837fcbcb6">PROPRIETARY_COMMUNICATION_ESTABLISHED</a> = 0x0004
 }</td></tr>
<tr class="memdesc:a67ccd9c6910efd960abc66edffa86122"><td class="mdescLeft">&#160;</td><td class="mdescRight">the status of a port related to the tunneling with another component  <a href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122">More...</a><br /></td></tr>
<tr class="separator:a67ccd9c6910efd960abc66edffa86122"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:af110b44dc7076094cf0234697e51fba6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#af110b44dc7076094cf0234697e51fba6">base_port_Constructor</a> (<a class="el" href="struct_o_m_x___c_o_m_p_o_n_e_n_t_t_y_p_e.html">OMX_COMPONENTTYPE</a> *openmaxStandComp, <a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> **openmaxStandPort, <a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a> nPortIndex, <a class="el" href="_o_m_x___types_8h.html#a4aa524afe637a18762ac3cfdb3ce277b">OMX_BOOL</a> isInput)</td></tr>
<tr class="memdesc:af110b44dc7076094cf0234697e51fba6"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base contructor for the generic OpenMAX ST port.  <a href="#af110b44dc7076094cf0234697e51fba6">More...</a><br /></td></tr>
<tr class="separator:af110b44dc7076094cf0234697e51fba6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afcf48c3877518487d2706e8e6bef1a2d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#afcf48c3877518487d2706e8e6bef1a2d">base_port_Destructor</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort)</td></tr>
<tr class="memdesc:afcf48c3877518487d2706e8e6bef1a2d"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base destructor for the generic OpenMAX ST port.  <a href="#afcf48c3877518487d2706e8e6bef1a2d">More...</a><br /></td></tr>
<tr class="separator:afcf48c3877518487d2706e8e6bef1a2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb30a063d32b3d2de151e64f92fe4268"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#abb30a063d32b3d2de151e64f92fe4268">base_port_DisablePort</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort)</td></tr>
<tr class="memdesc:abb30a063d32b3d2de151e64f92fe4268"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables the port.  <a href="#abb30a063d32b3d2de151e64f92fe4268">More...</a><br /></td></tr>
<tr class="separator:abb30a063d32b3d2de151e64f92fe4268"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afddd2809a3944f8d6116c3b8d4e611d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#afddd2809a3944f8d6116c3b8d4e611d9">base_port_EnablePort</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort)</td></tr>
<tr class="memdesc:afddd2809a3944f8d6116c3b8d4e611d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the port.  <a href="#afddd2809a3944f8d6116c3b8d4e611d9">More...</a><br /></td></tr>
<tr class="separator:afddd2809a3944f8d6116c3b8d4e611d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b4bee757868601bdf493a35c7440dfa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a4b4bee757868601bdf493a35c7440dfa">base_port_SendBufferFunction</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort, <a class="el" href="struct_o_m_x___b_u_f_f_e_r_h_e_a_d_e_r_t_y_p_e.html">OMX_BUFFERHEADERTYPE</a> *pBuffer)</td></tr>
<tr class="memdesc:a4b4bee757868601bdf493a35c7440dfa"><td class="mdescLeft">&#160;</td><td class="mdescRight">The entry point for sending buffers to the port.  <a href="#a4b4bee757868601bdf493a35c7440dfa">More...</a><br /></td></tr>
<tr class="separator:a4b4bee757868601bdf493a35c7440dfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af37cd05fdadf451e289ab2033d7dc5c1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#af37cd05fdadf451e289ab2033d7dc5c1">base_port_AllocateBuffer</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort, <a class="el" href="struct_o_m_x___b_u_f_f_e_r_h_e_a_d_e_r_t_y_p_e.html">OMX_BUFFERHEADERTYPE</a> **pBuffer, <a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a> nPortIndex, <a class="el" href="_o_m_x___types_8h.html#a52f5626b11279ed9a6ce8731abc365be">OMX_PTR</a> pAppPrivate, <a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a> nSizeBytes)</td></tr>
<tr class="memdesc:af37cd05fdadf451e289ab2033d7dc5c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the standard allocate buffer, it implements a base functionality.  <a href="#af37cd05fdadf451e289ab2033d7dc5c1">More...</a><br /></td></tr>
<tr class="separator:af37cd05fdadf451e289ab2033d7dc5c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae97c3b85669a4ccca24845b0a4f93132"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#ae97c3b85669a4ccca24845b0a4f93132">base_port_UseBuffer</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort, <a class="el" href="struct_o_m_x___b_u_f_f_e_r_h_e_a_d_e_r_t_y_p_e.html">OMX_BUFFERHEADERTYPE</a> **ppBufferHdr, <a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a> nPortIndex, <a class="el" href="_o_m_x___types_8h.html#a52f5626b11279ed9a6ce8731abc365be">OMX_PTR</a> pAppPrivate, <a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a> nSizeBytes, <a class="el" href="_o_m_x___types_8h.html#a3ad7d812ff8ffb968c08e4b7bb04becd">OMX_U8</a> *pBuffer)</td></tr>
<tr class="memdesc:ae97c3b85669a4ccca24845b0a4f93132"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the standard use buffer, it implements a base functionality.  <a href="#ae97c3b85669a4ccca24845b0a4f93132">More...</a><br /></td></tr>
<tr class="separator:ae97c3b85669a4ccca24845b0a4f93132"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2560c40ad461ba3f6a061c576948d9a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#ac2560c40ad461ba3f6a061c576948d9a">base_port_FreeBuffer</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort, <a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a> nPortIndex, <a class="el" href="struct_o_m_x___b_u_f_f_e_r_h_e_a_d_e_r_t_y_p_e.html">OMX_BUFFERHEADERTYPE</a> *pBuffer)</td></tr>
<tr class="memdesc:ac2560c40ad461ba3f6a061c576948d9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the standard function.  <a href="#ac2560c40ad461ba3f6a061c576948d9a">More...</a><br /></td></tr>
<tr class="separator:ac2560c40ad461ba3f6a061c576948d9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a267216c232fc98dd0b2e839f91a86935"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#a267216c232fc98dd0b2e839f91a86935">base_port_FlushProcessingBuffers</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort)</td></tr>
<tr class="memdesc:a267216c232fc98dd0b2e839f91a86935"><td class="mdescLeft">&#160;</td><td class="mdescRight">Releases buffers under processing.  <a href="#a267216c232fc98dd0b2e839f91a86935">More...</a><br /></td></tr>
<tr class="separator:a267216c232fc98dd0b2e839f91a86935"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aadf72263226d5123bf9cd27ab80b2750"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#aadf72263226d5123bf9cd27ab80b2750">base_port_ReturnBufferFunction</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort, <a class="el" href="struct_o_m_x___b_u_f_f_e_r_h_e_a_d_e_r_t_y_p_e.html">OMX_BUFFERHEADERTYPE</a> *pBuffer)</td></tr>
<tr class="memdesc:aadf72263226d5123bf9cd27ab80b2750"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns buffers when processed.  <a href="#aadf72263226d5123bf9cd27ab80b2750">More...</a><br /></td></tr>
<tr class="separator:aadf72263226d5123bf9cd27ab80b2750"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd34dcd603b1658b1fe0cc49269a99dc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#acd34dcd603b1658b1fe0cc49269a99dc">base_port_ComponentTunnelRequest</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort, <a class="el" href="_o_m_x___types_8h.html#a7b426d7bc825bf8a56ee39dc3c217af7">OMX_HANDLETYPE</a> hTunneledComp, <a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a> nTunneledPort, <a class="el" href="struct_o_m_x___t_u_n_n_e_l_s_e_t_u_p_t_y_p_e.html">OMX_TUNNELSETUPTYPE</a> *pTunnelSetup)</td></tr>
<tr class="memdesc:acd34dcd603b1658b1fe0cc49269a99dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Setup Tunnel with the port.  <a href="#acd34dcd603b1658b1fe0cc49269a99dc">More...</a><br /></td></tr>
<tr class="separator:acd34dcd603b1658b1fe0cc49269a99dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3c452372068c7801b428602819852fa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#ad3c452372068c7801b428602819852fa">base_port_AllocateTunnelBuffer</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort, <a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a> nPortIndex)</td></tr>
<tr class="memdesc:ad3c452372068c7801b428602819852fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocate Buffers for tunneling use.  <a href="#ad3c452372068c7801b428602819852fa">More...</a><br /></td></tr>
<tr class="separator:ad3c452372068c7801b428602819852fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6b1f00a1ac9c6d98a7e237137bbd99f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8h.html#ac6b1f00a1ac9c6d98a7e237137bbd99f">base_port_FreeTunnelBuffer</a> (<a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *openmaxStandPort, <a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a> nPortIndex)</td></tr>
<tr class="memdesc:ac6b1f00a1ac9c6d98a7e237137bbd99f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Free buffers used in tunnel.  <a href="#ac6b1f00a1ac9c6d98a7e237137bbd99f">More...</a><br /></td></tr>
<tr class="separator:ac6b1f00a1ac9c6d98a7e237137bbd99f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a39533ac24079b670f65e5fdb19043f43"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define omx_base_PortType_FIELDS</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Setup tunnel with the port </p>

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00106">106</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

</div>
</div>
<a class="anchor" id="a798aadadcfedd9a50eb6c66b87ce2fc2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PORT_IS_BEING_DISABLED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">pPort</td><td>)</td>
          <td>&#160;&#160;&#160;(pPort-&gt;bIsTransientToDisabled == <a class="el" href="_o_m_x___types_8h.html#a4aa524afe637a18762ac3cfdb3ce277babd8e08f19e313ba740188e0643ed08db">OMX_TRUE</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00040">40</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

<p>Referenced by <a class="el" href="omx__base__clock__port_8c_source.html#l00133">base_clock_port_SendBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00818">base_port_SendBufferFunction()</a>, and <a class="el" href="omx__video__scheduler__component_8c_source.html#l00168">omx_video_scheduler_component_port_SendBufferFunction()</a>.</p>

</div>
</div>
<a class="anchor" id="adb1b7ed45bd0dbf4e2ef8b3714f99916"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PORT_IS_BEING_FLUSHED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">pPort</td><td>)</td>
          <td>&#160;&#160;&#160;(pPort-&gt;bIsPortFlushed == <a class="el" href="_o_m_x___types_8h.html#a4aa524afe637a18762ac3cfdb3ce277babd8e08f19e313ba740188e0643ed08db">OMX_TRUE</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Port Specific Macro's </p>

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00039">39</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

<p>Referenced by <a class="el" href="omx__base__clock__port_8c_source.html#l00133">base_clock_port_SendBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00918">base_port_ReturnBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00818">base_port_SendBufferFunction()</a>, <a class="el" href="omx__audiomixer__component_8c_source.html#l00372">checkAnyPortBeingFlushed()</a>, <a class="el" href="omx__audiomixer__component_8c_source.html#l00399">omx_audio_mixer_BufferMgmtFunction()</a>, <a class="el" href="omx__base__filter_8c_source.html#l00083">omx_base_filter_BufferMgmtFunction()</a>, <a class="el" href="omx__base__sink_8c_source.html#l00067">omx_base_sink_BufferMgmtFunction()</a>, <a class="el" href="omx__base__sink_8c_source.html#l00206">omx_base_sink_twoport_BufferMgmtFunction()</a>, <a class="el" href="omx__base__source_8c_source.html#l00068">omx_base_source_BufferMgmtFunction()</a>, <a class="el" href="omx__base__source_8c_source.html#l00211">omx_base_source_twoport_BufferMgmtFunction()</a>, <a class="el" href="omx__clocksrc__component_8c_source.html#l00628">omx_clocksrc_BufferMgmtFunction()</a>, <a class="el" href="omx__video__scheduler__component_8c_source.html#l00520">omx_video_scheduler_component_BufferMgmtCallback()</a>, <a class="el" href="omx__video__scheduler__component_8c_source.html#l00272">omx_video_scheduler_component_ClockPortHandleFunction()</a>, and <a class="el" href="omx__video__scheduler__component_8c_source.html#l00168">omx_video_scheduler_component_port_SendBufferFunction()</a>.</p>

</div>
</div>
<a class="anchor" id="a76c06ea50d8ecf7cffa4df100d1f6968"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PORT_IS_BUFFER_SUPPLIER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">pPort</td><td>)</td>
          <td>&#160;&#160;&#160;(pPort-&gt;nTunnelFlags &amp; <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122acf7a4e0abadd1aa873c1ff78985679fa">TUNNEL_IS_SUPPLIER</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00045">45</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

<p>Referenced by <a class="el" href="omx__base__clock__port_8c_source.html#l00133">base_clock_port_SendBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00273">base_port_DisablePort()</a>, <a class="el" href="omx__base__port_8c_source.html#l00327">base_port_EnablePort()</a>, <a class="el" href="omx__base__port_8c_source.html#l00176">base_port_FlushProcessingBuffers()</a>, <a class="el" href="omx__base__port_8c_source.html#l00918">base_port_ReturnBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00818">base_port_SendBufferFunction()</a>, <a class="el" href="omx__clocksrc__component_8c_source.html#l00807">clocksrc_port_FlushProcessingBuffers()</a>, <a class="el" href="omx__base__component_8c_source.html#l00370">omx_base_component_DoStateSet()</a>, <a class="el" href="omx__base__component_8c_source.html#l00896">omx_base_component_GetParameter()</a>, <a class="el" href="omx__base__component_8c_source.html#l01488">omx_base_component_MessageHandler()</a>, <a class="el" href="omx__base__component_8c_source.html#l01026">omx_base_component_SetParameter()</a>, <a class="el" href="omx__video__scheduler__component_8c_source.html#l00417">omx_video_scheduler_component_port_FlushProcessingBuffers()</a>, and <a class="el" href="omx__video__scheduler__component_8c_source.html#l00168">omx_video_scheduler_component_port_SendBufferFunction()</a>.</p>

</div>
</div>
<a class="anchor" id="ad776f6bd37f513944ff0910176506dcc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PORT_IS_DEEP_TUNNELED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">pPort</td><td>)</td>
          <td>&#160;&#160;&#160;(pPort-&gt;nTunnelFlags &amp; <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122a28029a4d9ab595868a0c489837fcbcb6">PROPRIETARY_COMMUNICATION_ESTABLISHED</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00044">44</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l01002">base_port_ComponentTunnelRequest()</a>.</p>

</div>
</div>
<a class="anchor" id="a96b9870fce37d9a71f49a4bd228976b8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PORT_IS_ENABLED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">pPort</td><td>)</td>
          <td>&#160;&#160;&#160;(pPort-&gt;sPortParam.bEnabled == <a class="el" href="_o_m_x___types_8h.html#a4aa524afe637a18762ac3cfdb3ce277babd8e08f19e313ba740188e0643ed08db">OMX_TRUE</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00041">41</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

<p>Referenced by <a class="el" href="omx__base__clock__port_8c_source.html#l00133">base_clock_port_SendBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00273">base_port_DisablePort()</a>, <a class="el" href="omx__base__port_8c_source.html#l00327">base_port_EnablePort()</a>, <a class="el" href="omx__base__port_8c_source.html#l00818">base_port_SendBufferFunction()</a>, <a class="el" href="omx__audiomixer__component_8c_source.html#l00399">omx_audio_mixer_BufferMgmtFunction()</a>, <a class="el" href="omx__audiomixer__component_8c_source.html#l00159">omx_audio_mixer_component_BufferMgmtCallback()</a>, <a class="el" href="omx__base__component_8c_source.html#l00370">omx_base_component_DoStateSet()</a>, <a class="el" href="omx__base__component_8c_source.html#l00759">omx_base_component_ParameterSanityCheck()</a>, <a class="el" href="omx__base__component_8c_source.html#l01026">omx_base_component_SetParameter()</a>, <a class="el" href="omx__clocksrc__component_8c_source.html#l00628">omx_clocksrc_BufferMgmtFunction()</a>, <a class="el" href="omx__clocksrc__component_8c_source.html#l00361">omx_clocksrc_component_SetConfig()</a>, and <a class="el" href="omx__video__scheduler__component_8c_source.html#l00168">omx_video_scheduler_component_port_SendBufferFunction()</a>.</p>

</div>
</div>
<a class="anchor" id="aa6e6875809bffdf2ce5c7bbf7fbaa923"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PORT_IS_POPULATED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">pPort</td><td>)</td>
          <td>&#160;&#160;&#160;(pPort-&gt;sPortParam.bPopulated == <a class="el" href="_o_m_x___types_8h.html#a4aa524afe637a18762ac3cfdb3ce277babd8e08f19e313ba740188e0643ed08db">OMX_TRUE</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00042">42</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7871af92d96eb6e9e14ba60f808cf511"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PORT_IS_TUNNELED</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">pPort</td><td>)</td>
          <td>&#160;&#160;&#160;(pPort-&gt;nTunnelFlags &amp; <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122a32f026a12f71a3aacc1332d3915a3a43">TUNNEL_ESTABLISHED</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00043">43</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

<p>Referenced by <a class="el" href="omx__base__clock__port_8c_source.html#l00133">base_clock_port_SendBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00176">base_port_FlushProcessingBuffers()</a>, <a class="el" href="omx__base__port_8c_source.html#l00918">base_port_ReturnBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00818">base_port_SendBufferFunction()</a>, <a class="el" href="omx__clocksrc__component_8c_source.html#l00807">clocksrc_port_FlushProcessingBuffers()</a>, <a class="el" href="omx__base__component_8c_source.html#l00370">omx_base_component_DoStateSet()</a>, <a class="el" href="omx__base__component_8c_source.html#l00896">omx_base_component_GetParameter()</a>, <a class="el" href="omx__base__component_8c_source.html#l01488">omx_base_component_MessageHandler()</a>, <a class="el" href="omx__base__component_8c_source.html#l01026">omx_base_component_SetParameter()</a>, <a class="el" href="omx__clocksrc__component_8c_source.html#l00628">omx_clocksrc_BufferMgmtFunction()</a>, <a class="el" href="omx__video__scheduler__component_8c_source.html#l00520">omx_video_scheduler_component_BufferMgmtCallback()</a>, <a class="el" href="omx__video__scheduler__component_8c_source.html#l00417">omx_video_scheduler_component_port_FlushProcessingBuffers()</a>, and <a class="el" href="omx__video__scheduler__component_8c_source.html#l00168">omx_video_scheduler_component_port_SendBufferFunction()</a>.</p>

</div>
</div>
<a class="anchor" id="a2d5893b3b3196ccccf4f928cd211f044"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PORT_IS_TUNNELED_N_BUFFER_SUPPLIER</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">pPort</td><td>)</td>
          <td>&#160;&#160;&#160;((pPort-&gt;nTunnelFlags &amp; <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122a32f026a12f71a3aacc1332d3915a3a43">TUNNEL_ESTABLISHED</a>) &amp;&amp; (pPort-&gt;nTunnelFlags &amp; <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122acf7a4e0abadd1aa873c1ff78985679fa">TUNNEL_IS_SUPPLIER</a>))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00046">46</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

<p>Referenced by <a class="el" href="omx__base__clock__port_8c_source.html#l00133">base_clock_port_SendBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00383">base_port_AllocateBuffer()</a>, <a class="el" href="omx__base__port_8c_source.html#l00613">base_port_AllocateTunnelBuffer()</a>, <a class="el" href="omx__base__port_8c_source.html#l00176">base_port_FlushProcessingBuffers()</a>, <a class="el" href="omx__base__port_8c_source.html#l00547">base_port_FreeBuffer()</a>, <a class="el" href="omx__base__port_8c_source.html#l00741">base_port_FreeTunnelBuffer()</a>, <a class="el" href="omx__base__port_8c_source.html#l00918">base_port_ReturnBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00818">base_port_SendBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00462">base_port_UseBuffer()</a>, <a class="el" href="omx__clocksrc__component_8c_source.html#l00807">clocksrc_port_FlushProcessingBuffers()</a>, <a class="el" href="omx__base__component_8c_source.html#l00370">omx_base_component_DoStateSet()</a>, <a class="el" href="omx__video__scheduler__component_8c_source.html#l00417">omx_video_scheduler_component_port_FlushProcessingBuffers()</a>, and <a class="el" href="omx__video__scheduler__component_8c_source.html#l00168">omx_video_scheduler_component_port_SendBufferFunction()</a>.</p>

</div>
</div>
<a class="anchor" id="af69406c6f953793cfa4787d9905fbbb0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define TUNNEL_USE_BUFFER_RETRY&#160;&#160;&#160;20</td>
        </tr>
      </table>
</div><div class="memdoc">
<p><a class="el" href="omx__base__port_8h.html">src/base/omx_base_port.h</a></p>
<p>Base class for OpenMAX ports to be used in derived components.</p>
<p>Copyright (C) 2007-2009 STMicroelectronics Copyright (C) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).</p>
<p>This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.</p>
<p>This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.</p>
<p>You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA </p>

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00033">33</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00613">base_port_AllocateTunnelBuffer()</a>, and <a class="el" href="omx__base__port_8c_source.html#l00741">base_port_FreeTunnelBuffer()</a>.</p>

</div>
</div>
<a class="anchor" id="a48ca363f4754eefedeecc7f92502b8b5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define TUNNEL_USE_BUFFER_RETRY_USLEEP_TIME&#160;&#160;&#160;50000</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00034">34</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00613">base_port_AllocateTunnelBuffer()</a>, and <a class="el" href="omx__base__port_8c_source.html#l00741">base_port_FreeTunnelBuffer()</a>.</p>

</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="a6ff9ee48177d3dfea33e8fcb299ed9ef"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef enum <a class="el" href="omx__base__port_8h.html#a35b97b91d535abcb6cfc2ec71b6fe88b">BUFFER_STATUS_FLAG</a>  <a class="el" href="omx__base__port_8h.html#a35b97b91d535abcb6cfc2ec71b6fe88b">BUFFER_STATUS_FLAG</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The following enum values are used to characterize each buffer allocated or assigned to the component. A buffer list is created for each port of the component. The buffer can be assigned to the port, or owned by the port. The buffer flag are applied for each buffer in each port buffer list. The following use cases are currently implemented:</p><ul>
<li>When the IL Client asks the component to allocate a buffer for a given port, with the call to AllocateBuffer, the buffer created is characterizeed by the flag BUFFER_ALLOCATED</li>
<li>When the IL Client asks the component to use a buffer allocated by the client itself, the buffer flag is BUFFER_ASSIGNED</li>
<li>When the component is tunneled by another component, and the first is supplier of the buffer, the buffer is marked with the BUFFER_ALLOCATED flag.</li>
<li>When the component is tunneled by another component, and the second is supplier of the buffer, the buffer is marked with the BUFFER_ASSIGNED flag.</li>
<li>The case of a buffer supplied by the first component but allocated by another component or another port inside the same component, as in the case of shared buffers, is not yet implemented in these components</li>
<li>During hte deallocation phase each buffer is marked with the BUFFER_FREE flag, so that the component can check if all the buffers have been deallocated before switch the component state to Loaded, as specified by the OpenMAX specs </li>
</ul>

</div>
</div>
<a class="anchor" id="abe47131eeab7b51cdff7f7b48cd298ce"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> <a class="el" href="structomx__base___port_type.html">omx_base_PortType</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>the base structure that describes each port. </p>
<p>The data structure that describes a port contains the basic elements used in the base component. Other elements can be added in the derived components structures. </p>

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00105">105</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae5f66a2fb1db7687fa2cda3537bbbf60"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef enum <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122">TUNNEL_STATUS_FLAG</a>  <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122">TUNNEL_STATUS_FLAG</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>the status of a port related to the tunneling with another component </p>

</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="a35b97b91d535abcb6cfc2ec71b6fe88b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="omx__base__port_8h.html#a35b97b91d535abcb6cfc2ec71b6fe88b">BUFFER_STATUS_FLAG</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The following enum values are used to characterize each buffer allocated or assigned to the component. A buffer list is created for each port of the component. The buffer can be assigned to the port, or owned by the port. The buffer flag are applied for each buffer in each port buffer list. The following use cases are currently implemented:</p><ul>
<li>When the IL Client asks the component to allocate a buffer for a given port, with the call to AllocateBuffer, the buffer created is characterizeed by the flag BUFFER_ALLOCATED</li>
<li>When the IL Client asks the component to use a buffer allocated by the client itself, the buffer flag is BUFFER_ASSIGNED</li>
<li>When the component is tunneled by another component, and the first is supplier of the buffer, the buffer is marked with the BUFFER_ALLOCATED flag.</li>
<li>When the component is tunneled by another component, and the second is supplier of the buffer, the buffer is marked with the BUFFER_ASSIGNED flag.</li>
<li>The case of a buffer supplied by the first component but allocated by another component or another port inside the same component, as in the case of shared buffers, is not yet implemented in these components</li>
<li>During hte deallocation phase each buffer is marked with the BUFFER_FREE flag, so that the component can check if all the buffers have been deallocated before switch the component state to Loaded, as specified by the OpenMAX specs </li>
</ul>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a35b97b91d535abcb6cfc2ec71b6fe88bab4085eca90c367ca2d8946ca015817a0"></a>BUFFER_FREE&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a35b97b91d535abcb6cfc2ec71b6fe88bade1813f6f1e1b8fa44e1c8b00ca2a3cf"></a>BUFFER_ALLOCATED&#160;</td><td class="fielddoc">
<p>This flag is applied to a buffer when it is allocated by the given port of the component </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a35b97b91d535abcb6cfc2ec71b6fe88ba157b0a25ea3f3b78ab2adbfeefd9edf7"></a>BUFFER_ASSIGNED&#160;</td><td class="fielddoc">
<p>This flag is applied to a buffer when it is assigned from another port or by the IL client </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a35b97b91d535abcb6cfc2ec71b6fe88ba3a58601f1616e976345a28ca963ae9e7"></a>HEADER_ALLOCATED&#160;</td><td class="fielddoc">
<p>This flag is applied to a buffer when buffer header is allocated by the given port of the component </p>
</td></tr>
</table>

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00072">72</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

</div>
</div>
<a class="anchor" id="a67ccd9c6910efd960abc66edffa86122"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="omx__base__port_8h.html#a67ccd9c6910efd960abc66edffa86122">TUNNEL_STATUS_FLAG</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>the status of a port related to the tunneling with another component </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a67ccd9c6910efd960abc66edffa86122aa73021a90ced2844e25879b5e13df784"></a>NO_TUNNEL&#160;</td><td class="fielddoc">
<p>No tunnel established </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a67ccd9c6910efd960abc66edffa86122a32f026a12f71a3aacc1332d3915a3a43"></a>TUNNEL_ESTABLISHED&#160;</td><td class="fielddoc">
<p>the TUNNEL_ESTABLISHED specifies if a port is tunneled. It is assigned to a private field of the port if it is tunneled </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a67ccd9c6910efd960abc66edffa86122acf7a4e0abadd1aa873c1ff78985679fa"></a>TUNNEL_IS_SUPPLIER&#160;</td><td class="fielddoc">
<p>the TUNNEL_IS_SUPPLIER specifies if a tunneled port is the supplier. It is assigned to a private field of the port if it is tunneled and also it is the buffer supplier for the tunnel. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a67ccd9c6910efd960abc66edffa86122a28029a4d9ab595868a0c489837fcbcb6"></a>PROPRIETARY_COMMUNICATION_ESTABLISHED&#160;</td><td class="fielddoc">
</td></tr>
</table>

<p>Definition at line <a class="el" href="omx__base__port_8h_source.html#l00084">84</a> of file <a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="af37cd05fdadf451e289ab2033d7dc5c1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_AllocateBuffer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="struct_o_m_x___b_u_f_f_e_r_h_e_a_d_e_r_t_y_p_e.html">OMX_BUFFERHEADERTYPE</a> **&#160;</td>
          <td class="paramname"><em>pBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a>&#160;</td>
          <td class="paramname"><em>nPortIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a52f5626b11279ed9a6ce8731abc365be">OMX_PTR</a>&#160;</td>
          <td class="paramname"><em>pAppPrivate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a>&#160;</td>
          <td class="paramname"><em>nSizeBytes</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the standard allocate buffer, it implements a base functionality. </p>
<p>This function can be overriden if the allocation of the buffer is not a simply malloc call. The parameters are the same as the standard function, except for the handle of the port instead of the handler of the component When the buffers needed by this port are all assigned or allocated, the variable bIsFullOfBuffers becomes equal to OMX_TRUE</p>
<p>This function can be overriden if the allocation of the buffer is not a simply alloc call. The parameters are the same as the standard function, except for the handle of the port instead of the handler of the component When the buffers needed by this port are all assigned or allocated, the variable bIsFullOfBuffers becomes equal to OMX_TRUE </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00383">383</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bBufferStateAllocated</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsFullOfBuffers</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsTransientToEnabled</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00073">OMX_PARAM_PORTDEFINITIONTYPE::bPopulated</a>, <a class="el" href="omx__base__port_8h_source.html#l00074">BUFFER_ALLOCATED</a>, <a class="el" href="omx__base__port_8h_source.html#l00073">BUFFER_FREE</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00043">DEB_LEV_PARAMS</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00048">DEB_LEV_SIMPLE_SEQ</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00065">OMX_PARAM_PORTDEFINITIONTYPE::eDir</a>, <a class="el" href="omx__base__port_8h_source.html#l00078">HEADER_ALLOCATED</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00404">OMX_BUFFERHEADERTYPE::nAllocLen</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00066">OMX_PARAM_PORTDEFINITIONTYPE::nBufferCountActual</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00068">OMX_PARAM_PORTDEFINITIONTYPE::nBufferSize</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00441">OMX_BUFFERHEADERTYPE::nInputPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nNumAssignedBuffers</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00439">OMX_BUFFERHEADERTYPE::nOutputPortIndex</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00226">OMX_DirInput</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00224">OMX_ErrorBadPortIndex</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00212">OMX_ErrorIncorrectStateTransition</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00131">OMX_ErrorInsufficientResources</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="omx__base__component_8h_source.html#l00088">OMX_TransStateLoadedToIdle</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00191">OMX_TRUE</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pAllocSem</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00409">OMX_BUFFERHEADERTYPE::pAppPrivate</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00402">OMX_BUFFERHEADERTYPE::pBuffer</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00326">OMX_COMPONENTTYPE::pComponentPrivate</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pInternalBufferStorage</a>, <a class="el" href="omx__base__port_8h_source.html#l00046">PORT_IS_TUNNELED_N_BUFFER_SUPPLIER</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00411">OMX_BUFFERHEADERTYPE::pPlatformPrivate</a>, <a class="el" href="omx__base__component_8c_source.html#l00746">setHeader()</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::standCompContainer</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::transientState</a>, and <a class="el" href="tsemaphore_8c_source.html#l00110">tsem_up()</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="ad3c452372068c7801b428602819852fa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_AllocateTunnelBuffer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a>&#160;</td>
          <td class="paramname"><em>nPortIndex</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Allocate Buffers for tunneling use. </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00613">613</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bBufferStateAllocated</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsFullOfBuffers</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsTransientToEnabled</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00073">OMX_PARAM_PORTDEFINITIONTYPE::bPopulated</a>, <a class="el" href="omx__base__port_8h_source.html#l00074">BUFFER_ALLOCATED</a>, <a class="el" href="omx__base__port_8h_source.html#l00073">BUFFER_FREE</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00054">DEB_LEV_FULL_SEQ</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00043">DEB_LEV_PARAMS</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00048">DEB_LEV_SIMPLE_SEQ</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00065">OMX_PARAM_PORTDEFINITIONTYPE::eDir</a>, <a class="el" href="omxvolcontroltest_8c_source.html#l00034">err</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::hTunneledComponent</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::name</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00066">OMX_PARAM_PORTDEFINITIONTYPE::nBufferCountActual</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00068">OMX_PARAM_PORTDEFINITIONTYPE::nBufferSize</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00441">OMX_BUFFERHEADERTYPE::nInputPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nNumAssignedBuffers</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00439">OMX_BUFFERHEADERTYPE::nOutputPortIndex</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nTunneledPort</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nTunnelFlags</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00226">OMX_DirInput</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00224">OMX_ErrorBadPortIndex</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00212">OMX_ErrorIncorrectStateTransition</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00131">OMX_ErrorInsufficientResources</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00168">OMX_ErrorPortsNotCompatible</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00786">OMX_GetParameter</a>, <a class="el" href="_o_m_x___index_8h_source.html#l00088">OMX_IndexParamPortDefinition</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00825">OMX_SetParameter</a>, <a class="el" href="omx__base__component_8h_source.html#l00088">OMX_TransStateLoadedToIdle</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00191">OMX_TRUE</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00985">OMX_UseBuffer</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferQueue</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00326">OMX_COMPONENTTYPE::pComponentPrivate</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pInternalBufferStorage</a>, <a class="el" href="omx__base__port_8h_source.html#l00046">PORT_IS_TUNNELED_N_BUFFER_SUPPLIER</a>, <a class="el" href="queue_8c_source.html#l00103">queue()</a>, <a class="el" href="omx__base__component_8c_source.html#l00746">setHeader()</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::standCompContainer</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::transientState</a>, <a class="el" href="omx__base__port_8h_source.html#l00033">TUNNEL_USE_BUFFER_RETRY</a>, and <a class="el" href="omx__base__port_8h_source.html#l00034">TUNNEL_USE_BUFFER_RETRY_USLEEP_TIME</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="acd34dcd603b1658b1fe0cc49269a99dc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_ComponentTunnelRequest </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a7b426d7bc825bf8a56ee39dc3c217af7">OMX_HANDLETYPE</a>&#160;</td>
          <td class="paramname"><em>hTunneledComp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a>&#160;</td>
          <td class="paramname"><em>nTunneledPort</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="struct_o_m_x___t_u_n_n_e_l_s_e_t_u_p_t_y_p_e.html">OMX_TUNNELSETUPTYPE</a> *&#160;</td>
          <td class="paramname"><em>pTunnelSetup</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Setup Tunnel with the port. </p>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>insert here a detailed comparison with the <a class="el" href="struct_o_m_x___a_u_d_i_o___p_o_r_t_d_e_f_i_n_i_t_i_o_n_t_y_p_e.html">OMX_AUDIO_PORTDEFINITIONTYPE</a> </dd></dl>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l01002">1002</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="_o_m_x___component_8h_source.html#l00079">OMX_PARAM_PORTDEFINITIONTYPE::audio</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00054">DEB_LEV_FULL_SEQ</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::eBufferSupplier</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00619">OMX_PARAM_BUFFERSUPPLIERTYPE::eBufferSupplier</a>, <a class="el" href="_o_m_x___video_8h_source.html#l00134">OMX_VIDEO_PORTDEFINITIONTYPE::eCompressionFormat</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00065">OMX_PARAM_PORTDEFINITIONTYPE::eDir</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00077">OMX_PARAM_PORTDEFINITIONTYPE::eDomain</a>, <a class="el" href="_o_m_x___audio_8h_source.html#l00111">OMX_AUDIO_PORTDEFINITIONTYPE::eEncoding</a>, <a class="el" href="_o_m_x___other_8h_source.html#l00318">OMX_OTHER_PORTDEFINITIONTYPE::eFormat</a>, <a class="el" href="omxvolcontroltest_8c_source.html#l00034">err</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00638">OMX_TUNNELSETUPTYPE::eSupplier</a>, <a class="el" href="struct_o_m_x___p_a_r_a_m___p_o_r_t_d_e_f_i_n_i_t_i_o_n_t_y_p_e.html#a8fdad175180e464f59937278a7c66ff3">OMX_PARAM_PORTDEFINITIONTYPE::format</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::hTunneledComponent</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00066">OMX_PARAM_PORTDEFINITIONTYPE::nBufferCountActual</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nNumTunnelBuffer</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="omx__base__component_8h_source.html#l00071">OMX_VENDOR_PROP_TUNNELSETUPTYPE::nPortIndex</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00618">OMX_PARAM_BUFFERSUPPLIERTYPE::nPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nTunneledPort</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nTunnelFlags</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00637">OMX_TUNNELSETUPTYPE::nTunnelFlags</a>, <a class="el" href="_o_m_x___audio_8h_source.html#l00094">OMX_AUDIO_CodingMax</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00604">OMX_BufferSupplyInput</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00605">OMX_BufferSupplyOutput</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00602">OMX_BufferSupplyUnspecified</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00226">OMX_DirInput</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00168">OMX_ErrorPortsNotCompatible</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00786">OMX_GetParameter</a>, <a class="el" href="_o_m_x___index_8h_source.html#l00089">OMX_IndexParamCompBufferSupplier</a>, <a class="el" href="_o_m_x___index_8h_source.html#l00088">OMX_IndexParamPortDefinition</a>, <a class="el" href="omx__base__component_8h_source.html#l00080">OMX_IndexVendorCompPropTunnelFlags</a>, <a class="el" href="_o_m_x___other_8h_source.html#l00063">OMX_OTHER_FormatMax</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00051">OMX_PortDomainAudio</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00054">OMX_PortDomainOther</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00052">OMX_PortDomainVideo</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00627">OMX_PORTTUNNELFLAG_READONLY</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00825">OMX_SetParameter</a>, <a class="el" href="_o_m_x___video_8h_source.html#l00073">OMX_VIDEO_CodingMax</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00082">OMX_PARAM_PORTDEFINITIONTYPE::other</a>, <a class="el" href="omx__base__port_8h_source.html#l00044">PORT_IS_DEEP_TUNNELED</a>, <a class="el" href="omx__base__port_8h_source.html#l00092">PROPRIETARY_COMMUNICATION_ESTABLISHED</a>, <a class="el" href="omx__base__component_8c_source.html#l00746">setHeader()</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00086">TUNNEL_ESTABLISHED</a>, <a class="el" href="omx__base__port_8h_source.html#l00089">TUNNEL_IS_SUPPLIER</a>, and <a class="el" href="_o_m_x___component_8h_source.html#l00080">OMX_PARAM_PORTDEFINITIONTYPE::video</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="af110b44dc7076094cf0234697e51fba6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_Constructor </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_o_m_x___c_o_m_p_o_n_e_n_t_t_y_p_e.html">OMX_COMPONENTTYPE</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandComp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> **&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a>&#160;</td>
          <td class="paramname"><em>nPortIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a4aa524afe637a18762ac3cfdb3ce277b">OMX_BOOL</a>&#160;</td>
          <td class="paramname"><em>isInput</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The base contructor for the generic OpenMAX ST port. </p>
<p>This function is executed by the component that uses a port. The parameter contains the info about the component. It takes care of constructing the instance of the port and every object needed by the base port.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">openmaxStandPort</td><td>the ST port to be initialized</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>OMX_ErrorInsufficientResources if a memory allocation fails</dd></dl>
<p>This function is executed by the component that uses a port. The parameter contains the info about the component. It takes care of constructing the instance of the port and every object needed by the base port.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">openmaxStandComp</td><td>in the component that holds the port </td></tr>
    <tr><td class="paramname">openmaxStandPort</td><td>the ST port to be initialized </td></tr>
    <tr><td class="paramname">nPortIndex</td><td>the index of the port </td></tr>
    <tr><td class="paramname">isInput</td><td>specifies if the port is an input or an output</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>OMX_ErrorInsufficientResources if a memory allocation fails </dd></dl>
<p>Allocate and initialize buffer queue </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00055">55</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="omx__base__port_8c_source.html#l00383">base_port_AllocateBuffer()</a>, <a class="el" href="omx__base__port_8c_source.html#l00613">base_port_AllocateTunnelBuffer()</a>, <a class="el" href="omx__base__port_8c_source.html#l01002">base_port_ComponentTunnelRequest()</a>, <a class="el" href="omx__base__port_8c_source.html#l00134">base_port_Destructor()</a>, <a class="el" href="omx__base__port_8c_source.html#l00273">base_port_DisablePort()</a>, <a class="el" href="omx__base__port_8c_source.html#l00327">base_port_EnablePort()</a>, <a class="el" href="omx__base__port_8c_source.html#l00176">base_port_FlushProcessingBuffers()</a>, <a class="el" href="omx__base__port_8c_source.html#l00547">base_port_FreeBuffer()</a>, <a class="el" href="omx__base__port_8c_source.html#l00741">base_port_FreeTunnelBuffer()</a>, <a class="el" href="omx__base__port_8c_source.html#l00918">base_port_ReturnBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00818">base_port_SendBufferFunction()</a>, <a class="el" href="omx__base__port_8c_source.html#l00462">base_port_UseBuffer()</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="omx__base__port_8c_source.html#l00038">DEFAULT_MIN_NUMBER_BUFFERS_PER_PORT</a>, <a class="el" href="omx__base__port_8c_source.html#l00036">DEFAULT_NUMBER_BUFFERS_PER_PORT</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00602">OMX_BufferSupplyUnspecified</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00226">OMX_DirInput</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00227">OMX_DirOutput</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00131">OMX_ErrorInsufficientResources</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00190">OMX_FALSE</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00191">OMX_TRUE</a>, <a class="el" href="queue_8c_source.html#l00038">queue_init()</a>, <a class="el" href="omx__base__component_8c_source.html#l00746">setHeader()</a>, and <a class="el" href="tsemaphore_8c_source.html#l00039">tsem_init()</a>.</p>

<p>Referenced by <a class="el" href="omx__base__audio__port_8c_source.html#l00051">base_audio_port_Constructor()</a>, <a class="el" href="omx__base__clock__port_8c_source.html#l00050">base_clock_port_Constructor()</a>, <a class="el" href="omx__base__image__port_8c_source.html#l00051">base_image_port_Constructor()</a>, and <a class="el" href="omx__base__video__port_8c_source.html#l00049">base_video_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="afcf48c3877518487d2706e8e6bef1a2d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_Destructor </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The base destructor for the generic OpenMAX ST port. </p>
<p>This function is executed by the component that uses a port. The parameter contains the info about the component. It takes care of destructing the instance of the port and every object used by the base port.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">openmaxStandPort</td><td>the ST port to be disposed </td></tr>
  </table>
  </dd>
</dl>
<p>TODO This semaphore, if activated, can cause memory leaks. It can be necessary to avoid to wait forever if the other component in tunnel doesn't perform required actions. This operation can be timed but can cause problems. Currently it is left commented for reference. tsem_up(openmaxStandPort-&gt;pAllocSem);</p>
<p>Allocate and initialize buffer queue </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00134">134</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsDestroying</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::exitMutex</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00191">OMX_TRUE</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pAllocSem</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferQueue</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferSem</a>, <a class="el" href="queue_8c_source.html#l00077">queue_deinit()</a>, and <a class="el" href="tsemaphore_8c_source.html#l00057">tsem_deinit()</a>.</p>

<p>Referenced by <a class="el" href="omx__base__audio__port_8c_source.html#l00108">base_audio_port_Destructor()</a>, <a class="el" href="omx__base__clock__port_8c_source.html#l00116">base_clock_port_Destructor()</a>, <a class="el" href="omx__base__image__port_8c_source.html#l00100">base_image_port_Destructor()</a>, <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>, and <a class="el" href="omx__base__video__port_8c_source.html#l00108">base_video_port_Destructor()</a>.</p>

</div>
</div>
<a class="anchor" id="abb30a063d32b3d2de151e64f92fe4268"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_DisablePort </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Disables the port. </p>
<p>This function is called due to a request by the IL client</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">openmaxStandPort</td><td>the reference to the port </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00273">273</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="_o_m_x___component_8h_source.html#l00069">OMX_PARAM_PORTDEFINITIONTYPE::bEnabled</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsTransientToDisabled</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::bMgmtSem</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00043">DEB_LEV_PARAMS</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="queue_8c_source.html#l00122">dequeue()</a>, <a class="el" href="omxvolcontroltest_8c_source.html#l00034">err</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::name</a>, <a class="el" href="queue_8h_source.html#l00046">queue_t::nelem</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nTunnelFlags</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00190">OMX_FALSE</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00097">OMX_StateLoaded</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pAllocSem</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferQueue</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferSem</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00326">OMX_COMPONENTTYPE::pComponentPrivate</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::Port_FreeTunnelBuffer</a>, <a class="el" href="omx__base__port_8h_source.html#l00045">PORT_IS_BUFFER_SUPPLIER</a>, <a class="el" href="omx__base__port_8h_source.html#l00041">PORT_IS_ENABLED</a>, <a class="el" href="tsemaphore_8h_source.html#l00041">tsem_t::semval</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::standCompContainer</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::state</a>, <a class="el" href="tsemaphore_8c_source.html#l00097">tsem_down()</a>, <a class="el" href="tsemaphore_8c_source.html#l00121">tsem_reset()</a>, and <a class="el" href="tsemaphore_8c_source.html#l00110">tsem_up()</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="afddd2809a3944f8d6116c3b8d4e611d9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_EnablePort </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Enables the port. </p>
<p>This function is called due to a request by the IL client</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">openmaxStandPort</td><td>the reference to the port </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00327">327</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="_o_m_x___component_8h_source.html#l00069">OMX_PARAM_PORTDEFINITIONTYPE::bEnabled</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsTransientToEnabled</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::bMgmtSem</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00073">OMX_PARAM_PORTDEFINITIONTYPE::bPopulated</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00043">DEB_LEV_PARAMS</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="omxvolcontroltest_8c_source.html#l00034">err</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00066">OMX_PARAM_PORTDEFINITIONTYPE::nBufferCountActual</a>, <a class="el" href="queue_8h_source.html#l00046">queue_t::nelem</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nTunnelFlags</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00190">OMX_FALSE</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00105">OMX_StateExecuting</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00097">OMX_StateLoaded</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00108">OMX_StateWaitForResources</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00191">OMX_TRUE</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pAllocSem</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferQueue</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferSem</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00326">OMX_COMPONENTTYPE::pComponentPrivate</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::Port_AllocateTunnelBuffer</a>, <a class="el" href="omx__base__port_8h_source.html#l00045">PORT_IS_BUFFER_SUPPLIER</a>, <a class="el" href="omx__base__port_8h_source.html#l00041">PORT_IS_ENABLED</a>, <a class="el" href="tsemaphore_8h_source.html#l00041">tsem_t::semval</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::standCompContainer</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::state</a>, <a class="el" href="tsemaphore_8c_source.html#l00097">tsem_down()</a>, and <a class="el" href="tsemaphore_8c_source.html#l00110">tsem_up()</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="a267216c232fc98dd0b2e839f91a86935"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_FlushProcessingBuffers </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Releases buffers under processing. </p>
<p>This function must be implemented in the derived classes, for the specific processing</p>
<p>Releases buffers under processing. </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00176">176</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsPortFlushed</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::bMgmtSem</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::bStateSem</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::BufferProcessedCallback</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::callbackData</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00054">DEB_LEV_FULL_SEQ</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00043">DEB_LEV_PARAMS</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="queue_8c_source.html#l00122">dequeue()</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00065">OMX_PARAM_PORTDEFINITIONTYPE::eDir</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00077">OMX_PARAM_PORTDEFINITIONTYPE::eDomain</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::flush_all_condition</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::flush_condition</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::flush_mutex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::hTunneledComponent</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::name</a>, <a class="el" href="queue_8h_source.html#l00046">queue_t::nelem</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nNumAssignedBuffers</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nTunnelFlags</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00226">OMX_DirInput</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00131">OMX_ErrorInsufficientResources</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00190">OMX_FALSE</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00054">OMX_PortDomainOther</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00105">OMX_StateExecuting</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00191">OMX_TRUE</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferQueue</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferSem</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00326">OMX_COMPONENTTYPE::pComponentPrivate</a>, <a class="el" href="omx__base__port_8h_source.html#l00045">PORT_IS_BUFFER_SUPPLIER</a>, <a class="el" href="omx__base__port_8h_source.html#l00043">PORT_IS_TUNNELED</a>, <a class="el" href="omx__base__port_8h_source.html#l00046">PORT_IS_TUNNELED_N_BUFFER_SUPPLIER</a>, <a class="el" href="queue_8c_source.html#l00103">queue()</a>, <a class="el" href="tsemaphore_8h_source.html#l00041">tsem_t::semval</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::standCompContainer</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::state</a>, <a class="el" href="tsemaphore_8c_source.html#l00097">tsem_down()</a>, <a class="el" href="tsemaphore_8c_source.html#l00121">tsem_reset()</a>, <a class="el" href="tsemaphore_8c_source.html#l00141">tsem_signal()</a>, and <a class="el" href="tsemaphore_8c_source.html#l00110">tsem_up()</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="ac2560c40ad461ba3f6a061c576948d9a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_FreeBuffer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a>&#160;</td>
          <td class="paramname"><em>nPortIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="struct_o_m_x___b_u_f_f_e_r_h_e_a_d_e_r_t_y_p_e.html">OMX_BUFFERHEADERTYPE</a> *&#160;</td>
          <td class="paramname"><em>pBuffer</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the standard function. </p>
<p>It frees the buffer header and in case also the buffer itself, if needed. When all the bufers are done, the variable bIsEmptyOfBuffers is set to OMX_TRUE</p>
<p>It frees the buffer header and in case also the buffer itself, if needed. When all the buffers are done, the variable bIsEmptyOfBuffers is set to OMX_TRUE </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00547">547</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bBufferStateAllocated</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsEmptyOfBuffers</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsFullOfBuffers</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsTransientToDisabled</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00073">OMX_PARAM_PORTDEFINITIONTYPE::bPopulated</a>, <a class="el" href="omx__base__port_8h_source.html#l00074">BUFFER_ALLOCATED</a>, <a class="el" href="omx__base__port_8h_source.html#l00076">BUFFER_ASSIGNED</a>, <a class="el" href="omx__base__port_8h_source.html#l00073">BUFFER_FREE</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::callbackData</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::callbacks</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00054">DEB_LEV_FULL_SEQ</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00043">DEB_LEV_PARAMS</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00530">OMX_CALLBACKTYPE::EventHandler</a>, <a class="el" href="omx__base__port_8h_source.html#l00078">HEADER_ALLOCATED</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00066">OMX_PARAM_PORTDEFINITIONTYPE::nBufferCountActual</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nNumAssignedBuffers</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00224">OMX_ErrorBadPortIndex</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00131">OMX_ErrorInsufficientResources</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00227">OMX_ErrorPortUnpopulated</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00482">OMX_EventError</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00190">OMX_FALSE</a>, <a class="el" href="omx__base__component_8h_source.html#l00095">OMX_TransStateIdleToLoaded</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00191">OMX_TRUE</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pAllocSem</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00402">OMX_BUFFERHEADERTYPE::pBuffer</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00326">OMX_COMPONENTTYPE::pComponentPrivate</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pInternalBufferStorage</a>, <a class="el" href="omx__base__port_8h_source.html#l00046">PORT_IS_TUNNELED_N_BUFFER_SUPPLIER</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::standCompContainer</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::transientState</a>, and <a class="el" href="tsemaphore_8c_source.html#l00110">tsem_up()</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="ac6b1f00a1ac9c6d98a7e237137bbd99f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_FreeTunnelBuffer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a>&#160;</td>
          <td class="paramname"><em>nPortIndex</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Free buffers used in tunnel. </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00741">741</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bBufferStateAllocated</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsEmptyOfBuffers</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsFullOfBuffers</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsTransientToDisabled</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00073">OMX_PARAM_PORTDEFINITIONTYPE::bPopulated</a>, <a class="el" href="omx__base__port_8h_source.html#l00074">BUFFER_ALLOCATED</a>, <a class="el" href="omx__base__port_8h_source.html#l00076">BUFFER_ASSIGNED</a>, <a class="el" href="omx__base__port_8h_source.html#l00073">BUFFER_FREE</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::callbackData</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::callbacks</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00054">DEB_LEV_FULL_SEQ</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00043">DEB_LEV_PARAMS</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00530">OMX_CALLBACKTYPE::EventHandler</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::hTunneledComponent</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00066">OMX_PARAM_PORTDEFINITIONTYPE::nBufferCountActual</a>, <a class="el" href="queue_8h_source.html#l00046">queue_t::nelem</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nNumAssignedBuffers</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nTunneledPort</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00224">OMX_ErrorBadPortIndex</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00212">OMX_ErrorIncorrectStateTransition</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00227">OMX_ErrorPortUnpopulated</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00482">OMX_EventError</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00190">OMX_FALSE</a>, <a class="el" href="_o_m_x___core_8h_source.html#l01064">OMX_FreeBuffer</a>, <a class="el" href="omx__base__component_8h_source.html#l00095">OMX_TransStateIdleToLoaded</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00191">OMX_TRUE</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00402">OMX_BUFFERHEADERTYPE::pBuffer</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferQueue</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferSem</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00326">OMX_COMPONENTTYPE::pComponentPrivate</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pInternalBufferStorage</a>, <a class="el" href="omx__base__port_8h_source.html#l00046">PORT_IS_TUNNELED_N_BUFFER_SUPPLIER</a>, <a class="el" href="tsemaphore_8h_source.html#l00041">tsem_t::semval</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::standCompContainer</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::transientState</a>, <a class="el" href="omx__base__port_8h_source.html#l00033">TUNNEL_USE_BUFFER_RETRY</a>, and <a class="el" href="omx__base__port_8h_source.html#l00034">TUNNEL_USE_BUFFER_RETRY_USLEEP_TIME</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="aadf72263226d5123bf9cd27ab80b2750"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_ReturnBufferFunction </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="struct_o_m_x___b_u_f_f_e_r_h_e_a_d_e_r_t_y_p_e.html">OMX_BUFFERHEADERTYPE</a> *&#160;</td>
          <td class="paramname"><em>pBuffer</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns buffers when processed. </p>
<p>Call appropriate function to return buffers to peer or IL Client</p>
<p>Returns Input/Output Buffer to the IL client or Tunneled Component </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00918">918</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::BufferProcessedCallback</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::callbackData</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00054">DEB_LEV_FULL_SEQ</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00065">OMX_PARAM_PORTDEFINITIONTYPE::eDir</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::hTunneledComponent</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::name</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00441">OMX_BUFFERHEADERTYPE::nInputPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nNumBufferFlushed</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00439">OMX_BUFFERHEADERTYPE::nOutputPortIndex</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nTunneledPort</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00226">OMX_DirInput</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00131">OMX_ErrorInsufficientResources</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferQueue</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferSem</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00326">OMX_COMPONENTTYPE::pComponentPrivate</a>, <a class="el" href="omx__base__port_8h_source.html#l00039">PORT_IS_BEING_FLUSHED</a>, <a class="el" href="omx__base__port_8h_source.html#l00045">PORT_IS_BUFFER_SUPPLIER</a>, <a class="el" href="omx__base__port_8h_source.html#l00043">PORT_IS_TUNNELED</a>, <a class="el" href="omx__base__port_8h_source.html#l00046">PORT_IS_TUNNELED_N_BUFFER_SUPPLIER</a>, <a class="el" href="queue_8c_source.html#l00103">queue()</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::standCompContainer</a>, and <a class="el" href="tsemaphore_8c_source.html#l00110">tsem_up()</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="a4b4bee757868601bdf493a35c7440dfa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_SendBufferFunction </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="struct_o_m_x___b_u_f_f_e_r_h_e_a_d_e_r_t_y_p_e.html">OMX_BUFFERHEADERTYPE</a> *&#160;</td>
          <td class="paramname"><em>pBuffer</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The entry point for sending buffers to the port. </p>
<p>This function can be called by the EmptyThisBuffer or FillThisBuffer. It depends on the nature of the port, that can be an input or output port.</p>
<p>The entry point for sending buffers to the port.</p>
<p>This function can be called by the EmptyThisBuffer or FillThisBuffer. It depends on the nature of the port, that can be an input or output port. </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00818">818</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::bMgmtSem</a>, <a class="el" href="omx__base__component_8c_source.html#l00720">checkHeader()</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00054">DEB_LEV_FULL_SEQ</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00043">DEB_LEV_PARAMS</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00065">OMX_PARAM_PORTDEFINITIONTYPE::eDir</a>, <a class="el" href="omxvolcontroltest_8c_source.html#l00034">err</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::name</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00066">OMX_PARAM_PORTDEFINITIONTYPE::nBufferCountActual</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00441">OMX_BUFFERHEADERTYPE::nInputPortIndex</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00439">OMX_BUFFERHEADERTYPE::nOutputPortIndex</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00226">OMX_DirInput</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00147">OMX_ErrorBadParameter</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00224">OMX_ErrorBadPortIndex</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00215">OMX_ErrorIncorrectStateOperation</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00131">OMX_ErrorInsufficientResources</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00162">OMX_ErrorInvalidState</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00190">OMX_FALSE</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00105">OMX_StateExecuting</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00102">OMX_StateIdle</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00094">OMX_StateInvalid</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00107">OMX_StatePause</a>, <a class="el" href="omx__base__component_8h_source.html#l00092">OMX_TransStateExecutingToIdle</a>, <a class="el" href="omx__base__component_8h_source.html#l00094">OMX_TransStatePauseToIdle</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00191">OMX_TRUE</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00402">OMX_BUFFERHEADERTYPE::pBuffer</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferQueue</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pBufferSem</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00326">OMX_COMPONENTTYPE::pComponentPrivate</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pInternalBufferStorage</a>, <a class="el" href="omx__base__port_8h_source.html#l00040">PORT_IS_BEING_DISABLED</a>, <a class="el" href="omx__base__port_8h_source.html#l00039">PORT_IS_BEING_FLUSHED</a>, <a class="el" href="omx__base__port_8h_source.html#l00045">PORT_IS_BUFFER_SUPPLIER</a>, <a class="el" href="omx__base__port_8h_source.html#l00041">PORT_IS_ENABLED</a>, <a class="el" href="omx__base__port_8h_source.html#l00043">PORT_IS_TUNNELED</a>, <a class="el" href="omx__base__port_8h_source.html#l00046">PORT_IS_TUNNELED_N_BUFFER_SUPPLIER</a>, <a class="el" href="queue_8c_source.html#l00103">queue()</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::standCompContainer</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::state</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::transientState</a>, and <a class="el" href="tsemaphore_8c_source.html#l00110">tsem_up()</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
<a class="anchor" id="ae97c3b85669a4ccca24845b0a4f93132"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_o_m_x___core_8h.html#a4e2923ea92fd56f5bd9783a6dac7629a">OMX_ERRORTYPE</a> base_port_UseBuffer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structomx__base___port_type.html">omx_base_PortType</a> *&#160;</td>
          <td class="paramname"><em>openmaxStandPort</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="struct_o_m_x___b_u_f_f_e_r_h_e_a_d_e_r_t_y_p_e.html">OMX_BUFFERHEADERTYPE</a> **&#160;</td>
          <td class="paramname"><em>ppBufferHdr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a>&#160;</td>
          <td class="paramname"><em>nPortIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a52f5626b11279ed9a6ce8731abc365be">OMX_PTR</a>&#160;</td>
          <td class="paramname"><em>pAppPrivate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a04983f4ca9c7876035dffc578597eae3">OMX_U32</a>&#160;</td>
          <td class="paramname"><em>nSizeBytes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="_o_m_x___types_8h.html#a3ad7d812ff8ffb968c08e4b7bb04becd">OMX_U8</a> *&#160;</td>
          <td class="paramname"><em>pBuffer</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the standard use buffer, it implements a base functionality. </p>
<p>This function can be overriden if the use buffer implicate more complicated operations. The parameters are the same as the standard function, except for the handle of the port instead of the handler of the component When the buffers needed by this port are all assigned or allocated, the variable bIsFullOfBuffers becomes equal to OMX_TRUE</p>
<p>This function can be overriden if the use buffer implicate more complicated operations. The parameters are the same as the standard function, except for the handle of the port instead of the handler of the component. When the buffers needed by this port are all assigned or allocated, the variable bIsFullOfBuffers becomes equal to OMX_TRUE </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00462">462</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</a>.</p>

<p>References <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bBufferStateAllocated</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsEmptyOfBuffers</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsFullOfBuffers</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::bIsTransientToEnabled</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00073">OMX_PARAM_PORTDEFINITIONTYPE::bPopulated</a>, <a class="el" href="omx__base__port_8h_source.html#l00076">BUFFER_ASSIGNED</a>, <a class="el" href="omx__base__port_8h_source.html#l00073">BUFFER_FREE</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00039">DEB_LEV_ERR</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00059">DEB_LEV_FUNCTION_NAME</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00043">DEB_LEV_PARAMS</a>, <a class="el" href="omx__comp__debug__levels_8h_source.html#l00077">DEBUG</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00065">OMX_PARAM_PORTDEFINITIONTYPE::eDir</a>, <a class="el" href="omx__base__port_8h_source.html#l00078">HEADER_ALLOCATED</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00404">OMX_BUFFERHEADERTYPE::nAllocLen</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::name</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00066">OMX_PARAM_PORTDEFINITIONTYPE::nBufferCountActual</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00068">OMX_PARAM_PORTDEFINITIONTYPE::nBufferSize</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00441">OMX_BUFFERHEADERTYPE::nInputPortIndex</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::nNumAssignedBuffers</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00439">OMX_BUFFERHEADERTYPE::nOutputPortIndex</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00064">OMX_PARAM_PORTDEFINITIONTYPE::nPortIndex</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00226">OMX_DirInput</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00224">OMX_ErrorBadPortIndex</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00212">OMX_ErrorIncorrectStateTransition</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00131">OMX_ErrorInsufficientResources</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00128">OMX_ErrorNone</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00190">OMX_FALSE</a>, <a class="el" href="omx__base__component_8h_source.html#l00088">OMX_TransStateLoadedToIdle</a>, <a class="el" href="_o_m_x___types_8h_source.html#l00191">OMX_TRUE</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pAllocSem</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00409">OMX_BUFFERHEADERTYPE::pAppPrivate</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00402">OMX_BUFFERHEADERTYPE::pBuffer</a>, <a class="el" href="_o_m_x___component_8h_source.html#l00326">OMX_COMPONENTTYPE::pComponentPrivate</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::pInternalBufferStorage</a>, <a class="el" href="omx__base__port_8h_source.html#l00046">PORT_IS_TUNNELED_N_BUFFER_SUPPLIER</a>, <a class="el" href="_o_m_x___core_8h_source.html#l00411">OMX_BUFFERHEADERTYPE::pPlatformPrivate</a>, <a class="el" href="omx__base__component_8c_source.html#l00746">setHeader()</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::sPortParam</a>, <a class="el" href="omx__base__port_8h_source.html#l00142">omx_base_PortType::standCompContainer</a>, <a class="el" href="omx__base__component_8h_source.html#l00164">omx_base_component_PrivateType::transientState</a>, and <a class="el" href="tsemaphore_8c_source.html#l00110">tsem_up()</a>.</p>

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<html>
<body>
<hr size="1"><small>Generated for OpenMAX Bellagio rel. 0.9.3 by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small>
<br>
<a href="http://sourceforge.net"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=160680&amp;type=4" width="125" height="37" border="0" alt="SourceForge.net Logo" /></a>
</body>
</html>