目录

AK::StreamMgr::IAkFileLocationResolver类参考

所有成员的列表。

公有成员

virtual AKRESULT  Open (const AkOSChar *in_pszFileName, AkOpenMode in_eOpenMode, AkFileSystemFlags *in_pFlags, bool &io_bSyncOpen, AkFileDesc &io_fileDesc)=0
virtual AKRESULT  Open (AkFileID in_fileID, AkOpenMode in_eOpenMode, AkFileSystemFlags *in_pFlags, bool &io_bSyncOpen, AkFileDesc &io_fileDesc)=0

保护成员

virtual  ~IAkFileLocationResolver ()
  Virtual destructor on interface to avoid warnings.

详细描述

File location resolver interface. There is one and only one File Location Resolver that is registered to the Stream Manager (using AK::StreamMgr::SetFileLocationResolver()). Its purpose is to map a file name or ID to 1) a streaming device / I/O hook; 2) a valid file descriptor (AkFileDesc) usable by the I/O hook. When your Low-Level I/O submodule uses a single device, you should create a standalone I/O hook which implements one of the I/O hooks defined above (blocking or deferred), as well as the File Location Resolver. You then register this object to the Stream Manager as the File Location Resolver. If you wish to create multiple devices, then you should have a separate object that implements AK::StreamMgr::IAkFileLocationResolver and registers to the Stream Manager as such. This object will be used to dispatch the file open request to the appropriate device. The strategy you will use to select the correct device is up to you to implement. You may also implement a set of hooks that delegate opening to the next device when they can't find the file requested (like a chain of responsiblity pattern), although this will likely be less efficient.

在文件AkStreamMgrModule.h401行定义。


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