11 #include "threads/CriticalSection.h" 15 #include <unordered_set> 20 class IAddonInstanceHandler;
23 using AddonInfoPtr = std::shared_ptr<CAddonInfo>;
26 typedef std::shared_ptr<CAddonDll> AddonDllPtr;
31 explicit CBinaryAddonBase(
const AddonInfoPtr& addonInfo) : m_addonInfo(addonInfo) { }
33 const std::string& ID()
const;
37 size_t UsedInstanceCount()
const;
39 AddonDllPtr GetActiveAddon();
42 void OnPostInstall(
bool update,
bool modal);
43 void OnPreUnInstall();
44 void OnPostUnInstall();
47 AddonInfoPtr m_addonInfo;
49 mutable CCriticalSection m_critSection;
50 AddonDllPtr m_activeAddon;
51 std::unordered_set<IAddonInstanceHandler*> m_activeAddonHandlers;
Definition: AddonInstanceHandler.h:33
Definition: BinaryAddonBase.h:28