6 #include <Poco/Mutex.h>
7 #include <Poco/SharedPtr.h>
9 #include "belkin/BelkinWemoDevice.h"
10 #include "belkin/BelkinWemoLink.h"
11 #include "model/ModuleID.h"
12 #include "model/ModuleType.h"
13 #include "model/SensorData.h"
24 typedef Poco::SharedPtr<BelkinWemoBulb> Ptr;
31 const BelkinWemoLink::BulbID bulbId,
32 const BelkinWemoLink::Ptr link,
36 bool requestModifyState(
const ModuleID& moduleID,
const double value)
override;
39 std::list<ModuleType> moduleTypes()
const override;
40 std::string name()
const override;
41 Poco::FastMutex& lock()
override;
43 BelkinWemoLink::Ptr link()
const;
46 static DeviceID buildDeviceID(
const BelkinWemoLink::BulbID &
id);
47 int dimToPercentage(
const double value);
48 int dimFromPercentage(
const double percents);
51 BelkinWemoLink::BulbID m_bulbId;
52 BelkinWemoLink::Ptr m_link;
Abstract class representing generic BelkinWemo device.
Definition: BelkinWemoDevice.h:24
RefreshTime represents time of refreshing values from sensors. E.g. sensors are polled periodically o...
Definition: RefreshTime.h:24
BelkinWemoBulb(const BelkinWemoLink::BulbID bulbId, const BelkinWemoLink::Ptr link, const RefreshTime &refresh)
The DeviceID is created based on a bulb's 64-bit identifier, where DevicePrefix is given on 8th byte...
Definition: BelkinWemoBulb.cpp:35
Definition: SensorData.h:20
Definition: ModuleID.h:12
The class represents Belkin WeMo Led Light Bulb. It works with Belkin WeMo Link it uses his methods t...
Definition: BelkinWemoBulb.h:22
Definition: DeviceID.h:17
RefreshTime refresh() const override
Regular period telling how often to call the method PollableDevice::poll(). The refresh must contain ...
Definition: BelkinWemoDevice.cpp:30