source: trunk/src/dsound/OS2DSOUND.H@ 1036

Last change on this file since 1036 was 97, checked in by phaller, 26 years ago

Add: added cvs variable $Id$ to source files.

File size: 3.4 KB
Line 
1/* $Id: OS2DSOUND.H,v 1.3 1999-06-10 17:09:29 phaller Exp $ */
2
3/*
4 * DirectSound main 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 __OS2DSOUND_H__
12#define __OS2DSOUND_H__
13
14/* KSO Apr 19 1999: Set correct interface. *
15 * (INTERFACE is used in the THIS and THIS_ macros) */
16#undef INTERFACE
17#define INTERFACE IDirectSound
18
19class OS2IDirectSound
20{
21 public:
22 //this one has to go first!
23 IDirectSoundVtbl *lpVtbl;
24 IDirectSoundVtbl Vtbl;
25
26 OS2IDirectSound(const GUID *lpGUID);
27 ~OS2IDirectSound();
28
29 int Referenced;
30 inline HRESULT GetLastError() { return lastError; };
31
32 private:
33
34 protected:
35 HRESULT lastError;
36
37 DWORD speakerConfig;
38 DWORD CoopLevel;
39 HWND hwndClient;
40
41 // Linked list management
42 OS2IDirectSound* next; // Next OS2IDirectSound
43 static OS2IDirectSound* dsound; // List of OS2IDirectSound
44
45 friend HRESULT __stdcall SoundQueryInterface(THIS, REFIID riid, LPVOID FAR * ppvObj);
46 friend ULONG __stdcall SoundAddRef(THIS);
47 friend ULONG __stdcall SoundRelease(THIS);
48 #if 0 //KSO Apr 13 1999: some parameter incompabilities between newer and older SDKs.
49 friend HRESULT __stdcall SoundCreateSoundBuffer(THIS_ LPDSBUFFERDESC, LPLPDIRECTSOUNDBUFFER, IUnknown FAR *);
50 #else
51 friend HRESULT __stdcall SoundCreateSoundBuffer(THIS_ LPCDSBUFFERDESC, LPDIRECTSOUNDBUFFER*,LPUNKNOWN);
52 #endif
53 friend HRESULT __stdcall SoundGetCaps(THIS_ LPDSCAPS );
54 friend HRESULT __stdcall SoundDuplicateSoundBuffer(THIS_ LPDIRECTSOUNDBUFFER, LPLPDIRECTSOUNDBUFFER );
55 friend HRESULT __stdcall SoundSetCooperativeLevel(THIS_ W32_HWND, DWORD );
56 friend HRESULT __stdcall SoundCompact(THIS );
57 friend HRESULT __stdcall SoundGetSpeakerConfig(THIS_ LPDWORD );
58 friend HRESULT __stdcall SoundSetSpeakerConfig(THIS_ DWORD );
59 #if 0 //KSO Apr 13 1999: parameter declaration has changed in later SDKs
60 friend HRESULT __stdcall SoundInitialize(THIS_ const GUID * );
61 #else
62 friend HRESULT __stdcall SoundInitialize(THIS_ LPGUID);
63 #endif
64};
65//******************************************************************************
66//******************************************************************************
67HRESULT __stdcall SoundQueryInterface(THIS, REFIID riid, LPVOID FAR * ppvObj);
68ULONG __stdcall SoundAddRef(THIS);
69ULONG __stdcall SoundRelease(THIS);
70#if 0 //KSO Apr 13 1999: some parameter incompabilities between newer and older SDKs.
71 HRESULT __stdcall SoundCreateSoundBuffer(THIS_ LPDSBUFFERDESC, LPLPDIRECTSOUNDBUFFER, IUnknown FAR *);
72#else
73 HRESULT __stdcall SoundCreateSoundBuffer(THIS_ LPCDSBUFFERDESC, LPDIRECTSOUNDBUFFER*,LPUNKNOWN);
74#endif
75HRESULT __stdcall SoundGetCaps(THIS_ LPDSCAPS );
76HRESULT __stdcall SoundDuplicateSoundBuffer(THIS_ LPDIRECTSOUNDBUFFER, LPLPDIRECTSOUNDBUFFER );
77HRESULT __stdcall SoundSetCooperativeLevel(THIS_ W32_HWND, DWORD );
78HRESULT __stdcall SoundCompact(THIS );
79HRESULT __stdcall SoundGetSpeakerConfig(THIS_ LPDWORD );
80HRESULT __stdcall SoundSetSpeakerConfig(THIS_ DWORD );
81#if 0 //KSO Apr 13 1999: parameter declaration has changed in later SDKs
82 HRESULT __stdcall SoundInitialize(THIS_ const GUID * );
83#else
84 HRESULT __stdcall SoundInitialize(THIS_ LPGUID);
85#endif
86
87#endif
Note: See TracBrowser for help on using the repository browser.