From e05405acb35853bc3a760c3768a5548ab2cf8ad2 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Tue, 29 Mar 2011 21:07:36 +0000 Subject: [PATCH] Update for latest LV2 Persist extension. git-svn-id: svn://localhost/ardour2/branches/3.0@9240 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/ardour/lv2_plugin.h | 2 -- libs/ardour/lv2_plugin.cc | 10 +++------- libs/ardour/lv2ext/lv2_persist.h | 12 ++++-------- 3 files changed, 7 insertions(+), 17 deletions(-) diff --git a/libs/ardour/ardour/lv2_plugin.h b/libs/ardour/ardour/lv2_plugin.h index fff58464b3..b720c36146 100644 --- a/libs/ardour/ardour/lv2_plugin.h +++ b/libs/ardour/ardour/lv2_plugin.h @@ -150,7 +150,6 @@ class LV2Plugin : public ARDOUR::Plugin static uint32_t _midi_event_type; static int lv2_persist_store_callback (void* callback_data, - uint32_t subject, uint32_t key, const void* value, size_t size, @@ -158,7 +157,6 @@ class LV2Plugin : public ARDOUR::Plugin uint32_t flags); static const void* lv2_persist_retrieve_callback (void* callback_data, - uint32_t subject, uint32_t key, size_t* size, uint32_t* type, diff --git a/libs/ardour/lv2_plugin.cc b/libs/ardour/lv2_plugin.cc index bbcf6d8c38..359e1aa5f5 100644 --- a/libs/ardour/lv2_plugin.cc +++ b/libs/ardour/lv2_plugin.cc @@ -329,8 +329,7 @@ struct PersistState { return 0; } - int add_value(uint32_t file_subject, - uint32_t file_key, + int add_value(uint32_t file_key, const void* value, size_t size, uint32_t file_type, @@ -362,7 +361,6 @@ struct PersistState { int LV2Plugin::lv2_persist_store_callback(void* callback_data, - uint32_t subject, uint32_t key, const void* value, size_t size, @@ -375,12 +373,11 @@ LV2Plugin::lv2_persist_store_callback(void* callback_data, PersistState* state = (PersistState*)callback_data; state->add_uri(key, _uri_map.id_to_uri(NULL, key)); state->add_uri(type, _uri_map.id_to_uri(NULL, type)); - return state->add_value(subject, key, value, size, type, flags); + return state->add_value(key, value, size, type, flags); } const void* LV2Plugin::lv2_persist_retrieve_callback(void* callback_data, - uint32_t subject, uint32_t key, size_t* size, uint32_t* type, @@ -653,8 +650,7 @@ LV2Plugin::set_state(const XMLNode& node, int version) printf("READ VAL %u = %s (size: %u type: %u)\n", body->predicate, body->object, body->object_size, body->object_type); - state.add_value(body->subject, - body->predicate, + state.add_value(body->predicate, body->object, body->object_size, body->object_type, diff --git a/libs/ardour/lv2ext/lv2_persist.h b/libs/ardour/lv2ext/lv2_persist.h index f225709b65..6879a865ba 100644 --- a/libs/ardour/lv2ext/lv2_persist.h +++ b/libs/ardour/lv2ext/lv2_persist.h @@ -1,6 +1,6 @@ /* - Copyright (C) 2010-2011 David Robillard - Copyright (C) 2010 Leonard Ritter + Copyright 2010-2011 David Robillard + Copyright 2010 Leonard Ritter This header is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published @@ -68,9 +68,8 @@ typedef enum { } LV2_Persist_Flags; /** - A host-provided function to store a property. + A host-provided function to store a plugin instance property. @param callback_data Must be the callback_data passed to LV2_Persist.save(). - @param subject The subject of this property (URI), or 0 for plugin instance. @param key The key (predicate) to store @a value under (URI mapped integer). @param value Pointer to the value (object) to be stored. @param size The size of the data at @a value in bytes. @@ -82,7 +81,7 @@ typedef enum { is called repeatedly by the plugin within LV2_Persist.save() to store all the statements that describe its current state. - The host MAY fail to store a statement if the type is not understood and is + The host MAY fail to store a property if the type is not understood and is not LV2_PERSIST_IS_POD and/or LV2_PERSIST_IS_PORTABLE. Implementations are encouraged to use POD and portable values (e.g. string literals) wherever possible, and use common types (e.g. types from @@ -97,7 +96,6 @@ typedef enum { */ typedef int (*LV2_Persist_Store_Function)( void* callback_data, - uint32_t subject, uint32_t key, const void* value, size_t size, @@ -107,7 +105,6 @@ typedef int (*LV2_Persist_Store_Function)( /** A host-provided function to retrieve a property. @param callback_data Must be the callback_data passed to LV2_Persist.restore(). - @param subject The subject of the property (URI), or 0 for plugin instance. @param key The key (predicate) of the property to retrieve (URI). @param size (Output) If non-NULL, set to the size of the restored value. @param type (Output) If non-NULL, set to the type of the restored value. @@ -129,7 +126,6 @@ typedef int (*LV2_Persist_Store_Function)( */ typedef const void* (*LV2_Persist_Retrieve_Function)( void* callback_data, - uint32_t subject, uint32_t key, size_t* size, uint32_t* type, -- 2.30.2