summaryrefslogtreecommitdiffstats
path: root/src/libs/engine/Patch.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/engine/Patch.cpp')
-rw-r--r--src/libs/engine/Patch.cpp52
1 files changed, 26 insertions, 26 deletions
diff --git a/src/libs/engine/Patch.cpp b/src/libs/engine/Patch.cpp
index 83fcf3df..39348ce9 100644
--- a/src/libs/engine/Patch.cpp
+++ b/src/libs/engine/Patch.cpp
@@ -54,12 +54,12 @@ Patch::~Patch()
{
assert(!_activated);
- for (Raul::List<ConnectionImpl*>::iterator i = _connections.begin(); i != _connections.end(); ++i) {
- delete (*i);
+ for (List< SharedPtr<ConnectionImpl> >::iterator i = _connections.begin(); i != _connections.end(); ++i) {
+ (*i).reset();
delete _connections.erase(i);
}
- for (Raul::List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i) {
+ for (List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i) {
assert(!(*i)->activated());
delete (*i);
delete _nodes.erase(i);
@@ -74,7 +74,7 @@ Patch::activate()
{
NodeBase::activate();
- for (Raul::List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i)
+ for (List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i)
(*i)->activate();
assert(_activated);
@@ -88,7 +88,7 @@ Patch::deactivate()
NodeBase::deactivate();
- for (Raul::List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i) {
+ for (List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i) {
if ((*i)->activated())
(*i)->deactivate();
assert(!(*i)->activated());
@@ -103,7 +103,7 @@ Patch::disable()
{
_process = false;
- for (Raul::List<PortImpl*>::iterator i = _output_ports.begin(); i != _output_ports.end(); ++i)
+ for (List<PortImpl*>::iterator i = _output_ports.begin(); i != _output_ports.end(); ++i)
(*i)->clear_buffers();
}
@@ -113,10 +113,10 @@ Patch::prepare_internal_poly(uint32_t poly)
{
/* TODO: ports? internal/external poly? */
- for (Raul::List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i)
+ for (List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i)
(*i)->prepare_poly(poly);
- for (Raul::List<ConnectionImpl*>::iterator i = _connections.begin(); i != _connections.end(); ++i)
+ for (List< SharedPtr<ConnectionImpl> >::iterator i = _connections.begin(); i != _connections.end(); ++i)
(*i)->prepare_poly(poly);
/* FIXME: Deal with failure */
@@ -130,10 +130,10 @@ Patch::apply_internal_poly(Raul::Maid& maid, uint32_t poly)
{
/* TODO: ports? internal/external poly? */
- for (Raul::List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i)
+ for (List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i)
(*i)->apply_poly(maid, poly);
- for (Raul::List<ConnectionImpl*>::iterator i = _connections.begin(); i != _connections.end(); ++i)
+ for (List< SharedPtr<ConnectionImpl> >::iterator i = _connections.begin(); i != _connections.end(); ++i)
(*i)->apply_poly(maid, poly);
_internal_poly = poly;
@@ -248,7 +248,7 @@ Patch::set_buffer_size(size_t size)
NodeBase::set_buffer_size(size);
assert(_buffer_size == size);
- for (Raul::List<NodeImpl*>::iterator j = _nodes.begin(); j != _nodes.end(); ++j)
+ for (List<NodeImpl*>::iterator j = _nodes.begin(); j != _nodes.end(); ++j)
(*j)->set_buffer_size(size);
}
@@ -257,7 +257,7 @@ Patch::set_buffer_size(size_t size)
void
-Patch::add_node(Raul::ListNode<NodeImpl*>* ln)
+Patch::add_node(List<NodeImpl*>::Node* ln)
{
assert(ln != NULL);
assert(ln->elem() != NULL);
@@ -271,10 +271,10 @@ Patch::add_node(Raul::ListNode<NodeImpl*>* ln)
/** Remove a node.
* Realtime Safe. Preprocessing thread.
*/
-Raul::ListNode<NodeImpl*>*
+Patch::Nodes::Node*
Patch::remove_node(const string& name)
{
- for (Raul::List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i)
+ for (List<NodeImpl*>::iterator i = _nodes.begin(); i != _nodes.end(); ++i)
if ((*i)->name() == name)
return _nodes.erase(i);
@@ -284,12 +284,12 @@ Patch::remove_node(const string& name)
/** Remove a connection. Realtime safe.
*/
-Raul::ListNode<ConnectionImpl*>*
+Patch::Connections::Node*
Patch::remove_connection(const PortImpl* src_port, const PortImpl* dst_port)
{
bool found = false;
- Raul::ListNode<ConnectionImpl*>* connection = NULL;
- for (Raul::List<ConnectionImpl*>::iterator i = _connections.begin(); i != _connections.end(); ++i) {
+ Connections::Node* connection = NULL;
+ for (Connections::iterator i = _connections.begin(); i != _connections.end(); ++i) {
if ((*i)->src_port() == src_port && (*i)->dst_port() == dst_port) {
connection = _connections.erase(i);
found = true;
@@ -338,14 +338,14 @@ Patch::create_port(const string& name, DataType type, size_t buffer_size, bool i
*
* Realtime safe. Preprocessing thread only.
*/
-Raul::ListNode<PortImpl*>*
+List<PortImpl*>::Node*
Patch::remove_port(const string& name)
{
assert(ThreadManager::current_thread_id() == THREAD_PRE_PROCESS);
bool found = false;
- Raul::ListNode<PortImpl*>* ret = NULL;
- for (Raul::List<PortImpl*>::iterator i = _input_ports.begin(); i != _input_ports.end(); ++i) {
+ List<PortImpl*>::Node* ret = NULL;
+ for (List<PortImpl*>::iterator i = _input_ports.begin(); i != _input_ports.end(); ++i) {
if ((*i)->name() == name) {
ret = _input_ports.erase(i);
found = true;
@@ -353,7 +353,7 @@ Patch::remove_port(const string& name)
}
if (!found)
- for (Raul::List<PortImpl*>::iterator i = _output_ports.begin(); i != _output_ports.end(); ++i) {
+ for (List<PortImpl*>::iterator i = _output_ports.begin(); i != _output_ports.end(); ++i) {
if ((*i)->name() == name) {
ret = _output_ports.erase(i);
found = true;
@@ -376,10 +376,10 @@ Patch::build_ports_array() const
size_t i = 0;
- for (Raul::List<PortImpl*>::const_iterator p = _input_ports.begin(); p != _input_ports.end(); ++p,++i)
+ for (List<PortImpl*>::const_iterator p = _input_ports.begin(); p != _input_ports.end(); ++p,++i)
result->at(i) = *p;
- for (Raul::List<PortImpl*>::const_iterator p = _output_ports.begin(); p != _output_ports.end(); ++p,++i)
+ for (List<PortImpl*>::const_iterator p = _output_ports.begin(); p != _output_ports.end(); ++p,++i)
result->at(i) = *p;
return result;
@@ -405,10 +405,10 @@ Patch::compile() const
CompiledPatch* const compiled_patch = new CompiledPatch();//_nodes.size());
- for (Raul::List<NodeImpl*>::const_iterator i = _nodes.begin(); i != _nodes.end(); ++i)
+ for (Nodes::const_iterator i = _nodes.begin(); i != _nodes.end(); ++i)
(*i)->traversed(false);
- for (Raul::List<NodeImpl*>::const_iterator i = _nodes.begin(); i != _nodes.end(); ++i) {
+ for (Nodes::const_iterator i = _nodes.begin(); i != _nodes.end(); ++i) {
NodeImpl* const node = (*i);
// Either a sink or connected to our output ports:
if ( ( ! node->traversed()) && node->dependants()->size() == 0)
@@ -416,7 +416,7 @@ Patch::compile() const
}
// Traverse any nodes we didn't hit yet
- for (Raul::List<NodeImpl*>::const_iterator i = _nodes.begin(); i != _nodes.end(); ++i) {
+ for (Nodes::const_iterator i = _nodes.begin(); i != _nodes.end(); ++i) {
NodeImpl* const node = (*i);
if ( ! node->traversed())
compile_recursive(node, compiled_patch);