diff options
author | David Robillard <d@drobilla.net> | 2007-09-22 23:51:00 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-09-22 23:51:00 +0000 |
commit | c1160ffc8a5dfb38891b0faa6373c9eecdd8e4c9 (patch) | |
tree | 1baf40b7a90bc96c4b0832103ff0cdabdf1ed1a6 /src/libs/engine/events/SetPortValueQueuedEvent.hpp | |
parent | 4bd53e016b8bb912e48d77e756720516d876d5c2 (diff) | |
download | ingen-c1160ffc8a5dfb38891b0faa6373c9eecdd8e4c9.tar.gz ingen-c1160ffc8a5dfb38891b0faa6373c9eecdd8e4c9.tar.bz2 ingen-c1160ffc8a5dfb38891b0faa6373c9eecdd8e4c9.zip |
Type oblivious set_port_value interface.
git-svn-id: http://svn.drobilla.net/lad/ingen@765 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/engine/events/SetPortValueQueuedEvent.hpp')
-rw-r--r-- | src/libs/engine/events/SetPortValueQueuedEvent.hpp | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/src/libs/engine/events/SetPortValueQueuedEvent.hpp b/src/libs/engine/events/SetPortValueQueuedEvent.hpp index 43e3d0f8..b64cf903 100644 --- a/src/libs/engine/events/SetPortValueQueuedEvent.hpp +++ b/src/libs/engine/events/SetPortValueQueuedEvent.hpp @@ -35,19 +35,33 @@ class Port; class SetPortValueQueuedEvent : public QueuedEvent { public: - SetPortValueQueuedEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, const string& port_path, Sample val); - SetPortValueQueuedEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp, size_t voice_num, const string& port_path, Sample val); - + SetPortValueQueuedEvent(Engine& engine, + SharedPtr<Responder> responder, + SampleCount timestamp, + const string& port_path, + uint32_t data_size, + const void* data); + + SetPortValueQueuedEvent(Engine& engine, + SharedPtr<Responder> responder, + SampleCount timestamp, + uint32_t voice_num, + const string& port_path, + uint32_t data_size, + const void* data); + void pre_process(); void execute(SampleCount nframes, FrameTime start, FrameTime end); void post_process(); private: - enum ErrorType { NO_ERROR, PORT_NOT_FOUND, TYPE_MISMATCH }; + enum ErrorType { NO_ERROR, PORT_NOT_FOUND, NO_SPACE }; - int _voice_num; + bool _omni; + uint32_t _voice_num; string _port_path; - float _val; + uint32_t _data_size; + void* _data; Port* _port; ErrorType _error; }; |