DDCORECAPS structure

The DDCORECAPS structure specifies the core capabilities of the Microsoft DirectDraw driver and its device, which are exposed to an application through the DirectDraw object.

Syntax


typedef struct _DDCORECAPS {
  DWORD   dwSize;
  DWORD   dwCaps;
  DWORD   dwCaps2;
  DWORD   dwCKeyCaps;
  DWORD   dwFXCaps;
  DWORD   dwFXAlphaCaps;
  DWORD   dwPalCaps;
  DWORD   dwSVCaps;
  DWORD   dwAlphaBltConstBitDepths;
  DWORD   dwAlphaBltPixelBitDepths;
  DWORD   dwAlphaBltSurfaceBitDepths;
  DWORD   dwAlphaOverlayConstBitDepths;
  DWORD   dwAlphaOverlayPixelBitDepths;
  DWORD   dwAlphaOverlaySurfaceBitDepths;
  DWORD   dwZBufferBitDepths;
  DWORD   dwVidMemTotal;
  DWORD   dwVidMemFree;
  DWORD   dwMaxVisibleOverlays;
  DWORD   dwCurrVisibleOverlays;
  DWORD   dwNumFourCCCodes;
  DWORD   dwAlignBoundarySrc;
  DWORD   dwAlignSizeSrc;
  DWORD   dwAlignBoundaryDest;
  DWORD   dwAlignSizeDest;
  DWORD   dwAlignStrideAlign;
  DWORD   dwRops[DD_ROP_SPACE];
  DDSCAPS ddsCaps;
  DWORD   dwMinOverlayStretch;
  DWORD   dwMaxOverlayStretch;
  DWORD   dwMinLiveVideoStretch;
  DWORD   dwMaxLiveVideoStretch;
  DWORD   dwMinHwCodecStretch;
  DWORD   dwMaxHwCodecStretch;
  DWORD   dwReserved1;
  DWORD   dwReserved2;
  DWORD   dwReserved3;
  DWORD   dwSVBCaps;
  DWORD   dwSVBCKeyCaps;
  DWORD   dwSVBFXCaps;
  DWORD   dwSVBRops[DD_ROP_SPACE];
  DWORD   dwVSBCaps;
  DWORD   dwVSBCKeyCaps;
  DWORD   dwVSBFXCaps;
  DWORD   dwVSBRops[DD_ROP_SPACE];
  DWORD   dwSSBCaps;
  DWORD   dwSSBCKeyCaps;
  DWORD   dwSSBFXCaps;
  DWORD   dwSSBRops[DD_ROP_SPACE];
  DWORD   dwMaxVideoPorts;
  DWORD   dwCurrVideoPorts;
  DWORD   dwSVBCaps2;
} DDCORECAPS;

Members

dwSize

Specifies the size in bytes of this DDCORECAPS structure.

dwCaps

Indicates a flag that specifies the driver's capabilities. The driver should set the appropriate DDCAPS_Xxx bit for every capability that it supports.

FlagMeaning

DDCAPS_3D

The display hardware has 3D acceleration.

DDCAPS_ALIGNBOUNDARYDEST

DirectDraw supports only those source rectangles with the x-axis aligned to the dwAlignBoundaryDest boundaries of the surface.

DDCAPS_ALIGNBOUNDARYSRC

DirectDraw supports only those source rectangles with the x-axis aligned to the dwAlignBoundarySrc boundaries of the surface.

DDCAPS_ALIGNSIZEDEST

DirectDraw supports only those source rectangles whose x-axis sizes, in bytes, are dwAlignSizeDest multiples.

DDCAPS_ALIGNSIZESRC

DirectDraw supports only those source rectangles whose x-axis sizes, in bytes, are dwAlignSizeSrc multiples.

DDCAPS_ALIGNSTRIDE

DirectDraw creates display memory surfaces that have a stride alignment equal to the dwAlignStrideAlign value.

DDCAPS_ALPHA

The display hardware supports an alpha channel during blit operations.

DDCAPS_BANKSWITCHED

