Athena IO Library
athena::io::IStreamWriter Class Referenceabstract
Inheritance diagram for athena::io::IStreamWriter:
Inheritance graph
Collaboration diagram for athena::io::IStreamWriter:
Collaboration graph

Public Member Functions

virtual void seek (atInt64 pos, SeekOrigin origin=SeekOrigin::Current)=0
 Sets the buffers position relative to the specified position.
It seeks relative to the current position by default. More...
 
void seekAlign32 ()
 Sets the buffers position relative to the next 32-byte aligned position.

 
bool atEnd () const
 Returns whether or not the stream is at the end. More...
 
virtual atUint64 position () const =0
 Returns the current position in the stream. More...
 
virtual atUint64 length () const =0
 Returns whether or not the stream is at the end. More...
 
void writeUByte (atUint8 val)
 Writes a byte at the current position and advances the position by one byte. More...
 
void writeVal (atUint8 val)
 
void writeValLittle (atUint8 val)
 
void writeValBig (atUint8 val)
 
void writeByte (atInt8 val)
 Writes a byte at the current position and advances the position by one byte. More...
 
void writeVal (atInt8 val)
 
void writeValLittle (atInt8 val)
 
void writeValBig (atInt8 val)
 
virtual void writeUBytes (const atUint8 *data, atUint64 len)=0
 Writes the given buffer with the specified length, buffers can be bigger than the length however it's undefined behavior to try and write a buffer which is smaller than the given length. More...
 
void writeBytes (const void *data, atUint64 len)
 Writes the given buffer with the specified length, buffers can be bigger than the length however it's undefined behavior to try and write a buffer which is smaller than the given length. More...
 
void writeInt16 (atInt16 val)
 Writes an Int16 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (atInt16 val)
 
void writeInt16Little (atInt16 val)
 Writes an Int16 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (atInt16 val)
 
void writeInt16Big (atInt16 val)
 Writes an Int16 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (atInt16 val)
 
void writeUint16 (atUint16 val)
 Writes an Uint16 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (atUint16 val)
 
void writeUint16Little (atUint16 val)
 Writes an Uint16 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (atUint16 val)
 
void writeUint16Big (atUint16 val)
 Writes an Uint16 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (atUint16 val)
 
void writeInt32 (atInt32 val)
 Writes an Int32 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (atInt32 val)
 
void writeInt32Little (atInt32 val)
 Writes an Int32 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (atInt32 val)
 
void writeInt32Big (atInt32 val)
 Writes an Int32 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (atInt32 val)
 
void writeUint32 (atUint32 val)
 Writes an Uint32 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (atUint32 val)
 
void writeUint32Little (atUint32 val)
 Writes an Uint32 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (atUint32 val)
 
void writeUint32Big (atUint32 val)
 Writes an Uint32 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (atUint32 val)
 
void writeInt64 (atInt64 val)
 Writes an Int64 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (atInt64 val)
 
void writeInt64Little (atInt64 val)
 Writes an Int64 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (atInt64 val)
 
void writeInt64Big (atInt64 val)
 Writes an Int64 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (atInt64 val)
 
void writeUint64 (atUint64 val)
 Writes an Uint64 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (atUint64 val)
 
void writeUint64Little (atUint64 val)
 Writes an Uint64 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (atUint64 val)
 
void writeUint64Big (atUint64 val)
 Writes an Uint64 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (atUint64 val)
 
void writeFloat (float val)
 Writes an float to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (float val)
 
void writeFloatLittle (float val)
 Writes an float to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (float val)
 
void writeFloatBig (float val)
 Writes an float to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (float val)
 
void writeDouble (double val)
 Writes an double to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (double val)
 
void writeDoubleLittle (double val)
 Writes an double to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (double val)
 
void writeDoubleBig (double val)
 Writes an double to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (double val)
 
void writeBool (bool val)
 Writes an bool to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (bool val)
 
void writeValLittle (bool val)
 
void writeValBig (bool val)
 
