#ifndef __IronOxideClassic_H #define __IronOxideClassic_H #include class IronOxideClassic : public LV2Plugin<3> { public: IronOxideClassic(double rate); void activate(); void run(uint32_t num_samples); static constexpr const char * URI = "https://www.airwindows.com/ironoxideclassic"; 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 iirSampleAL; double iirSampleBL; double dL[264]; double fastIIRAL; double fastIIRBL; double slowIIRAL; double slowIIRBL; double iirSampleAR; double iirSampleBR; double dR[264]; double fastIIRAR; double fastIIRBR; double slowIIRAR; double slowIIRBR; int gcount; bool fpFlip; long double fpNShapeL; long double fpNShapeR; //default stuff float A; float B; float C; }; #endif