Método ID3DDestructionNotifier::RegisterDestructionCallback (d3dcommon.h)

Registra um retorno de chamada definido pelo usuário a ser invocado na destruição do objeto do qual este ID3DDestructionNotifier foi criado.

Sintaxe

HRESULT RegisterDestructionCallback(
  PFN_DESTRUCTION_CALLBACK callbackFn,
  void                     *pData,
  UINT                     *pCallbackID
);

Parâmetros

callbackFn

Tipo: PFN_DESTRUCTION_CALLBACK

Um retorno de chamada definido pelo usuário a ser invocado quando o objeto é destruído.

pData

Tipo: void*

Os dados a serem passados para callbackFn quando invocados

pCallbackID

Tipo: UINT*

Ponteiro para um UINT usado para identificar o retorno de chamada e para passar para cancelar o registro do retorno de chamada.

Retornar valor

Tipo: HRESULT

Se essa função for bem-sucedida, ela retornará S_OK.

Comentários

Um exemplo dessa interface sendo usada para registrar a destruição de um ID3D12Resource.

#include <d3dcommon.h> // for ID3DDestructionNotifier

ComPtr<ID3D12Resource> resource = ...;

ComPtr<ID3DDestructionNotifier> notifier;
if (SUCCEEDED(resource.As(&notifier)))
{
    UINT callbackId;
    ThrowIfFailed(notifier->RegisterDestructionCallback(LogResourceReleased, nullptr, &callbackId));
}

void LogResourceReleased(void* context)
{
    OutputDebugString("Resource released!\n");
}

Requisitos

   
Plataforma de Destino Windows
Cabeçalho d3dcommon.h

Confira também

ID3DDestructionNotifier

ID3DDestructionNotifier::UnregisterDestructionCallback