Sophie

Sophie

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

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.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="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_8c.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">omx_base_port.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;string.h&gt;</code><br />
<code>#include &lt;unistd.h&gt;</code><br />
<code>#include &lt;<a class="el" href="omxcore_8h_source.html">omxcore.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="_o_m_x___core_8h_source.html">OMX_Core.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="_o_m_x___component_8h_source.html">OMX_Component.h</a>&gt;</code><br />
<code>#include &quot;<a class="el" href="omx__base__component_8h_source.html">omx_base_component.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="omx__base__port_8h_source.html">omx_base_port.h</a>&quot;</code><br />
</div>
<p><a href="omx__base__port_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a6c191934754e5b3e12b6c44fa4308d12"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8c.html#a6c191934754e5b3e12b6c44fa4308d12">DEFAULT_NUMBER_BUFFERS_PER_PORT</a>&#160;&#160;&#160;2</td></tr>
<tr class="separator:a6c191934754e5b3e12b6c44fa4308d12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff6e673af1068a870627a9d1783ae7ac"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="omx__base__port_8c.html#aff6e673af1068a870627a9d1783ae7ac">DEFAULT_MIN_NUMBER_BUFFERS_PER_PORT</a>&#160;&#160;&#160;2</td></tr>
<tr class="separator:aff6e673af1068a870627a9d1783ae7ac"><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_8c.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_8c.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: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_8c.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. This function must be implemented in the derived classes, for the specific processing.  <a href="#a267216c232fc98dd0b2e839f91a86935">More...</a><br /></td></tr>
<tr class="separator:a267216c232fc98dd0b2e839f91a86935"><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_8c.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_8c.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: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_8c.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_8c.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_8c.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: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_8c.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_8c.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>
<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_8c.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: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_8c.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_8c.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>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="aff6e673af1068a870627a9d1783ae7ac"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DEFAULT_MIN_NUMBER_BUFFERS_PER_PORT&#160;&#160;&#160;2</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The default value for the minimum number of needed buffers for each port. </p>

<p>Definition at line <a class="el" href="omx__base__port_8c_source.html#l00038">38</a> of file <a class="el" href="omx__base__port_8c_source.html">omx_base_port.c</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="a6c191934754e5b3e12b6c44fa4308d12"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DEFAULT_NUMBER_BUFFERS_PER_PORT&#160;&#160;&#160;2</td>
        </tr>
      </table>
</div><div class="memdoc">
<p><a class="el" href="omx__base__port_8c.html">src/base/omx_base_port.c</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 USAThe default value for the number of needed buffers for each port. </p>

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

<p>Referenced by <a class="el" href="omx__base__port_8c_source.html#l00055">base_port_Constructor()</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 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">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. 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 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>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>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>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>