Kelas CDeferredCommand
[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan 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 Audio/Video Capture 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.]
Perintah yang ditangguhkan diantrekan oleh panggilan ke metode pada antarmuka IQueueCommand dan diekspos oleh manajer grafik filter dan oleh beberapa filter. Panggilan yang berhasil ke salah satu metode ini mengembalikan antarmuka IDeferredCommand yang mewakili perintah antrean.
Objek CDeferredCommand
mewakili satu perintah yang ditangguhkan dan mengekspos antarmuka IDeferredCommand serta metode lain yang mengizinkan pemeriksaan waktu dan eksekusi aktual. Objek CDeferredCommand
berisi referensi ke objek CCmdQueue tempat objek diantrekan.
Jumlah referensi mengontrol masa CDeferredCommand
pakai kelas. Saat memanggil fungsi anggota CDeferredCommand::Invoke , aplikasi panggilan mendapatkan penunjuk antarmuka yang dihitung referensi, dan objek CCmdQueue juga menyimpan jumlah referensi pada perintah yang ditangguhkan. Memanggil fungsi anggota IDeferredCommand::Cancel mengambil perintah yang ditangguhkan dari antrean perintah dan dengan demikian mengurangi jumlah referensi satu per satu. Setelah diambil dari antrean, perintah tidak dapat diletakkan kembali pada antrean.
Anggota Data terproteksi | Deskripsi |
---|---|
m_bStream | Benderai untuk waktu streaming atau waktu presentasi. untuk diteruskan ke metode yang dipanggil. |
m_Dispatch | Mengakses antarmuka ITypeInfo . |
m_dispidMethod | Metode pada antarmuka untuk dijalankan. |
m_DispParams | Objek CDispParams yang berisi daftar parameter DISPPARAMS |
m_hrResult | Menyimpan nilai HRESULT yang dikembalikan. |
m_iid | Pengidentifikasi unik global (GUID) antarmuka. |
m_pQueue | Arahkan ke objek CCmdQueue yang mengekspos antarmuka IQueueCommand . |
m_pUnk | Penunjuk IUnknown ke antarmuka tempat perintah akan dijalankan. |
m_pvarResult | Informasi yang dihasilkan, jika ada, dari metode yang dipanggil. |
m_time | Waktu di mana perintah akan dijalankan. |
m_wFlags | Bendera yang menentukan konteks pemanggilan. |
Fungsi Anggota | Deskripsi |
CDeferredCommand | Membuat objek CDeferredCommand . |
GetFlags | Mengambil bendera konteks yang terkait dengan perintah yang ditangguhkan. |
GetIID | Mengambil pengidentifikasi antarmuka (IID) antarmuka tempat metode akan dijalankan. |
GetMethod | Mengambil pengidentifikasi pengiriman metode yang akan dijalankan. |
GetParams | Mengambil daftar argumen DISPPARAMS ke metode . |
GetResult | Mengambil daftar argumen yang dihasilkan, jika ada. |
GetTime | Mengambil waktu ketika metode akan dijalankan. |
Gunakan | Menyediakan akses ke metode dan properti yang diekspos oleh objek. |
IsStreamTime | Menentukan apakah perintah akan dijalankan pada waktu streaming atau waktu presentasi. |
Metode IDeferredCommand | Deskripsi |
Batalkan | Membatalkan permintaan CDeferredCommand::Invoke yang sebelumnya diantrekan. |
Keyakinan | Saat ini tidak diimplementasikan. |
Tunda | Menentukan waktu presentasi baru untuk perintah yang sebelumnya diantrekan. |
GetHResult | Mengambil nilai HRESULT dari metode yang dipanggil. |