summaryrefslogtreecommitdiffstats
path: root/src/server/events/Delta.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/events/Delta.hpp')
-rw-r--r--src/server/events/Delta.hpp31
1 files changed, 19 insertions, 12 deletions
diff --git a/src/server/events/Delta.hpp b/src/server/events/Delta.hpp
index 24d58b99..47c4ab22 100644
--- a/src/server/events/Delta.hpp
+++ b/src/server/events/Delta.hpp
@@ -50,21 +50,20 @@ class SetPortValue;
class Delta : public Event
{
public:
- enum class Type {
- SET,
- PUT,
- PATCH
- };
-
Delta(Engine& engine,
SPtr<Interface> client,
- int32_t id,
SampleCount timestamp,
- Type type,
- Resource::Graph context,
- const Raul::URI& subject,
- const Properties& properties,
- const Properties& remove = Properties());
+ const Ingen::Put& msg);
+
+ Delta(Engine& engine,
+ SPtr<Interface> client,
+ SampleCount timestamp,
+ const Ingen::Delta& msg);
+
+ Delta(Engine& engine,
+ SPtr<Interface> client,
+ SampleCount timestamp,
+ const Ingen::SetProperty& msg);
~Delta();
@@ -81,6 +80,12 @@ public:
Execution get_execution() const;
private:
+ enum class Type {
+ SET,
+ PUT,
+ PATCH
+ };
+
enum class SpecialType {
NONE,
ENABLE,
@@ -95,6 +100,8 @@ private:
typedef std::vector<SetPortValue*> SetEvents;
+ void init();
+
Event* _create_event;
SetEvents _set_events;
std::vector<SpecialType> _types;