|
|
@@ -26,6 +26,7 @@ USE_NAMESPACE_DISTRHO; |
|
|
|
|
|
|
|
struct HostCV : TerminalModule { |
|
|
|
CardinalPluginContext* const pcontext; |
|
|
|
bool bypassed = false; |
|
|
|
int dataFrame = 0; |
|
|
|
uint32_t lastProcessCounter = 0; |
|
|
|
|
|
|
@@ -70,6 +71,7 @@ struct HostCV : TerminalModule { |
|
|
|
// only checked on input |
|
|
|
if (lastProcessCounter != processCounter) |
|
|
|
{ |
|
|
|
bypassed = isBypassed(); |
|
|
|
dataFrame = 0; |
|
|
|
lastProcessCounter = processCounter; |
|
|
|
} |
|
|
@@ -78,7 +80,7 @@ struct HostCV : TerminalModule { |
|
|
|
const uint32_t k = dataFrame; |
|
|
|
DISTRHO_SAFE_ASSERT_RETURN(k < bufferSize,); |
|
|
|
|
|
|
|
if (isBypassed()) |
|
|
|
if (bypassed) |
|
|
|
{ |
|
|
|
for (int i=0; i<10; ++i) |
|
|
|
outputs[i].setVoltage(0.0f); |
|
|
@@ -100,7 +102,7 @@ struct HostCV : TerminalModule { |
|
|
|
|
|
|
|
void processTerminalOutput(const ProcessArgs&) override |
|
|
|
{ |
|
|
|
if (pcontext->variant != kCardinalVariantMain) |
|
|
|
if (pcontext->variant != kCardinalVariantMain || pcontext->bypassed) |
|
|
|
return; |
|
|
|
|
|
|
|
const uint32_t bufferSize = pcontext->bufferSize; |
|
|
@@ -109,7 +111,7 @@ struct HostCV : TerminalModule { |
|
|
|
const uint32_t k = dataFrame++; |
|
|
|
DISTRHO_SAFE_ASSERT_RETURN(k < bufferSize,); |
|
|
|
|
|
|
|
if (isBypassed()) |
|
|
|
if (bypassed) |
|
|
|
return; |
|
|
|
|
|
|
|
float** const dataOuts = pcontext->dataOuts; |
|
|
|