The display hardware is bank-switched and is potentially very slow at random access to display memory. If this capability bit is set by the Microsoft Windows 2000 or later driver, DirectDraw is disabled.

DDCAPS_BLT

The display hardware is capable of blit operations.

DDCAPS_BLTCOLORFILL

The display hardware is capable of color filling with a blitter.

DDCAPS_BLTDEPTHFILL

The display hardware is capable of depth filling z-buffers with a blitter.

DDCAPS_BLTFOURCC

The display hardware is capable of color-space conversions during blit operations.

DDCAPS_BLTQUEUE

The display hardware is capable of asynchronous blit operations.

DDCAPS_BLTSTRETCH

The display hardware is capable of stretching during blit operations.

DDCAPS_CANBLTSYSMEM

The display hardware is capable of blitting to or from system memory.

DDCAPS_CANCLIP

The display hardware is capable of clipping with blitting.

DDCAPS_CANCLIPSTRETCHED

The display hardware is capable of clipping while stretch-blitting.

DDCAPS_COLORKEY

Some form of color key in either overlay or blit operations is supported. More specific color key capability information can be found in the dwCKeyCaps member.

DDCAPS_COLORKEYHWASSIST

The color key is hardware assisted.

DDCAPS_GDI

The display hardware is shared with GDI. If this capability bit is set by the Windows 2000 or later driver, DirectDraw is disabled.

DDCAPS_NOHARDWARE

No hardware support exists.

DDCAPS_OVERLAY

The display hardware supports overlays.

DDCAPS_OVERLAYCANTCLIP

The display hardware supports overlays but cannot clip them.

DDCAPS_OVERLAYFOURCC

The overlay hardware is capable of color-space conversions during overlay operations.

DDCAPS_OVERLAYSTRETCH

The overlay hardware is capable of stretching.

DDCAPS_PALETTE

DirectDraw is capable of creating and supporting DirectDrawPalette objects for more than just the primary surface. If this capability bit is set by the Windows 2000 or later driver, DirectDraw is disabled.

DDCAPS_PALETTEVSYNC

DirectDraw is capable of updating a palette synchronized with the vertical refresh.

DDCAPS_READSCANLINE

The display hardware is capable of returning the current scan line.

DDCAPS_STEREOVIEW

The display hardware has stereo vision capabilities.

DDCAPS_VBI

The display hardware is capable of generating a vertical-blank interrupt.

DDCAPS_ZBLTS

Supports the use of z-buffers with blit operations.

DDCAPS_ZOVERLAYS

Supports the use of the application's UpdateOverlayZOrder method as a z-value for overlays to control their layering. If this capability bit is set by the Windows 2000 or later driver, DirectDraw is disabled.

 

dwCaps2

Specify more of the driver's capabilities. The driver should set the appropriate DDCAPS2_Xxx bit for every capability that it supports.

FlagMeaning

DDCAPS2_AUTOFLIPOVERLAY

The overlay can be automatically flipped to the next surface in the flip chain each time a hardware video port V-sync occurs, allowing the video port extensions (VPE) object and the overlay to double buffer the video without CPU overhead. This option is only valid when the surface is receiving data from hardware video port. If the hardware video port data is noninterlaced or noninterleaved, it flips on every V-sync. If the data is being interleaved in memory, it flips on every other V-sync.

DDCAPS2_CANAUTOGENMIPMAP

DirectX 9.0 and later versions only.
The driver and its device support automatically regenerating the sublevels of mipmap textures.

DDCAPS2_CANBOBHARDWARE

The overlay hardware can display each field of an interlaced video stream individually.

DDCAPS2_CANBOBINTERLEAVED

The overlay hardware can display each field of an interlaced video stream individually while it is interleaved in memory without causing any artifacts that might normally occur without special hardware support. This option is only valid when the surface is receiving data from a VPE object and is only valid when the video is zoomed at least 200 percent in the vertical direction.

DDCAPS2_CANBOBNONINTERLEAVED

