Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes
segbot_sensors::Filter Class Reference

Filter represents the base filter class. Some generic 3D operations that are applicable to all filters are defined here as static methods. More...

#include <segbot_velodyne_outlier_removal.h>

Inheritance diagram for segbot_sensors::Filter:
Inheritance graph
[legend]

List of all members.

Public Types

typedef boost::shared_ptr
< const std::vector< int > > 
IndicesConstPtr
typedef boost::shared_ptr
< std::vector< int > > 
IndicesPtr
typedef sensor_msgs::PointCloud2 PointCloud2

Public Member Functions

 Filter ()

Protected Member Functions

virtual bool child_init (ros::NodeHandle &nh, bool &has_service)
 Child initialization routine.
void computePublish (const PointCloud2::ConstPtr &input, const IndicesPtr &indices)
 Call the child filter () method, optionally transform the result, and publish it.
virtual void filter (const PointCloud2::ConstPtr &input, const IndicesPtr &indices, PointCloud2 &output)=0
 Virtual abstract filter method. To be implemented by every child.
virtual void onInit ()
 Nodelet initialization routine.

Protected Attributes

std::string filter_field_name_
 The desired user filter field name.
double filter_limit_max_
 The maximum allowed filter value a point will be considered from.
double filter_limit_min_
 The minimum allowed filter value a point will be considered from.
bool filter_limit_negative_
 Set to true if we want to return the data outside (filter_limit_min_;filter_limit_max_). Default: false.
boost::mutex mutex_
 Internal mutex.
ros::Subscriber sub_input_
 The input PointCloud subscriber.
message_filters::Subscriber
< PointCloud2
sub_input_filter_
std::string tf_input_frame_
 The input TF frame the data should be transformed into, if input.header.frame_id is different.
std::string tf_input_orig_frame_
 The original data input TF frame.
std::string tf_output_frame_
 The output TF frame the data should be transformed into, if input.header.frame_id is different.

Private Member Functions

virtual void config_callback (pcl_ros::FilterConfig &config, uint32_t level)
 Dynamic reconfigure service callback.
void input_indices_callback (const PointCloud2::ConstPtr &cloud, const PointIndicesConstPtr &indices)
 PointCloud2 + Indices data callback.

Private Attributes

boost::shared_ptr
< dynamic_reconfigure::Server
< pcl_ros::FilterConfig > > 
srv_
 Pointer to a dynamic reconfigure service.
boost::shared_ptr
< message_filters::Synchronizer
< sync_policies::ApproximateTime
< PointCloud2, PointIndices > > > 
sync_input_indices_a_
boost::shared_ptr
< message_filters::Synchronizer
< sync_policies::ExactTime
< PointCloud2, PointIndices > > > 
sync_input_indices_e_
 Synchronized input, and indices.

Detailed Description

Filter represents the base filter class. Some generic 3D operations that are applicable to all filters are defined here as static methods.

Author:
Radu Bogdan Rusu

Definition at line 72 of file segbot_velodyne_outlier_removal.h.


Member Typedef Documentation

typedef boost::shared_ptr<const std::vector<int> > segbot_sensors::Filter::IndicesConstPtr

Reimplemented from pcl_ros::PCLNodelet.

Definition at line 78 of file segbot_velodyne_outlier_removal.h.

typedef boost::shared_ptr<std::vector<int> > segbot_sensors::Filter::IndicesPtr

Reimplemented from pcl_ros::PCLNodelet.

Definition at line 77 of file segbot_velodyne_outlier_removal.h.

typedef sensor_msgs::PointCloud2 segbot_sensors::Filter::PointCloud2

Reimplemented from pcl_ros::PCLNodelet.

Definition at line 75 of file segbot_velodyne_outlier_removal.h.


Constructor & Destructor Documentation

Definition at line 80 of file segbot_velodyne_outlier_removal.h.


Member Function Documentation

virtual bool segbot_sensors::Filter::child_init ( ros::NodeHandle nh,
bool &  has_service 
) [inline, protected, virtual]

Child initialization routine.

Parameters:
nhROS node handle
has_serviceset to true if the child has a Dynamic Reconfigure service

Definition at line 117 of file segbot_velodyne_outlier_removal.h.

void segbot_sensors::Filter::computePublish ( const PointCloud2::ConstPtr &  input,
const IndicesPtr indices 
) [protected]

Call the child filter () method, optionally transform the result, and publish it.

Parameters:
inputthe input point cloud dataset.
indicesa pointer to the vector of point indices to use.
virtual void segbot_sensors::Filter::config_callback ( pcl_ros::FilterConfig &  config,
uint32_t  level 
) [private, virtual]

Dynamic reconfigure service callback.

virtual void segbot_sensors::Filter::filter ( const PointCloud2::ConstPtr &  input,
const IndicesPtr indices,
PointCloud2 output 
) [protected, pure virtual]

Virtual abstract filter method. To be implemented by every child.

Parameters:
inputthe input point cloud dataset.
indicesa pointer to the vector of point indices to use.
outputthe resultant filtered PointCloud2
void segbot_sensors::Filter::input_indices_callback ( const PointCloud2::ConstPtr &  cloud,
const PointIndicesConstPtr indices 
) [private]

PointCloud2 + Indices data callback.

virtual void segbot_sensors::Filter::onInit ( ) [protected, virtual]

Nodelet initialization routine.

Reimplemented from pcl_ros::PCLNodelet.


Member Data Documentation

The desired user filter field name.

Definition at line 89 of file segbot_velodyne_outlier_removal.h.

The maximum allowed filter value a point will be considered from.

Definition at line 95 of file segbot_velodyne_outlier_removal.h.

The minimum allowed filter value a point will be considered from.

Definition at line 92 of file segbot_velodyne_outlier_removal.h.

Set to true if we want to return the data outside (filter_limit_min_;filter_limit_max_). Default: false.

Definition at line 98 of file segbot_velodyne_outlier_removal.h.

boost::mutex segbot_sensors::Filter::mutex_ [protected]

Internal mutex.

Definition at line 110 of file segbot_velodyne_outlier_removal.h.

boost::shared_ptr<dynamic_reconfigure::Server<pcl_ros::FilterConfig> > segbot_sensors::Filter::srv_ [private]

Pointer to a dynamic reconfigure service.

Definition at line 145 of file segbot_velodyne_outlier_removal.h.

The input PointCloud subscriber.

Definition at line 84 of file segbot_velodyne_outlier_removal.h.

Reimplemented from pcl_ros::PCLNodelet.

Definition at line 86 of file segbot_velodyne_outlier_removal.h.

Definition at line 149 of file segbot_velodyne_outlier_removal.h.

Synchronized input, and indices.

Definition at line 148 of file segbot_velodyne_outlier_removal.h.

The input TF frame the data should be transformed into, if input.header.frame_id is different.

Definition at line 101 of file segbot_velodyne_outlier_removal.h.

The original data input TF frame.

Definition at line 104 of file segbot_velodyne_outlier_removal.h.

The output TF frame the data should be transformed into, if input.header.frame_id is different.

Definition at line 107 of file segbot_velodyne_outlier_removal.h.


The documentation for this class was generated from the following file:


segbot_sensors
Author(s): Piyush Khandelwal
autogenerated on Thu Jun 6 2019 21:37:13