diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..63b191c --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,37 @@ +cmake_minimum_required(VERSION 3.5) +project(micro_ros_msgs) + +# Default to C99 +if(NOT CMAKE_C_STANDARD) + set(CMAKE_C_STANDARD 99) +endif() + +# Default to C++14 +if(NOT CMAKE_CXX_STANDARD) + set(CMAKE_CXX_STANDARD 14) +endif() + +if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") + add_compile_options(-Wall -Wextra -Wpedantic) +endif() + +# find dependencies +find_package(ament_cmake REQUIRED) +find_package(rosidl_default_generators REQUIRED) +find_package(rosidl_typesupport_microxrcedds_c REQUIRED) + +if(BUILD_TESTING) + find_package(ament_lint_auto REQUIRED) + ament_lint_auto_find_test_dependencies() +endif() + +rosidl_generate_interfaces( + ${PROJECT_NAME} + "msg/Graph.msg" + "msg/Node.msg" + "msg/Entity.msg" +) + +ament_export_libraries() + +ament_package() diff --git a/msg/Entity.msg b/msg/Entity.msg new file mode 100644 index 0000000..8f2209b --- /dev/null +++ b/msg/Entity.msg @@ -0,0 +1,8 @@ +byte PUBLISHER=0 +byte SUBSCRIBER=1 +byte SERVICE_SERVER=2 +byte SERVICE_CLIENT=3 + +byte entity_type +string<=256 name +string<=256[] types diff --git a/msg/Graph.msg b/msg/Graph.msg new file mode 100644 index 0000000..85410ba --- /dev/null +++ b/msg/Graph.msg @@ -0,0 +1 @@ +Node[] nodes diff --git a/msg/Node.msg b/msg/Node.msg new file mode 100644 index 0000000..b881a68 --- /dev/null +++ b/msg/Node.msg @@ -0,0 +1,3 @@ +string<=256 node_namespace +string<=256 node_name +Entity[] entities diff --git a/package.xml b/package.xml new file mode 100644 index 0000000..f6a2b8a --- /dev/null +++ b/package.xml @@ -0,0 +1,23 @@ + + + + micro_ros_msgs + 0.0.1 + Definitions for the ROS 2 msgs entities information used by micro-ROS to leverage its functionality to the same level as ROS 2, by means of a dedicated graph manager + Jose Antonio Moral + Apache License 2.0 + + ament_cmake + + ament_lint_auto + ament_lint_common + + rosidl_default_generators + rosidl_typesupport_microxrcedds_c + rosidl_default_runtime + rosidl_interface_packages + + + ament_cmake + +