структура D3DHAL_CALLBACKS (d3dhal.h)

D3DHAL_CALLBACKS является одной из нескольких структур обратного вызова, описывающих поддержку Direct3D, предоставляемую драйвером.

Синтаксис

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;

Члены

dwSize

Задает размер структуры D3DHAL_CALLBACKS в байтах.

ContextCreate

Указывает на предоставленный драйвером обратный вызов D3dContextCreate . Драйвер должен реализовать обратный вызов, на который указывает этот элемент.

ContextDestroy

Указывает на предоставленный драйвером обратный вызов D3dContextDeкислоу. Драйвер должен реализовать обратный вызов, на который указывает этот элемент.

ContextDestroyAll

В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL .

SceneCapture

В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL . Для DirectX 6.0 это был указатель на предоставленный драйвером обратный вызов D3dSceneCapture . Для DirectX 7.0 и более поздних версий этот обратный вызов был заменен обработкой состояния D3DRENDERSTATE_SCENECAPTURE отрисовки в функции D3dDrawPrimitives2 .

lpReserved10

Должен равняться нулю.

lpReserved11

Должен равняться нулю.

RenderState

Указывает на предоставленный драйвером обратный вызов D3DHAL_RENDERSTATEDATA. Драйвер должен реализовать обратный вызов, на который указывает этот элемент.

RenderPrimitive

Указывает на предоставленный драйвером обратный вызов D3DHAL_RENDERPRIMITIVEDATA. Драйвер должен реализовать обратный вызов, на который указывает этот элемент.

dwReserved

Указывает зарезервированные поля и должны иметь нулевое значение.

TextureCreate

В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL . Для DirectX 6.0 это был указатель на предоставленный драйвером D3dTextureCreate обратный вызов или NULL.

TextureDestroy

В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL . Для DirectX 6.0 это был указатель на предоставленный драйвером обратный вызов D3dTextureDeкистрое или NULL.

TextureSwap

В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL . Для DirectX 6.0 это был указатель на предоставленный драйвером обратный вызов D3dTextureSwap или NULL.

TextureGetSurf

В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL . Для DirectX 6.0 это был указатель на предоставленный драйвером обратный вызов D3dTextureGetSurf или NULL.

lpReserved12

Должен равняться нулю.

lpReserved13

Должен равняться нулю.

lpReserved14

Должен равняться нулю.

lpReserved15

Должен равняться нулю.

lpReserved16

Должен равняться нулю.

lpReserved17

Должен равняться нулю.

lpReserved18

Должен равняться нулю.

lpReserved19

Должен равняться нулю.

lpReserved20

Должен равняться нулю.

lpReserved21

Должен равняться нулю.

GetState

Указывает на предоставленный драйвером обратный вызов D3DHAL_GETSTATEDATA. Драйвер должен реализовать обратный вызов, на который указывает этот элемент.

dwReserved0

Должен равняться нулю.

dwReserved1

Должен равняться нулю.

dwReserved2

Должен равняться нулю.

dwReserved3

Должен равняться нулю.

dwReserved4

Должен равняться нулю.

dwReserved5

Должен равняться нулю.

dwReserved6

Должен равняться нулю.

dwReserved7

Должен равняться нулю.

dwReserved8

Должно быть равно нулю

dwReserved9

Должен равняться нулю.

Комментарии

Драйвер выделяет эту структуру и задает соответствующие значения во всех членах. Функция DrvGetDirectDrawInfo драйвера возвращает указатель на эту структуру в элементе lpD3DHALCallbacksструктуры DD_HALINFO .

Управление текстурами теперь осуществляется с помощью операционных кодов, которые управляются в реализации драйвера D3dDrawPrimitives2.

Требования

Требование Значение
Заголовок d3dhal.h (включая D3dhal.h)

См. также раздел

D3DHAL_CALLBACKS3

D3dContextCreate

D3dContextDe

D3dDrawPrimitives2

DdGetDriverInfo

DrvGetDirectDrawInfo