Index: net/third_party/udt/src/channel.h |
=================================================================== |
--- net/third_party/udt/src/channel.h (revision 78992) |
+++ net/third_party/udt/src/channel.h (working copy) |
@@ -1,171 +0,0 @@ |
-/***************************************************************************** |
-Copyright (c) 2001 - 2011, The Board of Trustees of the University of Illinois. |
-All rights reserved. |
- |
-Redistribution and use in source and binary forms, with or without |
-modification, are permitted provided that the following conditions are |
-met: |
- |
-* Redistributions of source code must retain the above |
- copyright notice, this list of conditions and the |
- following disclaimer. |
- |
-* Redistributions in binary form must reproduce the |
- above copyright notice, this list of conditions |
- and the following disclaimer in the documentation |
- and/or other materials provided with the distribution. |
- |
-* Neither the name of the University of Illinois |
- nor the names of its contributors may be used to |
- endorse or promote products derived from this |
- software without specific prior written permission. |
- |
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS |
-IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
-PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR |
-CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, |
-EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |
-PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
-PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
-*****************************************************************************/ |
- |
-/***************************************************************************** |
-written by |
- Yunhong Gu, last updated 01/27/2011 |
-*****************************************************************************/ |
- |
-#ifndef __UDT_CHANNEL_H__ |
-#define __UDT_CHANNEL_H__ |
- |
- |
-#include "udt.h" |
-#include "packet.h" |
- |
- |
-class CChannel |
-{ |
-public: |
- CChannel(); |
- CChannel(const int& version); |
- ~CChannel(); |
- |
- // Functionality: |
- // Opne a UDP channel. |
- // Parameters: |
- // 0) [in] addr: The local address that UDP will use. |
- // Returned value: |
- // None. |
- |
- void open(const sockaddr* addr = NULL); |
- |
- // Functionality: |
- // Opne a UDP channel based on an existing UDP socket. |
- // Parameters: |
- // 0) [in] udpsock: UDP socket descriptor. |
- // Returned value: |
- // None. |
- |
- void open(UDPSOCKET udpsock); |
- |
- // Functionality: |
- // Disconnect and close the UDP entity. |
- // Parameters: |
- // None. |
- // Returned value: |
- // None. |
- |
- void close() const; |
- |
- // Functionality: |
- // Get the UDP sending buffer size. |
- // Parameters: |
- // None. |
- // Returned value: |
- // Current UDP sending buffer size. |
- |
- int getSndBufSize(); |
- |
- // Functionality: |
- // Get the UDP receiving buffer size. |
- // Parameters: |
- // None. |
- // Returned value: |
- // Current UDP receiving buffer size. |
- |
- int getRcvBufSize(); |
- |
- // Functionality: |
- // Set the UDP sending buffer size. |
- // Parameters: |
- // 0) [in] size: expected UDP sending buffer size. |
- // Returned value: |
- // None. |
- |
- void setSndBufSize(const int& size); |
- |
- // Functionality: |
- // Set the UDP receiving buffer size. |
- // Parameters: |
- // 0) [in] size: expected UDP receiving buffer size. |
- // Returned value: |
- // None. |
- |
- void setRcvBufSize(const int& size); |
- |
- // Functionality: |
- // Query the socket address that the channel is using. |
- // Parameters: |
- // 0) [out] addr: pointer to store the returned socket address. |
- // Returned value: |
- // None. |
- |
- void getSockAddr(sockaddr* addr) const; |
- |
- // Functionality: |
- // Query the peer side socket address that the channel is connect to. |
- // Parameters: |
- // 0) [out] addr: pointer to store the returned socket address. |
- // Returned value: |
- // None. |
- |
- void getPeerAddr(sockaddr* addr) const; |
- |
- // Functionality: |
- // Send a packet to the given address. |
- // Parameters: |
- // 0) [in] addr: pointer to the destination address. |
- // 1) [in] packet: reference to a CPacket entity. |
- // Returned value: |
- // Actual size of data sent. |
- |
- int sendto(const sockaddr* addr, CPacket& packet) const; |
- |
- // Functionality: |
- // Receive a packet from the channel and record the source address. |
- // Parameters: |
- // 0) [in] addr: pointer to the source address. |
- // 1) [in] packet: reference to a CPacket entity. |
- // Returned value: |
- // Actual size of data received. |
- |
- int recvfrom(sockaddr* addr, CPacket& packet) const; |
- |
-private: |
- void setUDPSockOpt(); |
- |
-private: |
- int m_iIPversion; // IP version |
- int m_iSockAddrSize; // socket address structure size (pre-defined to avoid run-time test) |
- |
- UDPSOCKET m_iSocket; // socket descriptor |
- |
- int m_iSndBufSize; // UDP sending buffer size |
- int m_iRcvBufSize; // UDP receiving buffer size |
-}; |
- |
- |
-#endif |