18#include "DistrhoPluginPingPongPan.hpp"
22static const float k2PI = 6.283185307f;
28DistrhoPluginPingPongPan::DistrhoPluginPingPongPan()
41void DistrhoPluginPingPongPan::initParameter(
uint32_t index, Parameter& parameter)
46 parameter.hints = kParameterIsAutomatable;
47 parameter.name =
"Frequency";
48 parameter.symbol =
"freq";
49 parameter.ranges.def = 50.0f;
50 parameter.ranges.min = 0.0f;
51 parameter.ranges.max = 100.0f;
55 parameter.hints = kParameterIsAutomatable;
56 parameter.name =
"Width";
57 parameter.symbol =
"width";
59 parameter.ranges.def = 75.0f;
60 parameter.ranges.min = 0.0f;
61 parameter.ranges.max = 100.0f;
66void DistrhoPluginPingPongPan::initProgramName(
uint32_t index,
String& programName)
71 programName =
"Default";
77float DistrhoPluginPingPongPan::getParameterValue(
uint32_t index)
const
90void DistrhoPluginPingPongPan::setParameterValue(
uint32_t index,
float value)
107void DistrhoPluginPingPongPan::loadProgram(
uint32_t index)
123void DistrhoPluginPingPongPan::activate()
128void DistrhoPluginPingPongPan::deactivate()
133void DistrhoPluginPingPongPan::run(
const float** inputs,
float** outputs,
uint32_t frames)
135 const float* in1 = inputs[0];
136 const float* in2 = inputs[1];
137 float* out1 = outputs[0];
138 float* out2 = outputs[1];
142 pan = std::fmin(std::fmax(std::sin(wavePos) * (fWidth/100.0f), -1.0f), 1.0f);
144 if ((wavePos += waveSpeed) >=
k2PI)
147 out1[
i] = in1[
i] * (pan > 0.0f ? 1.0f-pan : 1.0f);
148 out2[
i] = in2[
i] * (pan < 0.0f ? 1.0f+pan : 1.0f);
156 return new DistrhoPluginPingPongPan();
#define END_NAMESPACE_DISTRHO
Definition DistrhoDefines.h:191
#define START_NAMESPACE_DISTRHO
Definition DistrhoDefines.h:190
Plugin * createPlugin()
Definition DistrhoPluginPingPongPan.cpp:154
static const float k2PI
Definition DistrhoPluginPingPongPan.cpp:22
static void deactivate(LV2_Handle instance)
Definition bindings_test_plugin.c:128
register unsigned i
Definition inflate.c:1575
static PuglViewHint int value
Definition pugl.h:1708
virtual ASIOError getSampleRate(ASIOSampleRate *sampleRate)=0
unsigned int uint32_t
Definition mid.cpp:100