15#ifndef SEMANTIC_COMPONENTS__LED_RGB_DEVICE_HPP_
16#define SEMANTIC_COMPONENTS__LED_RGB_DEVICE_HPP_
21#include "semantic_components/semantic_component_command_interface.hpp"
22#include "std_msgs/msg/color_rgba.hpp"
24namespace semantic_components
41 const std::string & name,
const std::string & interface_r,
const std::string & interface_g,
42 const std::string & interface_b)
44 name, {{name +
"/" + interface_r}, {name +
"/" + interface_g}, {name +
"/" + interface_b}})
63 message.r < 0 || message.r > 1 || message.g < 0 || message.g > 1 || message.b < 0 ||
69 all_set &= command_interfaces_[0].get().set_value(
static_cast<double>(message.r));
70 all_set &= command_interfaces_[1].get().set_value(
static_cast<double>(message.g));
71 all_set &= command_interfaces_[2].get().set_value(
static_cast<double>(message.b));
Definition led_rgb_device.hpp:27
bool set_values_from_message(const std_msgs::msg::ColorRGBA &message) override
Set LED states from ColorRGBA message.
Definition led_rgb_device.hpp:60
LedRgbDevice(const std::string &name, const std::string &interface_r, const std::string &interface_g, const std::string &interface_b)
Constructor for an LED RGB device with interface names set based on device name.
Definition led_rgb_device.hpp:40
Definition semantic_component_command_interface.hpp:28