From 20f116dc7055350f7eb1e9d1e898ad98baf3967a Mon Sep 17 00:00:00 2001 From: jsiegle <jsiegle@mit.edu> Date: Fri, 21 Mar 2014 23:00:59 -0400 Subject: [PATCH] Update ProcessorGraph::clearConnections() to prevent channel skipping bug --- Source/Processors/ProcessorGraph.cpp | 32 +++++++++++++++------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/Source/Processors/ProcessorGraph.cpp b/Source/Processors/ProcessorGraph.cpp index 93cd7fc33..5a0b59322 100644 --- a/Source/Processors/ProcessorGraph.cpp +++ b/Source/Processors/ProcessorGraph.cpp @@ -252,31 +252,33 @@ Array<GenericProcessor*> ProcessorGraph::getListOfProcessors() void ProcessorGraph::clearConnections() { - for (int i = 0; i < getNumConnections(); i++) - { - const Connection* connection = getConnection(i); - - if (connection->destNodeId == RESAMPLING_NODE_ID || - connection->destNodeId == OUTPUT_NODE_ID) - { - ; // leave it - } - else - { - removeConnection(i); - } - } - for (int i = 0; i < getNumNodes(); i++) { Node* node = getNode(i); if (node->nodeId != OUTPUT_NODE_ID) { + disconnectNode(node->nodeId); GenericProcessor* p =(GenericProcessor*) node->getProcessor(); p->resetConnections(); + } } + + // connect audio subnetwork + for (int n = 0; n < 2; n++) + { + + addConnection(AUDIO_NODE_ID, n, + RESAMPLING_NODE_ID, n); + + addConnection(RESAMPLING_NODE_ID, n, + OUTPUT_NODE_ID, n); + + } + + addConnection(AUDIO_NODE_ID, midiChannelIndex, + RESAMPLING_NODE_ID, midiChannelIndex); } -- GitLab