D3DDDICB_SIGNALSYNCHRONIZATIONOBJECT2 structure (d3dumddi.h)

Describes the parameters that are required to set up signaling in a call to the pfnSignalSynchronizationObject2Cb function.

Syntax

typedef struct _D3DDDICB_SIGNALSYNCHRONIZATIONOBJECT2 {
  [in] HANDLE               hContext;
  [in] UINT                 ObjectCount;
       D3DKMT_HANDLE        ObjectHandleArray[D3DDDI_MAX_OBJECT_SIGNALED];
  [in] D3DDDICB_SIGNALFLAGS Flags;
  [in] ULONG                BroadcastContextCount;
       HANDLE               BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
  union {
    [in] UINT64 FenceValue;
    [in] HANDLE CpuEventHandle;
  };
} D3DDDICB_SIGNALSYNCHRONIZATIONOBJECT2;

Members

[in] hContext

A handle to a Direct3D context that signals the synchronization events in the array that the ObjectHandleArray member specifies.

[in] ObjectCount

The number of synchronization events in the ObjectHandleArray array.

[in] ObjectHandleArray[D3DDDI_MAX_OBJECT_SIGNALED]

An array of handles to the synchronization events that the context that is specified by the hContext member signals. The D3DDDI_MAX_OBJECT_SIGNALED constant, which is defined as 32, indicates the maximum number of synchronization events that the context can signal.

All synchronization objects must be created on the same logical adapter as the context specified by hContext.

[in] Flags

A D3DDDICB_SIGNALFLAGS structure that indicates, in bit-field flags, signaling behavior.

[in] BroadcastContextCount

The number of contexts to broadcast this signal buffer to.

[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]

An array of D3DKMT_HANDLE data types that represent kernel-mode handles to the additional contexts to broadcast the current signal command to. The D3DDDI_MAX_BROADCAST_CONTEXT constant, which is defined as 64, defines the maximum number of synchronization events that the context can signal to.

All contexts must be created for the same Direct3D device and the context that is specified by hContext.

[in] FenceValue

A 64-bit value that specifies the current fence value of the GPU synchronization object.

This value applies only if the GPU synchronization object is of type D3DDDI_FENCE—namely, the Type member of the D3DDDI_SYNCHRONIZATIONOBJECTINFO2 structure has a value of D3DDDI_FENCE.

[in] CpuEventHandle

The handle of an event object that will be signaled when the signal command is processed. This member must be set only when Flags.EnqueueCpuEvent is specified.

Requirements

Requirement Value
Minimum supported client Windows 8
Minimum supported server Windows Server 2012
Header d3dumddi.h (include D3dumddi.h)

See also

D3DDDICB_SIGNALFLAGS

D3DDDI_SYNCHRONIZATIONOBJECTINFO2

pfnSignalSynchronizationObject2Cb