структура 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 , драйвер должен назначить значение, полученное от элемента hResourceструктуры D3DDDIARG_CREATERESOURCE в вызове CreateResource, или параметр hRTResource в вызове CreateResource(D3D10) или CreateResource(D3D11). Он должен присвоить значение , чтобы связать выделения с ресурсом, или присвоить значение NULL , чтобы связать выделения с устройством. Драйвер должен назначить значение, отличное от NULL , для выделений, созданных в ответ на общие ресурсы. Общие ресурсы могут быть результатом вызовов CreateResource с флагом битового поля SharedResource , установленным в элементе Flags D3DDDIARG_CREATERESOURCE. Они также могут быть результатом вызовов CreateResource(D3D10) или CreateResource(D3D11) со значением D3D10_DDI_RESOURCE_MISC_SHARED, заданным в элементе MiscFlagsD3D10DDIARG_CREATERESOURCE или D3D11DDIARG_CREATERESOURCE.
Среда выполнения Microsoft Direct3D должна использовать этот дескриптор в вызовах драйвера для идентификации ресурса.
[out] hKMResource
Тип данных D3DKMT_HANDLE, представляющий дескриптор режима ядра для ресурса, связанного с выделениями.
Среда выполнения Direct3D создает и возвращает дескриптор ресурса в режиме ядра, только если драйвер отображения пользовательского режима задает элемент hResource D3DDDICB_ALLOCATE дескриптор ресурса среды выполнения пользовательского режима, полученный от элемента hResourceструктуры D3DDDIARG_CREATERESOURCE . Этот дескриптор получен в вызове CreateResource или из параметра hResource в вызове CreateResource(D3D10) или CreateResource(D3D11).
Среда выполнения Direct3D создает уникальный дескриптор и передает его обратно драйверу отображения в пользовательском режиме. Драйвер отображения пользовательского режима может вставить дескриптор ресурса режима ядра в поток команд для последующего использования драйвером мини-порта дисплея.
[in] NumAllocations
Количество элементов в массиве в pAllocationInfo, представляющее количество выделенных выделений.
[in] pAllocationInfo
Массив D3DDDI_ALLOCATIONINFO структур, описывающих выделяемые выделения.
[in] Массив D3DDDI_ALLOCATIONINFO структур, описывающих выделяемые выделения.
[in] pAllocationInfo2
Этот элемент зарезервирован и должен иметь нулевое значение.
Этот элемент доступен начиная с Windows 7.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows Vista и более поздних версиях операционных систем Windows. |
Верхняя часть | d3dumddi.h (включая D3dumddi.h) |