ros_scanner_node.h
Go to the documentation of this file.
1 // Copyright (c) 2019-2020 Pilz GmbH & Co. KG
2 //
3 // This program is free software: you can redistribute it and/or modify
4 // it under the terms of the GNU Lesser General Public License as published by
5 // the Free Software Foundation, either version 3 of the License, or
6 // (at your option) any later version.
7 //
8 // This program is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 // GNU Lesser General Public License for more details.
12 //
13 // You should have received a copy of the GNU Lesser General Public License
14 // along with this program. If not, see <https://www.gnu.org/licenses/>.
15 
16 #ifndef PSEN_SCAN_ROS_SCANNER_NODE_H
17 #define PSEN_SCAN_ROS_SCANNER_NODE_H
18 
19 #include "psen_scan/scanner.h"
20 #include <sensor_msgs/LaserScan.h>
21 #include <string>
22 #include <ros/ros.h>
23 
24 namespace psen_scan
25 {
31 {
32 public:
34  const std::string& topic,
35  const std::string& frame_id,
36  const uint16_t& skip,
37  const Degree& x_axis_rotation,
38  std::unique_ptr<vScanner> scanner);
40  void processingLoop();
41 
42 private:
45  std::string frame_id_;
46  uint16_t skip_;
47  std::unique_ptr<vScanner> scanner_;
49 };
50 } // namespace psen_scan
51 
52 #endif // PSEN_SCAN_ROS_SCANNER_NODE_H
Class implements a ROS-Node for the PSENscan safety laser scanner.
Class to model angles in degrees from user&#39;s perspective.
Class to hold the data for one laserscan without depencies to ROS.
Definition: laserscan.h:29
struct psen_scan::LaserScan LaserScan
Class to hold the data for one laserscan without depencies to ROS.
sensor_msgs::LaserScan buildRosMessage(const LaserScan &laserscan)
Creates a ROS message from an LaserScan, which contains one scanning round.
ROSScannerNode(ros::NodeHandle &nh, const std::string &topic, const std::string &frame_id, const uint16_t &skip, const Degree &x_axis_rotation, std::unique_ptr< vScanner > scanner)
Construct a new ROSScannerNode::ROSScannerNode object.
void processingLoop()
endless loop for processing incoming UDP data from the laser scanner
std::unique_ptr< vScanner > scanner_


psen_scan
Author(s):
autogenerated on Mon Feb 28 2022 23:16:20