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


структура D3DDDICB_QUERYRESIDENCY (d3dumddi.h)

Структура D3DDDICB_QUERYRESIDENCY описывает состояние расположения ресурса или списка выделений.

Синтаксис

typedef struct _D3DDDICB_QUERYRESIDENCY {
  [in]  HANDLE                 hResource;
  [in]  UINT                   NumAllocations;
  [in]  const D3DKMT_HANDLE    *HandleList;
  [out] D3DDDI_RESIDENCYSTATUS *pResidencyStatus;
} D3DDDICB_QUERYRESIDENCY;

Члены

[in] hResource

Дескриптор ресурса, место расположения которого запрашивается. Если драйвер отображения пользовательского режима использует массив в элементе HandleList для запроса места расположения, он устанавливает для hResourceзначение NULL.

Если значение hResource не равно NULL, запрашиваются все выделения, принадлежащие ресурсу, и результат возвращается в первом элементе массива, на который указывает pResidencyStatus . Состояние расположения ресурса равно самому низкому из всех расположений, принадлежащих ресурсу.

[in] NumAllocations

Количество выделений в массиве HandleList . Если драйвер отображения пользовательского режима задает для дескриптора в элементе hResource значение, отличное от NULL, он должен задать значение NumAllocations равным нулю.

[in] HandleList

Массив D3DKMT_HANDLE типов данных, представляющих дескрипторы в режиме ядра для выделений. Функция pfnAllocateCb среды выполнения Microsoft Direct3D возвращает эти дескрипторы. Поэтому драйвер отображения пользовательского режима использует эти дескрипторы для запроса места расположения.

Если драйвер отображения пользовательского режима задает для дескриптора в элементе hResource значение, отличное от NULL, он должен задать для HandleListзначение NULL.

[out] pResidencyStatus

Указатель на массив значений D3DDDI_RESIDENCYSTATUS. Если элемент hResource не равен NULL, массив содержит один элемент и получает одно из следующих значений, чтобы указать состояние расположения ресурса. Если hResource имеет значение NULL, количество элементов в массиве задается элементом NumAllocations , и каждый элемент получает одно из следующих значений, чтобы указать состояние расположения соответствующего выделения в массиве, заданном HandleList.

Значение Значение
D3DDDI_RESIDENCYSTATUS_RESIDENTINGPUMEMORY (1) Ресурс или список выделений находятся в памяти GPU, которая является наивысшим состоянием расположения.
D3DDDI_RESIDENCYSTATUS_RESIDENTINSHAREDMEMORY (2) Ресурс или список выделений находятся в общей памяти.
D3DDDI_RESIDENCYSTATUS_NOTRESIDENT (3) Ресурс или список выделений является неживым, что является самым низким статусом места проживания.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows Vista и более поздних версиях операционных систем Windows.
Верхняя часть d3dumddi.h (включая D3dumddi.h)

См. также раздел

pfnQueryResidencyCb