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.

115 lines
2.5 KiB

  1. /*++
  2. Copyright (c) 1997-2000 Microsoft Corporation All Rights Reserved
  3. Module Name:
  4. Common.h
  5. Abstract:
  6. CAdapterCommon class declaration.
  7. --*/
  8. #ifndef _MSVAD_COMMON_H_
  9. #define _MSVAD_COMMON_H_
  10. //=============================================================================
  11. // Defines
  12. //=============================================================================
  13. DEFINE_GUID(IID_IAdapterCommon,
  14. 0x7eda2950, 0xbf9f, 0x11d0, 0x87, 0x1f, 0x0, 0xa0, 0xc9, 0x11, 0xb5, 0x44);
  15. //=============================================================================
  16. // Interfaces
  17. //=============================================================================
  18. ///////////////////////////////////////////////////////////////////////////////
  19. // IAdapterCommon
  20. //
  21. DECLARE_INTERFACE_(IAdapterCommon, IUnknown)
  22. {
  23. STDMETHOD_(NTSTATUS, Init)
  24. (
  25. THIS_
  26. IN PDEVICE_OBJECT DeviceObject
  27. ) PURE;
  28. STDMETHOD_(PDEVICE_OBJECT, GetDeviceObject)
  29. (
  30. THIS
  31. ) PURE;
  32. STDMETHOD_(VOID, SetWaveServiceGroup)
  33. (
  34. THIS_
  35. IN PSERVICEGROUP ServiceGroup
  36. ) PURE;
  37. STDMETHOD_(PUNKNOWN *, WavePortDriverDest)
  38. (
  39. THIS
  40. ) PURE;
  41. STDMETHOD_(BOOL, MixerMuteRead)
  42. (
  43. THIS_
  44. IN ULONG Index
  45. ) PURE;
  46. STDMETHOD_(VOID, MixerMuteWrite)
  47. (
  48. THIS_
  49. IN ULONG Index,
  50. IN BOOL Value
  51. );
  52. STDMETHOD_(ULONG, MixerMuxRead)
  53. (
  54. THIS
  55. );
  56. STDMETHOD_(VOID, MixerMuxWrite)
  57. (
  58. THIS_
  59. IN ULONG Index
  60. );
  61. STDMETHOD_(LONG, MixerVolumeRead)
  62. (
  63. THIS_
  64. IN ULONG Index,
  65. IN LONG Channel
  66. ) PURE;
  67. STDMETHOD_(VOID, MixerVolumeWrite)
  68. (
  69. THIS_
  70. IN ULONG Index,
  71. IN LONG Channel,
  72. IN LONG Value
  73. ) PURE;
  74. STDMETHOD_(VOID, MixerReset)
  75. (
  76. THIS
  77. ) PURE;
  78. };
  79. typedef IAdapterCommon *PADAPTERCOMMON;
  80. //=============================================================================
  81. // Function Prototypes
  82. //=============================================================================
  83. NTSTATUS
  84. NewAdapterCommon
  85. (
  86. OUT PUNKNOWN * Unknown,
  87. IN REFCLSID,
  88. IN PUNKNOWN UnknownOuter OPTIONAL,
  89. IN POOL_TYPE PoolType
  90. );
  91. #endif //_COMMON_H_