dl
dl::StreamInput类 参考

二进制输入流 更多...

#include <dl_stream_input.h>

Public 成员函数

 StreamInput ()
 
 ~StreamInput ()
 
const std::byte * GetBuffer ()
 
size_t GetSize ()
 
template<IsCopyable T>
void Read (T *data)
 
template<typename T>
void Read64 (T *data)
 写入一个类型,写为64位,用于在64位平台的大小不一致,所以特殊处理
 
template<typename T>
void ReadSize (T *data)
 读入容器的大小,并修改容器至目标大小
 
void ReadCString (const char *str)
 写入C风格字符串
 
template<typename T>
bool StreamReadEqual (const T &v)
 读取后判断相等
 
template<typename T>
void Read (std::list< T > *container)
 
template<typename T>
void Read (std::vector< T > *container)
 
void Read (std::string *str)
 
template<typename K, typename V>
void Read (std::map< K, V > *container)
 
template<typename K, typename V>
void Read (std::unordered_map< K, V > *container)
 
bool Read (void *data, size_t byte_count)
 
bool LoadFromFile (std::string_view path_name, bool decompress=false, size_t length=0)
 从文件读到内存,可选长度
 
void LoadFromMemory (BufferView buf, bool decompress=false)
 
size_t GetPos ()
 
size_t GetRemain ()
 
void SetPos (size_t pos)
 
std::byte * GetCurrent ()
 
bool IsEnd ()
 

详细描述

二进制输入流

在文件 dl_stream_input.h31 行定义.

构造及析构函数说明

◆ StreamInput()

dl::StreamInput::StreamInput ( )

◆ ~StreamInput()

dl::StreamInput::~StreamInput ( )

成员函数说明

◆ GetBuffer()

const std::byte * dl::StreamInput::GetBuffer ( )

◆ GetCurrent()

std::byte * dl::StreamInput::GetCurrent ( )
inline

在文件 dl_stream_input.h197 行定义.

◆ GetPos()

size_t dl::StreamInput::GetPos ( )
inline

在文件 dl_stream_input.h193 行定义.

◆ GetRemain()

size_t dl::StreamInput::GetRemain ( )
inline

在文件 dl_stream_input.h194 行定义.

◆ GetSize()

size_t dl::StreamInput::GetSize ( )
inline

在文件 dl_stream_input.h38 行定义.

◆ IsEnd()

bool dl::StreamInput::IsEnd ( )

◆ LoadFromFile()

bool dl::StreamInput::LoadFromFile ( std::string_view path_name,
bool decompress = false,
size_t length = 0 )

从文件读到内存,可选长度

注解
需要解压时,必须全部读完,将忽略length

◆ LoadFromMemory()

void dl::StreamInput::LoadFromMemory ( BufferView buf,
bool decompress = false )

◆ Read() [1/7]

template<typename T>
void dl::StreamInput::Read ( std::list< T > * container)
inline

在文件 dl_stream_input.h92 行定义.

◆ Read() [2/7]

template<typename K, typename V>
void dl::StreamInput::Read ( std::map< K, V > * container)
inline

在文件 dl_stream_input.h142 行定义.

◆ Read() [3/7]

void dl::StreamInput::Read ( std::string * str)
inline

在文件 dl_stream_input.h125 行定义.

◆ Read() [4/7]

template<typename K, typename V>
void dl::StreamInput::Read ( std::unordered_map< K, V > * container)
inline

在文件 dl_stream_input.h162 行定义.

◆ Read() [5/7]

template<typename T>
void dl::StreamInput::Read ( std::vector< T > * container)
inline

在文件 dl_stream_input.h109 行定义.

◆ Read() [6/7]

template<IsCopyable T>
void dl::StreamInput::Read ( T * data)
inline

在文件 dl_stream_input.h41 行定义.

◆ Read() [7/7]

bool dl::StreamInput::Read ( void * data,
size_t byte_count )

◆ Read64()

template<typename T>
void dl::StreamInput::Read64 ( T * data)
inline

写入一个类型,写为64位,用于在64位平台的大小不一致,所以特殊处理

在文件 dl_stream_input.h50 行定义.

◆ ReadCString()

void dl::StreamInput::ReadCString ( const char * str)
inline

写入C风格字符串

在文件 dl_stream_input.h69 行定义.

◆ ReadSize()

template<typename T>
void dl::StreamInput::ReadSize ( T * data)
inline

读入容器的大小,并修改容器至目标大小

在文件 dl_stream_input.h60 行定义.

◆ SetPos()

void dl::StreamInput::SetPos ( size_t pos)

◆ StreamReadEqual()

template<typename T>
bool dl::StreamInput::StreamReadEqual ( const T & v)
inline

读取后判断相等

在文件 dl_stream_input.h83 行定义.


该类的文档由以下文件生成: