.. _program_listing_file__tmp_ws_src_depthai-ros_depthai_bridge_include_depthai_bridge_TrackedFeaturesConverter.hpp: Program Listing for File TrackedFeaturesConverter.hpp ===================================================== |exhale_lsh| :ref:`Return to documentation for file ` (``/tmp/ws/src/depthai-ros/depthai_bridge/include/depthai_bridge/TrackedFeaturesConverter.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #pragma once #include #include #include #include #include "depthai/pipeline/datatype/TrackedFeatures.hpp" #include "rclcpp/time.hpp" namespace dai { namespace ros { class TrackedFeaturesConverter { public: // DetectionConverter() = default; TrackedFeaturesConverter(std::string frameName, bool getBaseDeviceTimestamp = false); ~TrackedFeaturesConverter(); void updateRosBaseTime(); void setUpdateRosBaseTimeOnToRosMsg(bool update = true) { _updateRosBaseTimeOnToRosMsg = update; } void toRosMsg(std::shared_ptr inFeatures, std::deque& featureMsgs); private: const std::string _frameName; std::chrono::time_point _steadyBaseTime; rclcpp::Time _rosBaseTime; bool _getBaseDeviceTimestamp; // For handling ROS time shifts and debugging int64_t _totalNsChange{0}; // Whether to update the ROS base time on each message conversion bool _updateRosBaseTimeOnToRosMsg{false}; }; } // namespace ros namespace rosBridge = ros; } // namespace dai