D3DDDICB_ALLOCATE 结构 (d3dumddi.h)

D3DDDICB_ALLOCATE 结构包含用于分配内存的信息。

语法

typedef struct _D3DDDICB_ALLOCATE {
  [in]  const VOID            *pPrivateDriverData;
  [in]  UINT                  PrivateDriverDataSize;
  [in]  HANDLE                hResource;
  [out] D3DKMT_HANDLE         hKMResource;
  [in]  UINT                  NumAllocations;
  union {
    [in]  D3DDDI_ALLOCATIONINFO  *pAllocationInfo;
    [in]  D3DDDI_ALLOCATIONINFO2 *pAllocationInfo2;
  };
  [in]  D3DDDI_ALLOCATIONINFO *pAllocationInfo;
} D3DDDICB_ALLOCATE;

成员

[in] pPrivateDriverData

指向传递到显示微型端口驱动程序的专用数据的指针。 此数据按资源而不是按分配。 如果分配附加到现有资源,则当前数据应覆盖以前的数据。

[in] PrivateDriverDataSize

pPrivateDriverData 指向的私有数据的大小(以字节为单位)。

[in] hResource

与分配关联的资源的句柄。

当用户模式显示驱动程序调用 pfnAllocateCb 函数时,驱动程序应在调用 CreateResource 中分配从 D3DDDIARG_CREATERESOURCE 结构的 hResource 成员收到的值,或者在调用 CreateResource (D3D10) CreateResource (D3D11) 分配 hRTResource 参数。 它应分配值以将分配与资源相关联,或分配 NULL 以将分配与设备相关联。 驱动程序必须为为响应共享资源而创建的分配分配分配非 NULL 值。 共享资源可能是由于 CreateResource 调用而生成的,该调用在 D3DDDIARG_CREATERESOURCE 的 Flags 成员中设置了 SharedResource 位字段标志。 它们也可能由 CreateResource (D3D10) CreateResource (D3D11) 调用导致,D3D10_DDI_RESOURCE_MISC_SHARED值在 D3D10DDIARG_CREATERESOURCED3D11DDIARG_CREATERESOURCEMiscFlags 成员中设置。

Microsoft Direct3D 运行时应在驱动程序调用中使用此句柄来标识资源。

[out] hKMResource

D3DKMT_HANDLE数据类型,表示与分配关联的资源的内核模式句柄。

仅当用户模式显示驱动程序将 D3DDDICB_ALLOCATE 的 hResource 成员设置为从 D3DDDIARG_CREATERESOURCE 结构的 hResource 成员接收的用户模式运行时资源句柄时,Direct3D 运行时才会创建并返回 内核 模式资源句柄。 此句柄是在对 CreateResource 的调用中接收的,或者从对 CreateResource (D3D10) CreateResource (D3D11) 的调用中的 hResource 参数接收。

Direct3D 运行时生成唯一句柄,并将其传递回用户模式显示驱动程序。 用户模式显示驱动程序可以在命令流中插入内核模式资源句柄,供显示微型端口驱动程序后续使用。

[in] NumAllocations

数组中 pAllocationInfo 处的元素数,表示要分配的分配数。

[in] pAllocationInfo

描述要分配的分配的 D3DDDI_ALLOCATIONINFO 结构的数组。

[in]描述要分配的分配的 D3DDDI_ALLOCATIONINFO 结构的数组。

[in] pAllocationInfo2

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

此成员从 Windows 7 开始可用。

要求

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

另请参阅

CreateResource

CreateResource (D3D10)

CreateResource (D3D11)

D3D10DDIARG_CREATERESOURCE

D3D11DDIARG_CREATERESOURCE

D3DDDIARG_CREATERESOURCE

D3DDDI_ALLOCATIONINFO

pfnAllocateCb