Browse Source

pt2

tags/1.9.4
falkTX 11 years ago
parent
commit
1387f2bf12
1 changed files with 10 additions and 5 deletions
  1. +10
    -5
      source/modules/lilv/lilv-0.16.0/src/lilv_internal.h

+ 10
- 5
source/modules/lilv/lilv-0.16.0/src/lilv_internal.h View File

@@ -30,7 +30,6 @@ extern "C" {
# include <windows.h> # include <windows.h>
# define dlopen(path, flags) LoadLibrary(path) # define dlopen(path, flags) LoadLibrary(path)
# define dlclose(lib) FreeLibrary((HMODULE)lib) # define dlclose(lib) FreeLibrary((HMODULE)lib)
# define dlsym GetProcAddress
# ifdef _MSC_VER # ifdef _MSC_VER
# define __func__ __FUNCTION__ # define __func__ __FUNCTION__
# define INFINITY DBL_MAX + DBL_MAX # define INFINITY DBL_MAX + DBL_MAX
@@ -65,7 +64,7 @@ typedef struct LilvSpecImpl LilvSpec;
typedef void LilvCollection; typedef void LilvCollection;


struct LilvPortImpl { struct LilvPortImpl {
SordNode* node; ///< RDF node
LilvNode* node; ///< RDF node
uint32_t index; ///< lv2:index uint32_t index; ///< lv2:index
LilvNode* symbol; ///< lv2:symbol LilvNode* symbol; ///< lv2:symbol
LilvNodes* classes; ///< rdf:type LilvNodes* classes; ///< rdf:type
@@ -164,6 +163,7 @@ struct LilvWorldImpl {
SordNode* lv2_designation; SordNode* lv2_designation;
SordNode* lv2_extensionData; SordNode* lv2_extensionData;
SordNode* lv2_index; SordNode* lv2_index;
SordNode* lv2_latency;
SordNode* lv2_maximum; SordNode* lv2_maximum;
SordNode* lv2_minimum; SordNode* lv2_minimum;
SordNode* lv2_name; SordNode* lv2_name;
@@ -173,6 +173,7 @@ struct LilvWorldImpl {
SordNode* lv2_reportsLatency; SordNode* lv2_reportsLatency;
SordNode* lv2_requiredFeature; SordNode* lv2_requiredFeature;
SordNode* lv2_symbol; SordNode* lv2_symbol;
SordNode* lv2_prototype;
SordNode* null_uri; SordNode* null_uri;
SordNode* pset_value; SordNode* pset_value;
SordNode* rdf_a; SordNode* rdf_a;
@@ -357,15 +358,19 @@ lilv_dir_for_each(const char* path,
void* data, void* data,
void (*f)(const char* path, const char* name, void* data)); void (*f)(const char* path, const char* name, void* data));


typedef void (*VoidFunc)(void);
typedef void (*LilvVoidFunc)(void);


/** dlsym wrapper to return a function pointer (without annoying warning) */ /** dlsym wrapper to return a function pointer (without annoying warning) */
static inline VoidFunc
static inline LilvVoidFunc
lilv_dlfunc(void* handle, const char* symbol) lilv_dlfunc(void* handle, const char* symbol)
{ {
typedef VoidFunc (*VoidFuncGetter)(void*, const char*);
#ifdef _WIN32
return (LilvVoidFunc)GetProcAddress((HMODULE)handle, symbol);
#else
typedef LilvVoidFunc (*VoidFuncGetter)(void*, const char*);
VoidFuncGetter dlfunc = (VoidFuncGetter)dlsym; VoidFuncGetter dlfunc = (VoidFuncGetter)dlsym;
return dlfunc(handle, symbol); return dlfunc(handle, symbol);
#endif
} }


#ifdef LILV_DYN_MANIFEST #ifdef LILV_DYN_MANIFEST


Loading…
Cancel
Save