diff --git a/owlps-positioning/TODO b/owlps-positioning/TODO index 5651c3c..158804e 100644 --- a/owlps-positioning/TODO +++ b/owlps-positioning/TODO @@ -1,20 +1,22 @@ -- Measurement & Request - Actuellement, l'AP associé à chaque Measurement (pointeur) n'est - pas initialisé lors de la lecture depuis un InputCSV. Les - Measurement sont créés par accès direct dans la table de hachage : - measurements[mac_ap].add_ss(ss) - C'est donc le constructeur par défaut Measurement() qui est utilisé - lors du premier accès. - - InputCSV ° Différencier une requête normale d'une requête de calibration, en utilisant les champs de direction. ° Lire la direction en tant qu'entier plutôt que float ? -- '\n' vs. endl. - Utiliser '\n' plutôt que endl lorsque le vidage du tampon n'est pas - nécessaire. +- Commentaires doxygen + +- Tests unitaires + +- Affichage de debug + Garder (generaliser) ? Supprimer ? + +- Réorganisation du dépôt ? + owlps-positioning/src + owlps-positioning/include + owlps-positioning/tests/src + owlps-positioning/tests/include + owlps-positioning/doc (générée par doxygen) - Measurement Vérifier le calcul de moyenne (a priori OK). @@ -25,14 +27,17 @@ ° Compositions : devraient être représentées par des attributs normaux. -- AccessPoint : attribut float friis_index ? +- Request + Constructeur par recopie, operator==(), etc. -- Mobile : attributs Viterbi ? - Cf. l'ancien clientinfo.hh. +- Area + operator=() -- Accesseurs par références ? - getref_mon_attribut() (cf. l'ancien clientinfo.hh) - −> Accesseur en lecture : retourne une référence constante. +- AccessPoint + Attribut float friis_index ? + +- Mobile + Attributs Viterbi ? (Cf. l'ancien clientinfo.hh.) - C++ en action Espaces de noms ? 109 diff --git a/owlps-positioning/accesspoint.cc b/owlps-positioning/accesspoint.cc index 316ced5..0e5ee8b 100644 --- a/owlps-positioning/accesspoint.cc +++ b/owlps-positioning/accesspoint.cc @@ -8,7 +8,7 @@ using namespace std ; /*** Opérateurs ***/ -AccessPoint AccessPoint::operator=(const AccessPoint &ap) +const AccessPoint& AccessPoint::operator=(const AccessPoint &ap) { if (this == &ap) return *this ; @@ -37,8 +37,8 @@ bool AccessPoint::operator==(const AccessPoint &ap) const ostream &operator<<(ostream &os, const AccessPoint &ap) { os - << "Coordinates: " << ap.coordinates << endl - << "Frequency: " << ap.frequency << " Hz" << endl + << "Coordinates: " << ap.coordinates << '\n' + << "Frequency: " << ap.frequency << " Hz" << '\n' << (WifiDevice) ap ; return os ; diff --git a/owlps-positioning/accesspoint.hh b/owlps-positioning/accesspoint.hh index 3f525df..e00a177 100644 --- a/owlps-positioning/accesspoint.hh +++ b/owlps-positioning/accesspoint.hh @@ -33,13 +33,13 @@ public: ~AccessPoint() {} - Point3D get_coordinates(void) const ; + const Point3D& get_coordinates(void) const ; unsigned int get_frequency(void) const ; void set_coordinates(Point3D &_coordinates) ; void set_frequency(unsigned int &_frequency) ; - AccessPoint operator=(const AccessPoint &ap) ; + const AccessPoint& operator=(const AccessPoint &ap) ; bool operator==(const AccessPoint &ap) const ; bool operator!=(const AccessPoint &ap) const ; @@ -51,7 +51,7 @@ public: /*** Accesseurs lecture ***/ -inline Point3D AccessPoint::get_coordinates() const +inline const Point3D& AccessPoint::get_coordinates() const { return coordinates ; } diff --git a/owlps-positioning/area.hh b/owlps-positioning/area.hh index 5f5901f..01e1a81 100644 --- a/owlps-positioning/area.hh +++ b/owlps-positioning/area.hh @@ -25,9 +25,9 @@ public: ~Area() {} Building* get_building(void) const ; - std::string get_name(void) const ; - Point3D get_p_min(void) const ; - Point3D get_p_max(void) const ; + const std::string& get_name(void) const ; + const Point3D& get_p_min(void) const ; + const Point3D& get_p_max(void) const ; void set_building(const Building *_building) ; void set_name(const std::string &_name) ; @@ -59,19 +59,19 @@ inline Building* Area::get_building() const } -inline std::string Area::get_name() const +inline const std::string& Area::get_name() const { return name ; } -inline Point3D Area::get_p_min() const +inline const Point3D& Area::get_p_min() const { return p_min ; } -inline Point3D Area::get_p_max() const +inline const Point3D& Area::get_p_max() const { return p_max ; } diff --git a/owlps-positioning/building.cc b/owlps-positioning/building.cc index eb9f545..586a478 100644 --- a/owlps-positioning/building.cc +++ b/owlps-positioning/building.cc @@ -35,13 +35,13 @@ Building::Building(const Building &b) Building::~Building() { // Empty Area list - for (vector::iterator i = areas.begin() ; i != areas.end() ; i++) + for (vector::iterator i = areas.begin() ; i != areas.end() ; ++i) delete *i ; areas.clear() ; // Empty Waypoint list for (vector::iterator i = waypoints.begin() ; - i != waypoints.end() ; i++) + i != waypoints.end() ; ++i) { // Delete current waypoint only if it is not linked to another building if ((*i)->get_buildings().size() <= 1) @@ -55,7 +55,7 @@ Building::~Building() /*** Opérateurs ***/ -Building Building::operator=(const Building &b) +const Building& Building::operator=(const Building &b) { if (this == &b) return *this ; diff --git a/owlps-positioning/building.hh b/owlps-positioning/building.hh index 916e9f9..6af433a 100644 --- a/owlps-positioning/building.hh +++ b/owlps-positioning/building.hh @@ -21,15 +21,15 @@ public : ~Building(void) ; - std::string get_name(void) const ; - std::vector get_areas(void) const ; - std::vector get_waypoints(void) const ; + const std::string& get_name(void) const ; + const std::vector& get_areas(void) const ; + const std::vector& get_waypoints(void) const ; void set_name(const std::string &_name) ; void add_area(const Area *a) ; void add_waypoint(const Waypoint *wp) ; - Building operator=(const Building &p) ; + const Building& operator=(const Building &p) ; bool operator==(const Building &p) const ; bool operator!=(const Building &p) const ; @@ -41,19 +41,19 @@ public : /*** Accesseurs lecture ***/ -inline std::string Building::get_name() const +inline const std::string& Building::get_name() const { return name ; } -inline std::vector Building::get_areas() const +inline const std::vector& Building::get_areas() const { return areas ; } -inline std::vector Building::get_waypoints() const +inline const std::vector& Building::get_waypoints() const { return waypoints ; } diff --git a/owlps-positioning/calibrationmeasurement.cc b/owlps-positioning/calibrationmeasurement.cc index e176243..1cb2eda 100644 --- a/owlps-positioning/calibrationmeasurement.cc +++ b/owlps-positioning/calibrationmeasurement.cc @@ -5,7 +5,7 @@ /*** Opérateurs ***/ -CalibrationMeasurement +const CalibrationMeasurement& CalibrationMeasurement::operator=(const CalibrationMeasurement &cm) { if (this == &cm) diff --git a/owlps-positioning/calibrationmeasurement.hh b/owlps-positioning/calibrationmeasurement.hh index ced0ea1..e2bfc61 100644 --- a/owlps-positioning/calibrationmeasurement.hh +++ b/owlps-positioning/calibrationmeasurement.hh @@ -26,7 +26,7 @@ public: void set_reference_point(const ReferencePoint *_rp) ; - CalibrationMeasurement operator=(const CalibrationMeasurement &cm) ; + const CalibrationMeasurement& operator=(const CalibrationMeasurement &cm) ; bool operator==(const CalibrationMeasurement &cm) ; bool operator!=(const CalibrationMeasurement &cm) ; diff --git a/owlps-positioning/measurement.cc b/owlps-positioning/measurement.cc index 80021dd..ac6a494 100644 --- a/owlps-positioning/measurement.cc +++ b/owlps-positioning/measurement.cc @@ -45,7 +45,7 @@ void Measurement::update_average_ss() average_ss = 0 ; for (vector::iterator i = ss_list.begin() ; - i != ss_list.end() ; i++) + i != ss_list.end() ; ++i) { float ss_mwatts = pow(10, (float) *i / 10.0) + @@ -88,7 +88,7 @@ void Measurement::clear() /*** Opérateurs ***/ -Measurement Measurement::operator=(const Measurement &m) +const Measurement& Measurement::operator=(const Measurement &m) { if (this == &m) return *this ; @@ -126,7 +126,7 @@ ostream &operator<<(ostream &os, const Measurement &m) os << "No values" ; else for (vector::const_iterator i = m.ss_list.begin() ; - i != m.ss_list.end() ; i++) + i != m.ss_list.end() ; ++i) { os << *i ; if (i != m.ss_list.end() - 1) diff --git a/owlps-positioning/measurement.hh b/owlps-positioning/measurement.hh index af24b0a..8030b58 100644 --- a/owlps-positioning/measurement.hh +++ b/owlps-positioning/measurement.hh @@ -24,7 +24,7 @@ public: ~Measurement() ; AccessPoint* get_ap() const ; - std::vector get_ss_list() const ; + const std::vector& get_ss_list() const ; float get_average_ss() const ; //float get_ss_square_distance(const float &ss) const ; @@ -33,7 +33,7 @@ public: void set_ss_list(const std::vector &_ss_list) ; void clear(void) ; - Measurement operator=(const Measurement &m) ; + const Measurement& operator=(const Measurement &m) ; bool operator==(const Measurement &m) const ; bool operator!=(const Measurement &m) const ; operator bool(void) const ; @@ -52,7 +52,7 @@ inline AccessPoint* Measurement::get_ap() const } -inline std::vector Measurement::get_ss_list() const +inline const std::vector& Measurement::get_ss_list() const { return ss_list ; } diff --git a/owlps-positioning/mobile.cc b/owlps-positioning/mobile.cc index 25fbc0e..c786bd4 100644 --- a/owlps-positioning/mobile.cc +++ b/owlps-positioning/mobile.cc @@ -5,7 +5,7 @@ /*** Opérateurs ***/ -Mobile Mobile::operator=(const Mobile &m) +const Mobile& Mobile::operator=(const Mobile &m) { if (this == &m) return *this ; diff --git a/owlps-positioning/mobile.hh b/owlps-positioning/mobile.hh index 8762c3c..9076357 100644 --- a/owlps-positioning/mobile.hh +++ b/owlps-positioning/mobile.hh @@ -22,7 +22,7 @@ public: ~Mobile() {} - Mobile operator=(const Mobile &m) ; + const Mobile& operator=(const Mobile &m) ; bool operator==(const Mobile &m) const ; bool operator!=(const Mobile &m) const ; diff --git a/owlps-positioning/point3d.cc b/owlps-positioning/point3d.cc index 6d4983b..085a669 100644 --- a/owlps-positioning/point3d.cc +++ b/owlps-positioning/point3d.cc @@ -63,7 +63,7 @@ float Point3D::square_distance(const float &_x, /*** Opérateurs ***/ -Point3D Point3D::operator=(const Point3D &p) +const Point3D& Point3D::operator=(const Point3D &p) { if (this == &p) return *this ; diff --git a/owlps-positioning/point3d.hh b/owlps-positioning/point3d.hh index 4ec4a43..79b5521 100644 --- a/owlps-positioning/point3d.hh +++ b/owlps-positioning/point3d.hh @@ -16,7 +16,7 @@ public: Point3D(const Point3D &p) ; Point3D(const float c[3]) ; - ~Point3D() {} + virtual ~Point3D(void) {} float get_x(void) const ; float get_y(void) const ; @@ -36,7 +36,7 @@ public: const float &my, const float &mz) const ; - Point3D operator=(const Point3D &p) ; + const Point3D& operator=(const Point3D &p) ; bool operator==(const Point3D &p) const ; bool operator!=(const Point3D &p) const ; bool operator<(const Point3D &p) const ; diff --git a/owlps-positioning/referencepoint.cc b/owlps-positioning/referencepoint.cc index 6bfe81d..44fcfe7 100644 --- a/owlps-positioning/referencepoint.cc +++ b/owlps-positioning/referencepoint.cc @@ -27,10 +27,10 @@ ReferencePoint::~ReferencePoint() // new_meas.addSsValue(-95); // /* Complete measurement vector with unexisting ap (from ref point) */ -// for (i = 0 ; i < ref_m.size() ; i++) +// for (i = 0 ; i < ref_m.size() ; ++i) // { // found = false; -// for (j = 0 ; j < test_m.size() && !found ; j++) +// for (j = 0 ; j < test_m.size() && !found ; ++j) // if (test_m[j].getMacAddr() == ref_m[i].getMacAddr()) // found = true; // if (!found) @@ -41,10 +41,10 @@ ReferencePoint::~ReferencePoint() // } // /* Now, complete ref. point meas. */ -// for (i = 0 ; i < test_m.size() ; i++) +// for (i = 0 ; i < test_m.size() ; ++i) // { // found = false; -// for (j = 0 ; j < ref_m.size() && !found ; j++) +// for (j = 0 ; j < ref_m.size() && !found ; ++j) // if (test_m[i].getMacAddr() == ref_m[j].getMacAddr()) // found = true; // if (!found) @@ -55,7 +55,7 @@ ReferencePoint::~ReferencePoint() // } // /* Now, compute SS distance */ -// for (i = 0 ; i < test_m.size() ; i++) +// for (i = 0 ; i < test_m.size() ; ++i) // { // j = 0; // found = false; @@ -66,7 +66,7 @@ ReferencePoint::~ReferencePoint() // found = true; // ret += ref_m[j].getSsSquareDistance(test_m[i].getAverage()); // } -// j++; +// ++j; // } // } @@ -83,7 +83,7 @@ ReferencePoint::~ReferencePoint() // CalibrationMeasurement m; // bool inserted = false; -// for (i = 0 ; i < measurements.size() ; i++) +// for (i = 0 ; i < measurements.size() ; ++i) // if (measurements[i].getMacAddr() == mac_a) // { // measurements[i].addSsValue(value); @@ -110,7 +110,7 @@ ReferencePoint::~ReferencePoint() // for (int j=0; j < length; ++j) // str[j] = tolower(str[j]); -// for (i = 0 ; i < measurements.size() ; i++) +// for (i = 0 ; i < measurements.size() ; ++i) // if (measurements[i].getMacAddr() == str) // { // *p = measurements[i].getAverage(); @@ -125,7 +125,7 @@ ReferencePoint::~ReferencePoint() /*** Opérateurs ***/ -ReferencePoint ReferencePoint::operator=(const ReferencePoint &rp) +const ReferencePoint& ReferencePoint::operator=(const ReferencePoint &rp) { if (this == &rp) return *this ; @@ -152,16 +152,16 @@ bool ReferencePoint::operator==(const ReferencePoint &rp) const ostream &operator<<(ostream &os, const ReferencePoint &rp) { // Coordinates - os << (Point3D) rp << endl ; + os << (Point3D) rp << '\n' ; // List of measurements if (rp.measurements.size() == 0) - os << "No measurement." << endl ; + os << "No measurement." << '\n' ; else for (vector::const_iterator i = rp.measurements.begin() ; - i != rp.measurements.end() ; i++) - os << endl << *i ; + i != rp.measurements.end() ; ++i) + os << '\n' << *i ; return os ; } diff --git a/owlps-positioning/referencepoint.hh b/owlps-positioning/referencepoint.hh index 41b31fd..887d88b 100644 --- a/owlps-positioning/referencepoint.hh +++ b/owlps-positioning/referencepoint.hh @@ -22,13 +22,13 @@ public: ~ReferencePoint() ; - std::vector get_measurements() const ; + const std::vector& get_measurements(void) const ; void add_measurement(const CalibrationMeasurement *cm) ; // float get_ss_square_distance(const vector &m) const ; // bool get_power_for_ap(const string &ap_mac, float *p) const ; - ReferencePoint operator=(const ReferencePoint &rp) ; + const ReferencePoint& operator=(const ReferencePoint &rp) ; bool operator==(const ReferencePoint &rp) const ; bool operator!=(const ReferencePoint &rp) const ; @@ -40,8 +40,8 @@ public: /*** Accesseurs lecture ***/ -inline -std::vector ReferencePoint::get_measurements() const +inline const +std::vector& ReferencePoint::get_measurements() const { return measurements ; } diff --git a/owlps-positioning/request.cc b/owlps-positioning/request.cc index cc3d4bf..be520e1 100644 --- a/owlps-positioning/request.cc +++ b/owlps-positioning/request.cc @@ -70,7 +70,7 @@ ostream &operator<<(ostream &os, const Request &r) os << " No values" ; else for (unordered_map::const_iterator i - = r.measurements.begin() ; i != r.measurements.end() ; i++) + = r.measurements.begin() ; i != r.measurements.end() ; ++i) { os << '\n' << i->first << ": " << i->second ; } diff --git a/owlps-positioning/request.hh b/owlps-positioning/request.hh index 11b6b67..f21d57c 100644 --- a/owlps-positioning/request.hh +++ b/owlps-positioning/request.hh @@ -26,7 +26,7 @@ public: const std::tr1::unordered_map &_measurements = std::tr1::unordered_map()) ; - Mobile* get_mobile() const ; + Mobile* get_mobile(void) const ; void set_mobile(const Mobile *_mobile) ; void set_timestamp(const struct timespec &_timestamp) ; diff --git a/owlps-positioning/waypoint.cc b/owlps-positioning/waypoint.cc index bab373d..ad0bb37 100644 --- a/owlps-positioning/waypoint.cc +++ b/owlps-positioning/waypoint.cc @@ -32,7 +32,7 @@ Waypoint::~Waypoint() /*** Opérateurs ***/ -Waypoint Waypoint::operator=(const Waypoint &wp) +const Waypoint& Waypoint::operator=(const Waypoint &wp) { if (this == &wp) return *this ; @@ -63,11 +63,11 @@ ostream &operator<<(ostream &os, const Waypoint &wp) // List of buildings if (wp.buildings.size() == 0) - os << endl << "Belongs to no building!" ; + os << '\n' << "Belongs to no building!" ; else for (vector::const_iterator i = wp.buildings.begin() ; - i != wp.buildings.end() ; i++) - os << endl << *i ; + i != wp.buildings.end() ; ++i) + os << '\n' << *i ; return os ; } diff --git a/owlps-positioning/waypoint.hh b/owlps-positioning/waypoint.hh index dcdba23..07ae1ec 100644 --- a/owlps-positioning/waypoint.hh +++ b/owlps-positioning/waypoint.hh @@ -24,11 +24,11 @@ public: ~Waypoint(void) ; Building* get_1st_building(void) const ; - std::vector get_buildings(void) const ; + const std::vector& get_buildings(void) const ; void add_building(const Building *_b) ; - Waypoint operator=(const Waypoint &wp) ; + const Waypoint& operator=(const Waypoint &wp) ; bool operator==(const Waypoint &wp) const ; bool operator!=(const Waypoint &wp) const ; @@ -53,7 +53,7 @@ inline Building* Waypoint::get_1st_building() const } -inline std::vector Waypoint::get_buildings() const +inline const std::vector& Waypoint::get_buildings() const { return buildings ; } diff --git a/owlps-positioning/wifidevice.cc b/owlps-positioning/wifidevice.cc index 0143d7e..58bf953 100644 --- a/owlps-positioning/wifidevice.cc +++ b/owlps-positioning/wifidevice.cc @@ -32,7 +32,7 @@ WifiDevice::WifiDevice(const WifiDevice &wd) /*** Opérateurs ***/ -WifiDevice WifiDevice::operator=(const WifiDevice &wd) +const WifiDevice& WifiDevice::operator=(const WifiDevice &wd) { if (this == &wd) return *this ; @@ -63,9 +63,9 @@ bool WifiDevice::operator==(const WifiDevice &wd) const ostream &operator<<(ostream &os, const WifiDevice &wd) { os - << "IP address: " << wd.ip_addr << endl - << "MAC address: " << wd.mac_addr << endl - << "Antenna gain: " << wd.antenna_gain << "dBi" << endl + << "IP address: " << wd.ip_addr << '\n' + << "MAC address: " << wd.mac_addr << '\n' + << "Antenna gain: " << wd.antenna_gain << "dBi" << '\n' << "Output power: " << wd.trx_power << "dBm" ; return os ; diff --git a/owlps-positioning/wifidevice.hh b/owlps-positioning/wifidevice.hh index e8af829..87cab56 100644 --- a/owlps-positioning/wifidevice.hh +++ b/owlps-positioning/wifidevice.hh @@ -26,8 +26,8 @@ public: ~WifiDevice() {} - std::string get_ip_addr(void) const ; - std::string get_mac_addr(void) const ; + const std::string& get_ip_addr(void) const ; + const std::string& get_mac_addr(void) const ; float get_antenna_gain(void) const ; float get_trx_power(void) const ; @@ -36,7 +36,7 @@ public: void set_antenna_gain(float &_antenna_gain) ; void set_trx_power(float &_trx_power) ; - WifiDevice operator=(const WifiDevice &wd) ; + const WifiDevice& operator=(const WifiDevice &wd) ; bool operator==(const WifiDevice &wd) const ; bool operator!=(const WifiDevice &wl) const ; @@ -48,13 +48,13 @@ public: /*** Accesseurs lecture ***/ -inline std::string WifiDevice::get_ip_addr() const +inline const std::string& WifiDevice::get_ip_addr() const { return ip_addr ; } -inline std::string WifiDevice::get_mac_addr() const +inline const std::string& WifiDevice::get_mac_addr() const { return mac_addr ; }