From ea01f09b5ebec4869c1e329dce7e9970260822ea Mon Sep 17 00:00:00 2001 From: Matteo Cypriani Date: Wed, 2 Oct 2013 16:22:20 -0400 Subject: [PATCH] [Positioner] Use auto for iterators Use the 'auto' keyword instead of declaring explicitly an iterator type, where possible. --- owlps-positioner/autocalibrationline.cc | 3 +- owlps-positioner/autocalibrationmesh.cc | 3 +- owlps-positioner/building.cc | 9 +-- owlps-positioner/capturepoint.cc | 3 +- owlps-positioner/configuration.cc | 3 +- owlps-positioner/csvstringreader.cc | 3 +- owlps-positioner/input.cc | 9 +-- owlps-positioner/inputdatareader.cc | 18 ++---- owlps-positioner/measurement.cc | 18 +++--- owlps-positioner/output.cc | 9 +-- owlps-positioner/positioning.cc | 24 +++----- owlps-positioner/posutil.cc | 12 ++-- owlps-positioner/referencepoint.cc | 46 +++++--------- owlps-positioner/request.cc | 10 ++- owlps-positioner/resultlist.cc | 6 +- owlps-positioner/stock.cc | 72 +++++++++------------- owlps-positioner/tests/inputcsv_test.hh | 9 +-- owlps-positioner/tests/inputlogcsv_test.hh | 3 +- owlps-positioner/tests/testutil.cc | 15 ++--- owlps-positioner/topologyreadercsv.cc | 3 +- owlps-positioner/trilaterationalgorithm.cc | 3 +- owlps-positioner/waypoint.cc | 6 +- 22 files changed, 102 insertions(+), 185 deletions(-) diff --git a/owlps-positioner/autocalibrationline.cc b/owlps-positioner/autocalibrationline.cc index 023b0df..3d90423 100644 --- a/owlps-positioner/autocalibrationline.cc +++ b/owlps-positioner/autocalibrationline.cc @@ -121,9 +121,8 @@ void AutocalibrationLine::sort_reference_cps() const vector &ref_cr = ref_rp.get_requests() ; /* Search for the first measurement made by RX in ref_rp */ const Measurement *rx_measurement = NULL ; - vector::const_iterator cr ; const string &rx_mac = rx->second.get_mac_addr() ; - for (cr = ref_cr.begin() ; cr != ref_cr.end() ; ++cr) + for (auto cr = ref_cr.begin() ; cr != ref_cr.end() ; ++cr) { rx_measurement = (*cr)->get_measurement(rx_mac) ; if (rx_measurement) diff --git a/owlps-positioner/autocalibrationmesh.cc b/owlps-positioner/autocalibrationmesh.cc index 9475e7c..d3043da 100644 --- a/owlps-positioner/autocalibrationmesh.cc +++ b/owlps-positioner/autocalibrationmesh.cc @@ -68,8 +68,7 @@ void AutocalibrationMesh::sort_reference_cps() sorted_negative_angles.clear() ; sorted_positive_angles.clear() ; - for (unordered_map::const_iterator - ref = Stock::cps.begin() ; ref != Stock::cps.end() ; ++ref) + for (auto ref = Stock::cps.begin() ; ref != Stock::cps.end() ; ++ref) { if (ref == rx) continue ; diff --git a/owlps-positioner/building.cc b/owlps-positioner/building.cc index f93bbd7..5f3dc62 100644 --- a/owlps-positioner/building.cc +++ b/owlps-positioner/building.cc @@ -33,14 +33,12 @@ using namespace std ; Building::~Building() { // Empty Area list - for (unordered_map::const_iterator i = areas.begin() ; - i != areas.end() ; ++i) + for (auto i = areas.begin() ; i != areas.end() ; ++i) delete i->second ; areas.clear() ; // Empty Waypoint list - for (unordered_set::const_iterator i = waypoints.begin() ; - i != waypoints.end() ; ++i) + for (auto i = waypoints.begin() ; i != waypoints.end() ; ++i) Stock::waypoint_remove_building(**i, this) ; waypoints.clear() ; } @@ -65,8 +63,7 @@ void Building::add_area(Area *&area) string area_name = area->get_name() ; // Check if the area already exist in areas - unordered_map::const_iterator i = - areas.find(area_name) ; + auto i = areas.find(area_name) ; if (i != areas.end()) { // Do not delete if area points to the already stored Area diff --git a/owlps-positioner/capturepoint.cc b/owlps-positioner/capturepoint.cc index 5a772c8..d89b86f 100644 --- a/owlps-positioner/capturepoint.cc +++ b/owlps-positioner/capturepoint.cc @@ -66,8 +66,7 @@ received_calibration_from_cp(const CapturePoint &trx) const unsigned int received_packets = 0, expected_packets = 0 ; - for (vector::const_iterator cr = - ref_requests.begin() ; cr != ref_requests.end() ; ++cr) + for (auto cr = ref_requests.begin() ; cr != ref_requests.end() ; ++cr) { const Measurement *const measurement = (*cr)->get_measurement(mac_addr) ; diff --git a/owlps-positioner/configuration.cc b/owlps-positioner/configuration.cc index 3715268..4213ae8 100644 --- a/owlps-positioner/configuration.cc +++ b/owlps-positioner/configuration.cc @@ -85,8 +85,7 @@ value_exists_in_string_vector(const string &key, const string &value) vector key_values = configuration[key].as< vector >() ; - for (vector::const_iterator i = key_values.begin() ; - i != key_values.end() ; ++i) + for (auto i = key_values.begin() ; i != key_values.end() ; ++i) if (*i == value) return true ; diff --git a/owlps-positioner/csvstringreader.cc b/owlps-positioner/csvstringreader.cc index e3eae02..e577701 100644 --- a/owlps-positioner/csvstringreader.cc +++ b/owlps-positioner/csvstringreader.cc @@ -77,8 +77,7 @@ bool CSVStringReader::read_timestamp(Timestamp &t) tokenizer > tok( timestamp_str, escaped_list_separator('\\', '.', '\"')) ; - tokenizer >::const_iterator tok_iter = - tok.begin() ; + auto tok_iter = tok.begin() ; if (tok_iter == tok.end()) return false ; diff --git a/owlps-positioner/input.cc b/owlps-positioner/input.cc index 7dbef00..b43409c 100644 --- a/owlps-positioner/input.cc +++ b/owlps-positioner/input.cc @@ -43,8 +43,7 @@ Input::~Input() { delete medium ; - for (vector::const_iterator i = log_media.begin() ; - i != log_media.end() ; ++i) + for (auto i = log_media.begin() ; i != log_media.end() ; ++i) delete *i ; log_media.clear() ; } @@ -98,8 +97,7 @@ void Input::initialise_log_media() const vector &media_names = Configuration::string_vector_value("log.medium") ; - for (vector::const_iterator i = media_names.begin() ; - i != media_names.end() ; ++i) + for (auto i = media_names.begin() ; i != media_names.end() ; ++i) { if (*i == "CSV") initialise_log_csv() ; @@ -193,7 +191,6 @@ bool Input::eof() const void Input::log_current_request() const { - for (vector::const_iterator i = log_media.begin() ; - i != log_media.end() ; ++i) + for (auto i = log_media.begin() ; i != log_media.end() ; ++i) (*i)->log_request(medium->get_current_request()) ; } diff --git a/owlps-positioner/inputdatareader.cc b/owlps-positioner/inputdatareader.cc index 5a4cbdf..6724dc1 100644 --- a/owlps-positioner/inputdatareader.cc +++ b/owlps-positioner/inputdatareader.cc @@ -42,8 +42,7 @@ InputDataReader::InputDataReader() InputDataReader::~InputDataReader() { - for (vector::const_iterator i = - reference_points_media.begin() ; + for (auto i = reference_points_media.begin() ; i != reference_points_media.end() ; ++i) delete *i ; reference_points_media.clear() ; @@ -71,8 +70,7 @@ void InputDataReader::initialise_access_points_media() const vector &media_names = Configuration::string_vector_value("data-input.cp-medium") ; - for (vector::const_iterator i = media_names.begin() ; - i != media_names.end() ; ++i) + for (auto i = media_names.begin() ; i != media_names.end() ; ++i) { if (*i == "CSV") initialise_access_points_csv() ; @@ -116,8 +114,7 @@ void InputDataReader::initialise_mobiles_media() const vector &media_names = Configuration::string_vector_value("data-input.mobile-medium") ; - for (vector::const_iterator i = media_names.begin() ; - i != media_names.end() ; ++i) + for (auto i = media_names.begin() ; i != media_names.end() ; ++i) { if (*i == "CSV") initialise_mobiles_csv() ; @@ -165,8 +162,7 @@ void InputDataReader::initialise_topology_media() const vector &media_names = Configuration::string_vector_value("data-input.topology-medium") ; - for (vector::const_iterator i = media_names.begin() ; - i != media_names.end() ; ++i) + for (auto i = media_names.begin() ; i != media_names.end() ; ++i) { if (*i == "CSV") initialise_topology_csv() ; @@ -220,8 +216,7 @@ void InputDataReader::initialise_reference_points_media() const vector &media_names = Configuration::string_vector_value("data-input.reference-points-medium") ; - for (vector::const_iterator i = media_names.begin() ; - i != media_names.end() ; ++i) + for (auto i = media_names.begin() ; i != media_names.end() ; ++i) { if (*i == "CSV") initialise_reference_points_csv() ; @@ -247,8 +242,7 @@ void InputDataReader::initialise_reference_points_csv() void InputDataReader::read_from_reference_points_media() { - for (vector::const_iterator i = - reference_points_media.begin() ; + for (auto i = reference_points_media.begin() ; i != reference_points_media.end() ; ++i) { while (! (*i)->eof()) diff --git a/owlps-positioner/measurement.cc b/owlps-positioner/measurement.cc index a271d06..e651f80 100644 --- a/owlps-positioner/measurement.cc +++ b/owlps-positioner/measurement.cc @@ -45,7 +45,7 @@ Measurement::~Measurement() */ ss_t Measurement::get_ss(const pkt_id_t pkt_id) const { - std::map::const_iterator ss = ss_list.find(pkt_id) ; + auto ss = ss_list.find(pkt_id) ; if (ss == ss_list.end()) return 0 ; return ss->second ; @@ -89,8 +89,7 @@ add_ss_list(const map &_ss_list) { // We cannot use insert() here because we want to overwrite the // previous values with the same ID, if any. - for (map::const_iterator - i = _ss_list.begin() ; i != _ss_list.end() ; ++i) + for (auto i = _ss_list.begin() ; i != _ss_list.end() ; ++i) ss_list[i->first] = i->second ; recalculate_average() ; @@ -198,8 +197,8 @@ nb_in_interval(const Measurement &source, const float bound) const { unsigned int nb_values = 0 ; - for (map::const_iterator ss = - source.ss_list.begin() ; ss != source.ss_list.end() ; ++ss) + for (auto ss = source.ss_list.begin() ; ss != source.ss_list.end() ; + ++ss) if (PosUtil::is_in_interval(average_dbm, bound, ss->second)) ++nb_values ; @@ -217,8 +216,7 @@ void Measurement::recalculate_average() variance_dbm_m2 = 0 ; variance_size = 0 ; - for (map::const_iterator - i = ss_list.begin() ; i != ss_list.end() ; ++i) + for (auto i = ss_list.begin() ; i != ss_list.end() ; ++i) update_average(i->second) ; } @@ -294,8 +292,7 @@ const string Measurement::to_csv() const if (cp) mac_cp = cp->get_mac_addr() ; - for (map::const_iterator - i = ss_list.begin() ; i != ss_list.end() ; ++i) + for (auto i = ss_list.begin() ; i != ss_list.end() ; ++i) { if (i != ss_list.begin()) csv_line << ';' ; @@ -321,8 +318,7 @@ ostream &operator<<(ostream &os, const Measurement &m) if (m.ss_list.empty()) os << "No values" ; else - for (map::const_iterator - i = m.ss_list.begin() ; i != m.ss_list.end() ; ++i) + for (auto i = m.ss_list.begin() ; i != m.ss_list.end() ; ++i) { if (i != m.ss_list.begin()) os << ';' ; diff --git a/owlps-positioner/output.cc b/owlps-positioner/output.cc index 46a94a8..de89a86 100644 --- a/owlps-positioner/output.cc +++ b/owlps-positioner/output.cc @@ -38,8 +38,7 @@ Output::Output() Output::~Output() { - for (vector::const_iterator i = output_media.begin() ; - i != output_media.end() ; ++i) + for (auto i = output_media.begin() ; i != output_media.end() ; ++i) delete *i ; output_media.clear() ; } @@ -60,8 +59,7 @@ void Output::initialise_output_media() const vector &media_names = Configuration::string_vector_value("output.medium") ; - for (vector::const_iterator i = media_names.begin() ; - i != media_names.end() ; ++i) + for (auto i = media_names.begin() ; i != media_names.end() ; ++i) { if (*i == "Terminal") initialise_output_terminal() ; @@ -123,7 +121,6 @@ void Output::initialise_output_tcpevaal_socket() void Output::write(const ResultList &results) const { - for (vector::const_iterator i = output_media.begin() ; - i != output_media.end() ; ++i) + for (auto i = output_media.begin() ; i != output_media.end() ; ++i) (*i)->write(results) ; } diff --git a/owlps-positioner/positioning.cc b/owlps-positioner/positioning.cc index 01d1c6e..1029ab1 100644 --- a/owlps-positioner/positioning.cc +++ b/owlps-positioner/positioning.cc @@ -44,8 +44,7 @@ Positioning::Positioning() Positioning::~Positioning() { - for (vector::const_iterator i = - algorithms.begin() ; i != algorithms.end() ; ++i) + for (auto i = algorithms.begin() ; i != algorithms.end() ; ++i) delete *i ; algorithms.clear() ; } @@ -68,13 +67,11 @@ void Positioning::initialise_algorithms() // avoid multiple occurrences of the same algorithm: unordered_set stored_algos ; - for (vector::const_iterator i = algo_names.begin() ; - i != algo_names.end() ; ++i) + for (auto i = algo_names.begin() ; i != algo_names.end() ; ++i) { if (*i == "Real") { - pair::iterator, bool> stored = - stored_algos.insert("Real") ; + auto stored = stored_algos.insert("Real") ; if (stored.second) // Check if there was no previous instance algorithms.insert(algorithms.begin(), new RealPosition) ; /* Note: in order to compute the errors of the other @@ -84,8 +81,7 @@ void Positioning::initialise_algorithms() else if (*i == "FBCM") { - pair::iterator, bool> stored = - stored_algos.insert("FBCM") ; + auto stored = stored_algos.insert("FBCM") ; if (stored.second) // Check if there was no previous instance { /* Generate the Friis indexes only if the autocalibration @@ -100,8 +96,7 @@ void Positioning::initialise_algorithms() else if (*i == "FRBHMBasic") { - pair::iterator, bool> stored = - stored_algos.insert("FRBHMBasic") ; + auto stored = stored_algos.insert("FRBHMBasic") ; if (stored.second) // Check if there was no previous instance algorithms.push_back(new FRBHMBasic) ; // TODO: Pre-compute all per-ReferencePoint friis indexes? @@ -109,16 +104,14 @@ void Positioning::initialise_algorithms() else if (*i == "InterlinkNetworks") { - pair::iterator, bool> stored = - stored_algos.insert("InterlinkNetworks") ; + auto stored = stored_algos.insert("InterlinkNetworks") ; if (stored.second) // Check if there was no previous instance algorithms.push_back(new InterlinkNetworks) ; } else if (*i == "NSS") { - pair::iterator, bool> stored = - stored_algos.insert("NSS") ; + auto stored = stored_algos.insert("NSS") ; if (stored.second) // Check if there was no previous instance algorithms.push_back(new NSS) ; } @@ -144,8 +137,7 @@ void Positioning::loop() Point3D real_position ; bool compute_error = false ; ResultList results(&request) ; - for (algo = algorithms.begin() ; algo != algorithms.end() ; - ++algo) + for (algo = algorithms.begin() ; algo != algorithms.end() ; ++algo) { Result res ; diff --git a/owlps-positioner/posutil.cc b/owlps-positioner/posutil.cc index 74efcdd..bc942e8 100644 --- a/owlps-positioner/posutil.cc +++ b/owlps-positioner/posutil.cc @@ -63,16 +63,14 @@ void PosUtil::complete_with_dummy_measurements( Measurement dummy ; dummy.add_ss(1, Configuration::int_value("positioning.smallest-ss")) ; - for (unordered_map::const_iterator i = - measurements1.begin() ; i != measurements1.end() ; ++i) + for (auto i = measurements1.begin() ; i != measurements1.end() ; ++i) if (measurements2.find(i->first) == measurements2.end()) { dummy.set_cp(&Stock::get_cp(i->first)) ; measurements2[i->first] = dummy ; } - for (unordered_map::const_iterator i = - measurements2.begin() ; i != measurements2.end() ; ++i) + for (auto i = measurements2.begin() ; i != measurements2.end() ; ++i) if (measurements1.find(i->first) == measurements1.end()) { dummy.set_cp(&Stock::get_cp(i->first)) ; @@ -99,11 +97,9 @@ float PosUtil::similarity( float similarity = 0 ; - for (unordered_map::const_iterator i1 = - measurements1.begin() ; i1 != measurements1.end() ; ++i1) + for (auto i1 = measurements1.begin() ; i1 != measurements1.end() ; ++i1) { - unordered_map::const_iterator i2 = - measurements2.find(i1->first) ; + auto i2 = measurements2.find(i1->first) ; assert(i2 != measurements2.end()) ; similarity += i1->second.similarity(i2->second) ; } diff --git a/owlps-positioner/referencepoint.cc b/owlps-positioner/referencepoint.cc index 08138d6..e5d7b75 100644 --- a/owlps-positioner/referencepoint.cc +++ b/owlps-positioner/referencepoint.cc @@ -45,9 +45,7 @@ average_measurements(const std::string &mac_transmitter) const double avg = 0 ; int n_ss = 0 ; - for (unordered_map::const_iterator i = - measurements.begin() ; - i != measurements.end() ; ++i) + for (auto i = measurements.begin() ; i != measurements.end() ; ++i) { avg += i->second.get_average_dbm() ; ++n_ss ; @@ -62,13 +60,11 @@ get_all_measurements() const { unordered_map all ; - for (vector::const_iterator i = requests.begin() ; - i != requests.end() ; ++i) + for (auto i = requests.begin() ; i != requests.end() ; ++i) { unordered_map measurements = (*i)->get_measurements() ; - for (unordered_map::const_iterator j = - measurements.begin() ; j != measurements.end() ; ++j) + for (auto j = measurements.begin() ; j != measurements.end() ; ++j) if (! all.insert(*j).second) all[j->first].merge(j->second) ; } @@ -84,14 +80,11 @@ get_all_measurements(const string &mac_transmitter) const vector requests_trx( get_requests(mac_transmitter)) ; - for (vector::const_iterator i = - requests_trx.begin() ; - i != requests_trx.end() ; ++i) + for (auto i = requests_trx.begin() ; i != requests_trx.end() ; ++i) { unordered_map measurements = (*i)->get_measurements() ; - for (unordered_map::const_iterator j = - measurements.begin() ; j != measurements.end() ; ++j) + for (auto j = measurements.begin() ; j != measurements.end() ; ++j) if (! all.insert(*j).second) all[j->first].merge(j->second) ; } @@ -111,8 +104,7 @@ get_requests(const string &mac_transmitter) const { vector res ; - for (vector::const_iterator i = requests.begin() ; - i != requests.end() ; ++i) + for (auto i = requests.begin() ; i != requests.end() ; ++i) if ((*i)->get_mobile()->get_mac_addr() == mac_transmitter) res.push_back(*i) ; @@ -126,8 +118,7 @@ get_requests(const string &mac_transmitter) const void ReferencePoint::delete_request(const CalibrationRequest *const r) { - for (vector::iterator i = requests.begin() ; - i != requests.end() ; ++i) + for (auto i = requests.begin() ; i != requests.end() ; ++i) if (*i == r) { requests.erase(i) ; @@ -146,8 +137,7 @@ void ReferencePoint::delete_requests() int stock_nb_requests = Stock::nb_calibration_requests() ; #endif // NDEBUG - for (vector::iterator r = requests.begin() ; - r != requests.end() ; ++r) + for (auto r = requests.begin() ; r != requests.end() ; ++r) Stock::delete_calibration_request(**r) ; assert(Stock::nb_calibration_requests() == @@ -167,7 +157,7 @@ void ReferencePoint::delete_requests() bool ReferencePoint::delete_generated_requests(void) { unsigned int nb_requests = requests.size() ; - vector::iterator r = requests.begin() ; + auto r = requests.begin() ; while (r != requests.end()) { assert(*r) ; @@ -278,13 +268,12 @@ friis_indexes_for_cp(const CapturePoint &cp, * ReferencePoint. The Friis index for the CP is the average of all * these indexes (we do not compute the average in this function). */ - for (vector::const_iterator request = - requests.begin() ; request != requests.end() ; ++request) + for (auto request = requests.begin() ; request != requests.end() ; + ++request) { const unordered_map &measurements = (*request)->get_measurements() ; - unordered_map::const_iterator measurement = - measurements.find(cp_mac) ; + auto measurement = measurements.find(cp_mac) ; if (measurement != measurements.end()) { float ss = measurement->second.get_average_dbm() ; @@ -326,13 +315,12 @@ friis_index_for_cp(const string &cp_mac, const pkt_id_t pkt_id) const float distance = this->distance(cp.get_coordinates()) ; float friis_idx = 0 ; - for (vector::const_iterator request = - requests.begin() ; request != requests.end() ; ++request) + for (auto request = requests.begin() ; request != requests.end() ; + ++request) { const unordered_map &measurements = (*request)->get_measurements() ; - unordered_map::const_iterator measurement = - measurements.find(cp_mac) ; + auto measurement = measurements.find(cp_mac) ; if (measurement == measurements.end()) continue ; ss_t ss = measurement->second.get_ss(pkt_id) ; @@ -389,9 +377,7 @@ ostream &operator<<(ostream &os, const ReferencePoint &rp) if (rp.requests.empty()) os << "\nNo request." << '\n' ; else - for (vector::const_iterator - i = rp.requests.begin() ; - i != rp.requests.end() ; ++i) + for (auto i = rp.requests.begin() ; i != rp.requests.end() ; ++i) os << '\n' << **i ; return os ; diff --git a/owlps-positioner/request.cc b/owlps-positioner/request.cc index b7ce604..58ee791 100644 --- a/owlps-positioner/request.cc +++ b/owlps-positioner/request.cc @@ -92,8 +92,7 @@ Request::~Request() const Measurement* Request::get_measurement(const string &mac_receiver) const { - unordered_map::const_iterator m = - measurements.find(mac_receiver) ; + auto m = measurements.find(mac_receiver) ; if (m != measurements.end()) return &m->second ; return NULL ; @@ -242,8 +241,7 @@ const string Request::to_csv() const << static_cast(calibration_request->get_direction()) ; } - for (unordered_map::const_iterator i - = measurements.begin() ; i != measurements.end() ; ++i) + for (auto i = measurements.begin() ; i != measurements.end() ; ++i) csv_line << ';' << i->second.to_csv() ; return csv_line.str() ; @@ -271,8 +269,8 @@ ostream& operator<<(ostream &os, const Request &r) if (r.measurements.empty()) os << " No values" ; else - for (unordered_map::const_iterator i - = r.measurements.begin() ; i != r.measurements.end() ; ++i) + for (auto i = r.measurements.begin() ; i != r.measurements.end() ; + ++i) os << '\n' << i->first << ": " << i->second ; return os ; diff --git a/owlps-positioner/resultlist.cc b/owlps-positioner/resultlist.cc index 32f4a7b..218d7b1 100644 --- a/owlps-positioner/resultlist.cc +++ b/owlps-positioner/resultlist.cc @@ -85,8 +85,7 @@ const string ResultList::to_csv() const else csv_line << ";;;" ; - for (vector::const_iterator r = results.begin() ; - r != results.end() ; ++r) + for (auto r = results.begin() ; r != results.end() ; ++r) csv_line << ';' << r->to_csv() ; return csv_line.str() ; @@ -101,8 +100,7 @@ ostream& operator<<(ostream &os, const ResultList &r) else os << "For the following request: " << *(r.request) << '\n' ; - vector::const_iterator res ; - for (res = r.results.begin() ; res != r.results.end() ; ++res) + for (auto res = r.results.begin() ; res != r.results.end() ; ++res) os << *res << '\n' ; return os ; diff --git a/owlps-positioner/stock.cc b/owlps-positioner/stock.cc index c6573e8..b26c005 100644 --- a/owlps-positioner/stock.cc +++ b/owlps-positioner/stock.cc @@ -66,8 +66,7 @@ void Stock::clear() */ const Building& Stock::find_create_building(const string &name) { - unordered_map::const_iterator i = - buildings.find(name) ; + auto i = buildings.find(name) ; if (i != buildings.end()) return i->second ; @@ -86,8 +85,7 @@ const Building& Stock::find_create_building(const string &name) */ const Building& Stock::get_building(const string &name) { - unordered_map::const_iterator i = - buildings.find(name) ; + auto i = buildings.find(name) ; if (i != buildings.end()) return i->second ; throw element_not_found("No Building with name \"" + name + "\"!") ; @@ -100,12 +98,10 @@ const Building& Stock::get_building(const string &name) */ const Area* Stock::in_which_area_is(const Point3D &point) { - for (unordered_map::const_iterator - b = buildings.begin() ; b != buildings.end() ; ++b) + for (auto b = buildings.begin() ; b != buildings.end() ; ++b) { const unordered_map &areas = b->second.get_areas() ; - for (unordered_map::const_iterator - a = areas.begin() ; a != areas.end() ; ++a) + for (auto a = areas.begin() ; a != areas.end() ; ++a) if (a->second->contains_point(point)) return a->second ; } @@ -121,8 +117,7 @@ const Area* Stock::in_which_area_is(const Point3D &point) const Waypoint& Stock:: find_create_waypoint(const Point3D &point) { - unordered_map::const_iterator i = - waypoints.find(point) ; + auto i = waypoints.find(point) ; if (i != waypoints.end()) return i->second ; @@ -135,8 +130,7 @@ find_create_waypoint(const Point3D &point) void Stock::waypoint_remove_building(const Waypoint &point, Building *const building) { - unordered_map::iterator i = - waypoints.find(point) ; + auto i = waypoints.find(point) ; Waypoint *waypoint = const_cast(&i->second) ; waypoint->remove_building(building) ; @@ -160,7 +154,7 @@ void Stock::waypoint_remove_building(const Waypoint &point, */ bool Stock::mobile_exists(const std::string &mac) { - unordered_map::const_iterator i = mobiles.find(mac) ; + auto i = mobiles.find(mac) ; return i != mobiles.end() ; } @@ -174,7 +168,7 @@ bool Stock::mobile_exists(const std::string &mac) */ const Mobile& Stock::get_mobile(const string &mac) { - unordered_map::const_iterator i = mobiles.find(mac) ; + auto i = mobiles.find(mac) ; if (i != mobiles.end()) return i->second ; throw element_not_found("No Mobile with MAC address \"" + @@ -187,7 +181,7 @@ const Mobile& Stock::get_mobile(const string &mac) */ const Mobile& Stock::find_create_mobile(const string &mac) { - unordered_map::const_iterator i = mobiles.find(mac) ; + auto i = mobiles.find(mac) ; if (i != mobiles.end()) return i->second ; @@ -203,7 +197,7 @@ const Mobile& Stock::find_create_mobile(const string &mac) const Mobile& Stock::find_create_mobile(const Mobile &source) { const string &mac = source.get_mac_addr() ; - unordered_map::const_iterator i = mobiles.find(mac) ; + auto i = mobiles.find(mac) ; if (i != mobiles.end()) return i->second ; @@ -224,7 +218,7 @@ const Mobile& Stock::find_create_mobile(const Mobile &source) */ bool Stock::cp_exists(const std::string &mac) { - unordered_map::const_iterator i = cps.find(mac) ; + auto i = cps.find(mac) ; return i != cps.end() ; } @@ -238,7 +232,7 @@ bool Stock::cp_exists(const std::string &mac) */ const CapturePoint& Stock::get_cp(const string &mac) { - unordered_map::const_iterator i = cps.find(mac) ; + auto i = cps.find(mac) ; if (i != cps.end()) return i->second ; throw element_not_found("No CapturePoint with MAC address \"" + @@ -251,7 +245,7 @@ const CapturePoint& Stock::get_cp(const string &mac) */ const CapturePoint& Stock::find_create_cp(const string &mac) { - unordered_map::const_iterator i = cps.find(mac) ; + auto i = cps.find(mac) ; if (i != cps.end()) return i->second ; @@ -273,7 +267,7 @@ const CapturePoint& Stock::find_create_cp(const string &mac) const CapturePoint& Stock::find_create_cp(const CapturePoint &source) { const string &mac = source.get_mac_addr() ; - unordered_map::const_iterator i = cps.find(mac) ; + auto i = cps.find(mac) ; if (i != cps.end()) return i->second ; @@ -284,8 +278,7 @@ const CapturePoint& Stock::find_create_cp(const CapturePoint &source) void Stock::update_all_friis_indexes() { - for (unordered_map::iterator cp = cps.begin() ; - cp != cps.end() ; ++cp) + for (auto cp = cps.begin() ; cp != cps.end() ; ++cp) { double friis_idx_sum = 0 ; int nb_friis_idx = 0 ; @@ -297,9 +290,8 @@ void Stock::update_all_friis_indexes() * Compute indexes for each ReferencePoint. The Friis index for an * CP is the average of all indexes in all ReferencePoint. */ - for (unordered_set::const_iterator rp = - reference_points.begin() ; rp != reference_points.end() ; - ++rp) + for (auto rp = reference_points.begin() ; + rp != reference_points.end() ; ++rp) { int nb_idx = 0 ; float cp_friis_idx_sum = @@ -348,8 +340,7 @@ const CapturePoint* Stock::is_cp_coordinate(const Point3D &coord) bool Stock::reference_point_exists(const ReferencePoint &point) { - unordered_set::const_iterator i = - reference_points.find(point) ; + auto i = reference_points.find(point) ; return i != reference_points.end() ; } @@ -363,8 +354,7 @@ bool Stock::reference_point_exists(const ReferencePoint &point) const ReferencePoint& Stock:: get_reference_point(const ReferencePoint &point) { - unordered_set::const_iterator i = - reference_points.find(point) ; + auto i = reference_points.find(point) ; if (i != reference_points.end()) return *i ; throw element_not_found("No ReferencePoint with coordinates " + @@ -377,8 +367,7 @@ find_create_reference_point(const ReferencePoint &point) { // unordered_set::insert() do all the job: see the documentation at // http://en.cppreference.com/w/cpp/container/unordered_set/insert - pair::iterator, bool> ret = - reference_points.insert(point) ; + auto ret = reference_points.insert(point) ; return *ret.first ; } @@ -393,8 +382,7 @@ closest_reference_point(const Request &request) bool ignore_cps = Configuration::bool_value( "positioning.nss.ignore-cp-reference-points") ; - unordered_set::const_iterator i = - reference_points.begin() ; + auto i = reference_points.begin() ; if (ignore_cps) { @@ -409,7 +397,7 @@ closest_reference_point(const Request &request) } float similarity = i->similarity(request) ; - unordered_set::const_iterator closest = i ; + auto closest = i ; for (++i ; i != reference_points.end() ; ++i) { @@ -703,8 +691,7 @@ void Stock:: delete_calibration_request(const CalibrationRequest &request) { #ifndef NDEBUG - unordered_set::const_iterator found = - calibration_requests.find(request) ; + auto found = calibration_requests.find(request) ; if (found == calibration_requests.end()) { cerr @@ -725,8 +712,7 @@ void Stock::delete_calibration_requests_older_than(const int timeout) { assert(timeout > 0) ; - unordered_set::iterator cr = - calibration_requests.begin() ; + auto cr = calibration_requests.begin() ; while (cr != calibration_requests.end()) { Timestamp request_time ; @@ -756,8 +742,7 @@ void Stock::delete_calibration_requests_older_than(const int timeout) const CalibrationRequest& Stock:: find_create_calibration_request(const CalibrationRequest &request) { - pair::iterator, bool> ret = - calibration_requests.insert(request) ; + auto ret = calibration_requests.insert(request) ; return *ret.first ; } @@ -772,8 +757,7 @@ closest_calibration_request(const Request &request) bool ignore_cps = Configuration::bool_value( "positioning.nss.ignore-cp-reference-points") ; - unordered_set::const_iterator i = - calibration_requests.begin() ; + auto i = calibration_requests.begin() ; if (ignore_cps) { @@ -792,7 +776,7 @@ closest_calibration_request(const Request &request) } float similarity = i->similarity(request) ; - unordered_set::const_iterator closest = i ; + auto closest = i ; for (++i ; i != calibration_requests.end() ; ++i) { @@ -815,7 +799,7 @@ closest_calibration_request(const Request &request) void Stock::delete_non_cp_calibration_requests() { - unordered_set::iterator rp = reference_points.begin() ; + auto rp = reference_points.begin() ; while (rp != reference_points.end()) { ReferencePoint rp_copy(*rp) ; diff --git a/owlps-positioner/tests/inputcsv_test.hh b/owlps-positioner/tests/inputcsv_test.hh index 40201e8..e484204 100644 --- a/owlps-positioner/tests/inputcsv_test.hh +++ b/owlps-positioner/tests/inputcsv_test.hh @@ -81,8 +81,7 @@ public: for (auto i = TestUtil::aps.begin() ; i != TestUtil::aps.end() ; ++i) { - std::unordered_map::const_iterator - measurement_it1 = + auto measurement_it1 = request1.get_measurements().find(i->get_mac_addr()) ; TS_ASSERT(request1.get_measurements().end() != measurement_it1) ; @@ -105,8 +104,7 @@ public: for (auto i = TestUtil::aps.begin() ; i != TestUtil::aps.end() ; ++i) { - std::unordered_map::const_iterator - measurement_it1 = + auto measurement_it1 = request1.get_measurements().find(i->get_mac_addr()) ; TS_ASSERT(request1.get_measurements().end() != measurement_it1) ; } @@ -126,8 +124,7 @@ public: for (auto i = TestUtil::aps.begin() ; i != TestUtil::aps.end() ; ++i) { - std::unordered_map::const_iterator - measurement_it1 = + auto measurement_it1 = request1.get_measurements().find(i->get_mac_addr()) ; TS_ASSERT(request1.get_measurements().end() != measurement_it1) ; } diff --git a/owlps-positioner/tests/inputlogcsv_test.hh b/owlps-positioner/tests/inputlogcsv_test.hh index 4330f2f..9817eef 100644 --- a/owlps-positioner/tests/inputlogcsv_test.hh +++ b/owlps-positioner/tests/inputlogcsv_test.hh @@ -66,8 +66,7 @@ public: // instance in order to be able to close the file (and therefore // flush the stream) before to read it with InputCSV InputLogCSV *inputlogcsv1 = new InputLogCSV(log_file_name) ; - for (std::vector::const_iterator i = - TestUtil::requests.begin() ; + for (auto i = TestUtil::requests.begin() ; i != TestUtil::requests.end() ; ++i) inputlogcsv1->log_request(**i) ; delete inputlogcsv1 ; // Close the output file diff --git a/owlps-positioner/tests/testutil.cc b/owlps-positioner/tests/testutil.cc index a6ca1f1..55703eb 100644 --- a/owlps-positioner/tests/testutil.cc +++ b/owlps-positioner/tests/testutil.cc @@ -39,8 +39,7 @@ void TestUtil::tear_down() aps.clear() ; mobiles.clear() ; - for (vector::const_iterator i = requests.begin() ; - i != requests.end() ; ++i) + for (auto i = requests.begin() ; i != requests.end() ; ++i) delete *i ; requests.clear() ; @@ -158,8 +157,7 @@ void TestUtil::create_result_list() { RealPosition algo ; - for (vector::const_iterator i = requests.begin() ; - i != requests.end() ; ++i) + for (auto i = requests.begin() ; i != requests.end() ; ++i) { CalibrationRequest *calibration_request = dynamic_cast(*i) ; @@ -203,8 +201,7 @@ void TestUtil::fill_file(const string &output_file_name, +"` for creation!") ; // Write contents to the file - for (std::vector::const_iterator i = output_lines.begin() ; - i != output_lines.end() ; ++i) + for (auto i = output_lines.begin() ; i != output_lines.end() ; ++i) output_file << *i ; output_file.close() ; @@ -382,11 +379,9 @@ measurements_unordered_map_equals( // For each element in 'first', we look for the same element // in 'second' - for (unordered_map::const_iterator i = - first.begin() ; i != first.end() ; ++i) + for (auto i = first.begin() ; i != first.end() ; ++i) { - unordered_map::const_iterator - second_measurement = second.find(i->first) ; + auto second_measurement = second.find(i->first) ; if (second_measurement == second.end()) return false ; if (! measurement_equals(i->second, second_measurement->second)) diff --git a/owlps-positioner/topologyreadercsv.cc b/owlps-positioner/topologyreadercsv.cc index a95c187..6b83817 100644 --- a/owlps-positioner/topologyreadercsv.cc +++ b/owlps-positioner/topologyreadercsv.cc @@ -89,8 +89,7 @@ void TopologyReaderCSV::process_waypoint_line() if (buildings.empty()) throw malformed_input_data("Cannot read building name!") ; - for (vector::iterator i = buildings.begin() ; - i != buildings.end() ; ++i) + for (auto i = buildings.begin() ; i != buildings.end() ; ++i) { waypoint_ref.add_building(*i) ; (*i)->add_waypoint(&waypoint_ref) ; diff --git a/owlps-positioner/trilaterationalgorithm.cc b/owlps-positioner/trilaterationalgorithm.cc index 544793d..51afea7 100644 --- a/owlps-positioner/trilaterationalgorithm.cc +++ b/owlps-positioner/trilaterationalgorithm.cc @@ -90,7 +90,6 @@ void TrilaterationAlgorithm::compute_cp_distance_circles() const unordered_map &measurements = request->get_measurements() ; - for (unordered_map::const_iterator i = - measurements.begin() ; i != measurements.end() ; ++i) + for (auto i = measurements.begin() ; i != measurements.end() ; ++i) cp_distances[i->second.get_cp()] = estimate_distance(i->second) ; } diff --git a/owlps-positioner/waypoint.cc b/owlps-positioner/waypoint.cc index d8ed1e2..183ccf9 100644 --- a/owlps-positioner/waypoint.cc +++ b/owlps-positioner/waypoint.cc @@ -94,8 +94,7 @@ Waypoint::operator std::string() const ostringstream csv ; csv << (Point3D) *this ; - for (unordered_set::const_iterator i = buildings.begin() ; - i != buildings.end() ; ++i) + for (auto i = buildings.begin() ; i != buildings.end() ; ++i) csv << ';' << (*i)->get_name() ; return csv.str() ; @@ -112,8 +111,7 @@ ostream &operator<<(ostream &os, const Waypoint &wp) if (wp.buildings.empty()) os << '\n' << "Belongs to no building!" ; else - for (unordered_set::const_iterator i = - wp.buildings.begin() ; i != wp.buildings.end() ; ++i) + for (auto i = wp.buildings.begin() ; i != wp.buildings.end() ; ++i) os << '\n' << **i ; return os ;