The overlay hardware can display each field of an interlaced video stream individually while it is not interleaved in memory without causing any artifacts that might normally occur without special hardware support. This option is only valid when the surface is receiving data from a VPE object and is only valid when the video is zoomed at least 200 percent in the vertical direction.

DDCAPS2_CANCALIBRATEGAMMA

A calibrator is available to adjust the gamma ramp according to the physical display properties so that the result is identical on all calibrated systems.

DDCAPS2_CANDROPZ16BIT

Sixteen-bit RGBZ values can be converted into 16-bit RGB values. (The system does not support eight-bit conversions.)

DDCAPS2_CANFLIPODDEVEN

The driver supports bob using software without using a VPE object.

DDCAPS2_CANMANAGERESOURCE

The driver supports managing resources.

DDCAPS2_CANMANAGETEXTURE

The driver supports managing textures.

DDCAPS2_CANRENDERWINDOWED

The driver can render in windowed mode.

DDCAPS2_CERTIFIED

The display hardware is certified.

DDCAPS2_COLORCONTROLOVERLAY

The overlay surface contains color controls (brightness, sharpness, and so on).

DDCAPS2_COLORCONTROLPRIMARY

The primary surface contains color controls (gamma, and so on).

DDCAPS2_COPYFOURCC

The driver supports blitting any FOURCC surface to another surface of the same FOURCC.

DDCAPS2_FLIPINTERVAL

The driver responds to the DDFLIP_INTERVAL2, DDFLIP_INTERVAL3, and DDFLIP_INTERVAL4 flags.

DDCAPS2_FLIPNOVSYNC

The driver responds to DDFLIP_FLIPNOVSYNC.

DDCAPS2_NO2DDURING3DSCENE

The driver cannot interleave 2D operations such as DdBlt or DdLock on any surfaces that Microsoft Direct3D is using between calls to the IDirect3DDevice::BeginScene and IDirect3DDevice::EndScene methods.

DDCAPS2_NONLOCALVIDMEM

The driver supports nonlocal display memory.

DDCAPS2_NONLOCALVIDMEMCAPS

Blit capabilities for nonlocal display memory surfaces differ from local display memory surfaces. If this flag is present, the DDCAPS2_NONLOCALVIDMEM flag is also present.

DDCAPS2_NOPAGELOCKREQUIRED

The driver should be called for blits involving system memory surfaces even if the system memory surfaces are not pagelocked.

DDCAPS2_PRIMARYGAMMA

The driver supports loadable gamma ramps for the primary surface.

DDCAPS2_VIDEOPORT

The display hardware contains a hardware video port.

DDCAPS2_WIDESURFACES

The display driver can create surfaces wider than the primary surface. Drivers that set this bit should expect to receive CreateSurface requests from applications for surfaces wider than the primary surface.

 

dwCKeyCaps

Specify the color key capabilities of surfaces. The driver should set the appropriate DDCKEYCAPS_Xxx bit for every capability that it supports.

FlagMeaning

DDCKEYCAPS_DESTBLT

Supports transparent blitting with a color key that identifies the replaceable bits of the destination surface for RGB colors.

DDCKEYCAPS_DESTBLTCLRSPACE

Supports transparent blitting with a color space that identifies the replaceable bits of the destination surface for RGB colors.

DDCKEYCAPS_DESTBLTCLRSPACEYUV

Supports transparent blitting with a color space that identifies the replaceable bits of the destination surface for YUV colors.

DDCKEYCAPS_DESTBLTYUV

Supports transparent blitting with a color key that identifies the replaceable bits of the destination surface for YUV colors.

DDCKEYCAPS_DESTOVERLAY

Supports overlaying with color keying of the replaceable bits of the destination surface being overlaid for RGB colors.

DDCKEYCAPS_DESTOVERLAYCLRSPACE

Supports a color space as the color key for the destination of RGB colors.

DDCKEYCAPS_DESTOVERLAYCLRSPACEYUV

Supports a color space as the color key for the destination of YUV colors.

DDCKEYCAPS_DESTOVERLAYONEACTIVE

