#include <dynamic_library.hpp>
Definition at line 41 of file dynamic_library.hpp.
Public Member Functions | |
| dynamic_library (const std::string &name, bool current_program=false) | |
| Constructor. | |
| ~dynamic_library () | |
| Destructor (close the library). | |
| bool | have_symbol (const std::string &name) const |
| Tell if the library has a symbol. | |
| template<class T> | |
| T | get_symbol (const std::string &name) const |
| Get a symbol in the library. | |
Private Attributes | |
| dynamic_library_traits::handle | m_handle |
| Handle of the library. | |
| claw::dynamic_library::dynamic_library | ( | const std::string & | name, | |
| bool | current_program = false | |||
| ) |
Constructor.
| name | Name of the library to load. | |
| current_program | Tell if the name parameter is the current program. |
Definition at line 39 of file dynamic_library.cpp.
References m_handle.
00041 { 00042 if ( current_program ) 00043 m_handle = dynamic_library_traits::auto_open( name ); 00044 else 00045 m_handle = dynamic_library_traits::open( name ); 00046 00047 if ( !dynamic_library_traits::valid_handle(m_handle) ) 00048 throw exception( "Can't open library '" + name + "'" ); 00049 } // dynamic_library::dynamic_library()
| claw::dynamic_library::~dynamic_library | ( | ) |
Destructor (close the library).
Definition at line 55 of file dynamic_library.cpp.
References m_handle.
00056 { 00057 dynamic_library_traits::close( m_handle ); 00058 } // dynamic_library::~dynamic_library()
| bool claw::dynamic_library::have_symbol | ( | const std::string & | name | ) | const |
Tell if the library has a symbol.
| name | The symbol to find. |
Definition at line 65 of file dynamic_library.cpp.
References m_handle.
00066 { 00067 return dynamic_library_traits::have_symbol( m_handle, name ); 00068 } // dynamic_library::have_symbol()
| T claw::dynamic_library::get_symbol | ( | const std::string & | name | ) | const [inline] |
Get a symbol in the library.
| name | The name of the symbol to get. |
Definition at line 38 of file dynamic_library.tpp.
References m_handle.
00039 { 00040 return dynamic_library_traits::get_symbol<T>(m_handle, name); 00041 } // dynamic_library::get_symbol()
dynamic_library_traits::handle claw::dynamic_library::m_handle [private] |
Handle of the library.
Definition at line 54 of file dynamic_library.hpp.
Referenced by dynamic_library(), get_symbol(), have_symbol(), and ~dynamic_library().
1.5.5