Renames SensorDataProducer to SensorBridge. (#90)

master
Damon Kohler 2016-10-10 10:58:27 +02:00 committed by GitHub
parent 0c8d6afc33
commit a02dfa084a
4 changed files with 26 additions and 26 deletions

View File

@ -91,10 +91,10 @@ add_executable(cartographer_node
src/occupancy_grid.h src/occupancy_grid.h
src/ros_log_sink.cc src/ros_log_sink.cc
src/ros_log_sink.h src/ros_log_sink.h
src/sensor_bridge.cc
src/sensor_bridge.h
src/sensor_data.cc src/sensor_data.cc
src/sensor_data.h src/sensor_data.h
src/sensor_data_producer.cc
src/sensor_data_producer.h
src/time_conversion.cc src/time_conversion.cc
src/time_conversion.h src/time_conversion.h
) )

View File

@ -67,8 +67,8 @@
#include "node_options.h" #include "node_options.h"
#include "occupancy_grid.h" #include "occupancy_grid.h"
#include "ros_log_sink.h" #include "ros_log_sink.h"
#include "sensor_bridge.h"
#include "sensor_data.h" #include "sensor_data.h"
#include "sensor_data_producer.h"
#include "time_conversion.h" #include "time_conversion.h"
DEFINE_string(configuration_directory, "", DEFINE_string(configuration_directory, "",
@ -156,7 +156,7 @@ class Node {
carto::mapping::MapBuilder map_builder_ GUARDED_BY(mutex_); carto::mapping::MapBuilder map_builder_ GUARDED_BY(mutex_);
carto::mapping::SensorCollator<SensorData> sensor_collator_ carto::mapping::SensorCollator<SensorData> sensor_collator_
GUARDED_BY(mutex_); GUARDED_BY(mutex_);
SensorDataProducer sensor_data_producer_ GUARDED_BY(mutex_); SensorBridge sensor_bridge_ GUARDED_BY(mutex_);
::ros::NodeHandle node_handle_; ::ros::NodeHandle node_handle_;
::ros::Subscriber imu_subscriber_; ::ros::Subscriber imu_subscriber_;
@ -190,7 +190,7 @@ class Node {
Node::Node(const NodeOptions& options) Node::Node(const NodeOptions& options)
: options_(options), : options_(options),
map_builder_(options.map_builder_options, &constant_data_), map_builder_(options.map_builder_options, &constant_data_),
sensor_data_producer_(kTrajectoryBuilderId, &sensor_collator_), sensor_bridge_(kTrajectoryBuilderId, &sensor_collator_),
tf_buffer_(::ros::Duration(1000)), tf_buffer_(::ros::Duration(1000)),
tf_(tf_buffer_) {} tf_(tf_buffer_) {}
@ -318,7 +318,7 @@ void Node::Initialize() {
kLaserScanTopic, kInfiniteSubscriberQueueSize, kLaserScanTopic, kInfiniteSubscriberQueueSize,
boost::function<void(const sensor_msgs::LaserScan::ConstPtr&)>( boost::function<void(const sensor_msgs::LaserScan::ConstPtr&)>(
[this](const sensor_msgs::LaserScan::ConstPtr& msg) { [this](const sensor_msgs::LaserScan::ConstPtr& msg) {
sensor_data_producer_.AddLaserScanMessage(kLaserScanTopic, msg); sensor_bridge_.AddLaserScanMessage(kLaserScanTopic, msg);
})); }));
expected_sensor_identifiers.insert(kLaserScanTopic); expected_sensor_identifiers.insert(kLaserScanTopic);
} }
@ -327,7 +327,7 @@ void Node::Initialize() {
kMultiEchoLaserScanTopic, kInfiniteSubscriberQueueSize, kMultiEchoLaserScanTopic, kInfiniteSubscriberQueueSize,
boost::function<void(const sensor_msgs::MultiEchoLaserScan::ConstPtr&)>( boost::function<void(const sensor_msgs::MultiEchoLaserScan::ConstPtr&)>(
[this](const sensor_msgs::MultiEchoLaserScan::ConstPtr& msg) { [this](const sensor_msgs::MultiEchoLaserScan::ConstPtr& msg) {
sensor_data_producer_.AddMultiEchoLaserScanMessage( sensor_bridge_.AddMultiEchoLaserScanMessage(
kMultiEchoLaserScanTopic, msg); kMultiEchoLaserScanTopic, msg);
})); }));
expected_sensor_identifiers.insert(kMultiEchoLaserScanTopic); expected_sensor_identifiers.insert(kMultiEchoLaserScanTopic);
@ -344,7 +344,7 @@ void Node::Initialize() {
topic, kInfiniteSubscriberQueueSize, topic, kInfiniteSubscriberQueueSize,
boost::function<void(const sensor_msgs::PointCloud2::ConstPtr&)>( boost::function<void(const sensor_msgs::PointCloud2::ConstPtr&)>(
[this, topic](const sensor_msgs::PointCloud2::ConstPtr& msg) { [this, topic](const sensor_msgs::PointCloud2::ConstPtr& msg) {
sensor_data_producer_.AddPointCloud2Message(topic, msg); sensor_bridge_.AddPointCloud2Message(topic, msg);
}))); })));
expected_sensor_identifiers.insert(topic); expected_sensor_identifiers.insert(topic);
} }
@ -360,7 +360,7 @@ void Node::Initialize() {
kImuTopic, kInfiniteSubscriberQueueSize, kImuTopic, kInfiniteSubscriberQueueSize,
boost::function<void(const sensor_msgs::Imu::ConstPtr& msg)>( boost::function<void(const sensor_msgs::Imu::ConstPtr& msg)>(
[this](const sensor_msgs::Imu::ConstPtr& msg) { [this](const sensor_msgs::Imu::ConstPtr& msg) {
sensor_data_producer_.AddImuMessage(kImuTopic, msg); sensor_bridge_.AddImuMessage(kImuTopic, msg);
})); }));
expected_sensor_identifiers.insert(kImuTopic); expected_sensor_identifiers.insert(kImuTopic);
} }
@ -370,7 +370,7 @@ void Node::Initialize() {
kOdometryTopic, kInfiniteSubscriberQueueSize, kOdometryTopic, kInfiniteSubscriberQueueSize,
boost::function<void(const nav_msgs::Odometry::ConstPtr&)>( boost::function<void(const nav_msgs::Odometry::ConstPtr&)>(
[this](const nav_msgs::Odometry::ConstPtr& msg) { [this](const nav_msgs::Odometry::ConstPtr& msg) {
sensor_data_producer_.AddOdometryMessage(kOdometryTopic, msg); sensor_bridge_.AddOdometryMessage(kOdometryTopic, msg);
})); }));
expected_sensor_identifiers.insert(kOdometryTopic); expected_sensor_identifiers.insert(kOdometryTopic);
} }

