From 4349887c88f60fa9001a87c2dfbaefe3205ff13b Mon Sep 17 00:00:00 2001 From: jcasals <jcasals@iri.upc.edu> Date: Thu, 12 Mar 2020 16:10:14 +0100 Subject: [PATCH] WIP --- CMakeLists.txt | 14 ++++++------ ...oud_publisher.h => pointcloud_publisher.h} | 14 ++++++------ ...lf_scan_visualizer.h => scan_visualizer.h} | 14 ++++++------ ...scriber_laser2D.h => subscriber_laser2D.h} | 9 +++++--- ...publisher.cpp => pointcloud_publisher.cpp} | 20 ++++++++--------- ...can_visualizer.cpp => scan_visualizer.cpp} | 22 +++++++++---------- ...ber_laser2D.cpp => subscriber_laser2D.cpp} | 6 ++--- 7 files changed, 51 insertions(+), 48 deletions(-) rename include/{wolf_pointcloud_publisher.h => pointcloud_publisher.h} (73%) rename include/{wolf_scan_visualizer.h => scan_visualizer.h} (78%) rename include/{wolf_subscriber_laser2D.h => subscriber_laser2D.h} (82%) rename src/{wolf_pointcloud_publisher.cpp => pointcloud_publisher.cpp} (91%) rename src/{wolf_scan_visualizer.cpp => scan_visualizer.cpp} (83%) rename src/{wolf_subscriber_laser2D.cpp => subscriber_laser2D.cpp} (94%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 559f58c..fd25483 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -137,9 +137,9 @@ include_directories( # add_library(${PROJECT_NAME} # src/${PROJECT_NAME}/wolf_ros.cpp # ) -add_library(wolf_subscriber_laser2D src/wolf_subscriber_laser2D.cpp) -add_library(wolf_scan_visualizer src/wolf_scan_visualizer.cpp) -add_library(wolf_pointcloud_publisher src/wolf_pointcloud_publisher.cpp) +add_library(subscriber_laser2D src/subscriber_laser2D.cpp) +add_library(scan_visualizer src/scan_visualizer.cpp) +add_library(pointcloud_publisher src/pointcloud_publisher.cpp) ## Add cmake target dependencies of the library ## as an example, code may need to be generated before libraries @@ -163,19 +163,19 @@ add_library(wolf_pointcloud_publisher src/wolf_pointcloud_publisher.cpp) #add_dependencies(${PROJECT_NAME}_visualizer ${PROJECT_NAME}_gencfg) ## Specify libraries to link a library or executable target against -target_link_libraries(wolf_subscriber_laser2D +target_link_libraries(subscriber_laser2D ${wolf_LIBRARIES} ${wolflaser_LIBRARIES} ) Message("wolfroslibraries: ${wolf_ros_LIBRARIES}") -target_link_libraries(wolf_scan_visualizer +target_link_libraries(scan_visualizer ${wolf_LIBRARIES} ${wolflaser_LIBRARIES} ${catkin_LIBRARIES} # /home/jvallve/code/iri_ws/devel/lib/libwolf_ros_visualizer.so - /home/jcasals/catkin_ws/devel/lib/libwolf_visualizer.so + /home/jcasals/catkin_ws/devel/lib/libvisualizer.so ) -target_link_libraries(wolf_pointcloud_publisher +target_link_libraries(pointcloud_publisher ${wolf_LIBRARIES} ${wolflaser_LIBRARIES} ${catkin_LIBRARIES} diff --git a/include/wolf_pointcloud_publisher.h b/include/pointcloud_publisher.h similarity index 73% rename from include/wolf_pointcloud_publisher.h rename to include/pointcloud_publisher.h index 84c45d1..832abea 100644 --- a/include/wolf_pointcloud_publisher.h +++ b/include/pointcloud_publisher.h @@ -1,12 +1,12 @@ -#ifndef WOLF_POINTCLOUD_PUBLISHER_H -#define WOLF_POINTCLOUD_PUBLISHER_H +#ifndef POINTCLOUD_PUBLISHER_H +#define POINTCLOUD_PUBLISHER_H /************************** * WOLF includes * **************************/ #include <core/common/wolf.h> #include <core/problem/problem.h> -#include "wolf_publisher.h" +#include "publisher.h" #include "publisher_factory.h" /************************** @@ -18,17 +18,17 @@ using namespace wolf; -class WolfPointcloudPublisher: public WolfPublisher +class PointcloudPublisher: public Publisher { int max_frames_; public: - WolfPointcloudPublisher(); - virtual ~WolfPointcloudPublisher(){}; + PointcloudPublisher(); + virtual ~PointcloudPublisher(){}; void initialize(ros::NodeHandle &nh, const std::string& topic) override; pcl::PointCloud<pcl::PointXYZRGB> buildPointCloud(const ProblemPtr); pcl::PointCloud<pcl::PointXYZRGB> buildPointCloudWithMeasurements(const ProblemPtr); void publishPointCloud(const ProblemPtr); void publish(const ProblemPtr problem) override; - static std::shared_ptr<WolfPublisher> create(); + static std::shared_ptr<Publisher> create(); }; #endif diff --git a/include/wolf_scan_visualizer.h b/include/scan_visualizer.h similarity index 78% rename from include/wolf_scan_visualizer.h rename to include/scan_visualizer.h index 33e0c93..dc7e2ec 100644 --- a/include/wolf_scan_visualizer.h +++ b/include/scan_visualizer.h @@ -1,5 +1,5 @@ -#ifndef WOLF_SCAN_VISUALIZER_H -#define WOLF_SCAN_VISUALIZER_H +#ifndef SCAN_VISUALIZER_H +#define SCAN_VISUALIZER_H /************************** * ROS includes * **************************/ @@ -11,7 +11,7 @@ #include <core/common/wolf.h> #include <core/problem/problem.h> -#include <wolf_visualizer.h> +#include <visualizer.h> #include <visualizer_factory.h> /************************** @@ -23,17 +23,17 @@ using namespace wolf; -class WolfScanVisualizer: public WolfVisualizer +class ScanVisualizer: public Visualizer { int max_frames_; public: - WolfScanVisualizer(); - virtual ~WolfScanVisualizer(){}; + ScanVisualizer(); + virtual ~ScanVisualizer(){}; void initialize(ros::NodeHandle &nh) override; void visualize(const ProblemPtr problem) override; virtual void fillFactorMarker(FactorBaseConstPtr fac, visualization_msgs::Marker& fac_marker, visualization_msgs::Marker& fac_text_marker) override; - static std::shared_ptr<WolfVisualizer> create(); + static std::shared_ptr<Visualizer> create(); }; #endif diff --git a/include/wolf_subscriber_laser2D.h b/include/subscriber_laser2D.h similarity index 82% rename from include/wolf_subscriber_laser2D.h rename to include/subscriber_laser2D.h index 10fec1b..f32a9a5 100644 --- a/include/wolf_subscriber_laser2D.h +++ b/include/subscriber_laser2D.h @@ -1,3 +1,5 @@ +#ifndef SUBSCRIBER_LASER_2D_H +#define SUBSCRIBER_LASER_2D_H /************************** * WOLF includes * **************************/ @@ -32,12 +34,12 @@ #include <iomanip> #include <queue> -#include "wolf_subscriber.h" +#include "subscriber.h" #include "subscriber_factory.h" namespace wolf { -class SubscriberLaser2D : public WolfSubscriber +class SubscriberLaser2D : public Subscriber { protected: bool laser_intrinsics_set_; @@ -50,8 +52,9 @@ class SubscriberLaser2D : public WolfSubscriber void callback(const sensor_msgs::LaserScan::ConstPtr& msg); - static std::shared_ptr<WolfSubscriber> create(const std::string& _unique_name, const ParamsServer& _params, const SensorBasePtr _sensor_ptr); + static std::shared_ptr<Subscriber> create(const std::string& _unique_name, const ParamsServer& _params, const SensorBasePtr _sensor_ptr); }; WOLF_REGISTER_SUBSCRIBER(SubscriberLaser2D) } +#endif diff --git a/src/wolf_pointcloud_publisher.cpp b/src/pointcloud_publisher.cpp similarity index 91% rename from src/wolf_pointcloud_publisher.cpp rename to src/pointcloud_publisher.cpp index bbe76a7..8f6300b 100644 --- a/src/wolf_pointcloud_publisher.cpp +++ b/src/pointcloud_publisher.cpp @@ -1,4 +1,4 @@ -#include "wolf_pointcloud_publisher.h" +#include "pointcloud_publisher.h" #include "Eigen/src/Geometry/AngleAxis.h" #include "Eigen/src/Geometry/Transform.h" #include "core/common/wolf.h" @@ -25,16 +25,16 @@ **************************/ #include <laser_geometry/laser_geometry.h> -WolfPointcloudPublisher::WolfPointcloudPublisher() : - WolfPublisher() +PointcloudPublisher::PointcloudPublisher() : + Publisher() { } -void WolfPointcloudPublisher::initialize(ros::NodeHandle& nh, const std::string& topic) +void PointcloudPublisher::initialize(ros::NodeHandle& nh, const std::string& topic) { publisher_ = nh.advertise<sensor_msgs::PointCloud2>(topic, 1); nh.param<int>("num_frames_visualize", max_frames_, 2); } -void WolfPointcloudPublisher::publish(const ProblemPtr _problem) +void PointcloudPublisher::publish(const ProblemPtr _problem) { this->publishPointCloud(_problem); } @@ -65,7 +65,7 @@ void transformPointCloudFromLaserScan(pcl::PointCloud<pcl::PointXYZ>& cloud, pcl::transformPointCloud(cloud, cloud, transform); } -pcl::PointCloud<pcl::PointXYZRGB> WolfPointcloudPublisher::buildPointCloud(const ProblemPtr problem) +pcl::PointCloud<pcl::PointXYZRGB> PointcloudPublisher::buildPointCloud(const ProblemPtr problem) { std::ofstream file; pcl::PointCloud<pcl::PointXYZRGB> agg_cloud; @@ -155,7 +155,7 @@ pcl::PointCloud<pcl::PointXYZRGB> WolfPointcloudPublisher::buildPointCloud(const } return agg_cloud; } -void WolfPointcloudPublisher::publishPointCloud(const ProblemPtr problem) +void PointcloudPublisher::publishPointCloud(const ProblemPtr problem) { auto pcl = this->buildPointCloud(problem); sensor_msgs::PointCloud2 msg; @@ -165,8 +165,8 @@ void WolfPointcloudPublisher::publishPointCloud(const ProblemPtr problem) this->publisher_.publish(msg); } -std::shared_ptr<WolfPublisher> WolfPointcloudPublisher::create() +std::shared_ptr<Publisher> PointcloudPublisher::create() { - return std::make_shared<WolfPointcloudPublisher>(); + return std::make_shared<PointcloudPublisher>(); } -WOLF_REGISTER_PUBLISHER(WolfPointcloudPublisher) +WOLF_REGISTER_PUBLISHER(PointcloudPublisher) diff --git a/src/wolf_scan_visualizer.cpp b/src/scan_visualizer.cpp similarity index 83% rename from src/wolf_scan_visualizer.cpp rename to src/scan_visualizer.cpp index 0fe84da..813b666 100644 --- a/src/wolf_scan_visualizer.cpp +++ b/src/scan_visualizer.cpp @@ -1,4 +1,4 @@ -#include "wolf_scan_visualizer.h" +#include "scan_visualizer.h" #include "Eigen/src/Geometry/AngleAxis.h" #include "Eigen/src/Geometry/Transform.h" #include "core/common/wolf.h" @@ -25,24 +25,24 @@ **************************/ #include <laser_geometry/laser_geometry.h> -WolfScanVisualizer::WolfScanVisualizer() : WolfVisualizer() +ScanVisualizer::ScanVisualizer() : Visualizer() { } -void WolfScanVisualizer::initialize(ros::NodeHandle& nh) +void ScanVisualizer::initialize(ros::NodeHandle& nh) { - WolfVisualizer::initialize(nh); + Visualizer::initialize(nh); nh.param<int>("num_frames_visualize", max_frames_, 2); } -void WolfScanVisualizer::visualize(const ProblemPtr _problem) +void ScanVisualizer::visualize(const ProblemPtr _problem) { - WolfVisualizer::visualize(_problem); + Visualizer::visualize(_problem); } -void WolfScanVisualizer::fillFactorMarker(FactorBaseConstPtr fac, +void ScanVisualizer::fillFactorMarker(FactorBaseConstPtr fac, visualization_msgs::Marker& fac_marker, visualization_msgs::Marker& fac_text_marker) { - WolfVisualizer::fillFactorMarker(fac, fac_marker, fac_text_marker); + Visualizer::fillFactorMarker(fac, fac_marker, fac_text_marker); if (fac->getFeature()->getType() == "FeatureIcpAlign" and (fac->getType() == "FactorOdom2D" or fac->getType() == "FactorOdom2DCloseloop")) { @@ -86,8 +86,8 @@ void WolfScanVisualizer::fillFactorMarker(FactorBaseConstPtr fac, fac_text_marker.pose.position.z = fac_text_marker.pose.position.z + 0.25; } } -std::shared_ptr<WolfVisualizer> WolfScanVisualizer::create() +std::shared_ptr<Visualizer> ScanVisualizer::create() { - return std::make_shared<WolfScanVisualizer>(); + return std::make_shared<ScanVisualizer>(); } -WOLF_REGISTER_VISUALIZER(WolfScanVisualizer) +WOLF_REGISTER_VISUALIZER(ScanVisualizer) diff --git a/src/wolf_subscriber_laser2D.cpp b/src/subscriber_laser2D.cpp similarity index 94% rename from src/wolf_subscriber_laser2D.cpp rename to src/subscriber_laser2D.cpp index c4958cc..5c1b882 100644 --- a/src/wolf_subscriber_laser2D.cpp +++ b/src/subscriber_laser2D.cpp @@ -1,10 +1,10 @@ -#include "wolf_subscriber_laser2D.h" +#include "subscriber_laser2D.h" #include <limits> namespace wolf { // Constructor -SubscriberLaser2D::SubscriberLaser2D(const SensorBasePtr& sensor_ptr): WolfSubscriber(sensor_ptr) +SubscriberLaser2D::SubscriberLaser2D(const SensorBasePtr& sensor_ptr): Subscriber(sensor_ptr) { laser_intrinsics_set_ = false; } @@ -86,7 +86,7 @@ void SubscriberLaser2D::callback(const sensor_msgs::LaserScan::ConstPtr& msg) // } } -std::shared_ptr<WolfSubscriber> SubscriberLaser2D::create(const std::string& _unique_name, const ParamsServer& _params, const SensorBasePtr _sensor_ptr) +std::shared_ptr<Subscriber> SubscriberLaser2D::create(const std::string& _unique_name, const ParamsServer& _params, const SensorBasePtr _sensor_ptr) { return std::make_shared<SubscriberLaser2D>(_sensor_ptr); } -- GitLab