AVC_FUNCTION_GET_PIN_DESCRIPTOR

AVC_FUNCTION_GET_PIN_DESCRIPTOR函数代码获取每个引脚 ID 的引脚描述符, (偏移量从零) 。

I/O 状态块

如果成功,AV/C 协议驱动程序会将 Irp-IoStatus.Status> 设置为STATUS_SUCCESS。

可能的其他返回值包括:

返回值 说明
STATUS_TIMEOUT 发出了请求,但在所有超时和重试处理完成之前未收到任何响应。
STATUS_REQUEST_ABORTED 当 IRP 完成状态为STATUS_REQUEST_ABORTED时,立即中止。 这表示设备已被移除或不再在 1394 总线上可用。
地位_* 任何其他返回代码指示发生了超出 AV/C 协议范围的错误或警告。

注释

此函数使用 AVC_MULTIFUNC_IRB 结构的 PinDescriptor 成员,如下所示。

typedef struct _AVC_MULTIFUNC_IRB {
  AVC_IRB  Common;
  union {
    .
    .
    .
    AVC_PIN_DESCRIPTOR PinDescriptor;
 .
    .
    .
  };
} AVC_MULTIFUNC_IRB, *PAVC_MULTIFUNC_IRB;

要求

头:avc.h 中声明。 包括 avc.h

AVC_MULTIFUNC_IRB输入

通用
此成员的 Function 子成员必须设置为 从 AVC_FUNCTION 枚举AVC_FUNCTION_GET_PIN_DESCRIPTOR。

PinDescriptor
指定 AV/C 子单元设备上的引脚说明。

avc.sys的虚拟实例不支持此函数代码。

除了引脚描述符之外,此函数还可能返回相交处理程序的地址以及与相交处理程序关联的不透明上下文值。 如果相交处理程序成员为 NULL,则子单元驱动程序必须提供相交处理程序。 如果相交处理程序成员不为 NULL,则提供相交处理程序,驱动程序可以使用它。

Avc.sys 永远不会提供数据交集,但筛选器驱动程序 (例如, avcstrm.sys) 在请求通过堆栈完成时填充数据交集。

必须在 IRQL = PASSIVE_LEVEL 调用。

另请参阅

AVC_MULTIFUNC_IRB

AVC_PIN_DESCRIPTOR

AVC_FUNCTION

KSPIN_DESCRIPTOR

AV/C 相交处理程序