Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 7c0c66d6521a2c8efa0ef6bf03291d7f > files > 216

jrtplib-devel-3.7.1-7.fc12.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>jrtplib: RTPTransmitter Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="jrtplib.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&nbsp;Page</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="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>RTPTransmitter Class Reference</h1><!-- doxytag: class="RTPTransmitter" --><!-- doxytag: inherits="RTPMemoryObject" -->Abstract class from which actual transmission components should be derived.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="rtptransmitter_8h_source.html">rtptransmitter.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for RTPTransmitter:</div>
<div class="dynsection">
<p><center><img src="classRTPTransmitter__inherit__graph.png" border="0" usemap="#RTPTransmitter__inherit__map" alt="Inheritance graph"></center>
<map name="RTPTransmitter__inherit__map">
<area shape="rect" href="classRTPUDPv4Transmitter.html" title="An UDP over IPv4 transmission component." alt="" coords="5,84,163,111"><area shape="rect" href="classRTPUDPv6Transmitter.html" title="An UDP over IPv6 transmitter." alt="" coords="187,84,344,111"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classRTPTransmitter-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 Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#00529bcf331e3d3dc57c4ebb476f1fd2">TransmissionProtocol</a> { <a class="el" href="classRTPTransmitter.html#00529bcf331e3d3dc57c4ebb476f1fd2430dce496268bd29e79f32fd91d576ff">IPv4UDPProto</a>, 
<a class="el" href="classRTPTransmitter.html#00529bcf331e3d3dc57c4ebb476f1fd2842860772368b19de0c1de091df76f9f">IPv6UDPProto</a>, 
<a class="el" href="classRTPTransmitter.html#00529bcf331e3d3dc57c4ebb476f1fd2f45e5ade219d16a0b8697d44c59eca4e">UserDefinedProto</a>
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used to identify a specific transmitter.  <a href="classRTPTransmitter.html#00529bcf331e3d3dc57c4ebb476f1fd2">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa6386">ReceiveMode</a> { <a class="el" href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa638632b43c3c1b447b9f5ad2ab8405379eef">AcceptAll</a>, 
<a class="el" href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa6386c91e1201cb9620b2db7bfd0ecbd5abb3">AcceptSome</a>, 
<a class="el" href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa638630e323318ddb3597a8d58f0a31b0fdbb">IgnoreSome</a>
 }</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Three kind of receive modes can be specified.  <a href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa6386">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#8c51729221ae8a27cd327598a5cff7a1">Init</a> (bool threadsafe)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function must be called before the transmission component can be used.  <a href="#8c51729221ae8a27cd327598a5cff7a1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#32e7024c43447887422009e5d7ae928d">Create</a> (size_t maxpacksize, const <a class="el" href="classRTPTransmissionParams.html">RTPTransmissionParams</a> *transparams)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Prepares the component to be used.  <a href="#32e7024c43447887422009e5d7ae928d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#b1b7a3f9ba045e4badcda10a9c274ccd">Destroy</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">By calling this function, buffers are cleared and the component cannot be used anymore.  <a href="#b1b7a3f9ba045e4badcda10a9c274ccd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classRTPTransmissionInfo.html">RTPTransmissionInfo</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#c6e8e09ca732f76f4b7a531e592700e4">GetTransmissionInfo</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns additional information about the transmitter.  <a href="#c6e8e09ca732f76f4b7a531e592700e4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#09e113ec309ffd7b28b0ef531355baac">GetLocalHostName</a> (uint8_t *buffer, size_t *bufferlength)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Looks up the local host name.  <a href="#09e113ec309ffd7b28b0ef531355baac"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#303b9ce5733c8279228b2dcac248f013">ComesFromThisTransmitter</a> (const <a class="el" href="classRTPAddress.html">RTPAddress</a> *addr)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns <code>true</code> if the address specified by <code>addr</code> is one of the addresses of the transmitter.  <a href="#303b9ce5733c8279228b2dcac248f013"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#d96879b560b05db868a4e66afff5712c">GetHeaderOverhead</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the amount of bytes that will be added to the RTP packet by the underlying layers (excluding the link layer).  <a href="#d96879b560b05db868a4e66afff5712c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#72963cd613bf7f54ce54811cd6f41e1d">Poll</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks for incoming data and stores it.  <a href="#72963cd613bf7f54ce54811cd6f41e1d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#295b8b83135cbefa9d93c28afe86fcd0">WaitForIncomingData</a> (const <a class="el" href="classRTPTime.html">RTPTime</a> &amp;delay, bool *dataavailable=0)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Waits until incoming data is detected.  <a href="#295b8b83135cbefa9d93c28afe86fcd0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#4e32264c5c12c5a7b05bce28baa430f6">AbortWait</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">If the previous function has been called, this one aborts the waiting.  <a href="#4e32264c5c12c5a7b05bce28baa430f6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#4a9300acce9b60cf5012a91167465c81">SendRTPData</a> (const void *data, size_t len)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send a packet with length <code>len</code> containing <code>data</code> to all RTP addresses of the current destination list.  <a href="#4a9300acce9b60cf5012a91167465c81"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#1a4b449c3aa5a6f9073e777d3a916dd4">SendRTCPData</a> (const void *data, size_t len)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send a packet with length <code>len</code> containing <code>data</code> to all RTCP addresses of the current destination list.  <a href="#1a4b449c3aa5a6f9073e777d3a916dd4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#5709df859a09e775fbe0cb65d8e93463">AddDestination</a> (const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;addr)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds the address specified by <code>addr</code> to the list of destinations.  <a href="#5709df859a09e775fbe0cb65d8e93463"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#649983247fd0de0c49c9bad132078804">DeleteDestination</a> (const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;addr)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes the address specified by <code>addr</code> from the list of destinations.  <a href="#649983247fd0de0c49c9bad132078804"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#c547678e9164628a5f0a6897d2340704">ClearDestinations</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clears the list of destinations.  <a href="#c547678e9164628a5f0a6897d2340704"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#b35f318dfb9e02813ed45bb8550fee6a">SupportsMulticasting</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns <code>true</code> if the transmission component supports multicasting.  <a href="#b35f318dfb9e02813ed45bb8550fee6a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#d817b4f899689f87da9767854d29e4cb">JoinMulticastGroup</a> (const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;addr)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Joins the multicast group specified by <code>addr</code>.  <a href="#d817b4f899689f87da9767854d29e4cb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#dc3c7c9622ae8b5df6df624c9ab3cd16">LeaveMulticastGroup</a> (const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;addr)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Leaves the multicast group specified by <code>addr</code>.  <a href="#dc3c7c9622ae8b5df6df624c9ab3cd16"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#00d6f1346124aec45cef57a67f041234">LeaveAllMulticastGroups</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Leaves all the multicast groups that have been joined.  <a href="#00d6f1346124aec45cef57a67f041234"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#fd33f5ca2046f0d08a21ff6e5fa6c99e">SetReceiveMode</a> (<a class="el" href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa6386">RTPTransmitter::ReceiveMode</a> m)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the receive mode.  <a href="#fd33f5ca2046f0d08a21ff6e5fa6c99e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#53fca7150678471685f6bc046c6f0ca2">AddToIgnoreList</a> (const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;addr)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds <code>addr</code> to the list of addresses to ignore.  <a href="#53fca7150678471685f6bc046c6f0ca2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#62b670aed033a21338dff518e9c757ce">DeleteFromIgnoreList</a> (const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;addr)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes <code>addr</code> from the list of addresses to accept.  <a href="#62b670aed033a21338dff518e9c757ce"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#3862dc2a8b8571bb24b800d81f30299d">ClearIgnoreList</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clears the list of addresses to ignore.  <a href="#3862dc2a8b8571bb24b800d81f30299d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#96fda0a5e6b7484d295bb0b291720eb2">AddToAcceptList</a> (const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;addr)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds <code>addr</code> to the list of addresses to accept.  <a href="#96fda0a5e6b7484d295bb0b291720eb2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#72a8ca0bf9bbb12325d882a77ec4dcc8">DeleteFromAcceptList</a> (const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;addr)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes <code>addr</code> from the list of addresses to accept.  <a href="#72a8ca0bf9bbb12325d882a77ec4dcc8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#d1cd475c302925e145966290e286a69e">ClearAcceptList</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clears the list of addresses to accept.  <a href="#d1cd475c302925e145966290e286a69e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#81cad761ff649079f7d6285183f31455">SetMaximumPacketSize</a> (size_t s)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the maximum packet size which the transmitter should allow to <code>s</code>.  <a href="#81cad761ff649079f7d6285183f31455"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#cb8f396cfd48d52134b7b090e6963c32">NewDataAvailable</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns <code>true</code> if packets can be obtained using the GetNextPacket member function.  <a href="#cb8f396cfd48d52134b7b090e6963c32"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classRTPRawPacket.html">RTPRawPacket</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRTPTransmitter.html#12ae1a197dd8b59d99e16d39e5159beb">GetNextPacket</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the raw data of a received RTP packet (received during the Poll function) in an <a class="el" href="classRTPRawPacket.html" title="This class is used by the transmission component to store the incoming RTP and RTCP...">RTPRawPacket</a> instance.  <a href="#12ae1a197dd8b59d99e16d39e5159beb"></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="classRTPTransmitter.html#4ffe998d7fa72d691fbedf685fe1997b">RTPTransmitter</a> (<a class="el" href="classRTPMemoryManager.html">RTPMemoryManager</a> *mgr)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor in which you can specify a memory manager to use.  <a href="#4ffe998d7fa72d691fbedf685fe1997b"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Abstract class from which actual transmission components should be derived. The abstract class <a class="el" href="classRTPTransmitter.html" title="Abstract class from which actual transmission components should be derived.">RTPTransmitter</a> specifies the interface for actual transmission components. Currently, two implementations exist: an UDP over IPv4 transmitter and an UDP over IPv6 transmitter. <hr><h2>Member Enumeration Documentation</h2>
