Mendapatkan Objek DDI HDAUDIO_BUS_INTERFACE_BDL

Seperti yang dijelaskan sebelumnya, driver fungsi untuk codec audio atau modem mendapatkan referensi yang dihitung ke objek dengan HD Audio DDI dengan mengirim IRP_MN_QUERY_INTERFACE IOCTL ke driver bus HD Audio.

Tabel berikut menunjukkan nilai parameter input yang ditulis driver fungsi ke dalam IOCTL untuk mendapatkan struktur HDAUDIO_BUS_INTERFACE_BDL dan objek konteks untuk versi HD Audio DDI yang ditentukan struktur ini.

Parameter Nilai

CONST GUID *InterfaceType

GUID_HDAUDIO_BUS_INTERFACE_BDL

Ukuran USHORT

sizeof(HDAUDIO_BUS_INTERFACE_BDL)

Versi USHORT

0x0100

Antarmuka PINTERFACE

Penunjuk ke struktur HDAUDIO_BUS_INTERFACE_BDL

Antarmuka PVOIDSpecificData

NULL

Driver fungsi mengalokasikan penyimpanan untuk struktur HDAUDIO_BUS_INTERFACE_BDL dan menyertakan penunjuk ke struktur ini dalam IOCTL. Dalam tabel sebelumnya, penunjuk ke struktur HDAUDIO_BUS_INTERFACE_BDL ditransmisikan untuk mengetik PINTERFACE, yang merupakan penunjuk ke struktur jenis INTERFACE. Nama dan jenis lima anggota pertama HDAUDIO_BUS_INTERFACE_BDL cocok dengan lima anggota INTERFACE. HDAUDIO_BUS_INTERFACE_BDL berisi anggota tambahan yang merupakan penunjuk fungsi ke rutinitas DDI. Sebagai tanggapan untuk menerima IOCTL dari driver fungsi, driver bus HD Audio mengisi seluruh struktur HDAUDIO_BUS_INTERFACE_BDL .

Tabel berikut ini memperlihatkan nilai yang ditulis driver bus HD Audio ke dalam lima anggota pertama struktur HDAUDIO_BUS_INTERFACE_BDL .

Anggota Nilai

Ukuran USHORT

sizeof(HDAUDIO_BUS_INTERFACE_BDL)

Versi USHORT

0x0100

Konteks PVOID

Informasi konteks yang perlu diteruskan sebagai parameter panggilan pertama ke setiap rutinitas DDI

PINTERFACE_REFERENCE InterfaceReference

Penunjuk ke rutinitas yang menaikkan jumlah referensi objek konteks

PINTERFACE_DEREFERENCE InterfaceDereference

Penunjuk ke rutinitas yang mengurangi jumlah referensi objek konteks

Dalam tabel sebelumnya, anggota Konteks menunjuk ke objek konteks yang berisi informasi yang khusus untuk instans tertentu dari versi HDAUDIO_BUS_INTERFACE_BDL DDI yang diperoleh klien dari IOCTL. Seperti yang dijelaskan sebelumnya, saat memanggil salah satu rutinitas di DDI, driver fungsi klien harus selalu menentukan nilai penunjuk Konteks sebagai parameter panggilan pertama.