structure D3DDDI_SEGMENTPREFERENCE (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 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 équivaut aux 5 premiers bits du membre Value.
Direction0
Défini sur zéro pour indiquer que VidMm choisit la fin de SegmentId0 à partir de laquelle effectuer l’allocation. Ce membre équivaut au sixième bit du membre Value.
SegmentId1
Identificateur du segment de priorité la plus élevée suivante, 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éfini sur zéro pour indiquer que VidMm choisit la fin de SegmentId1 à partir de laquelle effectuer l’allocation. Ce membre équivaut au 12e bit du membre Value.
SegmentId2
Identificateur du segment de priorité la plus élevée suivante, 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éfini sur zéro pour indiquer que VidMm choisit la fin de SegmentId2 à partir de laquelle effectuer l’allocation. Ce membre équivaut au 18e bit du membre Value.
SegmentId3
Identificateur du segment de priorité la plus élevée suivante, 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éfini sur zéro pour indiquer que VidMm choisit la fin de SegmentId3 à partir de laquelle effectuer l’allocation. Ce membre équivaut au 24e bit du membre Value.
SegmentId4
Identificateur du segment de priorité la plus élevée suivante, 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 25 à 29 du membre Value.
Direction4
Défini sur zéro pour indiquer que VidMm choisit la fin de SegmentId4 à partir de laquelle effectuer l’allocation. Ce membre équivaut 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, chaîne d’échange, 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 se trouver, les préférences de ces segments (comme indiqué par cette structure), etc.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | d3dukmdt.h |