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.

102 lines
2.9 KiB

  1. //==========================================================================;
  2. //
  3. // Devseq.h : types for device sequences
  4. // Copyright (c) Microsoft Corporation 1999.
  5. //
  6. /////////////////////////////////////////////////////////////////////////////
  7. #pragma once
  8. #ifndef DEVSEQ_H
  9. #define DEVSEQ_H
  10. #include <w32extend.h>
  11. #include <fwdseq.h>
  12. #include <tuner.h>
  13. #include <msvidctl.h>
  14. namespace BDATuningModel {};
  15. namespace MSVideoControl {
  16. using namespace BDATuningModel;
  17. typedef CComQIPtr<IMSVidDevice, &__uuidof(IMSVidDevice)> PQDevice;
  18. typedef CComQIPtr<IMSVidInputDevice, &__uuidof(IMSVidInputDevice)> PQInputDevice;
  19. typedef CComQIPtr<IMSVidOutputDevice, &__uuidof(IMSVidOutputDevice)> PQOutputDevice;
  20. typedef CComQIPtr<IMSVidVideoRenderer, &__uuidof(IMSVidVideoRenderer)> PQVideoRenderer;
  21. typedef CComQIPtr<IMSVidAudioRenderer, &__uuidof(IMSVidAudioRenderer)> PQAudioRenderer;
  22. typedef CComQIPtr<IMSVidFeature, &__uuidof(IMSVidFeature)> PQFeature;
  23. #if 0
  24. typedef CComQIPtr<IMSVidDevices, &__uuidof(IMSVidDevices)> PQDevices;
  25. #endif
  26. typedef CComQIPtr<IMSVidInputDevices, &__uuidof(IMSVidInputDevices)> PQInputDevices;
  27. typedef CComQIPtr<IMSVidOutputDevices, &__uuidof(IMSVidOutputDevices)> PQOutputDevices;
  28. typedef CComQIPtr<IMSVidVideoRendererDevices, &__uuidof(IMSVidVideoRendererDevices)> PQVideoRendererDevices;
  29. typedef CComQIPtr<IMSVidAudioRendererDevices, &__uuidof(IMSVidAudioRendererDevices)> PQAudioRendererDevices;
  30. typedef CComQIPtr<IMSVidFeatures, &__uuidof(IMSVidFeatures)> PQFeatures;
  31. typedef std::vector<PQDevice, PQDevice::stl_allocator> DeviceCollection;
  32. // REV2: since IMSVidXXXXXDevices is an ole collection rather than a com enumerator
  33. // we could do a real random access container for it. but, since all we need to do here
  34. // is enumerate it, we won't bother to do that work, at least for now.
  35. #if 0
  36. typedef Forward_Sequence<
  37. PQDevices,
  38. PQEnumVARIANT,
  39. CComVariant,
  40. IMSVidDevices ,
  41. IEnumVARIANT,
  42. VARIANT,
  43. std::allocator<VARIANT> > VWDevices;
  44. #endif
  45. typedef Forward_Sequence<
  46. PQInputDevices,
  47. PQEnumVARIANT,
  48. CComVariant,
  49. IMSVidInputDevices ,
  50. IEnumVARIANT,
  51. VARIANT,
  52. std::allocator<VARIANT> > VWInputDevices;
  53. typedef Forward_Sequence<
  54. PQOutputDevices,
  55. PQEnumVARIANT,
  56. CComVariant,
  57. IMSVidOutputDevices ,
  58. IEnumVARIANT,
  59. VARIANT,
  60. std::allocator<VARIANT> > VWOutputDevices;
  61. typedef Forward_Sequence<
  62. PQVideoRendererDevices,
  63. PQEnumVARIANT,
  64. CComVariant,
  65. IMSVidVideoRendererDevices ,
  66. IEnumVARIANT,
  67. VARIANT,
  68. std::allocator<VARIANT> > VWVideoRendererDevices;
  69. typedef Forward_Sequence<
  70. PQAudioRendererDevices,
  71. PQEnumVARIANT,
  72. CComVariant,
  73. IMSVidAudioRendererDevices ,
  74. IEnumVARIANT,
  75. VARIANT,
  76. std::allocator<VARIANT> > VWAudioRendererDevices;
  77. typedef Forward_Sequence<
  78. PQFeatures,
  79. PQEnumVARIANT,
  80. CComVariant,
  81. IMSVidFeatures ,
  82. IEnumVARIANT,
  83. VARIANT,
  84. std::allocator<VARIANT> > VWFeatures;
  85. #endif
  86. }; // namespace
  87. // end of file devseq.h