DimmableDevice.h
Go to the documentation of this file.
1 
20 #pragma once
21 
22 #include "OnOffDevice.h"
23 
24 namespace Hue
25 {
27 {
28 public:
29  DimmableDevice(ID id, const String& name) : OnOffDevice(id, name)
30  {
31  }
32 
33  bool getAttribute(Attribute attr, unsigned& value) const override
34  {
35  switch(attr) {
36  case Attribute::bri:
37  value = bri;
38  return true;
39  default:
40  return OnOffDevice::getAttribute(attr, value);
41  }
42  }
43 
44  Status setAttribute(Attribute attr, unsigned value, Callback callback) override
45  {
46  switch(attr) {
47  case Attribute::bri:
48  this->bri = value;
49  return Status::success;
50  default:
51  return OnOffDevice::setAttribute(attr, value, callback);
52  }
53  }
54 
55 private:
56  uint8_t bri{1};
57 };
58 
59 } // namespace Hue
Definition: Bridge.h:29
bool getAttribute(Attribute attr, unsigned &value) const override
Get the (cached) device attribute value.
Definition: DimmableDevice.h:33
Definition: DimmableDevice.h:26
Status setAttribute(Attribute attr, unsigned value, Callback callback) override
Set a device attribute.
Definition: DimmableDevice.h:44
The String class.
Definition: WString.h:136
Status
Status of a setAttribute request.
Definition: Libraries/HueEmulator/src/include/Hue/Device.h:60
Definition: Delegate.h:20
The action was performed immediately without error.
DimmableDevice(ID id, const String &name)
Definition: DimmableDevice.h:29
bool getAttribute(Attribute attr, unsigned &value) const override
Get the (cached) device attribute value.
Definition: OnOffDevice.h:43
Attribute
Definition: Libraries/HueEmulator/src/include/Hue/Device.h:97
Definition: OnOffDevice.h:26
uint32_t ID
Definition: Libraries/HueEmulator/src/include/Hue/Device.h:95
Status setAttribute(Attribute attr, unsigned value, Callback callback) override
Set a device attribute.
Definition: OnOffDevice.h:54