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 스트림 요청은 이 구조로 설명됩니다. 이 구조체는 서비스에 대한 avcstrm.sys IRP의 일부로 전달됩니다.
이 구조를 사용하려면 IRP의 Irp-Parameters-Others.Argument1>> 멤버를 하위 단위 드라이버가 서비스에avcstrm.sys원하는 요청(기능)을 설명하는 할당되고 초기화된 AVC_STREAM_REQUEST_BLOCK 설정합니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | avcstrm.h(Avcstrm.h 포함) |