MapReferenceICP: include/lasermodel.h Source File

- Main Page
- Modules
- Classes
- Files

# include/lasermodel.h

    00001 #ifndef LASERMODEL_H_
    00002 #define LASERMODEL_H_
    00003 // Info for a single range measurement
    00004 typedef struct
    00005 {
    00006         double range, bearing;
    00007 }       laser_range_t;
    00008
    00009 class LaserModel
    00010 {
    00011         private:
    00012                 mapgrid * * map;        // Pointer to the OG map
    00013                 double range_cov;       // Covariance in the range reading
    00014                 double range_bad;       // Probability of spurious range readings
    00015                 // Pre-computed laser sensor model
    00016                 int lut_size;
    00017                 double  lut_res;
    00018                 double *lut_probs;
    00019                 int range_count;
    00020                 laser_range_t *ranges;
    00021         public :
    00022                 void    ClearRanges();
    00023                 void    AddRange(double,double);
    00024                 void    PreCompute();
    00025                 double  RangeProb(double,double);
    00026                 double  PoseProb();
    00027                                 LaserModel();
    00028                                 ~LaserModel();
    00029                                 LaserModel(mapgrid * * );
    00030 };
    00031 #endif /*LASERMODEL_H_*/