AVC_STREAM_REQUEST_BLOCK structure

The AVC_STREAM_REQUEST_BLOCK structure describes an AV/C streaming request to be processed by avcstrm.sys.

Syntax


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 _tagCommandData  CommandData;
} AVC_STREAM_REQUEST_BLOCK, *PAVC_STREAM_REQUEST_BLOCK;

Members

SizeOfThisBlock

Specifies the size of the request block in bytes. Do not set this value directly. Instead, use the INIT_AVCSTRM_HEADER macro.

Version

Specifies the version of avcstrm.sys device driver interface (DDI) to service a request. Do not set this value directly. Instead, use the INIT_AVCSTRM_HEADER macro.

Function

Indicates the request (function code) avcstrm.sys services. This must be a value from the AVCSTRM_FUNCTION enumeration. Do not set this value directly. Instead, use the INIT_AVCSTRM_HEADER macro.

Flags

Special flags to indicate special service or deviation from standard service. This is currently not used.

Status

Final status of this request.

AVCStreamContext

This is context (handle) of a stream. Set this to NULL for the AVCSTRM_OPEN function code. For other function codes, this must be set to a valid value retrieved from an earlier call to AVCSTRM_OPEN.

Context1

The context pointers of the client.

Context2

The context pointers of the client.

Context3

The context pointers of the client.

Context4

The context pointers of the client.

Reserved

Reserved. Do not use.

CommandData

This is a union of command data to be passed to avcstrm.sys for service.

FlagMeaning

StreamState

Specifies the current state of the specified stream. This is used with the AVCSTRM_GET_STATE and AVCSTRM_SET_STATE function codes.

OpenStruct

Specifies a description of a stream to open. This is used with the AVCSTRM_OPEN function code.

BufferStruct

Specifies a description of a buffer used to read or write data from/to a specified stream. This is used with the AVCSTRM_READ and AVCSTRM_WRITE function codes.

 

Remarks

The AVC_STREAM_REQUEST_BLOCK is the primary structure used by a subunit driver to interface with avcstrm.sys.

Every AV/C stream request is described by this structure. This structure is passed as part of the IRP to avcstrm.sys for service..

To use this structure, set the IRP's Irp->Parameters->Others.Argument1 member to an allocated and initialized AVC_STREAM_REQUEST_BLOCK that describes the request (functionality) that the subunit driver wants avcstrm.sys to service.

Requirements

Header

Avcstrm.h (include Avcstrm.h)

See also

AVCSTRM_FUNCTION
KSSTATE
AVCSTRM_OPEN_STRUCT
AVCSTRM_BUFFER_STRUCT
AVCSTRM_READ
AVCSTRM_WRITE
AVCSTRM_OPEN
AVCSTRM_CLOSE
AVCSTRM_ABORT_STREAMING
AVCSTRM_GET_STATE
AVCSTRM_SET_STATE
AVCSTRM_GET_PROPERTY
AVCSTRM_SET_PROPERTY

 

 

Send comments about this topic to Microsoft

Show: