DirectDraw Driver Structures
This section describes the Microsoft DirectDraw driver structures supported on Microsoft Windows. These structures are used by display drivers that offer DirectDraw support. DirectDraw lists the header files that define the DirectDraw structures described in this section.
Although the DD_Xxx types described in this reference refer to the actual structures in the ddrawint.h header file, it is recommended that driver writers use the DDHAL_Xxx types from ddrawi.h. In cases where the structure names are different in the headers ddrawi.h and ddrawint.h use types from the ddrawi.h file for cross-platform compatibility. The minor naming differences are aliased with typedefs in the dx95type.h header file, which is provided to help port drivers from Windows 98/Me to Windows 2000 and later.
See DirectDraw Driver Functions for function and callback reference information.
Note that the memory for all Microsoft DirectX structures should be initialized to zero before the structures are used. In addition, all structures that contain a dwSize member should set this member to the size of the structure, in bytes, before use. The following example performs these tasks on a common structure, DDCORECAPS:
DDCORECAPS ddcorecaps; // Cannot use this yet. ZeroMemory(&ddcorecaps, sizeof(ddcorecaps)); ddcorecaps.dwSize = sizeof(ddcorecaps); // Now the structure can be used.