summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2011-03-28 23:54:08 +0000
committerDavid Robillard <d@drobilla.net>2011-03-28 23:54:08 +0000
commit2c0cd4d430f8766e224d04e1ebcc07a91b9eef92 (patch)
tree39b65528b96fca6ba1c68b73fdb22329e60c3cab /libs/ardour/ardour
parent8d86a71f0f25a0a6d73a203077d21bcd955b2bb7 (diff)
Implement most recent LV2 persist extension.
Plugin state data is saved to a simple RIFF-based binary file. Cross-endianness and non-POD data not yet implemented. git-svn-id: svn://localhost/ardour2/branches/3.0@9220 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r--libs/ardour/ardour/lv2_plugin.h22
1 files changed, 12 insertions, 10 deletions
diff --git a/libs/ardour/ardour/lv2_plugin.h b/libs/ardour/ardour/lv2_plugin.h
index a1791661bf..71d9bfa624 100644
--- a/libs/ardour/ardour/lv2_plugin.h
+++ b/libs/ardour/ardour/lv2_plugin.h
@@ -149,16 +149,18 @@ class LV2Plugin : public ARDOUR::Plugin
static URIMap _uri_map;
static uint32_t _midi_event_type;
- static void lv2_persist_store_callback (void* callback_data,
- const char* key,
- const void* value,
- size_t size,
- uint32_t type);
-
- static const void* lv2_persist_retrieve_callback (void* callback_data,
- const char* key,
- size_t* size,
- uint32_t* type);
+ static int lv2_persist_store_callback (void* callback_data,
+ uint32_t key,
+ const void* value,
+ size_t size,
+ uint32_t type,
+ bool pod);
+
+ static const void* lv2_persist_retrieve_callback (void* callback_data,
+ uint32_t key,
+ size_t* size,
+ uint32_t* type,
+ bool* pod);
void init (LV2World& world, SLV2Plugin plugin, framecnt_t rate);
void run (pframes_t nsamples);