D3DDDICB_LOCK 结构 (d3dumddi.h)

D3DDDICB_LOCK 结构描述用于锁定分配的参数。

语法

typedef struct _D3DDDICB_LOCK {
  [in/out] D3DKMT_HANDLE          hAllocation;
  [in]     UINT                   PrivateDriverData;
  [in]     UINT                   NumPages;
  [in]     const UINT             *pPages;
  [out]    VOID                   *pData;
  [in]     D3DDDICB_LOCKFLAGS     Flags;
           D3DGPU_VIRTUAL_ADDRESS GpuVirtualAddress;
} D3DDDICB_LOCK;

成员

[in/out] hAllocation

表示分配的内核模式句柄的D3DKMT_HANDLE数据类型。 Microsoft Direct3D 运行时的 pfnAllocateCb 函数返回此句柄。 因此,用户模式显示驱动程序应使用此句柄来锁定分配。

如果在 Flags 成员中设置了 Discard 位字段标志,则视频内存管理器将创建分配的新实例,并返回表示新实例的新句柄。

[in] PrivateDriverData

专用数据 (例如,从用户模式显示驱动程序发送到显示微型端口驱动程序的 DxgkDdiAcquireSwizzlingRange 函数的 MIP 级别) 。

[in] NumPages

pPages 指向的页面列表中的页数。

[in] pPages

要锁定的页数组。 数组中的每个页面都由整数偏移量描述。 零表示图面中的第一页,一页表示第二页,依依。

[out] pData

指向从显示微型端口驱动程序和内存管理器返回的内存的指针。 锁定内存页列表时,返回的指针是指向第一个内存页的指针。

[in] Flags

一种D3DDDICB_LOCKFLAGS结构,用于在位字段标志中标识如何锁定分配。

请注意,一起指定某些标志无效,并且某些标志依赖于其他标志。 有关指定这些标志的详细信息,请参阅 D3DDDICB_LOCKFLAGS 的“备注”部分。

GpuVirtualAddress

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

此成员从 Windows 7 开始可用。

要求

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

另请参阅

D3DDDICB_LOCKFLAGS

DxgkDdiAcquireSwizzlingRange

pfnLockCb