Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

88 lines
1.7 KiB

  1. //**************************************************************************
  2. //
  3. // Copyright (C) Microsoft Corporation. All rights reserved.
  4. //
  5. // FileName: videoenc.h
  6. //
  7. //**************************************************************************
  8. //
  9. // Abstract: Kernel video encoder API proxy and property pages header
  10. //
  11. /*************************************************
  12. CVideoEncoderAPIProxy:
  13. This is the interface handler / proxy for the IVideoEncoder interface.
  14. *************************************************/
  15. class CVideoEncoderAPIProxy :
  16. public CBaseEncoderAPI,
  17. public IVideoEncoder
  18. {
  19. public:
  20. DECLARE_IUNKNOWN;
  21. DECLARE_IENCODERAPI_BASE;
  22. //
  23. // CreateInstance():
  24. //
  25. // Called back in order to create an instance of the encoder API
  26. // proxy plug-in.
  27. //
  28. static CUnknown * CALLBACK
  29. CreateInstance (
  30. IN LPUNKNOWN UnkOuter,
  31. OUT HRESULT *hr
  32. );
  33. //
  34. // CVideoEncoderAPIProxy():
  35. //
  36. // Construct a new video encoder API proxy instance.
  37. //
  38. CVideoEncoderAPIProxy (
  39. IN LPUNKNOWN UnkOuter,
  40. OUT HRESULT *hr
  41. );
  42. //
  43. // NonDelegatingQueryInterface():
  44. //
  45. // Non delegating QI
  46. //
  47. STDMETHODIMP
  48. NonDelegatingQueryInterface (
  49. IN REFIID riid,
  50. OUT PVOID *ppv
  51. );
  52. //
  53. // GetValue():
  54. //
  55. // Get the current value of a parameter.
  56. //
  57. STDMETHODIMP
  58. GetValue (
  59. IN const GUID *Api,
  60. OUT VARIANT *Value
  61. );
  62. //
  63. // SetValue():
  64. //
  65. // Set the current value of a parameter.
  66. //
  67. STDMETHODIMP
  68. SetValue (
  69. IN const GUID *Api,
  70. OUT VARIANT *Value
  71. );
  72. };