Public Member Functions | Protected Attributes | List of all members
HectorMappingRos Class Reference

#include <HectorMappingRos.h>

Public Member Functions

 HectorMappingRos ()
 
void initialPoseCallback (const geometry_msgs::PoseWithCovarianceStampedConstPtr &msg)
 
bool mapCallback (nav_msgs::GetMap::Request &req, nav_msgs::GetMap::Response &res)
 
bool pauseMapCallback (std_srvs::SetBool::Request &req, std_srvs::SetBool::Response &res)
 
void publishMap (MapPublisherContainer &map_, const hectorslam::GridMap &gridMap, ros::Time timestamp, MapLockerInterface *mapMutex=0)
 
void publishMapLoop (double p_map_pub_period_)
 
void publishTransform ()
 
void publishTransformLoop (double p_transform_pub_period_)
 
bool resetMapCallback (std_srvs::Trigger::Request &req, std_srvs::Trigger::Response &res)
 
void resetPose (const geometry_msgs::Pose &pose)
 
bool restartHectorCallback (hector_mapping::ResetMapping::Request &req, hector_mapping::ResetMapping::Response &res)
 
void rosLaserScanToDataContainer (const sensor_msgs::LaserScan &scan, hectorslam::DataContainer &dataContainer, float scaleToMap)
 
void rosPointCloudToDataContainer (const sensor_msgs::PointCloud &pointCloud, const tf::StampedTransform &laserTransform, hectorslam::DataContainer &dataContainer, float scaleToMap)
 
void scanCallback (const sensor_msgs::LaserScan &scan)
 
void setServiceGetMapData (nav_msgs::GetMap::Response &map_, const hectorslam::GridMap &gridMap)
 
void staticMapCallback (const nav_msgs::OccupancyGrid &map)
 
void sysMsgCallback (const std_msgs::String &string)
 
void toggleMappingPause (bool pause)
 
 ~HectorMappingRos ()
 

Protected Attributes

HectorDebugInfoProviderdebugInfoProvider
 
HectorDrawingshectorDrawings
 
Eigen::Vector3f initial_pose_
 
tf::MessageFilter< geometry_msgs::PoseWithCovarianceStamped > * initial_pose_filter_
 
bool initial_pose_set_
 
message_filters::Subscriber< geometry_msgs::PoseWithCovarianceStamped > * initial_pose_sub_
 
sensor_msgs::PointCloud laser_point_cloud_
 
hectorslam::DataContainer laserScanContainer
 
int lastGetMapUpdateIndex
 
ros::Time lastMapPublishTime
 
ros::Time lastScanTime
 
Eigen::Vector3f lastSlamPose
 
boost::thread * map__publish_thread_
 
tf::Transform map_to_odom_
 
std::vector< MapPublisherContainermapPubContainer
 
ros::Subscriber mapSubscriber_
 
ros::NodeHandle node_
 
ros::Publisher odometryPublisher_
 
bool p_advertise_map_service_
 
std::string p_base_frame_
 
float p_laser_z_max_value_
 
float p_laser_z_min_value_
 
std::string p_map_frame_
 
int p_map_multi_res_levels_
 
double p_map_pub_period_
 
double p_map_resolution_
 
int p_map_size_
 
double p_map_start_x_
 
double p_map_start_y_
 
double p_map_update_angle_threshold_
 
double p_map_update_distance_threshold_
 
bool p_map_with_known_poses_
 
std::string p_odom_frame_
 
std::string p_pose_update_topic_
 
bool p_pub_debug_output_
 
bool p_pub_drawings
 
bool p_pub_map_odom_transform_
 
bool p_pub_map_scanmatch_transform_
 
bool p_pub_odometry_
 
int p_scan_subscriber_queue_size_
 
std::string p_scan_topic_
 
float p_sqr_laser_max_dist_
 
float p_sqr_laser_min_dist_
 
std::string p_sys_msg_topic_
 
std::string p_tf_map_scanmatch_transform_frame_name_
 
