EVT_IDD_CX_MONITOR_QUERY_TARGET_MODES2 callback function (iddcx.h)

The OS calls EVT_IDD_CX_MONITOR_QUERY_TARGET_MODES2 to get a list of target modes supported by the driver for a monitor connected to the endpoint. This callback is similar to EVT_IDD_CX_MONITOR_QUERY_TARGET_MODES, but allows the driver to report additional information for HDR10 and WCG target modes.

Syntax

EVT_IDD_CX_MONITOR_QUERY_TARGET_MODES2 EvtIddCxMonitorQueryTargetModes2;

NTSTATUS EvtIddCxMonitorQueryTargetModes2(
  IDDCX_MONITOR MonitorObject,
  const IDARG_IN_QUERYTARGETMODES2 *pInArgs,
  IDARG_OUT_QUERYTARGETMODES *pOutArgs
)
{...}

Parameters

MonitorObject

[in] The OS-generated context handle that identifies the monitor to generate a list of target modes for. This IDDCX_MONITOR object was returned in a prior call to IddCxMonitorCreate.

pInArgs

[in] Pointer to a IDARG_IN_QUERYTARGETMODES2 structure that contains input arguments used by EVT_IDD_CX_MONITOR_QUERY_TARGET_MODES2.

pOutArgs

[out] Pointer to a IDARG_OUT_QUERYTARGETMODES structure that contains output arguments generated by EVT_IDD_CX_MONITOR_QUERY_TARGET_MODES2.

Return value

EVT_IDD_CX_MONITOR_QUERY_TARGET_MODES2 returns an NTSTATUS value. If the operation is successful, it returns STATUS_SUCCESS or another status value for which NT_SUCCESS(status) equals TRUE. Otherwise, it returns an appropriate NTSTATUS error code.

Remarks

This function is similar to EVT_IDD_CX_PARSE_MONITOR_DESCRIPTION2 in that it allows drivers to report the same extra mode information. A driver that supports HDR must implement this function; drivers that don't support HDR can expose only the existing EVT_IDD_CX_MONITOR_QUERY_TARGET_MODES function.

The IDDCX_TARGET_MODE2::BitsPerComponent field allows multiple formats and bit depths to be reported in a single mode. For example, a driver can report 8 and 10 bits per component in RGB by setting both IDDCX_BITS_PER_COMPONENT_8 and IDDCX_BITS_PER_COMPONENT_10 in IDDCX_TARGET_MODE2::BitsPerComponent::Rgb. A driver should only report different bits per component as unique modes if other mode details also differ.

Drivers returning modes with SDR WCG or HDR parameters will fail if they have not also reported IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16 in the IddCxAdapterInitAsync call. SDR WCG and HDR IDDCX_WIRE_BITS_PER_COMPONENT.BitsPerComponent parameters are:

  • Any value for Rgb other than IDDCX_BITS_PER_COMPONENT_8, or
  • Any value for YCbCr444, YCbCr422, or YCbCr420 other than IDDCX_BITS_PER_COMPONENT_NONE.

For more information about HDR support, see IddCx version 1.10 updates.

Requirements

Requirement Value
Minimum supported client Windows 11, version 22H2 September Update (IddCx version 1.10)
Header iddcx.h

See also

IDARG_IN_QUERYTARGETMODES2

IDARG_OUT_QUERYTARGETMODES