Main Page | Namespaces | Classes | Compounds | Files | Compound Members | Related softsynth.h00001 // 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 00008 00009 // Visual C++ compiler warnings: 255 char limit on var names..... 00010 #pragma warning(disable: 4786) 00011 00012 #ifndef __softSynth__ 00013 #define __softSynth__ 00014 00015 #include <string.h> 00016 00017 #ifndef __AudioEffectX__ 00018 #include "audioeffectx.h" 00019 #endif 00020 00021 #include "Modules.h" 00022 #include "Synth.h" 00023 00024 using namespace SynthCore; 00025 00026 00028 class softSynth : public AudioEffectX 00029 { 00030 00031 public: 00032 softSynth(audioMasterCallback audioMaster); 00033 ~softSynth(); 00034 00035 virtual void process(float **inputs, float **outputs, long sampleframes); 00036 virtual void processReplacing(float **inputs, float **outputs, long sampleframes); 00037 virtual long processEvents(VstEvents* events); 00038 00039 // Since we dont use the VST standard way of saving/loading these 00040 // are implemented as dummy functions. 00041 00042 virtual void getProgramName(char *name); 00043 00044 00045 virtual void setSampleRate(float sampleRate); 00046 virtual void setBlockSize(long blockSize); 00047 virtual void resume(); 00048 00049 virtual bool getOutputProperties (long index, VstPinProperties* properties); 00050 00051 virtual bool getEffectName (char* name); 00052 virtual bool getVendorString (char* text); 00053 virtual bool getProductString (char* text); 00054 virtual long getVendorVersion () {return 1;} 00055 00056 virtual long canDo (char* text); 00057 00058 Synth * mySynth; 00059 private: 00060 void initProcess(); 00061 long currentDelta; 00062 00063 }; 00064 00065 #endif Docs made by Doxygen. Email: Mikael Christensen |