Panda3D
Public Member Functions | Static Public Member Functions | List of all members
DatagramIterator Class Reference

A class to retrieve the individual data elements previously stored in a Datagram. Elements may be retrieved one at a time; it is up to the caller to know the correct type and order of each element. More...

Public Member Functions

 __init__ ()
 
 __init__ (const Datagram datagram, size_t offset)
 
 __init__ (const DatagramIterator copy)
 
str extractBytes (size_t size)
 Extracts the indicated number of bytes in the datagram and returns them as a string. More...
 
PNFloat32 getBeFloat32 ()
 Extracts a 32-bit big-endian single-precision floating-point number. More...
 
PNFloat64 getBeFloat64 ()
 Extracts a 64-bit big-endian floating-point number. More...
 
PNInt16 getBeInt16 ()
 Extracts a signed 16-bit big-endian integer. More...
 
PNInt32 getBeInt32 ()
 Extracts a signed 32-bit big-endian integer. More...
 
PNInt64 getBeInt64 ()
 Extracts a signed 64-bit big-endian integer. More...
 
PNUint16 getBeUint16 ()
 Extracts an unsigned 16-bit big-endian integer. More...
 
PNUint32 getBeUint32 ()
 Extracts an unsigned 32-bit big-endian integer. More...
 
PNUint64 getBeUint64 ()
 Extracts an unsigned 64-bit big-endian integer. More...
 
bool getBool ()
 Extracts a boolean value. More...
 
size_t getCurrentIndex ()
 Returns the current position within the datagram of the next piece of data to extract. More...
 
const Datagram getDatagram ()
 Return the datagram of this iterator. More...
 
str getFixedString (size_t size)
 Extracts a fixed-length string. However, if a zero byte occurs within the string, it marks the end of the string. More...
 
PNFloat32 getFloat32 ()
 Extracts a 32-bit single-precision floating-point number. More...
 
PNFloat64 getFloat64 ()
 Extracts a 64-bit floating-point number. More...
 
PNInt16 getInt16 ()
 Extracts a signed 16-bit integer. More...
 
PNInt32 getInt32 ()
 Extracts a signed 32-bit integer. More...
 
PNInt64 getInt64 ()
 Extracts a signed 64-bit integer. More...
 
PNInt8 getInt8 ()
 Extracts a signed 8-bit integer. More...
 
str getRemainingBytes ()
 Returns the remaining bytes in the datagram as a string, but does not extract them from the iterator. More...
 
int getRemainingSize ()
 Return the bytes left in the datagram. More...
 
float getStdfloat ()
 Extracts either a 32-bit or a 64-bit floating-point number, according to Datagram::set_stdfloat_double(). More...
 
str getString ()
 Extracts a variable-length string. More...
 
str getString32 ()
 Extracts a variable-length string with a 32-bit length field. More...
 
PNUint16 getUint16 ()
 Extracts an unsigned 16-bit integer. More...
 
PNUint32 getUint32 ()
 Extracts an unsigned 32-bit integer. More...
 
PNUint64 getUint64 ()
 Extracts an unsigned 64-bit integer. More...
 
PNUint8 getUint8 ()
 Extracts an unsigned 8-bit integer. More...
 
str getWstring ()
 Extracts a variable-length wstring (with a 32-bit length field). More...
 
str getZString ()
 Extracts a variable-length string, as a NULL-terminated string. More...
 
DatagramIterator operator= (const DatagramIterator copy)
 
 output (Ostream out)
 Write a string representation of this instance to <out>. More...
 
 skipBytes (size_t size)
 Skips over the indicated number of bytes in the datagram. More...
 
 write (Ostream out, unsigned int indent)
 Write a string representation of this instance to <out>. More...
 

Static Public Member Functions

static TypeHandle getClassType ()
 

Detailed Description

A class to retrieve the individual data elements previously stored in a Datagram. Elements may be retrieved one at a time; it is up to the caller to know the correct type and order of each element.

Member Function Documentation

◆ __init__() [1/3]

__init__ ( )

◆ __init__() [2/3]

