PFND3DDDI_UNLOCK função de retorno de chamada (d3dumddi.h)

A função Unlock desbloqueia um recurso ou uma superfície dentro do recurso que foi bloqueado anteriormente pela função Lock .

Sintaxe

PFND3DDDI_UNLOCK Pfnd3dddiUnlock;

HRESULT Pfnd3dddiUnlock(
  HANDLE hDevice,
  const D3DDDIARG_UNLOCK *unnamedParam2
)
{...}

Parâmetros

hDevice

Um identificador para o dispositivo de exibição (contexto gráfico).

unnamedParam2

pData [in]

Um ponteiro para uma estrutura D3DDDIARG_UNLOCK que descreve o recurso ou a superfície dentro do recurso a ser desbloqueado.

Retornar valor

Unlock retorna um dos seguintes valores:

Código de retorno Descrição
S_OK O recurso foi desbloqueado com êxito.
E_OUTOFMEMORY O desbloqueio não pôde alocar a memória necessária para que ela fosse concluída.
E_INVALIDARG O recurso que D3DDDIARG_UNLOCK descreve não foi bloqueado por uma chamada anterior para a função Lock do driver.

Comentários

Esses comentários são análogos à descrição na seção Comentários da página de referência bloquear .

O driver de exibição do modo de usuário deve chamar a função pfnUnlockCb do runtime do Microsoft Direct3D depois que Unlock for chamado. Nesta chamada pfnUnlockCb , o driver de exibição do modo de usuário passa um identificador de alocação. Antes de chamar pfnUnlockCb, o driver de exibição do modo de usuário deve primeiro mapear a superfície para uma alocação apropriada.

O runtime chama a função Desbloqueio do driver de exibição no modo de usuário para desbloquear superfícies de memória do sistema pré-alocadas também. O runtime define o sinalizador de campo de bit NotifyOnly no membro Flags da estrutura D3DDDIARG_UNLOCK que é apontada pelo pData para diferenciar chamadas unlock que desbloqueiam a memória do sistema pré-alocada de outras chamadas unlock . Se a função Lock do driver de exibição no modo de usuário chamada pfnLockCb para bloquear a alocação de memória do sistema que corresponde à superfície, ela também deverá chamar pfnUnlockCb. Não chamar pfnUnlockCb interrompe a coordenação entre o runtime, o driver de exibição do modo de usuário e o driver de miniporto de exibição.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows Vista e versões posteriores dos sistemas operacionais Windows.
Plataforma de Destino Universal
Cabeçalho d3dumddi.h (inclua D3dumddi.h)

Confira também

D3DDDIARG_UNLOCK

D3DDDI_DEVICEFUNCS

Bloquear

pfnLockCb

pfnUnlockCb