<a class="anchor" name="bae77e9adf52db77f5ea29757dfa6386"></a><!-- doxytag: member="RTPTransmitter::ReceiveMode" ref="bae77e9adf52db77f5ea29757dfa6386" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa6386">RTPTransmitter::ReceiveMode</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="bae77e9adf52db77f5ea29757dfa638632b43c3c1b447b9f5ad2ab8405379eef"></a><!-- doxytag: member="AcceptAll" ref="bae77e9adf52db77f5ea29757dfa638632b43c3c1b447b9f5ad2ab8405379eef" args="" -->AcceptAll</em>&nbsp;</td><td>
All incoming data is accepted, no matter where it originated from. 
<p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="bae77e9adf52db77f5ea29757dfa6386c91e1201cb9620b2db7bfd0ecbd5abb3"></a><!-- doxytag: member="AcceptSome" ref="bae77e9adf52db77f5ea29757dfa6386c91e1201cb9620b2db7bfd0ecbd5abb3" args="" -->AcceptSome</em>&nbsp;</td><td>
Only data coming from specific sources will be accepted. 
<p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="bae77e9adf52db77f5ea29757dfa638630e323318ddb3597a8d58f0a31b0fdbb"></a><!-- doxytag: member="IgnoreSome" ref="bae77e9adf52db77f5ea29757dfa638630e323318ddb3597a8d58f0a31b0fdbb" args="" -->IgnoreSome</em>&nbsp;</td><td>
All incoming data is accepted, except for data coming from a specific set of sources. 
<p>
</td></tr>
</table>
</dl>

