structure DXGK_ALLOCATIONLIST (d3dkmddi.h)
La structure DXGK_ALLOCATIONLIST décrit une spécification d’allocation utilisée dans la mise en mémoire tampon d’accès direct (DMA).
Syntaxe
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;
Membres
[in/out] hDeviceSpecificAllocation
Handle ouvert à l’allocation référencée (autrement dit, handle retourné dans le hDeviceSpecificAllocation membre de la structure DXGK_OPENALLOCATIONINFO pour l’allocation dans un appel à la fonction DxgkDdiOpenAllocationdupilote).
[in/out] WriteOperation
Identifie si l’allocation peut être écrite. La définition de ce membre sur 1 indique que l’allocation peut être écrite n’importe où dans la mémoire tampon DMA. Définir ce membre équivaut à définir le premier bit d’une valeur 32 bits (0x00000001).
[in/out] SegmentId
Spécifie l’identificateur d’un segment auquel l’allocation a été mise en page pour la dernière fois. La définition de ce membre sur 0 indique qu’aucune information de pré-mise à jour corrective n’est disponible. La définition de ce membre équivaut à définir la deuxième à la sixième bits d’une valeur 32 bits (0x0000002E).
[in] Reserved
Réservé. Ce membre doit être défini sur 0. Définir ce membre équivaut à définir les 26 bits restants (0xFFFFFFC0) d’une valeur 32 bits sur zéros.
[in/out] PhysicalAddress
Type de données PHYSICAL_ADDRESS (qui est défini comme LARGE_INTEGER) qui indique l’adresse physique, dans le segment spécifié SegmentId, où l’allocation a été mise en page la dernière page. Ce membre est défini sur zéro si aucune information de pré-mise à jour corrective n’est disponible.
Prise en charge à partir de Windows 10.
[in/out] VirtualAddress
Type de données D3DGPU_VIRTUAL_ADDRESS (qui est défini comme un ULONGLONG) qui indique l’adresse virtuelle.
Prise en charge à partir de Windows 10.
Remarques
Dans la fonction DxgkDdiRender du pilote miniport d’affichage, le pilote génère une liste de structures DXGK_ALLOCATIONLIST pour les spécifications d’allocation qui seront utilisées dans une mémoire tampon DMA (Direct Memory Access). Le gestionnaire de mémoire vidéo utilise la liste pour fractionner et corriger les mémoires tampons DMA de manière appropriée.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows Vista |
d’en-tête | d3dkmddi.h (include D3dkmddi.h) |