blob: e489585fc2df624b37dff393792ca123a5392e00 (
plain) (
tree)
|
|
#ifndef __Energy_H
#define __Energy_H
#include <lv2plugin.h>
class Energy : public LV2Plugin<9> {
public:
Energy(double rate);
void activate();
void run(uint32_t num_samples);
static constexpr const char * URI = "https://www.airwindows.com/energy";
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 duoEvenL;
double duoOddL;
double duoFactorL;
bool flip;
double tripletAL;
double tripletBL;
double tripletCL;
double tripletFactorL;
int countA;
double quadAL;
double quadBL;
double quadCL;
double quadDL;
double quadFactorL;
int countB;
double quintAL;
double quintBL;
double quintCL;
double quintDL;
double quintEL;
double quintFactorL;
int countC;
double sextAL;
double sextBL;
double sextCL;
double sextDL;
double sextEL;
double sextFL;
double sextFactorL;
int countD;
double septAL;
double septBL;
double septCL;
double septDL;
double septEL;
double septFL;
double septGL;
double septFactorL;
int countE;
double octAL;
double octBL;
double octCL;
double octDL;
double octEL;
double octFL;
double octGL;
double octHL;
double octFactorL;
int countF;
double nintAL;
double nintBL;
double nintCL;
double nintDL;
double nintEL;
double nintFL;
double nintGL;
double nintHL;
double nintIL;
double nintFactorL;
int countG;
double PrevHL;
double PrevGL;
double PrevFL;
double PrevEL;
double PrevDL;
double PrevCL;
double PrevBL;
double PrevAL;
double duoEvenR;
double duoOddR;
double duoFactorR;
double tripletAR;
double tripletBR;
double tripletCR;
double tripletFactorR;
double quadAR;
double quadBR;
double quadCR;
double quadDR;
double quadFactorR;
double quintAR;
double quintBR;
double quintCR;
double quintDR;
double quintER;
double quintFactorR;
double sextAR;
double sextBR;
double sextCR;
double sextDR;
double sextER;
double sextFR;
double sextFactorR;
double septAR;
double septBR;
double septCR;
double septDR;
double septER;
double septFR;
double septGR;
double septFactorR;
double octAR;
double octBR;
double octCR;
double octDR;
double octER;
double octFR;
double octGR;
double octHR;
double octFactorR;
double nintAR;
double nintBR;
double nintCR;
double nintDR;
double nintER;
double nintFR;
double nintGR;
double nintHR;
double nintIR;
double nintFactorR;
double PrevHR;
double PrevGR;
double PrevFR;
double PrevER;
double PrevDR;
double PrevCR;
double PrevBR;
double PrevAR;
float A;
float B;
float C;
float D;
float E;
float F;
float G;
float H;
float I;
};
#endif
|