estrutura D3DHAL_CALLBACKS (d3dhal.h)

D3DHAL_CALLBACKS é uma das várias estruturas de retorno de chamada que descrevem o suporte do Direct3D fornecido pelo driver.

Sintaxe

typedef struct _D3DHAL_CALLBACKS {
  DWORD                        dwSize;
  LPD3DHAL_CONTEXTCREATECB     ContextCreate;
  LPD3DHAL_CONTEXTDESTROYCB    ContextDestroy;
  LPD3DHAL_CONTEXTDESTROYALLCB ContextDestroyAll;
  LPD3DHAL_SCENECAPTURECB      SceneCapture;
  LPVOID                       lpReserved10;
  LPVOID                       lpReserved11;
  LPD3DHAL_RENDERSTATECB       RenderState;
  LPD3DHAL_RENDERPRIMITIVECB   RenderPrimitive;
  DWORD                        dwReserved;
  LPD3DHAL_TEXTURECREATECB     TextureCreate;
  LPD3DHAL_TEXTUREDESTROYCB    TextureDestroy;
  LPD3DHAL_TEXTURESWAPCB       TextureSwap;
  LPD3DHAL_TEXTUREGETSURFCB    TextureGetSurf;
  LPVOID                       lpReserved12;
  LPVOID                       lpReserved13;
  LPVOID                       lpReserved14;
  LPVOID                       lpReserved15;
  LPVOID                       lpReserved16;
  LPVOID                       lpReserved17;
  LPVOID                       lpReserved18;
  LPVOID                       lpReserved19;
  LPVOID                       lpReserved20;
  LPVOID                       lpReserved21;
  LPD3DHAL_GETSTATECB          GetState;
  DWORD                        dwReserved0;
  DWORD                        dwReserved1;
  DWORD                        dwReserved2;
  DWORD                        dwReserved3;
  DWORD                        dwReserved4;
  DWORD                        dwReserved5;
  DWORD                        dwReserved6;
  DWORD                        dwReserved7;
  DWORD                        dwReserved8;
  DWORD                        dwReserved9;
} D3DHAL_CALLBACKS, *LPD3DHAL_CALLBACKS;

Membros

dwSize

Especifica o tamanho em bytes dessa estrutura D3DHAL_CALLBACKS.

ContextCreate

Aponta para o retorno de chamada D3dContextCreate fornecido pelo driver. Um driver deve implementar o retorno de chamada para o qual esse membro aponta.

ContextDestroy

Aponta para o retorno de chamada D3dContextDestroy fornecido pelo driver. Um driver deve implementar o retorno de chamada para o qual esse membro aponta.

ContextDestroyAll

Deve ser definido como NULL em um driver do Windows 2000 e posterior.

SceneCapture

Deve ser definido como NULL em um driver do Windows 2000 e posterior. Para o DirectX 6.0, esse era um ponteiro para o retorno de chamada D3dSceneCapture fornecido pelo driver. Para o DirectX 7.0 e posterior, esse retorno de chamada foi substituído pelo tratamento do estado de renderização D3DRENDERSTATE_SCENECAPTURE na função D3dDrawPrimitives2 .

lpReserved10

Deve ser zero.

lpReserved11

Deve ser zero.

RenderState

Aponta para o retorno de chamada D3DHAL_RENDERSTATEDATA fornecido pelo driver. Um driver deve implementar o retorno de chamada para o qual esse membro aponta.

RenderPrimitive

Aponta para o retorno de chamada D3DHAL_RENDERPRIMITIVEDATA fornecido pelo driver. Um driver deve implementar o retorno de chamada para o qual esse membro aponta.

dwReserved

Especifica campos reservados e deve ser definido como zero.

TextureCreate

Deve ser definido como NULL em um driver do Windows 2000 e posterior. Para o DirectX 6.0, esse era um ponteiro para o retorno de chamada D3dTextureCreate fornecido pelo driver ou NULL.

TextureDestroy

Deve ser definido como NULL em um driver do Windows 2000 e posterior. Para o DirectX 6.0, esse era um ponteiro para o retorno de chamada D3dTextureDestroy fornecido pelo driver ou NULL.

TextureSwap

Deve ser definido como NULL em um driver do Windows 2000 e posterior. Para o DirectX 6.0, esse era um ponteiro para o retorno de chamada D3dTextureSwap fornecido pelo driver ou NULL.

TextureGetSurf

Deve ser definido como NULL em um driver do Windows 2000 e posterior. Para o DirectX 6.0, esse era um ponteiro para o retorno de chamada D3dTextureGetSurf fornecido pelo driver ou NULL.

lpReserved12

Deve ser zero.

lpReserved13

Deve ser zero.

lpReserved14

Deve ser zero.

lpReserved15

Deve ser zero.

lpReserved16

Deve ser zero.

lpReserved17

Deve ser zero.

lpReserved18

Deve ser zero.

lpReserved19

Deve ser zero.

lpReserved20

Deve ser zero.

lpReserved21

Deve ser zero.

GetState

Aponta para o retorno de chamada D3DHAL_GETSTATEDATA fornecido pelo driver. Um driver deve implementar o retorno de chamada para o qual esse membro aponta.

dwReserved0

Deve ser zero.

dwReserved1

Deve ser zero.

dwReserved2

Deve ser zero.

dwReserved3

Deve ser zero.

dwReserved4

Deve ser zero.

dwReserved5

Deve ser zero.

dwReserved6

Deve ser zero.

dwReserved7

Deve ser zero.

dwReserved8

Deve ser zero

dwReserved9

Deve ser zero.

Comentários

O driver aloca essa estrutura e define os valores apropriados em todos os membros. A função DrvGetDirectDrawInfo do driver retorna um ponteiro para essa estrutura no membro lpD3DHALCallbacks da estrutura DD_HALINFO .

O gerenciamento de textura agora é tratado por opcodes gerenciados na implementação do driver de D3dDrawPrimitives2.

Requisitos

Requisito Valor
Cabeçalho d3dhal.h (inclua D3dhal.h)

Confira também

D3DHAL_CALLBACKS3

D3dContextCreate

D3dContextDestroy

D3dDrawPrimitives2

DdGetDriverInfo

DrvGetDirectDrawInfo