bool p_timing_output_
 
std::string p_twist_update_topic_
 
double p_update_factor_free_
 
double p_update_factor_occupied_
 
bool p_use_tf_pose_start_estimate_
 
bool p_use_tf_scan_transformation_
 
bool pause_scan_processing_
 
PoseInfoContainer poseInfoContainer_
 
ros::Publisher posePublisher_
 
ros::Publisher poseUpdatePublisher_
 
laser_geometry::LaserProjection projector_
 
ros::ServiceServer reset_map_service_
 
ros::ServiceServer restart_hector_service_
 
ros::Publisher scan_point_cloud_publisher_
 
ros::Subscriber scanSubscriber_
 
hectorslam::HectorSlamProcessorslamProcessor
 
ros::Subscriber sysMsgSubscriber_
 
tf::TransformListener tf_
 
tf::TransformBroadcastertfB_
 
ros::ServiceServer toggle_scan_processing_service_
 
ros::Publisher twistUpdatePublisher_
 

Detailed Description

Definition at line 71 of file HectorMappingRos.h.

Constructor & Destructor Documentation

◆ HectorMappingRos()

HectorMappingRos::HectorMappingRos ( )

Definition at line 46 of file HectorMappingRos.cpp.

◆ ~HectorMappingRos()

HectorMappingRos::~HectorMappingRos ( )

Definition at line 218 of file HectorMappingRos.cpp.

Member Function Documentation

◆ initialPoseCallback()

void HectorMappingRos::initialPoseCallback ( const geometry_msgs::PoseWithCovarianceStampedConstPtr &  msg)

Definition at line 602 of file HectorMappingRos.cpp.

◆ mapCallback()

bool HectorMappingRos::mapCallback ( nav_msgs::GetMap::Request &  req,
nav_msgs::GetMap::Response &  res 
)

Definition at line 394 of file HectorMappingRos.cpp.

◆ pauseMapCallback()

bool HectorMappingRos::pauseMapCallback ( std_srvs::SetBool::Request &  req,
std_srvs::SetBool::Response &  res 
)

Definition at line 427 of file HectorMappingRos.cpp.

◆ publishMap()

void HectorMappingRos::publishMap ( MapPublisherContainer map_,
const hectorslam::GridMap gridMap,
ros::Time  timestamp,
MapLockerInterface mapMutex = 0 
)

Definition at line 435 of file HectorMappingRos.cpp.

◆ publishMapLoop()

void HectorMappingRos::publishMapLoop ( double  p_map_pub_period_)

Definition at line 577 of file HectorMappingRos.cpp.

◆ publishTransform()

void HectorMappingRos::publishTransform ( )

◆ publishTransformLoop()

void HectorMappingRos::publishTransformLoop ( double  p_transform_pub_period_)

◆ resetMapCallback()

bool HectorMappingRos::resetMapCallback ( std_srvs::Trigger::Request &  req,
std_srvs::Trigger::Response &  res 
)

Definition at line 402 of file HectorMappingRos.cpp.

◆ resetPose()

void HectorMappingRos::resetPose ( const geometry_msgs::Pose pose)

Definition at line 621 of file HectorMappingRos.cpp.

◆ restartHectorCallback()

bool HectorMappingRos::restartHectorCallback ( hector_mapping::ResetMapping::Request &  req,
hector_mapping::ResetMapping::Response &  res 
)

Definition at line 410 of file HectorMappingRos.cpp.

◆ rosLaserScanToDataContainer()

void HectorMappingRos::rosLaserScanToDataContainer ( const sensor_msgs::LaserScan &  scan,
hectorslam::DataContainer dataContainer,
float  scaleToMap 
)

Definition at line 483 of file HectorMappingRos.cpp.

◆ rosPointCloudToDataContainer()

void HectorMappingRos::rosPointCloudToDataContainer ( const sensor_msgs::PointCloud &  pointCloud,
const tf::StampedTransform laserTransform,
hectorslam::DataContainer dataContainer,
float  scaleToMap 
)

