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.

56 lines
1.9 KiB

  1. /*==========================================================================
  2. *
  3. * Copyright (C) 1999 Microsoft Corporation. All Rights Reserved.
  4. *
  5. * File: arecb.h
  6. * Content: Definition of the CAudioRecordBuffer class
  7. *
  8. * History:
  9. * Date By Reason
  10. * ==== == ======
  11. * 11/04/99 rodtoll Created
  12. * 11/23/99 rodtoll Added SelectMicrophone call to the interface
  13. * 12/01/99 rodtoll Bug #115783 - Will always adjust volume of default device
  14. * Added new parameter to SelectMicrophone
  15. * 12/08/99 rodtoll Bug #121054 - DirectX 7.1 support.
  16. * Added lpfLostFocus param to GetCurrentPosition so upper
  17. * layers can detect lost focus.
  18. * 01/28/2000 rodtoll Bug #130465: Record Mute/Unmute must call YieldFocus() / ClaimFocus()
  19. *
  20. ***************************************************************************/
  21. #ifndef __AUDIORECORDBUFFER_H
  22. #define __AUDIORECORDBUFFER_H
  23. // CAudioRecordBuffer
  24. //
  25. //
  26. class CAudioRecordBuffer
  27. {
  28. public:
  29. CAudioRecordBuffer( ) {} ;
  30. virtual ~CAudioRecordBuffer() {} ;
  31. public: // Initialization
  32. virtual HRESULT Lock( DWORD dwWriteCursor, DWORD dwWriteBytes, LPVOID *lplpvBuffer1, LPDWORD lpdwSize1, LPVOID *lplpvBuffer2, LPDWORD lpdwSize2, DWORD dwFlags ) = 0;
  33. virtual HRESULT UnLock( LPVOID lpvBuffer1, DWORD dwSize1, LPVOID lpvBuffer2, DWORD dwSize2 ) = 0;
  34. virtual HRESULT GetVolume( LPLONG lplVolume ) = 0;
  35. virtual HRESULT SetVolume( LONG lVolume ) = 0;
  36. virtual HRESULT GetCurrentPosition( LPDWORD lpdwPosition, LPBOOL lpfLostFocus ) = 0;
  37. virtual HRESULT Record( BOOL fLooping ) = 0;
  38. virtual HRESULT Stop() = 0;
  39. virtual HRESULT SelectMicrophone( BOOL fSelect ) = 0;
  40. virtual LPWAVEFORMATEX GetRecordFormat() = 0;
  41. virtual DWORD GetStartupLatency() = 0;
  42. virtual HRESULT YieldFocus() = 0;
  43. virtual HRESULT ClaimFocus() = 0;
  44. };
  45. #endif