CRIWARE Unity Plugin Manual  Last Updated: 2024-07-12
CriFsLoader类 参考

用于将文件加载至内存的模块。 更多...

继承自 CriDisposable .

Public 类型

enum  Status { Stop, Loading, Complete, Error }
 显示加载器的状态的值。 更多...
 

Public 成员函数

override void Dispose ()
 丢弃加载器。 更多...
 
void Load (CriFsBinder binder, string path, long fileOffset, long loadSize, byte[] buffer)
 开始数据加载。 更多...
 
void LoadById (CriFsBinder binder, int id, long fileOffset, long loadSize, byte[] buffer)
 开始数据加载。 更多...
 
void LoadWithoutDecompression (CriFsBinder binder, string path, long fileOffset, long loadSize, byte[] buffer)
 在不展开压缩数据的情况下加载至内存中。 更多...
 
void LoadWithoutDecompressionById (CriFsBinder binder, int id, long fileOffset, long loadSize, byte[] buffer)
 在不展开压缩数据的情况下加载至内存中。 更多...
 
void DecompressData (long srcSize, byte[] srcBuffer, long dstSize, byte[] dstBuffer)
 展开内存中存放的压缩数据。 更多...
 
void Stop ()
 停止加载处理。 更多...
 
Status GetStatus ()
 获取加载器的状态。 更多...
 
void SetReadUnitSize (int unit_size)
 设置单位读取大小 更多...
 

详细描述

用于将文件加载至内存的模块。

说明:
用于将文件加载至内存的模块。
通过与 CriWare.CriFsBinder 一起使用,也可以读取CPK文件内的内容。
参见
CriFsBinder

成员枚举类型说明

enum Status
strong

显示加载器的状态的值。

参见
CriFsLoader::GetStatus
枚举值
Stop 

已停止

Loading 

加载中

Complete 

加载完成

Error 

发生错误

成员函数说明

override void Dispose ( )
inline

丢弃加载器。

注意:
如果在加载处理过程中丢弃了加载器, 则可能会导致本函数内的处理长时间被阻断。
void Load ( CriFsBinder  binder,
string  path,
long  fileOffset,
long  loadSize,
byte[]  buffer 
)
inline

开始数据加载。

参数
binderBinder
path文件路径名
fileOffset从文件开头的偏移位置(单位是字节)
loadSize加载要求大小(单位是字节)
buffer加载目标缓冲区
说明:
用指定的Binder和文件名开始数据读取。
从文件内的第fileOffset字节开始,读取loadSize字节的内容。
本函数是即时返回型函数。
要获取加载的完成状态时,请使用 CriWare.CriFsLoader::GetStatus 函数。
参见
CriFsLoader::GetStatus
void LoadById ( CriFsBinder  binder,
int  id,
long  fileOffset,
long  loadSize,
byte[]  buffer 
)
inline

开始数据加载。

参数
binderBinder
id文件ID
fileOffset从文件开头的偏移位置(单位是字节)
loadSize加载要求大小(单位是字节)
buffer加载目标缓冲区
说明:
用指定的Binder和文件ID开始数据读取。
从文件内的第fileOffset字节开始,读取loadSize字节的内容。
本函数是即时返回型函数。
要获取加载的完成状态时,请使用 CriWare.CriFsLoader::GetStatus 函数。
参见
CriFsLoader::GetStatus
void LoadWithoutDecompression ( CriFsBinder  binder,
string  path,
long  fileOffset,
long  loadSize,
byte[]  buffer 
)
inline

在不展开压缩数据的情况下加载至内存中。

参数
binderBinder
path文件路径名
fileOffset从文件开头的偏移位置(单位是字节)
loadSize加载要求大小(单位是字节)
buffer加载目标缓冲区
说明:
用指定的Binder和文件名开始数据读取。
从文件内的第fileOffset字节开始,读取loadSize字节的内容。
CriWare.CriFsLoader::Load 函数不同,即使数据处于压缩状态,也可以在不展开数据的情况下,加载至内存上。
本函数是即时返回型函数。
要获取加载的完成状态时,请使用 CriWare.CriFsLoader::GetStatus 函数。
参见
CriFsLoader::GetStatus, CriFsLoader::LoadWithoutDecompressionById, CriFsLoader::DecompressData
void LoadWithoutDecompressionById ( CriFsBinder  binder,
int  id,
long  fileOffset,
long  loadSize,
byte[]  buffer 
)
inline

在不展开压缩数据的情况下加载至内存中。

参数
binderBinder
id文件ID
fileOffset从文件开头的偏移位置(单位是字节)
loadSize加载要求大小(单位是字节)
buffer加载目标缓冲区
说明:
用指定的Binder和文件ID开始数据读取。
从文件内的第fileOffset字节开始,读取loadSize字节的内容。
CriWare.CriFsLoader::Load 函数不同,即使数据处于压缩状态,也可以在不展开数据的情况下,加载至内存上。
本函数是即时返回型函数。
要获取加载的完成状态时,请使用 CriWare.CriFsLoader::GetStatus 函数。
参见
CriFsLoader::GetStatus, CriFsLoader::LoadWithoutDecompression, CriFsLoader::DecompressData
void DecompressData ( long  srcSize,
byte[]  srcBuffer,
long  dstSize,
byte[]  dstBuffer 
)
inline

展开内存中存放的压缩数据。

参数
srcSize压缩数据大小(单位是字节)
srcBuffer压缩数据所在的缓冲区
dstSize展开目标缓冲区的大小(单位是字节)
dstBuffer展开目标缓冲区
说明:
将内存上配置的压缩数据展开至其他的内存区域。
本函数是即时返回型函数。
要获取加载的完成状态时,请使用 criFsLoader_GetStatus 函数。
备注:
如果输入的数据未压缩,则本函数会将输入的数据原封不动地复制到输出目标地址。
注意:
本函数仅支持CRI特有的软件压缩编解码器。
如果使用硬件解码器,或者使用平台专用的编解码器, 则用本函数无法展开数据。
参见
CriFsLoader::GetStatus, CriFsLoader::LoadWithoutDecompression, CriFsLoader::LoadWithoutDecompressionById
void Stop ( )
inline

停止加载处理。

说明:
停止加载处理。

本函数是即时返回型函数。
要获取停止状态时,请使用 CriWare.CriFsLoader::GetStatus 函数。
注意:
即使执行本函数,在加载器的状态从 CriWare.CriFsLoader::Status 更改为 Stop 前, 可能会持续向缓冲区传送数据。
参见
CriFsLoader::GetStatus
Status GetStatus ( )
inline

获取加载器的状态。

返回
状态
说明:
获取加载器的状态。
参见
CriFsLoader::Status
void SetReadUnitSize ( int  unit_size)
inline

设置单位读取大小

参数
unit_size单位读取大小
说明:
设置单位读取大小。 CriFsLoader在处理较大的读取要求时,会将其分成多个小单位的读取处理后连续执行。
使用该函数可以更改单位读取处理的大小。
取消读取要求和高优先级的读取处理的中断处理等操作只能在单位读取大小的边界进行处理。
因此,通过将单位大小设置为较小的值,可以提升I/O处理的响应性。
相反,如果将单位大小设置为较大的值,则文件单位的读取速度会提升。
参见
CriFsLoader::Status

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