D3DKMT_PRESENTHISTORYTOKEN 结构 (d3dkmthk.h)

D3DKMT_PRESENTHISTORYTOKEN 结构标识一种当前操作类型。

语法

typedef struct _D3DKMT_PRESENTHISTORYTOKEN
{
    D3DKMT_PRESENT_MODEL  Model;
    UINT                  TokenSize;

#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WIN8)
    UINT64                CompositionBindingId;
#endif

    union
    {
        D3DKMT_FLIPMODEL_PRESENTHISTORYTOKEN        Flip;
        D3DKMT_BLTMODEL_PRESENTHISTORYTOKEN         Blt;
        D3DKMT_VISTABLTMODEL_PRESENTHISTORYTOKEN    VistaBlt;
        D3DKMT_GDIMODEL_PRESENTHISTORYTOKEN         Gdi;
        D3DKMT_FENCE_PRESENTHISTORYTOKEN            Fence;
        D3DKMT_GDIMODEL_SYSMEM_PRESENTHISTORYTOKEN  GdiSysMem;
        D3DKMT_COMPOSITION_PRESENTHISTORYTOKEN      Composition;
        D3DKMT_FLIPMANAGER_PRESENTHISTORYTOKEN      FlipManager;
#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM2_1)
        D3DKMT_SURFACECOMPLETE_PRESENTHISTORYTOKEN  SurfaceComplete;
#endif
    }
    Token;
} D3DKMT_PRESENTHISTORYTOKEN;

成员

[in] Model

一个D3DKMT_PRESENT_MODEL枚举值,该值指示当前操作的模型。

[in] TokenSize

当前历史记录标记的大小(以字节为单位),包括 Model 成员中的值。 提交令牌时,应将 TokenSize 设置为零。 当 ICD 调用 D3DKMTGetPresentHistory 来检索现有历史记录时,运行时将初始化 TokenSize。 然后,可以使用 TokenSize 中的值转到当前历史记录缓冲区中的下一个标记。

当前历史记录令牌是呈现应用提交的数据包,用于通知桌面窗口管理器 (DWM) 呈现已完成并且交换链回缓冲区已准备好显示。

CompositionBindingId

组合图面的活动绑定缓冲区的标识符。

从 Windows 8 开始支持。

Token

当前历史记录标记。

[in/out] Token.Flip

标识翻转当前历史记录操作的D3DKMT_FLIPMODEL_PRESENTHISTORYTOKEN结构。 如果模型成员D3DKMT_PM_REDIRECTED_FLIP,则包含在 D3DKMT_PRESENTHISTORYTOKEN 中的令牌联合将保留此结构。

[in/out] Token.Blt

标识位块传输 ( bitblt) 当前历史记录操作的D3DKMT_BLTMODEL_PRESENTHISTORYTOKEN结构。 如果 模型 成员D3DKMT_PM_REDIRECTED_BLT,则包含在 D3DKMT_PRESENTHISTORYTOKEN 中的联合包含此类型的结构。

[in/out] Token.VistaBlt

一个 ULONGLONG 值,该值标识 windows Vista 位块传输 (bitblt) 当前历史记录操作。 如果 模型 成员D3DKMT_PM_REDIRECTED_VISTABLT,则包含在 D3DKMT_PRESENTHISTORYTOKEN 中的联合将保留此类型的值。

[in/out] Token.Gdi

标识 GDI 当前历史记录操作 的D3DKMT_GDIMODEL_PRESENTHISTORYTOKEN 结构。 如果 模型 成员D3DKMT_PM_REDIRECTED_GDI,则包含在 D3DKMT_PRESENTHISTORYTOKEN 中的联合包含此类型的结构。

[in/out] Token.Fence

标识围栏当前历史记录操作的 D3DKMT_FENCE_PRESENTHISTORYTOKEN 结构。 如果 模型 成员D3DKMT_PM_SCREENCAPTUREFENCE,则包含在 D3DKMT_PRESENTHISTORYTOKEN 中的联合将保留此类型的结构。

[in/out] Token.GdiSysMem

标识 GDI 系统当前历史记录操作 的D3DKMT_GDIMODEL_SYSMEM_PRESENTHISTORYTOKEN 结构。 如果 模型 成员D3DKMT_PM_REDIRECTED_GDI_SYSMEM,则包含在 D3DKMT_PRESENTHISTORYTOKEN 中的联合包含此类型的结构。

[in/out] Token.Composition

标识组合交换链当前历史记录操作 的D3DKMT_COMPOSITION_PRESENTHISTORYTOKEN 结构。 这种类型的演示文稿用于基于 XAML 的应用。

从 Windows 8.1 开始支持。

Token.FlipManager

标识翻转管理器操作 的D3DKMT_FLIPMANAGER_PRESENTHISTORYTOKEN 结构。

Token.SurfaceComplete

标识表面完成操作 的D3DKMT_SURFACECOMPLETE_PRESENTHISTORYTOKEN 结构。

从 Windows 10 版本 1607 开始受支持。

要求

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

另请参阅

D3DKMT_PRESENT_MODEL

D3DKMTGetPresentHistory

D3DKMT_FLIPMODEL_PRESENTHISTORYTOKEN

D3DKMT_BLTMODEL_PRESENTHISTORYTOKEN

D3DKMT_GDIMODEL_PRESENTHISTORYTOKEN

D3DKMT_FENCE_PRESENTHISTORYTOKEN

D3DKMT_GDIMODEL_SYSMEM_PRESENTHISTORYTOKEN

D3DKMT_COMPOSITION_PRESENTHISTORYTOKEN

D3DKMT_FLIPMANAGER_PRESENTHISTORYTOKEN

D3DKMT_SURFACECOMPLETE_PRESENTHISTORYTOKEN