From 239825b92b1d4c79ebd67cb3766355bf8e699bc7 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Mon, 19 May 2008 23:52:44 +0000 Subject: Better global (engine/client) LV2 feature sharing. Provide URI map extension to plugin UIs. git-svn-id: http://svn.drobilla.net/lad/ingen@1217 a436a847-0d15-0410-975c-d299462d15a1 --- src/libs/engine/LV2Info.hpp | 25 ++++++++----------------- 1 file changed, 8 insertions(+), 17 deletions(-) (limited to 'src/libs/engine/LV2Info.hpp') diff --git a/src/libs/engine/LV2Info.hpp b/src/libs/engine/LV2Info.hpp index 09865784..1fff0b92 100644 --- a/src/libs/engine/LV2Info.hpp +++ b/src/libs/engine/LV2Info.hpp @@ -27,18 +27,19 @@ #include #include #include "module/global.hpp" +#include "module/World.hpp" +#include "shared/LV2URIMap.hpp" #include "lv2/uri_map/lv2_uri_map.h" #include "lv2/event/lv2_event.h" - namespace Ingen { /** Stuff that may need to be passed to an LV2 plugin (i.e. LV2 features). */ -class LV2Info { +class LV2Info : public Shared::LV2URIMap { public: - LV2Info(SLV2World world); + LV2Info(Ingen::Shared::World* world); ~LV2Info(); SLV2Value input_class; @@ -47,23 +48,13 @@ public: SLV2Value audio_class; SLV2Value event_class; - LV2_Feature uri_map_feature; - LV2_URI_Map_Feature uri_map_feature_data; - LV2_Feature event_feature; - LV2_Event_Feature event_feature_data; - - typedef std::map URIMap; - URIMap uri_map; - uint32_t next_uri_id; - - static uint32_t uri_map_uri_to_id(LV2_URI_Map_Callback_Data callback_data, - const char* map, - const char* uri); - static uint32_t event_ref(LV2_Event_Callback_Data callback_data, LV2_Event* event); - LV2_Feature** lv2_features; + LV2_Feature** lv2_features() const { return _world->lv2_features->lv2_features(); } + +private: + Ingen::Shared::World* _world; }; -- cgit v1.2.1