AVC_PIN_DESCRIPTOR structure (avc.h)

The AVC_PIN_DESCRIPTOR structure describes a pin on an AV/C subunit device.

Syntax

typedef struct _AVC_PIN_DESCRIPTOR {
  ULONG                  PinId;
  KSPIN_DESCRIPTOR       PinDescriptor;
  PFNAVCINTERSECTHANDLER IntersectHandler;
  PVOID                  Context;
} AVC_PIN_DESCRIPTOR, *PAVC_PIN_DESCRIPTOR;

Members

PinId

Specifies the offset (or ID) of the pin for which information is to be retrieved.

PinDescriptor

Specifies a KSPIN_DESCRIPTOR structure. This structure is allocated in the nonpaged pool. The subunit driver must not free this pointer.

IntersectHandler

An optional output parameter specifying a data range intersect handler associated with the DataRanges member of the PinDescriptor member.

Context

An optional output parameter specifying a value to be passed to the IntersectHandler when it is called during format negotiation. For more information about what an intersect handler is, see DataRange Intersections in AVStream.

Remarks

This structure is used with the AVC_FUNCTION_GET_PIN_DESCRIPTOR function code.

This structure is used only as a member inside the AVC_MULTIFUNC_IRB structure. It is not used by itself.

For information about building and sending an AV/C command, see How to Use Avc.sys.

A description of the members of the KSPIN_DESCRIPTOR structure used in AVC_PIN_DESCRIPTOR follows:

typedef struct {
    ULONG                   InterfacesCount;
    const KSPIN_INTERFACE*  Interfaces;
    ULONG                   MediumsCount;
    const KSPIN_MEDIUM*     Mediums;
    ULONG                   DataRangesCount;
    const PKSDATARANGE*     DataRanges;
    KSPIN_DATAFLOW          DataFlow;
    KSPIN_COMMUNICATION     Communication;
    const GUID*             Category;
    const GUID*             Name;
    union {
        LONGLONG            Reserved;
        struct {
            ULONG           ConstrainedDataRangesCount;
            PKSDATARANGE*   ConstrainedDataRanges;
        };
    };
} KSPIN_DESCRIPTOR, *PKSPIN_DESCRIPTOR;

Requirements

Requirement Value
Header avc.h (include Avc.h)

See also

AV/C Intersect Handler

AVC_MULTIFUNC_IRB

KSPIN_DESCRIPTOR