Lines Matching defs:library
21 * \brief Dynamic link library abstraction.
41 deDynamicLibrary* library = (deDynamicLibrary*)deCalloc(sizeof(deDynamicLibrary));
42 if (!library)
46 library->libHandle = dlopen(basename((char*)fileName), RTLD_LAZY);
48 library->libHandle = dlopen(fileName, RTLD_LAZY);
50 if (!library->libHandle)
52 deFree(library);
56 return library;
59 void deDynamicLibrary_close (deDynamicLibrary* library)
61 if (library && library->libHandle)
62 dlclose(library->libHandle);
63 deFree(library);
66 deFunctionPtr deDynamicLibrary_getFunction (const deDynamicLibrary* library, const char* symbolName)
75 DE_ASSERT(library && library->libHandle && symbolName);
76 ptr.objPtr = dlsym(library->libHandle, symbolName);
94 deDynamicLibrary* library = (deDynamicLibrary*)deCalloc(sizeof(deDynamicLibrary));
95 if (!library)
98 library->handle = LoadLibrary(fileName);
99 if (!library->handle)
101 deFree(library);
105 return library;
108 void deDynamicLibrary_close (deDynamicLibrary* library)
110 if (library && library->handle)
111 FreeLibrary(library->handle);
112 deFree(library);
115 deFunctionPtr deDynamicLibrary_getFunction (const deDynamicLibrary* library, const char* symbolName)
117 DE_ASSERT(library && library->handle && symbolName);
118 return (deFunctionPtr)GetProcAddress(library->handle, symbolName);