Skip to content

Commit 0efe311

Browse files
authored
ROS2 Version of MOCHA
Migrate MOCHA to ROS 2
2 parents 719cc7a + f3dbd07 commit 0efe311

68 files changed

Lines changed: 3667 additions & 2823 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

interface_rajant/CMakeLists.txt

Lines changed: 33 additions & 192 deletions
Original file line numberDiff line numberDiff line change
@@ -1,203 +1,44 @@
1-
cmake_minimum_required(VERSION 2.8.3)
1+
cmake_minimum_required(VERSION 3.8)
22
project(interface_rajant)
33

4-
## Compile as C++11, supported in ROS Kinetic and newer
5-
# add_compile_options(-std=c++11)
4+
if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
5+
add_compile_options(-Wall -Wextra -Wpedantic)
6+
endif()
67

7-
## Find catkin macros and libraries
8-
## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz)
9-
## is used, also find other catkin packages
10-
find_package(catkin REQUIRED COMPONENTS
11-
rospy
12-
std_msgs
13-
)
14-
15-
## System dependencies are found with CMake's conventions
16-
# find_package(Boost REQUIRED COMPONENTS system)
17-
18-
19-
## Uncomment this if the package has a setup.py. This macro ensures
20-
## modules and global scripts declared therein get installed
21-
## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html
22-
# catkin_python_setup()
23-
24-
################################################
25-
## Declare ROS messages, services and actions ##
26-
################################################
27-
28-
## To declare and build messages, services or actions from within this
29-
## package, follow these steps:
30-
## * Let MSG_DEP_SET be the set of packages whose message types you use in
31-
## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
32-
## * In the file package.xml:
33-
## * add a build_depend tag for "message_generation"
34-
## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET
35-
## * If MSG_DEP_SET isn't empty the following dependency has been pulled in
36-
## but can be declared for certainty nonetheless:
37-
## * add a exec_depend tag for "message_runtime"
38-
## * In this file (CMakeLists.txt):
39-
## * add "message_generation" and every package in MSG_DEP_SET to
40-
## find_package(catkin REQUIRED COMPONENTS ...)
41-
## * add "message_runtime" and every package in MSG_DEP_SET to
42-
## catkin_package(CATKIN_DEPENDS ...)
43-
## * uncomment the add_*_files sections below as needed
44-
## and list every .msg/.srv/.action file to be processed
45-
## * uncomment the generate_messages entry below
46-
## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...)
47-
48-
## Generate messages in the 'msg' folder
49-
# add_message_files(
50-
# FILES
51-
# Message1.msg
52-
# Message2.msg
53-
# )
54-
55-
## Generate services in the 'srv' folder
56-
# add_service_files(
57-
# FILES
58-
# Service1.srv
59-
# Service2.srv
60-
# )
61-
62-
## Generate actions in the 'action' folder
63-
# add_action_files(
64-
# FILES
65-
# Action1.action
66-
# Action2.action
67-
# )
68-
69-
## Generate added messages and services with any dependencies listed here
70-
# generate_messages(
71-
# DEPENDENCIES
72-
# std_msgs
73-
# )
74-
75-
################################################
76-
## Declare ROS dynamic reconfigure parameters ##
77-
################################################
78-
79-
## To declare and build dynamic reconfigure parameters within this
80-
## package, follow these steps:
81-
## * In the file package.xml:
82-
## * add a build_depend and a exec_depend tag for "dynamic_reconfigure"
83-
## * In this file (CMakeLists.txt):
84-
## * add "dynamic_reconfigure" to
85-
## find_package(catkin REQUIRED COMPONENTS ...)
86-
## * uncomment the "generate_dynamic_reconfigure_options" section below
87-
## and list every .cfg file to be processed
88-
89-
## Generate dynamic reconfigure parameters in the 'cfg' folder
90-
# generate_dynamic_reconfigure_options(
91-
# cfg/DynReconf1.cfg
92-
# cfg/DynReconf2.cfg
93-
# )
94-
95-
###################################
96-
## catkin specific configuration ##
97-
###################################
98-
## The catkin_package macro generates cmake config files for your package
99-
## Declare things to be passed to dependent projects
100-
## INCLUDE_DIRS: uncomment this if your package contains header files
101-
## LIBRARIES: libraries you create in this project that dependent projects also need
102-
## CATKIN_DEPENDS: catkin_packages dependent projects also need
103-
## DEPENDS: system dependencies of this project that dependent projects also need
104-
catkin_package(
105-
# INCLUDE_DIRS include
106-
# LIBRARIES interface_rajant
107-
# CATKIN_DEPENDS rospy std_msgs
108-
# DEPENDS system_lib
109-
)
8+
# find dependencies
9+
find_package(ament_cmake REQUIRED)
10+
find_package(ament_cmake_python REQUIRED)
11+
find_package(rclpy REQUIRED)
11012

