struktur HW_STREAM_OBJECT (strmini.h)

HW_STREAM_OBJECT menjelaskan instans aliran minidriver.

Sintaks

typedef struct _HW_STREAM_OBJECT {
  ULONG                          SizeOfThisPacket;
  ULONG                          StreamNumber;
  PVOID                          HwStreamExtension;
  PHW_RECEIVE_STREAM_DATA_SRB    ReceiveDataPacket;
  PHW_RECEIVE_STREAM_CONTROL_SRB ReceiveControlPacket;
  HW_CLOCK_OBJECT                HwClockObject;
  BOOLEAN                        Dma;
  BOOLEAN                        Pio;
  PVOID                          HwDeviceExtension;
  ULONG                          StreamHeaderMediaSpecific;
  ULONG                          StreamHeaderWorkspace;
  BOOLEAN                        Allocator;
  PHW_EVENT_ROUTINE              HwEventRoutine;
  ULONG                          Reserved[2];
} HW_STREAM_OBJECT, *PHW_STREAM_OBJECT;

Anggota

SizeOfThisPacket

Menentukan ukuran, dalam byte, dari struktur ini.

StreamNumber

Menentukan offset aliran dalam struktur HW_STREAM_DESCRIPTOR minidriver.

HwStreamExtension

Menunjuk ke ekstensi streaming, buffer yang dialokasikan oleh driver kelas untuk digunakan minidriver untuk menyimpan informasi pribadi tentang aliran ini. Minidriver mengatur ukuran buffer dalam struktur HW_INITIALIZATION_DATA yang dilewatinya ketika mendaftarkan dirinya dengan driver kelas stream.

ReceiveDataPacket

Arahkan ke rutinitas StrMiniReceiveStreamDataPacket aliran.

ReceiveControlPacket

Arahkan ke rutinitas StrMiniReceiveStreamControlPacket aliran.

HwClockObject

Berisi objek jam aliran. Lihat HW_CLOCK_OBJECT untuk detailnya.

Dma

Jika TRUE, perangkat menggunakan DMA untuk mentransfer data untuk aliran ini.

Pio

Jika TRUE, perangkat menggunakan I/O terprogram untuk mentransfer data untuk aliran ini. Perhatikan bahwa anggota Pio dan Dma mungkin TRUE.

HwDeviceExtension

Arahkan ke ekstensi perangkat minidriver. Minidriver dapat menggunakan buffer ini untuk merekam informasi privat. Minidriver mengatur ukuran buffer ini dalam struktur HW_INITIALIZATION_DATA yang dilewatinya ketika mendaftarkan dirinya melalui StreamClassRegisterMinidriver. Driver kelas juga meneruskan pointer ke buffer ini di anggota HwDeviceExtension dari struktur HW_STREAM_REQUEST_BLOCK, HW_TIME_CONTEXT, dan PORT_CONFIGURATION_INFORMATION yang diteruskannya ke minidriver.

StreamHeaderMediaSpecific

Menentukan ukuran dalam byte ekstensi header per aliran khusus media.

StreamHeaderWorkspace

Menentukan ukuran ruang kerja per-stream-header.

Allocator

Menentukan TRUE jika driver menggunakan alokator. Sebagian besar minidriver mengatur nilai ini ke FALSE.

HwEventRoutine

Penunjuk ke rutinitas StrMiniEvent aliran

Reserved[2]

Dicadangkan untuk penggunaan sistem. Jangan gunakan.

Keterangan

Struktur ini dibuat oleh driver kelas untuk menyimpan informasi tentang aliran tertentu di minidriver. Untuk setiap permintaan khusus aliran, driver kelas meneruskan HW_STREAM_OBJECT untuk streaming di anggota StreamObject dari blok permintaan aliran (Lihat HW_STREAM_REQUEST_BLOCK).

Ketika driver kelas membuka aliran dan mengeluarkan permintaan SRB_OPEN_STREAM ke rutinitas StrMiniReceiveDevicePacket minidriver, minidriver menginisialisasi objek stream.

Persyaratan

Persyaratan Nilai
Header strmini.h (termasuk Strmini.h)

Lihat juga

HW_CLOCK_OBJECT