Foxit PDF SDK
CFX_CachedFileRead类 参考

缓存文件读取接口。 更多...

类 CFX_CachedFileRead 继承关系图:
IFX_FileStream IFX_FileRead IFX_FileWrite IFX_StreamRead IFX_StreamWrite

Public 成员函数

 CFX_CachedFileRead ()
 构造函数。
 
virtual ~CFX_CachedFileRead ()
 析构函数。
 
FX_BOOL AttachFile (IFX_FileRead *pFile, FX_BOOL bTakeOver)
 附加文件读取。 更多...
 
virtual FX_INT64 GetPosition ()
 获取流中当前的读取位置。 更多...
 
virtual FX_INT64 GetSize ()
 获取文件的总大小 更多...
 
FX_BOOL Init (FX_INT32 nChunkSize, FX_INT32 nChunkCount, FX_LPVOID pBuffer, IFX_Allocator *pAllocator=0)
 初始化分块大小和分块数量。 更多...
 
virtual FX_BOOL IsEOF ()
 确定是否到达流的末尾。 更多...
 
FX_BOOL PreCache (FX_INT64 offset, FX_INT32 nCacheCount)
 预缓存。 更多...
 
virtual FX_BOOL ReadBlock (void *buffer, FX_INT64 offset, size_t size)
 从文件中读取数据块 更多...
 
virtual size_t ReadBlock (void *buffer, size_t size)
 从流中读取数据块。 更多...
 
- Public 成员函数 继承自 IFX_FileStream
virtual FX_BOOL WriteBlock (const void *buffer, size_t size)
 将数据块写入当前流的末尾。 更多...
 
- Public 成员函数 继承自 IFX_FileRead
virtual void ClearRange ()
 清除由函数 IFX_FileRead::SetRange 设置的访问范围。 更多...
 
virtual FX_INT64 SetPosition (FX_INT64 pos)
 设置当前文件访问位置。 更多...
 
virtual FX_BOOL SetRange (FX_INT64 offset, FX_INT64 size)
 设置访问范围。 更多...
 

Protected 成员函数

virtual FX_BOOL Flush ()
 刷新内部缓冲区。读取模式不支持,直接返回false。
 
virtual void Release ()
 销毁当前实例。 更多...
 
virtual IFX_FileStreamRetain ()
 创建共享实例。 更多...
 
virtual FX_BOOL WriteBlock (const void *buffer, FX_INT64 offset, size_t size)
 将数据块写入流中。读取模式不支持,直接返回false。
 

详细描述

缓存文件读取接口。

成员函数说明

◆ AttachFile()

FX_BOOL CFX_CachedFileRead::AttachFile ( IFX_FileRead pFile,
FX_BOOL  bTakeOver 
)

附加文件读取。

参数
[in]pFile要附加的文件。
[in]bTakeOver是否接管文件。
返回
true表示成功,false表示失败。

◆ GetPosition()

virtual FX_INT64 CFX_CachedFileRead::GetPosition ( )
virtual

获取流中当前的读取位置。

返回
流中当前的读取位置。

实现了 IFX_FileStream.

◆ GetSize()

virtual FX_INT64 CFX_CachedFileRead::GetSize ( )
virtual

获取文件的总大小

返回
文件大小,以字节为单位。实现可以在任何错误时返回0。

实现了 IFX_FileStream.

◆ Init()

FX_BOOL CFX_CachedFileRead::Init ( FX_INT32  nChunkSize,
FX_INT32  nChunkCount,
FX_LPVOID  pBuffer,
IFX_Allocator pAllocator = 0 
)

初始化分块大小和分块数量。

参数
[in]nChunkSize每个分块的大小。
[in]nChunkCount分块的总数量。
[in]pBuffer外部缓冲区。NULL表示禁用缓存。
[in]pAllocator此类中使用的分配器。NULL表示使用默认分配器。 默认值:NULL
返回
true表示成功,false表示失败。

◆ IsEOF()

virtual FX_BOOL CFX_CachedFileRead::IsEOF ( )
virtual

确定是否到达流的末尾。

返回
true表示到达流的末尾,false表示还没有到达。

实现了 IFX_FileStream.

◆ PreCache()

FX_BOOL CFX_CachedFileRead::PreCache ( FX_INT64  offset,
FX_INT32  nCacheCount 
)

预缓存。

参数
[in]offset偏移量。
[in]nCacheCount缓存数量。
返回
true表示成功,false表示失败。

◆ ReadBlock() [1/2]

virtual FX_BOOL CFX_CachedFileRead::ReadBlock ( void *  buffer,
FX_INT64  offset,
size_t  size 
)
virtual

从文件中读取数据块

参数
[in,out]buffer指向接收读取数据的缓冲区的指针
[in]offset从文件开头的字节偏移量
[in]size块的字节数。
返回
true表示成功,false表示失败。

实现了 IFX_FileStream.

◆ ReadBlock() [2/2]

virtual size_t CFX_CachedFileRead::ReadBlock ( void *  buffer,
size_t  size 
)
virtual

从流中读取数据块。

参数
[in,out]buffer用于存储数据的缓冲区。
[in]size缓冲区的总大小,以字节为单位。
返回
存储在缓冲区中的数据长度。0表示出错或没有数据。

实现了 IFX_FileStream.

◆ Release()

virtual void CFX_CachedFileRead::Release ( )
protectedvirtual

销毁当前实例。

返回
无。

实现了 IFX_FileStream.

◆ Retain()

virtual IFX_FileStream* CFX_CachedFileRead::Retain ( )
protectedvirtual

创建共享实例。

返回
文件流接口。

实现了 IFX_FileStream.