DXGK_ALLOCATIONLIST structure (d3dkmddi.h)
The DXGK_ALLOCATIONLIST structure describes an allocation specification that is used in direct memory access (DMA) buffering.
Syntax
typedef struct _DXGK_ALLOCATIONLIST {
HANDLE hDeviceSpecificAllocation;
struct {
UINT WriteOperation : 1;
UINT SegmentId : 5;
UINT Reserved : 26;
};
union {
PHYSICAL_ADDRESS PhysicalAddress;
D3DGPU_VIRTUAL_ADDRESS VirtualAddress;
};
PHYSICAL_ADDRESS PhysicalAddress;
} DXGK_ALLOCATIONLIST;
Members
hDeviceSpecificAllocation
[in/out] An open handle to the allocation that is being referenced (that is, the handle that the driver returned in the hDeviceSpecificAllocation member of the DXGK_OPENALLOCATIONINFO structure for the allocation in a call to the driver's DxgkDdiOpenAllocation function).
The following members are embedded in the structure:
WriteOperation
[in/out] A member in the structure that DXGK_ALLOCATIONLIST contains that can hold information about whether the allocation can be written to. Setting this member to 1 indicates that the allocation can be written to anywhere in the DMA buffer.
Setting this member is equivalent to setting the first bit of a 32-bit value (0x00000001).
SegmentId
[in/out] A member in the structure that DXGK_ALLOCATIONLIST contains that can hold information about the identifier of a segment that the allocation was last paged in at. Setting this member to 0 indicates that no pre-patching information is available.
Setting this member is equivalent to setting the second through sixth bit of a 32-bit value (0x0000002E).
Reserved
[in] A member in the structure that DXGK_ALLOCATIONLIST contains that is reserved. This member should be set to 0.
Setting this member is equivalent to setting the remaining 26 bits (0xFFFFFFC0) of a 32-bit value to zeros.
The following members are embedded in a union:
PhysicalAddress
[in/out] A PHYSICAL_ADDRESS data type (which is defined as LARGE_INTEGER) that indicates the physical address, within the segment that SegmentId specifies, where the allocation was last paged-in at. This member is set to zero if no pre-patching information is available.
Supported starting with Windows 10.
VirtualAddress
[in/out] A D3DGPU_VIRTUAL_ADDRESS data type that indicates the virtual address.
Supported starting with Windows 10.
WriteOperation
SegmentId
Reserved
PhysicalAddress
[in/out] A PHYSICAL_ADDRESS data type (which is defined as LARGE_INTEGER) that indicates the physical address, within the segment that SegmentId specifies, where the allocation was last paged-in at. This member is set to zero if no pre-patching information is available.
VirtualAddress
Remarks
In the display miniport driver's DxgkDdiRender function, the driver generates a list of DXGK_ALLOCATIONLIST structures for allocation specifications that will be used in a direct memory access (DMA) buffer. The video memory manager uses the list to split and patch DMA buffers appropriately.
Requirements
Minimum supported client | Available in Windows Vista and later versions of the Windows operating systems. |
Header | d3dkmddi.h (include D3dkmddi.h) |