функция обратного вызова PFND3DDDI_QUERYADAPTERINFOCB (d3dumddi.h)

Функция pfnQueryAdapterInfoCb извлекает сведения о графическом адаптере.

Синтаксис

PFND3DDDI_QUERYADAPTERINFOCB Pfnd3dddiQueryadapterinfocb;

HRESULT Pfnd3dddiQueryadapterinfocb(
  HANDLE hAdapter,
  const D3DDDICB_QUERYADAPTERINFO *unnamedParam2
)
{...}

Параметры

hAdapter

Дескриптор объекта графического адаптера.

unnamedParam2

pData [in, out]

Указатель на структуру D3DDDICB_QUERYADAPTERINFO , которая получает сведения о графическом оборудовании.

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

pfnQueryAdapterInfoCb возвращает одно из следующих значений:

Код возврата Описание
S_OK Информация успешно получена.
E_INVALIDARG Параметры были проверены и определены как неверные.

Эта функция также может возвращать другие значения HRESULT.

Комментарии

Прежде чем среда выполнения Microsoft Direct3D вызовет функцию CreateDevice или CreateDevice(D3D10) драйвера дисплея пользовательского режима для создания графического контекста, драйвер отображения пользовательского режима должен вызвать pfnQueryAdapterInfoCb для получения сведений о графическом оборудовании. Этот порядок особенно важен для системы с несколькими мониторами.

В вызове pfnQueryAdapterInfoCb драйвер дисплея пользовательского режима отправляет буфер, который драйвер мини-порта дисплея заполняет данными конфигурации. После получения этих данных конфигурации драйвер отображения пользовательского режима может точно сообщать о своих возможностях, когда среда выполнения вызывает функции GetCaps и GetCaps(D3D10_2) драйвера отображения пользовательского режима. Когда среда выполнения впоследствии вызывает другие функции драйвера отображения пользовательского режима, указанные в структуре D3DDDI_DEVICEFUNCS, D3D10DDI_DEVICEFUNCS или D3D11DDI_DEVICEFUNCS , драйвер отображения пользовательского режима может создавать потоки команд, которые может обрабатывать оборудование.

Примеры

В следующем примере кода показано, как получить сведения о графическом адаптере.

    HRESULT hr;
    // Query for GART segment support
    D3DDDICB_QUERYADAPTERINFO   ddiQueryAdapterInfo;

    memset(&R200AdapterInfo, 0, sizeof(R200AdapterInfo));

    ddiQueryAdapterInfo.pPrivateDriverData = &R200AdapterInfo;
    ddiQueryAdapterInfo.PrivateDriverDataSize = sizeof(R200AdapterInfo);

    hr = m_Callbacks.pfnQueryAdapterInfoCb(m_hAdapter, &ddiQueryAdapterInfo);
    if (FAILED(hr)) {
        return FALSE;
    }

    m_ulGartSupported = R200AdapterInfo.ulGartSupported;

Требования

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

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

CreateDevice

CreateDevice(D3D10)

D3D10DDI_DEVICEFUNCS

D3D11DDI_DEVICEFUNCS

D3DDDICB_QUERYADAPTERINFO

D3DDDI_ADAPTERCALLBACKS

D3DDDI_DEVICEFUNCS

GetCaps