diff --git a/pcl_ros/package.xml b/pcl_ros/package.xml
index d0fcded4..08bd6874 100644
--- a/pcl_ros/package.xml
+++ b/pcl_ros/package.xml
@@ -48,7 +48,11 @@
rostest
-
+
+
+
+
+
diff --git a/pcl_ros/pcl_nodelets.xml b/pcl_ros/pcl_nodelets.xml
deleted file mode 100644
index 215ef9a9..00000000
--- a/pcl_ros/pcl_nodelets.xml
+++ /dev/null
@@ -1,232 +0,0 @@
-
-
-
-
- BoundaryEstimation estimates whether a set of points is lying on surface boundaries using an angle criterion. The
- code makes use of the estimated surface normals at each point in the input data set.
-
-
-
-
-
- FPFHEstimation estimates the Fast Point Feature Histogram (FPFH) descriptor for a given point cloud dataset
- containing points and normals.
-
-
-
-
-
- FPFHEstimationOMP estimates the Fast Point Feature Histogram (FPFH) descriptor for a given point cloud dataset
- containing points and normals, in parallel, using the OpenMP standard.
-
-
-
-
-
- SHOTEstimation estimates SHOT descriptor for a given point cloud dataset
- containing points and normals.
-
-
-
-
-
- SHOTEstimationOMP estimates SHOT descriptor for a given point cloud dataset
- containing points and normals, in parallel, using the OpenMP standard.
-
-
-
-
-
- MomentInvariantsEstimation estimates the 3 moment invariants (j1, j2, j3) at each 3D point.
-
-
-
-
-
- NormalEstimationOMP estimates local surface properties at each 3D point, such as surface normals and curvatures,
- in parallel, using the OpenMP standard.
-
-
-
-
-
- NormalEstimationTBB estimates local surface properties at each 3D point, such as surface normals and curvatures, in
- parallel, using Intel's Threading Building Blocks library.
-
-
-
-
-
- NormalEstimation estimates local surface properties at each 3D point, such as surface normals and curvatures.
-
-
-
-
-
- PFHEstimation estimates the Point Feature Histogram (PFH) descriptor for a given point cloud dataset containing
- points and normals.
-
-
-
-
-
- PrincipalCurvaturesEstimation estimates the directions (eigenvectors) and magnitudes (eigenvalues) of principal surface
- curvatures for a given point cloud dataset containing points and normals.
-
-
-
-
-
- VFHEstimation estimates the Viewpoint Feature Histogram (VFH) global descriptor for a given point cloud cluster dataset
- containing points and normals.
-
-
-
-
-
-
-
-
-
- NodeletMUX represent a mux nodelet for PointCloud topics: it takes N (up
- to 8) input topics, and publishes all of them on one output topic.
-
-
-
-
-
- NodeletDEMUX represent a demux nodelet for PointCloud topics: it
- publishes 1 input topic to N output topics.
-
-
-
-
-
- PCDReader reads in a PCD (Point Cloud Data) v.5 file from disk and converts it to a PointCloud message.
-
-
-
-
-
- BAGReader reads in sensor_msgs/PointCloud2 messages from BAG files.
-
-
-
-
-
- PCDWriter writes a PointCloud message to disk in a PCD (Point Cloud Data) v.5 file format.
-
-
-
-
-
- PointCloudConcatenateFieldsSynchronizer is a special form of data synchronizer: it listens for a set of input PointCloud messages on the
- same topic, checks their timestamps, and concatenates their fields together into a single PointCloud output message.
-
-
-
-
- PointCloudConcatenateDataSynchronizer is a special form of data
- synchronizer: it listens for a set of input PointCloud messages on
- different topics, and concatenates them together into a single PointCloud
- output message.
-
-
-
-
-
-
-
-
- PassThrough is a filter that uses the basic Filter class mechanisms for passing data around.
-
-
-
-
-
- VoxelGrid assembles a local 3D grid over a given PointCloud, and uses that to downsample the data.
-
-
-
-
-
- ProjectInliers uses a model and a set of inlier indices from a PointCloud to project them into a separate PointCloud.
-
-
-
-
-
- ExtractIndices extracts a set of indices from a PointCloud as a separate PointCloud.
-
-
-
-
-
- StatisticalOutlierRemoval uses point neighborhood statistics to filter outlier data.
-
-
-
-
- RadiusOutlierRemoval uses point neighborhood statistics to filter outlier data.
-
-
-
-
-
- CropBox is a filter that allows the user to filter all the data inside of a given box.
-
-
-
-
-
-
-
-
- ExtractPolygonalPrismData uses a set of point indices that represent a planar model, and together with a given
- height, generates a 3D polygonal prism. The polygonal prism is then used to segment all points lying inside it.
-
-
-
-
-
- EuclideanClusterExtraction represents a segmentation class for cluster extraction in an Euclidean sense.
-
-
-
-
-
- SACSegmentation represents the Nodelet segmentation class for Sample Consensus methods and models, in the sense that
- it just creates a Nodelet wrapper for generic-purpose SAC-based segmentation.
-
-
-
-
-
- SACSegmentation represents the Nodelet segmentation class for Sample Consensus methods and models, in the sense that
- it just creates a Nodelet wrapper for generic-purpose SAC-based segmentation.
-
-
-
-
-
- SegmentDifferences obtains the difference between two spatially aligned point clouds and returns the
- difference between them for a maximum given distance threshold.
-
-
-
-
-
-
-
-
-
- MovingLeastSquares is an implementation of the MLS algorithm for data reconstruction through bivariate polynomial fitting.
-
-
-
-
- ConvexHull2D represents a 2D ConvexHull implementation.
-
-
-
-
diff --git a/pcl_ros/plugins/nodelet/libpcl_ros_features.xml b/pcl_ros/plugins/nodelet/libpcl_ros_features.xml
new file mode 100644
index 00000000..2593eb83
--- /dev/null
+++ b/pcl_ros/plugins/nodelet/libpcl_ros_features.xml
@@ -0,0 +1,85 @@
+
+
+
+
+ BoundaryEstimation estimates whether a set of points is lying on surface boundaries using an angle criterion. The
+ code makes use of the estimated surface normals at each point in the input data set.
+
+
+
+
+
+ FPFHEstimation estimates the Fast Point Feature Histogram (FPFH) descriptor for a given point cloud dataset
+ containing points and normals.
+
+
+
+
+
+ FPFHEstimationOMP estimates the Fast Point Feature Histogram (FPFH) descriptor for a given point cloud dataset
+ containing points and normals, in parallel, using the OpenMP standard.
+
+
+
+
+
+ SHOTEstimation estimates SHOT descriptor for a given point cloud dataset
+ containing points and normals.
+
+
+
+
+
+ SHOTEstimationOMP estimates SHOT descriptor for a given point cloud dataset
+ containing points and normals, in parallel, using the OpenMP standard.
+
+
+
+
+
+ MomentInvariantsEstimation estimates the 3 moment invariants (j1, j2, j3) at each 3D point.
+
+
+
+
+
+ NormalEstimationOMP estimates local surface properties at each 3D point, such as surface normals and curvatures,
+ in parallel, using the OpenMP standard.
+
+
+
+
+
+ NormalEstimationTBB estimates local surface properties at each 3D point, such as surface normals and curvatures, in
+ parallel, using Intel's Threading Building Blocks library.
+
+
+
+
+
+ NormalEstimation estimates local surface properties at each 3D point, such as surface normals and curvatures.
+
+
+
+
+
+ PFHEstimation estimates the Point Feature Histogram (PFH) descriptor for a given point cloud dataset containing
+ points and normals.
+
+
+
+
+
+ PrincipalCurvaturesEstimation estimates the directions (eigenvectors) and magnitudes (eigenvalues) of principal surface
+ curvatures for a given point cloud dataset containing points and normals.
+
+
+
+
+
+ VFHEstimation estimates the Viewpoint Feature Histogram (VFH) global descriptor for a given point cloud cluster dataset
+ containing points and normals.
+
+
+
+
diff --git a/pcl_ros/plugins/nodelet/libpcl_ros_filters.xml b/pcl_ros/plugins/nodelet/libpcl_ros_filters.xml
new file mode 100644
index 00000000..15476eea
--- /dev/null
+++ b/pcl_ros/plugins/nodelet/libpcl_ros_filters.xml
@@ -0,0 +1,43 @@
+
+
+
+
+ PassThrough is a filter that uses the basic Filter class mechanisms for passing data around.
+
+
+
+
+
+ VoxelGrid assembles a local 3D grid over a given PointCloud, and uses that to downsample the data.
+
+
+
+
+
+ ProjectInliers uses a model and a set of inlier indices from a PointCloud to project them into a separate PointCloud.
+
+
+
+
+
+ ExtractIndices extracts a set of indices from a PointCloud as a separate PointCloud.
+
+
+
+
+
+ StatisticalOutlierRemoval uses point neighborhood statistics to filter outlier data.
+
+
+
+
+ RadiusOutlierRemoval uses point neighborhood statistics to filter outlier data.
+
+
+
+
+
+ CropBox is a filter that allows the user to filter all the data inside of a given box.
+
+
+
diff --git a/pcl_ros/plugins/nodelet/libpcl_ros_io.xml b/pcl_ros/plugins/nodelet/libpcl_ros_io.xml
new file mode 100644
index 00000000..498d5d8b
--- /dev/null
+++ b/pcl_ros/plugins/nodelet/libpcl_ros_io.xml
@@ -0,0 +1,49 @@
+
+
+
+
+ NodeletMUX represent a mux nodelet for PointCloud topics: it takes N (up
+ to 8) input topics, and publishes all of them on one output topic.
+
+
+
+
+
+ NodeletDEMUX represent a demux nodelet for PointCloud topics: it
+ publishes 1 input topic to N output topics.
+
+
+
+
+
+ PCDReader reads in a PCD (Point Cloud Data) v.5 file from disk and converts it to a PointCloud message.
+
+
+
+
+
+ BAGReader reads in sensor_msgs/PointCloud2 messages from BAG files.
+
+
+
+
+
+ PCDWriter writes a PointCloud message to disk in a PCD (Point Cloud Data) v.5 file format.
+
+
+
+
+
+ PointCloudConcatenateFieldsSynchronizer is a special form of data synchronizer: it listens for a set of input PointCloud messages on the
+ same topic, checks their timestamps, and concatenates their fields together into a single PointCloud output message.
+
+
+
+
+ PointCloudConcatenateDataSynchronizer is a special form of data
+ synchronizer: it listens for a set of input PointCloud messages on
+ different topics, and concatenates them together into a single PointCloud
+ output message.
+
+
+
diff --git a/pcl_ros/plugins/nodelet/libpcl_ros_segmentation.xml b/pcl_ros/plugins/nodelet/libpcl_ros_segmentation.xml
new file mode 100644
index 00000000..845b74a7
--- /dev/null
+++ b/pcl_ros/plugins/nodelet/libpcl_ros_segmentation.xml
@@ -0,0 +1,37 @@
+
+
+
+
+ ExtractPolygonalPrismData uses a set of point indices that represent a planar model, and together with a given
+ height, generates a 3D polygonal prism. The polygonal prism is then used to segment all points lying inside it.
+
+
+
+
+
+ EuclideanClusterExtraction represents a segmentation class for cluster extraction in an Euclidean sense.
+
+
+
+
+
+ SACSegmentation represents the Nodelet segmentation class for Sample Consensus methods and models, in the sense that
+ it just creates a Nodelet wrapper for generic-purpose SAC-based segmentation.
+
+
+
+
+
+ SACSegmentation represents the Nodelet segmentation class for Sample Consensus methods and models, in the sense that
+ it just creates a Nodelet wrapper for generic-purpose SAC-based segmentation.
+
+
+
+
+
+ SegmentDifferences obtains the difference between two spatially aligned point clouds and returns the
+ difference between them for a maximum given distance threshold.
+
+
+
+
diff --git a/pcl_ros/plugins/nodelet/libpcl_ros_surface.xml b/pcl_ros/plugins/nodelet/libpcl_ros_surface.xml
new file mode 100644
index 00000000..d7c6398b
--- /dev/null
+++ b/pcl_ros/plugins/nodelet/libpcl_ros_surface.xml
@@ -0,0 +1,13 @@
+
+
+
+
+ MovingLeastSquares is an implementation of the MLS algorithm for data reconstruction through bivariate polynomial fitting.
+
+
+
+
+ ConvexHull2D represents a 2D ConvexHull implementation.
+
+
+