111-
###########
112-
## Build ##
113-
###########
13+
# Install Python modules
14+
ament_python_install_package(${PROJECT_NAME})
11415

115-
## Specify additional locations of header files
116-
## Your package locations should be listed before other locations
117-
include_directories(
118-
# include
119-
${catkin_INCLUDE_DIRS}
120-
)
121-
122-
## Declare a C++ library
123-
# add_library(${PROJECT_NAME}
124-
# src/${PROJECT_NAME}/interface_rajant.cpp
125-
# )
126-
127-
## Add cmake target dependencies of the library
128-
## as an example, code may need to be generated before libraries
129-
## either from message generation or dynamic reconfigure
130-
# add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
131-
132-
## Declare a C++ executable
133-
## With catkin_make all packages are built within a single CMake context
134-
## The recommended prefix ensures that target names across packages don't collide
135-
# add_executable(${PROJECT_NAME}_node src/interface_rajant_node.cpp)
136-
137-
## Rename C++ executable without prefix
138-
## The above recommended prefix causes long target names, the following renames the
139-
## target back to the shorter version for ease of user use
140-
## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node"
141-
# set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "")
142-
143-
## Add cmake target dependencies of the executable
144-
## same as for the library above
145-
# add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
146-
147-
## Specify libraries to link a library or executable target against
148-
# target_link_libraries(${PROJECT_NAME}_node
149-
# ${catkin_LIBRARIES}
150-
# )
151-
152-
#############
153-
## Install ##
154-
#############
155-
156-
# all install targets should use catkin DESTINATION variables
157-
# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html
158-
159-
## Mark executable scripts (Python etc.) for installation
160-
## in contrast to setup.py, you can choose the destination
16+
# Install executables
16117
install(PROGRAMS
162-
scripts/rajant_listener.py
163-
scripts/rajant_listener_new.py
164-
scripts/rajant_log.py
165-
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
18+
interface_rajant/rajant_peer_rssi.py
19+
DESTINATION lib/${PROJECT_NAME}
16620
)
16721

168-
## Mark executables and/or libraries for installation
169-
# install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node
170-
# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
171-
# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
172-
# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
173-
# )
174-
175-
## Mark cpp header files for installation
176-
# install(DIRECTORY include/${PROJECT_NAME}/
177-
# DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}
178-
# FILES_MATCHING PATTERN "*.h"
179-
# PATTERN ".svn" EXCLUDE
180-
# )
181-
182-
## Mark other files for installation (e.g. launch and bag files, etc.)
183-
install(DIRECTORY
184-
launch
185-
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
22+
# Install launch files
23+
install(DIRECTORY launch/
24+
DESTINATION share/${PROJECT_NAME}/launch
18625
)
187-
install(DIRECTORY
188-
scripts/thirdParty
189-
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/scripts
190-
)
191-
192-
#############
193-
## Testing ##
194-
#############
19526

196-
## Add gtest based cpp test target and link libraries
197-
# catkin_add_gtest(${PROJECT_NAME}-test test/test_interface_rajant.cpp)
198-
# if(TARGET ${PROJECT_NAME}-test)
199-
# target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME})
200-
# endif()
27+
# Install thirdParty directory (contains Java JAR file)
28+
install(DIRECTORY thirdParty/
29+
DESTINATION share/${PROJECT_NAME}/thirdParty
30+
)
20131

202-
## Add folders to be run by python nosetests
203-
# catkin_add_nosetests(test)
32+
if(BUILD_TESTING)
33+
find_package(ament_lint_auto REQUIRED)
34+
# the following line skips the linter which checks for copyrights
35+
# comment the line when a copyright and license is added to all source files
36+
set(ament_cmake_copyright_FOUND TRUE)
37+
# the following line skips cpplint (only works in a git repo)
38+
# comment the line when this package is in a git repo and when
39+
# a copyright and license is added to all source files
40+
set(ament_cmake_cpplint_FOUND TRUE)
41+
ament_lint_auto_find_test_dependencies()
42+
endif()
43+
44+
ament_package()

interface_rajant/interface_rajant/__init__.py

Whitespace-only changes.

0 commit comments

Comments
 (0)