AVC_COMMAND_IRB结构(avc.h)

AVC_COMMAND_IRB结构定义包含 AV/C 命令和响应对的结构。

语法

typedef struct _AVC_COMMAND_IRB {
  AVC_IRB       Common;
  UCHAR         SubunitAddrFlag : 1;
  UCHAR         AlternateOpcodesFlag : 1;
  UCHAR         TimeoutFlag : 1;
  UCHAR         RetryFlag : 1;
  union {
    UCHAR CommandType;
    UCHAR ResponseCode;
  };
  PUCHAR        SubunitAddr;
  PUCHAR        AlternateOpcodes;
  LARGE_INTEGER Timeout;
  UCHAR         Retries;
  UCHAR         Opcode;
  ULONG         OperandLength;
  UCHAR         Operands[MAX_AVC_OPERAND_BYTES];
  NODE_ADDRESS  NodeAddress;
  ULONG         Generation;
} AVC_COMMAND_IRB, *PAVC_COMMAND_IRB;

成员

Common

这必须设置为AVC_FUNCTION枚举中的 AVC_FUNCTION_COMMAND 枚举器。

SubunitAddrFlag

这是一个标志,指示 SubunitAddr 成员是否指定地址。 如果这样做,则设置为 1,否则设置为零。

AlternateOpcodesFlag

这是一个标志,指示 AlternateOpcodes 成员是否有效。 如果设置为 1,则设置为 1,否则设置为零。

TimeoutFlag

如果默认超时不适用于子单位,则设置为一个。 如果已设置,则必须将 超时 成员设置为所需的超时(以 100-ns 单位为单位)。

RetryFlag

如果默认重试计数不适合子单位,请将此值设置为一个。 如果已设置,则必须将 重试 成员设置为所需的重试计数。

CommandType

这指定 AvcCommandType 枚举中的值。 此成员仅在AVC_FUNCTION_GET_REQUEST期间使用。 否则,将忽略它。

ResponseCode

这指定 AvcResponseCode 枚举中的值。 此成员仅在AVC_FUNCTION_SEND_RESPONSE期间使用。 否则,将忽略它。

SubunitAddr

将此地址设置为包含根据 AV/C 数字接口命令集常规规范第 5.3.3 节编码的所需子单元地址的非分页内存的地址。 不需要长度,因为子单位地址编码意味着这一点。 如果 subunitAddrFlag 为零,则忽略此参数。

AlternateOpcodes

将此设置为包含所需备用作码列表的非分页内存的地址。 作码列表的第一个字节是要遵循的作码计数(相当于字节数)。 包含备用作码列表的内存的总长度为 AlternateOpcodes[0]+1。 如果 AlternateOpcodesFlag 为零,则忽略此参数。

Timeout

将此设置为 100-ns 个单位的所需超时。 例如,默认超时值为:Timeout.QuadPart = 1000000 (100ns 单位中的 100 毫秒)。 如果 TimeoutFlag 为零,则忽略此参数。

Retries

将此设置为所需的次数,avc.sys 应在每次超时后尝试重试请求,而无需响应。 请注意,重试计数为零表示请求尝试一次。 尝试在不获取响应的情况下处理命令所用的总时间是超时 * (重试 + 1)。 如果 RetryFlag 为零,则忽略此参数。

Opcode

将此设置为所需的 AV/C作码(适用于子单位类型)。 这是必需的参数。 在响应中,如果设置了 AlternateOpcodesFlag,并且其中一个备用作码用于匹配响应,则会设置为该备用作码。

OperandLength

将此设置为用于将作数存储在 作数 成员中的字节数。 这是必需的参数。 在响应中,此参数设置为响应使用的作数列表中的字节数。

Operands[MAX_AVC_OPERAND_BYTES]

将此设置为适用于子单位类型和作码的作数列表。 这是必需的参数。 在响应中,此参数包含响应的作数列表。

NodeAddress

保留。 此成员必须为零。

Generation

保留。 此成员必须为零。

言论

此结构用于 AVC_FUNCTION_COMMANDAVC_FUNCTION_GET_REQUESTAVC_FUNCTION_SEND_RESPONSE 函数代码。

要求

要求 价值
标头 avc.h (包括 Avc.h)

另请参阅

AVC_FUNCTION

AVC_FUNCTION_COMMAND

AVC_FUNCTION_GET_REQUEST

AVC_FUNCTION_SEND_RESPONSE