Метод IMiniportMidi::NewStream (portcls.h)

Метод NewStream создает новый экземпляр логического потока, связанного с указанным физическим каналом.

Синтаксис

NTSTATUS NewStream(
  [out]          PMINIPORTMIDISTREAM *Stream,
  [in, optional] PUNKNOWN            OuterUnknown,
  [in]           POOL_TYPE           PoolType,
  [in]           ULONG               Pin,
  [in]           BOOLEAN             Capture,
  [in]           PKSDATAFORMAT       DataFormat,
  [out]          PSERVICEGROUP       *ServiceGroup
);

Параметры

[out] Stream

Выходной указатель для нового потока. Этот параметр указывает на выделенную вызывающим элементом переменную указателя, в которую метод записывает указатель на интерфейс IMiniportMidiStream объекта потока.

[in, optional] OuterUnknown

Указатель на интерфейс IUnknown объекта, который должен агрегировать объект потока. Этот параметр является необязательным. Если агрегирование не требуется, вызывающий объект задает этот параметр как NULL.

[in] PoolType

Указывает тип пула памяти, из которого должно быть выделено хранилище для объекта DMA-канала. Этому параметру присваивается одно из значений перечисления POOL_TYPE.

[in] Pin

Указывает идентификатор закрепления. Этот параметр идентифицирует открываемый контакт. Если метод IMiniport::GetDescription объекта мини-порта MIDI выводит дескриптор фильтра, указывающий в общей сложности n фабрик контактов на фильтре, то допустимые идентификаторы контактов находятся в диапазоне от 0 до n–1.

[in] Capture

Указывает, будет ли канал использоваться для записи или воспроизведения. Если задано значение TRUE, это канал захвата (входных данных). Если значение FALSE, это канал воспроизведения (вывода).

[in] DataFormat

Указатель на структуру KSDATAFORMAT , задающую формат данных, используемый для данного экземпляра потока.

[out] ServiceGroup

Выходной указатель для группы служб. Этот параметр указывает на выделенную вызывающей переменной указателя, в которую метод записывает указатель на интерфейс IServiceGroup объекта группы служб потока. Это группа служб, которая регистрируется для уведомления об прерывании.

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

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

Комментарии

Метод NewStream задает начальное состояние потока KSSTATE_STOP.

Параметры Stream, OuterUnknown и ServiceGroup следуют соглашениям о подсчете ссылок для COM-объектов.

Требования

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

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

IMiniport::GetDescription

IMiniportMidi

IMiniportMidiStream

IServiceGroup

KSDATAFORMAT

POOL_TYPE