This prevents errors like this: error: ‘name’ is not a member of ‘pcl::detail::traits’; did you mean ‘pcl::traits::name’?
The error appears for newer PCL versions (everything after commit d39d3d3300), but this change should also be fully compatible with older PCL versions.
* Port transforms library to ROS2
- Port the transforms library to ROS2
- Update CMakeLists
- Update package.xml
- Enable the package
Signed-off-by: Sean Kelly <sean@seankelly.dev>
* Feedback from PR
Collection of hand-made changes to make ament_cpplint pass consisting of:
- whitespace between comments
- line length
- header ordering
- include guard formats
- remove a couple `using namespace std;`
- using c++ casts instead of c-style casts
Signed-off-by: Sean Kelly <sean@seankelly.dev>
* Rename headers from .h to .hpp per ROS2 guidelines
This change is the result of the following command run from pcl_ros dir:
$ find -name *.h | xargs -I {} mv {} {}pp
Signed-off-by: Sean Kelly <sean@seankelly.dev>
* Update internal includes for the renamed headers
This change was the result of the following bash script:
$ find -name *.h -o -name *.cpp -o -name *.hpp | xargs -I {} sed -i 's/\(pcl_ros\/.*\)\(h\)\([">]\)$/\1\2pp\3/g' {}
Signed-off-by: Sean Kelly <sean@seankelly.dev>
After this change 6df3e602a7 (diff-24324a084e511502d7f34054ec31b353L50), an explicit include for KdTree is needed.
It was formerly a transitive include via pcl/surface/mls.h - pcl/search/pcl_search.h - pcl/search/kdtree.h - pcl/kdtree/kdtree_flann.h.
* Deriving typedef from pcl type
* Explicit boost shared_ptr for function parameters
* Use boost::shared_ptr instead of PCL::Ptr
* Implementing boost-std compatibility
* Using the compatibility layer
- HasHeader now returns false
- TimeStamp and FrameId specialed for pcl::PointCloud<T> for any point type T
These changes allow to use pcl::PointCloud with tf::MessageFilter