Freigeben über


D3DDDICB_ALLOCATE Struktur (d3dumddi.h)

Die D3DDDICB_ALLOCATE-Struktur enthält Informationen zum Zuordnen des Arbeitsspeichers.

Syntax

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;

Angehörige

[in] pPrivateDriverData

Ein Zeiger auf private Daten, der an den Anzeigeminiporttreiber übergeben wird. Diese Daten sind pro Ressource und nicht pro Zuordnung. Wenn Zuordnungen an eine vorhandene Ressource angefügt sind, sollten die aktuellen Daten die ehemaligen Daten überschreiben.

[in] PrivateDriverDataSize

Die Größe der privaten Daten in Bytes, auf die durch pPrivateDriverData-verwiesen wird.

[in] hResource

Ein Handle für die Ressource, die den Zuordnungen zugeordnet ist.

Wenn der Anzeigetreiber für den Benutzermodus die pfnAllocateCb--Funktion aufruft, der Treiber sollte den Wert zuweisen, der vom hResource Member der D3DDDIARG_CREATERESOURCE Struktur in einem Aufruf von CreateResourceoder dem hRTResource Parameter in einem Aufruf von CreateResource(D3D10) oder CreateResource(D3D11). Sie sollte den Wert zuweisen, um die Zuordnungen der Ressource zuzuordnen, oder NULL- zuweisen, um die Zuordnungen mit dem Gerät zuzuordnen. Der Treiber muss einen nicht-NULL- Wert für Zuordnungen zuweisen, die als Reaktion auf freigegebene Ressourcen erstellt werden. Freigegebene Ressourcen können aus CreateResource- Aufrufen mit dem SharedResource- Bitfeld-Flag im Flags Member von D3DDDIARG_CREATERESOURCE resultieren. Sie können auch aus CreateResource(D3D10) oder CreateResource(D3D11) Aufrufen resultieren, wobei der D3D10_DDI_RESOURCE_MISC_SHARED Wert im MiscFlags Member von D3D10DDIARG_CREATERESOURCE oder D3D11DDIARG_CREATERESOURCEfestgelegt ist.

Die Microsoft Direct3D-Laufzeit sollte dieses Handle in Treiberaufrufen verwenden, um die Ressource zu identifizieren.

[out] hKMResource

Ein D3DKMT_HANDLE Datentyp, der ein Kernelmodushandle für die Ressource darstellt, die den Zuordnungen zugeordnet ist.

Die Direct3D-Laufzeit erstellt und gibt einen Kernelmodusressourcenhandle nur zurück, wenn der Anzeigetreiber für den Benutzermodus das hResource-element D3DDDICB_ALLOCATE auf das Benutzermodus-Laufzeitressourcenhandle festlegt, das vom hResource Member der D3DDDIARG_CREATERESOURCE-Struktur empfangen wurde. Dieses Handle wird in einem Aufruf von CreateResource-oder aus dem hResource Parameter in einem Aufruf von CreateResource(D3D10) oder CreateResource(D3D11)empfangen.

Die Direct3D-Laufzeit generiert ein eindeutiges Handle und übergibt es an den Anzeigetreiber für den Benutzermodus. Der Anzeigetreiber für den Benutzermodus kann das Kernelmodusressourcenhandle in den Befehlsdatenstrom einfügen, um anschließend vom Anzeigeminiporttreiber zu verwenden.

[in] NumAllocations

Die Anzahl der Elemente im Array bei pAllocationInfo, die die Anzahl der zuzuordnenden Zuordnungen darstellt.

[in] pAllocationInfo

Ein Array von D3DDDI_ALLOCATIONINFO Strukturen, die die zuzuordnenden Zuordnungen beschreiben.

[in] Ein Array von D3DDDI_ALLOCATIONINFO Strukturen, die die zuzuordnenden Zuordnungen beschreiben.

[in] pAllocationInfo2

Dieses Element ist reserviert und sollte auf Null festgelegt werden.

Dieses Mitglied ist ab Windows 7 verfügbar.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Header- d3dumddi.h (include D3dumddi.h)

Siehe auch

CreateResource-

CreateResource(D3D10)

CreateResource(D3D11)-

D3D10DDIARG_CREATERESOURCE

D3D11DDIARG_CREATERESOURCE

D3DDDIARG_CREATERESOURCE

D3DDDI_ALLOCATIONINFO

pfnAllocateCb