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


Метод IDXGIObject::GetPrivateData (dxgi.h)

Получение указателя на данные объекта.

Синтаксис

HRESULT GetPrivateData(
  [in]      REFGUID Name,
  [in, out] UINT    *pDataSize,
  [out]     void    *pData
);

Параметры

[in] Name

Тип: REFGUID

ИДЕНТИФИКАТОР GUID, определяющий данные.

[in, out] pDataSize

Тип: UINT*

Размер данных.

[out] pData

Тип: void*

Указатель на данные.

Возвращаемое значение

Тип: HRESULT

Возвращает один из следующих DXGI_ERROR.

Комментарии

Если возвращаемые данные являются указателем на IUnknown или один из его производных классов, ранее заданных IDXGIObject::SetPrivateDataInterface, необходимо вызвать ::Release() в указателе, прежде чем будет освобожден указатель для уменьшения числа ссылок.

Вы можете передать GUID_DeviceType в параметре Nameобъекта GetPrivateData , чтобы получить тип устройства из объекта видеоадаптера (IDXGIAdapter, IDXGIAdapter1, IDXGIAdapter2).

Получение типа устройства, на котором был создан видеоадаптер

  1. Вызовите метод IUnknown::QueryInterface для объекта ID3D11Device или ID3D10Device , чтобы получить объект IDXGIDevice .
  2. Вызовите Метод GetParent для объекта IDXGIDevice , чтобы получить объект IDXGIAdapter .
  3. Вызовите Метод GetPrivateData для объекта IDXGIAdapter с GUID_DeviceType , чтобы получить тип устройства, на котором был создан видеоадаптер. pData будет указывать на значение из перечисления типа драйвера (например, значение из D3D_DRIVER_TYPE).
В Windows 7 или более ранних версиях этот тип является значением из D3D10_DRIVER_TYPE или D3D_DRIVER_TYPE в зависимости от типа созданного устройства. В Windows 8 этот тип всегда является значением из D3D_DRIVER_TYPE. Не используйте IDXGIObject::SetPrivateData с GUID_DeviceType , так как поведение при этом не определено.

Требования

   
Целевая платформа Windows
Header dxgi.h
Библиотека DXGI.lib

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

Интерфейсы DXGI

IDXGIObject