// dispmprt.h
typedef enum _DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC {
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC_UNINITIALIZED,
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC_BLACK,
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC_NON_BLACK,
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC_ERROR,
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC_UNKNOWN
} DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC;
View the official Windows Driver Kit DDI referenceNo description available.
The DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC enum provides CRC information for the current buffer being scanned out during diagnostic data collection.
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC_UNINITIALIZEDReserved for OS use during diagnostic initialization.
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC_BLACKDriver should return this value if based on the calculated CRC of the scanned out pixels they appear as all black.
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC_NON_BLACKDriver should return this value if based on the calculated CRC of the scanned out pixels they do not appear as all black.
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC_ERRORDriver should return this value if there was an error encountered while calculating the CRC or reference CRC was missing.
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC_UNKNOWNDriver should return this value if the hardware doesn't support calculating the CRC on scanned out pixels.
The DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_CRC enum is a member of the DXGK_DIAG_SCANOUT_BUFFER_CONTENT structure, which is passed as a member of the DXGK_DISPLAYSTATE_INTRUSIVE structure in calls to DxgkDdiGetDisplayStateIntrusive during diagnostic data collection.
If the hardware supports performing a CRC calculation on the final scanned out pixels then the driver should enable it. If the driver would need a reference black CRC to check against the current CRC then it should always cache the reference one. If the reference CRC depends on the current mode then it should change the reference on mode changes.
DXGK_DIAG_SCANOUT_BUFFER_CONTENT
DXGK_DIAG_DISPLAY_SCANOUT_BUFFER_HISTOGRAM
DXGKARG_GETDISPLAYSTATEINTRUSIVE
DxgkDdiGetDisplayStateIntrusive