System Device Enumerator
August 16, 2008
ایک اور سوال جو کہ tanvonYahoo Group میں آیا ھے۔
“DirectShow کے Filters کو کس طرح device categories میں enumerate کیا جاتا ھے۔“
اس کے دو طریقے ہیں، Filter Mapper اور System Device Enumerator ۔
یہاں میں System Device Enumerator کو پیش کروں گا۔ System Device Enumerator ایک COM object ھے، جو کہ ICreateDevEnum interface کو implement کرتا ھے۔ یہ interface expose کرتی ھے CreateClassEnumerator() method. یہ وھ method ھے جو کہ enumerator کو بناتا ھے، اور ہمیں IEnumMoniker interface دیتا ھے۔ لیکن یھ کس کو enumerate کرتا ھے۔ CreateClassEnumerator کا پہلا parameter ایک CLSID ھے device category کا، اور یھ Device categories موجود ھیں Dshow.h میں جیسا کہ CLSID_LegacyAmFilterCategory وغیرہ۔
اب جبکہ ھمارے پاس IEnumMoniker interface ھے ھم اس کے method IEnumMoniker::Next کو call کر سکتے ھیں اور یھ IMoniker interface دے گا، اس سے ھم اس filter کا “Friendly Name” حاصل کر سکتے ھیں یا پھر اس filterکو instanciateکر سکتے ھیں۔
http://msdn.microsoft.com/en-us/library/ms787871(VS.85).aspx
August 16, 2008 at 6:24 pm
[...] For the URDU version see http://directshow.wordpress.com/2008/08/16/system-device-enumerator/ [...]