source: trunk/src/dsound/OS2SNDBUFFER.H@ 1569

Last change on this file since 1569 was 1421, checked in by sandervl, 26 years ago

Fixed compilation for all files

File size: 4.0 KB
Line 
1/* $Id: OS2SNDBUFFER.H,v 1.4 1999-10-23 23:00:50 sandervl Exp $ */
2
3/*
4 * DirectSound SoundBuffer class
5 *
6 * Copyright 1998 Sander van Leeuwen (sandervl@xs4all.nl)
7 *
8 * Project Odin Software License can be found in LICENSE.TXT
9 *
10 */
11#ifndef __OS2SNDBUFFER_H__
12#define __OS2SNDBUFFER_H__
13
14#include <mmsystem.h>
15
16#undef THIS
17#define THIS VOID*This
18
19#undef THIS_
20#define THIS_ VOID*This,
21
22class OS2IDirectSoundBuffer
23{
24 public:
25 //this one has to go first!
26 IDirectSoundBufferVtbl *lpVtbl;
27 IDirectSoundBufferVtbl Vtbl;
28
29 OS2IDirectSoundBuffer(const DSBUFFERDESC *lpDSBufferDesc);//KSO Apr 13 1999: const, SDK changes
30 ~OS2IDirectSoundBuffer();
31
32 int Referenced;
33 inline HRESULT GetLastError() { return lastError; };
34
35 private:
36
37 protected:
38 HRESULT lastError;
39
40 LONG pan;
41 ULONG writepos, playpos;
42 ULONG frequency;
43 WAVEFORMATEX *lpfxFormat;
44 ULONG status;
45 ULONG fLocked;
46 LONG volume;
47 DSBUFFERDESC bufferdesc;
48 char *lpBuffer;
49
50 // Linked list management
51 OS2IDirectSoundBuffer* next; // Next OS2IDirectSound
52 static OS2IDirectSoundBuffer* dsound; // List of OS2IDirectSound
53
54 friend HRESULT __stdcall SoundBufQueryInterface(THIS, REFIID riid, LPVOID * ppvObj);
55 friend ULONG __stdcall SoundBufAddRef(THIS);
56 friend ULONG __stdcall SoundBufRelease(THIS);
57 friend HRESULT __stdcall SoundBufGetCaps(THIS_ LPDSBCAPS );
58 friend HRESULT __stdcall SoundBufGetCurrentPosition(THIS_ LPDWORD,LPDWORD ) ;
59 friend HRESULT __stdcall SoundBufGetFormat(THIS_ LPWAVEFORMATEX, DWORD, LPDWORD ) ;
60 friend HRESULT __stdcall SoundBufGetVolume(THIS_ LPLONG ) ;
61 friend HRESULT __stdcall SoundBufGetPan(THIS_ LPLONG ) ;
62 friend HRESULT __stdcall SoundBufGetFrequency(THIS_ LPDWORD ) ;
63 friend HRESULT __stdcall SoundBufGetStatus(THIS_ LPDWORD ) ;
64 friend HRESULT __stdcall SoundBufInitialize(THIS_ LPDIRECTSOUND, LPDSBUFFERDESC ) ;
65 friend HRESULT __stdcall SoundBufLock(THIS_ DWORD,DWORD,LPVOID,LPDWORD,LPVOID,LPDWORD,DWORD ) ;
66 friend HRESULT __stdcall SoundBufPlay(THIS_ DWORD,DWORD,DWORD ) ;
67 friend HRESULT __stdcall SoundBufSetCurrentPosition(THIS_ DWORD ) ;
68 friend HRESULT __stdcall SoundBufSetFormat(THIS_ LPWAVEFORMATEX ) ;
69 friend HRESULT __stdcall SoundBufSetVolume(THIS_ LONG ) ;
70 friend HRESULT __stdcall SoundBufSetPan(THIS_ LONG ) ;
71 friend HRESULT __stdcall SoundBufSetFrequency(THIS_ DWORD ) ;
72 friend HRESULT __stdcall SoundBufStop(THIS ) ;
73 friend HRESULT __stdcall SoundBufUnlock(THIS_ LPVOID,DWORD,LPVOID,DWORD ) ;
74 friend HRESULT __stdcall SoundBufRestore(THIS ) ;
75};
76//******************************************************************************
77//******************************************************************************
78HRESULT __stdcall SoundBufQueryInterface(THIS, REFIID riid, LPVOID * ppvObj);
79ULONG __stdcall SoundBufAddRef(THIS);
80ULONG __stdcall SoundBufRelease(THIS);
81HRESULT __stdcall SoundBufGetCaps(THIS_ LPDSBCAPS );
82HRESULT __stdcall SoundBufGetCurrentPosition(THIS_ LPDWORD,LPDWORD ) ;
83HRESULT __stdcall SoundBufGetFormat(THIS_ LPWAVEFORMATEX, DWORD, LPDWORD ) ;
84HRESULT __stdcall SoundBufGetVolume(THIS_ LPLONG ) ;
85HRESULT __stdcall SoundBufGetPan(THIS_ LPLONG ) ;
86HRESULT __stdcall SoundBufGetFrequency(THIS_ LPDWORD ) ;
87HRESULT __stdcall SoundBufGetStatus(THIS_ LPDWORD ) ;
88HRESULT __stdcall SoundBufInitialize(THIS_ LPDIRECTSOUND, LPDSBUFFERDESC ) ;
89HRESULT __stdcall SoundBufLock(THIS_ DWORD,DWORD,LPVOID,LPDWORD,LPVOID,LPDWORD,DWORD ) ;
90HRESULT __stdcall SoundBufPlay(THIS_ DWORD,DWORD,DWORD ) ;
91HRESULT __stdcall SoundBufSetCurrentPosition(THIS_ DWORD ) ;
92HRESULT __stdcall SoundBufSetFormat(THIS_ LPWAVEFORMATEX ) ;
93HRESULT __stdcall SoundBufSetVolume(THIS_ LONG ) ;
94HRESULT __stdcall SoundBufSetPan(THIS_ LONG ) ;
95HRESULT __stdcall SoundBufSetFrequency(THIS_ DWORD ) ;
96HRESULT __stdcall SoundBufStop(THIS ) ;
97HRESULT __stdcall SoundBufUnlock(THIS_ LPVOID,DWORD,LPVOID,DWORD ) ;
98HRESULT __stdcall SoundBufRestore(THIS ) ;
99
100#endif
Note: See TracBrowser for help on using the repository browser.