#ifndef __AtmosphereBuss_H #define __AtmosphereBuss_H #include class AtmosphereBuss : public LV2Plugin<1> { public: AtmosphereBuss(double rate); void run(uint32_t num_samples); static constexpr const char * URI = "https://www.airwindows.com/atmospherebuss"; 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 gainchase; double settingchase; double chasespeed; long double fpNShapeL; long double lastSampleAL; long double lastSampleBL; long double lastSampleCL; long double lastSampleDL; long double lastSampleEL; long double lastSampleFL; long double lastSampleGL; long double lastSampleHL; long double lastSampleIL; long double lastSampleJL; long double lastSampleKL; long double lastSampleLL; long double lastSampleML; long double fpNShapeR; long double lastSampleAR; long double lastSampleBR; long double lastSampleCR; long double lastSampleDR; long double lastSampleER; long double lastSampleFR; long double lastSampleGR; long double lastSampleHR; long double lastSampleIR; long double lastSampleJR; long double lastSampleKR; long double lastSampleLR; long double lastSampleMR; long double thresholdA; long double thresholdB; long double thresholdC; long double thresholdD; long double thresholdE; long double thresholdF; long double thresholdG; long double thresholdH; long double thresholdI; long double thresholdJ; long double thresholdK; long double thresholdL; long double thresholdM; float A; }; #endif