switch (_pointCloudProviderInfo.pointCloudFormat->type) \
{ \
case visionx::PointContentType::ePoints: \
F<pcl::PointXYZ>(); \
break; \
case visionx::PointContentType::eColoredPoints: \
F<pcl::PointXYZRGBA>(); \
break; \
case visionx::PointContentType::eColoredOrientedPoints: \
F<pcl::PointXYZRGBNormal>(); \
break; \
case visionx::PointContentType::eLabeledPoints: \
F<pcl::PointXYZL>(); \
break; \
case visionx::PointContentType::eColoredLabeledPoints: \
F<pcl::PointXYZRGBL>(); \
break; \
case visionx::PointContentType::eIntensity: \
F<pcl::PointXYZI>(); \
break; \
case visionx::PointContentType::eOrientedPoints: \
[[fallthrough]]; \
default: \
ARMARX_ERROR <<
"Could not process point cloud, because format '" \
<< _pointCloudProviderInfo.pointCloudFormat->type << "' is unknown"; \
} \
do \
{ \
} while (false)
#define ARMARX_ERROR
The logging level for unexpected behaviour, that must be fixed.