estructura D3DDDI_SEGMENTPREFERENCE (d3dukmdt.h)
La estructura D3DDI_SEGMENTPREFERENCE describe el segmento preferido para esta asignación que se va a crear.
Sintaxis
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;
Miembros
SegmentId0
Identificador del segmento preferido de prioridad más alta o cero si no se requiere ningún segmento preferido. Los valores válidos son de 0 a 31. Este miembro es equivalente a los primeros 5 bits del miembro Value .
Direction0
Establézcalo en cero para indicar que VidMm elige el final de SegmentId0 desde el que se va a realizar la asignación. Este miembro es equivalente al sexto bit del miembro Value .
SegmentId1
Identificador del siguiente segmento preferido de prioridad más alta o cero si no se requiere ningún segmento preferido. Los valores válidos son de 0 a 31. Este miembro es equivalente a bits de 7 a 11 del miembro Value .
Direction1
Establézcalo en cero para indicar que VidMm elige el final de SegmentId1 desde el que se va a realizar la asignación. Este miembro es equivalente al bit 12 del miembro Value .
SegmentId2
Identificador del siguiente segmento preferido de prioridad más alta o cero si no se requiere ningún segmento preferido. Los valores válidos son de 0 a 31. Este miembro es equivalente a bits de 13 a 17 del miembro Value .
Direction2
Establézcalo en cero para indicar que VidMm elige el final de SegmentId2 desde el que se va a realizar la asignación. Este miembro es equivalente al bit 18 del miembro Value .
SegmentId3
Identificador del siguiente segmento preferido de prioridad más alta o cero si no se requiere ningún segmento preferido. Los valores válidos son de 0 a 31. Este miembro es equivalente a bits de 19 a 23 del miembro Value .
Direction3
Establézcalo en cero para indicar que VidMm elige el final de SegmentId3 desde el que se va a realizar la asignación. Este miembro es equivalente al bit 24 del miembro Value .
SegmentId4
Identificador del siguiente segmento preferido de prioridad más alta o cero si no se requiere ningún segmento preferido. Los valores válidos son de 0 a 31. Este miembro es equivalente a bits de 25 a 29 del miembro Value .
Direction4
Establézcalo en cero para indicar que VidMm elige el final de SegmentId4 desde el que se va a realizar la asignación. Este miembro es equivalente al bit 30 del miembro Value .
Reserved
Reservado (bits 31-32).
Value
Una manera alternativa de acceder a la información de preferencias de segmento.
Comentarios
La preferencia de segmento se usa al asignar memoria. Cuando el modo de usuario (por ejemplo, el tiempo de ejecución D3D) llama a D3DKMTCreateAllocation, umD proporciona datos de controlador privados que describen la asignación. Dxgkrnl toma estos datos de controladores privados y los pasa al KMD que, a continuación, rellena una descripción de cada asignación de una manera que VidMm entiende. Los datos de UMD contienen información como el tipo de recurso (textura, cadena de intercambio, etc.). El KMD traduce estos datos a elementos como el tamaño, la alineación, un conjunto de segmentos de memoria que la asignación se puede ubicar, las preferencias de estos segmentos (como se indica en esta estructura), etc.
Requisitos
Requisito | Valor |
---|---|
Header | d3dukmdt.h |