Changeset 5335:dba934a2d1e0 in roaraudio for include/libroar/roardl.h
- Timestamp:
- 12/09/11 18:13:39 (12 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
include/libroar/roardl.h
r5327 r5335 98 98 } 99 99 100 // general stuff: 100 101 #define ROAR_DL_PLUGIN_ABORT_LOADING(err) roar_err_set((err)); return NULL 101 102 #define ROAR_DL_PLUGIN_CHECK_VERSIONS(app,abi) if ( roar_dl_para_check_version(para, (app), (abi)) == -1 ) return NULL 103 104 // register stuff: 102 105 #define ROAR_DL_PLUGIN_REG(fn, funcptr) (lib.func[(fn)] = (funcptr)) 103 106 #define ROAR_DL_PLUGIN_REG_UNLOAD(func) (lib.unload = (func)) … … 106 109 lib.global_data_init = &(init); \ 107 110 lib.global_data_pointer = (void*)&(ptr) 111 112 // meta data stuff: 113 #define ROAR_DL_PLUGIN_META_PRODUCT(x) (libname.libname = (x)) 114 #define ROAR_DL_PLUGIN_META_PRODUCT_NV(name,vendor) ROAR_DL_PLUGIN_META_PRODUCT(name " <" vendor ">") 115 #define ROAR_DL_PLUGIN_META_PRODUCT_NIV(name,id,vendor) ROAR_DL_PLUGIN_META_PRODUCT(name " <" #id "/" vendor ">") 116 #define ROAR_DL_PLUGIN_META_VERSION(x) (libname.libversion = (x)) 117 #define ROAR_DL_PLUGIN_META_ABI(x) (libname.abiversion = (x)) 118 #define ROAR_DL_PLUGIN_META_DESC(x) (libname.description = (x)) 119 #define ROAR_DL_PLUGIN_META_CONTACT(x) (libname.contact = (x)) 120 #define ROAR_DL_PLUGIN_META_CONTACT_FL(first,last) ROAR_DL_PLUGIN_META_CONTACT(first " " last) 121 #define ROAR_DL_PLUGIN_META_CONTACT_FLE(first,last,email) ROAR_DL_PLUGIN_META_CONTACT(first " " last " <" email ">") 122 #define ROAR_DL_PLUGIN_META_CONTACT_FLNE(first,last,nick,email) ROAR_DL_PLUGIN_META_CONTACT(first " \"" nick "\" " last " <" email ">") 123 #define ROAR_DL_PLUGIN_META_AUTHORS(x) (libname.authors = (x)) 124 #define ROAR_DL_PLUGIN_META_LICENSE(x) (libname.license = (x)) 125 #define ROAR_DL_PLUGIN_META_LICENSE_TAG(x) ROAR_DL_PLUGIN_META_LICENSE(ROAR_LICENSE_ ## x) 108 126 109 127 enum roar_dl_loadercmd { … … 116 134 ROAR_DL_LOADER_POSTUNLOAD 117 135 }; 136 137 struct roar_plugincontainer; 118 138 119 139 struct roar_dl_librarypara { … … 147 167 // Examples: libroar2, 0.5.1 148 168 struct roar_notify_core * notifycore; 149 int (*loader)(struct roar_dl_librarypara * lhandle, enum roar_dl_loadercmd cmd, void * argp); 169 struct roar_plugincontainer * container; 170 int (*loader)(struct roar_dl_librarypara * lhandle, void * loader_userdata, enum roar_dl_loadercmd cmd, void * argp); 171 void * loader_userdata; 150 172 }; 151 173 … … 169 191 int version; 170 192 size_t len; 193 uint32_t flags; 171 194 const char * name; 172 195 const char * libname; … … 192 215 int (*free) (struct roar_dl_librarypara * para); 193 216 int (*update)(struct roar_dl_librarypara * para); 217 int (*tick) (struct roar_dl_librarypara * para); 218 int (*wait) (struct roar_dl_librarypara * para); 194 219 }; 195 220 … … 199 224 ROAR_DL_APPSCHED_FREE, 200 225 #define ROAR_DL_APPSCHED_FREE ROAR_DL_APPSCHED_FREE 201 ROAR_DL_APPSCHED_UPDATE 226 ROAR_DL_APPSCHED_UPDATE, 202 227 #define ROAR_DL_APPSCHED_UPDATE ROAR_DL_APPSCHED_UPDATE 228 ROAR_DL_APPSCHED_TICK, 229 #define ROAR_DL_APPSCHED_TICK ROAR_DL_APPSCHED_TICK 230 ROAR_DL_APPSCHED_WAIT 231 #define ROAR_DL_APPSCHED_WAIT ROAR_DL_APPSCHED_WAIT 203 232 }; 204 233
Note: See TracChangeset
for help on using the changeset viewer.