__init__ ( const Datagram  datagram,
size_t  offset 
)

◆ __init__() [3/3]

__init__ ( const DatagramIterator  copy)

◆ extractBytes()

str extractBytes ( size_t  size)

Extracts the indicated number of bytes in the datagram and returns them as a string.

◆ getBeFloat32()

PNFloat32 getBeFloat32 ( )

Extracts a 32-bit big-endian single-precision floating-point number.

◆ getBeFloat64()

PNFloat64 getBeFloat64 ( )

Extracts a 64-bit big-endian floating-point number.

◆ getBeInt16()

PNInt16 getBeInt16 ( )

Extracts a signed 16-bit big-endian integer.

◆ getBeInt32()

PNInt32 getBeInt32 ( )

Extracts a signed 32-bit big-endian integer.

◆ getBeInt64()

PNInt64 getBeInt64 ( )

Extracts a signed 64-bit big-endian integer.

◆ getBeUint16()

PNUint16 getBeUint16 ( )

Extracts an unsigned 16-bit big-endian integer.

◆ getBeUint32()

PNUint32 getBeUint32 ( )

Extracts an unsigned 32-bit big-endian integer.

◆ getBeUint64()

PNUint64 getBeUint64 ( )

Extracts an unsigned 64-bit big-endian integer.

◆ getBool()

bool getBool ( )

Extracts a boolean value.

◆ getClassType()

static TypeHandle getClassType ( )
static

◆ getCurrentIndex()

size_t getCurrentIndex ( )

Returns the current position within the datagram of the next piece of data to extract.

◆ getDatagram()

const Datagram getDatagram ( )

Return the datagram of this iterator.

◆ getFixedString()

str getFixedString ( size_t  size)

Extracts a fixed-length string. However, if a zero byte occurs within the string, it marks the end of the string.

◆ getFloat32()

PNFloat32 getFloat32 ( )

Extracts a 32-bit single-precision floating-point number.

◆ getFloat64()

PNFloat64 getFloat64 ( )

Extracts a 64-bit floating-point number.

◆ getInt16()

PNInt16 getInt16 ( )

Extracts a signed 16-bit integer.

◆ getInt32()

PNInt32 getInt32 ( )

Extracts a signed 32-bit integer.

◆ getInt64()

PNInt64 getInt64 ( )

Extracts a signed 64-bit integer.

◆ getInt8()

PNInt8 getInt8 ( )

Extracts a signed 8-bit integer.

◆ getRemainingBytes()

str getRemainingBytes ( )

Returns the remaining bytes in the datagram as a string, but does not extract them from the iterator.

◆ getRemainingSize()

int getRemainingSize ( )

Return the bytes left in the datagram.

◆ getStdfloat()

float getStdfloat ( )

Extracts either a 32-bit or a 64-bit floating-point number, according to Datagram::set_stdfloat_double().

◆ getString()

str getString ( )

Extracts a variable-length string.

◆ getString32()

str getString32 ( )

Extracts a variable-length string with a 32-bit length field.

◆ getUint16()

PNUint16 getUint16 ( )

Extracts an unsigned 16-bit integer.

◆ getUint32()

PNUint32 getUint32 ( )

Extracts an unsigned 32-bit integer.

◆ getUint64()

PNUint64 getUint64 ( )

Extracts an unsigned 64-bit integer.

◆ getUint8()

PNUint8 getUint8 ( )

Extracts an unsigned 8-bit integer.

◆ getWstring()

str getWstring ( )

Extracts a variable-length wstring (with a 32-bit length field).

◆ getZString()

str getZString ( )

Extracts a variable-length string, as a NULL-terminated string.

◆ operator=()

DatagramIterator operator= ( const DatagramIterator  copy)

◆ output()

output ( Ostream  out)

Write a string representation of this instance to <out>.

◆ skipBytes()

skipBytes ( size_t  size)

Skips over the indicated number of bytes in the datagram.

◆ write()

write ( Ostream  out,
unsigned int  indent 
)

Write a string representation of this instance to <out>.