Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die AVC_COMMAND_IRB-Struktur definiert eine Struktur, die ein AV/C-Befehls- und Antwortpaar enthält.
Syntax
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;
Angehörige
Common
Dies muss auf den AVC_FUNCTION_COMMAND Enumerator aus der AVC_FUNCTION-Aufzählung festgelegt werden.
SubunitAddrFlag
Dies ist ein Flag, das angibt, ob das SubunitAddr- element eine Adresse angibt. Wenn dies der Fall ist, legen Sie ihn andernfalls auf Null fest.
AlternateOpcodesFlag
Dies ist ein Flag, das angibt, ob das AlternateOpcodes Member gültig ist. Wenn dies der Grund ist, andernfalls auf Null festgelegt.
TimeoutFlag
Legen Sie dies auf einen Wert fest, wenn das Standardtimeout für die Untereinheit nicht geeignet ist. Wenn dies festgelegt ist, muss das Timeout Member auf das gewünschte Timeout (in 100-ns-Einheiten) festgelegt werden.
RetryFlag
Legen Sie dies auf eine fest, wenn die Standardanzahl der Wiederholungsversuche für die Untereinheit nicht geeignet ist. Wenn dies festgelegt ist, muss das Wiederholungsversuche Member auf die gewünschte Wiederholungsanzahl festgelegt werden.
CommandType
Dadurch wird ein Wert aus der AvcCommandType-Aufzählung angegeben. Dieses Element wird nur während AVC_FUNCTION_GET_REQUEST verwendet. Andernfalls wird sie ignoriert.
ResponseCode
Dadurch wird ein Wert aus der AvcResponseCode-Aufzählung angegeben. Dieses Element wird nur während AVC_FUNCTION_SEND_RESPONSE verwendet. Andernfalls wird sie ignoriert.
SubunitAddr
Legen Sie dies auf die Adresse des nicht seitenfreien Speichers fest, der die gewünschte Untereinheitsadresse enthält, die gemäß Abschnitt 5.3.3 der Allgemeinen Spezifikation des AV/C Digital Interface Command Set, Rev 3.0, codiert ist. Es ist keine Länge erforderlich, da die Codierung der Untereinheitsadresse dies impliziert. Dieser Parameter wird ignoriert, wenn SubunitAddrFlag null ist.
AlternateOpcodes
Legen Sie dies auf die Adresse des nicht ausgestellten Speichers fest, der die gewünschte alternative Opcodeliste enthält. Das erste Byte der Opcode-Liste ist die Anzahl der zu befolgenden Opcodes (entspricht der Anzahl der Bytes). Die Gesamtlänge des Arbeitsspeichers, der die alternative Opcodeliste enthält, ist AlternateOpcodes[0]+1. Dieser Parameter wird ignoriert, wenn AlternateOpcodesFlag Null ist.
Timeout
Legen Sie dies auf das gewünschte Timeout in 100-ns-Einheiten fest. Der Standardtimeoutwert lautet beispielsweise: Timeout.QuadPart = 1000000 (100 ms in 100ns Einheiten). Dieser Parameter wird ignoriert, wenn TimeoutFlag null ist.
Retries
Legen Sie dies auf die gewünschte Anzahl von Wiederholungen fest, avc.sys versuchen sollten, Anforderungen nach jedem Timeout ohne Antwort erneut auszuführen. Beachten Sie, dass eine Wiederholungsanzahl von Null bedeutet, dass die Anforderung einmal versucht wird. Der Gesamtaufwand für den Versuch, einen Befehl zu verarbeiten, ohne eine Antwort zu erhalten, ist Timeout * (Wiederholungen + 1). Dieser Parameter wird ignoriert, wenn RetryFlag null ist.
Opcode
Legen Sie dies auf den gewünschten AV/C-Opcode fest (geeignet für den Untereinheitstyp). Dies ist ein erforderlicher Parameter. Wenn AlternateOpcodesFlag festgelegt wurde und eine der alternativen Opcodes zur Übereinstimmung mit der Antwort verwendet wurde, wird dies auf diesen alternativen Opcode festgelegt.
OperandLength
Legen Sie dies auf die Anzahl der Bytes fest, die zum Speichern der Operanden im Operanden Member verwendet werden. Dies ist ein erforderlicher Parameter. Bei der Antwort wird dieser Parameter auf die Anzahl der Bytes in der operanden Liste festgelegt, die von der Antwort verwendet wird.
Operands[MAX_AVC_OPERAND_BYTES]
Legen Sie dies auf die Operandliste fest, die für den Untereinheitstyp und den Opcode geeignet ist. Dies ist ein erforderlicher Parameter. Bei der Antwort enthält dieser Parameter die Operandliste der Antwort.
NodeAddress
Reserviert. Dieses Element muss null sein.
Generation
Reserviert. Dieses Element muss null sein.
Bemerkungen
Diese Struktur wird mit den Funktionscodes AVC_FUNCTION_COMMAND, AVC_FUNCTION_GET_REQUEST und AVC_FUNCTION_SEND_RESPONSE verwendet.
Anforderungen
| Anforderung | Wert |
|---|---|
| Header- | avc.h (include Avc.h) |