#ifndef __ADClip7_H #define __ADClip7_H #include #include class ADClip7 : protected LV2Plugin { public: ADClip7(double rate); void connect_port(uint32_t port, void * data); void run(uint32_t num_samples); static constexpr const char * URI = "https://www.airwindows.com/adclip-7"; 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); // Pointers to control ports const float * boost; const float * soften; const float * enhance; const float * mode; // Pointer to audio buffers const float * in[2]; float * out[2]; // Temp values used by the processing code float A; float B; float C; float D; // To keep state between runs long double fpNShapeL; long double fpNShapeR; //default stuff long double lastSampleL; long double lastSampleR; float bL[22200]; float bR[22200]; int gcount; double lowsL; double lowsR; double iirLowsAL; double iirLowsAR; double iirLowsBL; double iirLowsBR; long double refclipL; long double refclipR; }; #endif