UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::FGenericPlatformIoDispatcher Class Referencefinal
+ Inheritance diagram for UE::FGenericPlatformIoDispatcher:

Public Member Functions

 FGenericPlatformIoDispatcher (FPlatformIoDispatcherCreateParams &&Params)
 
 ~FGenericPlatformIoDispatcher ()
 
virtual TIoStatusOr< FIoFileHandleOpenFile (const TCHAR *Filename, const FIoFileProperties &FileProperties, FIoFileStat *OutStat=nullptr) override
 
virtual FIoStatus CloseFile (FIoFileHandle FileHandle) override
 
- Public Member Functions inherited from UE::FPlatformIoDispatcherBase
virtual ~FPlatformIoDispatcherBase ()
 
virtual bool Init () override final
 
virtual uint32 Run () override final
 
virtual void Stop () override final
 
virtual FIoStatus Initialize () override final
 
virtual FIoFileReadRequest ScatterGather (FIoScatterGatherRequestParams &&Params, FIoFileReadRequestCompleted &&OnCompleted) override
 
virtual FIoFileReadRequest ReadDirect (FIoDirectReadRequestParams &&Params, FIoFileReadRequestCompleted &&OnCompleted) override
 
virtual void UpdatePriority (FIoFileReadRequest Request, int32 NewPriority) override
 
virtual void CancelRequest (FIoFileReadRequest Request) override
 
virtual void CancelAllRequests (FIoFileHandle FileHandle) override
 
virtual void DeleteRequest (FIoFileReadRequest Request) override
 
- Public Member Functions inherited from FRunnable
virtual void Exit ()
 
virtual class FSingleThreadRunnableGetSingleThreadInterface ()
 
virtual ~FRunnable ()
 
- Public Member Functions inherited from UE::IPlatformIoDispatcher
virtual ~IPlatformIoDispatcher ()=default
 

Additional Inherited Members

- Protected Member Functions inherited from UE::FPlatformIoDispatcherBase
 FPlatformIoDispatcherBase (FPlatformIoDispatcherCreateParams &&Params)
 
uint32 GetNextFileId ()
 
void EnqueueCompletedFileBlock (FIoFileBlockRequest &FileBlockRequest)
 
void CompleteFileBlock (FIoFileBlockRequest &FileBlockRequest)
 
void EnqueueBlockToDecode (FIoEncodedBlockRequest &EncodedBlockRequest)
 
void ProcessDecodedBlock (FIoEncodedBlockRequest &EncodedBlockRequest, FIoChunkBlockDecodeResult &&DecodeResult, FIoChunkBlockDecodeRequest &NextDecodeRequest)
 
void ScatterDecodedBlock (FIoEncodedBlockRequest &EncodedBlockRequest)
 
void CompleteDecodedBlock (FIoEncodedBlockRequest &EncodedBlockRequest, FIoPlatformReadRequestList &OutCompletedReadRequests)
 
bool ProcessCompletedFileBlocks ()
 
bool ProcessBlocksToDecode ()
 
bool ProcessBlocksToComplete ()
 
bool ProcessBlocks ()
 
- Protected Attributes inherited from UE::FPlatformIoDispatcherBase
FPlatformIoDispatcherStats Stats
 
TUniquePtr< FRunnableThreadThread
 
TUniquePtr< FIoServiceThreadSupportThread
 
FPlatformIoDispatcherRequestMgr RequestMgr
 
FIoChunkBlockMemoryPool ChunkBlockMemoryPool
 
FIoFileBlockMemoryPool FileBlockMemoryPool
 
FIoQueue IoQueue
 
FIoFileBlockCache FileBlockCache
 
FIoFileBlockRequestList FileBlocksToComplete
 
FIoEncodedBlockRequestList BlocksToDecode
 
FIoEncodedBlockRequestList BlocksToComplete
 
UE::FMutex FileBlockMutex
 
UE::FMutex EncodedBlockMutex
 
uint32 FileBlockSize = 256 << 10
 
bool bMultithreaded = false
 
std::atomic_bool bStopRequested {false}
 

Constructor & Destructor Documentation

◆ FGenericPlatformIoDispatcher()

UE::FGenericPlatformIoDispatcher::FGenericPlatformIoDispatcher ( FPlatformIoDispatcherCreateParams &&  Params)

◆ ~FGenericPlatformIoDispatcher()

UE::FGenericPlatformIoDispatcher::~FGenericPlatformIoDispatcher ( )

Member Function Documentation

◆ CloseFile()

FIoStatus UE::FGenericPlatformIoDispatcher::CloseFile ( FIoFileHandle  FileHandle)
overridevirtual

Close the file. Assumes no pending I/O requests are inflight for the specified file.

Implements UE::IPlatformIoDispatcher.

◆ OpenFile()

TIoStatusOr< FIoFileHandle > UE::FGenericPlatformIoDispatcher::OpenFile ( const TCHAR Filename,
const FIoFileProperties FileProperties,
FIoFileStat OutStat = nullptr 
)
overridevirtual

Open file for reading. The file properties specifies whether the file is compressed, encrypted and signed.

Implements UE::IPlatformIoDispatcher.


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