Definition at line 509 of file HectorMappingRos.cpp.

◆ scanCallback()

void HectorMappingRos::scanCallback ( const sensor_msgs::LaserScan &  scan)

Definition at line 235 of file HectorMappingRos.cpp.

◆ setServiceGetMapData()

void HectorMappingRos::setServiceGetMapData ( nav_msgs::GetMap::Response &  map_,
const hectorslam::GridMap gridMap 
)

Definition at line 544 of file HectorMappingRos.cpp.

◆ staticMapCallback()

void HectorMappingRos::staticMapCallback ( const nav_msgs::OccupancyGrid &  map)

Definition at line 597 of file HectorMappingRos.cpp.

◆ sysMsgCallback()

void HectorMappingRos::sysMsgCallback ( const std_msgs::String &  string)

Definition at line 383 of file HectorMappingRos.cpp.

◆ toggleMappingPause()

void HectorMappingRos::toggleMappingPause ( bool  pause)

Definition at line 607 of file HectorMappingRos.cpp.

Member Data Documentation

◆ debugInfoProvider

HectorDebugInfoProvider* HectorMappingRos::debugInfoProvider
protected

Definition at line 109 of file HectorMappingRos.h.

◆ hectorDrawings

HectorDrawings* HectorMappingRos::hectorDrawings
protected

Definition at line 110 of file HectorMappingRos.h.

◆ initial_pose_

Eigen::Vector3f HectorMappingRos::initial_pose_
protected

Definition at line 156 of file HectorMappingRos.h.

◆ initial_pose_filter_

tf::MessageFilter<geometry_msgs::PoseWithCovarianceStamped>* HectorMappingRos::initial_pose_filter_
protected

Definition at line 121 of file HectorMappingRos.h.

◆ initial_pose_set_

bool HectorMappingRos::initial_pose_set_
protected

Definition at line 155 of file HectorMappingRos.h.

◆ initial_pose_sub_

message_filters::Subscriber<geometry_msgs::PoseWithCovarianceStamped>* HectorMappingRos::initial_pose_sub_
protected

Definition at line 120 of file HectorMappingRos.h.

◆ laser_point_cloud_

sensor_msgs::PointCloud HectorMappingRos::laser_point_cloud_
protected

Definition at line 149 of file HectorMappingRos.h.

◆ laserScanContainer

hectorslam::DataContainer HectorMappingRos::laserScanContainer
protected

Definition at line 145 of file HectorMappingRos.h.

◆ lastGetMapUpdateIndex

int HectorMappingRos::lastGetMapUpdateIndex
protected

Definition at line 112 of file HectorMappingRos.h.

◆ lastMapPublishTime

ros::Time HectorMappingRos::lastMapPublishTime
protected

Definition at line 151 of file HectorMappingRos.h.

◆ lastScanTime

ros::Time HectorMappingRos::lastScanTime
protected

Definition at line 152 of file HectorMappingRos.h.

◆ lastSlamPose

Eigen::Vector3f HectorMappingRos::lastSlamPose
protected

Definition at line 153 of file HectorMappingRos.h.

◆ map__publish_thread_

boost::thread* HectorMappingRos::map__publish_thread_
protected

Definition at line 142 of file HectorMappingRos.h.

◆ map_to_odom_

tf::Transform HectorMappingRos::map_to_odom_
protected

Definition at line 140 of file HectorMappingRos.h.

◆ mapPubContainer

std::vector<MapPublisherContainer> HectorMappingRos::mapPubContainer
protected

Definition at line 133 of file HectorMappingRos.h.

◆ mapSubscriber_

ros::Subscriber HectorMappingRos::mapSubscriber_
protected

Definition at line 119 of file HectorMappingRos.h.

◆ node_

ros::NodeHandle HectorMappingRos::node_
protected

Definition at line 114 of file HectorMappingRos.h.

◆ odometryPublisher_

