logo
Main Page | Namespaces | Classes | Compounds | Files | Compound Members | Related

waveshaper.h

00001 //
00002 //  SYNTOPIA. See http://Syntopia.sourceforge.net for details and documentation.        
00003 //
00004 //      Author of this file: Mikael Hvidtfeldt Christensen (mikaelc@users.sourceforge.net)
00005 //
00006 
00007 #pragma warning(disable: 4786)
00008 
00009 #ifndef __waveshaper__
00010 #define __waveshaper__
00011 
00012 #include "Modules.h"
00013 #include "input.h"
00014 #include "output.h"
00015 #include "sndutils.h"
00016 #include <string>
00017 
00018 namespace SynthCore {
00019 
00021 
00034 class WaveShaper : public Module {
00035 
00036 public: // -------------------------------------------------------------
00037 
00038         virtual std::string getName() {return "WaveShaper";}
00039         
00041         Output * Output1;
00043         Input * Input1;
00044 
00046         static Module * newInstance(SynthVoice * S1) ;
00047 
00048 
00051         virtual Module * sharedClone() ;
00052 
00054         WaveShaper(SynthVoice * S1) ; 
00055         
00057         ~WaveShaper() {
00058                 delete Output1;
00059                 delete Input1;
00060         };
00061 
00063         void update() ;
00064 
00066         void setAmount(float amount);
00067 
00068         std::string getXML(int indent); 
00069 
00071         void loadXML(XMLNode * n, bool firstPass);
00072 
00073 private: // -------------------------------------------------------------
00074 
00075         float temp;
00076         float k;
00077         long MyStep;
00078         float temp2;
00079 
00080 };
00081 
00082 }; // end of namespace: SynthCore
00083 
00084 
00085 #endif

Syntopia Project. Visit the web page, or the SourceForge page.
Docs made by Doxygen. Email: Mikael Christensen