Freigeben über


D3DDDICB_ALLOCATE-Struktur (d3dumddi.h)

Die D3DDDICB_ALLOCATE-Struktur enthält Informationen zum Zuweisen von Arbeitsspeicher.

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;

Member

[in] pPrivateDriverData

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

[in] PrivateDriverDataSize

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

[in] hResource

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

Wenn der Benutzermodusanzeigetreiber die PfnAllocateCb-Funktion aufruft , sollte der Treiber den Wert zuweisen, der vom hResource-Member der D3DDDIARG_CREATERESOURCE-Struktur in einem Aufruf von CreateResource oder den hRTResource-Parameter in einem Aufruf von CreateResource(D3D10) oder CreateResource(D3D11) empfangen wurde. Sie sollte den Wert zuweisen, um die Zuordnungen der Ressource zuzuordnen, oder NULL zuweisen, um die Zuordnungen dem Gerät zuzuordnen. Der Treiber muss für Zuordnungen, die als Reaktion auf freigegebene Ressourcen erstellt werden, einen Wert ohne NULL zuweisen. Freigegebene Ressourcen können auf CreateResource-Aufrufe mit dem SharedResource-Bitfeldflag im Flags-Element von D3DDDIARG_CREATERESOURCE. Sie können auch auf Aufrufe von CreateResource(D3D10) oder CreateResource(D3D11) zurückgeführt werden, wobei der D3D10_DDI_RESOURCE_MISC_SHARED Wert im MiscFlags-Member von D3D10DDIARG_CREATERESOURCE oder D3D11DDIARG_CREATERESOURCE festgelegt ist.

Die Microsoft Direct3D-Runtime 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-Runtime erstellt und gibt ein Kernelmodus-Ressourcenhandle nur dann zurück, wenn der Benutzermodusanzeigetreiber den hResource-Member von 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 vom hResource-Parameter in einem Aufruf von CreateResource(D3D10) oder CreateResource(D3D11) empfangen.

Die Direct3D-Runtime generiert einen eindeutigen Handle und übergibt es zurück an den Benutzermodusanzeigetreiber. Der Benutzermodusanzeigetreiber kann das Kernelmodus-Ressourcenhandle zur späteren Verwendung durch den Anzeigeminiporttreiber in den Befehlsstream einfügen.

[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

Dieser Member ist reserviert und sollte auf null festgelegt werden.

Dieses Mitglied ist ab Windows 7 verfügbar.

Anforderungen

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

Weitere Informationen

CreateResource

CreateResource(D3D10)

CreateResource(D3D11)

D3D10DDIARG_CREATERESOURCE

D3D11DDIARG_CREATERESOURCE

D3DDDIARG_CREATERESOURCE

D3DDDI_ALLOCATIONINFO

pfnAllocateCb