[Positioning] Del MultilaterationAlgorithm::mobile
Makefile: Use colorgcc. Update TODO.
This commit is contained in:
parent
428639b814
commit
630df51702
|
@ -23,7 +23,7 @@ CPPCHECK = cppcheck --enable=all
|
|||
DOXYGEN = doxygen >/dev/null
|
||||
|
||||
# Compilation tools and flags
|
||||
GXX = g++-4.4
|
||||
GXX = colorgcc
|
||||
#DEBUG = -g
|
||||
TESTSGXXFLAGS = -I$(TESTS_DIR) -I$(SRC_DIR) -I.
|
||||
GXXFLAGS = $(DEBUG) -Wall -Wextra
|
||||
|
|
|
@ -1,4 +1,8 @@
|
|||
|
||||
- Interface utilisateur
|
||||
° Pour plus de souplesse, comparer les chaînes sans tenir compte de
|
||||
la casse.
|
||||
|
||||
- Hachages
|
||||
° Regrouper les surcharges de hash_value() dans un fichier
|
||||
d'en-tête dédié.
|
||||
|
|
|
@ -7,6 +7,8 @@ using std::tr1::unordered_map ;
|
|||
|
||||
float InterlinkNetworks::estimate_distance(const Measurement &measurement)
|
||||
{
|
||||
assert(request) ;
|
||||
|
||||
const AccessPoint &ap = *measurement.get_ap() ;
|
||||
assert(&ap) ;
|
||||
|
||||
|
@ -18,7 +20,7 @@ float InterlinkNetworks::estimate_distance(const Measurement &measurement)
|
|||
ap.get_frequency() /
|
||||
(4 * M_PI)
|
||||
) +
|
||||
mobile->get_antenna_gain() ;
|
||||
request->get_mobile()->get_antenna_gain() ;
|
||||
const float &average_ss = measurement.get_average_ss() ;
|
||||
return pow(10, (constant_term - average_ss) / 35) ;
|
||||
}
|
||||
|
|
|
@ -7,8 +7,7 @@
|
|||
class InterlinkNetworks: public MultilaterationAlgorithm
|
||||
{
|
||||
public:
|
||||
InterlinkNetworks(const Mobile *_mobile = NULL):
|
||||
MultilaterationAlgorithm(_mobile) {}
|
||||
InterlinkNetworks(void) {}
|
||||
~InterlinkNetworks(void) {}
|
||||
|
||||
float estimate_distance(const Measurement &measurement) ;
|
||||
|
|
|
@ -9,9 +9,8 @@ using std::tr1::unordered_map ;
|
|||
/* *** Constructors *** */
|
||||
|
||||
|
||||
MultilaterationAlgorithm::
|
||||
MultilaterationAlgorithm(const Mobile *_mobile):
|
||||
mobile(_mobile), request(NULL)
|
||||
MultilaterationAlgorithm::MultilaterationAlgorithm():
|
||||
request(NULL)
|
||||
{
|
||||
// Will be changed when other multilateration methods will be
|
||||
// implemented
|
||||
|
@ -34,10 +33,9 @@ MultilaterationAlgorithm::~MultilaterationAlgorithm()
|
|||
Result MultilaterationAlgorithm::compute(const Request &_request)
|
||||
{
|
||||
request = &_request ;
|
||||
mobile = request->get_mobile() ;
|
||||
|
||||
compute_ap_distance_circles() ;
|
||||
Point3D position = multilaterate() ;
|
||||
Point3D position(multilaterate()) ;
|
||||
|
||||
return Result(request, position) ;
|
||||
}
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
class MultilaterationAlgorithm: public PositioningAlgorithm
|
||||
{
|
||||
protected:
|
||||
const Mobile *mobile ;
|
||||
const Request *request ;
|
||||
|
||||
std::tr1::unordered_map<AccessPoint*, float> ap_distances ;
|
||||
|
@ -21,7 +20,7 @@ protected:
|
|||
//@}
|
||||
|
||||
public:
|
||||
MultilaterationAlgorithm(const Mobile *_mobile = NULL) ;
|
||||
MultilaterationAlgorithm(void) ;
|
||||
|
||||
virtual ~MultilaterationAlgorithm(void) ;
|
||||
|
||||
|
|
|
@ -8,9 +8,13 @@ public:
|
|||
|
||||
void test_distance(void)
|
||||
{
|
||||
MultilaterationAlgorithm *algo = new InterlinkNetworks() ;
|
||||
|
||||
// Initialise algo->request
|
||||
char mobile_gain = 3, mobile_power = 15 ;
|
||||
Mobile mobile("", "", mobile_gain, mobile_power) ;
|
||||
MultilaterationAlgorithm *algo = new InterlinkNetworks(&mobile) ;
|
||||
Request request(&mobile) ;
|
||||
algo->compute(request) ; // yes, that's ugly
|
||||
|
||||
char ap_gain = 5, ap_power = 20, ap_channel = 1 ;
|
||||
AccessPoint ap(Point3D(), "", "", ap_gain, ap_power, ap_channel) ;
|
||||
|
|
Loading…
Reference in New Issue