DXGK_ALLOCATIONLIST Struktur (d3dkmddi.h)

Die DXGK_ALLOCATIONLIST-Struktur beschreibt eine Zuordnungsspezifikation, die im DMA-Puffer (Direct Memory Access) verwendet wird.

Syntax

typedef struct _DXGK_ALLOCATIONLIST
{
    HANDLE              hDeviceSpecificAllocation;
    struct
    {
        UINT            WriteOperation  : 1;    // 0x00000001
        UINT            SegmentId       : 5;    // 0x0000002E
        UINT            Reserved        : 26;   // 0xFFFFFFC0
    };
#if (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM2_0)
    union
    {
        PHYSICAL_ADDRESS        PhysicalAddress;
        D3DGPU_VIRTUAL_ADDRESS  VirtualAddress;
    };
#else // (DXGKDDI_INTERFACE_VERSION < DXGKDDI_INTERFACE_VERSION_WDDM2_0)
    PHYSICAL_ADDRESS    PhysicalAddress;
#endif // (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM2_0)
} DXGK_ALLOCATIONLIST;

Member

[in/out] hDeviceSpecificAllocation

Ein geöffnetes Handle für die Zuordnung, auf die verwiesen wird (d. h. das Handle, das der Treiber im hDeviceSpecificAllocation-Member der DXGK_OPENALLOCATIONINFO-Struktur für die Zuordnung in einem Aufruf der DxgkDdiOpenAllocation-Funktion des Treibers zurückgegeben hat).

[in/out] WriteOperation

Gibt an, ob die Zuordnung geschrieben werden kann. Wenn Sie diesen Member auf 1 festlegen, kann die Zuordnung an eine beliebige Stelle im DMA-Puffer geschrieben werden. Das Festlegen dieses Elements entspricht dem Festlegen des ersten Bits eines 32-Bit-Werts (0x00000001).

[in/out] SegmentId

Gibt den Bezeichner eines Segments an, in dem die Zuordnung zuletzt ausgelagert wurde. Wenn Sie diesen Member auf 0 festlegen, sind keine Vorabpatchinformationen verfügbar. Das Festlegen dieses Elements entspricht dem Festlegen des zweiten bis sechsten Bits eines 32-Bit-Werts (0x0000002E).

[in] Reserved

Reserviert. Dieses Element sollte auf 0 festgelegt werden. Das Festlegen dieses Elements entspricht dem Festlegen der verbleibenden 26 Bits (0xFFFFFFC0) eines 32-Bit-Werts auf Nullen.

[in/out] PhysicalAddress

Ein PHYSICAL_ADDRESS Datentyp (der als LARGE_INTEGER definiert ist), der die physische Adresse innerhalb des von SegmentId angegebenen Segments angibt, in dem die Zuordnung zuletzt eingelagert wurde. Dieser Member wird auf Null festgelegt, wenn keine Vorabpatchinformationen verfügbar sind.

Wird ab Windows 10 unterstützt.

[in/out] VirtualAddress

Ein D3DGPU_VIRTUAL_ADDRESS Datentyp (der als ULONGLONGLONG definiert ist), der die virtuelle Adresse angibt.

Wird ab Windows 10 unterstützt.

Hinweise

In der DxgkDdiRender-Funktion des Anzeigeminiporttreibers generiert der Treiber eine Liste DXGK_ALLOCATIONLIST Strukturen für Zuordnungsspezifikationen, die in einem DMA-Puffer (Direct Memory Access) verwendet werden. Der Videospeicher-Manager verwendet die Liste, um DMA-Puffer entsprechend aufzuteilen und zu patchen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista
Kopfzeile d3dkmddi.h (einschließlich D3dkmddi.h)

Weitere Informationen

DXGKARG_CREATEALLOCATION

DXGK_ALLOCATIONINFO

DXGK_OPENALLOCATIONINFO

DxgkDdiCreateAllocation

DxgkDdiOpenAllocation

DxgkDdiRender