UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FMicrosoftReadRequest Class Reference

#include <MicrosoftAsyncIO.h>

+ Inheritance diagram for FMicrosoftReadRequest:

Public Member Functions

 FMicrosoftReadRequest (FMicrosoftAsyncReadFileHandle *InOwner, FAsyncFileCallBack *CompleteCallback, uint8 *InUserSuppliedMemory, int64 InOffset, int64 InBytesToRead, int64 InFileSize, HANDLE InHandle, EAsyncIOPriorityAndFlags InPriorityAndFlags)
 
virtual ~FMicrosoftReadRequest ()
 
bool CheckForPrecache ()
 
const TCHARGetFileNameForErrorMessagesAndPanicRetry ()
 
void PerformRequest ()
 
void FinalizeReadAndSetComplete ()
 
uint8GetContainedSubblock (uint8 *UserSuppliedMemory, int64 InOffset, int64 InBytesToRead)
 
void Start ()
 
virtual void WaitCompletionImpl (float TimeLimitSeconds) override
 
virtual void CancelImpl () override
 
virtual void ReleaseMemoryOwnershipImpl () override
 
- 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

◆ FMicrosoftReadRequest()

FMicrosoftReadRequest::FMicrosoftReadRequest ( FMicrosoftAsyncReadFileHandle InOwner,
FAsyncFileCallBack CompleteCallback,
uint8 InUserSuppliedMemory,
int64  InOffset,
int64  InBytesToRead,
int64  InFileSize,
HANDLE  InHandle,
EAsyncIOPriorityAndFlags  InPriorityAndFlags 
)
inline

◆ ~FMicrosoftReadRequest()

FMicrosoftReadRequest::~FMicrosoftReadRequest ( )
virtual

Member Function Documentation

◆ CancelImpl()

virtual void FMicrosoftReadRequest::CancelImpl ( )
inlineoverridevirtual

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

Implements IAsyncReadRequest.

◆ CheckForPrecache()

bool FMicrosoftReadRequest::CheckForPrecache ( )

◆ FinalizeReadAndSetComplete()

void FMicrosoftReadRequest::FinalizeReadAndSetComplete ( )
inline

◆ GetContainedSubblock()

uint8 * FMicrosoftReadRequest::GetContainedSubblock ( uint8 UserSuppliedMemory,
int64  InOffset,
int64  InBytesToRead 
)
inline

◆ GetFileNameForErrorMessagesAndPanicRetry()

const TCHAR * FMicrosoftReadRequest::GetFileNameForErrorMessagesAndPanicRetry ( )

◆ PerformRequest()

void FMicrosoftReadRequest::PerformRequest ( )
inline

◆ ReleaseMemoryOwnershipImpl()

virtual void FMicrosoftReadRequest::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.

◆ Start()

void FMicrosoftReadRequest::Start ( )
inline

◆ WaitCompletionImpl()

virtual void FMicrosoftReadRequest::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: