[3099] | 1 | /*
|
---|
| 2 | * DirectSound DirectSoundNotify class
|
---|
| 3 | *
|
---|
| 4 | * Copyright 2000 Michal Necasek
|
---|
| 5 | *
|
---|
| 6 | * Project Odin Software License can be found in LICENSE.TXT
|
---|
| 7 | *
|
---|
| 8 | */
|
---|
| 9 | #ifndef __OS2NOTIFY_H__
|
---|
| 10 | #define __OS2NOTIFY_H__
|
---|
| 11 |
|
---|
| 12 | #undef THIS
|
---|
| 13 | #define THIS VOID*This
|
---|
| 14 |
|
---|
| 15 | #undef THIS_
|
---|
| 16 | #define THIS_ VOID*This,
|
---|
| 17 |
|
---|
| 18 | class OS2IDirectSoundNotify
|
---|
| 19 | {
|
---|
| 20 | public:
|
---|
| 21 | //this one has to go first!
|
---|
| 22 | IDirectSoundNotifyVtbl *lpVtbl;
|
---|
| 23 | IDirectSoundNotifyVtbl Vtbl;
|
---|
| 24 |
|
---|
| 25 | OS2IDirectSoundNotify(OS2IDirectSoundBuffer *parentBuffer);
|
---|
| 26 | ~OS2IDirectSoundNotify();
|
---|
| 27 |
|
---|
| 28 | int Referenced;
|
---|
| 29 |
|
---|
| 30 | // helper functions to handle notify event signaling
|
---|
| 31 | void CheckPos(DWORD dwOldpos, DWORD dwNewpos);
|
---|
| 32 | void CheckStop();
|
---|
| 33 |
|
---|
| 34 | private:
|
---|
| 35 |
|
---|
| 36 | protected:
|
---|
| 37 | OS2IDirectSoundBuffer *lpSoundBuffer; // parent sound buffer
|
---|
| 38 | DWORD cPositions; // # of notification positions
|
---|
| 39 | LPDSBPOSITIONNOTIFY lpPositions; // notify positions and associated
|
---|
| 40 | // event object handles
|
---|
| 41 |
|
---|
| 42 | friend HRESULT __stdcall SoundNotifyQueryInterface(THIS, REFIID riid, LPVOID * ppvObj);
|
---|
| 43 | friend ULONG __stdcall SoundNotifyAddRef(THIS);
|
---|
| 44 | friend ULONG __stdcall SoundNotifyRelease(THIS);
|
---|
| 45 | friend HRESULT __stdcall SoundNotifySetNotificationPositions(THIS, DWORD cPositionNotifies, LPCDSBPOSITIONNOTIFY lpcPositionNotifies);
|
---|
| 46 | };
|
---|
| 47 |
|
---|
[21878] | 48 | HRESULT __stdcall SoundNotifyQueryInterface(THIS, REFIID riid, LPVOID * ppvObj);
|
---|
| 49 | ULONG __stdcall SoundNotifyAddRef(THIS);
|
---|
| 50 | ULONG __stdcall SoundNotifyRelease(THIS);
|
---|
| 51 | HRESULT __stdcall SoundNotifySetNotificationPositions(THIS, DWORD cPositionNotifies, LPCDSBPOSITIONNOTIFY lpcPositionNotifies);
|
---|
| 52 |
|
---|
[3099] | 53 | #endif
|
---|