Supports only one active destination color key value for visible overlay surfaces.

DDCKEYCAPS_DESTOVERLAYYUV

Supports overlaying using color keying of the replaceable bits of the destination surface being overlaid for YUV colors.

DDCKEYCAPS_NOCOSTOVERLAY

Indicates that there are no bandwidth tradeoffs for using the color key with an overlay.

DDCKEYCAPS_SRCBLT

Supports transparent blitting using the color key for the source with this surface for RGB colors.

DDCKEYCAPS_SRCBLTCLRSPACE

Supports transparent blitting using a color space for the source with this surface for RGB colors.

DDCKEYCAPS_SRCBLTCLRSPACEYUV

Supports transparent blitting using a color space for the source with this surface for YUV colors.

DDCKEYCAPS_SRCBLTYUV

Supports transparent blitting using the color key for the source with this surface for YUV colors.

DDCKEYCAPS_SRCOVERLAY

Supports overlaying using the color key for the source with this overlay surface for RGB colors.

DDCKEYCAPS_SRCOVERLAYCLRSPACE

Supports overlaying using a color space as the source color key for the overlay surface for RGB colors.

DDCKEYCAPS_SRCOVERLAYCLRSPACEYUV

Supports overlaying using a color space as the source color key for the overlay surface for YUV colors.

DDCKEYCAPS_SRCOVERLAYONEACTIVE

Supports only one active source color key value for visible overlay surfaces.

DDCKEYCAPS_SRCOVERLAYYUV

Supports overlaying using the color key for the source with this overlay surface for YUV colors.

 

dwFXCaps

Specify the driver's stretching and effects capabilities. The driver should set the appropriate DDFXCAPS_Xxx bit for every capability that it supports.

FlagMeaning

DDFXCAPS_BLTARITHSTRETCHY

Uses arithmetic operations, rather than pixel-doubling techniques, to stretch and shrink surfaces during a blit operation. Occurs along the y-axis (vertically).

DDFXCAPS_BLTARITHSTRETCHYN

Uses arithmetic operations, rather than pixel-doubling techniques, to stretch and shrink surfaces during a blit operation. Occurs along the y-axis (vertically), and works only for integer stretching (x1, x2, and so on).

DDFXCAPS_BLTMIRRORLEFTRIGHT

Supports mirroring left to right in a blit operation.

DDFXCAPS_BLTMIRRORUPDOWN

Supports mirroring top to bottom in a blit operation.

DDFXCAPS_BLTROTATION

Supports arbitrary rotation in a blit operation. If this capability bit is set by the Windows 2000 or later driver, DirectDraw is disabled.

DDFXCAPS_BLTROTATION90

Supports 90-degree rotations in a blit operation. If this capability bit is set by the Windows 2000 or later driver, DirectDraw is disabled.

DDFXCAPS_BLTSHRINKX

Supports arbitrary shrinking of a surface along the x-axis (horizontally). This flag is valid only for blit operations.

DDFXCAPS_BLTSHRINKXN

Supports integer shrinking (x1, x2, and so on) of a surface along the x-axis (horizontally). This flag is valid only for blit operations.

DDFXCAPS_BLTSHRINKY

Supports arbitrary shrinking of a surface along the y-axis (vertically). This flag is valid only for blit operations.

DDFXCAPS_BLTSHRINKYN

Supports integer shrinking (x1, x2, and so on) of a surface along the y-axis (vertically). This flag is valid only for blit operations.

DDFXCAPS_BLTSTRETCHX

Supports arbitrary stretching of a surface along the x-axis (horizontally). This flag is valid only for blit operations.

DDFXCAPS_BLTSTRETCHXN

Supports integer stretching (x1, x2, and so on) of a surface along the x-axis (horizontally). This flag is valid only for blit operations.

DDFXCAPS_BLTSTRETCHY

Supports arbitrary stretching of a surface along the y-axis (vertically). This flag is valid only for blit operations.

DDFXCAPS_BLTSTRETCHYN

