YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
Ros2RGBDConversionUtils.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2023 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5
6#ifndef ROS2_RGBD_CONVERSION_UTILS_H
7#define ROS2_RGBD_CONVERSION_UTILS_H
8
9#include <iostream>
10#include <cstring>
11
12#include <yarp/sig/all.h>
13#include <yarp/sig/Matrix.h>
14#include <yarp/os/Stamp.h>
15#include <yarp/os/Property.h>
16
17#include <rclcpp/rclcpp.hpp>
18#include <sensor_msgs/msg/image.hpp>
19#include <sensor_msgs/msg/camera_info.hpp>
20#include <std_msgs/msg/header.hpp>
21
22#include "ros2PixelCode.h"
23
24
25constexpr double ONE_BILLION = 1000000000;
27
28namespace yarp {
29 namespace dev {
30 namespace Ros2RGBDConversionUtils {
31
32 void convertTimeStampRos2ToYarp(const std_msgs::msg::Header& ros_stamp,
33 yarp::os::Stamp& yarp_stamp);
34 void convertTimeStampYarpToRos2(const yarp::os::Stamp& yarp_stamp,
35 std_msgs::msg::Header& ros_stamp);
36
37 void convertRGBImageRos2ToYarpFlexImage(sensor_msgs::msg::Image::SharedPtr ros_image_src,
39 void convertDepthImageRos2ToYarpImageOf(sensor_msgs::msg::Image::SharedPtr ros_image_src,
41
42 void updateStamp(sensor_msgs::msg::CameraInfo::SharedPtr ros_camera_info_src,
43 std::string& frame_id_dest,
44 yarp::os::Stamp& yarp_stamp);
45
47
48 void deepCopyImageOf(const DepthImage& src, DepthImage& dest);
49} // namespace Ros2RGBDConversionUtils
50} // namespace dev
51} // namespace yarp
52
53#endif //ROS2_RGBD_CONVERSION_UTILS_H
contains the definition of a Matrix type
yarp::sig::ImageOf< yarp::sig::PixelFloat > DepthImage
constexpr double ONE_BILLION
An abstraction for a time stamp and/or sequence number.
Definition Stamp.h:21
Image class with user control of representation details.
Definition Image.h:363
Typed image class.
Definition Image.h:605
void deepCopyImageOf(const DepthImage &src, DepthImage &dest)
void updateStamp(sensor_msgs::msg::CameraInfo::SharedPtr ros_camera_info_src, std::string &frame_id_dest, yarp::os::Stamp &yarp_stamp)
void convertTimeStampRos2ToYarp(const std_msgs::msg::Header &ros_stamp, yarp::os::Stamp &yarp_stamp)
void convertDepthImageRos2ToYarpImageOf(sensor_msgs::msg::Image::SharedPtr ros_image_src, yarp::sig::ImageOf< yarp::sig::PixelFloat > &dest)
void convertRGBImageRos2ToYarpFlexImage(sensor_msgs::msg::Image::SharedPtr ros_image_src, yarp::sig::FlexImage &dest)
void convertTimeStampYarpToRos2(const yarp::os::Stamp &yarp_stamp, std_msgs::msg::Header &ros_stamp)
void deepCopyFlexImage(const yarp::sig::FlexImage &src, yarp::sig::FlexImage &dest)
The main, catch-all namespace for YARP.
Definition dirs.h:16