11 #include "../../AddonBase.h" 12 #include "../../c-api/addon-instance/pvr.h" 13 #include "../../tools/StringUtils.h" 39 class PVRProvider :
public CStructHdl<PVRProvider, PVR_PROVIDER>
41 friend class CInstancePVRClient;
45 PVRProvider() { memset(m_cStructure, 0,
sizeof(
PVR_PROVIDER)); }
46 PVRProvider(
const PVRProvider& provider) : CStructHdl(provider) {}
68 void SetUniqueId(
unsigned int uniqueId) { m_cStructure->iUniqueId = uniqueId; }
71 unsigned int GetUniqueId()
const {
return m_cStructure->iUniqueId; }
75 void SetName(
const std::string& name)
77 strncpy(m_cStructure->strName, name.c_str(),
sizeof(m_cStructure->strName) - 1);
81 std::string GetName()
const {
return m_cStructure->strName; }
104 void SetIconPath(
const std::string& iconPath)
106 strncpy(m_cStructure->strIconPath, iconPath.c_str(),
sizeof(m_cStructure->strIconPath) - 1);
110 std::string GetIconPath()
const {
return m_cStructure->strIconPath; }
117 void SetCountries(
const std::vector<std::string>& countries)
119 const std::string str = tools::StringUtils::Join(countries, PROVIDER_STRING_TOKEN_SEPARATOR);
120 strncpy(m_cStructure->strCountries, str.c_str(),
sizeof(m_cStructure->strCountries) - 1);
124 std::vector<std::string> GetCountries()
const 126 return tools::StringUtils::Split(m_cStructure->strCountries, PROVIDER_STRING_TOKEN_SEPARATOR);
134 void SetLanguages(
const std::vector<std::string>& languages)
136 const std::string str = tools::StringUtils::Join(languages, PROVIDER_STRING_TOKEN_SEPARATOR);
137 strncpy(m_cStructure->strLanguages, str.c_str(),
sizeof(m_cStructure->strLanguages) - 1);
141 std::vector<std::string> GetLanguages()
const 143 return tools::StringUtils::Split(m_cStructure->strLanguages, PROVIDER_STRING_TOKEN_SEPARATOR);
148 PVRProvider(
const PVR_PROVIDER* provider) : CStructHdl(provider) {}
149 PVRProvider(
PVR_PROVIDER* provider) : CStructHdl(provider) {}
161 class PVRProvidersResultSet
165 PVRProvidersResultSet() =
delete;
167 : m_instance(instance), m_handle(handle)
178 void Add(
const kodi::addon::PVRProvider& provider)
180 m_instance->toKodi->TransferProviderEntry(m_instance->toKodi->kodiInstance, m_handle, provider);
PVR_PROVIDER_TYPE
Definition: pvr_providers.h:46
Definition: addon_base.h:267
"C" PVR add-on provider.
Definition: pvr_providers.h:79
Handle used to return data from the PVR add-on to CPVRClient.
Definition: pvr_defines.h:65