Go to the documentation of this file.
28 #include <RobotAPI/interface/units/LaserScannerUnit.h>
32 #include <VisionX/interface/components/LaserScannerPointCloudProvider.h>
34 #pragma GCC diagnostic push
35 #include <pcl/common/transforms.h>
36 #include <pcl/filters/statistical_outlier_removal.h>
37 #pragma GCC diagnostic ignored "-Wpedantic"
38 #pragma GCC diagnostic pop
44 #include <RobotAPI/interface/visualization/DebugDrawerInterface.h>
60 defineOptionalProperty<std::string>(
"LaserScannerUnitName",
61 "LaserScannerSimulation",
62 "The name of the laser scanner provider");
63 defineOptionalProperty<std::string>(
64 "RobotStateComponentName",
65 "RobotStateComponent",
66 "Name of the robot state component that should be used");
83 virtual public armarx::LaserScannerPointCloudProviderInterface
92 return "LaserScannerPointCloudProvider";
98 const TimestampBasePtr&,
99 const Ice::Current&
c = Ice::emptyCurrent)
override;
104 return localRobot->getRootNode()->getName();
122 std::map<std::string, std::string> deviceToFrame;
129 std::map<std::string, pcl::PointCloud<pcl::PointXYZ>> clouds;
130 pcl::PointCloud<pcl::PointXYZ>::Ptr resultCloud;
132 pcl::StatisticalOutlierRemoval<pcl::PointXYZ> filter;
std::string prefix
Prefix of the properties such as namespace, domain, component name, etc.
LaserScannerPointCloudProviderPropertyDefinitions(std::string prefix)
std::string getReferenceFrame(const Ice::Current &c=Ice::emptyCurrent) override
visionx::MetaPointCloudFormatPtr getDefaultPointCloudFormat() override
default point cloud format used to initialize shared memory
void onConnectPointCloudProvider() override
This is called when the Component::onConnectComponent() setup is called.
PointCloudProviderPropertyDefinitions(std::string prefix)
std::string getDefaultName() const override
void onInitPointCloudProvider() override
This is called when the Component::onInitComponent() is called.
Brief description of class LaserScannerPointCloudProvider.
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
void reportSensorValues(const std::string &, const std::string &, const LaserScan &, const TimestampBasePtr &, const Ice::Current &c=Ice::emptyCurrent) override
void onExitPointCloudProvider() override
This is called when the Component::onExitComponent() setup is called.
PointCloudProvider abstract class defines a component which provide point clouds via ice or shared me...
This file offers overloads of toIce() and fromIce() functions for STL container types.
std::shared_ptr< class Robot > RobotPtr