cAudio
2.3.0
3d Audio Engine
cAudio
Headers
cFilter.h
1
// Copyright (c) 2008-2011 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones, Murat (wolfmanfx) Sari
2
// This file is part of the "cAudio Engine"
3
// For conditions of distribution and use, see copyright notice in cAudio.h
4
5
#pragma once
6
7
#include "cAudioDefines.h"
8
9
#if CAUDIO_EFX_ENABLED == 1
10
11
#include "IFilter.h"
12
#include "cMutex.h"
13
#include "cEFXFunctions.h"
14
#include "cMemoryOverride.h"
15
16
#include <al.h>
17
#include <alc.h>
18
19
namespace
cAudio
20
{
21
class
cFilter :
public
IFilter,
public
cMemoryOverride
22
{
23
public
:
24
cFilter(cEFXFunctions* oALFunctions);
25
~cFilter();
26
27
virtual
const
FilterTypes& getType()
const
;
28
virtual
void
setType(
const
FilterTypes& type);
29
30
virtual
float
getVolume()
const
;
31
virtual
void
setVolume(
const
float
& volume);
32
33
virtual
float
getLowFrequencyVolume()
const
;
34
virtual
void
setLowFrequencyVolume(
const
float
& volumeLF);
35
36
virtual
float
getHighFrequencyVolume()
const
;
37
virtual
void
setHighFrequencyVolume(
const
float
& volumeHF);
38
39
virtual
unsigned
int
getLastUpdated()
const
;
40
virtual
bool
isValid()
const
;
41
42
ALuint getOpenALFilter()
const
;
43
44
protected
:
45
cEFXFunctions* EFX;
46
47
//Mutex for thread syncronization
48
cAudioMutex Mutex;
49
50
FilterTypes Type;
51
float
Volume;
52
float
LowFreqVolume;
53
float
HighFreqVolume;
54
unsigned
int
LastUpdated;
55
56
bool
Valid;
57
58
ALuint Filter;
59
60
bool
UpdateFilter();
61
bool
CheckError();
62
ALenum ConvertFilterEnum(FilterTypes type);
63
};
64
};
65
66
#endif
cAudio
Main namespace for the entire cAudio library.
Definition:
cAudioCapture.h:15
Generated on Tue Jan 28 2020 00:00:00 for cAudio by
1.8.17