CSFML 3.0.0
Loading...
Searching...
No Matches
TcpListener.h
Go to the documentation of this file.
1
2//
3// SFML - Simple and Fast Multimedia Library
4// Copyright (C) 2007-2024 Laurent Gomila (laurent@sfml-dev.org)
5//
6// This software is provided 'as-is', without any express or implied warranty.
7// In no event will the authors be held liable for any damages arising from the use of this software.
8//
9// Permission is granted to anyone to use this software for any purpose,
10// including commercial applications, and to alter it and redistribute it freely,
11// subject to the following restrictions:
12//
13// 1. The origin of this software must not be misrepresented;
14// you must not claim that you wrote the original software.
15// If you use this software in a product, an acknowledgment
16// in the product documentation would be appreciated but is not required.
17//
18// 2. Altered source versions must be plainly marked as such,
19// and must not be misrepresented as being the original software.
20//
21// 3. This notice may not be removed or altered from any source distribution.
22//
24
25#pragma once
26
28// Headers
30#include <CSFML/Network/Export.h>
31
32#include <CSFML/Network/IpAddress.h>
33#include <CSFML/Network/SocketStatus.h>
34#include <CSFML/Network/Types.h>
35
36
43 CSFML_NETWORK_API sfTcpListener* sfTcpListener_create(void);
44
51 CSFML_NETWORK_API void sfTcpListener_destroy(const sfTcpListener* listener);
52
69 CSFML_NETWORK_API void sfTcpListener_setBlocking(sfTcpListener* listener, bool blocking);
70
79 CSFML_NETWORK_API bool sfTcpListener_isBlocking(const sfTcpListener* listener);
80
92 CSFML_NETWORK_API unsigned short sfTcpListener_getLocalPort(const sfTcpListener* listener);
93
115 CSFML_NETWORK_API sfSocketStatus sfTcpListener_listen(sfTcpListener* listener, unsigned short port, sfIpAddress address);
116
126 CSFML_NETWORK_API void sfTcpListener_close(sfTcpListener* listener);
127
144 CSFML_NETWORK_API sfSocketStatus sfTcpListener_accept(sfTcpListener* listener, sfTcpSocket** connected);
145
153 CSFML_NETWORK_API unsigned short sfTcpListener_anyPort(void);
IpAddress.h
Export.h
CSFML_NETWORK_API
#define CSFML_NETWORK_API
Definition Network/Export.h:42
Types.h
sfTcpSocket
struct sfTcpSocket sfTcpSocket
Definition Network/Types.h:38
sfTcpListener
struct sfTcpListener sfTcpListener
Definition Network/Types.h:37
SocketStatus.h
sfSocketStatus
sfSocketStatus
Define the status that can be returned by the socket functions.
Definition SocketStatus.h:32
sfTcpListener_destroy
void sfTcpListener_destroy(const sfTcpListener *listener)
Destroy a TCP listener.
sfTcpListener_isBlocking
bool sfTcpListener_isBlocking(const sfTcpListener *listener)
Tell whether a TCP listener is in blocking or non-blocking mode.
sfTcpListener_accept
sfSocketStatus sfTcpListener_accept(sfTcpListener *listener, sfTcpSocket **connected)
Accept a new connection.
sfTcpListener_setBlocking
void sfTcpListener_setBlocking(sfTcpListener *listener, bool blocking)
Set the blocking state of a TCP listener.
sfTcpListener_listen
sfSocketStatus sfTcpListener_listen(sfTcpListener *listener, unsigned short port, sfIpAddress address)
Start listening for connections.
sfTcpListener_anyPort
unsigned short sfTcpListener_anyPort(void)
Return the special value that tells the system to pick any available port.
sfTcpListener_create
sfTcpListener * sfTcpListener_create(void)
Create a new TCP listener.
sfTcpListener_close
void sfTcpListener_close(sfTcpListener *listener)
Stop listening and close the socket.
sfTcpListener_getLocalPort
unsigned short sfTcpListener_getLocalPort(const sfTcpListener *listener)
Get the port to which a TCP listener is bound locally.
sfIpAddress
Encapsulate an IPv4 network address.
Definition IpAddress.h:40