summaryrefslogtreecommitdiffstats
path: root/ingen
diff options
context:
space:
mode:
Diffstat (limited to 'ingen')
-rw-r--r--ingen/client/PluginModel.hpp7
-rw-r--r--ingen/client/PortModel.hpp1
-rw-r--r--ingen/shared/URIs.hpp1
3 files changed, 9 insertions, 0 deletions
diff --git a/ingen/client/PluginModel.hpp b/ingen/client/PluginModel.hpp
index e434df07..46e7b116 100644
--- a/ingen/client/PluginModel.hpp
+++ b/ingen/client/PluginModel.hpp
@@ -17,6 +17,9 @@
#ifndef INGEN_CLIENT_PLUGINMODEL_HPP
#define INGEN_CLIENT_PLUGINMODEL_HPP
+#include <list>
+#include <utility>
+
#include "lilv/lilv.h"
#include "raul/SharedPtr.hpp"
#include "raul/Symbol.hpp"
@@ -59,6 +62,10 @@ public:
std::string human_name() const;
std::string port_human_name(uint32_t index) const;
+ typedef std::pair<float, std::string> ScalePoint;
+ typedef std::list<ScalePoint> ScalePoints;
+ ScalePoints port_scale_points(uint32_t i) const;
+
static LilvWorld* lilv_world() { return _lilv_world; }
const LilvPlugin* lilv_plugin() const { return _lilv_plugin; }
diff --git a/ingen/client/PortModel.hpp b/ingen/client/PortModel.hpp
index d9fce5e4..8065692d 100644
--- a/ingen/client/PortModel.hpp
+++ b/ingen/client/PortModel.hpp
@@ -54,6 +54,7 @@ public:
bool port_property(const Raul::URI& uri) const;
bool is_logarithmic() const { return port_property(LV2_PORT_PROPS__logarithmic); }
+ bool is_enumeration() const { return port_property(LV2_CORE__enumeration); }
bool is_integer() const { return port_property(LV2_CORE__integer); }
bool is_toggle() const { return port_property(LV2_CORE__toggled); }
bool is_numeric() const {
diff --git a/ingen/shared/URIs.hpp b/ingen/shared/URIs.hpp
index c4086bb5..f59f5c38 100644
--- a/ingen/shared/URIs.hpp
+++ b/ingen/shared/URIs.hpp
@@ -98,6 +98,7 @@ public:
const Quark lv2_name;
const Quark lv2_portProperty;
const Quark lv2_sampleRate;
+ const Quark lv2_scalePoint;
const Quark lv2_symbol;
const Quark lv2_toggled;
const Quark midi_Bender;