cAudio  2.3.0
3d Audio Engine
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 
13 namespace 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:15