Supports integer stretching (x1, x2, and so on) of a surface along the y-axis (vertically). This flag is valid only for blit operations.

DDFXCAPS_OVERLAYARITHSTRETCHY

Uses arithmetic operations, rather than pixel-doubling techniques, to stretch and shrink surfaces during an overlay operation. Occurs along the y-axis (vertically).

DDFXCAPS_OVERLAYARITHSTRETCHYN

Uses arithmetic operations, rather than pixel-doubling techniques, to stretch and shrink surfaces during an overlay operation. Occurs along the y-axis (vertically), and works only for integer stretching (x1, x2, and so on).

DDFXCAPS_OVERLAYMIRRORLEFTRIGHT

Supports mirroring of overlays around the vertical axis.

DDFXCAPS_OVERLAYMIRRORUPDOWN

Supports mirroring of overlays across the horizontal axis.

DDFXCAPS_OVERLAYSHRINKX

Supports arbitrary shrinking of a surface along the x-axis (horizontally). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that shrinking is available.

DDFXCAPS_OVERLAYSHRINKXN

Supports integer shrinking (x1, x2, and so on) of a surface along the x-axis (horizontally). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that shrinking is available.

DDFXCAPS_OVERLAYSHRINKY

Supports arbitrary shrinking of a surface along the y-axis (vertically). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that shrinking is available.

DDFXCAPS_OVERLAYSHRINKYN

Supports integer shrinking (x1, x2, and so on) of a surface along the y-axis (vertically). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that shrinking is available.

DDFXCAPS_OVERLAYSTRETCHX

Supports arbitrary stretching of a surface along the x-axis (horizontally). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that stretching is available.

DDFXCAPS_OVERLAYSTRETCHXN

Supports integer stretching (x1, x2, and so on) of a surface along the x-axis (horizontally). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that stretching is available.

DDFXCAPS_OVERLAYSTRETCHY

Supports arbitrary stretching of a surface along the y-axis (vertically). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that stretching is available.

DDFXCAPS_OVERLAYSTRETCHYN

Supports integer stretching (x1, x2, and so on) of a surface along the y-axis (vertically). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that stretching is available.

 

dwFXAlphaCaps

This member and its flags are obsolete and should not be used by the driver.

dwPalCaps

Specify the driver's palette capabilities. The driver should set the appropriate DDPCAPS_Xxx bit for every capability that it supports. The DDPCAPS_Xxx flags are defined in ddraw.h. The DirectDraw runtime currently ignores these capabilities.

dwSVCaps

Specify the driver's stereo vision capabilities. The driver should set the appropriate DDSVCAPS_Xxx bit for every capability that it supports.

FlagMeaning

DDSVCAPS_ENIGMA

The stereo view is accomplished using Enigma encoding.

DDSVCAPS_FLICKER

The stereo view is accomplished using high-frequency flickering.

DDSVCAPS_REDBLUE

The stereo view is accomplished when the viewer looks at the image through red and blue filters placed over the left and right eyes. All images must adapt their color spaces for this process.

DDSVCAPS_SPLIT

The stereo view is accomplished with split-screen technology.

 

dwAlphaBltConstBitDepths

Reserved for system use. The driver should ignore this member.

dwAlphaBltPixelBitDepths

Reserved for system use. The driver should ignore this member.

dwAlphaBltSurfaceBitDepths

Reserved for system use. The driver should ignore this member.

dwAlphaOverlayConstBitDepths

Reserved for system use. The driver should ignore this member.

dwAlphaOverlayPixelBitDepths

Reserved for system use. The driver should ignore this member.

dwAlphaOverlaySurfaceBitDepths

Reserved for system use. The driver should ignore this member.

dwZBufferBitDepths

Indicates a flag that specifies the Z buffer depths supported by the driver. This can be one or more of the following values:

FlagMeaning

DDBD_8

The driver supports an 8bpp depth buffer.

DDBD_16

The driver supports a 16bpp depth buffer.

DDBD_24

The driver supports a 24bpp depth buffer.

DDBD_32

