<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>ccRTP: RTPQueueBase Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.9 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> </div> <div class="contents"> <h1>RTPQueueBase Class Reference<br> <small> [<a class="el" href="group__queuebase.html">Base classes for RTP queues.</a>]</small> </h1><!-- doxytag: class="RTPQueueBase" -->A virtual base class for RTP queue hierarchies. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="queuebase_8h_source.html">queuebase.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for RTPQueueBase:</div> <div class="dynsection"> <p><center><img src="class_r_t_p_queue_base.png" usemap="#RTPQueueBase_map" border="0" alt=""></center> <map name="RTPQueueBase_map"> <area href="class_incoming_data_queue_base.html" alt="IncomingDataQueueBase" shape="rect" coords="82,56,237,80"> <area href="class_outgoing_data_queue_base.html" alt="OutgoingDataQueueBase" shape="rect" coords="412,56,567,80"> <area href="class_incoming_data_queue.html" alt="IncomingDataQueue" shape="rect" coords="82,112,237,136"> <area href="class_outgoing_data_queue.html" alt="OutgoingDataQueue" shape="rect" coords="412,112,567,136"> <area href="class_r_t_p_data_queue.html" alt="RTPDataQueue" shape="rect" coords="82,168,237,192"> <area href="class_r_t_p_data_queue.html" alt="RTPDataQueue" shape="rect" coords="412,168,567,192"> <area href="class_queue_r_t_c_p_manager.html" alt="QueueRTCPManager" shape="rect" coords="0,224,155,248"> <area href="class_r_t_p_duplex.html" alt="RTPDuplex" shape="rect" coords="165,224,320,248"> <area href="class_queue_r_t_c_p_manager.html" alt="QueueRTCPManager" shape="rect" coords="330,224,485,248"> <area href="class_r_t_p_duplex.html" alt="RTPDuplex" shape="rect" coords="495,224,650,248"> <area href="class_a_v_p_queue.html" alt="AVPQueue" shape="rect" coords="0,280,155,304"> <area href="class_a_v_p_queue.html" alt="AVPQueue" shape="rect" coords="330,280,485,304"> </map> </div> <p> <a href="class_r_t_p_queue_base-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#6601346e22925ebc740bc96c0b167375">setPayloadFormat</a> (const <a class="el" href="class_payload_format.html">PayloadFormat</a> &pf)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the payload format in use, for timing and payload type identification purposes. <a href="#6601346e22925ebc740bc96c0b167375"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">uint32 </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#ef7ace1ffb0ca205726c3937d3b7ee16">getLocalSSRC</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">uint32 </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#f05851c002199e685185869b62549388">getCurrentRTPClockRate</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the clock rate in RTP clock units (for instance, 8000 units per second for PCMU, or 90000 units per second for MP2T). <a href="#f05851c002199e685185869b62549388"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__payload.html#g0eee230c7ab57e31bb4e438a72354993">PayloadType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#6783983e093cdfc015477454f75583b8">getCurrentPayloadType</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">timeval </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#6a3ac1bdc1f35594d86ce48f6812be8a">getInitialTime</a> () const </td></tr> <tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#48b662efe4db3d6c3db2952b892ffc1c">RTPQueueBase</a> (uint32 *ssrc=NULL)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#97b55f4b3d364ab8e34c928c4bf8bde5">setLocalSSRC</a> (uint32 ssrc)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">uint32 </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#eeb44d8c69360d00123fcd78d39f3502">getLocalSSRCNetwork</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#e44faa05b189e5c1ce33678a21a59119">~RTPQueueBase</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#dff15944ba35bc31b1b05347d25fda80">dispatchBYE</a> (const std::string &)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A plugin point for posting of BYE messages. <a href="#dff15944ba35bc31b1b05347d25fda80"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_queue_base.html#d05d8b02c9a90d36401262bf309e7f8e">renewLocalSSRC</a> ()</td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> A virtual base class for RTP queue hierarchies. <p> <dl class="author" compact><dt><b>Author:</b></dt><dd>Federico Montesino Pouzols <<a href="mailto:fedemp@altern.org">fedemp@altern.org</a>> </dd></dl> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="48b662efe4db3d6c3db2952b892ffc1c"></a><!-- doxytag: member="RTPQueueBase::RTPQueueBase" ref="48b662efe4db3d6c3db2952b892ffc1c" args="(uint32 *ssrc=NULL)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">RTPQueueBase::RTPQueueBase </td> <td>(</td> <td class="paramtype">uint32 * </td> <td class="paramname"> <em>ssrc</em> = <code>NULL</code> </td> <td> ) </td> <td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>ssrc</em> </td><td>If not null, the local SSRC identifier for this session. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="e44faa05b189e5c1ce33678a21a59119"></a><!-- doxytag: member="RTPQueueBase::~RTPQueueBase" ref="e44faa05b189e5c1ce33678a21a59119" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual RTPQueueBase::~RTPQueueBase </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline, protected, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="dff15944ba35bc31b1b05347d25fda80"></a><!-- doxytag: member="RTPQueueBase::dispatchBYE" ref="dff15944ba35bc31b1b05347d25fda80" args="(const std::string &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual size_t RTPQueueBase::dispatchBYE </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline, protected, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> A plugin point for posting of BYE messages. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>-</em> </td><td>reason to leave the RTP session. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>number of octets sent. </dd></dl> <p>Reimplemented in <a class="el" href="class_queue_r_t_c_p_manager.html#982ad2a7a514a6dc4689944d8ce254ef">QueueRTCPManager</a>.</p> </div> </div><p> <a class="anchor" name="6783983e093cdfc015477454f75583b8"></a><!-- doxytag: member="RTPQueueBase::getCurrentPayloadType" ref="6783983e093cdfc015477454f75583b8" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__payload.html#g0eee230c7ab57e31bb4e438a72354993">PayloadType</a> RTPQueueBase::getCurrentPayloadType </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="f05851c002199e685185869b62549388"></a><!-- doxytag: member="RTPQueueBase::getCurrentRTPClockRate" ref="f05851c002199e685185869b62549388" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint32 RTPQueueBase::getCurrentRTPClockRate </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the clock rate in RTP clock units (for instance, 8000 units per second for PCMU, or 90000 units per second for MP2T). <p> This value depends on what payload format has been selected using <a class="el" href="class_r_t_p_queue_base.html#6601346e22925ebc740bc96c0b167375" title="Set the payload format in use, for timing and payload type identification purposes...">setPayloadFormat()</a>.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>clock rate in RTP clock units. </dd></dl> </div> </div><p> <a class="anchor" name="6a3ac1bdc1f35594d86ce48f6812be8a"></a><!-- doxytag: member="RTPQueueBase::getInitialTime" ref="6a3ac1bdc1f35594d86ce48f6812be8a" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">timeval RTPQueueBase::getInitialTime </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="ef7ace1ffb0ca205726c3937d3b7ee16"></a><!-- doxytag: member="RTPQueueBase::getLocalSSRC" ref="ef7ace1ffb0ca205726c3937d3b7ee16" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint32 RTPQueueBase::getLocalSSRC </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="eeb44d8c69360d00123fcd78d39f3502"></a><!-- doxytag: member="RTPQueueBase::getLocalSSRCNetwork" ref="eeb44d8c69360d00123fcd78d39f3502" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint32 RTPQueueBase::getLocalSSRCNetwork </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline, protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="d05d8b02c9a90d36401262bf309e7f8e"></a><!-- doxytag: member="RTPQueueBase::renewLocalSSRC" ref="d05d8b02c9a90d36401262bf309e7f8e" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void RTPQueueBase::renewLocalSSRC </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline, protected, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Reimplemented in <a class="el" href="class_r_t_p_data_queue.html#3cda7f313b23c9e00df8e54ed091e6a7">RTPDataQueue</a>, and <a class="el" href="class_incoming_data_queue.html#7a8b5c6c0e3c934cece8e909a499efd6">IncomingDataQueue</a>.</p> </div> </div><p> <a class="anchor" name="97b55f4b3d364ab8e34c928c4bf8bde5"></a><!-- doxytag: member="RTPQueueBase::setLocalSSRC" ref="97b55f4b3d364ab8e34c928c4bf8bde5" args="(uint32 ssrc)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void RTPQueueBase::setLocalSSRC </td> <td>(</td> <td class="paramtype">uint32 </td> <td class="paramname"> <em>ssrc</em> </td> <td> ) </td> <td><code> [inline, protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="6601346e22925ebc740bc96c0b167375"></a><!-- doxytag: member="RTPQueueBase::setPayloadFormat" ref="6601346e22925ebc740bc96c0b167375" args="(const PayloadFormat &pf)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool RTPQueueBase::setPayloadFormat </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_payload_format.html">PayloadFormat</a> & </td> <td class="paramname"> <em>pf</em> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the payload format in use, for timing and payload type identification purposes. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>pf</em> </td><td>payload format to use from now on. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>whether the payload format has been successfully set. </dd></dl> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="queuebase_8h_source.html">queuebase.h</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Fri Jul 24 21:42:26 2009 for ccRTP by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address> </body> </html>