struktur AVC_COMMAND_IRB (avc.h)

Struktur AVC_COMMAND_IRB mendefinisikan struktur yang berisi perintah AV/C dan pasangan respons.

Sintaks

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;

Anggota

Common

Ini harus diatur ke enumerator AVC_FUNCTION_COMMAND dari enumerasi AVC_FUNCTION.

SubunitAddrFlag

Ini adalah bendera yang menunjukkan apakah anggota SubunitAddr menentukan alamat. Atur ke satu jika ya, jika tidak, atur ke nol.

AlternateOpcodesFlag

Ini adalah bendera yang menunjukkan apakah anggota AlternateOpcodes valid. Atur ke satu jika ya, jika tidak diatur ke nol.

TimeoutFlag

Atur ini ke satu jika waktu habis default tidak sesuai untuk subunit. Jika ini diatur, anggota Timeout harus diatur ke waktu habis yang diinginkan (dalam unit 100-ns).

RetryFlag

Atur ini ke satu jika jumlah coba lagi default tidak sesuai untuk subunit. Jika ini diatur, anggota Coba lagi harus diatur ke jumlah coba lagi yang diinginkan.

CommandType

Ini menentukan nilai dari enumerasi AvcCommandType. Anggota ini hanya digunakan selama AVC_FUNCTION_GET_REQUEST. Hal ini diabaikan sebaliknya.

ResponseCode

Ini menentukan nilai dari enumerasi AvcResponseCode. Anggota ini hanya digunakan selama AVC_FUNCTION_SEND_RESPONSE. Hal ini diabaikan sebaliknya.

SubunitAddr

Atur ini ke alamat memori tidak bertumpuk yang berisi alamat subunit yang diinginkan yang dikodekan sesuai dengan Bagian 5.3.3 dari AV/C Digital Interface Command Set General Specification, Rev 3.0. Tidak ada panjang yang diperlukan karena pengodean alamat subunit menyiratkan ini. Parameter ini diabaikan jika SubunitAddrFlag adalah nol.

AlternateOpcodes

Atur ini ke alamat memori yang tidak dipagasi yang berisi daftar opcode alternatif yang diinginkan. Byte pertama dari daftar opcode adalah jumlah opcode yang harus diikuti (setara dengan jumlah byte). Panjang total memori yang berisi daftar opcode alternatif adalah AlternateOpcodes[0]+1. Parameter ini diabaikan jika AlternateOpcodesFlag adalah nol.

Timeout

Atur ini ke batas waktu yang diinginkan dalam unit 100-ns. Misalnya, nilai batas waktu default adalah: Timeout.QuadPart = 1000000 (100ms dalam unit 100ns). Parameter ini diabaikan jika TimeoutFlag adalah nol.

Retries

Atur ini ke berapa kali yang diinginkanavc.sys harus mencoba mencoba kembali permintaan setelah setiap waktu habis tanpa respons. Perhatikan bahwa jumlah coba lagi nol berarti bahwa permintaan dicoba sekali. Jumlah total waktu yang dihabiskan untuk mencoba memproses perintah tanpa mendapatkan respons adalah Waktu Habis * (Coba Lagi + 1). Parameter ini diabaikan jika RetryFlag adalah nol.

Opcode

Atur ini ke opcode AV/C yang diinginkan (sesuai untuk jenis subunit). Tanggal adalah parameter yang diperlukan. Sebagai respons, jika AlternateOpcodesFlag ditetapkan, dan salah satu opcode alternatif digunakan untuk mencocokkan respons, ini diatur ke opcode alternatif tersebut.

OperandLength

Atur ini ke jumlah byte yang digunakan untuk menyimpan operand di anggota Operand. Tanggal adalah parameter yang diperlukan. Sebagai respons, parameter ini diatur ke jumlah byte dalam daftar operand yang digunakan oleh respons.

Operands[MAX_AVC_OPERAND_BYTES]

Atur ini ke daftar operand yang sesuai untuk jenis subunit dan opcode. Tanggal adalah parameter yang diperlukan. Pada respons, parameter ini berisi daftar operand respons.

NodeAddress

Dicadangkan. Anggota ini harus nol.

Generation

Dicadangkan. Anggota ini harus nol.

Keterangan

Struktur ini digunakan dengan kode fungsi AVC_FUNCTION_COMMAND, AVC_FUNCTION_GET_REQUEST , dan AVC_FUNCTION_SEND_RESPONSE .

Persyaratan

Persyaratan Nilai
Header avc.h (sertakan Avc.h)

Lihat juga

AVC_FUNCTION

AVC_FUNCTION_COMMAND

AVC_FUNCTION_GET_REQUEST

AVC_FUNCTION_SEND_RESPONSE