Packet#

Functions

sfPacket *sfPacket_create(void)#

Create a new packet.

Returns:

A new sfPacket object

sfPacket *sfPacket_copy(const sfPacket *packet)#

Create a new packet by copying an existing one.

Parameters:
  • packet – Packet to copy

Returns:

A new sfPacket object which is a copy of packet

void sfPacket_destroy(sfPacket *packet)#

Destroy a packet.

Parameters:
  • packet – Packet to destroy

void sfPacket_append(sfPacket *packet, const void *data, size_t sizeInBytes)#

Append data to the end of a packet.

Parameters:
  • packet – Packet object

  • data – Pointer to the sequence of bytes to append

  • sizeInBytes – Number of bytes to append

void sfPacket_clear(sfPacket *packet)#

Clear a packet.

After calling Clear, the packet is empty.

Parameters:
  • packet – Packet object

const void *sfPacket_getData(const sfPacket *packet)#

Get a pointer to the data contained in a packet.

Warning: the returned pointer may become invalid after you append data to the packet, therefore it should never be stored. The return pointer is NULL if the packet is empty.

Parameters:
  • packet – Packet object

Returns:

Pointer to the data

size_t sfPacket_getDataSize(const sfPacket *packet)#

Get the size of the data contained in a packet.

This function returns the number of bytes pointed to by what sfPacket_getData returns.

Parameters:
  • packet – Packet object

Returns:

Data size, in bytes

sfBool sfPacket_endOfPacket(const sfPacket *packet)#

Tell if the reading position has reached the end of a packet.

This function is useful to know if there is some data left to be read, without actually reading it.

Parameters:
  • packet – Packet object

Returns:

sfTrue if all data was read, sfFalse otherwise

sfBool sfPacket_canRead(const sfPacket *packet)#

Test the validity of a packet, for reading.

This function allows to test the packet, to check if a reading operation was successful.

A packet will be in an invalid state if it has no more data to read.

Parameters:
  • packet – Packet object

Returns:

sfTrue if last data extraction from packet was successful

sfBool sfPacket_readBool(sfPacket *packet)#

Functions to extract data from a packet.

Parameters:
  • packet – Packet object

sfInt8 sfPacket_readInt8(sfPacket *packet)#
sfUint8 sfPacket_readUint8(sfPacket *packet)#
sfInt16 sfPacket_readInt16(sfPacket *packet)#
sfUint16 sfPacket_readUint16(sfPacket *packet)#
sfInt32 sfPacket_readInt32(sfPacket *packet)#
sfUint32 sfPacket_readUint32(sfPacket *packet)#
float sfPacket_readFloat(sfPacket *packet)#
double sfPacket_readDouble(sfPacket *packet)#
void sfPacket_readString(sfPacket *packet, char *string)#
void sfPacket_readWideString(sfPacket *packet, wchar_t *string)#
void sfPacket_writeBool(sfPacket *packet, sfBool)#

Functions to insert data into a packet.

Parameters:
  • packet – Packet object

void sfPacket_writeInt8(sfPacket *packet, sfInt8)#
void sfPacket_writeUint8(sfPacket *packet, sfUint8)#
void sfPacket_writeInt16(sfPacket *packet, sfInt16)#
void sfPacket_writeUint16(sfPacket *packet, sfUint16)#
void sfPacket_writeInt32(sfPacket *packet, sfInt32)#
void sfPacket_writeUint32(sfPacket *packet, sfUint32)#
void sfPacket_writeFloat(sfPacket *packet, float)#
void sfPacket_writeDouble(sfPacket *packet, double)#
void sfPacket_writeString(sfPacket *packet, const char *string)#
void sfPacket_writeWideString(sfPacket *packet, const wchar_t *string)#