Método IDirect3DDevice9::TestCooperativeLevel (d3d9helper.h)
Relata o status de nível cooperativo atual do dispositivo Direct3D para um aplicativo em janelas ou em tela inteira.
Sintaxe
HRESULT TestCooperativeLevel();
Retornar valor
Tipo: HRESULT
Se o método for bem-sucedido, o valor retornado será D3D_OK, indicando que o dispositivo está operacional e o aplicativo de chamada pode continuar. Se o método falhar, o valor retornado poderá ser um dos seguintes valores: D3DERR_DEVICELOST, D3DERR_DEVICENOTRESET D3DERR_DRIVERINTERNALERROR.
Comentários
Se o dispositivo for perdido, mas não puder ser restaurado no momento atual, IDirect3DDevice9::TestCooperativeLevel retornará o código de retorno D3DERR_DEVICELOST. Esse seria o caso, por exemplo, quando um dispositivo de tela inteira perdeu o foco. Se um aplicativo detectar um dispositivo perdido, ele deverá pausar e chamar periodicamente IDirect3DDevice9::TestCooperativeLevel até receber um valor retornado de D3DERR_DEVICENOTRESET. Em seguida, o aplicativo pode tentar redefinir o dispositivo chamando IDirect3DDevice9::Reset e, se isso for bem-sucedido, restaurar os recursos necessários e retomar a operação normal. Observe que IDirect3DDevice9::P resent retornará D3DERR_DEVICELOST se o dispositivo estiver "perdido" ou "não redefinido".
Uma chamada para IDirect3DDevice9::TestCooperativeLevel falhará se for chamada em um thread diferente daquele usado para criar o dispositivo que está sendo redefinido.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Windows |
Cabeçalho | d3d9helper.h (inclua D3D9.h) |
Biblioteca | D3D9.lib |