1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208
|
<HTML>
<HEAD>
<TITLE>class RTPTransport</TITLE>
<META NAME="Generator" CONTENT="KDOC ">
</HEAD>
<BODY bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#000099" alink= "#ffffff">
<TABLE WIDTH="100%" BORDER="0">
<TR>
<TD>
<TABLE BORDER="0">
<TR><TD valign="top" align="left" cellspacing="10">
<h1>class RTPTransport</h1>
</TD>
<TD valign="top" align="right" colspan="1">Low level transport for RTP and RTCP. <small><A HREF="#longdesc">More...</A></small></TD></TR>
</TABLE>
<HR>
<TABLE BORDER="0">
<TR><TH>Full name</TH><TD><code><A HREF="TelEngine.html">TelEngine</A>::RTPTransport</code></TD></TR>
<TR><TH>Definition</TH><TD><code>#include <<A HREF="libs___yrtp___yatertp_h.html">libs/yrtp/yatertp.h</A>></code></TD></TR>
<TR><TH>Inherits</TH><TD><i><A HREF="TelEngine__RTPProcessor.html">TelEngine::RTPProcessor</A></i> <small>[public ]</small></TD></TR>
<TR><TH><A HREF="full-list-TelEngine__RTPTransport.html">List of all Methods</A></TH></TR>
</TABLE>
</TD>
<TD align="right"><TABLE BORDER="0"><TR><TD><small><A HREF="index-long.html">Annotated List</A></small></TD></TR>
<TR><TD><small><A HREF="header-list.html">Files</A></small></TD></TR>
<TR><TD><small><A HREF="all-globals.html">Globals</A></small></TD></TR>
<TR><TD><small><A HREF="hier.html">Hierarchy</A></small></TD></TR>
<TR><TD><small><A HREF="index.html">Index</A></small></TD></TR>
</TABLE></TD></TR></TABLE>
<h4>Public Types</h4><ul><LI>enum <A HREF="#ref1">Activation</A> { Inactive,
Bound,
Active
}
</LI>
<LI>enum <A HREF="#ref2">Type</A> { Unknown,
RTP,
UDPTL
}
</LI>
</ul><h4>Public Methods</h4><ul><LI> <b><A HREF="#ref3">RTPTransport</A></b> (Type type = RTP)
</LI>
<LI>virtual <b><A HREF="#ref4">~RTPTransport</A></b> ()
</LI>
<LI>void <b><A HREF="#ref5">setProcessor</A></b> (RTPProcessor* processor = 0)
</LI>
<LI>void <b><A HREF="#ref6">setMonitor</A></b> (RTPProcessor* monitor = 0)
</LI>
<LI>inline const SocketAddr& <b><A HREF="#ref7">localAddr</A></b> () const
</LI>
<LI>inline const SocketAddr& <b><A HREF="#ref8">remoteAddr</A></b> () const
</LI>
<LI>bool <b><A HREF="#ref9">localAddr</A></b> (SocketAddr& addr, bool rtcp = true)
</LI>
<LI>bool <b><A HREF="#ref10">remoteAddr</A></b> (SocketAddr& addr, bool sniff = false)
</LI>
<LI>inline bool <b><A HREF="#ref11">setTOS</A></b> (int tos)
</LI>
<LI>inline Socket* <b><A HREF="#ref12">rtpSock</A></b> ()
</LI>
<LI>bool <b><A HREF="#ref13">drillHole</A></b> ()
</LI>
</ul><h4>Protected Methods</h4><ul><LI>virtual void <b><A HREF="#ref14">timerTick</A></b> (const Time& when)
</LI>
<LI>virtual void <b><A HREF="#ref15">rtpData</A></b> (const void* data, int len)
</LI>
<LI>virtual void <b><A HREF="#ref16">rtcpData</A></b> (const void* data, int len)
</LI>
</ul><HR><H2><A NAME="longdesc">Detailed Description</A></H2><p>
Class that holds sockets and addresses for transporting RTP and RTCP packets.
</p>
<A NAME="Activation"></A><A NAME="ref1"></A><table width="100%"><tr bgcolor="#eeeeee"><td>enum <strong>Activation</strong> { Inactive,
Bound,
Active
}
</td><td align="right"><h3><strong>Activation</strong></h3></td></tr></table><p></p><p>
Activation status of the transport
</p>
<A NAME="Type"></A><A NAME="ref2"></A><table width="100%"><tr bgcolor="#eeeeee"><td>enum <strong>Type</strong> { Unknown,
RTP,
UDPTL
}
</td><td align="right"><h3><strong>Type</strong></h3></td></tr></table><p></p><p>
Type of transported data
</p>
<A NAME="RTPTransport"></A><A NAME="ref3"></A><table width="100%"><tr bgcolor="#eeeeee"><td> <strong>RTPTransport</strong> (Type type = RTP)
<br></td><td align="right"><h3><strong>RTPTransport</strong></h3></td></tr></table><p></p><p>
Constructor, creates an unconnected transport
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>type</i></TD><TD align="left" valign="top">Type of check to apply to the data
</TD></TR>
</TABLE></P>
<A NAME="~RTPTransport"></A><A NAME="ref4"></A><table width="100%"><tr bgcolor="#eeeeee"><td> <strong>~RTPTransport</strong> ()
<br></td><td align="right"><h3><strong>~RTPTransport</strong></h3></td></tr></table><p> <small>[virtual]</small></p><p>
Destructor
</p>
<A NAME="setProcessor"></A><A NAME="ref5"></A><table width="100%"><tr bgcolor="#eeeeee"><td>void <strong>setProcessor</strong> (RTPProcessor* processor = 0)
<br></td><td align="right"><h3><strong>setProcessor</strong></h3></td></tr></table><p></p><p>
Set the RTP/RTCP processor of data received by this transport
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>processor</i></TD><TD align="left" valign="top">A pointer to the RTPProcessor for this transport
</TD></TR>
</TABLE></P>
<A NAME="setMonitor"></A><A NAME="ref6"></A><table width="100%"><tr bgcolor="#eeeeee"><td>void <strong>setMonitor</strong> (RTPProcessor* monitor = 0)
<br></td><td align="right"><h3><strong>setMonitor</strong></h3></td></tr></table><p></p><p>
Set the RTP/RTCP monitor of data received by this transport
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>monitor</i></TD><TD align="left" valign="top">A pointer to a second RTPProcessor for this transport
</TD></TR>
</TABLE></P>
<A NAME="localAddr"></A><A NAME="ref7"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline const SocketAddr& <strong>localAddr</strong> ()
<br></td><td align="right"><h3><strong>localAddr</strong></h3></td></tr></table><p> <small>[const]</small></p><p>
Get the local network address of the RTP transport
</p>
<p><b>Returns</b>: Reference to the local RTP transport address
</p>
<A NAME="remoteAddr"></A><A NAME="ref8"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline const SocketAddr& <strong>remoteAddr</strong> ()
<br></td><td align="right"><h3><strong>remoteAddr</strong></h3></td></tr></table><p> <small>[const]</small></p><p>
Get the remote network address of the RTP transport
</p>
<p><b>Returns</b>: Reference to the remote RTP transport address
</p>
<A NAME="localAddr"></A><A NAME="ref9"></A><table width="100%"><tr bgcolor="#eeeeee"><td>bool <strong>localAddr</strong> (SocketAddr& addr, bool rtcp = true)
<br></td><td align="right"><h3><strong>localAddr</strong></h3></td></tr></table><p></p><p>
Set the local network address of the RTP transport
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>addr</i></TD><TD align="left" valign="top">New local RTP transport address
</TD></TR>
<TR><TD align="left" valign="top"><i>rtcp</i></TD><TD align="left" valign="top">Enable RTCP transport
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True if address set, false if a failure occured
</p>
<A NAME="remoteAddr"></A><A NAME="ref10"></A><table width="100%"><tr bgcolor="#eeeeee"><td>bool <strong>remoteAddr</strong> (SocketAddr& addr, bool sniff = false)
<br></td><td align="right"><h3><strong>remoteAddr</strong></h3></td></tr></table><p></p><p>
Set the remote network address of the RTP transport
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>addr</i></TD><TD align="left" valign="top">New remote RTP transport address
</TD></TR>
<TR><TD align="left" valign="top"><i>sniff</i></TD><TD align="left" valign="top">Automatically adjust the address from the first incoming packet
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True if address set, false if a failure occured
</p>
<A NAME="setTOS"></A><A NAME="ref11"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline bool <strong>setTOS</strong> (int tos)
<br></td><td align="right"><h3><strong>setTOS</strong></h3></td></tr></table><p></p><p>
Set the Type Of Service for the RTP socket
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>tos</i></TD><TD align="left" valign="top">Type Of Service bits to set
</TD></TR>
</TABLE></P>
<p><b>Returns</b>: True if operation was successfull, false if an error occured
</p>
<A NAME="rtpSock"></A><A NAME="ref12"></A><table width="100%"><tr bgcolor="#eeeeee"><td>inline Socket* <strong>rtpSock</strong> ()
<br></td><td align="right"><h3><strong>rtpSock</strong></h3></td></tr></table><p></p><p>
Get the RTP socket used by this transport
</p>
<p><b>Returns</b>: Pointer to the RTP socket
</p>
<A NAME="drillHole"></A><A NAME="ref13"></A><table width="100%"><tr bgcolor="#eeeeee"><td>bool <strong>drillHole</strong> ()
<br></td><td align="right"><h3><strong>drillHole</strong></h3></td></tr></table><p></p><p>
Drill a hole in a firewall or NAT for the RTP and RTCP sockets
</p>
<p><b>Returns</b>: True if at least a packet was sent for the RTP socket
</p>
<A NAME="timerTick"></A><A NAME="ref14"></A><table width="100%"><tr bgcolor="#eeeeee"><td> void <strong>timerTick</strong> (const Time& when)
<br></td><td align="right"><h3><strong>timerTick</strong></h3></td></tr></table><p> <small>[protected virtual]</small></p><p>
Method called periodically to read data out of sockets
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>when</i></TD><TD align="left" valign="top">Time to use as base in all computing
</TD></TR>
</TABLE></P>
<p>Reimplemented from <A HREF="TelEngine__RTPProcessor.html#timerTick">RTPProcessor</A>.</p>
<A NAME="rtpData"></A><A NAME="ref15"></A><table width="100%"><tr bgcolor="#eeeeee"><td> void <strong>rtpData</strong> (const void* data, int len)
<br></td><td align="right"><h3><strong>rtpData</strong></h3></td></tr></table><p> <small>[protected virtual]</small></p><p>
This method is called to send a RTP packet
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>data</i></TD><TD align="left" valign="top">Pointer to raw RTP data
</TD></TR>
<TR><TD align="left" valign="top"><i>len</i></TD><TD align="left" valign="top">Length of the data packet
</TD></TR>
</TABLE></P>
<p>Reimplemented from <A HREF="TelEngine__RTPProcessor.html#rtpData">RTPProcessor</A>.</p>
<A NAME="rtcpData"></A><A NAME="ref16"></A><table width="100%"><tr bgcolor="#eeeeee"><td> void <strong>rtcpData</strong> (const void* data, int len)
<br></td><td align="right"><h3><strong>rtcpData</strong></h3></td></tr></table><p> <small>[protected virtual]</small></p><p>
This method is called to send a RTCP packet
</p>
<p><b>Parameters</b>:<TABLE BORDER="0" CELLPADDING="5">
<TR><TD align="left" valign="top"><i>data</i></TD><TD align="left" valign="top">Pointer to raw RTCP data
</TD></TR>
<TR><TD align="left" valign="top"><i>len</i></TD><TD align="left" valign="top">Length of the data packet
</TD></TR>
</TABLE></P>
<p>Reimplemented from <A HREF="TelEngine__RTPProcessor.html#rtcpData">RTPProcessor</A>.</p>
<HR>
<table>
<tr><td><small>Generated by: paulc on bussard on Mon Mar 8 12:18:15 2010, using kdoc 2.0a54.</small></td></tr>
</table>
</BODY>
</HTML>
|