cAudio 2.3.0
3d Audio Engine
Loading...
Searching...
No Matches
IAudioEffects.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 "IEffect.h"
8#include "IFilter.h"
9#include "cAudioDefines.h"
10
11#if CAUDIO_EFX_ENABLED == 1
12
13namespace cAudio
14{
16 class IAudioEffects
17 {
18 public:
19 IAudioEffects() {}
20 virtual ~IAudioEffects() {}
21
23
24 virtual IEffect* createEffect() = 0;
25
27
28 virtual IFilter* createFilter() = 0;
29
31 virtual unsigned int getMaxEffectsSupported() const = 0;
32
34
37 virtual bool isEffectSupported(const EffectTypes& type) const = 0;
38
40
43 virtual bool isFilterSupported(const FilterTypes& type) const = 0;
44
46
50 virtual bool addEAXReverbEffectPreset(const char* name, const sEAXReverbParameters& setting) = 0;
51
53
57 virtual bool addReverbEffectPreset(const char* name, const sReverbParameters& setting) = 0;
58
60
64 virtual bool addChorusEffectPreset(const char* name, const sChorusParameters& setting) = 0;
65
67
71 virtual bool addDistortionEffectPreset(const char* name, const sDistortionParameters& setting) = 0;
72
74
78 virtual bool addEchoEffectPreset(const char* name, const sEchoParameters& setting) = 0;
79
81
85 virtual bool addFlangerEffectPreset(const char* name, const sFlangerParameters& setting) = 0;
86
88
92 virtual bool addFrequencyShiftEffectPreset(const char* name, const sFrequencyShiftParameters& setting) = 0;
93
95
99 virtual bool addVocalMorpherEffectPreset(const char* name, const sVocalMorpherParameters& setting) = 0;
100
102
106 virtual bool addPitchShifterEffectPreset(const char* name, const sPitchShifterParameters& setting) = 0;
107
109
113 virtual bool addRingModulatorEffectPreset(const char* name, const sRingModulatorParameters& setting) = 0;
114
116
120 virtual bool addAutowahEffectPreset(const char* name, const sAutowahParameters& setting) = 0;
121
123
127 virtual bool addCompressorEffectPreset(const char* name, const sCompressorParameters& setting) = 0;
128
130
134 virtual bool addEqualizerEffectPreset(const char* name, const sEqualizerParameters& setting) = 0;
135
137
140 virtual sEAXReverbParameters getEAXReverbEffectPreset(const char* name) = 0;
141
143
146 virtual sReverbParameters getReverbEffectPreset(const char* name) = 0;
147
149
152 virtual sChorusParameters getChorusEffectPreset(const char* name) = 0;
153
155
158 virtual sDistortionParameters getDistortionEffectPreset(const char* name) = 0;
159
161
164 virtual sEchoParameters getEchoEffectPreset(const char* name) = 0;
165
167
170 virtual sFlangerParameters getFlangerEffectPreset(const char* name) = 0;
171
173
176 virtual sFrequencyShiftParameters getFrequencyShiftEffectPreset(const char* name) = 0;
177
179
182 virtual sVocalMorpherParameters getVocalMorpherEffectPreset(const char* name) = 0;
183
185
188 virtual sPitchShifterParameters getPitchShifterEffectPreset(const char* name) = 0;
189
191
194 virtual sRingModulatorParameters getRingModulatorEffectPreset(const char* name) = 0;
195
197
200 virtual sAutowahParameters getAutowahEffectPreset(const char* name) = 0;
201
203
206 virtual sCompressorParameters getCompressorEffectPreset(const char* name) = 0;
207
209
212 virtual sEqualizerParameters getEqualizerEffectPreset(const char* name) = 0;
213
215
218 virtual void removeEffectPreset(const EffectTypes& type, const char* name) = 0;
219
221
225 virtual bool isEffectPresetRegistered(const EffectTypes& type, const char* name) = 0;
226
228
230 virtual void removeAllEffectPresets(const EffectTypes& type) = 0;
231
232 protected:
233 private:
234 };
235};
236
237#endif
Main namespace for the entire cAudio library.
Definition: cAudioCapture.h:16