You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
However as pointed out in #9 the CMakeLists.txt file includes the line "class_loader_hide_library_symbols(pcl_ros_filters)", and pcl_ros_filters is the only library containing the compiled contents of pcl_ros::Filter. Therefore pcl_ros::Filter is not actually usable by outside programmers. If it is really intended to be only an internal helper class for the pcl_ros_filters library, then it should be documented as such.
However it appears to be a more generally useful helper class, making it easy to write PCL filter nodelets without a bunch of boilerplate. To make this possible, a new library should be defined, say pcl_ros_filter or pcl_ros_filter_base which contains only pcl_ros::Filter. That library would naturally not have class_loader_hide_library_symbols() because it would not be defining a plugin. Then implementors of new filters would link against that library, as would the existing pcl_ros_filters library.
In the meantime the solution to my problem is to copy pcl_ros/filters/filter.cpp into my own code and do a bunch of renaming.
The text was updated successfully, but these errors were encountered:
Documentation about the pcl_ros::Filter class http://ros.org/doc/groovy/api/pcl_ros/html/classpcl__ros_1_1Filter.html makes it appear that it is a class which can be used by implementers of new pcl filter nodelets.
However as pointed out in #9 the CMakeLists.txt file includes the line "class_loader_hide_library_symbols(pcl_ros_filters)", and pcl_ros_filters is the only library containing the compiled contents of pcl_ros::Filter. Therefore pcl_ros::Filter is not actually usable by outside programmers. If it is really intended to be only an internal helper class for the pcl_ros_filters library, then it should be documented as such.
However it appears to be a more generally useful helper class, making it easy to write PCL filter nodelets without a bunch of boilerplate. To make this possible, a new library should be defined, say pcl_ros_filter or pcl_ros_filter_base which contains only pcl_ros::Filter. That library would naturally not have class_loader_hide_library_symbols() because it would not be defining a plugin. Then implementors of new filters would link against that library, as would the existing pcl_ros_filters library.
In the meantime the solution to my problem is to copy pcl_ros/filters/filter.cpp into my own code and do a bunch of renaming.
The text was updated successfully, but these errors were encountered: