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>
61 "LaserScannerSimulation",
62 "The name of the laser scanner provider");
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;
LaserScannerPointCloudProviderPropertyDefinitions(std::string prefix)
Brief description of class LaserScannerPointCloudProvider.
std::string getReferenceFrame(const Ice::Current &c=Ice::emptyCurrent) override
void reportSensorValues(const std::string &, const std::string &, const LaserScan &, const TimestampBasePtr &, 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.
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
void onInitPointCloudProvider() override
This is called when the Component::onInitComponent() is called.
void onExitPointCloudProvider() override
This is called when the Component::onExitComponent() setup is called.
std::string getDefaultName() const override
std::string prefix
Prefix of the properties such as namespace, domain, component name, etc.
PropertyDefinition< PropertyType > & defineOptionalProperty(const std::string &name, PropertyType defaultValue, const std::string &description="", PropertyDefinitionBase::PropertyConstness constness=PropertyDefinitionBase::eConstant)
PointCloudProviderPropertyDefinitions(std::string prefix)
PointCloudProvider abstract class defines a component which provide point clouds via ice or shared me...
std::shared_ptr< class Robot > RobotPtr
This file offers overloads of toIce() and fromIce() functions for STL container types.
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.
::IceInternal::ProxyHandle<::IceProxy::armarx::RobotStateComponentInterface > RobotStateComponentInterfacePrx