AVC_STREAM_REQUEST_BLOCK結構 (avcstrm.h)
AVC_STREAM_REQUEST_BLOCK結構描述 要由avcstrm.sys處理的AV/C串流要求。
語法
typedef struct _AVC_STREAM_REQUEST_BLOCK {
ULONG SizeOfThisBlock;
ULONG Version;
AVCSTRM_FUNCTION Function;
ULONG Flags;
NTSTATUS Status;
PVOID AVCStreamContext;
PVOID Context1;
PVOID Context2;
PVOID Context3;
PVOID Context4;
ULONG Reserved[4];
union {
KSSTATE StreamState;
AVCSTRM_OPEN_STRUCT OpenStruct;
AVCSTRM_BUFFER_STRUCT BufferStruct;
} CommandData;
_tagCommandData _tagCommandData;
} AVC_STREAM_REQUEST_BLOCK, *PAVC_STREAM_REQUEST_BLOCK;
成員
SizeOfThisBlock
以位元組為單位指定要求區塊的大小。 請勿直接設定此值。 請改用 INIT_AVCSTRM_HEADER 宏。
Version
指定 avcstrm.sys 設備驅動器介面的版本, (DDI) 服務要求。 請勿直接設定此值。 請改用 INIT_AVCSTRM_HEADER 宏。
Function
指出 (函式程式代碼) avcstrm.sys 服務的要求。 這必須是 來自 AVCSTRM_FUNCTION 列舉的值。 請勿直接設定此值。 請改用 INIT_AVCSTRM_HEADER 宏。
Flags
用來指出特殊服務或與標準服務偏差的特殊旗標。 目前未使用這個值。
Status
此要求的最終狀態。
AVCStreamContext
這是數據流) 的內容 (句柄。 針對AVCSTRM_OPEN函式程序代碼,將此設定為NULL。 對於其他函式程式代碼,這必須設定為從先前呼叫擷取到AVCSTRM_OPEN的有效值。
Context1
用戶端的內容指標。
Context2
用戶端的內容指標。
Context3
用戶端的內容指標。
Context4
用戶端的內容指標。
Reserved[4]
保留的。 請勿使用。
CommandData
這是要傳遞至 服務avcstrm.sys 命令數據的聯集。
旗標 | 描述 |
---|---|
StreamState | 指定指定數據流的目前狀態。 這會與 AVCSTRM_GET_STATE 和 AVCSTRM_SET_STATE 函式程式代碼搭配使用。 |
OpenStruct | 指定要開啟之數據流的描述。 這會與 AVCSTRM_OPEN 函式程式代碼搭配使用。 |
BufferStruct | 指定用來讀取或寫入指定數據流之數據之緩衝區的描述。 這會與 AVCSTRM_READ 和 AVCSTRM_WRITE 函式程式代碼搭配使用。 |
CommandData.StreamState
定義 KSSTATE 成員 StreamState。
CommandData.OpenStruct
定義 AVCSTRM_OPEN_STRUCT 成員 OpenStruct。
CommandData.BufferStruct
定義 AVCSTRM_BUFFER_STRUCT 成員 BufferStruct。
_tagCommandData
定義 _tagCommandData 成員 _tagCommandData。
備註
AVC_STREAM_REQUEST_BLOCK是子單位驅動程式用來與 avcstrm.sys介面的主要結構。
這個結構會描述每個 AV/C 數據流要求。 此結構會當做 IRP 的一部分傳遞至 service avcstrm.sys 。
若要使用此結構,請將 IRP 的 Irp-Parameters-Others.Argument1>> 成員設定為已配置和初始化的AVC_STREAM_REQUEST_BLOCK,描述子單位驅動程式 avcstrm.sys 服務) 要求 (功能。
規格需求
需求 | 值 |
---|---|
標頭 | avcstrm.h (包含 Avcstrm.h) |