#ifndef __Pop_H #define __Pop_H #include class Pop : public LV2Plugin<3> { public: Pop(double rate); void activate(); void run(uint32_t num_samples); static constexpr const char * URI = "https://www.airwindows.com/pop"; 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. */ long double fpNShapeL; long double fpNShapeR; //default stuff double muVaryL; double muAttackL; double muNewSpeedL; double muSpeedAL; double muSpeedBL; double muCoefficientAL; double muCoefficientBL; long double thickenL; long double previousL; long double previous2L; long double previous3L; long double previous4L; long double previous5L; double dL[10001]; double muVaryR; double muAttackR; double muNewSpeedR; double muSpeedAR; double muSpeedBR; double muCoefficientAR; double muCoefficientBR; long double thickenR; long double previousR; long double previous2R; long double previous3R; long double previous4R; long double previous5R; double dR[10001]; int delay; bool flip; float A; float B; float C; }; #endif