estrutura DXGK_ALLOCATIONLIST (d3dkmddi.h)
A estrutura DXGK_ALLOCATIONLIST descreve uma especificação de alocação usada no buffer de DMA (acesso direto à memória).
Sintaxe
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;
Membros
[in/out] hDeviceSpecificAllocation
Um identificador aberto para a alocação que está sendo referenciada (ou seja, o identificador que o driver retornou no membro hDeviceSpecificAllocation da estrutura DXGK_OPENALLOCATIONINFO para a alocação em uma chamada para a função DxgkDdiOpenAllocation do driver).
[in/out] WriteOperation
Identifica se a alocação pode ser gravada. Definir esse membro como 1 indica que a alocação pode ser gravada em qualquer lugar no buffer de DMA. Definir esse membro é equivalente a definir o primeiro bit de um valor de 32 bits (0x00000001).
[in/out] SegmentId
Especifica o identificador de um segmento no qual a alocação foi paginada pela última vez. Definir esse membro como 0 indica que nenhuma informação de pré-aplicação de patch está disponível. Definir esse membro é equivalente a definir o segundo ao sexto bit de um valor de 32 bits (0x0000002E).
[in] Reserved
Reservado. Esse membro deve ser definido como 0. Definir esse membro é equivalente a definir os 26 bits restantes (0xFFFFFFC0) de um valor de 32 bits como zeros.
[in/out] PhysicalAddress
Um tipo de dados PHYSICAL_ADDRESS (que é definido como LARGE_INTEGER) que indica o endereço físico, dentro do segmento especificado por SegmentId , em que a alocação foi paginada pela última vez. Esse membro será definido como zero se nenhuma informação de pré-aplicação de patch estiver disponível.
Com suporte começando com Windows 10.
[in/out] VirtualAddress
Um tipo de dados D3DGPU_VIRTUAL_ADDRESS (que é definido como ULONGLONG) que indica o endereço virtual.
Com suporte começando com Windows 10.
Comentários
Na função DxgkDdiRender do driver de miniporto de exibição, o driver gera uma lista de estruturas de DXGK_ALLOCATIONLIST para especificações de alocação que serão usadas em um buffer de DMA (acesso direto à memória). O gerenciador de memória de vídeo usa a lista para dividir e corrigir buffers de DMA adequadamente.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista |
Cabeçalho | d3dkmddi.h (inclua D3dkmddi.h) |