CommonLibSSE NG
Loading...
Searching...
No Matches
RE::NiBinaryStream Class Referenceabstract

#include <NiBinaryStream.h>

Inheritance diagram for RE::NiBinaryStream:
RE::BSResourceNiBinaryStream RE::NiFile RE::BSFile RE::Archive

Classes

struct  BufferInfo
 

Public Types

using int_type = std::int32_t
 
using pos_type = std::uint32_t
 
using off_type = std::int32_t
 

Public Member Functions

 NiBinaryStream ()
 
virtual ~NiBinaryStream ()
 
virtual bool good () const =0
 
virtual void seek (std::int32_t a_numBytes)=0
 
virtual std::uint32_t tell () const
 
virtual void get_info (BufferInfo &a_buf)
 
virtual void set_endian_swap (bool a_doSwap)=0
 
template<class CharT >
bool get (CharT &a_ch)
 
template<class CharT >
bool read (CharT *a_str, std::uint32_t a_count)
 
template<class CharT >
bool put (CharT a_ch)
 
template<class CharT >
bool write (const CharT *a_str, std::uint32_t a_count)
 

Static Public Attributes

static constexpr auto RTTI = RTTI_NiBinaryStream
 

Protected Types

using ReadFn = std::uint32_t(NiBinaryStream *a_this, void *a_buffer, std::uint32_t a_bytes, std::uint32_t *a_componentSizes, std::uint32_t a_numComponents)
 
using WriteFn = std::uint32_t(NiBinaryStream *a_this, const void *a_buffer, std::uint32_t a_bytes, std::uint32_t *a_componentSizes, std::uint32_t a_numComponents)
 

Protected Member Functions

std::uint32_t binary_read (void *a_buffer, std::uint32_t a_totalBytes, std::uint32_t *a_componentSizes, std::uint32_t a_numComponents=1)
 
std::uint32_t binary_write (const void *a_buffer, std::uint32_t a_totalBytes, std::uint32_t *a_componentSizes, std::uint32_t a_numComponents=1)
 

Protected Attributes

std::uint32_t _absoluteCurrentPos
 
std::uint32_t _pad0C
 
ReadFn_readFn
 
WriteFn_writeFn
 

Member Typedef Documentation

◆ int_type

using RE::NiBinaryStream::int_type = std::int32_t

◆ off_type

using RE::NiBinaryStream::off_type = std::int32_t

◆ pos_type

using RE::NiBinaryStream::pos_type = std::uint32_t

◆ ReadFn

using RE::NiBinaryStream::ReadFn = std::uint32_t(NiBinaryStream* a_this, void* a_buffer, std::uint32_t a_bytes, std::uint32_t* a_componentSizes, std::uint32_t a_numComponents)
protected

◆ WriteFn

using RE::NiBinaryStream::WriteFn = std::uint32_t(NiBinaryStream* a_this, const void* a_buffer, std::uint32_t a_bytes, std::uint32_t* a_componentSizes, std::uint32_t a_numComponents)
protected

Constructor & Destructor Documentation

◆ NiBinaryStream()

RE::NiBinaryStream::NiBinaryStream ( )

◆ ~NiBinaryStream()

virtual RE::NiBinaryStream::~NiBinaryStream ( )
virtual

Member Function Documentation

◆ binary_read()

std::uint32_t RE::NiBinaryStream::binary_read ( void *  a_buffer,
std::uint32_t  a_totalBytes,
std::uint32_t *  a_componentSizes,
std::uint32_t  a_numComponents = 1 
)
protected

◆ binary_write()

std::uint32_t RE::NiBinaryStream::binary_write ( const void *  a_buffer,
std::uint32_t  a_totalBytes,
std::uint32_t *  a_componentSizes,
std::uint32_t  a_numComponents = 1 
)
protected

◆ get()

template<class CharT >
bool RE::NiBinaryStream::get ( CharT &  a_ch)
inline

◆ get_info()

virtual void RE::NiBinaryStream::get_info ( BufferInfo a_buf)
virtual

Reimplemented in RE::BSResourceNiBinaryStream, and RE::NiFile.

◆ good()

virtual bool RE::NiBinaryStream::good ( ) const
pure virtual

◆ put()

template<class CharT >
bool RE::NiBinaryStream::put ( CharT  a_ch)
inline

◆ read()

template<class CharT >
bool RE::NiBinaryStream::read ( CharT *  a_str,
std::uint32_t  a_count 
)
inline

◆ seek()

virtual void RE::NiBinaryStream::seek ( std::int32_t  a_numBytes)
pure virtual

◆ set_endian_swap()

virtual void RE::NiBinaryStream::set_endian_swap ( bool  a_doSwap)
pure virtual

◆ tell()

virtual std::uint32_t RE::NiBinaryStream::tell ( ) const
virtual

Reimplemented in RE::BSResourceNiBinaryStream.

◆ write()

template<class CharT >
bool RE::NiBinaryStream::write ( const CharT *  a_str,
std::uint32_t  a_count 
)
inline

Member Data Documentation

◆ _absoluteCurrentPos

std::uint32_t RE::NiBinaryStream::_absoluteCurrentPos
protected

◆ _pad0C

std::uint32_t RE::NiBinaryStream::_pad0C
protected

◆ _readFn

ReadFn* RE::NiBinaryStream::_readFn
protected

◆ _writeFn

WriteFn* RE::NiBinaryStream::_writeFn
protected

◆ RTTI

constexpr auto RE::NiBinaryStream::RTTI = RTTI_NiBinaryStream
inlinestaticconstexpr

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