Program Listing for File PointCloudVisualization.hpp

Return to documentation for file (/tmp/ws/src/grid_map/grid_map_visualization/include/grid_map_visualization/visualizations/PointCloudVisualization.hpp)

/*
 * PointCloudVisualization.hpp
 *
 *  Created on: Sep 11, 2014
 *      Author: Péter Fankhauser
 *   Institute: ETH Zurich, ANYbotics
 */

#ifndef GRID_MAP_VISUALIZATION__VISUALIZATIONS__POINTCLOUDVISUALIZATION_HPP_
#define GRID_MAP_VISUALIZATION__VISUALIZATIONS__POINTCLOUDVISUALIZATION_HPP_

#include <grid_map_core/GridMap.hpp>
#include <sensor_msgs/msg/point_cloud2.hpp>

// ROS
#include <rclcpp/rclcpp.hpp>

#include <string>

#include "grid_map_visualization/visualizations/VisualizationBase.hpp"

namespace grid_map_visualization
{

class PointCloudVisualization : public VisualizationBase
{
public:
  explicit PointCloudVisualization(const std::string & name, rclcpp::Node::SharedPtr nodePtr);

  virtual ~PointCloudVisualization();

  bool readParameters() override;

  bool initialize() override;

  bool visualize(const grid_map::GridMap & map) override;

private:
  std::string layer_;

  rclcpp::Publisher<sensor_msgs::msg::PointCloud2>::SharedPtr publisher_;
};

}  // namespace grid_map_visualization
#endif  // GRID_MAP_VISUALIZATION__VISUALIZATIONS__POINTCLOUDVISUALIZATION_HPP_