35 #ifndef LEG_DETECTOR_LASER_PROCESSOR_H 36 #define LEG_DETECTOR_LASER_PROCESSOR_H 40 #include <sensor_msgs/LaserScan.h> 41 #include <sensor_msgs/PointCloud.h> 42 #include <geometry_msgs/Point.h> 65 static Sample*
Extract(
int ind,
const sensor_msgs::LaserScan& scan);
84 class SampleSet :
public std::set<Sample*, CompareSample>
96 void appendToCloud(sensor_msgs::PointCloud& cloud,
int r = 0,
int g = 0,
int b = 0);
112 ScanMask() : filled(false), angle_min(0), angle_max(0), size(0) { }
120 void addScan(sensor_msgs::LaserScan& scan);
122 bool hasSample(
Sample*
s,
float thresh);
142 void removeLessThan(uint32_t num);
144 void splitConnected(
float thresh);
148 #endif // LEG_DETECTOR_LASER_PROCESSOR_H
std::list< SampleSet * > clusters_
static Sample * Extract(int ind, const sensor_msgs::LaserScan &scan)
sensor_msgs::LaserScan scan_
An ordered set of Samples.
A struct representing a single sample from the laser.
std::list< SampleSet * > & getClusters()
bool operator()(const Sample *a, const Sample *b)
The comparator allowing the creation of an ordered "SampleSet".
A mask for filtering out Samples based on range.