// d3dkmddi.h
typedef struct _DXGK_MULTIPLANEOVERLAYCAPS {
union {
struct {
UINT Rotation : 1;
UINT RotationWithoutIndependentFlip : 1;
UINT VerticalFlip : 1;
UINT HorizontalFlip : 1;
UINT StretchRGB : 1;
UINT StretchYUV : 1;
UINT BilinearFilter : 1;
UINT HighFilter : 1;
UINT Shared : 1;
UINT Immediate : 1;
UINT Plane0ForVirtualModeOnly : 1;
UINT Reserved : 21;
};
UINT Value;
};
} DXGK_MULTIPLANEOVERLAYCAPS;
View the official Windows Driver Kit DDI referenceNo description available.
Multiplane overlay capabilities returned by the DxgkDdiGetMultiPlaneOverlayCaps function.
RotationWhen TRUE, indicates that the hardware supports rotating the plane 90, 180, or 270 degrees.
If TRUE, RotationWithoutIndependentFlip should be FALSE.
RotationWithoutIndependentFlipWhen TRUE, indicates that the driver can perform plane rotation of 90, 180, or 270 degrees, but IndependentFlip cannot be used when rotating the plane.
If TRUE, Rotation should be FALSE.
VerticalFlipWhen TRUE, the hardware supports flipping the plane vertically.
HorizontalFlipWhen TRUE, the hardware supports flipping the plane horizontally.
StretchRGBWhen TRUE, the hardware supports stretching any plane containing RGB data.
StretchYUVWhen TRUE, the hardware supports stretching any plane containing YUV data.
BilinearFilterWhen TRUE, the hardware supports bilinear filtering.
HighFilterWhen TRUE, the hardware supports better than bilinear filtering.
SharedWhen TRUE, the multiplane overlay resources reported by the capabilities are shared across all VidPn sources.
When FALSE, the multiplane overlay resources reported by capabilities are dedicated to the specific VidPn source.
ImmediateWhen TRUE, the HW supports immediate flips of the MPO plane.
If the flip contains changes that cannot be performed as an immediate flip, the driver can promote the flip to a VSYNC flip using the new HSync completion infrastructure.
Plane0ForVirtualModeOnlyWhen TRUE, the hardware will always apply the stretch factor of plane 0 to the hardware cursor as well as the plane. This implies that stretching/shrinking of plane 0 should only occur when plane 0 is the desktop plane and when the stretching/shrinking is used for virtual mode support.
ReservedThis member is reserved and should be set to zero. Setting this member to zero is equivalent to setting the remaining 21 bits (0xFFFFFFFC) of the 32-bit Value member to zeros.
Value