Pengantar Objek Kerangka Kerja

Antarmuka yang disediakan Windows Driver Frameworks (WDF) ke driver berbasis objek. Kerangka kerja menentukan beberapa objek. Objek ini mengekspor metode (fungsi) dan properti (data) yang dapat diakses driver. Objek kerangka kerja juga memulai peristiwa, yang dapat didukung driver dengan menyediakan fungsi panggilan balik peristiwa.

Driver berbasis kerangka kerja tidak pernah langsung mengakses objek kerangka kerja. Sebaliknya, driver mereferensikan objek dengan handel, yang diteruskan driver sebagai input ke metode objek.

Semua objek kerangka kerja memiliki karakteristik berikut:

Jumlah referensi
Kerangka kerja mempertahankan hitungan jumlah referensi untuk setiap objek. Saat kerangka kerja membuat objek, kerangka kerja mengatur jumlah referensi objek menjadi satu. Setelah kerangka kerja selesai menggunakan objek, kerangka kerja akan mengurangi jumlah referensi. Kerangka kerja tidak dapat menghapus objek sampai jumlah referensi diturunkan menjadi nol, sehingga driver dapat mencegah penghapusan objek dengan menambah jumlah referensinya.

Ruang konteks
Driver berbasis kerangka kerja dapat membuat ruang konteks khusus objek untuk setiap objek kerangka kerja yang diterima atau dibuat driver. Driver harus menyimpan semua data khusus objek di ruang konteks objek. Untuk informasi selengkapnya tentang ruang konteks, lihat Ruang Konteks Objek Kerangka Kerja.

Menghapus fungsi panggilan balik
Driver dapat mendaftarkan fungsi panggilan balik yang dipanggil kerangka kerja saat menghapus objek. Fungsi panggilan balik dapat menghapus sumber daya yang ditetapkan driver, seperti alokasi memori khusus objek. Untuk informasi selengkapnya tentang fungsi panggilan balik ini, lihat Siklus Hidup Objek Kerangka Kerja.

Objek induk
Semua objek kerangka kerja dapat memiliki objek induk. Kerangka kerja menunjuk objek induk default untuk sebagian besar objek. Saat driver membuat objek, driver dapat menunjuk objek induk yang mengambil alih objek induk default objek. Untuk menunjuk objek induk objek, driver mengatur anggota ParentObject dari struktur WDF_OBJECT_ATTRIBUTES objek. (Untuk beberapa jenis objek, driver tidak dapat mengambil alih objek induk default.) Saat kerangka kerja atau driver menghapus objek induk, kerangka kerja juga menghapus turunan objek induk.

Untuk gambaran umum semua objek yang ditentukan oleh WDF, lihat Ringkasan Objek Kerangka Kerja.