17 #ifndef __TBB_dynamic_link
18 #define __TBB_dynamic_link
26 #define __TBB_ASSERT(x,y) LIBRARY_ASSERT(x,y)
28 #define LIBRARY_ASSERT(x,y) __TBB_ASSERT_EX(x,y)
34 #ifndef OPEN_INTERNAL_NAMESPACE
35 #define OPEN_INTERNAL_NAMESPACE namespace tbb { namespace internal {
36 #define CLOSE_INTERNAL_NAMESPACE }}
52 #if __TBB_WEAK_SYMBOLS_PRESENT
53 #define DLD(s,h) {#s, (pointer_to_handler*)(void*)(&h), (pointer_to_handler)&s}
54 #define DLD_NOWEAK(s,h) {#s, (pointer_to_handler*)(void*)(&h), NULL}
56 #define DLD(s,h) {#s, (pointer_to_handler*)(void*)(&h)}
57 #define DLD_NOWEAK(s,h) DLD(s,h)
65 #if __TBB_WEAK_SYMBOLS_PRESENT
OPEN_INTERNAL_NAMESPACE typedef void(* pointer_to_handler)()
Type definition for a pointer to a void somefunc(void)
const int DYNAMIC_LINK_LOAD
void * dynamic_link_handle
const int DYNAMIC_LINK_ALL
#define CLOSE_INTERNAL_NAMESPACE
const int DYNAMIC_LINK_GLOBAL
void dynamic_unlink(dynamic_link_handle handle)
bool dynamic_link(const char *library, const dynamic_link_descriptor descriptors[], size_t required, dynamic_link_handle *handle=0, int flags=DYNAMIC_LINK_ALL)
Fill in dynamically linked handlers.
#define OPEN_INTERNAL_NAMESPACE
const int DYNAMIC_LINK_WEAK
void dynamic_unlink_all()
Association between a handler name and location of pointer to it.
pointer_to_handler * handler
Pointer to the handler.
const char * name
Name of the handler.