summaryrefslogtreecommitdiffstats
path: root/game/code/sound/soundfx/win32reverbcontroller.h
blob: 055ae8409ab52f1af234c25b84c266d819c4840b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
//=============================================================================
// Copyright (C) 2002 Radical Entertainment Ltd.  All rights reserved.
//
// File:        win32reverbcontroller.h
//
// Description: Declaration for the Win32ReverbController class, which provides
//              the Windows-specific reverb control
//
// History:     03/25/2003 + Created -- Ziemek
//
//=============================================================================

#ifndef WIN32REVERBCONTROLLER_H
#define WIN32REVERBCONTROLLER_H

//========================================
// Nested Includes
//========================================
#include <sound/soundfx/reverbcontroller.h>

//========================================
// Forward References
//========================================
struct IRadSoundHalEffectEAX2Reverb;

//=============================================================================
//
// Synopsis:    Win32ReverbController
//
//=============================================================================

class Win32ReverbController : public ReverbController
{
public:
    Win32ReverbController();
    virtual ~Win32ReverbController();

    void SetReverbOn( reverbSettings* settings );
    void SetReverbOff();

private:
    //Prevent wasteful constructor creation.
    Win32ReverbController( const Win32ReverbController& original );
    Win32ReverbController& operator=( const Win32ReverbController& rhs );

    //
    // Radsound's Win32 reverb interface
    //
    IRadSoundHalEffectEAX2Reverb* m_reverbInterface;
};


#endif // WIN32REVERBCONTROLLER_H