Class to help with load of shared library functions
You can add them as parent to your class and to help with load of shared library functions.
More...
Class to help with load of shared library functions
You can add them as parent to your class and to help with load of shared library functions.
- Note
- To use on Windows must you also include dlfcn-win32 on your addon!
Furthermore, this allows the use of Android where the required library is copied to an EXE useable folder.
Example:
...
{
public:
bool Start();
...
};
: CInstanceAudioDecoder(
instance, kodiVersion)
{
}
bool CMyInstance::Start()
{
std::string lib = kodi::GetAddonPath("myLib.so");
if (!LoadDll(lib)) return false;
Init();
return true;
}
...
void * KODI_HANDLE
Standard undefined pointer handle.
Definition addon_base.h:291
Definition addons/kodi-dev-kit/include/kodi/addon-instance/AudioDecoder.h:431
typedef void(ATTR_APIENTRYP PFN_KODI_ADDON_SCREENSAVER_STOP_V1)(const KODI_ADDON_SCREENSAVER_HDL hdl)
unsigned int(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_GET_PRESETS_V1)(const KODI_ADDON_VISUALIZATION_HDL hdl)
Definition kodi-dev-kit/include/kodi/c-api/addon-instance/Visualization.h:73
Definition addon_base.h:268
◆ REGISTER_DLL_SYMBOL
◆ CDllHelper()
kodi::tools::CDllHelper::CDllHelper |
( |
| ) |
|
|
default |
◆ LoadDll()
bool kodi::tools::CDllHelper::LoadDll |
( |
std::string | path | ) |
|
|
inline |
Function to load requested library.
- Parameters
-
[in] | path | The path with filename of shared library to load |
- Returns
- true if load was successful done
◆ RegisterSymbol()
template<typename T >
bool kodi::tools::CDllHelper::RegisterSymbol |
( |
T & | functionPtr, |
|
|
const char * | strFunctionPtr ) |
|
inline |
Function to register requested library symbol.
- Warning
- This function should not be used, use instead the macro REGISTER_DLL_SYMBOL to register the symbol pointer.
Use this always via Macro, e.g.:
◆ ~CDllHelper()
virtual kodi::tools::CDllHelper::~CDllHelper |
( |
| ) |
|
|
inlinevirtual |