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

Consulte también

D3DKMTCreateAllocation

D3DKMTUpdateAllocationProperty