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


Функция AcxDeviceAddFactoryCircuit (acxdevice.h)

Функция AcxDeviceAddFactoryCircuit добавляет канал фабрики в WDFDEVICE для создания звуковых каналов.

Синтаксис

NTSTATUS AcxDeviceAddFactoryCircuit(
  WDFDEVICE         Device,
  ACXFACTORYCIRCUIT Factory
);

Параметры

Device

WDFDEVICE, в которую будет добавлен канал фабрики ACX.

Factory

Канал фабрики ACX, добавляемый в WDFDEVICE, указанный параметром устройства.

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

AcxDeviceAddFactoryCircuit возвращает STATUS_SUCCESS, если вызов выполнен успешно. В противном случае возвращается код ошибки NTSTATUS.

Замечания

Драйвер ACX может создать один или несколько каналов в следующих сценариях:

  • Во время инициализации
  • Во время выполнения как побочный эффект внешнего события, например обнаружение нового звукового компонента
  • Так как он зарегистрировал себя в ACX в качестве фабрики каналов. Платформа ACX использует зарегистрированную фабрику для запроса драйвера создать новый канал.

Используйте AcxDeviceRemoveFactoryCircuit, чтобы удалить канал фабрики из WDFDEVICE.

Эту функцию можно вызывать только из функции обратного вызова EVT_WDF_DEVICE_PREPARE_HARDWARE для этого устройства.

Пример

WDFDEVICE                Device;
NTSTATUS                 status;
PCAPTURE_DEVICE_CONTEXT  devCtx;

// Code to initialize WDFDEVICE...

//
// Add control circuit to child's list.
//
status = AcxDeviceAddFactoryCircuit(Device, devCtx->CtrlCircuit);

if (!NT_SUCCESS(status))
{
    ASSERT(FALSE);
    goto exit;
}

Требования к ACX

минимальная версия ACX: 1.0

Дополнительные сведения о версиях ACX см. в обзоре версий ACX.

Требования

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

См. также