From 5746bc99da18bfb228d38af0eb8a7464a40f5679 Mon Sep 17 00:00:00 2001 From: reuk Date: Fri, 12 Aug 2022 10:55:01 +0100 Subject: [PATCH] Graph: Add isAnInputTo overload --- .../processors/juce_AudioProcessorGraph.cpp | 12 +++++++++--- .../processors/juce_AudioProcessorGraph.h | 7 ++++++- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp b/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp index 4bfa1d76e5..0f7353378e 100644 --- a/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp +++ b/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp @@ -1443,9 +1443,14 @@ public: return connections.isConnected (srcID, destID); } - bool isAnInputTo (Node& src, Node& dst) const + bool isAnInputTo (const Node& src, const Node& dst) const { - return connections.isAnInputTo (src.nodeID, dst.nodeID); + return isAnInputTo (src.nodeID, dst.nodeID); + } + + bool isAnInputTo (NodeID src, NodeID dst) const + { + return connections.isAnInputTo (src, dst); } bool canConnect (const Connection& c) const @@ -1622,7 +1627,8 @@ bool AudioProcessorGraph::canConnect (const Connection& c) const bool AudioProcessorGraph::isConnected (const Connection& c) const noexcept { return pimpl->isConnected (c); } bool AudioProcessorGraph::isConnected (NodeID a, NodeID b) const noexcept { return pimpl->isConnected (a, b); } bool AudioProcessorGraph::isConnectionLegal (const Connection& c) const { return pimpl->isConnectionLegal (c); } -bool AudioProcessorGraph::isAnInputTo (Node& source, Node& destination) const noexcept { return pimpl->isAnInputTo (source, destination); } +bool AudioProcessorGraph::isAnInputTo (const Node& source, const Node& destination) const noexcept { return pimpl->isAnInputTo (source, destination); } +bool AudioProcessorGraph::isAnInputTo (NodeID source, NodeID destination) const noexcept { return pimpl->isAnInputTo (source, destination); } AudioProcessorGraph::Node::Ptr AudioProcessorGraph::addNode (std::unique_ptr newProcessor, NodeID nodeId, diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h b/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h index 077eff1ac6..8190d754d4 100644 --- a/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h +++ b/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h @@ -275,7 +275,12 @@ public: /** Does a recursive check to see if there's a direct or indirect series of connections between these two nodes. */ - bool isAnInputTo (Node& source, Node& destination) const noexcept; + bool isAnInputTo (const Node& source, const Node& destination) const noexcept; + + /** Does a recursive check to see if there's a direct or indirect series of connections + between these two nodes. + */ + bool isAnInputTo (NodeID source, NodeID destination) const noexcept; /** Returns true if it would be legal to connect the specified points. */ bool canConnect (const Connection&) const;