diff options
Diffstat (limited to 'ingen')
-rw-r--r-- | ingen/LV2Features.hpp | 3 | ||||
-rw-r--r-- | ingen/URIMap.hpp | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/ingen/LV2Features.hpp b/ingen/LV2Features.hpp index 80339c84..214d62bb 100644 --- a/ingen/LV2Features.hpp +++ b/ingen/LV2Features.hpp @@ -40,6 +40,8 @@ public: public: virtual ~Feature() {} + virtual const char* uri() const = 0; + virtual SharedPtr<LV2_Feature> feature(World* world, Node* block) = 0; }; @@ -60,6 +62,7 @@ public: }; void add_feature(SharedPtr<Feature> feature); + bool is_supported(const std::string& uri) const; SharedPtr<FeatureArray> lv2_features(World* world, Node* block) const; diff --git a/ingen/URIMap.hpp b/ingen/URIMap.hpp index 5f3aca63..e5ca71e3 100644 --- a/ingen/URIMap.hpp +++ b/ingen/URIMap.hpp @@ -46,6 +46,8 @@ public: _feature.data = data; } + const char* uri() const { return _feature.URI; } + SharedPtr<LV2_Feature> feature(World*, Node*) { return SharedPtr<LV2_Feature>(&_feature, NullDeleter<LV2_Feature>); } |