Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add generic publisher and generic subscription for serialized messages (
ros2#1452) * Copying files from rosbag2 The generic_* files are from rosbag2_transport typesupport_helpers incl. test is from rosbag2_cpp memory_management.hpp is from rosbag2_test_common test_pubsub.cpp was renamed from test_rosbag2_node.cpp from rosbag2_transport Signed-off-by: Nikolai Morin <[email protected]> * Rebrand into rclcpp_generic Add package.xml, CMakeLists.txt, Doxyfile, README.md and CHANGELOG.rst Rename namespaces Make GenericPublisher and GenericSubscription self-contained by storing shared library New create() methods that return shared pointers Add docstrings Include only what is needed Make linters & tests pass Signed-off-by: Nikolai Morin <[email protected]> * Review feedback * Delete CHANGELOG.rst * Enable cppcheck * Remove all references to rosbag2/ros2bag Signed-off-by: Nikolai Morin <[email protected]> * Move rclpp_generic into rclcpp Signed-off-by: Nikolai Morin <[email protected]> * Rename namespace rclcpp_generic to rclcpp::generic Signed-off-by: Nikolai Morin <[email protected]> * Free 'create' functions instead of static functions in class Signed-off-by: Nikolai Morin <[email protected]> * Remove 'generic' subdirectory and namespace hierarchy Signed-off-by: Nikolai Morin <[email protected]> * Order includes according to style guide Signed-off-by: Nikolai Morin <[email protected]> * Remove extra README.md Signed-off-by: Nikolai Morin <[email protected]> * Also add brief to class docs Signed-off-by: Nikolai Morin <[email protected]> * Make ament_index_cpp a build_depend Signed-off-by: Nikolai Morin <[email protected]> * Add to rclcpp.hpp Signed-off-by: Nikolai Morin <[email protected]> * Remove memory_management, use rclcpp::SerializedMessage in GenericPublisher::publish Signed-off-by: Nikolai Morin <[email protected]> * Clean up the typesupport_helpers Signed-off-by: Nikolai Morin <[email protected]> * Use make_shared, add UnimplementedError Signed-off-by: Nikolai Morin <[email protected]> * Add more comments, make member variable private, remove unnecessary include Signed-off-by: Nikolai Morin <[email protected]> * Apply suggestions from code review Co-authored-by: William Woodall <[email protected]> Signed-off-by: Nikolai Morin <[email protected]> * Rename test Signed-off-by: Nikolai Morin <[email protected]> * Update copyright and remove ament_target_dependencies for test Signed-off-by: Nikolai Morin <[email protected]> * Accept PublisherOptions and SubscriptionOptions Signed-off-by: Nikolai Morin <[email protected]> * Remove target_include_directories Signed-off-by: Nikolai Morin <[email protected]> * Add explanatory comment to SubscriptionBase Signed-off-by: Nikolai Morin <[email protected]> * Use kSolibPrefix and kSolibExtension from rcpputils Signed-off-by: Nikolai Morin <[email protected]> * Fix downstream build failure by making ament_index_cpp a build_export_depend Signed-off-by: Nikolai Morin <[email protected]> * Use path_for_library(), fix documentation nitpicks Signed-off-by: Nikolai Morin <[email protected]> * Improve error handling in get_typesupport_handle Signed-off-by: Nikolai Morin <[email protected]> * Accept SubscriptionOptions in GenericSubscription Signed-off-by: Nikolai Morin <[email protected]> * Make use of PublisherOptions in GenericPublisher Signed-off-by: Nikolai Morin <[email protected]> * Document typesupport_helpers Signed-off-by: Nikolai Morin <[email protected]> * Improve documentation Signed-off-by: Nikolai Morin <[email protected]> * Use std::function instead of function pointer Co-authored-by: William Woodall <[email protected]> Signed-off-by: Nikolai Morin <[email protected]> * Minimize vertical whitespace Signed-off-by: Nikolai Morin <[email protected]> * Add TODO for callback with message info Signed-off-by: Nikolai Morin <[email protected]> * Link issue in TODO Signed-off-by: Nikolai Morin <[email protected]> * Add missing include for functional Signed-off-by: nnmm <[email protected]> * Fix compilation Signed-off-by: Jacob Perron <[email protected]> * Fix lint Signed-off-by: Jacob Perron <[email protected]> * Address review comments (#1) * fix redefinition of default template arguments Signed-off-by: Karsten Knese <[email protected]> * address review comments Signed-off-by: Karsten Knese <[email protected]> * rename test executable Signed-off-by: Karsten Knese <[email protected]> * add functionality to lifecycle nodes Signed-off-by: Karsten Knese <[email protected]> * Refactor typesupport helpers * Make extract_type_identifier function private * Remove unused extract_type_and_package function * Update unit tests Signed-off-by: Jacob Perron <[email protected]> * Remove note about ament from classes This comment only applies to the free functions. Signed-off-by: Jacob Perron <[email protected]> * Fix formatting Co-authored-by: Karsten Knese <[email protected]> * Fix warning Possible loss of data from double to rcutils_duration_value_t Signed-off-by: Jacob Perron <[email protected]> * Add missing visibility macros Signed-off-by: Jacob Perron <[email protected]> Co-authored-by: William Woodall <[email protected]> Co-authored-by: Jacob Perron <[email protected]> Co-authored-by: Karsten Knese <[email protected]>
- Loading branch information