struttura D3DDDI_SEGMENTPREFERENCE (d3dukmdt.h)

La struttura D3DDI_SEGMENTPREFERENCE descrive il segmento preferito per questa allocazione da creare.

Sintassi

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;

Members

SegmentId0

Identificatore del segmento preferito con priorità più alta o zero se non è necessario alcun segmento preferito. I valori validi sono compresi tra 0 e 31. Questo membro equivale ai primi 5 bit del membro Value .

Direction0

Impostare su zero per indicare che VidMm sceglie la fine di SegmentId0 da cui eseguire l'allocazione. Questo membro equivale al sesto bit del membro Value .

SegmentId1

Identificatore del segmento preferito con priorità più alta successiva o zero se non è necessario alcun segmento preferito. I valori validi sono compresi tra 0 e 31. Questo membro equivale ai bit da 7 a 11 del membro Value .

Direction1

Impostare su zero per indicare che VidMm sceglie la fine di SegmentId1 da cui eseguire l'allocazione. Questo membro equivale al 12° bit del membro Value .

SegmentId2

Identificatore del segmento preferito con priorità più alta successiva o zero se non è necessario alcun segmento preferito. I valori validi sono compresi tra 0 e 31. Questo membro equivale ai bit da 13 a 17 del membro Value .

Direction2

Impostare su zero per indicare che VidMm sceglie la fine di SegmentId2 da cui eseguire l'allocazione. Questo membro equivale al 18° bit del membro Value .

SegmentId3

Identificatore del segmento preferito con priorità più alta successiva o zero se non è necessario alcun segmento preferito. I valori validi sono compresi tra 0 e 31. Questo membro equivale a bit da 19 a 23 del membro Value .

Direction3

Impostare su zero per indicare che VidMm sceglie la fine di SegmentId3 da cui eseguire l'allocazione. Questo membro equivale al 24° bit del membro Value .

SegmentId4

Identificatore del segmento preferito con priorità più alta successiva o zero se non è necessario alcun segmento preferito. I valori validi sono compresi tra 0 e 31. Questo membro equivale a bit da 25 a 29 del membro Value .

Direction4

Impostare su zero per indicare che VidMm sceglie la fine di SegmentId4 da cui eseguire l'allocazione. Questo membro equivale al 30° bit del membro Value .

Reserved

Riservato (bit 31-32).

Value

Un modo alternativo per accedere alle informazioni sulle preferenze di segmento.

Commenti

La preferenza di segmento viene usata per l'allocazione della memoria. Quando la modalità utente(ad esempio, il runtime D3D) chiama D3DKMTCreateAllocation, UMD fornisce i dati del driver privato che descrivono l'allocazione. Dxgkrnl prende questi dati del driver privato e lo passa al KMD che quindi compila una descrizione di ogni allocazione in modo comprensibile da VidMm. I dati UMD contengono informazioni come il tipo di risorsa (trama, swapchain e così via). Il KMD converte questi dati in elementi come dimensioni, allineamento, un set di segmenti di memoria che l'allocazione può essere individuata, preferenze per questi segmenti (come indicato da questa struttura) e così via.

Requisiti

Requisito Valore
Intestazione d3dukmdt.h

Vedi anche

D3DKMTCreateAllocation

D3DKMTUpdateAllocationProperty