Kelas CFactoryTemplate

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Pengambilan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine , dan Pengambilan Audio/Video di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Menyediakan templat untuk membuat pabrik kelas.

Di DirectShow, pabrik kelas dikhususkan menggunakan kelas CFactoryTemplate , juga disebut templat pabrik. Setiap pabrik kelas menyimpan pointer ke templat pabrik. Templat pabrik berisi informasi tentang objek COM, termasuk pengidentifikasi kelas objek (CLSID) dan penunjuk ke fungsi yang membuat objek.

Di DLL Anda, deklarasikan array global templat pabrik bernama g_Templates. Sertakan satu templat pabrik untuk setiap objek di DLL. Ketika fungsi DllGetClassObject membuat pabrik kelas baru, fungsi tersebut mencari array untuk templat dengan CLSID yang cocok. Dengan asumsi menemukannya, ia membuat pabrik kelas yang menyimpan penunjuk ke templat yang cocok. Saat klien memanggil IClassFactory::CreateInstance, pabrik kelas memanggil fungsi instansiasi yang ditentukan dalam templat.

Untuk informasi selengkapnya, lihat Cara Membuat DLL Filter DirectShow.

Variabel Anggota Publik Deskripsi
m_Name Nama filter.
m_ClsID Arahkan ke CLSID objek.
m_lpfnNew Penunjuk ke fungsi yang membuat instans objek.
m_lpfnInit Penunjuk ke fungsi yang dipanggil dari titik entri DLL.
m_pAMovieSetup_Filter Arahkan ke struktur AMOVIESETUP_FILTER .
Metode Publik Deskripsi
IsClassID Menentukan apakah CLSID cocok dengan templat kelas ini.
CreateInstance Memanggil fungsi pembuatan objek untuk kelas .

Persyaratan

Persyaratan Nilai
Header
Combase.h (termasuk Streams.h)
Pustaka
Strmbase.lib;
Strmbasd.lib

Lihat juga

Referensi Kelas Dasar