Class SharedLibrary
- Defined in File shared_library.hpp 
Class Documentation
- 
class SharedLibrary
- This class is an abstraction of rcutils shared library to be able to used it with modern C++. - Public Functions - 
explicit SharedLibrary(const std::string &library_path)
- The library is loaded in the constructor. - Parameters:
- library_path – [in] The library string path. 
- Throws:
- std::bad_alloc – if allocating storage for the callback fails 
- std::runtime_error – if there are some invalid arguments or the library was not load properly 
 
 
 - 
virtual ~SharedLibrary()
- The library is unloaded in the deconstructor. 
 - 
void unload_library()
- Unload library. - Throws:
- std::runtime_error – if the library is not unloaded properly 
 
 - 
bool has_symbol(const char *symbol_name)
- Return true if the shared library contains a specific symbol name otherwise returns false. - Parameters:
- symbol_name – [in] name of the symbol inside the shared library 
- Returns:
- if symbols exists returns true, otherwise returns false. 
 
 - 
bool has_symbol(const std::string &symbol_name)
- Parameters:
- symbol_name – [in] name of the symbol inside the shared library 
- Returns:
- if symbols exists returns true, otherwise returns false. 
 
 - 
void *get_symbol(const char *symbol_name)
- Return shared library symbol pointer. - Parameters:
- symbol_name – [in] name of the symbol inside the shared library 
- Throws:
- std::runtime_error – if the symbol doesn’t exist in the shared library 
- Returns:
- shared library symbol pointer, if the symbol doesn’t exist then throws a runtime_error exception 
 
 - 
void *get_symbol(const std::string &symbol_name)
- Return shared library symbol pointer. - Parameters:
- symbol_name – [in] name of the symbol inside the shared library 
- Throws:
- std::runtime_error – if the symbol doesn’t exist in the shared library 
- Returns:
- shared library symbol pointer, if the symbol doesn’t exist then throws a runtime_error exception 
 
 - 
std::string get_library_path()
- Return shared library path. - Throws:
- std::runtime_error – if the path is NULL 
- Returns:
- shared library path or it throws an std::runtime_error if it’s not defined 
 
 
- 
explicit SharedLibrary(const std::string &library_path)