Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Метод NewStream
создает новый экземпляр логического потока, связанного с указанным физическим каналом.
Синтаксис
NTSTATUS NewStream(
[out] PMINIPORTWAVECYCLICSTREAM *Stream,
[in, optional] PUNKNOWN OuterUnknown,
[in] POOL_TYPE PoolType,
[in] ULONG Pin,
[in] BOOLEAN Capture,
[in] PKSDATAFORMAT DataFormat,
[out] PDMACHANNEL *DmaChannel,
[out] PSERVICEGROUP *ServiceGroup
);
Параметры
[out] Stream
Указатель вывода для нового потока. Этот параметр указывает на переменную указателя, выделенной вызывающим объектом, в которую метод записывает указатель на интерфейс объекта потока IMiniportWaveCyclicStream. Вызывающий объект задает допустимое значение указателя, отличное отNULL для этого параметра.
[in, optional] OuterUnknown
Указатель на интерфейс IUnknown объекта, который должен агрегировать объект потока. Этот параметр является необязательным. Если агрегирование не требуется, вызывающий параметр указывает этот параметр как NULL.
[in] PoolType
Указывает тип пула памяти, из которого следует выделить хранилище для объекта DMA-channel. Этот параметр будет одним из типов непагированных пулов, определенных в перечислении POOL_TYPE.
[in] Pin
Число открываемого пин-кода. Если метод IMiniport::GetDescription драйвера miniport::GetDescript ion выводит дескриптор фильтра, указывающий общую n закрепления фабрик в фильтре, то допустимые значения для параметра Пин-код находятся в диапазоне от 0 до n-1.
[in] Capture
Указывает, следует ли создавать поток записи или поток отрисовки. Этот параметр TRUE для канала записи (входных данных) и FALSE для канала воспроизведения (вывода).
[in] DataFormat
Указатель на структуру KSDATAFORMAT, указывающую формат, используемый для этого экземпляра.
[out] DmaChannel
Указатель вывода на канал DMA. Этот параметр указывает на переменную вызываемого указателя, в которую метод записывает указатель на интерфейс IDmaChannel объекта DMA-channel драйвера минипорта. Вызывающий объект задает допустимое значение указателя, отличное отNULL для этого параметра. Дополнительные сведения см. в следующем разделе "Примечания".
[out] ServiceGroup
Указатель вывода для группы служб. Этот параметр указывает на переменную вызываемого указателя, в которую метод записывает указатель на интерфейс IServiceGroup объекта группы служб потока. Это группа служб, зарегистрированная для уведомления о прерывании. Вызывающий объект задает допустимое значение указателя, отличное отNULL для этого параметра.
Возвращаемое значение
NewStream
возвращает STATUS_SUCCESS, если вызов выполнен успешно. В противном случае метод возвращает соответствующий код ошибки.
Замечания
Метод NewStream
задает начальное состояние потока на KSSTATE_STOP и его начальное положение равно нулю. (См. IMiniportWaveCyclicStream::SetState и IMiniportWaveCyclicStream::GetPosition.)
Драйвер порта вызывает только следующие методы в объекте DmaChannel:
IDmaChannel::AllocatedBufferSize
Stream, OuterUnknown, DmaChannelи параметры ServiceGroup serviceGroup соответствуют соглашениям о подсчете ссылок для объектов COM.
Требования
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
заголовка | portcls.h (include Portcls.h) |
IRQL | PASSIVE_LEVEL |