diff options
author | David Robillard <d@drobilla.net> | 2008-11-16 05:34:01 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2008-11-16 05:34:01 +0000 |
commit | 0fd3c583e032a3cd5af877902d4561a45179a232 (patch) | |
tree | e6bc62875842fda0908f1aea3a51b67740825d71 /src/client/ThreadedSigClientInterface.cpp | |
parent | 24d998447070dbfef3eaf7762dce7e97c3903801 (diff) | |
download | ingen-0fd3c583e032a3cd5af877902d4561a45179a232.tar.gz ingen-0fd3c583e032a3cd5af877902d4561a45179a232.tar.bz2 ingen-0fd3c583e032a3cd5af877902d4561a45179a232.zip |
Follow new object creation via HTTP (serialising/parsing RDF to communicate between client and engine).
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@1722 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/client/ThreadedSigClientInterface.cpp')
-rw-r--r-- | src/client/ThreadedSigClientInterface.cpp | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/src/client/ThreadedSigClientInterface.cpp b/src/client/ThreadedSigClientInterface.cpp index ef95133b..b430a0a0 100644 --- a/src/client/ThreadedSigClientInterface.cpp +++ b/src/client/ThreadedSigClientInterface.cpp @@ -15,8 +15,11 @@ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "ThreadedSigClientInterface.hpp" #include <iostream> +#include "common/interface/Patch.hpp" +#include "common/interface/Plugin.hpp" +#include "common/interface/Port.hpp" +#include "ThreadedSigClientInterface.hpp" using namespace std; @@ -74,5 +77,29 @@ ThreadedSigClientInterface::emit_signals() } +void +ThreadedSigClientInterface::new_object(const Shared::GraphObject* object) +{ + using namespace Shared; + const Patch* patch = dynamic_cast<const Patch*>(object); + if (patch) { + new_patch(patch->path(), patch->internal_polyphony()); + return; + } + + const Node* node = dynamic_cast<const Node*>(object); + if (node) { + new_node(node->path(), node->plugin()->uri()); + return; + } + + const Port* port = dynamic_cast<const Port*>(object); + if (port) { + new_port(port->path(), port->type().uri(), port->index(), !port->is_input()); + return; + } +} + + } // namespace Client } // namespace Ingen |