home *** CD-ROM | disk | FTP | other *** search
/ Windows Game Programming for Dummies (2nd Edition) / WinGamProgFD.iso / pc / DirectX SDK / DXSDK / samples / Multimedia / DirectShow / Common / mfcdmoutil.h < prev    next >
Encoding:
C/C++ Source or Header  |  2001-10-08  |  2.0 KB  |  54 lines

  1. //------------------------------------------------------------------------------
  2. // File: MFCDMOUtil.h
  3. //
  4. // Desc: DirectShow sample code - Header for DMO utility functions 
  5. //       used by MFC applications.
  6. //
  7. // Copyright (c) 2000-2001 Microsoft Corporation.  All rights reserved.
  8. //------------------------------------------------------------------------------
  9.  
  10. //
  11. //  Global data structure for storing GUIDs and friendly strings
  12. //
  13. typedef struct _dmo_category_info
  14. {
  15.     const GUID *pclsid;
  16.     TCHAR szName[128];
  17.  
  18. } DMO_CATEGORY_INFO;
  19.  
  20.  
  21. // The DirectShow reference documentation lists a set of DMO categories
  22. // for which you can enumerate corresponding filters.  See 'Category GUIDs'
  23. // under 'DirectShow->DirectX Media Objects->DMO Reference' in the SDK docs.
  24. const DMO_CATEGORY_INFO dmo_categories[] = {
  25.     
  26.     &GUID_NULL,                  TEXT("All categories"),
  27.     &DMOCATEGORY_AUDIO_DECODER,  TEXT("Audio Decoder"),
  28.     &DMOCATEGORY_AUDIO_EFFECT,   TEXT("Audio Effect"),
  29.     &DMOCATEGORY_AUDIO_ENCODER,  TEXT("Audio Encoder"),
  30.     &DMOCATEGORY_VIDEO_DECODER,  TEXT("Video Decoder"),
  31.     &DMOCATEGORY_VIDEO_EFFECT,   TEXT("Video Effect"),
  32.     &DMOCATEGORY_VIDEO_ENCODER,  TEXT("Video Encoder"),
  33.     &DMOCATEGORY_AUDIO_CAPTURE_EFFECT, TEXT("Audio Capture Effect"),
  34. };
  35.  
  36. //
  37. // Constants
  38. //
  39. #define NUM_CATEGORIES  (sizeof(dmo_categories) / sizeof(DMO_CATEGORY_INFO))
  40. #define STR_CLASSES     TEXT("DMO Categories")
  41. #define STR_FILTERS     TEXT("Registered DMOs")
  42. #define STR_UNKNOWN     TEXT("<?>")
  43. #define STR_NOTDMO      TEXT("---")
  44.  
  45. //
  46. // Function prototypes
  47. //
  48. HRESULT EnumDMOsToList(IEnumDMO *pEnumCat, CListBox& ListFilters, int& nFilters);
  49. HRESULT AddDMOsToList(const GUID *clsid, CListBox& ListFilters, BOOL bIncludeKeyed);
  50.  
  51. void DisplayDMOTypeInfo(const GUID *pCLSID, 
  52.                         ULONG& ulNumInputsSupplied,  CListBox& ListInputTypes,
  53.                         ULONG& ulNumOutputsSupplied, CListBox& ListOutputTypes);
  54.