diff options
author | David Robillard <d@drobilla.net> | 2007-12-05 23:45:51 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-12-05 23:45:51 +0000 |
commit | a96b70b1c92b7f2622ebeff9d34c92ba089997f1 (patch) | |
tree | 732a8c2b225f619394ef5bb3d4a4a27d682409db /src/engine/Node.cpp | |
parent | f673a148c7104b3aaee4b1332a3631ac15f5f769 (diff) | |
download | machina-a96b70b1c92b7f2622ebeff9d34c92ba089997f1.tar.gz machina-a96b70b1c92b7f2622ebeff9d34c92ba089997f1.tar.bz2 machina-a96b70b1c92b7f2622ebeff9d34c92ba089997f1.zip |
Working mutation operators.
git-svn-id: http://svn.drobilla.net/lad/machina@952 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/Node.cpp')
-rw-r--r-- | src/engine/Node.cpp | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/engine/Node.cpp b/src/engine/Node.cpp index fd784e5..0eca0e6 100644 --- a/src/engine/Node.cpp +++ b/src/engine/Node.cpp @@ -119,7 +119,7 @@ Node::exit(SharedPtr<Raul::MIDISink> sink, BeatTime time) void -Node::add_outgoing_edge(SharedPtr<Edge> edge) +Node::add_edge(SharedPtr<Edge> edge) { assert(edge->tail().lock().get() == this); @@ -128,11 +128,22 @@ Node::add_outgoing_edge(SharedPtr<Edge> edge) void -Node::remove_outgoing_edge(SharedPtr<Edge> edge) +Node::remove_edge(SharedPtr<Edge> edge) { _edges.erase(_edges.find(edge)); } + +bool +Node::connected_to(SharedPtr<Node> node) +{ + for (Edges::const_iterator i = _edges.begin(); i != _edges.end(); ++i) + if ((*i)->head() == node) + return true; + + return false; +} + void Node::remove_edges_to(SharedPtr<Node> node) |