HW_STREAM_OBJECT結構 (strmini.h)

HW_STREAM_OBJECT描述迷你驅動程序數據流的實例。

語法

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;

成員

SizeOfThisPacket

指定這個 結構的大小,以位元組為單位。

StreamNumber

指定迷你驅動程式 HW_STREAM_DESCRIPTOR 結構中數據流的位移。

HwStreamExtension

指向數據流延伸模組,這是由類別驅動程式配置的緩衝區,供迷你驅動程式用來保存有關此數據流的私人資訊。 迷你驅動程式會在它向數據流類別驅動程式註冊本身時,設定緩衝區在 HW_INITIALIZATION_DATA 結構中傳遞的大小。

ReceiveDataPacket

數據流 StrMiniReceiveStreamDataPacket 例程的指標。

ReceiveControlPacket

數據流 StrMiniReceiveStreamControlPacket 例程的指標。

HwClockObject

包含數據流的時鐘物件。 如需詳細資訊 ,請參閱HW_CLOCK_OBJECT

Dma

如果 為 TRUE,則裝置會使用 DMA 來傳輸此數據流的數據。

Pio

如果 為 TRUE,則裝置會使用程式化 I/O 來傳輸此數據流的數據。 請注意, PioDma 成員可能都是 TRUE

HwDeviceExtension

迷你驅動程式裝置延伸模組的指標。 迷你驅動程式可能會使用此緩衝區來記錄私人資訊。 迷你驅動程式會在透過 StreamClassRegisterMinidriver 註冊自己時,在HW_INITIALIZATION_DATA結構中設定這個緩衝區的大小。 類別驅動程式也會將指標傳遞給HW_STREAM_REQUEST_BLOCKHW_TIME_CONTEXT的HwDeviceExtension 成員中的這個緩衝區,以及PORT_CONFIGURATION_INFORMATION傳遞至minidriver的結構。

StreamHeaderMediaSpecific

指定媒體特定每個數據流標頭延伸模組的位元元組大小。

StreamHeaderWorkspace

指定每個數據流標頭工作區的大小。

Allocator

如果驅動程式使用配置器,則指定 TRUE 。 大部分的迷你驅動程式都會將此值設定為 FALSE

HwEventRoutine

數據流 StrMiniEvent 例程的指標

Reserved[2]

保留供系統使用。 請勿使用。

備註

這個結構是由類別驅動程式所建立,以保存迷你驅動程式中特定數據流的相關信息。 針對每個數據流特定要求,類別驅動程式會在數據流要求區塊的 StreamObject 成員中傳遞數據流的HW_STREAM_OBJECT, (請參閱 HW_STREAM_REQUEST_BLOCK) 。

當類別驅動程式開啟數據流,並將SRB_OPEN_STREAM要求發出至minidriver的 StrMiniReceiveDevicePacket 例程時,minidriver 會初始化數據流物件。

規格需求

需求
標頭 strmini.h (包含 Strmini.h)

另請參閱

HW_CLOCK_OBJECT