本文整理汇总了C++中CAddonDll::ReloadSettings方法的典型用法代码示例。如果您正苦于以下问题:C++ CAddonDll::ReloadSettings方法的具体用法?C++ CAddonDll::ReloadSettings怎么用?C++ CAddonDll::ReloadSettings使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CAddonDll
的用法示例。
在下文中一共展示了CAddonDll::ReloadSettings方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: get_setting_string
bool CAddonDll::get_setting_string(void* kodiBase, const char* id, char** value)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
if (addon == nullptr || id == nullptr || value == nullptr)
{
CLog::Log(LOGERROR, "kodi::General::%s - invalid data (addon='%p', id='%p', value='%p')",
__FUNCTION__, kodiBase, static_cast<const void*>(id), static_cast<void*>(value));
return false;
}
if (!addon->ReloadSettings())
{
CLog::Log(LOGERROR, "kodi::General::%s - could't get settings for add-on '%s'", __FUNCTION__, addon->Name().c_str());
return false;
}
auto setting = addon->GetSettings()->GetSetting(id);
if (setting == nullptr)
{
CLog::Log(LOGERROR, "kodi::General::%s - can't find setting '%s' in '%s'", __FUNCTION__, id, addon->Name().c_str());
return false;
}
if (setting->GetType() != SettingType::String)
{
CLog::Log(LOGERROR, "kodi::General::%s - setting '%s' is not a string in '%s'", __FUNCTION__, id, addon->Name().c_str());
return false;
}
*value = strdup(std::static_pointer_cast<CSettingString>(setting)->GetValue().c_str());
return true;
}