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 呼叫而產生,而 SharedResource 位字段旗標設定於 D3DDDIARG_CREATERESOURCE 的 Flags 成員中。 它們也可能因為 CreateResource (D3D10) 或 CreateResource (D3D11) 呼叫而產生,而D3D10_DDI_RESOURCE_MISC_SHARED值是在 D3D10DDIARG_CREATERESOURCE 或 D3D11DDIARG_CREATERESOURCE 的 MiscFlags 成員中設定。
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 (include D3dumddi.h) |