Loading...
Searching...
No Matches
sf::SocketTCP Class Reference

SocketTCP wraps a socket using TCP protocol to send data safely (but a bit slower). More...

#include <SFML/Network/SocketTCP.hpp>

Public Member Functions

 SocketTCP ()
 Default constructor.
void SetBlocking (bool Blocking)
 Change the blocking state of the socket.
Socket::Status Connect (unsigned short Port, const IPAddress &HostAddress, float Timeout=0.f)
 Connect to another computer on a specified port.
bool Listen (unsigned short Port)
 Listen to a specified port for incoming data or connections.
Socket::Status Accept (SocketTCP &Connected, IPAddress *Address=NULL)
 Wait for a connection (must be listening to a port).
Socket::Status Send (const char *Data, std::size_t Size)
 Send an array of bytes to the host (must be connected first).
Socket::Status Receive (char *Data, std::size_t MaxSize, std::size_t &SizeReceived)
 Receive an array of bytes from the host (must be connected first).
Socket::Status Send (Packet &PacketToSend)
 Send a packet of data to the host (must be connected first).
Socket::Status Receive (Packet &PacketToReceive)
 Receive a packet from the host (must be connected first).
bool Close ()
 Close the socket.
bool IsValid () const
 Check if the socket is in a valid state ; this function can be called any time to check if the socket is OK.
bool operator== (const SocketTCP &Other) const
 Comparison operator ==.
bool operator!= (const SocketTCP &Other) const
 Comparison operator !=.
bool operator< (const SocketTCP &Other) const
 Comparison operator <.

Friends

class Selector< SocketTCP >

Detailed Description

SocketTCP wraps a socket using TCP protocol to send data safely (but a bit slower).

Definition at line 45 of file SocketTCP.hpp.

Constructor & Destructor Documentation

◆ SocketTCP()

sf::SocketTCP::SocketTCP ( )

Default constructor.

Member Function Documentation

◆ Accept()

Socket::Status sf::SocketTCP::Accept ( SocketTCP & Connected,
IPAddress * Address = NULL )

Wait for a connection (must be listening to a port).

This function will block if the socket is blocking

Parameters
Connected: Socket containing the connection with the connected client
Address: Pointer to an address to fill with client infos (NULL by default)
Returns
Status code

◆ Close()

bool sf::SocketTCP::Close ( )

Close the socket.

Returns
True if operation has been successful

◆ Connect()

Socket::Status sf::SocketTCP::Connect ( unsigned short Port,
const IPAddress & HostAddress,
float Timeout = 0.f )

Connect to another computer on a specified port.

Parameters
Port: Port to use for transfers (warning : ports < 1024 are reserved)
HostAddress: IP Address of the host to connect to
Timeout: Maximum time to wait, in seconds (0 by default : no timeout) (this parameter is ignored for non-blocking sockets)
Returns
True if operation has been successful

◆ IsValid()

bool sf::SocketTCP::IsValid ( ) const

Check if the socket is in a valid state ; this function can be called any time to check if the socket is OK.

Returns
True if the socket is valid

◆ Listen()

bool sf::SocketTCP::Listen ( unsigned short Port)

Listen to a specified port for incoming data or connections.

Parameters
Port: Port to listen to
Returns
True if operation has been successful

◆ operator!=()

bool sf::SocketTCP::operator!= ( const SocketTCP & Other) const

Comparison operator !=.

Parameters
Other: Socket to compare
Returns
True if *this != Other

◆ operator<()

bool sf::SocketTCP::operator< ( const SocketTCP & Other) const

Comparison operator <.

Provided for compatibility with standard containers, as comparing two sockets doesn't make much sense...

Parameters
Other: Socket to compare
Returns
True if *this < Other

◆ operator==()

bool sf::SocketTCP::operator== ( const SocketTCP & Other) const

Comparison operator ==.

Parameters
Other: Socket to compare
Returns
True if *this == Other

◆ Receive() [1/2]

Socket::Status sf::SocketTCP::Receive ( char * Data,
std::size_t MaxSize,
std::size_t & SizeReceived )

Receive an array of bytes from the host (must be connected first).

This function will block if the socket is blocking

Parameters
Data: Pointer to a byte array to fill (make sure it is big enough)
MaxSize: Maximum number of bytes to read
SizeReceived: Number of bytes received
Returns
Status code

◆ Receive() [2/2]

Socket::Status sf::SocketTCP::Receive ( Packet & PacketToReceive)

Receive a packet from the host (must be connected first).

This function will block if the socket is blocking

Parameters
PacketToReceive: Packet to fill with received data
Returns
Status code

◆ Send() [1/2]

Socket::Status sf::SocketTCP::Send ( const char * Data,
std::size_t Size )

Send an array of bytes to the host (must be connected first).

Parameters
Data: Pointer to the bytes to send
Size: Number of bytes to send
Returns
Status code

◆ Send() [2/2]

Socket::Status sf::SocketTCP::Send ( Packet & PacketToSend)

Send a packet of data to the host (must be connected first).

Parameters
PacketToSend: Packet to send
Returns
Status code

◆ SetBlocking()

void sf::SocketTCP::SetBlocking ( bool Blocking)

Change the blocking state of the socket.

The default behaviour of a socket is blocking

Parameters
Blocking: Pass true to set the socket as blocking, or false for non-blocking

◆ Selector< SocketTCP >

friend class Selector< SocketTCP >
friend

Definition at line 190 of file SocketTCP.hpp.


The documentation for this class was generated from the following file: