VR-Engage  2.2
Loading...
Searching...
No Matches
makRadarFx::DtBigEndianStreamWriter Class Reference

Detailed Description

This class extends DtStreamWriter to write and encode data into a byte array in big endian format. It overrides the methods that need byte swapping to convert from the system's native format to big endian.

#include <byteStream.h>

Inheritance diagram for makRadarFx::DtBigEndianStreamWriter:
[legend]

Public Member Functions

 DtBigEndianStreamWriter (int length)
 
 DtBigEndianStreamWriter (unsigned char *buffer, int length)
 
virtual ~DtBigEndianStreamWriter ()
 
Big Endian Value Writing Methods

Each method writes a value in big endian format and advances the write position

void writeInt16 (short num)
 
void writeUInt16 (unsigned short num)
 
void writeInt32 (int num)
 
void writeUInt32 (unsigned int num)
 
void writeInt64 (long long num)
 
void writeUInt64 (unsigned long long num)
 
void writeSingle (float num)
 
void writeDouble (double num)
 
- Public Member Functions inherited from makRadarFx::DtStreamWriter
 DtStreamWriter (int length)
 
 DtStreamWriter (unsigned char *buffer, int length)
 
virtual ~DtStreamWriter ()
 
virtual unsigned char * buffer ()
 
virtual int length ()
 
virtual void writeBool (bool b)
 
virtual void writeInt8 (char num)
 
virtual void writeUInt8 (unsigned char num)
 
virtual void writeString (std::string &str)
 
virtual void writeVector (DtVector &vec)
 
virtual void writeTaitBryan (DtTaitBryan &tb)
 
virtual void writeQuaternion (const DtQuaternion &q)
 
virtual void writeEntityId (const DtEntityIdentifier &id)
 
virtual void writeEntityType (const DtEntityType &type)
 
virtual void writeBytes (unsigned char *buffer, int length)
 

Additional Inherited Members

void encodeStringSize (int size)
 
unsigned char * myBuffer
 
unsigned char * myWriteHead
 
int myLength
 
bool myShouldDelete
 

Constructor & Destructor Documentation

◆ DtBigEndianStreamWriter() [1/2]

makRadarFx::DtBigEndianStreamWriter::DtBigEndianStreamWriter ( int length)

Constructor that creates an internal buffer.

Parameters
lengthSize of the internal buffer to create

Creates a new big endian stream writer with an internal buffer of the specified size. Care must be taken to allocate enough space for all the intended writes.

References makRadarFx::DtStreamWriter::length().

◆ DtBigEndianStreamWriter() [2/2]

makRadarFx::DtBigEndianStreamWriter::DtBigEndianStreamWriter ( unsigned char * buffer,
int length )

Constructor that uses an existing buffer.

Parameters
bufferPointer to the buffer to write to
lengthSize of the buffer in bytes

Creates a new big endian stream writer using the provided buffer. Care must be taken to ensure the buffer has enough space for all writes.

References makRadarFx::DtStreamWriter::buffer(), and makRadarFx::DtStreamWriter::length().

◆ ~DtBigEndianStreamWriter()

virtual makRadarFx::DtBigEndianStreamWriter::~DtBigEndianStreamWriter ( )
virtual

Virtual destructor.

Member Function Documentation

◆ writeInt16()

void makRadarFx::DtBigEndianStreamWriter::writeInt16 ( short num)
virtual

Writes a 16-bit signed integer in big endian format.

Parameters
numValue to write

Reimplemented from makRadarFx::DtStreamWriter.

◆ writeUInt16()

void makRadarFx::DtBigEndianStreamWriter::writeUInt16 ( unsigned short num)
virtual

Writes a 16-bit unsigned integer in big endian format.

Parameters
numValue to write

Reimplemented from makRadarFx::DtStreamWriter.

◆ writeInt32()

void makRadarFx::DtBigEndianStreamWriter::writeInt32 ( int num)
virtual

Writes a 32-bit signed integer in big endian format.

Parameters
numValue to write

Reimplemented from makRadarFx::DtStreamWriter.

◆ writeUInt32()

void makRadarFx::DtBigEndianStreamWriter::writeUInt32 ( unsigned int num)
virtual

Writes a 32-bit unsigned integer in big endian format.

Parameters
numValue to write

Reimplemented from makRadarFx::DtStreamWriter.

◆ writeInt64()

void makRadarFx::DtBigEndianStreamWriter::writeInt64 ( long long num)
virtual

Writes a 64-bit signed integer in big endian format.

Parameters
numValue to write

Reimplemented from makRadarFx::DtStreamWriter.

◆ writeUInt64()

void makRadarFx::DtBigEndianStreamWriter::writeUInt64 ( unsigned long long num)
virtual

Writes a 64-bit unsigned integer in big endian format.

Parameters
numValue to write

Reimplemented from makRadarFx::DtStreamWriter.

◆ writeSingle()

void makRadarFx::DtBigEndianStreamWriter::writeSingle ( float num)
virtual

Writes a 32-bit floating point value in big endian format.

Parameters
numValue to write

Reimplemented from makRadarFx::DtStreamWriter.

◆ writeDouble()

void makRadarFx::DtBigEndianStreamWriter::writeDouble ( double num)
virtual

Writes a 64-bit floating point value in big endian format.

Parameters
numValue to write

Reimplemented from makRadarFx::DtStreamWriter.


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