Mengambil OPM DDI
Urutan berikut menunjukkan bagaimana subsistem kernel grafis Microsoft DirectX (Dxgkrnl.sys) mengambil DDI OPM driver miniport tampilan:
Subsistem kernel grafis DirectX memanggil fungsi DxgkDdiAddDevice driver miniport tampilan untuk membuat blok konteks untuk adaptor grafis dan mengembalikan handel ke adaptor grafis tersebut.
Subsistem kernel grafik DirectX menginisialisasi struktur QUERY_INTERFACE dengan nilai dalam tabel berikut.
Nama anggota Jenis anggota Nilai InterfaceType
CONST PGUID
Penunjuk ke GUID_DEVINTERFACE_OPM
(BF4672DE-6B4E-4BE4-A325-68A91EA49C09)
Ukuran
USHORT
sizeof(DXGK_OPM_INTERFACE)
Versi
USHORT
DXGK_OPM_INTERFACE_VERSION_1
Antarmuka
PINTERFACE
Penunjuk ke struktur DXGK_OPM_INTERFACE
InterfaceSpecificData
PVOID
NULL
Subsistem kernel grafis DirectX meneruskan QUERY_INTERFACE yang diinisialisasi dalam panggilan ke fungsi DxgkDdiQueryInterface driver miniport tampilan.
Jika driver miniport tampilan tidak mendukung antarmuka OPM, DxgkDdiQueryInterface harus mengembalikan STATUS_NOT_SUPPORTED.
Jika driver miniport tampilan mendukung OPM, DxgkDdiQueryInterface menginisialisasi struktur DXGK_OPM_INTERFACE yang diterima di anggota AntarmukaQUERY_INTERFACE dengan nilai dalam tabel berikut.
Nama anggota, jenis, dan nilai:
Ukuran
Ketik USHORTsizeof(DXGK_OPM_INTERFACE)
Versi
Ketik USHORTDXGK_OPM_INTERFACE_VERSION_1
InterfaceReference
Ketik PINTERFACE_REFERENCEPenunjuk ke rutinitas InterfaceReference driver miniport tampilan (Untuk informasi tentang InterfaceReference, lihat bagian Keterangan dari struktur ANTARMUKA .)
InterfaceDereference
Ketik PINTERFACE_DEREFERENCEPenunjuk ke rutinitas InterfaceDereference driver miniport tampilan (Untuk informasi tentang InterfaceDereference, lihat bagian Keterangan dari struktur ANTARMUKA .)
DxgkDdiOPMGetCertificateSize
Ketik DXGKDDI_OPM_GET_CERTIFICATE_SIZEPenunjuk ke fungsi DxgkDdiOPMGetCertificateSize driver miniport
DxgkDdiOPMGetCertificate
Ketik DXGKDDI_OPM_GET_CERTIFICATEPenunjuk ke fungsi DxgkDdiOPMGetCertificate driver miniport
DxgkDdiOPMCreateProtectedOutput
Ketik DXGKDDI_OPM_CREATE_PROTECTED_OUTPUTPenunjuk ke fungsi DxgkDdiOPMCreateProtectedOutput driver miniport
DxgkDdiOPMGetRandomNumber
Ketik DXGKDDI_OPM_GET_RANDOM_NUMBERPenunjuk ke fungsi DxgkDdiOPM driver miniportGetRandomNumber
DxgkDdiOPMSetSigningKeyAndSequenceNumbers
DXGKDDI_OPM_SET_SIGNING_KEY_AND_SEQUENCE_NUMBERSPenunjuk ke fungsi DxgkDdiOPMSetSigningKeyAndSequenceNumbers driver tampilan
DxgkDdiOPMGetInformation
DXGKDDI_OPM_GET_INFORMATIONPenunjuk ke fungsi DxgkDdiOPMGetInformation driver miniport
DxgkDdiOPMGetCOPPCompatibleInformation
DXGKDDI_OPM_GET_COPP_COMPATIBLE_INFORMATIONPenunjuk ke fungsi DxgkDdiOPMGetCOPPCompatibleInformation driver miniport
DxgkDdiOPMConfigureProtectedOutput
DXGKDDI_OPM_CONFIGURE_PROTECTED_OUTPUTPenunjuk ke fungsi DxgkDdiOPMConfigureProtectedOutput driver miniport
DxgkDdiOPMDestroyProtectedOutput
DXGKDDI_OPM_DESTROY_PROTECTED_OUTPUTPenunjuk ke fungsi DxgkDdiOPMDestroyProtectedOutput driver miniport
Ketika driver miniport tampilan selesai menggunakan antarmuka OPM, driver memanggil rutinitas InterfaceDereference-nya . Driver harus memanggil InterfaceDereference sebelum fungsi DxgkDdiRemoveDevice dipanggil.