diff --git a/.github/workflows/ROS2-Eloquent.yaml b/.github/workflows/ROS2-Eloquent.yaml
index 569be44..be8acef 100644
--- a/.github/workflows/ROS2-Eloquent.yaml
+++ b/.github/workflows/ROS2-Eloquent.yaml
@@ -27,9 +27,11 @@ jobs:
- name: Install dependencies
run: |
source /opt/ros/eloquent/setup.bash
- sudo apt install -y python-rosdep
+ sudo apt install -y python-rosdep python3-vcstool
sudo rosdep init
rosdep update
+ cd ~/ros2_ws
+ vcs import src < src/color_names/dependency.repos
cd ~/ros2_ws/src
rosdep install -r -y --from-paths . --ignore-src
- name: Build packages
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5b85c5d..b615159 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -22,6 +22,8 @@ find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(std_msgs REQUIRED)
find_package(visualization_msgs REQUIRED)
+find_package(document_generator REQUIRED)
+include("${document_generator_DIR}/doxygen.cmake")
include_directories(
include
@@ -34,6 +36,7 @@ ament_target_dependencies(color_names
rclcpp
std_msgs
)
+add_document(color_names)
ament_export_interfaces(export_color_names HAS_LIBRARY_TARGET)
ament_export_libraries(color_names)
@@ -46,6 +49,7 @@ ament_target_dependencies(view_all
std_msgs
visualization_msgs
)
+add_document(view_all)
install(TARGETS
view_all
diff --git a/dependency.repos b/dependency.repos
new file mode 100644
index 0000000..959d65a
--- /dev/null
+++ b/dependency.repos
@@ -0,0 +1,5 @@
+repositories:
+ document_generator:
+ type: git
+ url: https://github.com/OUXT-Polaris/document_generator.git
+ version: master
\ No newline at end of file
diff --git a/package.xml b/package.xml
index a8c5f21..df9a9d7 100644
--- a/package.xml
+++ b/package.xml
@@ -20,6 +20,7 @@
std_msgs
visualization_msgs
rviz2
+ document_generator
diff --git a/src/color_names.cpp b/src/color_names.cpp
index 7e952f6..5bb56f2 100644
--- a/src/color_names.cpp
+++ b/src/color_names.cpp
@@ -4,6 +4,14 @@
namespace color_names
{
+/**
+ * @brief generate std_msgs::msg::ColorRGBA message from hsv values
+ * @param h hue
+ * @param s saturation
+ * @param v value
+ * @param alpha alpha value of the color
+ * @return std_msgs::msg::ColorRGBA
+ */
std_msgs::msg::ColorRGBA fromHsv(double h, double s, double v, double alpha)
{
std_msgs::msg::ColorRGBA color;
@@ -49,6 +57,12 @@ std_msgs::msg::ColorRGBA fromHsv(double h, double s, double v, double alpha)
return color;
}
+/**
+ * @brief generate std_msgs::msg::ColorRGBA message from color name
+ * @param preset_name the name of the color
+ * @param alpha alpha value of the color
+ * @return std_msgs::msg::ColorRGBA
+ */
std_msgs::msg::ColorRGBA makeColorMsg(std::string preset_name, double alpha)
{
std_msgs::msg::ColorRGBA c_msg;