ros::Publisher HectorMappingRos::odometryPublisher_
protected

Definition at line 126 of file HectorMappingRos.h.

◆ p_advertise_map_service_

bool HectorMappingRos::p_advertise_map_service_
protected

Definition at line 181 of file HectorMappingRos.h.

◆ p_base_frame_

std::string HectorMappingRos::p_base_frame_
protected

Definition at line 163 of file HectorMappingRos.h.

◆ p_laser_z_max_value_

float HectorMappingRos::p_laser_z_max_value_
protected

Definition at line 205 of file HectorMappingRos.h.

◆ p_laser_z_min_value_

float HectorMappingRos::p_laser_z_min_value_
protected

Definition at line 204 of file HectorMappingRos.h.

◆ p_map_frame_

std::string HectorMappingRos::p_map_frame_
protected

Definition at line 164 of file HectorMappingRos.h.

◆ p_map_multi_res_levels_

int HectorMappingRos::p_map_multi_res_levels_
protected

Definition at line 193 of file HectorMappingRos.h.

◆ p_map_pub_period_

double HectorMappingRos::p_map_pub_period_
protected

Definition at line 195 of file HectorMappingRos.h.

◆ p_map_resolution_

double HectorMappingRos::p_map_resolution_
protected

Definition at line 189 of file HectorMappingRos.h.

◆ p_map_size_

int HectorMappingRos::p_map_size_
protected

Definition at line 190 of file HectorMappingRos.h.

◆ p_map_start_x_

double HectorMappingRos::p_map_start_x_
protected

Definition at line 191 of file HectorMappingRos.h.

◆ p_map_start_y_

double HectorMappingRos::p_map_start_y_
protected

Definition at line 192 of file HectorMappingRos.h.

◆ p_map_update_angle_threshold_

double HectorMappingRos::p_map_update_angle_threshold_
protected

Definition at line 187 of file HectorMappingRos.h.

◆ p_map_update_distance_threshold_

double HectorMappingRos::p_map_update_distance_threshold_
protected

Definition at line 186 of file HectorMappingRos.h.

◆ p_map_with_known_poses_

bool HectorMappingRos::p_map_with_known_poses_
protected

Definition at line 199 of file HectorMappingRos.h.

◆ p_odom_frame_

std::string HectorMappingRos::p_odom_frame_
protected

Definition at line 165 of file HectorMappingRos.h.

◆ p_pose_update_topic_

std::string HectorMappingRos::p_pose_update_topic_
protected

Definition at line 174 of file HectorMappingRos.h.

◆ p_pub_debug_output_

bool HectorMappingRos::p_pub_debug_output_
protected

Definition at line 178 of file HectorMappingRos.h.

◆ p_pub_drawings

bool HectorMappingRos::p_pub_drawings
protected

Definition at line 177 of file HectorMappingRos.h.

◆ p_pub_map_odom_transform_

bool HectorMappingRos::p_pub_map_odom_transform_
protected

Definition at line 179 of file HectorMappingRos.h.

◆ p_pub_map_scanmatch_transform_

bool HectorMappingRos::p_pub_map_scanmatch_transform_
protected

Definition at line 168 of file HectorMappingRos.h.

◆ p_pub_odometry_

bool HectorMappingRos::p_pub_odometry_
protected

Definition at line 180 of file HectorMappingRos.h.

◆ p_scan_subscriber_queue_size_

int HectorMappingRos::p_scan_subscriber_queue_size_
protected

Definition at line 182 of file HectorMappingRos.h.

◆ p_scan_topic_

std::string HectorMappingRos::p_scan_topic_
protected

Definition at line 171 of file HectorMappingRos.h.

◆ p_sqr_laser_max_dist_

float HectorMappingRos::p_sqr_laser_max_dist_
protected

Definition at line 203 of file HectorMappingRos.h.

◆ p_sqr_laser_min_dist_

float HectorMappingRos::p_sqr_laser_min_dist_
protected

