diff options
author | David Robillard <d@drobilla.net> | 2009-11-14 20:44:40 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2009-11-14 20:44:40 +0000 |
commit | 6ae2018e81e7e81e4906e62dc6224ad34298d9c2 (patch) | |
tree | 11286438977c4f975b5148dc93b5f4dfafabdbdc /src/shared/LV2URIMap.hpp | |
parent | cfec427867f42d7aa7bea6dfbb0736b5ce99e9e2 (diff) | |
download | ingen-6ae2018e81e7e81e4906e62dc6224ad34298d9c2.tar.gz ingen-6ae2018e81e7e81e4906e62dc6224ad34298d9c2.tar.bz2 ingen-6ae2018e81e7e81e4906e62dc6224ad34298d9c2.zip |
Object extension.
Port resize extension.
Sensible extension(s) implementation design for Ingen.
Replace string port extension support in Ingen with Object port extension.
Implement port resize extension in Ingen.
Some test plugins for this stuff.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2260 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/shared/LV2URIMap.hpp')
-rw-r--r-- | src/shared/LV2URIMap.hpp | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/src/shared/LV2URIMap.hpp b/src/shared/LV2URIMap.hpp index f1b9c919..0dd6b0cb 100644 --- a/src/shared/LV2URIMap.hpp +++ b/src/shared/LV2URIMap.hpp @@ -28,6 +28,7 @@ #include <boost/utility.hpp> #include "slv2/slv2.h" #include "uri-map.lv2/uri-map.h" +#include "LV2Features.hpp" namespace Ingen { namespace Shared { @@ -35,14 +36,15 @@ namespace Shared { /** Implementation of the LV2 URI Map extension */ -class LV2URIMap : public boost::noncopyable { +class LV2URIMap : public boost::noncopyable, public LV2Features::Feature { public: LV2URIMap(); - LV2_Feature* feature() { return &uri_map_feature; } + SharedPtr<LV2_Feature> feature(Node*) { + return SharedPtr<LV2_Feature>(&uri_map_feature, NullDeleter<LV2_Feature>); + } - uint32_t uri_to_id(const char* map, - const char* uri); + uint32_t uri_to_id(const char* map, const char* uri); private: typedef std::map<std::string, uint32_t> URIMap; @@ -55,6 +57,16 @@ private: LV2_URI_Map_Feature uri_map_feature_data; URIMap uri_map; uint32_t next_uri_id; + +public: + const uint32_t object_class_bool; + const uint32_t object_class_string; + const uint32_t object_class_int32; + const uint32_t object_class_float32; + const uint32_t ui_format_events; + const uint32_t midi_event; + const uint32_t string_transfer; + const uint32_t object_transfer; }; |