[Positioner] Use auto for iterators

Use the 'auto' keyword instead of declaring explicitly an iterator type,
where possible.
This commit is contained in:
Matteo Cypriani 2013-10-02 16:22:20 -04:00
parent 17dd3ee6bf
commit ea01f09b5e
22 changed files with 102 additions and 185 deletions

View File

@ -121,9 +121,8 @@ void AutocalibrationLine::sort_reference_cps()
const vector<CalibrationRequest*> &ref_cr = ref_rp.get_requests() ;
/* Search for the first measurement made by RX in ref_rp */
const Measurement *rx_measurement = NULL ;
vector<CalibrationRequest*>::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)

View File

@ -68,8 +68,7 @@ void AutocalibrationMesh::sort_reference_cps()
sorted_negative_angles.clear() ;
sorted_positive_angles.clear() ;
for (unordered_map<string, CapturePoint>::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 ;

View File

@ -33,14 +33,12 @@ using namespace std ;
Building::~Building()
{
// Empty Area list
for (unordered_map<string, Area*>::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<Waypoint*>::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<string, Area*>::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

View File

@ -66,8 +66,7 @@ received_calibration_from_cp(const CapturePoint &trx) const
unsigned int
received_packets = 0,
expected_packets = 0 ;
for (vector<CalibrationRequest*>::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) ;

View File

@ -85,8 +85,7 @@ value_exists_in_string_vector(const string &key, const string &value)
vector<string> key_values = configuration[key].as< vector<string> >() ;
for (vector<string>::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 ;

View File

@ -77,8 +77,7 @@ bool CSVStringReader::read_timestamp(Timestamp &t)
tokenizer<escaped_list_separator<char> > tok(
timestamp_str, escaped_list_separator<char>('\\', '.', '\"')) ;
tokenizer<escaped_list_separator<char> >::const_iterator tok_iter =
tok.begin() ;
auto tok_iter = tok.begin() ;
if (tok_iter == tok.end())
return false ;

View File

@ -43,8 +43,7 @@ Input::~Input()
{
delete medium ;
for (vector<InputLogMedium*>::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<string> &media_names =
Configuration::string_vector_value("log.medium") ;
for (vector<string>::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<InputLogMedium*>::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()) ;
}

View File

@ -42,8 +42,7 @@ InputDataReader::InputDataReader()
InputDataReader::~InputDataReader()
{
for (vector<InputMedium*>::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<string> &media_names =
Configuration::string_vector_value("data-input.cp-medium") ;
for (vector<string>::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<string> &media_names =
Configuration::string_vector_value("data-input.mobile-medium") ;
for (vector<string>::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<string> &media_names =
Configuration::string_vector_value("data-input.topology-medium") ;
for (vector<string>::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<string> &media_names =
Configuration::string_vector_value("data-input.reference-points-medium") ;
for (vector<string>::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<InputMedium*>::const_iterator i =
reference_points_media.begin() ;
for (auto i = reference_points_media.begin() ;
i != reference_points_media.end() ; ++i)
{
while (! (*i)->eof())

View File

@ -45,7 +45,7 @@ Measurement::~Measurement()
*/
ss_t Measurement::get_ss(const pkt_id_t pkt_id) const
{
std::map<pkt_id_t, ss_t>::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<pkt_id_t, ss_t> &_ss_list)
{
// We cannot use insert() here because we want to overwrite the
// previous values with the same ID, if any.
for (map<pkt_id_t, ss_t>::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<pkt_id_t, ss_t>::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<pkt_id_t, ss_t>::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<pkt_id_t, ss_t>::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<pkt_id_t, ss_t>::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 << ';' ;

View File

@ -38,8 +38,7 @@ Output::Output()
Output::~Output()
{
for (vector<OutputMedium*>::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<string> &media_names =
Configuration::string_vector_value("output.medium") ;
for (vector<string>::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<OutputMedium*>::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) ;
}

View File

@ -44,8 +44,7 @@ Positioning::Positioning()
Positioning::~Positioning()
{
for (vector<PositioningAlgorithm*>::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<string> stored_algos ;
for (vector<string>::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<unordered_set<string>::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<unordered_set<string>::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<unordered_set<string>::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<unordered_set<string>::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<unordered_set<string>::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 ;

View File

@ -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<string, Measurement>::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<string, Measurement>::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<string, Measurement>::const_iterator i1 =
measurements1.begin() ; i1 != measurements1.end() ; ++i1)
for (auto i1 = measurements1.begin() ; i1 != measurements1.end() ; ++i1)
{
unordered_map<string, Measurement>::const_iterator i2 =
measurements2.find(i1->first) ;
auto i2 = measurements2.find(i1->first) ;
assert(i2 != measurements2.end()) ;
similarity += i1->second.similarity(i2->second) ;
}

View File

@ -45,9 +45,7 @@ average_measurements(const std::string &mac_transmitter) const
double avg = 0 ;
int n_ss = 0 ;
for (unordered_map<string, Measurement>::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<string, Measurement> all ;
for (vector<CalibrationRequest*>::const_iterator i = requests.begin() ;
i != requests.end() ; ++i)
for (auto i = requests.begin() ; i != requests.end() ; ++i)
{
unordered_map<string, Measurement> measurements =
(*i)->get_measurements() ;
for (unordered_map<string, Measurement>::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<CalibrationRequest*> requests_trx(
get_requests(mac_transmitter)) ;
for (vector<CalibrationRequest*>::const_iterator i =
requests_trx.begin() ;
i != requests_trx.end() ; ++i)
for (auto i = requests_trx.begin() ; i != requests_trx.end() ; ++i)
{
unordered_map<string, Measurement> measurements =
(*i)->get_measurements() ;
for (unordered_map<string, Measurement>::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<CalibrationRequest*> res ;
for (vector<CalibrationRequest*>::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<CalibrationRequest*>::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<CalibrationRequest*>::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<CalibrationRequest*>::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<CalibrationRequest*>::const_iterator request =
requests.begin() ; request != requests.end() ; ++request)
for (auto request = requests.begin() ; request != requests.end() ;
++request)
{
const unordered_map<string, Measurement> &measurements =
(*request)->get_measurements() ;
unordered_map<string, Measurement>::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<CalibrationRequest*>::const_iterator request =
requests.begin() ; request != requests.end() ; ++request)
for (auto request = requests.begin() ; request != requests.end() ;
++request)
{
const unordered_map<string, Measurement> &measurements =
(*request)->get_measurements() ;
unordered_map<string, Measurement>::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<CalibrationRequest*>::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 ;

View File

@ -92,8 +92,7 @@ Request::~Request()
const Measurement*
Request::get_measurement(const string &mac_receiver) const
{
unordered_map<string, Measurement>::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<int>(calibration_request->get_direction()) ;
}
for (unordered_map<string, Measurement>::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<string, Measurement>::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 ;

View File

@ -85,8 +85,7 @@ const string ResultList::to_csv() const
else
csv_line << ";;;" ;
for (vector<Result>::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<Result>::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 ;

View File

@ -66,8 +66,7 @@ void Stock::clear()
*/
const Building& Stock::find_create_building(const string &name)
{
unordered_map<string, Building>::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<string, Building>::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<string, Building>::const_iterator
b = buildings.begin() ; b != buildings.end() ; ++b)
for (auto b = buildings.begin() ; b != buildings.end() ; ++b)
{
const unordered_map<string, Area*> &areas = b->second.get_areas() ;
for (unordered_map<string, Area*>::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<Point3D, Waypoint>::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<Point3D, Waypoint>::iterator i =
waypoints.find(point) ;
auto i = waypoints.find(point) ;
Waypoint *waypoint = const_cast<Waypoint*>(&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<string, Mobile>::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<string, Mobile>::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<string, Mobile>::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<string, Mobile>::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<string, CapturePoint>::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<string, CapturePoint>::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<string, CapturePoint>::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<string, CapturePoint>::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<string, CapturePoint>::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<ReferencePoint>::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<ReferencePoint>::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<ReferencePoint>::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<unordered_set<ReferencePoint>::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<ReferencePoint>::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<ReferencePoint>::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<CalibrationRequest>::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<CalibrationRequest>::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<unordered_set<CalibrationRequest>::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<CalibrationRequest>::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<CalibrationRequest>::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<ReferencePoint>::iterator rp = reference_points.begin() ;
auto rp = reference_points.begin() ;
while (rp != reference_points.end())
{
ReferencePoint rp_copy(*rp) ;

View File

@ -81,8 +81,7 @@ public:
for (auto i = TestUtil::aps.begin() ; i != TestUtil::aps.end() ; ++i)
{
std::unordered_map<std::string, Measurement>::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<std::string, Measurement>::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<std::string, Measurement>::const_iterator
measurement_it1 =
auto measurement_it1 =
request1.get_measurements().find(i->get_mac_addr()) ;
TS_ASSERT(request1.get_measurements().end() != measurement_it1) ;
}

View File

@ -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<Request*>::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

View File

@ -39,8 +39,7 @@ void TestUtil::tear_down()
aps.clear() ;
mobiles.clear() ;
for (vector<Request*>::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<Request*>::const_iterator i = requests.begin() ;
i != requests.end() ; ++i)
for (auto i = requests.begin() ; i != requests.end() ; ++i)
{
CalibrationRequest *calibration_request =
dynamic_cast<CalibrationRequest*>(*i) ;
@ -203,8 +201,7 @@ void TestUtil::fill_file(const string &output_file_name,
+"` for creation!") ;
// Write contents to the file
for (std::vector<std::string>::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<string,Measurement>::const_iterator i =
first.begin() ; i != first.end() ; ++i)
for (auto i = first.begin() ; i != first.end() ; ++i)
{
unordered_map<string,Measurement>::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))

View File

@ -89,8 +89,7 @@ void TopologyReaderCSV::process_waypoint_line()
if (buildings.empty())
throw malformed_input_data("Cannot read building name!") ;
for (vector<Building*>::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) ;

View File

@ -90,7 +90,6 @@ void TrilaterationAlgorithm::compute_cp_distance_circles()
const unordered_map<string, Measurement> &measurements =
request->get_measurements() ;
for (unordered_map<string, Measurement>::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) ;
}

View File

@ -94,8 +94,7 @@ Waypoint::operator std::string() const
ostringstream csv ;
csv << (Point3D) *this ;
for (unordered_set<Building*>::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<Building*>::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 ;