aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/LV2/src/Logical4/Logical4.h
diff options
context:
space:
mode:
authorHarald Eilertsen <haraldei@anduin.net>2021-07-31 21:34:28 +0200
committerHarald Eilertsen <haraldei@anduin.net>2021-07-31 21:34:28 +0200
commit1bd34fa795d0eac15d0dc9d4c756f19fc6624872 (patch)
treefdb9bb2e5e20a0adb2953597beafd66aa7c924fc /plugins/LV2/src/Logical4/Logical4.h
parent94a6cc3d6c70883e08fd7be16e9405d44bfb94e5 (diff)
downloadairwindows-lv2-port-1bd34fa795d0eac15d0dc9d4c756f19fc6624872.tar.gz
airwindows-lv2-port-1bd34fa795d0eac15d0dc9d4c756f19fc6624872.tar.bz2
airwindows-lv2-port-1bd34fa795d0eac15d0dc9d4c756f19fc6624872.zip
LV2: Port another batch of plugins, EQ - SurgeTide
Some plugins won't compile for various reasons, these have been left out for now. One plugin failed autoporting, so that one's left out too. I have not tested these plugins yet, so no guarantees that they work, or that they work right. Please report any problems or if there's missing control info to the mailing list.
Diffstat (limited to 'plugins/LV2/src/Logical4/Logical4.h')
-rw-r--r--plugins/LV2/src/Logical4/Logical4.h126
1 files changed, 126 insertions, 0 deletions
diff --git a/plugins/LV2/src/Logical4/Logical4.h b/plugins/LV2/src/Logical4/Logical4.h
new file mode 100644
index 0000000..75ec58d
--- /dev/null
+++ b/plugins/LV2/src/Logical4/Logical4.h
@@ -0,0 +1,126 @@
+#ifndef __Logical4_H
+#define __Logical4_H
+
+#include <lv2plugin.h>
+
+class Logical4 : public LV2Plugin<5> {
+public:
+ Logical4(double rate);
+
+ void activate();
+ void run(uint32_t num_samples);
+
+ static constexpr const char * URI = "https://www.airwindows.com/logical4";
+
+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.
+ */
+
+ //begin ButterComp
+ double controlAposL;
+ double controlAnegL;
+ double controlBposL;
+ double controlBnegL;
+ double targetposL;
+ double targetnegL;
+ double controlAposBL;
+ double controlAnegBL;
+ double controlBposBL;
+ double controlBnegBL;
+ double targetposBL;
+ double targetnegBL;
+ double controlAposCL;
+ double controlAnegCL;
+ double controlBposCL;
+ double controlBnegCL;
+ double targetposCL;
+ double targetnegCL;
+ double avgAL;
+ double avgBL;
+ double avgCL;
+ double avgDL;
+ double avgEL;
+ double avgFL;
+ double nvgAL;
+ double nvgBL;
+ double nvgCL;
+ double nvgDL;
+ double nvgEL;
+ double nvgFL;
+ //end ButterComp
+
+ //begin Power Sag
+ double dL[1000];
+ double controlL;
+ double bL[1000];
+ double controlBL;
+ double cL[1000];
+ double controlCL;
+ //end Power Sag
+
+ //begin ButterComp
+ double controlAposR;
+ double controlAnegR;
+ double controlBposR;
+ double controlBnegR;
+ double targetposR;
+ double targetnegR;
+ double controlAposBR;
+ double controlAnegBR;
+ double controlBposBR;
+ double controlBnegBR;
+ double targetposBR;
+ double targetnegBR;
+ double controlAposCR;
+ double controlAnegCR;
+ double controlBposCR;
+ double controlBnegCR;
+ double targetposCR;
+ double targetnegCR;
+ double avgAR;
+ double avgBR;
+ double avgCR;
+ double avgDR;
+ double avgER;
+ double avgFR;
+ double nvgAR;
+ double nvgBR;
+ double nvgCR;
+ double nvgDR;
+ double nvgER;
+ double nvgFR;
+ //end ButterComp
+
+ //begin Power Sag
+ double dR[1000];
+ double controlR;
+ double bR[1000];
+ double controlBR;
+ double cR[1000];
+ double controlCR;
+ //end Power Sag
+
+ int gcount;
+
+
+ double fpNShapeL;
+ double fpNShapeR;
+ bool fpFlip;
+ //default stuff
+
+ float A;
+ float B;
+ float C;
+ float D;
+ float E;
+};
+
+#endif