MFASYNCRESULT Structure

Contains data that is needed to implement the IMFAsyncResult interface.

Syntax

typedef struct tagMFASYNCRESULT {
    OVERLAPPED overlapped;
    IMFAsyncCallback *pCallback;
    HRESULT hrStatusResult;
    DWORD dwBytesTransferred;
    HANDLE hEvent;
} MFASYNCRESULT;  

Members

overlapped
An OVERLAPPED structure. This structure is used internally to queue the work item. Fill this member with zeros.

pCallback
Pointer to the IMFAsyncCallback interface. This interface is implemented by the caller of the asynchronous method. This member can be NULL. If this member is NULL, the hEvent member must be a valid event handle.

hrStatusResult
The status code returned when this structure is used with an I/O completion port. You can also use this member to hold the status code for the asynchronous operation, returned by IMFAsyncResult::GetStatus.

dwBytesTransferred
The number of bytes transferred when this structure is used with an I/O completion port. This member is used internally by the work queue. Set this member to zero.

hEvent
Event handle. If pCallback is NULL, set this member to a valid event handle. The event is signaled when the work item is dispatched. Otherwise, set this member to NULL.

Remarks

Any custom implementation of the IMFAsyncResult interface must inherit this structure. For more information, see Custom Asynchronous Result Objects.

Requirements

Header: Declared in mfapi.h.