Bagikan melalui


IMiniportWaveCyclic::Metode NewStream (portcls.h)

Metode ini NewStream membuat instans baru dari aliran logis yang terkait dengan saluran fisik tertentu.

Sintaks

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
);

Parameter

[out] Stream

Penunjuk output untuk aliran baru. Parameter ini menunjuk ke variabel pointer yang dialokasikan pemanggil tempat metode menulis pointer ke antarmuka IMiniportWaveCyclicStream objek stream. Pemanggil menentukan nilai penunjuk non-NULL yang valid untuk parameter ini.

[in, optional] OuterUnknown

Arahkan ke antarmuka IUnknown objek yang perlu mengagregasi objek stream. Parameter ini bersifat opsional. Jika agregasi tidak diperlukan, pemanggil menentukan parameter ini sebagai NULL.

[in] PoolType

Menentukan jenis kumpulan memori tempat penyimpanan untuk objek saluran DMA harus dialokasikan. Parameter ini akan menjadi salah satu jenis kumpulan yang tidak disebarkan yang ditentukan dalam enumerasi POOL_TYPE .

[in] Pin

Jumlah pin yang akan dibuka. Jika metode IMiniport::GetDescription driver miniport WaveCyclic mengeluarkan deskriptor filter yang menentukan total pabrik pin n pada filter, maka nilai yang valid untuk parameter Pin berada di rentang 0 hingga n-1.

[in] Capture

Menentukan apakah akan membuat aliran pengambilan atau aliran render. Parameter ini TRUE untuk saluran pengambilan (input), dan FALSE untuk saluran pemutaran (output).

[in] DataFormat

Penunjuk ke struktur KSDATAFORMAT yang menunjukkan format yang akan digunakan untuk instans ini.

[out] DmaChannel

Penunjuk output ke saluran DMA. Parameter ini menunjuk ke variabel pointer yang dialokasikan pemanggil tempat metode menulis pointer ke antarmuka IDmaChannel dari objek saluran DMA driver miniport. Pemanggil menentukan nilai penunjuk non-NULL yang valid untuk parameter ini. Untuk informasi selengkapnya, lihat bagian Keterangan berikut ini.

[out] ServiceGroup

Penunjuk output untuk grup layanan. Parameter ini menunjuk ke variabel penunjuk yang dialokasikan pemanggil tempat metode menulis penunjuk ke antarmuka IServiceGroup dari objek grup layanan aliran. Ini adalah grup layanan yang sedang didaftarkan untuk pemberitahuan interupsi. Pemanggil menentukan nilai penunjuk non-NULL yang valid untuk parameter ini.

Mengembalikan nilai

NewStream mengembalikan STATUS_SUCCESS jika panggilan berhasil. Jika tidak, metode mengembalikan kode kesalahan yang sesuai.

Keterangan

Metode NewStream ini mengatur status awal aliran ke KSSTATE_STOP dan posisi awalnya ke nol. (Lihat IMiniportWaveCyclicStream::SetState dan IMiniportWaveCyclicStream::GetPosition.)

Driver port hanya memanggil metode berikut pada objek DmaChannel :

IDmaChannel::AllocatedBufferSize

IDmaChannel::BufferSize

IDmaChannel::CopyFrom

IDmaChannel::CopyTo

IDmaChannel::SetBufferSize

IDmaChannel::SystemAddress

Parameter Stream, OuterUnknown, DmaChannel, dan ServiceGroup mengikuti konvensi penghitungan referensi untuk objek COM.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Header portcls.h (termasuk Portcls.h)
IRQL PASSIVE_LEVEL

Lihat juga

IDmaChannel

IMiniport::GetDescription

IMiniportWaveCyclic

IMiniportWaveCyclicStream

IServiceGroup

KSDATAFORMAT

POOL_TYPE