DXGK_PLANE_SPECIFIC_INPUT_FLAGS 结构 (d3dkmddi.h)

一个结构,其中包含要用于应用于平面的驱动程序的输入标志。

语法

typedef struct _DXGK_PLANE_SPECIFIC_INPUT_FLAGS {
  union {
    struct {
      UINT Enabled : 1;
      UINT FlipImmediate : 1;
      UINT FlipOnNextVSync : 1;
      UINT SharedPrimaryTransition : 1;
      UINT IndependentFlipExclusive : 1;
      UINT FlipImmediateNoTearing : 1;
#if ...
      UINT Reserved : 26;
#else
      UINT Reserved : 27;
#endif
    };
    UINT Value;
  };
} DXGK_PLANE_SPECIFIC_INPUT_FLAGS;

成员

Enabled

指示是否为显示启用覆盖平面。

FlipImmediate

指示驱动程序应执行不进行垂直同步的翻转操作。

FlipOnNextVSync

指示驱动程序应执行下一次垂直同步时发生的翻转操作。

如果当前显示的行小于 DXGK_MULTIPLANE_OVERLAY_PLANE3。MaxImmediateFlipLine,驱动程序应将此翻转转换为即时翻转并设置 DXGK_PLANE_SPECIFIC_OUTPUT_FLAGS。 FlipConvertedToImmediate 为 TRUE。

SharedPrimaryTransition

指定驱动程序正在转换到共享托管主分配或从共享托管主分配转换。

如果发生以下任一转换,则设置此成员:

  • 当前的主要分配不是共享的主分配,而是新的主分配。
  • 当前的主要分配是共享的主分配,但新的主分配不是。

设置 SharedPrimaryTransition 时,显示微型端口驱动程序必须验证硬件是否可以在主分配和共享主分配之间无缝切换,并且必须执行实现无缝切换所需的任何硬件编程。

IndependentFlipExclusive

设置 IndependentFlipExlusive 时,翻转是在独立翻转独占模式下完成的。 前端缓冲区仅由显示硬件访问,而不能由 DWM 访问。 内核模式驱动程序可以应用垂直同步相关的优化。

FlipImmediateNoTearing

支持可变刷新率的驱动程序可以支持此标志。 设置 FlipImmediateNoTearing 时,驱动程序应尽快翻转,但只能在空白时间内进行翻转,以避免撕裂。

如果在翻转请求时监视器已处于空白时段,则驱动程序应立即结束空白时段并立即启动下一帧。

如果监视器处于活动时段,则翻转需要等到活动时段结束。 空白时段开始后,驱动程序应立即处理翻转并启动新的活动周期,以便这两个帧之间的空白周期尽可能短。

Reserved

此成员为保留成员,应设置为零。 将此成员设置为零等效于将 32 位 Value 成员的剩余 27 位 (0xFFFFFFE0) 设置为零。

Value

要求

要求
Header d3dkmddi.h