diff --git a/rosbag2/CMakeLists.txt b/rosbag2/CMakeLists.txt index 930273476..6fbccde5f 100644 --- a/rosbag2/CMakeLists.txt +++ b/rosbag2/CMakeLists.txt @@ -71,7 +71,7 @@ install( ament_export_include_directories(include) ament_export_libraries(${PROJECT_NAME}) -ament_export_dependencies(rosbag2_storage) +ament_export_dependencies(rosbag2_storage rosidl_typesupport_introspection_cpp) if(BUILD_TESTING) find_package(ament_cmake_gmock REQUIRED) diff --git a/rosbag2/src/rosbag2/converter.cpp b/rosbag2/src/rosbag2/converter.cpp index 281a23ed5..9b55f2ee9 100644 --- a/rosbag2/src/rosbag2/converter.cpp +++ b/rosbag2/src/rosbag2/converter.cpp @@ -64,10 +64,10 @@ std::shared_ptr Converter::convert( std::shared_ptr allocated_ros_message = allocate_ros2_message(introspection_ts); - input_converter_->deserialize(allocated_ros_message, message, ts); + input_converter_->deserialize(message, ts, allocated_ros_message); auto output_message = std::make_shared(); output_message->serialized_data = rosbag2_storage::make_empty_serialized_message(0); - output_converter_->serialize(output_message, allocated_ros_message, ts); + output_converter_->serialize(allocated_ros_message, ts, output_message); return output_message; } diff --git a/rosbag2/test/rosbag2/mock_converter.hpp b/rosbag2/test/rosbag2/mock_converter.hpp index 1ff16b8d1..bcf8cacc5 100644 --- a/rosbag2/test/rosbag2/mock_converter.hpp +++ b/rosbag2/test/rosbag2/mock_converter.hpp @@ -27,15 +27,15 @@ class MockConverter : public rosbag2::SerializationFormatConverterInterface public: MOCK_METHOD3(deserialize, void( - std::shared_ptr, std::shared_ptr, - const rosidl_message_type_support_t *)); + const rosidl_message_type_support_t *, + std::shared_ptr)); MOCK_METHOD3(serialize, void( - std::shared_ptr, std::shared_ptr, - const rosidl_message_type_support_t *)); + const rosidl_message_type_support_t *, + std::shared_ptr)); }; #endif // ROSBAG2__MOCK_CONVERTER_HPP_ diff --git a/rosbag2_converter_default_plugins/test/rosbag2_converter_default_plugins/cdr/test_cdr_converter.cpp b/rosbag2_converter_default_plugins/test/rosbag2_converter_default_plugins/cdr/test_cdr_converter.cpp index 5c30add7e..efa487864 100644 --- a/rosbag2_converter_default_plugins/test/rosbag2_converter_default_plugins/cdr/test_cdr_converter.cpp +++ b/rosbag2_converter_default_plugins/test/rosbag2_converter_default_plugins/cdr/test_cdr_converter.cpp @@ -75,7 +75,7 @@ TEST_F(CdrConverterTestFixture, deserialize_converts_cdr_into_ros_message_for_pr auto ros_message = make_shared_ros_message(); test_msgs::msg::Primitives primitive_test_msg; ros_message->message = &primitive_test_msg; - auto type_support = rosbag2::get_typesupport("test_msgs/Primitives"); + auto type_support = rosbag2::get_typesupport("test_msgs/Primitives", "rosidl_typesupport_cpp"); converter_->deserialize(serialized_message, type_support, ros_message); @@ -96,7 +96,7 @@ TEST_F(CdrConverterTestFixture, serialize_converts_ros_message_into_cdr_for_prim auto serialized_message = std::make_shared(); serialized_message->serialized_data = memory_management_->make_initialized_message(); - auto type_support = rosbag2::get_typesupport("test_msgs/Primitives"); + auto type_support = rosbag2::get_typesupport("test_msgs/Primitives", "rosidl_typesupport_cpp"); converter_->serialize(ros_message, type_support, serialized_message); @@ -121,7 +121,8 @@ TEST_F(CdrConverterTestFixture, deserialize_converts_cdr_into_ros_message_for_st auto ros_message = make_shared_ros_message(); test_msgs::msg::StaticArrayPrimitives primitive_test_msg; ros_message->message = &primitive_test_msg; - auto type_support = rosbag2::get_typesupport("test_msgs/StaticArrayPrimitives"); + auto type_support = rosbag2::get_typesupport( + "test_msgs/StaticArrayPrimitives", "rosidl_typesupport_cpp"); converter_->deserialize(serialized_message, type_support, ros_message); @@ -142,7 +143,8 @@ TEST_F(CdrConverterTestFixture, serialize_converts_ros_message_into_cdr_for_stat auto serialized_message = std::make_shared(); serialized_message->serialized_data = memory_management_->make_initialized_message(); - auto type_support = rosbag2::get_typesupport("test_msgs/StaticArrayPrimitives"); + auto type_support = rosbag2::get_typesupport( + "test_msgs/StaticArrayPrimitives", "rosidl_typesupport_cpp"); converter_->serialize(ros_message, type_support, serialized_message); @@ -172,7 +174,8 @@ TEST_F(CdrConverterTestFixture, deserialize_converts_cdr_into_ros_message_for_dy auto ros_message = make_shared_ros_message(); test_msgs::msg::DynamicArrayNested dynamic_nested_message; ros_message->message = &dynamic_nested_message; - auto type_support = rosbag2::get_typesupport("test_msgs/DynamicArrayNested"); + auto type_support = rosbag2::get_typesupport( + "test_msgs/DynamicArrayNested", "rosidl_typesupport_cpp"); converter_->deserialize(serialized_message, type_support, ros_message); @@ -198,7 +201,8 @@ TEST_F(CdrConverterTestFixture, serialize_converts_ros_message_into_cdr_for_dyna auto serialized_message = std::make_shared(); serialized_message->serialized_data = memory_management_->make_initialized_message(); - auto type_support = rosbag2::get_typesupport("test_msgs/DynamicArrayNested"); + auto type_support = rosbag2::get_typesupport( + "test_msgs/DynamicArrayNested", "rosidl_typesupport_cpp"); converter_->serialize(ros_message, type_support, serialized_message);