</div>
</div><p>
<a class="anchor" name="00529bcf331e3d3dc57c4ebb476f1fd2"></a><!-- doxytag: member="RTPTransmitter::TransmissionProtocol" ref="00529bcf331e3d3dc57c4ebb476f1fd2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classRTPTransmitter.html#00529bcf331e3d3dc57c4ebb476f1fd2">RTPTransmitter::TransmissionProtocol</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
If UserDefinedProto is used in the <a class="el" href="classRTPSession.html#34bc0beffb09c81b94f39758dfd13826" title="Creates an RTP session.">RTPSession::Create</a> function, the <a class="el" href="classRTPSession.html" title="High level class for using RTP.">RTPSession</a> virtual member function NewUserDefinedTransmitter will be called to create a transmission component. <dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="00529bcf331e3d3dc57c4ebb476f1fd2430dce496268bd29e79f32fd91d576ff"></a><!-- doxytag: member="IPv4UDPProto" ref="00529bcf331e3d3dc57c4ebb476f1fd2430dce496268bd29e79f32fd91d576ff" args="" -->IPv4UDPProto</em>&nbsp;</td><td>
Specifies the internal UDP over IPv4 transmitter. 
<p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="00529bcf331e3d3dc57c4ebb476f1fd2842860772368b19de0c1de091df76f9f"></a><!-- doxytag: member="IPv6UDPProto" ref="00529bcf331e3d3dc57c4ebb476f1fd2842860772368b19de0c1de091df76f9f" args="" -->IPv6UDPProto</em>&nbsp;</td><td>
Specifies the internal UDP over IPv6 transmitter. 
<p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="00529bcf331e3d3dc57c4ebb476f1fd2f45e5ade219d16a0b8697d44c59eca4e"></a><!-- doxytag: member="UserDefinedProto" ref="00529bcf331e3d3dc57c4ebb476f1fd2f45e5ade219d16a0b8697d44c59eca4e" args="" -->UserDefinedProto</em>&nbsp;</td><td>
Specifies a user defined, external transmitter. 
<p>
</td></tr>
</table>
</dl>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="4ffe998d7fa72d691fbedf685fe1997b"></a><!-- doxytag: member="RTPTransmitter::RTPTransmitter" ref="4ffe998d7fa72d691fbedf685fe1997b" args="(RTPMemoryManager *mgr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">RTPTransmitter::RTPTransmitter           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classRTPMemoryManager.html">RTPMemoryManager</a> *&nbsp;</td>
          <td class="paramname"> <em>mgr</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="4e32264c5c12c5a7b05bce28baa430f6"></a><!-- doxytag: member="RTPTransmitter::AbortWait" ref="4e32264c5c12c5a7b05bce28baa430f6" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::AbortWait           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="5709df859a09e775fbe0cb65d8e93463"></a><!-- doxytag: member="RTPTransmitter::AddDestination" ref="5709df859a09e775fbe0cb65d8e93463" args="(const RTPAddress &amp;addr)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::AddDestination           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>addr</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="96fda0a5e6b7484d295bb0b291720eb2"></a><!-- doxytag: member="RTPTransmitter::AddToAcceptList" ref="96fda0a5e6b7484d295bb0b291720eb2" args="(const RTPAddress &amp;addr)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::AddToAcceptList           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>addr</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="53fca7150678471685f6bc046c6f0ca2"></a><!-- doxytag: member="RTPTransmitter::AddToIgnoreList" ref="53fca7150678471685f6bc046c6f0ca2" args="(const RTPAddress &amp;addr)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::AddToIgnoreList           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>addr</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="d1cd475c302925e145966290e286a69e"></a><!-- doxytag: member="RTPTransmitter::ClearAcceptList" ref="d1cd475c302925e145966290e286a69e" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void RTPTransmitter::ClearAcceptList           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="c547678e9164628a5f0a6897d2340704"></a><!-- doxytag: member="RTPTransmitter::ClearDestinations" ref="c547678e9164628a5f0a6897d2340704" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void RTPTransmitter::ClearDestinations           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="3862dc2a8b8571bb24b800d81f30299d"></a><!-- doxytag: member="RTPTransmitter::ClearIgnoreList" ref="3862dc2a8b8571bb24b800d81f30299d" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void RTPTransmitter::ClearIgnoreList           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="303b9ce5733c8279228b2dcac248f013"></a><!-- doxytag: member="RTPTransmitter::ComesFromThisTransmitter" ref="303b9ce5733c8279228b2dcac248f013" args="(const RTPAddress *addr)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool RTPTransmitter::ComesFromThisTransmitter           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classRTPAddress.html">RTPAddress</a> *&nbsp;</td>
          <td class="paramname"> <em>addr</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="32e7024c43447887422009e5d7ae928d"></a><!-- doxytag: member="RTPTransmitter::Create" ref="32e7024c43447887422009e5d7ae928d" args="(size_t maxpacksize, const RTPTransmissionParams *transparams)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::Create           </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>maxpacksize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classRTPTransmissionParams.html">RTPTransmissionParams</a> *&nbsp;</td>
          <td class="paramname"> <em>transparams</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Prepares the component to be used. The parameter <code>maxpacksize</code> specifies the maximum size a packet can have: if the packet is larger it will not be transmitted. The <code>transparams</code> parameter specifies a pointer to an <a class="el" href="classRTPTransmissionParams.html" title="Base class for transmission parameters.">RTPTransmissionParams</a> instance. This is also an abstract class and each actual component will define its own parameters by inheriting a class from <a class="el" href="classRTPTransmissionParams.html" title="Base class for transmission parameters.">RTPTransmissionParams</a>. If <code>transparams</code> is NULL, the default transmission parameters for the component will be used. 
