Поделиться через


структура D3DDDI_SEGMENTPREFERENCE (d3dukmdt.h)

Структура D3DDI_SEGMENTPREFERENCE описывает предпочтительный сегмент для создания этого выделения.

Синтаксис

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;

Члены

SegmentId0

Идентификатор предпочтительного сегмента высшего приоритета или ноль, если предпочтительный сегмент не требуется. Допустимые значения : от 0 до 31. Этот элемент эквивалентен первым 5 битам элемента Value.

Direction0

Установите значение нулю, чтобы указать, что VidMm выбирает конец SegmentId0 для выделения. Этот элемент эквивалентен шестому биту элемента Value.

SegmentId1

Идентификатор следующего предпочтительного сегмента с наивысшим приоритетом или ноль, если предпочтительный сегмент не требуется. Допустимые значения : от 0 до 31. Этот элемент эквивалентен битам 7–11 элемента value.

Direction1

Установите значение нулю, чтобы указать, что VidMm выбирает конец SegmentId1 для выделения. Этот элемент эквивалентен 12-му биту элемента Value.

SegmentId2

Идентификатор следующего предпочтительного сегмента с наивысшим приоритетом или ноль, если предпочтительный сегмент не требуется. Допустимые значения : от 0 до 31. Этот элемент эквивалентен битам 13–17 элемента value.

Direction2

Установите значение нуля, чтобы указать, что VidMm выбирает конец SegmentId2, чтобы выполнить выделение. Этот элемент эквивалентен 18-му биту элемента Value.

SegmentId3

Идентификатор следующего предпочтительного сегмента с наивысшим приоритетом или ноль, если предпочтительный сегмент не требуется. Допустимые значения : от 0 до 31. Этот элемент эквивалентен битам 19–23 элемента значение.

Direction3

Установите значение нуля, чтобы указать, что VidMm выбирает конец SegmentId3 для выделения. Этот элемент эквивалентен 24-му биту элемента Value.

SegmentId4

Идентификатор следующего предпочтительного сегмента с наивысшим приоритетом или ноль, если предпочтительный сегмент не требуется. Допустимые значения : от 0 до 31. Этот элемент эквивалентен битам 25–29 элемента значение.

Direction4

Установите значение нуля, чтобы указать, что VidMm выбирает конец SegmentId4 для выделения. Этот элемент эквивалентен 30-му биту элемента Value.

Reserved

Зарезервирован (биты 31-32).

Value

Альтернативный способ доступа к сведениям о предпочтениях сегмента.

Замечания

При выделении памяти используется предпочтение сегмента. Если пользовательский режим (например, среда выполнения D3D) вызывает D3DKMTCreateAllocation, UMD предоставляет данные частного драйвера, описывающие выделение. Dxgkrnl принимает эти данные частного драйвера и передает его в KMD, который затем заполняет описание каждого выделения таким образом, который понимается VidMm. Данные UMD содержат такие сведения, как тип ресурса (текстура, цепочка буферов и т. д.). KMD преобразует эти данные в такие вещи, как размер, выравнивание, набор сегментов памяти, которые можно найти, предпочтения для этих сегментов (как указано в этой структуре) и т. д.

Требования

Требование Ценность
заголовка d3dukmdt.h

См. также

D3DKMTCreateAllocation

D3DKMTUpdateAllocationProperty