V6CctCommandHandler.cpp 1010 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #include <V6CctCommandHandler.h>
  2. bool V6CctCommandHandler::handlePreset(
  3. MiLightClient* client,
  4. uint8_t commandLsb,
  5. uint32_t commandArg)
  6. {
  7. return false;
  8. }
  9. bool V6CctCommandHandler::handleCommand(
  10. MiLightClient* client,
  11. uint32_t command,
  12. uint32_t commandArg)
  13. {
  14. const uint8_t cmd = command & 0xFF;
  15. const uint8_t arg = commandArg >> 24;
  16. if (cmd == V2_CCT_COMMAND_PREFIX) {
  17. switch (arg) {
  18. case V2_CCT_ON:
  19. client->updateStatus(ON);
  20. break;
  21. case V2_CCT_OFF:
  22. client->updateStatus(OFF);
  23. break;
  24. case V2_CCT_BRIGHTNESS_DOWN:
  25. client->decreaseBrightness();
  26. break;
  27. case V2_CCT_BRIGHTNESS_UP:
  28. client->increaseBrightness();
  29. break;
  30. case V2_CCT_TEMPERATURE_DOWN:
  31. client->decreaseTemperature();
  32. break;
  33. case V2_CCT_TEMPERATURE_UP:
  34. client->increaseTemperature();
  35. break;
  36. default:
  37. return false;
  38. }
  39. return true;
  40. }
  41. return false;
  42. }