Leaked source code of windows server 2003
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.

96 lines
2.3 KiB

  1. //=================================================================
  2. //
  3. // WinmmApi.h
  4. //
  5. // Copyright (c) 1999-2001 Microsoft Corporation, All Rights Reserved
  6. //
  7. //=================================================================
  8. #ifndef _WinmmApi_H_
  9. #define _WinmmApi_H_
  10. #include <mmsystem.h>
  11. /******************************************************************************
  12. * #includes to Register this class with the CResourceManager.
  13. *****************************************************************************/
  14. extern const GUID g_guidWinmmApi;
  15. extern const TCHAR g_tstrWinmm[];
  16. /******************************************************************************
  17. * Function pointer typedefs. Add new functions here as required.
  18. *****************************************************************************/
  19. typedef UINT (WINAPI *PFN_Winmm_waveOutGetNumDevs )
  20. (
  21. void
  22. ) ;
  23. #ifdef UNICODE
  24. typedef MMRESULT (WINAPI *PFN_Winmm_waveOutGetDevCaps )
  25. (
  26. UINT_PTR uDeviceID,
  27. LPWAVEOUTCAPSW pwoc,
  28. UINT cbwoc
  29. );
  30. #else
  31. typedef MMRESULT (WINAPI *PFN_Winmm_waveOutGetDevCaps )
  32. (
  33. UINT_PTR uDeviceID,
  34. LPWAVEOUTCAPSA pwoc,
  35. UINT cbwoc
  36. );
  37. #endif
  38. /******************************************************************************
  39. * Wrapper class for Tapi load/unload, for registration with CResourceManager.
  40. *****************************************************************************/
  41. class CWinmmApi : public CDllWrapperBase
  42. {
  43. private:
  44. // Member variables (function pointers) pointing to Tapi functions.
  45. // Add new functions here as required.
  46. PFN_Winmm_waveOutGetNumDevs m_pfnwaveOutGetNumDevs ;
  47. PFN_Winmm_waveOutGetDevCaps m_pfnwaveOutGetDevCaps ;
  48. public:
  49. // Constructor and destructor:
  50. CWinmmApi(LPCTSTR a_tstrWrappedDllName);
  51. ~CWinmmApi();
  52. // Initialization function to check function pointers.
  53. virtual bool Init();
  54. // Member functions wrapping Tapi functions.
  55. // Add new functions here as required:
  56. UINT WinMMwaveOutGetNumDevs (
  57. void
  58. ) ;
  59. #ifdef UNICODE
  60. MMRESULT WinmmwaveOutGetDevCaps (
  61. UINT_PTR uDeviceID,
  62. LPWAVEOUTCAPSW pwoc,
  63. UINT cbwoc
  64. );
  65. #else
  66. MMRESULT WinmmwaveOutGetDevCaps (
  67. UINT_PTR uDeviceID,
  68. LPWAVEOUTCAPSA pwoc,
  69. UINT cbwoc
  70. );
  71. #endif
  72. };
  73. #endif