UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FPakProcessedReadRequest Class Reference
+ Inheritance diagram for FPakProcessedReadRequest:

Public Member Functions

 FPakProcessedReadRequest (FPakAsyncReadFileHandle *InOwner, FAsyncFileCallBack *CompleteCallback, int64 InOffset, int64 InBytesToRead, EAsyncIOPriorityAndFlags InPriorityAndFlags, uint8 *UserSuppliedMemory)
 
virtual ~FPakProcessedReadRequest ()
 
virtual void WaitCompletionImpl (float TimeLimitSeconds) override
 
virtual void CancelImpl () override
 
virtual void ReleaseMemoryOwnershipImpl () override
 
void RequestIsComplete ()
 
bool CancelBlockComplete (FCachedAsyncBlock *BlockPtr)
 
void GatherResults ()
 
void DoneWithRawRequests ()
 
bool CheckCompletion (const FPakEntry &FileEntry, int32 BlockIndex, TArray< FCachedAsyncBlock * > &Blocks)
 
void CancelRawRequests ()
 
- Public Member Functions inherited from IAsyncReadRequest
 IAsyncReadRequest (FAsyncFileCallBack *InCallback, bool bInSizeRequest, uint8 *UserSuppliedMemory)
 
virtual ~IAsyncReadRequest ()
 
UE_FORCEINLINE_HINT bool PollCompletion ()
 
bool WaitCompletion (float TimeLimitSeconds=0.0f)
 
virtual void EnsureCompletion ()
 
void Cancel ()
 
int64 GetSizeResults ()
 
uint8GetReadResults ()
 
- Public Member Functions inherited from IAsyncReadRequestFixLayout
virtual ~IAsyncReadRequestFixLayout ()=default
 

Additional Inherited Members

- Protected Member Functions inherited from IAsyncReadRequest
 TSAN_ATOMIC (bool) bDataIsReady
 
 TSAN_ATOMIC (bool) bCompleteAndCallbackCalled
 
 TSAN_ATOMIC (bool) bCompleteSync
 
 TSAN_ATOMIC (bool) bCanceled
 
void SetDataComplete ()
 
void SetAllComplete ()
 
void SetComplete ()
 
- Protected Attributes inherited from IAsyncReadRequest
union { 
 
   PTRINT   Size 
 
   uint8 *   Memory 
 
};  
 
FAsyncFileCallBack Callback
 
const bool bSizeRequest
 
const bool bUserSuppliedMemory
 

Constructor & Destructor Documentation

◆ FPakProcessedReadRequest()

FPakProcessedReadRequest::FPakProcessedReadRequest ( FPakAsyncReadFileHandle InOwner,
FAsyncFileCallBack CompleteCallback,
int64  InOffset,
int64  InBytesToRead,
EAsyncIOPriorityAndFlags  InPriorityAndFlags,
uint8 UserSuppliedMemory 
)
inline

◆ ~FPakProcessedReadRequest()

virtual FPakProcessedReadRequest::~FPakProcessedReadRequest ( )
inlinevirtual

Member Function Documentation

◆ CancelBlockComplete()

bool FPakProcessedReadRequest::CancelBlockComplete ( FCachedAsyncBlock BlockPtr)
inline

◆ CancelImpl()

virtual void FPakProcessedReadRequest::CancelImpl ( )
inlineoverridevirtual

Cancel the request. This is a non-blocking async call and so does not ensure completion!

Implements IAsyncReadRequest.

◆ CancelRawRequests()

void FPakProcessedReadRequest::CancelRawRequests ( )

◆ CheckCompletion()

bool FPakProcessedReadRequest::CheckCompletion ( const FPakEntry FileEntry,
int32  BlockIndex,
TArray< FCachedAsyncBlock * > &  Blocks 
)

◆ DoneWithRawRequests()

void FPakProcessedReadRequest::DoneWithRawRequests ( )

◆ GatherResults()

void FPakProcessedReadRequest::GatherResults ( )

◆ ReleaseMemoryOwnershipImpl()

virtual void FPakProcessedReadRequest::ReleaseMemoryOwnershipImpl ( )
inlineoverridevirtual

Transfer ownership of Memory from the async request to the outside caller (called in response to GetReadResults). It's only relevant to Read requests, in which case the most common use is to update (decrease) the STAT_AsyncFileMemory stat which is typically incremented when async requests allocate Memory. It doesn't play any role in Size requests, so it may be left empty for them.

Implements IAsyncReadRequest.

◆ RequestIsComplete()

void FPakProcessedReadRequest::RequestIsComplete ( )
inline

◆ WaitCompletionImpl()

virtual void FPakProcessedReadRequest::WaitCompletionImpl ( float  TimeLimitSeconds)
inlineoverridevirtual

Waits for the request to complete, but not longer than the given time limit

Parameters
TimeLimitSecondsZero to wait forever, otherwise the maximum amount of time to wait.
Returns
true if the request is complete

Implements IAsyncReadRequest.


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