From 0f9c8151d5b42b243a499bb31a1e1f0b2e8c5f6f Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 8 Feb 2015 07:02:59 +0000 Subject: Server-side copy paste with LV2 state support. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5541 a436a847-0d15-0410-975c-d299462d15a1 --- src/server/events/Get.hpp | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src/server/events/Get.hpp') diff --git a/src/server/events/Get.hpp b/src/server/events/Get.hpp index 7aea8c77..e0ed3483 100644 --- a/src/server/events/Get.hpp +++ b/src/server/events/Get.hpp @@ -17,6 +17,8 @@ #ifndef INGEN_EVENTS_GET_HPP #define INGEN_EVENTS_GET_HPP +#include + #include "Event.hpp" #include "BlockFactory.hpp" #include "types.hpp" @@ -24,7 +26,10 @@ namespace Ingen { namespace Server { +class BlockImpl; +class GraphImpl; class PluginImpl; +class PortImpl; namespace Events { @@ -45,7 +50,6 @@ public: void execute(ProcessContext& context) {} void post_process(); -private: /** A sequence of puts and connects to respond to client with. * This is constructed in the pre_process() and later sent in * post_process() to avoid the need to lock. @@ -63,11 +67,17 @@ private: void put_port(const PortImpl* port); void put_block(const BlockImpl* block); void put_graph(const GraphImpl* graph); - + + void send(Interface* dest); + struct Put { Raul::URI uri; Resource::Properties properties; Resource::Graph ctx; + + inline bool operator<(const Put& other) { + return uri < other.uri; + } }; struct Connect { @@ -79,6 +89,7 @@ private: std::vector connects; }; +private: const Raul::URI _uri; const Node* _object; const PluginImpl* _plugin; -- cgit v1.2.1