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.

54 lines
1.8 KiB

  1. /*==========================================================================
  2. *
  3. * Copyright (C) 1999 Microsoft Corporation. All Rights Reserved.
  4. *
  5. * File: aplayb.h
  6. * Content: Definition of the CAudioPlaybackBuffer class
  7. *
  8. * History:
  9. * Date By Reason
  10. * ==== == ======
  11. * 07/16/99 rodtoll Created
  12. * 08/03/99 rodtoll Modified to take DirectSound compatible volumes
  13. * 11/12/99 rodtoll Modified abstraction for new waveOut support.
  14. * Now abstracted types look almost like dsound objects
  15. * 01/27/2000 rodtoll Updated sound classes to accept playback flags,
  16. * buffer structures and DSBUFFERDESC instead of DSBUFFERDESC1
  17. *
  18. ***************************************************************************/
  19. #ifndef __AUDIOPLAYBACKBUFFER_H
  20. #define __AUDIOPLAYBACKBUFFER_H
  21. // Forward definition for the AudioPlaybackDevice include
  22. class CAudioPlaybackBuffer;
  23. // CAudioPlaybackBuffer
  24. //
  25. //
  26. class CAudioPlaybackBuffer
  27. {
  28. public:
  29. CAudioPlaybackBuffer( ) {} ;
  30. virtual ~CAudioPlaybackBuffer() {} ;
  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 SetVolume( LONG lVolume ) = 0;
  35. virtual HRESULT GetCurrentPosition( LPDWORD lpdwPosition ) = 0;
  36. virtual HRESULT SetCurrentPosition( DWORD dwPosition ) = 0;
  37. virtual HRESULT Play( DWORD dwPriority, DWORD dwFlags ) = 0;
  38. virtual HRESULT Stop() = 0;
  39. virtual HRESULT Restore() = 0;
  40. virtual DWORD GetStartupLatency() = 0;
  41. virtual HRESULT Get3DBuffer( LPDIRECTSOUND3DBUFFER *lplpds3dBuffer ) = 0;
  42. };
  43. #endif