Program Listing for File barcode_reader_node.hpp
↰ Return to documentation for file (include/zbar_ros/barcode_reader_node.hpp
)
#ifndef ZBAR_ROS__BARCODE_READER_NODE_HPP_
#define ZBAR_ROS__BARCODE_READER_NODE_HPP_
#include <string>
#include <unordered_map>
#include "rclcpp/rclcpp.hpp"
#include "rclcpp/timer.hpp"
#include "./zbar.h"
#include "sensor_msgs/msg/image.hpp"
#include "std_msgs/msg/string.hpp"
#include "zbar_ros_interfaces/msg/symbol.hpp"
namespace zbar_ros
{
class BarcodeReaderNode : public rclcpp::Node
{
public:
BarcodeReaderNode();
private:
void imageCb(sensor_msgs::msg::Image::ConstSharedPtr msg);
void cleanCb();
rclcpp::Subscription<sensor_msgs::msg::Image>::SharedPtr camera_sub_;
rclcpp::Publisher<zbar_ros_interfaces::msg::Symbol>::SharedPtr symbol_pub_;
rclcpp::Publisher<std_msgs::msg::String>::SharedPtr barcode_pub_; // DEPRECATED
zbar::ImageScanner scanner_;
rclcpp::TimerBase::SharedPtr clean_timer_;
std::mutex memory_mutex_;
std::unordered_map<std::string, rclcpp::Time> barcode_memory_;
double throttle_;
};
} // namespace zbar_ros
#endif // ZBAR_ROS__BARCODE_READER_NODE_HPP_