Condividi tramite


Metodo ID3D12InfoQueue::GetMessage (d3d12sdklayers.h)

Ottenere un messaggio dalla coda dei messaggi.

Sintassi

HRESULT GetMessage(
  [in]            UINT64        MessageIndex,
  [out, optional] D3D12_MESSAGE *pMessage,
  [in, out]       SIZE_T        *pMessageByteLength
);

Parametri

[in] MessageIndex

Tipo: UINT64

Indicizzare in coda messaggi dopo l'applicazione di un filtro di recupero facoltativo. Può essere compreso tra 0 e il numero di messaggi nella coda di messaggi che passano attraverso il filtro di recupero (che può essere ottenuto con GetNumStoredMessagesAllowedByRetrievalFilter). 0 è il messaggio all'inizio della coda dei messaggi.

[out, optional] pMessage

Tipo: D3D12_MESSAGE*

Messaggio restituito.

[in, out] pMessageByteLength

Tipo: SIZE_T*

Dimensioni di pMessage in byte.

Valore restituito

Tipo: HRESULT

Questo metodo restituisce uno dei codici restituiti Direct3D 12.

Commenti

Questo metodo non rimuove alcun messaggio dalla coda dei messaggi.

Questo metodo recupera i messaggi dalla coda di messaggi dopo l'applicazione di un filtro di recupero facoltativo.

Le applicazioni devono chiamare questo metodo due volte per recuperare un messaggio, in primo luogo per ottenere le dimensioni del messaggio e il secondo per ottenere il messaggio. Ecco un esempio tipico:

 
// 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); 

Requisiti

   
Piattaforma di destinazione Windows
Intestazione d3d12sdklayers.h

Vedi anche

ID3D12InfoQueue