D3DDDIARG_LOCKASYNC结构 (d3dumddi.h)

D3DDDIARG_LOCKASYNC结构描述要锁定的资源或图面。

语法

typedef struct _D3DDDIARG_LOCKASYNC {
  [in]  HANDLE                 hResource;
  [in]  UINT                   SubResourceIndex;
  [in]  D3DDDI_LOCKASYNCFLAGS  Flags;
  union {
    [in]  D3DDDIRANGE Range;
    [in]  RECT        Area;
    [in]  D3DDDIBOX   Box;
  };
  [out] HANDLE                 hCookie;
  [out] VOID                   *pSurfData;
  [out] UINT                   Pitch;
  [out] UINT                   SlicePitch;
        D3DGPU_VIRTUAL_ADDRESS GpuVirtualAddress;
} D3DDDIARG_LOCKASYNC;

成员

[in] hResource

要锁定的资源的句柄。

[in] SubResourceIndex

hResource 指定的资源的从零开始的索引。 此索引指示要锁定的子资源或图面。

[in] Flags

个D3DDDI_LOCKASYNCFLAGS 结构,指示在位字段标志中如何锁定资源。

注意 某些标志与其他标志互斥。 有关更多信息,请参见下面的“备注”部分。
 

[in] Range

一个 D3DDDIRANGE 结构,它描述要锁定的线性资源的子范围(如果 RangeValid 位字段标志在 标志 所指定的D3DDDI_LOCKASYNCFLAGS结构中设置)。

[in] Area

一个 RECT 结构,它描述要锁定的图面子结构(如果在标志所指定的D3DDDI_LOCKASYNCFLAGS结构中设置了 AreaValid 位字段标志)。

[in] Box

描述要锁定的卷的子卷的 D3DDDIBOX 结构(如果 BoxValid 位字段标志在 标志 所指定的D3DDDI_LOCKASYNCFLAGS结构中设置)。

[out] hCookie

表示重命名资源的句柄。 仅当 “放弃 位字段”标志在 标志 指定的D3DDDI_LOCKASYNCFLAGS结构中设置时,此句柄才有效。

[out] pSurfData

指向已锁定资源的内存区域的指针。 用户模式显示驱动程序的 LockAsync 函数将此指针返回到 Microsoft Direct3D 运行时。

[out] Pitch

锁定的图面的音调(以字节为单位)。 用户模式显示驱动程序的 LockAsync 函数将此音调值返回到 Direct3D 运行时。

[out] SlicePitch

锁定的图面的切片间距(以字节为单位)。 用户模式显示驱动程序的 LockAsync 函数将此切片间距值返回到 Direct3D 运行时。

GpuVirtualAddress

此成员保留,应设置为零。

此成员从 Windows 7 开始可用。

注解

Flags 成员指定的D3DDDI_LOCKASYNCFLAGS结构的成员必须遵循以下规则:

  • NoOverwrite 位字段标志不能与“放弃位字段”标志同时设置。
  • 必须随时设置 RangeValidAreaValidBoxValid 位字段标志之一。

要求

   
最低受支持的客户端 在 Windows Vista 及更高版本的 Windows 操作系统中可用。
Header d3dumddi.h (包括 D3dumddi.h)

另请参阅

D3DDDI_LOCKASYNCFLAGS

LockAsync

矩形