ID3D12InfoQueue::GetMessage method

Get a message from the message queue.

Syntax

HRESULT GetMessage(
  UINT64        MessageIndex,
  D3D12_MESSAGE *pMessage,
  SIZE_T        *pMessageByteLength
);

Parameters

MessageIndex

Type: UINT64

Index into message queue after an optional retrieval filter has been applied. This can be between 0 and the number of messages in the message queue that pass through the retrieval filter (which can be obtained with GetNumStoredMessagesAllowedByRetrievalFilter). 0 is the message at the front of the message queue.

pMessage

Type: D3D12_MESSAGE*

Returned message.

pMessageByteLength

Type: SIZE_T*

Size of pMessage in bytes.

Return Value

Type: HRESULT

This method returns one of the Direct3D 12 Return Codes.

Remarks

This method does not remove any messages from the message queue.

This method gets messages from the message queue after an optional retrieval filter has been applied.

Applications should call this method twice to retrieve a message - first to obtain the size of the message and second to get the message. Here is a typical example:

 
// Get the size of the message
SIZE_T messageLength = 0;
HRESULT hr = pInfoQueue->GetMessage(0, NULL, &messageLength);

// Allocate space and get the message
D3D12_MESSAGE * pMessage = (D3D12_MESSAGE*)malloc(messageLength);
hr = pInfoQueue->GetMessage(0, pMessage, &messageLength); 

Requirements

   
Target Platform Windows
Header d3d12sdklayers.h

See Also

ID3D12InfoQueue