summaryrefslogtreecommitdiffstats
path: root/src/libs/engine/events/RequestMetadataEvent.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-08-17 04:05:30 +0000
committerDavid Robillard <d@drobilla.net>2008-08-17 04:05:30 +0000
commitfa067527fe00b66b85d71955e152e9ef9215c9cd (patch)
tree382a8e9e58259929415e7188992252ac1ca2ea9b /src/libs/engine/events/RequestMetadataEvent.cpp
parent3019b09099371b3fe568b7dcc3bb92203d800b1f (diff)
downloadingen-fa067527fe00b66b85d71955e152e9ef9215c9cd.tar.gz
ingen-fa067527fe00b66b85d71955e152e9ef9215c9cd.tar.bz2
ingen-fa067527fe00b66b85d71955e152e9ef9215c9cd.zip
Replace imperative polyphony/polyphonic stuff with properties (kill more API).
git-svn-id: http://svn.drobilla.net/lad/ingen@1412 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/engine/events/RequestMetadataEvent.cpp')
-rw-r--r--src/libs/engine/events/RequestMetadataEvent.cpp21
1 files changed, 15 insertions, 6 deletions
diff --git a/src/libs/engine/events/RequestMetadataEvent.cpp b/src/libs/engine/events/RequestMetadataEvent.cpp
index 23a3ac7b..733a6a82 100644
--- a/src/libs/engine/events/RequestMetadataEvent.cpp
+++ b/src/libs/engine/events/RequestMetadataEvent.cpp
@@ -28,11 +28,17 @@ using std::string;
namespace Ingen {
-RequestMetadataEvent::RequestMetadataEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& node_path, const string& key)
-: QueuedEvent(engine, responder, timestamp),
- _path(node_path),
- _key(key),
- _object(NULL)
+RequestMetadataEvent::RequestMetadataEvent(Engine& engine,
+ SharedPtr<Responder> responder,
+ SampleCount timestamp,
+ bool property,
+ const string& node_path,
+ const string& key)
+ : QueuedEvent(engine, responder, timestamp)
+ , _path(node_path)
+ , _property(property)
+ , _key(key)
+ , _object(NULL)
{
}
@@ -48,7 +54,10 @@ RequestMetadataEvent::pre_process()
}
}
- _value = _object->get_variable(_key);
+ if (_property)
+ _value = _object->get_property(_key);
+ else
+ _value = _object->get_variable(_key);
QueuedEvent::pre_process();
}