D3DDDI_SEGMENTPREFERENCE structure (d3dukmdt.h)
La structure D3DDI_SEGMENTPREFERENCE décrit le segment préféré pour cette allocation en cours de création.
Syntaxe
typedef struct _D3DDDI_SEGMENTPREFERENCE {
union {
struct {
UINT SegmentId0 : 5;
UINT Direction0 : 1;
UINT SegmentId1 : 5;
UINT Direction1 : 1;
UINT SegmentId2 : 5;
UINT Direction2 : 1;
UINT SegmentId3 : 5;
UINT Direction3 : 1;
UINT SegmentId4 : 5;
UINT Direction4 : 1;
UINT Reserved : 2;
};
UINT Value;
};
} D3DDDI_SEGMENTPREFERENCE;
Membres
SegmentId0
Identificateur du segment préféré de priorité la plus élevée, ou zéro si aucun segment préféré n’est requis. Les valeurs valides sont comprises entre 0 et 31. Ce membre est équivalent aux 5 premiers bits du membre Value .
Direction0
Définissez sur zéro pour indiquer que VidMm choisit la fin de SegmentId0 à partir de laquelle effectuer l’allocation. Ce membre est équivalent au sixième bit du membre Value .
SegmentId1
Identificateur du segment préféré le plus élevé suivant, ou zéro si aucun segment préféré n’est requis. Les valeurs valides sont comprises entre 0 et 31. Ce membre équivaut aux bits 7 à 11 du membre Value .
Direction1
Définissez sur zéro pour indiquer que VidMm choisit la fin de SegmentId1 à partir de laquelle effectuer l’allocation. Ce membre est équivalent au 12e bit du membre Value .
SegmentId2
Identificateur du segment préféré le plus élevé suivant, ou zéro si aucun segment préféré n’est requis. Les valeurs valides sont comprises entre 0 et 31. Ce membre équivaut aux bits 13 à 17 du membre Value .
Direction2
Définissez sur zéro pour indiquer que VidMm choisit la fin de SegmentId2 à partir de laquelle effectuer l’allocation. Ce membre est équivalent au 18e bit du membre Value .
SegmentId3
Identificateur du segment préféré le plus élevé suivant, ou zéro si aucun segment préféré n’est requis. Les valeurs valides sont comprises entre 0 et 31. Ce membre équivaut aux bits 19 à 23 du membre Value .
Direction3
Définissez sur zéro pour indiquer que VidMm choisit la fin de SegmentId3 à partir de laquelle effectuer l’allocation. Ce membre est équivalent au 24e bit du membre Value .
SegmentId4
Identificateur du segment préféré le plus élevé suivant, ou zéro si aucun segment préféré n’est requis. Les valeurs valides sont comprises entre 0 et 31. Ce membre est équivalent aux bits 25 à 29 du membre Value .
Direction4
Définissez sur zéro pour indiquer que VidMm choisit la fin de SegmentId4 à partir de laquelle effectuer l’allocation. Ce membre est équivalent au 30e bit du membre Value .
Reserved
Réservé (bits 31-32).
Value
Une autre façon d’accéder aux informations de préférence de segment.
Remarques
La préférence de segment est utilisée lors de l’allocation de mémoire. Lorsque le mode utilisateur (par exemple, le runtime D3D) appelle D3DKMTCreateAllocation, l’UMD fournit des données de pilote privé décrivant l’allocation. Dxgkrnl prend ces données de pilote privé et les transmet au KMD qui remplit ensuite une description de chaque allocation d’une manière comprise par VidMm. Les données UMD contiennent des informations telles que le type de ressource (texture, permutation, etc.). Le KMD traduit ces données en éléments tels que la taille, l’alignement, un ensemble de segments de mémoire que l’allocation peut être localisée, les préférences pour ces segments (comme indiqué par cette structure), etc.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | d3dukmdt.h |