Sophie

Sophie

distrib > PLD > ac > amd64 > media > dist > by-pkgid > 4cd3fba015b84aa8198c12116a5f41ed > files > 67

ccrtp-devel-1.3.6-1.amd64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ccRTP: OutgoingDataQueue Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a> | <a class="qindex" href="examples.html">Examples</a></div>
<h1>OutgoingDataQueue Class Reference<br>
<small>
[<a class="el" href="group__oqueue.html">Generic RTP output queues.</a>,&nbsp;<a class="el" href="group__oqueue.html">Generic RTP output queues.</a>]</small>
</h1><!-- doxytag: class="OutgoingDataQueue" --><!-- doxytag: inherits="OutgoingDataQueueBase,DestinationListHandler" -->A generic outgoing RTP data queue supporting multiple destinations.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="oqueue_8h-source.html">oqueue.h</a>&gt;</code>
<p>
<p>Inheritance diagram for OutgoingDataQueue:
<p><center><img src="class_outgoing_data_queue.png" usemap="#OutgoingDataQueue_map" border="0" alt=""></center>
<map name="OutgoingDataQueue_map">
<area href="class_outgoing_data_queue_base.html" alt="OutgoingDataQueueBase" shape="rect" coords="0,56,155,80">
<area href="class_destination_list_handler.html" alt="DestinationListHandler" shape="rect" coords="165,56,320,80">
<area href="class_r_t_p_queue_base.html" alt="RTPQueueBase" shape="rect" coords="0,0,155,24">
<area href="class_r_t_p_data_queue.html" alt="RTPDataQueue" shape="rect" coords="82,168,237,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_a_v_p_queue.html" alt="AVPQueue" shape="rect" coords="0,280,155,304">
</map>
<a href="class_outgoing_data_queue-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&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a0">addDestination</a> (const InetHostAddress &amp;ia, tpport_t dataPort=<a class="el" href="base_8h.html#a4">DefaultRTPDataPort</a>, tpport_t controlPort=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a1">addDestination</a> (const InetMcastAddress &amp;ia, tpport_t dataPort=<a class="el" href="base_8h.html#a4">DefaultRTPDataPort</a>, tpport_t controlPort=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a2">forgetDestination</a> (const InetHostAddress &amp;ia, tpport_t dataPort=<a class="el" href="base_8h.html#a4">DefaultRTPDataPort</a>, tpport_t controlPort=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a3">forgetDestination</a> (const InetMcastAddress &amp;ia, tpport_t dataPort=<a class="el" href="base_8h.html#a4">DefaultRTPDataPort</a>, tpport_t controlPort=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a4">addContributor</a> (uint32 csrc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add csrc as the CSRC identifier of a new contributor.  <a href="#a4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a5">removeContributor</a> (uint32 csrc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove CSRC from the list of contributors.  <a href="#a5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a6">isSending</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine if outgoing packets are waiting to send.  <a href="#a6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a7">putData</a> (uint32 stamp, const unsigned char *data=NULL, size_t len=0)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is used to create a data packet in the send queue.  <a href="#a7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a8">setPadding</a> (uint8 paddinglen)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set padding.  <a href="#a8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a9">setMark</a> (bool mark)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set marker bit for the packet in which the next data provided will be send.  <a href="#a9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a10">getMark</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get wheter the mark bit will be set in the next packet.  <a href="#a10"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a11">setPartial</a> (uint32 timestamp, unsigned char *data, size_t offset, size_t max)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set partial data for an already queued packet.  <a href="#a11"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="base_8h.html#a2">microtimeout_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a12">getDefaultSchedulingTimeout</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a13">setSchedulingTimeout</a> (<a class="el" href="base_8h.html#a2">microtimeout_t</a> to)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the default scheduling timeout to use when no data packets are waiting to be sent.  <a href="#a13"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="base_8h.html#a2">microtimeout_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a14">getDefaultExpireTimeout</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a15">setExpireTimeout</a> (<a class="el" href="base_8h.html#a2">microtimeout_t</a> to)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the "expired" timer for expiring packets pending in the send queue which have gone unsent and are already "too late" to be sent now.  <a href="#a15"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="base_8h.html#a2">microtimeout_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a16">getExpireTimeout</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">uint32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a17">getSendPacketCount</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the total number of packets sent so far.  <a href="#a17"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">uint32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#a18">getSendOctetCount</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the total number of octets (payload only) sent so far.  <a href="#a18"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#b0">OutgoingDataQueue</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#b1">~OutgoingDataQueue</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="base_8h.html#a2">microtimeout_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#b2">getSchedulingTimeout</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This computes the timeout period for scheduling transmission of the next packet at the "head" of the send buffer.  <a href="#b2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#b3">dispatchDataPacket</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function is used by the service thread to process the next outgoing packet pending in the sending queue.  <a href="#b3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#b4">setInitialTimestamp</a> (uint32 ts)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">uint32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#b5">getInitialTimestamp</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#b6">purgeOutgoingQueue</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_outgoing_data_queue.html#b7">setControlPeer</a> (const InetAddress &amp;host, tpport_t port)=0</td></tr>

<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_outgoing_data_queue_1_1_outgoing_r_t_p_pkt_link.html">OutgoingRTPPktLink</a></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A generic outgoing RTP data queue supporting multiple destinations. 
<p>
<dl compact><dt><b>Author:</b></dt><dd>Federico Montesino Pouzols &lt;<a href="mailto:fedemp@altern.org">fedemp@altern.org</a>&gt;</dd></dl>

<p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="b0"></a><!-- doxytag: member="OutgoingDataQueue::OutgoingDataQueue" ref="b0" args="()" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">OutgoingDataQueue::OutgoingDataQueue           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [protected]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="b1"></a><!-- doxytag: member="OutgoingDataQueue::~OutgoingDataQueue" ref="b1" args="()" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">virtual OutgoingDataQueue::~OutgoingDataQueue           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="a4"></a><!-- doxytag: member="OutgoingDataQueue::addContributor" ref="a4" args="(uint32 csrc)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">void OutgoingDataQueue::addContributor           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">uint32&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>csrc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Add csrc as the CSRC identifier of a new contributor. 
<p>
This method adds the CSRC identifier to a list of contributors that will be inserted in every packet enqueued from now on.    </td>
  </tr>
</table>
<a class="anchor" name="a1"></a><!-- doxytag: member="OutgoingDataQueue::addDestination" ref="a1" args="(const InetMcastAddress &amp;ia, tpport_t dataPort=DefaultRTPDataPort, tpport_t controlPort=0)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">bool OutgoingDataQueue::addDestination           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const InetMcastAddress &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>ia</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>tpport_t&nbsp;</td>
          <td class="mdname" nowrap> <em>dataPort</em> = <code><a class="el" href="base_8h.html#a4">DefaultRTPDataPort</a></code>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>tpport_t&nbsp;</td>
          <td class="mdname" nowrap> <em>controlPort</em> = <code>0</code></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a0"></a><!-- doxytag: member="OutgoingDataQueue::addDestination" ref="a0" args="(const InetHostAddress &amp;ia, tpport_t dataPort=DefaultRTPDataPort, tpport_t controlPort=0)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">bool OutgoingDataQueue::addDestination           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const InetHostAddress &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>ia</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>tpport_t&nbsp;</td>
          <td class="mdname" nowrap> <em>dataPort</em> = <code><a class="el" href="base_8h.html#a4">DefaultRTPDataPort</a></code>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>tpport_t&nbsp;</td>
          <td class="mdname" nowrap> <em>controlPort</em> = <code>0</code></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="b3"></a><!-- doxytag: member="OutgoingDataQueue::dispatchDataPacket" ref="b3" args="()" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">size_t OutgoingDataQueue::dispatchDataPacket           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [protected]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
This function is used by the service thread to process the next outgoing packet pending in the sending queue. 
<p>
<dl compact><dt><b>Returns:</b></dt><dd>number of bytes sent. 0 if silent, &lt;0 if error.</dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="a3"></a><!-- doxytag: member="OutgoingDataQueue::forgetDestination" ref="a3" args="(const InetMcastAddress &amp;ia, tpport_t dataPort=DefaultRTPDataPort, tpport_t controlPort=0)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">bool OutgoingDataQueue::forgetDestination           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const InetMcastAddress &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>ia</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>tpport_t&nbsp;</td>
          <td class="mdname" nowrap> <em>dataPort</em> = <code><a class="el" href="base_8h.html#a4">DefaultRTPDataPort</a></code>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>tpport_t&nbsp;</td>
          <td class="mdname" nowrap> <em>controlPort</em> = <code>0</code></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a2"></a><!-- doxytag: member="OutgoingDataQueue::forgetDestination" ref="a2" args="(const InetHostAddress &amp;ia, tpport_t dataPort=DefaultRTPDataPort, tpport_t controlPort=0)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">bool OutgoingDataQueue::forgetDestination           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const InetHostAddress &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>ia</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>tpport_t&nbsp;</td>
          <td class="mdname" nowrap> <em>dataPort</em> = <code><a class="el" href="base_8h.html#a4">DefaultRTPDataPort</a></code>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>tpport_t&nbsp;</td>
          <td class="mdname" nowrap> <em>controlPort</em> = <code>0</code></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a14"></a><!-- doxytag: member="OutgoingDataQueue::getDefaultExpireTimeout" ref="a14" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"><a class="el" href="base_8h.html#a2">microtimeout_t</a> OutgoingDataQueue::getDefaultExpireTimeout           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a12"></a><!-- doxytag: member="OutgoingDataQueue::getDefaultSchedulingTimeout" ref="a12" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"><a class="el" href="base_8h.html#a2">microtimeout_t</a> OutgoingDataQueue::getDefaultSchedulingTimeout           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a16"></a><!-- doxytag: member="OutgoingDataQueue::getExpireTimeout" ref="a16" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"><a class="el" href="base_8h.html#a2">microtimeout_t</a> OutgoingDataQueue::getExpireTimeout           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="b5"></a><!-- doxytag: member="OutgoingDataQueue::getInitialTimestamp" ref="b5" args="()" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">uint32 OutgoingDataQueue::getInitialTimestamp           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [inline, protected]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a10"></a><!-- doxytag: member="OutgoingDataQueue::getMark" ref="a10" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">bool OutgoingDataQueue::getMark           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get wheter the mark bit will be set in the next packet. 
<p>
    </td>
  </tr>
</table>
<a class="anchor" name="b2"></a><!-- doxytag: member="OutgoingDataQueue::getSchedulingTimeout" ref="b2" args="()" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"><a class="el" href="base_8h.html#a2">microtimeout_t</a> OutgoingDataQueue::getSchedulingTimeout           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [protected]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
This computes the timeout period for scheduling transmission of the next packet at the "head" of the send buffer. 
<p>
If no packets are waiting, a default timeout is used. This actually forms the "isPending()" timeout of the rtp receiver in the service thread.<p>
<dl compact><dt><b>Returns:</b></dt><dd>timeout until next packet is scheduled to send.</dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="a18"></a><!-- doxytag: member="OutgoingDataQueue::getSendOctetCount" ref="a18" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">uint32 OutgoingDataQueue::getSendOctetCount           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the total number of octets (payload only) sent so far. 
<p>
<dl compact><dt><b>Returns:</b></dt><dd>total number of payload octets sent in RTP packets.</dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="a17"></a><!-- doxytag: member="OutgoingDataQueue::getSendPacketCount" ref="a17" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">uint32 OutgoingDataQueue::getSendPacketCount           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the total number of packets sent so far. 
<p>
<dl compact><dt><b>Returns:</b></dt><dd>total number of packets sent</dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="a6"></a><!-- doxytag: member="OutgoingDataQueue::isSending" ref="a6" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">bool OutgoingDataQueue::isSending           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Determine if outgoing packets are waiting to send. 
<p>
<dl compact><dt><b>Returns:</b></dt><dd>true if there are packets waiting to be send.</dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="b6"></a><!-- doxytag: member="OutgoingDataQueue::purgeOutgoingQueue" ref="b6" args="()" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">void OutgoingDataQueue::purgeOutgoingQueue           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [protected]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a7"></a><!-- doxytag: member="OutgoingDataQueue::putData" ref="a7" args="(uint32 stamp, const unsigned char *data=NULL, size_t len=0)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">void OutgoingDataQueue::putData           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">uint32&nbsp;</td>
          <td class="mdname" nowrap> <em>stamp</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const unsigned char *&nbsp;</td>
          <td class="mdname" nowrap> <em>data</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap> <em>len</em> = <code>0</code></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
This is used to create a data packet in the send queue. 
<p>
Sometimes a "NULL" or empty packet will be used instead, and these are known as "silent" packets. "Silent" packets are used simply to "push" the scheduler along more accurately by giving the appearence that a next packet is waiting to be sent and to provide a valid timestamp for that packet.<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>stamp</em>&nbsp;</td><td>Timestamp for expected send time of packet. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>Value or NULL if special "silent" packet. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>len</em>&nbsp;</td><td>May be 0 to indicate a default by payload type.</td></tr>
  </table>
</dl>
    </td>
  </tr>
</table>
<a class="anchor" name="a5"></a><!-- doxytag: member="OutgoingDataQueue::removeContributor" ref="a5" args="(uint32 csrc)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">bool OutgoingDataQueue::removeContributor           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">uint32&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>csrc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Remove CSRC from the list of contributors. 
<p>
    </td>
  </tr>
</table>
<a class="anchor" name="b7"></a><!-- doxytag: member="OutgoingDataQueue::setControlPeer" ref="b7" args="(const InetAddress &amp;host, tpport_t port)=0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">virtual void OutgoingDataQueue::setControlPeer           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const InetAddress &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>host</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>tpport_t&nbsp;</td>
          <td class="mdname" nowrap> <em>port</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [protected, pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>

<p>
Implemented in <a class="el" href="class_r_t_p_duplex.html#b4">RTPDuplex</a>.    </td>
  </tr>
</table>
<a class="anchor" name="a15"></a><!-- doxytag: member="OutgoingDataQueue::setExpireTimeout" ref="a15" args="(microtimeout_t to)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">void OutgoingDataQueue::setExpireTimeout           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="base_8h.html#a2">microtimeout_t</a>&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>to</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the "expired" timer for expiring packets pending in the send queue which have gone unsent and are already "too late" to be sent now. 
<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>to</em>&nbsp;</td><td>timeout to expire unsent packets in milliseconds.</td></tr>
  </table>
</dl>
    </td>
  </tr>
</table>
<a class="anchor" name="b4"></a><!-- doxytag: member="OutgoingDataQueue::setInitialTimestamp" ref="b4" args="(uint32 ts)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">void OutgoingDataQueue::setInitialTimestamp           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">uint32&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>ts</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [inline, protected]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a9"></a><!-- doxytag: member="OutgoingDataQueue::setMark" ref="a9" args="(bool mark)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">void OutgoingDataQueue::setMark           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">bool&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>mark</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set marker bit for the packet in which the next data provided will be send. 
<p>
When transmitting audio, should be set for the first packet of a talk spurt. When transmitting video, should be set for the last packet for a video frame.<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>mark</em>&nbsp;</td><td>Marker bit value for next packet.</td></tr>
  </table>
</dl>
    </td>
  </tr>
</table>
<a class="anchor" name="a8"></a><!-- doxytag: member="OutgoingDataQueue::setPadding" ref="a8" args="(uint8 paddinglen)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">void OutgoingDataQueue::setPadding           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">uint8&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>paddinglen</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set padding. 
<p>
All outgoing packets will be transparently padded to a multiple of paddinglen.<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>paddinglen</em>&nbsp;</td><td>pad packets to a length multiple of paddinglen.</td></tr>
  </table>
</dl>
    </td>
  </tr>
</table>
<a class="anchor" name="a11"></a><!-- doxytag: member="OutgoingDataQueue::setPartial" ref="a11" args="(uint32 timestamp, unsigned char *data, size_t offset, size_t max)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">size_t OutgoingDataQueue::setPartial           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">uint32&nbsp;</td>
          <td class="mdname" nowrap> <em>timestamp</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>unsigned char *&nbsp;</td>
          <td class="mdname" nowrap> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap> <em>offset</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap> <em>max</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set partial data for an already queued packet. 
<p>
This is often used for multichannel data.<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>timestamp</em>&nbsp;</td><td>Timestamp of packet. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>Buffer to copy from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>Offset to copy from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>max</em>&nbsp;</td><td>Maximum data size. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>Number of packet data bytes set.</dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="a13"></a><!-- doxytag: member="OutgoingDataQueue::setSchedulingTimeout" ref="a13" args="(microtimeout_t to)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">void OutgoingDataQueue::setSchedulingTimeout           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="base_8h.html#a2">microtimeout_t</a>&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>to</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the default scheduling timeout to use when no data packets are waiting to be sent. 
<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>to</em>&nbsp;</td><td>timeout in milliseconds.</td></tr>
  </table>
</dl>
    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="oqueue_8h-source.html">oqueue.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Fri Dec 9 22:32:04 2005 for ccRTP by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>