Compartir a través de


estructura D3DDDICB_ALLOCATE (d3dumddi.h)

La estructura D3DDDICB_ALLOCATE contiene información para asignar memoria.

Sintaxis

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;

Miembros

[in] pPrivateDriverData

Puntero a datos privados, que se pasa al controlador de miniporte de pantalla. Estos datos son por recurso y no por asignación. Si las asignaciones se adjuntan a un recurso existente, los datos actuales deben sobrescribir los datos anteriores.

[in] PrivateDriverDataSize

Tamaño, en bytes, de los datos privados a los que apunta pPrivateDriverData.

[in] hResource

Identificador del recurso asociado a las asignaciones.

Cuando el controlador de visualización en modo de usuario llama a la función pfnAllocateCb , el controlador debe asignar el valor recibido del miembro hResource de la estructura de D3DDDIARG_CREATERESOURCE en una llamada a CreateResource o el parámetro hRTResource en una llamada a CreateResource(D3D10) o CreateResource(D3D11). Debe asignar el valor para asociar las asignaciones con el recurso o asignar NULL para asociar las asignaciones con el dispositivo. El controlador debe asignar un valor distinto de NULL para las asignaciones que se crean en respuesta a los recursos compartidos. Los recursos compartidos pueden derivar de llamadas CreateResource con la marca de campo de bits SharedResource establecida en el miembro Flags de D3DDDIARG_CREATERESOURCE. También pueden resultar de llamadas CreateResource(D3D10) o CreateResource(D3D11), con el valor D3D10_DDI_RESOURCE_MISC_SHARED establecido en el miembro MiscFlags de D3D10DDIARG_CREATERESOURCE o D3D11DDIARG_CREATERESOURCE.

El entorno de ejecución de Microsoft Direct3D debe usar este identificador en las llamadas de controlador para identificar el recurso.

[out] hKMResource

Un D3DKMT_HANDLE tipo de datos que representa un identificador en modo kernel para el recurso asociado a las asignaciones.

El entorno de ejecución de Direct3D crea y devuelve un identificador de recursos en modo kernel solo si el controlador de visualización en modo de usuario establece el miembro hResource de D3DDDICB_ALLOCATE en el identificador de recursos en tiempo de ejecución del modo de usuario que se recibió del miembro hResource de la estructura de D3DDDIARG_CREATERESOURCE . Este identificador se recibe en una llamada a CreateResource o desde el parámetro hResource en una llamada a CreateResource(D3D10) o CreateResource(D3D11).

El tiempo de ejecución de Direct3D genera un identificador único y lo pasa al controlador de pantalla en modo de usuario. El controlador de pantalla en modo de usuario puede insertar el identificador de recursos en modo kernel en el flujo de comandos para su uso posterior por el controlador de miniporte de pantalla.

[in] NumAllocations

Número de elementos de la matriz en pAllocationInfo, que representa el número de asignaciones que se van a asignar.

[in] pAllocationInfo

Matriz de estructuras de D3DDDI_ALLOCATIONINFO que describen las asignaciones que se van a asignar.

[in] Matriz de estructuras de D3DDDI_ALLOCATIONINFO que describen las asignaciones que se van a asignar.

[in] pAllocationInfo2

Este miembro está reservado y debe establecerse en cero.

Este miembro está disponible a partir de Windows 7.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows.
Encabezado d3dumddi.h (incluya D3dumddi.h)

Consulte también

CreateResource

CreateResource(D3D10)

CreateResource(D3D11)

D3D10DDIARG_CREATERESOURCE

D3D11DDIARG_CREATERESOURCE

D3DDDIARG_CREATERESOURCE

D3DDDI_ALLOCATIONINFO

pfnAllocateCb