Метод IMiniportWaveCyclicStream::SetState (portcls.h)

Метод SetState задает новое состояние воспроизведения или записи потока.

Синтаксис

NTSTATUS SetState(
  [in] KSSTATE State
);

Параметры

[in] State

Указывает новое состояние потока. Этот параметр является значением перечисления KSSTATE . Дополнительные сведения см. в разделе "Примечания".

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

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

Комментарии

Для графа фильтра звука четыре значения перечисления KSSTATE интерпретируются следующим образом:

  • KSSTATE_RUN

    Транспорт данных в текущем графе фильтра звука выполняется и работает в обычном режиме.

  • KSSTATE_ACQUIRE

    Это переходное состояние, которое помогает управлять переходом между KSSTATE_RUN и KSSTATE_STOP.

  • KSSTATE_PAUSE

    Это переходное состояние, которое помогает управлять переходом между KSSTATE_RUN и KSSTATE_STOP.

  • KSSTATE_STOP

    Передача данных останавливается в текущем графе фильтра звука.

Для большинства водителей мини-портов KSSTATE_ACQUIRE и KSSTATE_PAUSE неотличимы.

Переходы всегда происходят в одной из следующих двух последовательностей:

  • STOP -> ACQUIRE -> PAUSE -> RUN
  • ВЫПОЛНИТЕ КОМАНДУ -> PAUSE -> ACQUIRE -> STOP
Метод IMiniportWaveCyclic::NewStream устанавливает начальное состояние потока в KSSTATE_STOP.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть portcls.h (включая Portcls.h)
IRQL PASSIVE_LEVEL

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

IMiniportWaveCyclic::NewStream

IMiniportWaveCyclicStream

KSPROPERTY_CONNECTION_STATE

KSSTATE