IAudioEffects.h

00001 // Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
00002 // This file is part of the "cAudio Engine"
00003 // For conditions of distribution and use, see copyright notice in cAudio.h
00004 
00005 #ifndef IAUDIOEFFECTS_H
00006 #define IAUDIOEFFECTS_H
00007 
00008 #include "IEffect.h"
00009 #include "IFilter.h"
00010 #include "cAudioDefines.h"
00011 
00012 #ifdef CAUDIO_EFX_ENABLED
00013 
00014 namespace cAudio
00015 {
00017     class IAudioEffects
00018     {
00019     public:
00020                 IAudioEffects() {}
00021         virtual ~IAudioEffects() {}
00022                 
00024 
00025                 virtual IEffect* createEffect() = 0;
00026                 
00028 
00029                 virtual IFilter* createFilter() = 0;
00030 
00032                 virtual unsigned int getMaxEffectsSupported() const = 0;
00033 
00035 
00038                 virtual bool isEffectSupported(const EffectTypes& type) const = 0;
00039                 
00041 
00044                 virtual bool isFilterSupported(const FilterTypes& type) const = 0;
00045 
00047 
00051                 virtual bool addEAXReverbEffectPreset(const char* name, const sEAXReverbParameters& setting) = 0;
00052                 
00054 
00058                 virtual bool addReverbEffectPreset(const char* name, const sReverbParameters& setting) = 0;
00059                 
00061 
00065                 virtual bool addChorusEffectPreset(const char* name, const sChorusParameters& setting) = 0;
00066                 
00068 
00072                 virtual bool addDistortionEffectPreset(const char* name, const sDistortionParameters& setting) = 0;
00073                 
00075 
00079                 virtual bool addEchoEffectPreset(const char* name, const sEchoParameters& setting) = 0;
00080                 
00082 
00086                 virtual bool addFlangerEffectPreset(const char* name, const sFlangerParameters& setting) = 0;
00087                 
00089 
00093                 virtual bool addFrequencyShiftEffectPreset(const char* name, const sFrequencyShiftParameters& setting) = 0;
00094                 
00096 
00100                 virtual bool addVocalMorpherEffectPreset(const char* name, const sVocalMorpherParameters& setting) = 0;
00101                 
00103 
00107                 virtual bool addPitchShifterEffectPreset(const char* name, const sPitchShifterParameters& setting) = 0;
00108                 
00110 
00114                 virtual bool addRingModulatorEffectPreset(const char* name, const sRingModulatorParameters& setting) = 0;
00115                 
00117 
00121                 virtual bool addAutowahEffectPreset(const char* name, const sAutowahParameters& setting) = 0;
00122                 
00124 
00128                 virtual bool addCompressorEffectPreset(const char* name, const sCompressorParameters& setting) = 0;
00129                 
00131 
00135                 virtual bool addEqualizerEffectPreset(const char* name, const sEqualizerParameters& setting) = 0;
00136 
00138 
00141                 virtual sEAXReverbParameters getEAXReverbEffectPreset(const char* name) = 0;
00142                 
00144 
00147                 virtual sReverbParameters getReverbEffectPreset(const char* name) = 0;
00148 
00150 
00153                 virtual sChorusParameters getChorusEffectPreset(const char* name) = 0;
00154 
00156 
00159                 virtual sDistortionParameters getDistortionEffectPreset(const char* name) = 0;
00160 
00162 
00165                 virtual sEchoParameters getEchoEffectPreset(const char* name) = 0;
00166 
00168 
00171                 virtual sFlangerParameters getFlangerEffectPreset(const char* name) = 0;
00172 
00174 
00177                 virtual sFrequencyShiftParameters getFrequencyShiftEffectPreset(const char* name) = 0;
00178                 
00180 
00183                 virtual sVocalMorpherParameters getVocalMorpherEffectPreset(const char* name) = 0;
00184 
00186 
00189                 virtual sPitchShifterParameters getPitchShifterEffectPreset(const char* name) = 0;
00190 
00192 
00195                 virtual sRingModulatorParameters getRingModulatorEffectPreset(const char* name) = 0;
00196 
00198 
00201                 virtual sAutowahParameters getAutowahEffectPreset(const char* name) = 0;
00202 
00204 
00207                 virtual sCompressorParameters getCompressorEffectPreset(const char* name) = 0;
00208 
00210 
00213                 virtual sEqualizerParameters getEqualizerEffectPreset(const char* name) = 0;
00214 
00216 
00219                 virtual void removeEffectPreset(const EffectTypes& type, const char* name) = 0;
00220 
00222 
00226                 virtual bool isEffectPresetRegistered(const EffectTypes& type, const char* name) = 0;
00227 
00229 
00231                 virtual void removeAllEffectPresets(const EffectTypes& type) = 0;
00232 
00233     protected:
00234     private:
00235     };
00236 };
00237 
00238 #endif
00239 
00240 #endif 
 All Classes Namespaces Functions Variables Enumerations

Generated on Sat Feb 20 22:55:07 2010 for cAudio by  doxygen 1.6.2