</div>
</div><p>
<a class="anchor" name="649983247fd0de0c49c9bad132078804"></a><!-- doxytag: member="RTPTransmitter::DeleteDestination" ref="649983247fd0de0c49c9bad132078804" args="(const RTPAddress &amp;addr)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::DeleteDestination           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>addr</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="72a8ca0bf9bbb12325d882a77ec4dcc8"></a><!-- doxytag: member="RTPTransmitter::DeleteFromAcceptList" ref="72a8ca0bf9bbb12325d882a77ec4dcc8" args="(const RTPAddress &amp;addr)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::DeleteFromAcceptList           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>addr</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="62b670aed033a21338dff518e9c757ce"></a><!-- doxytag: member="RTPTransmitter::DeleteFromIgnoreList" ref="62b670aed033a21338dff518e9c757ce" args="(const RTPAddress &amp;addr)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::DeleteFromIgnoreList           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>addr</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="b1b7a3f9ba045e4badcda10a9c274ccd"></a><!-- doxytag: member="RTPTransmitter::Destroy" ref="b1b7a3f9ba045e4badcda10a9c274ccd" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void RTPTransmitter::Destroy           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
By calling this function, buffers are cleared and the component cannot be used anymore. Only when the Create function is called again can the component be used again. 
</div>
</div><p>
<a class="anchor" name="d96879b560b05db868a4e66afff5712c"></a><!-- doxytag: member="RTPTransmitter::GetHeaderOverhead" ref="d96879b560b05db868a4e66afff5712c" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t RTPTransmitter::GetHeaderOverhead           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="09e113ec309ffd7b28b0ef531355baac"></a><!-- doxytag: member="RTPTransmitter::GetLocalHostName" ref="09e113ec309ffd7b28b0ef531355baac" args="(uint8_t *buffer, size_t *bufferlength)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::GetLocalHostName           </td>
          <td>(</td>
          <td class="paramtype">uint8_t *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t *&nbsp;</td>
          <td class="paramname"> <em>bufferlength</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Looks up the local host name based upon internal information about the local host's addresses. This function might take some time since a DNS query might be done. <code>bufferlength</code> should initially contain the number of bytes that may be stored in <code>buffer</code>. If the function succeeds, <code>bufferlength</code> is set to the number of bytes stored in <code>buffer</code>. Note that the data in <code>buffer</code> is not NULL-terminated. If the function fails because the buffer isn't large enough, it returns <code>ERR_RTP_TRANS_BUFFERLENGTHTOOSMALL</code> and stores the number of bytes needed in <code>bufferlength</code>. 
</div>
</div><p>
<a class="anchor" name="12ae1a197dd8b59d99e16d39e5159beb"></a><!-- doxytag: member="RTPTransmitter::GetNextPacket" ref="12ae1a197dd8b59d99e16d39e5159beb" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classRTPRawPacket.html">RTPRawPacket</a>* RTPTransmitter::GetNextPacket           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="c6e8e09ca732f76f4b7a531e592700e4"></a><!-- doxytag: member="RTPTransmitter::GetTransmissionInfo" ref="c6e8e09ca732f76f4b7a531e592700e4" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classRTPTransmissionInfo.html">RTPTransmissionInfo</a>* RTPTransmitter::GetTransmissionInfo           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This function returns an instance of a subclass of <a class="el" href="classRTPTransmissionInfo.html" title="Base class for additional information about the transmitter.">RTPTransmissionInfo</a> which will give some additional information about the transmitter (a list of local IP addresses for example). Currently, either an instance of <a class="el" href="classRTPUDPv4TransmissionInfo.html" title="Additional information about the UDP over IPv4 transmitter.">RTPUDPv4TransmissionInfo</a> or <a class="el" href="classRTPUDPv6TransmissionInfo.html" title="Additional information about the UDP over IPv6 transmitter.">RTPUDPv6TransmissionInfo</a> is returned, depending on the type of the transmitter. The user has to deallocate the returned instance when it is no longer needed. 
</div>
</div><p>
<a class="anchor" name="8c51729221ae8a27cd327598a5cff7a1"></a><!-- doxytag: member="RTPTransmitter::Init" ref="8c51729221ae8a27cd327598a5cff7a1" args="(bool threadsafe)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::Init           </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>threadsafe</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This function must be called before the transmission component can be used. Depending on the value of <code>threadsafe</code>, the component will be created for thread-safe usage or not. 
</div>
</div><p>
<a class="anchor" name="d817b4f899689f87da9767854d29e4cb"></a><!-- doxytag: member="RTPTransmitter::JoinMulticastGroup" ref="d817b4f899689f87da9767854d29e4cb" args="(const RTPAddress &amp;addr)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::JoinMulticastGroup           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>addr</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="00d6f1346124aec45cef57a67f041234"></a><!-- doxytag: member="RTPTransmitter::LeaveAllMulticastGroups" ref="00d6f1346124aec45cef57a67f041234" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void RTPTransmitter::LeaveAllMulticastGroups           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="dc3c7c9622ae8b5df6df624c9ab3cd16"></a><!-- doxytag: member="RTPTransmitter::LeaveMulticastGroup" ref="dc3c7c9622ae8b5df6df624c9ab3cd16" args="(const RTPAddress &amp;addr)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::LeaveMulticastGroup           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classRTPAddress.html">RTPAddress</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>addr</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="cb8f396cfd48d52134b7b090e6963c32"></a><!-- doxytag: member="RTPTransmitter::NewDataAvailable" ref="cb8f396cfd48d52134b7b090e6963c32" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool RTPTransmitter::NewDataAvailable           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="72963cd613bf7f54ce54811cd6f41e1d"></a><!-- doxytag: member="RTPTransmitter::Poll" ref="72963cd613bf7f54ce54811cd6f41e1d" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::Poll           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="1a4b449c3aa5a6f9073e777d3a916dd4"></a><!-- doxytag: member="RTPTransmitter::SendRTCPData" ref="1a4b449c3aa5a6f9073e777d3a916dd4" args="(const void *data, size_t len)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::SendRTCPData           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="4a9300acce9b60cf5012a91167465c81"></a><!-- doxytag: member="RTPTransmitter::SendRTPData" ref="4a9300acce9b60cf5012a91167465c81" args="(const void *data, size_t len)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::SendRTPData           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="81cad761ff649079f7d6285183f31455"></a><!-- doxytag: member="RTPTransmitter::SetMaximumPacketSize" ref="81cad761ff649079f7d6285183f31455" args="(size_t s)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::SetMaximumPacketSize           </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="fd33f5ca2046f0d08a21ff6e5fa6c99e"></a><!-- doxytag: member="RTPTransmitter::SetReceiveMode" ref="fd33f5ca2046f0d08a21ff6e5fa6c99e" args="(RTPTransmitter::ReceiveMode m)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::SetReceiveMode           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa6386">RTPTransmitter::ReceiveMode</a>&nbsp;</td>
          <td class="paramname"> <em>m</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Sets the receive mode to <code>m</code>, which is one of the following: <a class="el" href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa638632b43c3c1b447b9f5ad2ab8405379eef" title="All incoming data is accepted, no matter where it originated from.">RTPTransmitter::AcceptAll</a>, <a class="el" href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa6386c91e1201cb9620b2db7bfd0ecbd5abb3" title="Only data coming from specific sources will be accepted.">RTPTransmitter::AcceptSome</a> or <a class="el" href="classRTPTransmitter.html#bae77e9adf52db77f5ea29757dfa638630e323318ddb3597a8d58f0a31b0fdbb" title="All incoming data is accepted, except for data coming from a specific set of sources...">RTPTransmitter::IgnoreSome</a>. Note that if the receive mode is changed, all information about the addresses to ignore to accept is lost. 
</div>
</div><p>
<a class="anchor" name="b35f318dfb9e02813ed45bb8550fee6a"></a><!-- doxytag: member="RTPTransmitter::SupportsMulticasting" ref="b35f318dfb9e02813ed45bb8550fee6a" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool RTPTransmitter::SupportsMulticasting           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="295b8b83135cbefa9d93c28afe86fcd0"></a><!-- doxytag: member="RTPTransmitter::WaitForIncomingData" ref="295b8b83135cbefa9d93c28afe86fcd0" args="(const RTPTime &amp;delay, bool *dataavailable=0)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int RTPTransmitter::WaitForIncomingData           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classRTPTime.html">RTPTime</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>delay</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&nbsp;</td>
          <td class="paramname"> <em>dataavailable</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Waits at most a time <code>delay</code> until incoming data has been detected. If <code>dataavailable</code> is not NULL, it should be set to <code>true</code> if data was actually read and to <code>false</code> otherwise. 
</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>src/<a class="el" href="rtptransmitter_8h_source.html">rtptransmitter.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Sun Jul 26 09:42:14 2009 for jrtplib by&nbsp;
<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>