DirectDraw Callback Support Using DrvEnableDirectDraw
The display driver can implement the DrvEnableDirectDraw function to indicate various DirectDraw callback support. To indicate support, the driver returns pointers to the DD_CALLBACKS, DD_SURFACECALLBACKS, and DD_PALETTECALLBACKS structures in the pCallBacks, pSurfaceCallBacks, and pPaletteCallBacks parameters.
The driver populates members of the DD_CALLBACKS structure to indicate that it supports the following callback functions.
Callback Function | Description |
---|---|
Returns a value that indicates whether the driver can create a surface of the specified surface description. |
|
Creates a DirectDrawPalette object for the specified DirectDraw object. |
|
Creates a DirectDraw surface. |
|
Returns the number of the current physical scan line. |
|
Maps application-modifiable portions of the frame buffer into the user-mode address space of the specified process, or it unmaps memory. |
|
Returns the vertical blank status of the device. |
The driver populates members of the DD_SURFACECALLBACKS structure to indicate that it supports the following callback functions.
Callback Function | Description |
---|---|
Attaches a surface to another surface. |
|
Performs a bit-block transfer (blt) of display data from a source surface to a destination surface. |
|
Destroys a DirectDraw surface. |
|
Causes the surface memory associated with the target surface to become the primary surface, and the current surface to become the nonprimary surface. |
|
Queries the blt status of the specified surface. |
|
Determines whether the most recently requested flip on a surface has occurred. |
|
Locks a specified area of surface memory and provides a valid pointer to a block of memory associated with a surface. |
|
Sets the color key value for the specified surface. |
|
Sets the position for an overlay. |
|
Attaches a palette to the specified surface. |
|
Releases the lock held on the specified surface. |
|
Repositions or modifies the visual attributes of an overlay surface. |
The driver populates members of the DD_PALETTECALLBACKS structure to indicate that it supports the following callback functions.
Callback Function | Description |
---|---|
Destroys the specified palette. |
|
Updates the palette entries in the specified palette. |