#ifndef __Smooth_H #define __Smooth_H #include class Smooth : public LV2Plugin<3> { public: Smooth(double rate); void activate(); void run(uint32_t num_samples); static constexpr const char * URI = "https://www.airwindows.com/smooth"; private: /* * These are the original DSP functions from the VST plugin. * They need to be called from the LV2 plugins `run` function. */ void processReplacing(float **in, float **out, VstInt32 samples); void processDoubleReplacing(double **in, double **out, VstInt32 samples); /* * Members needed by the processing functions. */ uint32_t fpd; //default stuff double lastSampleAL; double gainAL; double lastSampleBL; double gainBL; double lastSampleCL; double gainCL; double lastSampleDL; double gainDL; double lastSampleEL; double gainEL; double lastSampleAR; double gainAR; double lastSampleBR; double gainBR; double lastSampleCR; double gainCR; double lastSampleDR; double gainDR; double lastSampleER; double gainER; float A; float B; float C; }; #endif