19 #ifndef MIR_SHARED_LIBRARY_H_ 20 #define MIR_SHARED_LIBRARY_H_ 33 template<
typename FunctionPtr>
37 (
void*&)result = load_symbol(function_name);
41 template<
typename FunctionPtr>
44 return load_function<FunctionPtr>(function_name.c_str());
47 template<
typename FunctionPtr>
48 FunctionPtr
load_function(std::string
const& function_name, std::string
const& version)
const 51 (
void*&)result = load_symbol(function_name.c_str(), version.c_str());
56 void* load_symbol(
char const* function_name)
const;
57 void* load_symbol(
char const* function_name,
char const* version)
const;
~SharedLibrary() noexcept
AutoUnblockThread is a helper thread class that can gracefully shutdown at destruction time...
Definition: blob.h:26
SharedLibrary(char const *library_name)
Definition: shared_library.h:26
FunctionPtr load_function(std::string const &function_name) const
Definition: shared_library.h:42
FunctionPtr load_function(std::string const &function_name, std::string const &version) const
Definition: shared_library.h:48
FunctionPtr load_function(char const *function_name) const
Definition: shared_library.h:34