Compartir a través de


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 van de 0 a 31. Este miembro es equivalente a los primeros 5 bits del miembro de Value.

Direction0

Establezca en cero para indicar que VidMm elige el final de SegmentId0 para 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 van 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 para 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 van 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 a qué final de SegmentId2 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 van de 0 a 31. Este miembro es equivalente a bits de 19 a 23 del miembro de Value.

Direction3

Establézcalo en cero para indicar que VidMm elige a qué final de SegmentId3 realizar la asignación. Este miembro es equivalente al 24º bit 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 van de 0 a 31. Este miembro es equivalente a bits de 25 a 29 del miembro de 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 de Value.

Reserved

Reservado (bits 31-32).

Value

Una manera alternativa de acceder a la información de preferencias de segmento.

Observaciones

La preferencia de segmento se usa al asignar memoria. Cuando el modo de usuario (por ejemplo, el entorno de ejecución D3D) llama a D3DKMTCreateAllocation, el UMD proporciona datos del controlador privado que describen la asignación. Dxgkrnl toma estos datos del controlador privado y los pasa al KMD que, a continuación, rellena una descripción de cada asignación de forma que VidMm. 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
encabezado de d3dukmdt.h

Consulte también

D3DKMTCreateAllocation

D3DKMTUpdateAllocationProperty