Loading...
Searching...
No Matches
Packet.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#ifndef SFML_PACKET_H
26#define SFML_PACKET_H
27
29// Headers
31#include <SFML/Network/Export.h>
32#include <SFML/Network/Types.h>
33#include <stddef.h>
34
35
43
53
61
70CSFML_NETWORK_API void sfPacket_append(sfPacket* packet, const void* data, size_t sizeInBytes);
71
83
93
107CSFML_NETWORK_API const void* sfPacket_getData(const sfPacket* packet);
108
121
135
151
169
185CSFML_NETWORK_API void sfPacket_writeString(sfPacket* packet, const char* string);
186CSFML_NETWORK_API void sfPacket_writeWideString(sfPacket* packet, const wchar_t* string);
187
188
189#endif // SFML_PACKET_H
signed int sfInt32
Definition Config.h:175
signed short sfInt16
Definition Config.h:171
signed char sfInt8
Definition Config.h:167
unsigned int sfUint32
Definition Config.h:176
int sfBool
Definition Config.h:153
unsigned char sfUint8
Definition Config.h:168
unsigned short sfUint16
Definition Config.h:172
#define CSFML_NETWORK_API
struct sfPacket sfPacket
size_t sfPacket_getDataSize(const sfPacket *packet)
Get the size of the data contained in a packet.
sfBool sfPacket_readBool(sfPacket *packet)
Functions to extract data from a packet.
void sfPacket_append(sfPacket *packet, const void *data, size_t sizeInBytes)
Append data to the end of a packet.
sfInt8 sfPacket_readInt8(sfPacket *packet)
const void * sfPacket_getData(const sfPacket *packet)
Get a pointer to the data contained in a packet.
void sfPacket_writeUint32(sfPacket *packet, sfUint32)
void sfPacket_writeUint16(sfPacket *packet, sfUint16)
sfUint32 sfPacket_readUint32(sfPacket *packet)
void sfPacket_writeWideString(sfPacket *packet, const wchar_t *string)
sfBool sfPacket_endOfPacket(const sfPacket *packet)
Tell if the reading position has reached the end of a packet.
void sfPacket_writeDouble(sfPacket *packet, double)
sfUint16 sfPacket_readUint16(sfPacket *packet)
void sfPacket_writeInt32(sfPacket *packet, sfInt32)
void sfPacket_destroy(sfPacket *packet)
Destroy a packet.
void sfPacket_writeInt8(sfPacket *packet, sfInt8)
sfBool sfPacket_canRead(const sfPacket *packet)
Test the validity of a packet, for reading.
sfUint8 sfPacket_readUint8(sfPacket *packet)
void sfPacket_writeUint8(sfPacket *packet, sfUint8)
double sfPacket_readDouble(sfPacket *packet)
void sfPacket_readWideString(sfPacket *packet, wchar_t *string)
void sfPacket_writeBool(sfPacket *packet, sfBool)
Functions to insert data into a packet.
float sfPacket_readFloat(sfPacket *packet)
void sfPacket_writeString(sfPacket *packet, const char *string)
sfInt16 sfPacket_readInt16(sfPacket *packet)
void sfPacket_writeFloat(sfPacket *packet, float)
sfPacket * sfPacket_create(void)
Create a new packet.
size_t sfPacket_getReadPosition(const sfPacket *packet)
Get the current reading position in the packet.
void sfPacket_readString(sfPacket *packet, char *string)
void sfPacket_writeInt16(sfPacket *packet, sfInt16)
void sfPacket_clear(sfPacket *packet)
Clear a packet.
sfInt32 sfPacket_readInt32(sfPacket *packet)
sfPacket * sfPacket_copy(const sfPacket *packet)
Create a new packet by copying an existing one.