#include <addon_manager.h>
Definition at line 37 of file addon_manager.h.
Common::AddonsManager::AddonsManager |
( |
const Logger::SharedPtr & |
logger | ) |
|
|
inline |
virtual std::shared_ptr<Addon> Common::AddonsManager::GetAddon |
( |
const AddonId & |
id | ) |
const |
|
pure virtual |
getting addon by id
- Parameters
-
id | id of the required addon |
- Returns
- addon instance
- Exceptions
-
if | addon is not registered or not initialized yet. |
virtual std::shared_ptr<Addon> Common::AddonsManager::GetAddon |
( |
const char |
id[] | ) |
const |
|
inlinevirtual |
template<class AddonClass >
std::shared_ptr< AddonClass > Common::AddonsManager::GetAddon |
( |
const AddonId & |
id | ) |
const |
Get instance of addon.
- Returns
- instance of addon casted to specified type
- Exceptions
-
if | unable to cast addon, unable to find addon, or in casr of error |
Definition at line 104 of file addon_manager.h.
template<class AddonClass >
std::shared_ptr< AddonClass > Common::AddonsManager::GetAddon |
( |
const char |
id[] | ) |
const |
virtual const Logger::SharedPtr& Common::AddonsManager::GetLogger |
( |
| ) |
const |
|
inlinevirtual |
virtual void Common::AddonsManager::Register |
( |
const AddonInformation & |
caddonConfiguration | ) |
|
|
pure virtual |
register new addon.
- Parameters
-
addonConfiguration | configuration of new addon. |
- Exceptions
-
if | addon already redistered. If manager started thows if not all dependencies resolved. If manager already started addon will be immediately created and initialized. |
virtual void Common::AddonsManager::Start |
( |
| ) |
|
|
pure virtual |
starting work. creates all addons and initializes them.
- Exceptions
-
if | not all addons dependencies can be resolved. |
virtual void Common::AddonsManager::Stop |
( |
| ) |
|
|
pure virtual |
virtual void Common::AddonsManager::Unregister |
( |
const AddonId & |
id | ) |
|
|
pure virtual |
unregister addon
- Parameters
-
id | id of unregistering addon |
- Exceptions
-
if | addon not found For unregistering addon will be called method Addon::Stop() and addon data will be removed. |
Logger::SharedPtr Common::AddonsManager::Logger |
|
protected |
The documentation for this class was generated from the following file: