00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef LIBRARY_HH_
00018 # define LIBRARY_HH_
00019
00020 # include <string>
00021
00026 class LibraryError : public Exception
00027 {
00028 public:
00029
00031 LibraryError();
00032
00035 LibraryError(const std::string& msg);
00036 };
00037
00042 class Library
00043 {
00044 public:
00045 Library();
00046 Library(const std::string& library_file);
00047 ~Library();
00048
00049 void open(const std::string& library_file);
00050
00054 void* getSymbol(const char* sym, bool required = true);
00055
00056 private:
00057
00058 void* hndl_;
00059 std::string library_file_;
00060 };
00061
00062 #endif