11 #ifndef __LIBTOOLSHAREDLIBRARY_H__
12 #define __LIBTOOLSHAREDLIBRARY_H__
15 #include "libhmsbeagle/config.h"
18 #include "libhmsbeagle/plugin/SharedLibrary.h"
30 class UnixSharedLibrary :
public SharedLibrary
33 UnixSharedLibrary(
const char* name);
36 void* findSymbol(
const char* name);
42 UnixSharedLibrary::UnixSharedLibrary(
const char* name)
46 std::string libname =
"lib";
49 m_handle = lt_dlopenext(libname.c_str());
52 const char* s = lt_dlerror();
53 throw SharedLibraryException(s?s:
"Exact Error Not Reported");
56 UnixSharedLibrary::~UnixSharedLibrary() {
61 void* UnixSharedLibrary::findSymbol(
const char* name)
63 void* sym = lt_dlsym(m_handle,name);
65 throw SharedLibraryException(
"Symbol Not Found");
73 #endif // HAVE_LIBLTDL
75 #endif // __LIBTOOLSHAREDLIBRARY_H__