Минипортные интерфейсы

Как описано в разделе "Поддержка устройства", системный драйвер PortCls предоставляет набор встроенных драйверов портов для управления устройствами Wave и MIDI. Чтобы использовать один из этих драйверов портов для управления определенным типом звукового устройства, драйвер адаптера должен предоставить соответствующий минипорт-драйвер, который дополняет драйвер порта, управляя всеми аппаратными функциями устройства.

В этом разделе рассматриваются следующие типы драйверов мини-порта:

Драйвер минипорта WaveRT

Дополняет драйвер порта WaveRT, управляя аппаратно-зависимыми функциями устройства воспроизведения или записи, использующего циклический буфер для звуковых данных.

Драйвер минипорта топологии

Дополняет драйвер топологии порта, управляя аппаратными средствами управления (например, уровень громкости) в микшерной схеме аудиоадаптера.

MIDI Miniport Driver

Дополняет драйвер порта MIDI, управляя аппаратными функциями простого устройства MIDI.

DMus Miniport Driver

Дополняет драйвер порта DMus, управляя аппаратными функциями расширенного устройства MIDI.

Каждый драйвер портов реализует интерфейс IPortXxx , который он представляет драйверу мини-порта. В свою очередь, драйвер минипорта должен реализовать интерфейс IMiniportXxx , который драйвер портов использует для взаимодействия с мини-драйвером. В следующей таблице показан интерфейс IPortXxx и соответствующий интерфейс IMiniportXxx для каждого типа устройства.

Тип устройства Интерфейс драйвера портов Интерфейс драйвера минипорта

WaveCyclic

IPortWaveCyclic

IMiniportWaveCyclic

WavePci

IPortWavePci

IMiniportWavePci

WaveRT

IPortWaveRT

IMiniportWaveRT

Топология

IPortTopology

IMiniportTopology

MIDI (Международный интерфейс цифровых инструментов)

IPortMidi

IMiniportMidi

DirectMusic

IPortDMus

IMiniportDMus

В предыдущей таблице все интерфейсы IPortXxx являются производными от базового интерфейса IPort, а все интерфейсы IMiniportXxx являются производными от IMiniport.