summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2013-03-19 04:05:54 +0000
committerDavid Robillard <d@drobilla.net>2013-03-19 04:05:54 +0000
commit52c617694203c9dbc20189f5bae3b6446df87bd9 (patch)
tree2f6b7dcd681a47274418cc0314e9d6e39b21dc47
parent9dc2774e13cbdaccb3b27f2b0503b3ccdf7d3f9b (diff)
downloadlilv-52c617694203c9dbc20189f5bae3b6446df87bd9.tar.gz
lilv-52c617694203c9dbc20189f5bae3b6446df87bd9.tar.bz2
lilv-52c617694203c9dbc20189f5bae3b6446df87bd9.zip
Add C++ wrappers to lilvmm.hpp (fix compilation with --python).
git-svn-id: http://svn.drobilla.net/lad/trunk/lilv@5092 a436a847-0d15-0410-975c-d299462d15a1
-rw-r--r--NEWS6
-rw-r--r--lilv/lilvmm.hpp26
-rw-r--r--wscript2
3 files changed, 33 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 01c68c8..b9aeec4 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,9 @@
+lilv (0.16.1) unstable;
+
+ * lilvmm.hpp: Add wrappers for UI API
+
+ -- David Robillard <d@drobilla.net> Tue, 19 Mar 2013 00:01:12 -0400
+
lilv (0.16.0) stable;
* Add lilv_world_ask() for easily checking if a statement exists
diff --git a/lilv/lilvmm.hpp b/lilv/lilvmm.hpp
index 666f466..adb0cb6 100644
--- a/lilv/lilvmm.hpp
+++ b/lilv/lilvmm.hpp
@@ -49,6 +49,11 @@ uri_to_path(const char* uri) {
return lilv_ ## prefix ## _ ## name(me, a1, a2); \
}
+#define LILV_WRAP3(RT, prefix, name, T1, a1, T2, a2, T3, a3) \
+ inline RT name(T1 a1, T2 a2, T3 a3) { \
+ return lilv_ ## prefix ## _ ## name(me, a1, a2, a3); \
+ }
+
#define LILV_WRAP2_VOID(prefix, name, T1, a1, T2, a2) \
inline void name(T1 a1, T2 a2) { lilv_ ## prefix ## _ ## name(me, a1, a2); }
@@ -139,6 +144,27 @@ struct Nodes {
LILV_WRAP0(Node, nodes, get_first);
};
+struct UI {
+ inline UI(const LilvUI* c_obj) : me(c_obj) {}
+ LILV_WRAP_CONVERSION(const LilvUI);
+
+ LILV_WRAP0(const LilvNode*, ui, get_uri);
+ LILV_WRAP0(const LilvNode*, ui, get_bundle_uri);
+ LILV_WRAP0(const LilvNode*, ui, get_binary_uri);
+ LILV_WRAP0(const LilvNodes*, ui, get_classes);
+ /*LILV_WRAP3(bool, ui, is_supported,
+ LilvUISupportedFunc, supported_func,
+ const LilvNode*, container_type,
+ const LilvNode**, ui_type);*/
+ LILV_WRAP1(bool, ui, is_a, const LilvNode*, class_uri);
+
+ const LilvUI* me;
+};
+
+struct UIs {
+ LILV_WRAP_COLL(UIs, UI, uis);
+};
+
struct Port {
inline Port(const LilvPlugin* p, const LilvPort* c_obj)
: parent(p), me(c_obj)
diff --git a/wscript b/wscript
index 0308700..7e4b8d0 100644
--- a/wscript
+++ b/wscript
@@ -9,7 +9,7 @@ import waflib.extras.autowaf as autowaf
# major increment <=> incompatible changes
# minor increment <=> compatible changes (additions)
# micro increment <=> no interface changes
-LILV_VERSION = '0.16.0'
+LILV_VERSION = '0.16.1'
LILV_MAJOR_VERSION = '0'
# Mandatory waf variables