The driver supports a 32bpp depth buffer.

 

dwVidMemTotal

Specifies the total amount of display memory, in bytes.

dwVidMemFree

Specifies the number of bytes of free display memory. The driver sets this member once during initialization to the same value it returns in the dwVidMemTotal member. DirectDraw updates it every time the application does a memory allocation.

dwMaxVisibleOverlays

Specifies the maximum number of visible overlays.

dwCurrVisibleOverlays

Specifies the current number of visible overlays.

dwNumFourCCCodes

Specifies the number of FOURCC codes that the driver supports.

dwAlignBoundarySrc

Specifies the source rectangle alignment. This member can be optionally set by the driver. If the driver sets this member, then the overlay source rectangle's top left coordinate value must be a multiple of dwAlignBoundarySrc.

dwAlignSizeSrc

Specifies the size of the source rectangle, in bytes. This member can be optionally set by the driver. If the driver sets this member, then the overlay source rectangle's width must be a multiple of dwAlignSizeSrc.

dwAlignBoundaryDest

Specifies the destination rectangle alignment. This member can be optionally set by the driver. If the driver sets this member, then the overlay destination rectangle's top left coordinate value must be a multiple of dwAlignBoundaryDest.

dwAlignSizeDest

Specifies the destination rectangle byte size. This member can be optionally set by the driver. If the driver sets this member, then the overlay destination rectangle's width must be a multiple of dwAlignSizeDest.

dwAlignStrideAlign

Reserved for system use and should be ignored by the driver.

dwRops

Specifies an array of DD_ROP_SPACE DWORDs that together can hold flags to indicate the ROPs that the driver supports. The driver should set the bitfield for every corresponding ROP that it supports. See the Microsoft Windows SDK documentation for information about ROPs.

ddsCaps

Specifies a DDSCAPS structure that describes the types of surfaces the driver supports.

dwMinOverlayStretch

Specifies the minimum overlay stretch factor multiplied by 1000. For example, a factor of 1.3 should be stored as 1300. The display driver must set the minimum factor to the actual minimum to which the graphics hardware can shrink the overlay. If the graphics hardware has no minimum limitation, set to 1.

dwMaxOverlayStretch

Specifies the maximum overlay stretch factor multiplied by 1000. For example, a factor of 1.3 should be stored as 1300. The display driver must set the maximum factor to the actual maximum to which the graphics hardware can stretch the overlay. If the graphics hardware has no maximum limitation, set to 32000.

dwMinLiveVideoStretch

Specifies the minimum live video stretch factor multiplied by 1000. For example, a factor of 1.3 should be stored as 1300.

dwMaxLiveVideoStretch

Specifies the maximum live video stretch factor multiplied by 1000. For example, a factor of 1.3 should be stored as 1300.

dwMinHwCodecStretch

Specifies the minimum hardware codec stretch factor multiplied by 1000. For example, a factor of 1.3 should be stored as 1300.

dwMaxHwCodecStretch

Specifies the maximum hardware codec stretch factor multiplied by 1000. For example, a factor of 1.3 should be stored as 1300.

dwReserved1

Reserved for system use. The driver should ignore this member.

dwReserved2

Reserved for system use. The driver should ignore this member.

dwReserved3

Reserved for system use. The driver should ignore this member.

dwSVBCaps

Indicates a set of flags that specify the driver-specific capabilities for system-memory-to-display-memory blits. The driver should bitwise OR the appropriate DDCAPS_Xxx flags (see the dwCaps member) to indicate the types of blit operations it supports when blitting from system memory to display memory.

dwSVBCKeyCaps

Indicates a set of flags that specify driver color-key capabilities for system-memory-to-display-memory blits. The driver should bitwise OR the appropriate DDCKEYCAPS_Xxx flags (see the dwCKeyCaps member) to indicate the types of color key operations it supports when blitting from system memory to display memory.

dwSVBFXCaps

