• ThingManager
  • ThingManager Class

    nymea's thing manager interface. More...

    Header: #include <ThingManager>
    Inherits:

    Public Functions

    ThingManager(QObject * parent = nullptr)
    virtual ~ThingManager()
    virtual ThingSetupInfo * addConfiguredThing(const ThingClassId & thingClassId, const ParamList & params, const QString & name = QString()) = 0
    virtual ThingSetupInfo * addConfiguredThing(const ThingDescriptorId & thingDescriptorId, const ParamList & params = ParamList(), const QString & name = QString()) = 0
    virtual BrowseResult * browseThing(const ThingId & thingId, const QString & itemId, const QLocale & locale) = 0
    virtual BrowserItemResult * browserItemDetails(const ThingId & thingId, const QString & itemId, const QLocale & locale) = 0
    virtual Things configuredThings() const = 0
    virtual ThingPairingInfo * confirmPairing(const PairingTransactionId & pairingTransactionId, const QString & username = QString(), const QString & secret = QString()) = 0
    virtual ThingDiscoveryInfo * discoverThings(const ThingClassId & thingClassId, const ParamList & params) = 0
    virtual Thing::ThingError editThing(const ThingId & thingId, const QString & name) = 0
    virtual ThingActionInfo * executeAction(const Action & action) = 0
    virtual BrowserActionInfo * executeBrowserItem(const BrowserAction & browserAction) = 0
    virtual BrowserItemActionInfo * executeBrowserItemAction(const BrowserItemAction & browserItemAction) = 0
    virtual Things findChilds(const ThingId & id) const = 0
    virtual Thing * findConfiguredThing(const ThingId & id) const = 0
    virtual Things findConfiguredThings(const ThingClassId & thingClassId) const = 0
    virtual Things findConfiguredThings(const QString & interface) const = 0
    virtual ThingClass findThingClass(const ThingClassId & thingClassId) const = 0
    virtual ThingPairingInfo * pairThing(const ThingClassId & thingClassId, const ParamList & params, const QString & name = QString()) = 0
    virtual ThingPairingInfo * pairThing(const ThingDescriptorId & thingDescriptorId, const ParamList & params = ParamList(), const QString & name = QString()) = 0
    virtual ThingPairingInfo * pairThing(const ThingId & thingId, const ParamList & params, const QString & name = QString()) = 0
    virtual IntegrationPlugin * plugin(const PluginId & pluginId) const = 0
    virtual IntegrationPlugins plugins() const = 0
    virtual ThingSetupInfo * reconfigureThing(const ThingId & thingId, const ParamList & params, const QString & name = QString()) = 0
    virtual ThingSetupInfo * reconfigureThing(const ThingDescriptorId & thingDescriptorId, const ParamList & params = ParamList(), const QString & name = QString()) = 0
    virtual Thing::ThingError removeConfiguredThing(const ThingId & thingId) = 0
    virtual Thing::ThingError setPluginConfig(const PluginId & pluginId, const ParamList & pluginConfig) = 0
    virtual Thing::ThingError setThingSettings(const ThingId & thingId, const ParamList & settings) = 0
    virtual Interfaces supportedInterfaces() const = 0
    virtual ThingClasses supportedThings(const VendorId & vendorId = VendorId()) const = 0
    virtual Vendors supportedVendors() const = 0
    virtual QString translate(const PluginId & pluginId, const QString & string, const QLocale & locale) = 0
    virtual ParamType translateParamType(const PluginId & pluginId, const ParamType & paramType, const QLocale & locale) = 0
    virtual ThingClass translateThingClass(const ThingClass & thingClass, const QLocale & locale) = 0
    virtual Vendor translateVendor(const Vendor & vendor, const QLocale & locale) = 0

    Signals

    void eventTriggered(const Event & event)
    void pluginConfigChanged(const PluginId & id, const ParamList & config)
    void thingAdded(Thing * thing)
    void thingChanged(Thing * device)
    void thingDisappeared(const ThingId & thingId)
    void thingRemoved(const ThingId & thingId)
    void thingSettingChanged(const ThingId & thingId, const ParamTypeId & settingParamTypeId, const QVariant & value)
    void thingStateChanged(Thing * thing, const StateTypeId & stateTypeId, const QVariant & value)

    Detailed Description

    nymea's thing manager interface.

    The ThingManager is the main entity managing all things in nymea.

    It is also responsible for loading Plugins and managing common hardware resources between integration plugins.

    Member Function Documentation

    ThingManager::ThingManager(QObject * parent = nullptr)

    [virtual] ThingManager::~ThingManager()

    [pure virtual] ThingSetupInfo * ThingManager::addConfiguredThing(const ThingClassId & thingClassId, const ParamList & params, const QString & name = QString())

    [pure virtual] ThingSetupInfo * ThingManager::addConfiguredThing(const ThingDescriptorId & thingDescriptorId, const ParamList & params = ParamList(), const QString & name = QString())

    [pure virtual] BrowseResult * ThingManager::browseThing(const ThingId & thingId, const QString & itemId, const QLocale & locale)

    [pure virtual] BrowserItemResult * ThingManager::browserItemDetails(const ThingId & thingId, const QString & itemId, const QLocale & locale)

    [pure virtual] Things ThingManager::configuredThings() const

    [pure virtual] ThingPairingInfo * ThingManager::confirmPairing(const PairingTransactionId & pairingTransactionId, const QString & username = QString(), const QString & secret = QString())

    [pure virtual] ThingDiscoveryInfo * ThingManager::discoverThings(const ThingClassId & thingClassId, const ParamList & params)

    [pure virtual] Thing::ThingError ThingManager::editThing(const ThingId & thingId, const QString & name)

    [signal] void ThingManager::eventTriggered(const Event & event)

    [pure virtual] ThingActionInfo * ThingManager::executeAction(const Action & action)

    [pure virtual] BrowserActionInfo * ThingManager::executeBrowserItem(const BrowserAction & browserAction)

    [pure virtual] BrowserItemActionInfo * ThingManager::executeBrowserItemAction(const BrowserItemAction & browserItemAction)

    [pure virtual] Things ThingManager::findChilds(const ThingId & id) const

    [pure virtual] Thing * ThingManager::findConfiguredThing(const ThingId & id) const

    [pure virtual] Things ThingManager::findConfiguredThings(const ThingClassId & thingClassId) const

    [pure virtual] Things ThingManager::findConfiguredThings(const QString & interface) const

    [pure virtual] ThingClass ThingManager::findThingClass(const ThingClassId & thingClassId) const

    [pure virtual] ThingPairingInfo * ThingManager::pairThing(const ThingClassId & thingClassId, const ParamList & params, const QString & name = QString())

    [pure virtual] ThingPairingInfo * ThingManager::pairThing(const ThingDescriptorId & thingDescriptorId, const ParamList & params = ParamList(), const QString & name = QString())

    [pure virtual] ThingPairingInfo * ThingManager::pairThing(const ThingId & thingId, const ParamList & params, const QString & name = QString())

    [pure virtual] IntegrationPlugin * ThingManager::plugin(const PluginId & pluginId) const

    [signal] void ThingManager::pluginConfigChanged(const PluginId & id, const ParamList & config)

    [pure virtual] IntegrationPlugins ThingManager::plugins() const

    [pure virtual] ThingSetupInfo * ThingManager::reconfigureThing(const ThingId & thingId, const ParamList & params, const QString & name = QString())

    [pure virtual] ThingSetupInfo * ThingManager::reconfigureThing(const ThingDescriptorId & thingDescriptorId, const ParamList & params = ParamList(), const QString & name = QString())

    [pure virtual] Thing::ThingError ThingManager::removeConfiguredThing(const ThingId & thingId)

    [pure virtual] Thing::ThingError ThingManager::setPluginConfig(const PluginId & pluginId, const ParamList & pluginConfig)

    [pure virtual] Thing::ThingError ThingManager::setThingSettings(const ThingId & thingId, const ParamList & settings)

    [pure virtual] Interfaces ThingManager::supportedInterfaces() const

    [pure virtual] ThingClasses ThingManager::supportedThings(const VendorId & vendorId = VendorId()) const

    [pure virtual] Vendors ThingManager::supportedVendors() const

    [signal] void ThingManager::thingAdded(Thing * thing)

    [signal] void ThingManager::thingChanged(Thing * device)

    [signal] void ThingManager::thingDisappeared(const ThingId & thingId)

    [signal] void ThingManager::thingRemoved(const ThingId & thingId)

    [signal] void ThingManager::thingSettingChanged(const ThingId & thingId, const ParamTypeId & settingParamTypeId, const QVariant & value)

    [signal] void ThingManager::thingStateChanged(Thing * thing, const StateTypeId & stateTypeId, const QVariant & value)

    [pure virtual] QString ThingManager::translate(const PluginId & pluginId, const QString & string, const QLocale & locale)

    [pure virtual] ParamType ThingManager::translateParamType(const PluginId & pluginId, const ParamType & paramType, const QLocale & locale)

    [pure virtual] ThingClass ThingManager::translateThingClass(const ThingClass & thingClass, const QLocale & locale)

    [pure virtual] Vendor ThingManager::translateVendor(const Vendor & vendor, const QLocale & locale)