D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2结构(d3dkmthk.h)

D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2结构包含有关 D3DKMTSignalSynchronizationObject2 函数信号的同步事件的信息。

语法

typedef struct _D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2 {
  [in] D3DKMT_HANDLE        hContext;
  [in] UINT                 ObjectCount;
       D3DKMT_HANDLE        ObjectHandleArray[D3DDDI_MAX_OBJECT_SIGNALED];
  [in] D3DDDICB_SIGNALFLAGS Flags;
  [in] ULONG                BroadcastContextCount;
       D3DKMT_HANDLE        BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
  union {
    struct {
      D3DKMT_ALIGN64 UINT64 FenceValue;
    } Fence;
         HANDLE                CpuEventHandle;
         D3DKMT_ALIGN64 UINT64 Reserved[8];
  };
} D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2;

成员

[in] hContext

一个内核模式句柄,用于指示数组中 ObjectHandleArray 成员指定的同步事件的上下文。

[in] ObjectCount

ObjectHandleArray 数组中的同步事件数。

[in] ObjectHandleArray[D3DDDI_MAX_OBJECT_SIGNALED]

内核模式数组处理由 hContext 成员信号指定的上下文的同步事件。 定义为 32 的 D3DDDI_MAX_OBJECT_SIGNALED 常量指示上下文可以发出信号的最大同步事件数。

[in] Flags

一个 D3DDDICB_SIGNALFLAGS 结构,用于指示位字段标志中的信号行为。

[in] BroadcastContextCount

BroadcastContext 指定的数组中的其他上下文数。

[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]

一个由D3DKMT_HANDLE数据类型构成的数组,这些数据类型表示内核模式句柄,用于将事件广播到的其他上下文。 D3DDDI_MAX_BROADCAST_CONTEXT常量(定义为 64)定义 OpenGL ICD 可以将事件广播到的最大上下文数。

hContext 成员指定且拥有该事件的原始上下文不是 BroadcastContext 数组中的元素。 例如,如果 BroadcastContext 数组包含一个元素,则 OpenGL ICD 会将事件发送到拥有上下文(hContext)并广播到该另一个上下文。

Fence

包含有关围栏的信息的结构。 D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2中的联合可以包含以下成员的围栏结构:

Fence.FenceValue

一个 64 位值,指定要发出信号的围栏值。

CpuEventHandle

要发出信号的 CPU 事件的句柄。

从 Windows 8 开始支持。

Reserved[8]

保留供将来使用的 64 位值的数组。 D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2中的联合可以保存此数组。

要求

要求 价值
最低支持的客户端 从 Windows 7作系统开始,支持D3DKMT_SIGNALSYNCHRONIZATIONOBJECT2。
标头 d3dkmthk.h (包括 D3dkmthk.h)

另请参阅

D3DDDICB_SIGNALFLAGS

D3DKMTSignalSynchronizationObject2