RgbPacketFormatter.h 916 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #include <PacketFormatter.h>
  2. #ifndef _RGB_PACKET_FORMATTER_H
  3. #define _RGB_PACKET_FORMATTER_H
  4. #define RGB_COMMAND_INDEX 4
  5. #define RGB_COLOR_INDEX 3
  6. enum MiLightRgbButton {
  7. RGB_OFF = 0x01,
  8. RGB_ON = 0x02,
  9. RGB_BRIGHTNESS_UP = 0x03,
  10. RGB_BRIGHTNESS_DOWN = 0x04,
  11. RGB_SPEED_UP = 0x05,
  12. RGB_SPEED_DOWN = 0x06,
  13. RGB_MODE_UP = 0x07,
  14. RGB_MODE_DOWN = 0x08
  15. };
  16. class RgbPacketFormatter : public PacketFormatter {
  17. public:
  18. RgbPacketFormatter()
  19. : PacketFormatter(6)
  20. { }
  21. virtual void updateStatus(MiLightStatus status, uint8_t groupId);
  22. virtual void increaseBrightness();
  23. virtual void decreaseBrightness();
  24. virtual void command(uint8_t command, uint8_t arg);
  25. virtual void updateHue(uint16_t value);
  26. virtual void updateColorRaw(uint8_t value);
  27. virtual void format(uint8_t const* packet, char* buffer);
  28. virtual void reset();
  29. };
  30. #endif