<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>SFML - Simple and Fast Multimedia Library</title> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <link href="doxygen.css" rel="stylesheet" type="text/css" /> <link href="tabs.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="logo"> <img src="./logo.jpg" width="770" height="200" title="SFML home" alt="SFML logo" /> </div> <!-- Generated by Doxygen 1.5.8 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.htm"><span>Main Page</span></a></li> <li><a href="namespaces.htm"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.htm"><span>Classes</span></a></li> <li><a href="files.htm"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.htm"><span>Class List</span></a></li> <li><a href="classes.htm"><span>Class Index</span></a></li> <li><a href="hierarchy.htm"><span>Class Hierarchy</span></a></li> <li><a href="functions.htm"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><b>sf</b>::<a class="el" href="classsf_1_1SocketTCP.htm">SocketTCP</a> </div> </div> <div class="contents"> <h1>sf::SocketTCP Class Reference</h1><!-- doxytag: class="sf::SocketTCP" --><a class="el" href="classsf_1_1SocketTCP.htm" title="SocketTCP wraps a socket using TCP protocol to send data safely (but a bit slower)...">SocketTCP</a> wraps a socket using TCP protocol to send data safely (but a bit slower). <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="SocketTCP_8hpp-source.htm">SocketTCP.hpp</a>></code> <p> <p> <a href="classsf_1_1SocketTCP-members.htm">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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#098157a901a6f355b499085a3fb97afa">SocketTCP</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <a href="#098157a901a6f355b499085a3fb97afa"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#a80f7711b15fe33a5c7005acedae43c9">SetBlocking</a> (bool Blocking)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Change the blocking state of the socket. <a href="#a80f7711b15fe33a5c7005acedae43c9"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">Socket::Status </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#dd590d0119fa8edbe8da1574b6c8f07f">Connect</a> (unsigned short Port, const <a class="el" href="classsf_1_1IPAddress.htm">IPAddress</a> &HostAddress, float Timeout=0.f)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Connect to another computer on a specified port. <a href="#dd590d0119fa8edbe8da1574b6c8f07f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#3153062e1fb2a7afe9e0ed80f9204b39">Listen</a> (unsigned short Port)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Listen to a specified port for incoming data or connections. <a href="#3153062e1fb2a7afe9e0ed80f9204b39"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">Socket::Status </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#70beb8cda69c4e9212fd5987f0d04107">Accept</a> (<a class="el" href="classsf_1_1SocketTCP.htm">SocketTCP</a> &Connected, <a class="el" href="classsf_1_1IPAddress.htm">IPAddress</a> *Address=NULL)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for a connection (must be listening to a port). <a href="#70beb8cda69c4e9212fd5987f0d04107"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">Socket::Status </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#4debed568966f75e3e63a70f08e67c21">Send</a> (const char *Data, std::size_t Size)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Send an array of bytes to the host (must be connected first). <a href="#4debed568966f75e3e63a70f08e67c21"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">Socket::Status </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#47027b00ab5589017a5c235f2deb3ab0">Receive</a> (char *Data, std::size_t MaxSize, std::size_t &SizeReceived)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Receive an array of bytes from the host (must be connected first). <a href="#47027b00ab5589017a5c235f2deb3ab0"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">Socket::Status </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#a1825883276970b3d2f9b1d61763e5c7">Send</a> (<a class="el" href="classsf_1_1Packet.htm">Packet</a> &PacketToSend)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Send a packet of data to the host (must be connected first). <a href="#a1825883276970b3d2f9b1d61763e5c7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">Socket::Status </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#4389aa92523e0a6b3f2d6517cbde74fa">Receive</a> (<a class="el" href="classsf_1_1Packet.htm">Packet</a> &PacketToReceive)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Receive a packet from the host (must be connected first). <a href="#4389aa92523e0a6b3f2d6517cbde74fa"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#70a5111cbddd1edbfa6cbd6017c6d044">Close</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Close the socket. <a href="#70a5111cbddd1edbfa6cbd6017c6d044"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#098d613057a72d9e5cfa76a77b5f7124">IsValid</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if the socket is in a valid state ; this function can be called any time to check if the socket is OK. <a href="#098d613057a72d9e5cfa76a77b5f7124"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#ae32dcf5042a50544848140ec1f94ed1">operator==</a> (const <a class="el" href="classsf_1_1SocketTCP.htm">SocketTCP</a> &Other) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Comparison operator ==. <a href="#ae32dcf5042a50544848140ec1f94ed1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#4d4dd9e422c485b8a8b390d1f210e84e">operator!=</a> (const <a class="el" href="classsf_1_1SocketTCP.htm">SocketTCP</a> &Other) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Comparison operator !=. <a href="#4d4dd9e422c485b8a8b390d1f210e84e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1SocketTCP.htm#dbcfa2c662f98a92beb509d3e5ebb1ce">operator<</a> (const <a class="el" href="classsf_1_1SocketTCP.htm">SocketTCP</a> &Other) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Comparison operator <. <a href="#dbcfa2c662f98a92beb509d3e5ebb1ce"></a><br></td></tr> <tr><td colspan="2"><br><h2>Friends</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9820f8c2c218ce480ae8c891f29df668"></a><!-- doxytag: member="sf::SocketTCP::Selector< SocketTCP >" ref="9820f8c2c218ce480ae8c891f29df668" args="" --> class </td><td class="memItemRight" valign="bottom"><b>Selector< SocketTCP ></b></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> <a class="el" href="classsf_1_1SocketTCP.htm" title="SocketTCP wraps a socket using TCP protocol to send data safely (but a bit slower)...">SocketTCP</a> wraps a socket using TCP protocol to send data safely (but a bit slower). <p>Definition at line <a class="el" href="SocketTCP_8hpp-source.htm#l00045">45</a> of file <a class="el" href="SocketTCP_8hpp-source.htm">SocketTCP.hpp</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="098157a901a6f355b499085a3fb97afa"></a><!-- doxytag: member="sf::SocketTCP::SocketTCP" ref="098157a901a6f355b499085a3fb97afa" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">sf::SocketTCP::SocketTCP </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Default constructor. <p> <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00047">47</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="70beb8cda69c4e9212fd5987f0d04107"></a><!-- doxytag: member="sf::SocketTCP::Accept" ref="70beb8cda69c4e9212fd5987f0d04107" args="(SocketTCP &Connected, IPAddress *Address=NULL)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Socket::Status sf::SocketTCP::Accept </td> <td>(</td> <td class="paramtype"><a class="el" href="classsf_1_1SocketTCP.htm">SocketTCP</a> & </td> <td class="paramname"> <em>Connected</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classsf_1_1IPAddress.htm">IPAddress</a> * </td> <td class="paramname"> <em>Address</em> = <code>NULL</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Wait for a connection (must be listening to a port). <p> This function will block if the socket is blocking<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>Connected</em> </td><td>: Socket containing the connection with the connected client </td></tr> <tr><td valign="top"></td><td valign="top"><em>Address</em> </td><td>: Pointer to an address to fill with client infos (NULL by default)</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>Status code</dd></dl> This function will block if the socket is blocking <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00195">195</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="70a5111cbddd1edbfa6cbd6017c6d044"></a><!-- doxytag: member="sf::SocketTCP::Close" ref="70a5111cbddd1edbfa6cbd6017c6d044" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool sf::SocketTCP::Close </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Close the socket. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if operation has been successful </dd></dl> <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00386">386</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="dd590d0119fa8edbe8da1574b6c8f07f"></a><!-- doxytag: member="sf::SocketTCP::Connect" ref="dd590d0119fa8edbe8da1574b6c8f07f" args="(unsigned short Port, const IPAddress &HostAddress, float Timeout=0.f)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Socket::Status sf::SocketTCP::Connect </td> <td>(</td> <td class="paramtype">unsigned short </td> <td class="paramname"> <em>Port</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classsf_1_1IPAddress.htm">IPAddress</a> & </td> <td class="paramname"> <em>HostAddress</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>Timeout</em> = <code>0.f</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Connect to another computer on a specified port. <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>Port</em> </td><td>: Port to use for transfers (warning : ports < 1024 are reserved) </td></tr> <tr><td valign="top"></td><td valign="top"><em>HostAddress</em> </td><td>: IP Address of the host to connect to </td></tr> <tr><td valign="top"></td><td valign="top"><em>Timeout</em> </td><td>: Maximum time to wait, in seconds (0 by default : no timeout) (this parameter is ignored for non-blocking sockets)</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if operation has been successful </dd></dl> <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00070">70</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="098d613057a72d9e5cfa76a77b5f7124"></a><!-- doxytag: member="sf::SocketTCP::IsValid" ref="098d613057a72d9e5cfa76a77b5f7124" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool sf::SocketTCP::IsValid </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Check if the socket is in a valid state ; this function can be called any time to check if the socket is OK. <p> Check if the socket is in a valid state ; this function can be called any time to check if the socket is OK.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if the socket is valid </dd></dl> <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00409">409</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="3153062e1fb2a7afe9e0ed80f9204b39"></a><!-- doxytag: member="sf::SocketTCP::Listen" ref="3153062e1fb2a7afe9e0ed80f9204b39" args="(unsigned short Port)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool sf::SocketTCP::Listen </td> <td>(</td> <td class="paramtype">unsigned short </td> <td class="paramname"> <em>Port</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Listen to a specified port for incoming data or connections. <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>Port</em> </td><td>: Port to listen to</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if operation has been successful </dd></dl> <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00158">158</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="4d4dd9e422c485b8a8b390d1f210e84e"></a><!-- doxytag: member="sf::SocketTCP::operator!=" ref="4d4dd9e422c485b8a8b390d1f210e84e" args="(const SocketTCP &Other) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool sf::SocketTCP::operator!= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classsf_1_1SocketTCP.htm">SocketTCP</a> & </td> <td class="paramname"> <em>Other</em> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Comparison operator !=. <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>Other</em> </td><td>: Socket to compare</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if *this != Other </dd></dl> <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00427">427</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="dbcfa2c662f98a92beb509d3e5ebb1ce"></a><!-- doxytag: member="sf::SocketTCP::operator<" ref="dbcfa2c662f98a92beb509d3e5ebb1ce" args="(const SocketTCP &Other) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool sf::SocketTCP::operator< </td> <td>(</td> <td class="paramtype">const <a class="el" href="classsf_1_1SocketTCP.htm">SocketTCP</a> & </td> <td class="paramname"> <em>Other</em> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Comparison operator <. <p> Provided for compatibility with standard containers, as comparing two sockets doesn't make much sense...<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>Other</em> </td><td>: Socket to compare</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if *this < Other</dd></dl> Provided for compatibility with standard containers, as comparing two sockets doesn't make much sense... <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00438">438</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="ae32dcf5042a50544848140ec1f94ed1"></a><!-- doxytag: member="sf::SocketTCP::operator==" ref="ae32dcf5042a50544848140ec1f94ed1" args="(const SocketTCP &Other) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool sf::SocketTCP::operator== </td> <td>(</td> <td class="paramtype">const <a class="el" href="classsf_1_1SocketTCP.htm">SocketTCP</a> & </td> <td class="paramname"> <em>Other</em> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Comparison operator ==. <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>Other</em> </td><td>: Socket to compare</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if *this == Other </dd></dl> <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00418">418</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="4389aa92523e0a6b3f2d6517cbde74fa"></a><!-- doxytag: member="sf::SocketTCP::Receive" ref="4389aa92523e0a6b3f2d6517cbde74fa" args="(Packet &PacketToReceive)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Socket::Status sf::SocketTCP::Receive </td> <td>(</td> <td class="paramtype"><a class="el" href="classsf_1_1Packet.htm">Packet</a> & </td> <td class="paramname"> <em>PacketToReceive</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Receive a packet from the host (must be connected first). <p> This function will block if the socket is blocking<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>PacketToReceive</em> </td><td>: <a class="el" href="classsf_1_1Packet.htm" title="Packet wraps data to send / to receive through the network.">Packet</a> to fill with received data</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>Status code</dd></dl> This function will block if the socket is blocking <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00329">329</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="47027b00ab5589017a5c235f2deb3ab0"></a><!-- doxytag: member="sf::SocketTCP::Receive" ref="47027b00ab5589017a5c235f2deb3ab0" args="(char *Data, std::size_t MaxSize, std::size_t &SizeReceived)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Socket::Status sf::SocketTCP::Receive </td> <td>(</td> <td class="paramtype">char * </td> <td class="paramname"> <em>Data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">std::size_t </td> <td class="paramname"> <em>MaxSize</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">std::size_t & </td> <td class="paramname"> <em>SizeReceived</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Receive an array of bytes from the host (must be connected first). <p> This function will block if the socket is blocking<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>Data</em> </td><td>: Pointer to a byte array to fill (make sure it is big enough) </td></tr> <tr><td valign="top"></td><td valign="top"><em>MaxSize</em> </td><td>: Maximum number of bytes to read </td></tr> <tr><td valign="top"></td><td valign="top"><em>SizeReceived</em> </td><td>: Number of bytes received</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>Status code</dd></dl> This function will block if the socket is blocking <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00261">261</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="a1825883276970b3d2f9b1d61763e5c7"></a><!-- doxytag: member="sf::SocketTCP::Send" ref="a1825883276970b3d2f9b1d61763e5c7" args="(Packet &PacketToSend)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Socket::Status sf::SocketTCP::Send </td> <td>(</td> <td class="paramtype"><a class="el" href="classsf_1_1Packet.htm">Packet</a> & </td> <td class="paramname"> <em>PacketToSend</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Send a packet of data to the host (must be connected first). <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>PacketToSend</em> </td><td>: <a class="el" href="classsf_1_1Packet.htm" title="Packet wraps data to send / to receive through the network.">Packet</a> to send</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>Status code </dd></dl> <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00303">303</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="4debed568966f75e3e63a70f08e67c21"></a><!-- doxytag: member="sf::SocketTCP::Send" ref="4debed568966f75e3e63a70f08e67c21" args="(const char *Data, std::size_t Size)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Socket::Status sf::SocketTCP::Send </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>Data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">std::size_t </td> <td class="paramname"> <em>Size</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Send an array of bytes to the host (must be connected first). <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>Data</em> </td><td>: Pointer to the bytes to send </td></tr> <tr><td valign="top"></td><td valign="top"><em>Size</em> </td><td>: Number of bytes to send</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>Status code </dd></dl> <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00224">224</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <a class="anchor" name="a80f7711b15fe33a5c7005acedae43c9"></a><!-- doxytag: member="sf::SocketTCP::SetBlocking" ref="a80f7711b15fe33a5c7005acedae43c9" args="(bool Blocking)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void sf::SocketTCP::SetBlocking </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>Blocking</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Change the blocking state of the socket. <p> The default behaviour of a socket is blocking<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>Blocking</em> </td><td>: Pass true to set the socket as blocking, or false for non-blocking </td></tr> </table> </dl> <p>Definition at line <a class="el" href="SocketTCP_8cpp-source.htm#l00056">56</a> of file <a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="SocketTCP_8hpp-source.htm">SocketTCP.hpp</a><li><a class="el" href="SocketTCP_8cpp-source.htm">SocketTCP.cpp</a></ul> </div> <p id="footer"> :: Copyright © 2007-2008 Laurent Gomila, all rights reserved :: Documentation generated by <a href="http://www.doxygen.org/" title="doxygen website">doxygen 1.5.2</a> :: </p> </body> </html>