Browse Source

pt10

tags/1.9.4
falkTX 10 years ago
parent
commit
dbb59bc76c
1 changed files with 25 additions and 20 deletions
  1. +25
    -20
      source/modules/lilv/lilv-0.16.0/lilv/lilvmm.hpp

+ 25
- 20
source/modules/lilv/lilv-0.16.0/lilv/lilvmm.hpp View File

@@ -52,6 +52,11 @@ uri_to_path(const char* uri) {
return lilv_ ## prefix ## _ ## name(me, a1, a2); \ 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) \ #define LILV_WRAP2_VOID(prefix, name, T1, a1, T2, a2) \
inline void name(T1 a1, T2 a2) { lilv_ ## prefix ## _ ## name(me, a1, a2); } inline void name(T1 a1, T2 a2) { lilv_ ## prefix ## _ ## name(me, a1, a2); }


@@ -143,6 +148,26 @@ struct Nodes {
LILV_WRAP0(Node, nodes, get_first); LILV_WRAP0(Node, nodes, get_first);
}; };


struct UI {
inline UI(const LilvUI* c_obj) : me(c_obj) {}
LILV_WRAP_CONVERSION(const LilvUI);

LILV_WRAP0(Node, ui, get_uri);
LILV_WRAP1(bool, ui, is_a, LilvNode*, ui_class);
LILV_WRAP0(Node, ui, get_bundle_uri);
LILV_WRAP0(Node, ui, get_binary_uri);
LILV_WRAP0(Nodes, ui, get_supported_features);
LILV_WRAP0(Nodes, ui, get_required_features);
LILV_WRAP0(Nodes, ui, get_optional_features);
LILV_WRAP0(Nodes, ui, get_extension_data);

const LilvUI* me;
};

struct UIs {
LILV_WRAP_COLL(UIs, UI, uis);
};

struct Port { struct Port {
inline Port(const LilvPlugin* p, const LilvPort* c_obj) inline Port(const LilvPlugin* p, const LilvPort* c_obj)
: parent(p), me(c_obj) : parent(p), me(c_obj)
@@ -172,26 +197,6 @@ struct Port {
const LilvPort* me; const LilvPort* me;
}; };


struct UI {
inline UI(const LilvUI* c_obj) : me(c_obj) {}
LILV_WRAP_CONVERSION(const LilvUI);

LILV_WRAP0(Node, ui, get_uri);
LILV_WRAP1(bool, ui, is_a, LilvNode*, ui_class);
LILV_WRAP0(Node, ui, get_bundle_uri);
LILV_WRAP0(Node, ui, get_binary_uri);
LILV_WRAP0(Nodes, ui, get_supported_features);
LILV_WRAP0(Nodes, ui, get_required_features);
LILV_WRAP0(Nodes, ui, get_optional_features);
LILV_WRAP0(Nodes, ui, get_extension_data);

const LilvUI* me;
};

struct UIs {
LILV_WRAP_COLL(UIs, UI, uis);
};

struct Plugin { struct Plugin {
inline Plugin(const LilvPlugin* c_obj) : me(c_obj) {} inline Plugin(const LilvPlugin* c_obj) : me(c_obj) {}
LILV_WRAP_CONVERSION(const LilvPlugin); LILV_WRAP_CONVERSION(const LilvPlugin);


Loading…
Cancel
Save