Definition at line 202 of file HectorMappingRos.h.

◆ p_sys_msg_topic_

std::string HectorMappingRos::p_sys_msg_topic_
protected

Definition at line 172 of file HectorMappingRos.h.

◆ p_tf_map_scanmatch_transform_frame_name_

std::string HectorMappingRos::p_tf_map_scanmatch_transform_frame_name_
protected

Definition at line 169 of file HectorMappingRos.h.

◆ p_timing_output_

bool HectorMappingRos::p_timing_output_
protected

Definition at line 200 of file HectorMappingRos.h.

◆ p_twist_update_topic_

std::string HectorMappingRos::p_twist_update_topic_
protected

Definition at line 175 of file HectorMappingRos.h.

◆ p_update_factor_free_

double HectorMappingRos::p_update_factor_free_
protected

Definition at line 184 of file HectorMappingRos.h.

◆ p_update_factor_occupied_

double HectorMappingRos::p_update_factor_occupied_
protected

Definition at line 185 of file HectorMappingRos.h.

◆ p_use_tf_pose_start_estimate_

bool HectorMappingRos::p_use_tf_pose_start_estimate_
protected

Definition at line 198 of file HectorMappingRos.h.

◆ p_use_tf_scan_transformation_

bool HectorMappingRos::p_use_tf_scan_transformation_
protected

Definition at line 197 of file HectorMappingRos.h.

◆ pause_scan_processing_

bool HectorMappingRos::pause_scan_processing_
protected

Definition at line 158 of file HectorMappingRos.h.

◆ poseInfoContainer_

PoseInfoContainer HectorMappingRos::poseInfoContainer_
protected

Definition at line 147 of file HectorMappingRos.h.

◆ posePublisher_

ros::Publisher HectorMappingRos::posePublisher_
protected

Definition at line 123 of file HectorMappingRos.h.

◆ poseUpdatePublisher_

ros::Publisher HectorMappingRos::poseUpdatePublisher_
protected

Definition at line 124 of file HectorMappingRos.h.

◆ projector_

laser_geometry::LaserProjection HectorMappingRos::projector_
protected

Definition at line 138 of file HectorMappingRos.h.

◆ reset_map_service_

ros::ServiceServer HectorMappingRos::reset_map_service_
protected

Definition at line 129 of file HectorMappingRos.h.

◆ restart_hector_service_

ros::ServiceServer HectorMappingRos::restart_hector_service_
protected

Definition at line 130 of file HectorMappingRos.h.

◆ scan_point_cloud_publisher_

ros::Publisher HectorMappingRos::scan_point_cloud_publisher_
protected

Definition at line 127 of file HectorMappingRos.h.

◆ scanSubscriber_

ros::Subscriber HectorMappingRos::scanSubscriber_
protected

Definition at line 116 of file HectorMappingRos.h.

◆ slamProcessor

hectorslam::HectorSlamProcessor* HectorMappingRos::slamProcessor
protected

Definition at line 144 of file HectorMappingRos.h.

◆ sysMsgSubscriber_

ros::Subscriber HectorMappingRos::sysMsgSubscriber_
protected

Definition at line 117 of file HectorMappingRos.h.

◆ tf_

tf::TransformListener HectorMappingRos::tf_
protected

Definition at line 135 of file HectorMappingRos.h.

◆ tfB_

tf::TransformBroadcaster* HectorMappingRos::tfB_
protected

Definition at line 136 of file HectorMappingRos.h.

◆ toggle_scan_processing_service_

ros::ServiceServer HectorMappingRos::toggle_scan_processing_service_
protected

Definition at line 131 of file HectorMappingRos.h.

◆ twistUpdatePublisher_

ros::Publisher HectorMappingRos::twistUpdatePublisher_
protected

Definition at line 125 of file HectorMappingRos.h.


The documentation for this class was generated from the following files:


hector_mapping
Author(s): Stefan Kohlbrecher
autogenerated on Sat Mar 12 2022 03:57:50