View File

@ -14,20 +14,20 @@
* limitations under the License. * limitations under the License.
*/ */
#include "sensor_data_producer.h" #include "sensor_bridge.h"
#include "msg_conversion.h" #include "msg_conversion.h"
#include "time_conversion.h" #include "time_conversion.h"
namespace cartographer_ros { namespace cartographer_ros {
SensorDataProducer::SensorDataProducer( SensorBridge::SensorBridge(
const int trajectory_id, const int trajectory_id,
::cartographer::mapping::SensorCollator<SensorData>* sensor_collator) ::cartographer::mapping::SensorCollator<SensorData>* sensor_collator)
: trajectory_id_(trajectory_id), sensor_collator_(sensor_collator) {} : trajectory_id_(trajectory_id), sensor_collator_(sensor_collator) {}
void SensorDataProducer::AddOdometryMessage( void SensorBridge::AddOdometryMessage(const string& topic,
const string& topic, const nav_msgs::Odometry::ConstPtr& msg) { const nav_msgs::Odometry::ConstPtr& msg) {
auto sensor_data = ::cartographer::common::make_unique<SensorData>( auto sensor_data = ::cartographer::common::make_unique<SensorData>(
msg->child_frame_id, msg->child_frame_id,
SensorData::Odometry{ToRigid3d(msg->pose.pose), SensorData::Odometry{ToRigid3d(msg->pose.pose),
@ -38,8 +38,8 @@ void SensorDataProducer::AddOdometryMessage(
std::move(sensor_data)); std::move(sensor_data));
} }
void SensorDataProducer::AddImuMessage(const string& topic, void SensorBridge::AddImuMessage(const string& topic,
const sensor_msgs::Imu::ConstPtr& msg) { const sensor_msgs::Imu::ConstPtr& msg) {
auto sensor_data = ::cartographer::common::make_unique<SensorData>( auto sensor_data = ::cartographer::common::make_unique<SensorData>(
msg->header.frame_id, ToCartographer(*msg)); msg->header.frame_id, ToCartographer(*msg));
sensor_collator_->AddSensorData( sensor_collator_->AddSensorData(
@ -48,7 +48,7 @@ void SensorDataProducer::AddImuMessage(const string& topic,
std::move(sensor_data)); std::move(sensor_data));
} }
void SensorDataProducer::AddLaserScanMessage( void SensorBridge::AddLaserScanMessage(
const string& topic, const sensor_msgs::LaserScan::ConstPtr& msg) { const string& topic, const sensor_msgs::LaserScan::ConstPtr& msg) {
auto sensor_data = ::cartographer::common::make_unique<SensorData>( auto sensor_data = ::cartographer::common::make_unique<SensorData>(
msg->header.frame_id, ToCartographer(*msg)); msg->header.frame_id, ToCartographer(*msg));
@ -58,7 +58,7 @@ void SensorDataProducer::AddLaserScanMessage(
std::move(sensor_data)); std::move(sensor_data));
} }
void SensorDataProducer::AddMultiEchoLaserScanMessage( void SensorBridge::AddMultiEchoLaserScanMessage(
const string& topic, const sensor_msgs::MultiEchoLaserScan::ConstPtr& msg) { const string& topic, const sensor_msgs::MultiEchoLaserScan::ConstPtr& msg) {
auto sensor_data = ::cartographer::common::make_unique<SensorData>( auto sensor_data = ::cartographer::common::make_unique<SensorData>(
msg->header.frame_id, ToCartographer(*msg)); msg->header.frame_id, ToCartographer(*msg));
@ -68,7 +68,7 @@ void SensorDataProducer::AddMultiEchoLaserScanMessage(
std::move(sensor_data)); std::move(sensor_data));
} }
void SensorDataProducer::AddPointCloud2Message( void SensorBridge::AddPointCloud2Message(
const string& topic, const sensor_msgs::PointCloud2::ConstPtr& msg) { const string& topic, const sensor_msgs::PointCloud2::ConstPtr& msg) {
pcl::PointCloud<pcl::PointXYZ> pcl_points; pcl::PointCloud<pcl::PointXYZ> pcl_points;
pcl::fromROSMsg(*msg, pcl_points); pcl::fromROSMsg(*msg, pcl_points);

View File

@ -14,8 +14,8 @@
* limitations under the License. * limitations under the License.
*/ */
#ifndef CARTOGRAPHER_ROS_SENSOR_DATA_PRODUCER_H_ #ifndef CARTOGRAPHER_ROS_SENSOR_BRIDGE_H_
#define CARTOGRAPHER_ROS_SENSOR_DATA_PRODUCER_H_ #define CARTOGRAPHER_ROS_SENSOR_BRIDGE_H_
#include "cartographer/mapping/sensor_collator.h" #include "cartographer/mapping/sensor_collator.h"
#include "geometry_msgs/Transform.h" #include "geometry_msgs/Transform.h"
@ -32,14 +32,14 @@ namespace cartographer_ros {
// A wrapper around SensorCollator that converts ROS messages into our internal // A wrapper around SensorCollator that converts ROS messages into our internal
// representation and passes them on to the 'sensor_collator'. // representation and passes them on to the 'sensor_collator'.
class SensorDataProducer { class SensorBridge {
public: public:
explicit SensorDataProducer( explicit SensorBridge(
int trajectory_id, int trajectory_id,
::cartographer::mapping::SensorCollator<SensorData>* sensor_collator); ::cartographer::mapping::SensorCollator<SensorData>* sensor_collator);
SensorDataProducer(const SensorDataProducer&) = delete; SensorBridge(const SensorBridge&) = delete;
SensorDataProducer& operator=(const SensorDataProducer&) = delete; SensorBridge& operator=(const SensorBridge&) = delete;
void AddOdometryMessage(const string& topic, void AddOdometryMessage(const string& topic,
const nav_msgs::Odometry::ConstPtr& msg); const nav_msgs::Odometry::ConstPtr& msg);
@ -60,4 +60,4 @@ class SensorDataProducer {
} // namespace cartographer_ros } // namespace cartographer_ros
#endif // CARTOGRAPHER_ROS_SENSOR_DATA_PRODUCER_H_ #endif // CARTOGRAPHER_ROS_SENSOR_BRIDGE_H_