void writeVec2f (const atVec2f &vec)
 Writes an atVec2f (8 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (const atVec2f &val)
 
void writeVec2fLittle (const atVec2f &vec)
 Writes an atVec2f (8 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (const atVec2f &val)
 
void writeVec2fBig (const atVec2f &vec)
 Writes an atVec2f (8 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (const atVec2f &val)
 
void writeVec3f (const atVec3f &vec)
 Writes an atVec3f (12 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (const atVec3f &val)
 
void writeVec3fLittle (const atVec3f &vec)
 Writes an atVec3f (12 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (const atVec3f &val)
 
void writeVec3fBig (const atVec3f &vec)
 Writes an atVec3f (12 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (const atVec3f &val)
 
void writeVec4f (const atVec4f &vec)
 Writes an atVec4f (16 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (const atVec4f &val)
 
void writeVec4fLittle (const atVec4f &vec)
 Writes an atVec4f (16 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (const atVec4f &val)
 
void writeVec4fBig (const atVec4f &vec)
 Writes an atVec4f (16 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (const atVec4f &val)
 
void writeVec2d (const atVec2d &vec)
 Writes an atVec2d (16 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (const atVec2d &val)
 
void writeVec2dLittle (const atVec2d &vec)
 Writes an atVec2d (16 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (const atVec2d &val)
 
void writeVec2dBig (const atVec2d &vec)
 Writes an atVec2d (16 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (const atVec2d &val)
 
void writeVec3d (const atVec3d &vec)
 Writes an atVec3d (24 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (const atVec3d &val)
 
void writeVec3dLittle (const atVec3d &vec)
 Writes an atVec3d (24 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (const atVec3d &val)
 
void writeVec3dBig (const atVec3d &vec)
 Writes an atVec3d (24 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (const atVec3d &val)
 
void writeVec4d (const atVec4d &vec)
 Writes an atVec4d (32 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeVal (const atVec4d &val)
 
void writeVec4dLittle (const atVec4d &vec)
 Writes an atVec4d (32 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform. More...
 
void writeValLittle (const atVec4d &val)
 
void writeVec4dBig (const atVec4d &vec)
 Writes an atVec4d (32 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform. More...
 
void writeValBig (const atVec4d &val)
 
void writeStringAsWString (const std::string &str, atInt32 fixedLen=-1)
 Converts a UTF8 string to a wide-char string in the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeStringAsWStringLittle (const std::string &str, atInt32 fixedLen=-1)
 Converts a UTF8 string to a wide-char string in the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeStringAsWStringBig (const std::string &str, atInt32 fixedLen=-1)
 Converts a UTF8 string to a wide-char string in the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings. More...
 
void writeString (const std::string &str, atInt32 fixedLen=-1)
 Writes an string to the buffer and advances the buffer. More...
 
void writeVal (const std::string &val)
 
void writeWString (const std::wstring &str, atInt32 fixedLen=-1)
 Writes an wstring to the buffer and advances the buffer. More...
 
void writeVal (const std::wstring &val)
 
void writeWStringLittle (const std::wstring &str, atInt32 fixedLen=-1)
 Writes an wstring to the buffer and advances the buffer. More...
 
void writeValLittle (const std::wstring &val)
 
void writeWStringBig (const std::wstring &str, atInt32 fixedLen=-1)
 Writes an wstring to the buffer and advances the buffer. More...
 
void writeValBig (const std::wstring &val)
 
void fill (atUint8 val, atUint64 length)
 
void fill (atInt8 val, atUint64 length)
 
template<class T >
void enumerate (const std::vector< T > &vector, typename std::enable_if< std::is_arithmetic< T >::value||std::is_same< T, atVec2f >::value||std::is_same< T, atVec3f >::value||std::is_same< T, atVec4f >::value >::type *=0)
 Performs automatic std::vector enumeration writes using numeric type T. More...
 
template<class T >
void enumerateLittle (const std::vector< T > &vector, typename std::enable_if< std::is_arithmetic< T >::value||std::is_same< T, atVec2f >::value||std::is_same< T, atVec3f >::value||std::is_same< T, atVec4f >::value >::type *=0)
 Performs automatic std::vector enumeration writes using numeric type T. More...
 
template<class T >
void enumerateBig (const std::vector< T > &vector, typename std::enable_if< std::is_arithmetic< T >::value||std::is_same< T, atVec2f >::value||std::is_same< T, atVec3f >::value||std::is_same< T, atVec4f >::value >::type *=0)
 Performs automatic std::vector enumeration writes using numeric type T. More...
 
template<class T >
void enumerate (const std::vector< T > &vector, typename std::enable_if<!std::is_arithmetic< T >::value &&!std::is_same< T, atVec2f >::value &&!std::is_same< T, atVec3f >::value &&!std::is_same< T, atVec4f >::value >::type *=0)
 Performs automatic std::vector enumeration writes using non-numeric type T. More...
 
- Public Member Functions inherited from athena::io::IStream
void setEndian (Endian endian)
 
Endian endian () const
 
bool isBigEndian () const
 
bool isLittleEndian () const
 
bool hasError () const
 

Additional Inherited Members

- Protected Member Functions inherited from athena::io::IStream
void setError ()
 
- Protected Attributes inherited from athena::io::IStream
bool m_hasError = false
 
Endian m_endian = BigEndian
 

Detailed Description

Definition at line 12 of file IStreamWriter.hpp.

Member Function Documentation

bool athena::io::IStreamWriter::atEnd ( ) const
inlinevirtual

Returns whether or not the stream is at the end.

Returns
True if at end; False otherwise.

Implements athena::io::IStream.

Definition at line 31 of file IStreamWriter.hpp.

Here is the call graph for this function:

template<class T >
void athena::io::IStreamWriter::enumerate ( const std::vector< T > &  vector,
typename std::enable_if< std::is_arithmetic< T >::value||std::is_same< T, atVec2f >::value||std::is_same< T, atVec3f >::value||std::is_same< T, atVec4f >::value >::type *  = 0 
)
inline

Performs automatic std::vector enumeration writes using numeric type T.

Parameters
vectorThe std::vector read from when writing data

Endianness is set with setEndian

Definition at line 1026 of file IStreamWriter.hpp.

template<class T >
void athena::io::IStreamWriter::enumerate ( const std::vector< T > &  vector,
typename std::enable_if<!std::is_arithmetic< T >::value &&!std::is_same< T, atVec2f >::value &&!std::is_same< T, atVec3f >::value &&!std::is_same< T, atVec4f >::value >::type *  = 0 
)
inline

Performs automatic std::vector enumeration writes using non-numeric type T.

Parameters
vectorThe std::vector read from when writing data

Definition at line 1072 of file IStreamWriter.hpp.

template<class T >
void athena::io::IStreamWriter::enumerateBig ( const std::vector< T > &  vector,
typename std::enable_if< std::is_arithmetic< T >::value||std::is_same< T, atVec2f >::value||std::is_same< T, atVec3f >::value||std::is_same< T, atVec4f >::value >::type *  = 0 
)
inline

Performs automatic std::vector enumeration writes using numeric type T.

Parameters
vectorThe std::vector read from when writing data

Endianness is big

Definition at line 1058 of file IStreamWriter.hpp.

template<class T >
void athena::io::IStreamWriter::enumerateLittle ( const std::vector< T > &  vector,
typename std::enable_if< std::is_arithmetic< T >::value||std::is_same< T, atVec2f >::value||std::is_same< T, atVec3f >::value||std::is_same< T, atVec4f >::value >::type *  = 0 
)
inline

Performs automatic std::vector enumeration writes using numeric type T.

Parameters
vectorThe std::vector read from when writing data

Endianness is little

Definition at line 1042 of file IStreamWriter.hpp.

virtual atUint64 athena::io::IStreamWriter::length ( ) const
pure virtual

Returns whether or not the stream is at the end.

Returns
True if at end; False otherwise.

Implements athena::io::IStream.

Implemented in athena::io::MemoryWriter, and athena::io::FileWriter.

Here is the caller graph for this function:

virtual atUint64 athena::io::IStreamWriter::position ( ) const
pure virtual

Returns the current position in the stream.

Returns
The current position in the stream.

Implements athena::io::IStream.

Implemented in athena::io::MemoryWriter, and athena::io::FileWriter.

Here is the caller graph for this function:

virtual void athena::io::IStreamWriter::seek ( atInt64  pos,
SeekOrigin  origin = SeekOrigin::Current 
)
pure virtual

Sets the buffers position relative to the specified position.
It seeks relative to the current position by default.

Parameters
positionwhere in the buffer to seek
originThe location to seek relative to

Implements athena::io::IStream.

Implemented in athena::io::MemoryCopyWriter, athena::io::MemoryWriter, and athena::io::FileWriter.

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeBool ( bool  val)
inline

Writes an bool to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
valThe value to write to the buffer

Definition at line 349 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeByte ( atInt8  val)
inline

Writes a byte at the current position and advances the position by one byte.

Parameters
valThe value to write

Definition at line 56 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeBytes ( const void *  data,
atUint64  len 
)
inline

Writes the given buffer with the specified length, buffers can be bigger than the length however it's undefined behavior to try and write a buffer which is smaller than the given length.

Parameters
dataThe buffer to write
lengthThe amount to write

Definition at line 75 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeDouble ( double  val)
inline

Writes an double to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
valThe value to write to the buffer

Definition at line 310 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeDoubleBig ( double  val)
inline

Writes an double to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 337 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeDoubleLittle ( double  val)
inline

Writes an double to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 325 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeFloat ( float  val)
inline

Writes an float to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
valThe value to write to the buffer

Definition at line 271 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeFloatBig ( float  val)
inline

Writes an float to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 298 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeFloatLittle ( float  val)
inline

Writes an float to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 286 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeInt16 ( atInt16  val)
inline

Writes an Int16 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
valThe value to write to the buffer

Definition at line 82 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeInt16Big ( atInt16  val)
inline

Writes an Int16 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 109 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeInt16Little ( atInt16  val)
inline

Writes an Int16 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 97 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeInt32 ( atInt32  val)
inline

Writes an Int32 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
valThe value to write to the buffer

Definition at line 145 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeInt32Big ( atInt32  val)
inline

Writes an Int32 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 172 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeInt32Little ( atInt32  val)
inline

Writes an Int32 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 160 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeInt64 ( atInt64  val)
inline

Writes an Int64 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
valThe value to write to the buffer

Definition at line 208 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeInt64Big ( atInt64  val)
inline

Writes an Int64 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 235 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeInt64Little ( atInt64  val)
inline

Writes an Int64 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 223 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeString ( const std::string &  str,
atInt32  fixedLen = -1 
)
inline

Writes an string to the buffer and advances the buffer.

Parameters
strThe string to write to the buffer
fixedLenIf not -1, the number of characters to zero-fill string to

Definition at line 858 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeStringAsWString ( const std::string &  str,
atInt32  fixedLen = -1 
)
inline

Converts a UTF8 string to a wide-char string in the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
strThe string to write to the buffer
fixedLenIf not -1, the number of characters to zero-fill string to

Endianness is set with setEndian

Definition at line 686 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeStringAsWStringBig ( const std::string &  str,
atInt32  fixedLen = -1 
)
inline

Converts a UTF8 string to a wide-char string in the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
strThe string to write to the buffer
fixedLenIf not -1, the number of characters to zero-fill string to

Endianness is big

Definition at line 802 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeStringAsWStringLittle ( const std::string &  str,
atInt32  fixedLen = -1 
)
inline

Converts a UTF8 string to a wide-char string in the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
strThe string to write to the buffer
fixedLenIf not -1, the number of characters to zero-fill string to

Endianness is little

Definition at line 744 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeUByte ( atUint8  val)
inline

Writes a byte at the current position and advances the position by one byte.

Parameters
valThe value to write

Definition at line 48 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

virtual void athena::io::IStreamWriter::writeUBytes ( const atUint8 *  data,
atUint64  len 
)
pure virtual

Writes the given buffer with the specified length, buffers can be bigger than the length however it's undefined behavior to try and write a buffer which is smaller than the given length.

Parameters
dataThe buffer to write
lengthThe amount to write

Implemented in athena::io::MemoryCopyWriter, athena::io::MemoryWriter, and athena::io::FileWriter.

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeUint16 ( atUint16  val)
inline

Writes an Uint16 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
valThe value to write to the buffer

Definition at line 121 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeUint16Big ( atUint16  val)
inline

Writes an Uint16 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 137 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeUint16Little ( atUint16  val)
inline

Writes an Uint16 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 129 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeUint32 ( atUint32  val)
inline

Writes an Uint32 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
valThe value to write to the buffer

Definition at line 184 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeUint32Big ( atUint32  val)
inline

Writes an Uint32 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 200 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeUint32Little ( atUint32  val)
inline

Writes an Uint32 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 192 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeUint64 ( atUint64  val)
inline

Writes an Uint64 to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
valThe value to write to the buffer

Definition at line 247 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeUint64Big ( atUint64  val)
inline

Writes an Uint64 to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 263 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeUint64Little ( atUint64  val)
inline

Writes an Uint64 to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
valThe value to write to the buffer

Definition at line 255 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec2d ( const atVec2d vec)
inline

Writes an atVec2d (16 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
vecThe value to write to the buffer

Definition at line 521 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec2dBig ( const atVec2d vec)
inline

Writes an atVec2d (16 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 557 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec2dLittle ( const atVec2d vec)
inline

Writes an atVec2d (16 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 543 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec2f ( const atVec2f vec)
inline

Writes an atVec2f (8 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
vecThe value to write to the buffer

Definition at line 359 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec2fBig ( const atVec2f vec)
inline

Writes an atVec2f (8 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 395 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec2fLittle ( const atVec2f vec)
inline

Writes an atVec2f (8 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 381 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec3d ( const atVec3d vec)
inline

Writes an atVec3d (24 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
vecThe value to write to the buffer

Definition at line 571 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec3dBig ( const atVec3d vec)
inline

Writes an atVec3d (24 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 610 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec3dLittle ( const atVec3d vec)
inline

Writes an atVec3d (24 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 595 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec3f ( const atVec3f vec)
inline

Writes an atVec3f (12 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
vecThe value to write to the buffer

Definition at line 409 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec3fBig ( const atVec3f vec)
inline

Writes an atVec3f (12 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 448 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec3fLittle ( const atVec3f vec)
inline

Writes an atVec3f (12 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 433 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec4d ( const atVec4d vec)
inline

Writes an atVec4d (32 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
vecThe value to write to the buffer

Definition at line 625 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec4dBig ( const atVec4d vec)
inline

Writes an atVec4d (32 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 667 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec4dLittle ( const atVec4d vec)
inline

Writes an atVec4d (32 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 651 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec4f ( const atVec4f vec)
inline

Writes an atVec4f (16 bytes) to the buffer and advances the buffer. It also swaps the bytes depending on the platform and Stream settings.

Parameters
vecThe value to write to the buffer

Definition at line 463 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec4fBig ( const atVec4f vec)
inline

Writes an atVec4f (16 bytes) to the buffer and advances the buffer. It also swaps the bytes against big depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 505 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeVec4fLittle ( const atVec4f vec)
inline

Writes an atVec4f (16 bytes) to the buffer and advances the buffer. It also swaps the bytes against little depending on the platform.

Parameters
vecThe value to write to the buffer

Definition at line 489 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeWString ( const std::wstring &  str,
atInt32  fixedLen = -1 
)
inline

Writes an wstring to the buffer and advances the buffer.

Parameters
strThe string to write to the buffer
fixedLenIf not -1, the number of characters to zero-fill string to

Endianness is set with setEndian

Definition at line 897 of file IStreamWriter.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void athena::io::IStreamWriter::writeWStringBig ( const std::wstring &  str,
atInt32  fixedLen = -1 
)
inline

Writes an wstring to the buffer and advances the buffer.

Parameters
strThe string to write to the buffer
fixedLenIf not -1, the number of characters to zero-fill string to

Endianness is big

Definition at line 975 of file IStreamWriter.hpp.

Here is the call graph for this function:

void athena::io::IStreamWriter::writeWStringLittle ( const std::wstring &  str,
atInt32  fixedLen = -1 
)
inline

Writes an wstring to the buffer and advances the buffer.

Parameters
strThe string to write to the buffer
fixedLenIf not -1, the number of characters to zero-fill string to

Endianness is little

Definition at line 936 of file IStreamWriter.hpp.

Here is the call graph for this function:


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