00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef __PLUGINS_LASER_FILTERS_DEADSPOTS_H_
00024 #define __PLUGINS_LASER_FILTERS_DEADSPOTS_H_
00025
00026 #include "../filter.h"
00027
00028 #include <vector>
00029 #include <utility>
00030 #include <string>
00031
00032 namespace fawkes {
00033 class Configuration;
00034 class Logger;
00035 }
00036
00037 class LaserDeadSpotsDataFilter : public LaserDataFilter
00038 {
00039 public:
00040 LaserDeadSpotsDataFilter(fawkes::Configuration *config, fawkes::Logger *logger,
00041 std::string prefix);
00042 ~LaserDeadSpotsDataFilter();
00043
00044 void filter(const float *data, unsigned int data_size);
00045
00046 private:
00047 fawkes::Logger *__logger;
00048
00049 unsigned int __num_spots;
00050 unsigned int *__dead_spots;
00051 std::vector<std::pair<float, float> > __cfg_dead_spots;
00052 };
00053
00054 #endif