#ifndef __TapeDither_H #define __TapeDither_H #include class TapeDither : public LV2Plugin<0> { public: TapeDither(double rate); void activate(); void run(uint32_t num_samples); static constexpr const char * URI = "https://www.airwindows.com/tapedither"; 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. */ double previousDither1L; double previousDither2L; double previousDither3L; double previousDither4L; double previousDither1R; double previousDither2R; double previousDither3R; double previousDither4R; }; #endif