Indicates a set of flags that specify driver FX capabilities for system-memory-to-display-memory blits. The driver should bitwise OR the appropriate DDFXCAPS_Xxx flags (see the dwFXCaps member) to indicate the types of effects it supports when blitting from system memory to display memory.

dwSVBRops

Specifies an array of DD_ROP_SPACE DWORDs that together can hold flags to indicate the ROPs that the driver supports when performing system-memory-to-display-memory blits. The driver should set the bitfield for every corresponding ROP that it supports. See the Microsoft Windows SDK documentation for information about ROPs.

dwVSBCaps

Indicates a set of flags that specify driver-specific capabilities for display-memory-to-system-memory blits. The driver should bitwise OR the appropriate DDCAPS_Xxx flags (see the dwCaps member) to indicate the types of blit operations it supports when blitting from display memory to system memory.

dwVSBCKeyCaps

Indicates a set of flags that specify driver color-key capabilities for display-memory-to-system-memory blits. The driver should bitwise OR the appropriate DDCKEYCAPS_Xxx flags (see the dwCKeyCaps member) to indicate the types of color key operations it supports when blitting from display memory to system memory.

dwVSBFXCaps

Indicates a set of flags that specify driver FX capabilities for display-memory-to-system-memory blits. The driver should bitwise OR the appropriate DDFXCAPS_Xxx flags (see the dwFXCaps member) to indicate the types of effects it supports when blitting from display memory to system memory.

dwVSBRops

Specifies an array of DD_ROP_SPACE DWORDs that together can hold flags to indicate the ROPs that the driver supports when performing display-memory-to-system-memory blits. The driver should set the bitfield for every corresponding ROP that it supports. See the Windows SDK documentation for information about ROPs.

dwSSBCaps

Indicates a set of flags that specify driver-specific capabilities for system-memory-to-system-memory blits. The driver should bitwise OR the appropriate DDCAPS_Xxx flags (see the dwCaps member) to indicate the types of blit operations it supports when blitting from system memory to system memory.

dwSSBCKeyCaps

Indicates a set of flags that specify driver color-key capabilities for system-memory-to-system-memory blits. The driver should bitwise OR the appropriate DDCKEYCAPS_Xxx flags (see the dwCKeyCaps member) to indicate the types of color key operations it supports when blitting from system memory to system memory.

dwSSBFXCaps

Indicates a set of flags that specify driver FX capabilities for system-memory-to-system-memory blits. The driver should bitwise OR the appropriate DDFXCAPS_Xxx flags (see the dwFXCaps member) to indicate the types of effects it supports when blitting from system memory to system memory.

dwSSBRops

Specifies an array of DD_ROP_SPACE DWORDs that together can hold flags to indicate the ROPs that the driver supports when performing system-memory-to-system-memory blits. The driver should set the bitfield for every corresponding ROP that it supports. See the Windows SDK documentation for information about ROPs.

dwMaxVideoPorts

Specifies the maximum number of usable VPE objects.

dwCurrVideoPorts

Specifies the current number of VPE objects used. The driver does not need to fill in this member because it is set by DirectDraw.

dwSVBCaps2

Specifies additional driver-specific capabilities for system-memory-to-display-memory blits. Valid flags are identical to the blit-related flags used with the dwCaps2 member.

Remarks

This section contains the DirectDraw driver structure whose name has the form DDCORECAPS, which is the form used on Windows 98/Me. This structure is identical to that whose name has the form DDNTCORECAPS which is the form used on Windows 2000 and later versions. The include file dx95type.h contains a type define from DDNTCORECAPS to DDCORECAPS.

This structure mirrors the first entries of the DDCAPS structure, but is of a fixed size and does not grow as DDCAPS does.

The driver initializes DDCORECAPS when it is initializing the other members of the DD_HALINFO structure in its DrvGetDirectDrawInfo structure. The DirectDraw runtime might update some members.

DirectDraw requests additional driver capabilities by calling the DdGetDriverInfo function that is also returned in the DD_HALINFO structure.

Requirements

Header

Ddrawi.h (include Ddrawi.h)

 

 

Send comments about this topic to Microsoft

Show: