summaryrefslogtreecommitdiffstats
path: root/src/server
diff options
context:
space:
mode:
Diffstat (limited to 'src/server')
-rw-r--r--src/server/PatchImpl.cpp17
-rw-r--r--src/server/PatchImpl.hpp19
2 files changed, 17 insertions, 19 deletions
diff --git a/src/server/PatchImpl.cpp b/src/server/PatchImpl.cpp
index de1fe43f..95bb2132 100644
--- a/src/server/PatchImpl.cpp
+++ b/src/server/PatchImpl.cpp
@@ -424,6 +424,23 @@ PatchImpl::build_ports_array() const
return result;
}
+static inline void
+compile_recursive(NodeImpl* n, CompiledPatch* output)
+{
+ if (n == NULL || n->traversed())
+ return;
+
+ n->traversed(true);
+ assert(output != NULL);
+
+ for (std::list<NodeImpl*>::iterator i = n->providers().begin();
+ i != n->providers().end(); ++i)
+ if (!(*i)->traversed())
+ compile_recursive(*i, output);
+
+ output->push_back(CompiledNode(n, n->providers().size(), n->dependants()));
+}
+
/** Find the process order for this Patch.
*
* The process order is a flat list that the patch will execute in order
diff --git a/src/server/PatchImpl.hpp b/src/server/PatchImpl.hpp
index c3791712..0a8d5547 100644
--- a/src/server/PatchImpl.hpp
+++ b/src/server/PatchImpl.hpp
@@ -158,7 +158,6 @@ public:
Engine& engine() { return _engine; }
private:
- inline void compile_recursive(NodeImpl* n, CompiledPatch* output) const;
void process_parallel(ProcessContext& context);
void process_single(ProcessContext& context);
@@ -173,24 +172,6 @@ private:
bool _process;
};
-/** Private helper for compile */
-inline void
-PatchImpl::compile_recursive(NodeImpl* n, CompiledPatch* output) const
-{
- if (n == NULL || n->traversed())
- return;
-
- n->traversed(true);
- assert(output != NULL);
-
- for (std::list<NodeImpl*>::iterator i = n->providers().begin();
- i != n->providers().end(); ++i)
- if (!(*i)->traversed())
- compile_recursive(*i, output);
-
- output->push_back(CompiledNode(n, n->providers().size(), n->dependants()));
-}
-
} // namespace Server
} // namespace Ingen