2010-06-10 15:57:03 +02:00
|
|
|
#include "fbcm.hh"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
float FBCM::estimate_distance(const Measurement &measurement)
|
|
|
|
{
|
|
|
|
double constant_term = make_constant_term(measurement) ;
|
|
|
|
const float &average_ss = measurement.get_average_ss() ;
|
|
|
|
const AccessPoint *ap = measurement.get_ap() ;
|
|
|
|
return pow(10, (constant_term - average_ss) /
|
2010-06-14 17:15:48 +02:00
|
|
|
(10 * friis_index(ap))) ;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
inline float FBCM::friis_index(const AccessPoint *const ap) const
|
|
|
|
{
|
|
|
|
return ap->get_friis_index() ;
|
2010-06-10 15:57:03 +02:00
|
|
|
}
|