ad_map_access
LandmarkIdSet.hpp
Go to the documentation of this file.
1 // ----------------- BEGIN LICENSE BLOCK ---------------------------------
2 //
3 // Copyright (C) 2018-2021 Intel Corporation
4 //
5 // SPDX-License-Identifier: MIT
6 //
7 // ----------------- END LICENSE BLOCK -----------------------------------
12 #pragma once
13 
14 #include <functional>
15 #include <set>
16 #include <sstream>
17 #include <string>
19 
21 namespace ad {
23 namespace map {
25 namespace landmark {
26 
30 typedef std::set<LandmarkId> LandmarkIdSet;
31 
32 } // namespace landmark
33 } // namespace map
34 } // namespace ad
35 
36 namespace std {
37 
38 inline std::ostream &operator<<(std::ostream &os, ::ad::map::landmark::LandmarkIdSet const &landmarkIdSet)
39 {
40  os << "[ ";
41  for (auto it = landmarkIdSet.begin(); it != landmarkIdSet.end(); ++it)
42  {
43  if (it != landmarkIdSet.begin())
44  {
45  os << ", ";
46  }
47  os << *it;
48  }
49  os << "]";
50  return os;
51 }
52 
53 static inline std::string to_string(::ad::map::landmark::LandmarkIdSet const &landmarkIdSet)
54 {
55  stringstream sstream;
56  sstream << landmarkIdSet;
57  return sstream.str();
58 }
59 } // namespace std
ad
namespace ad
Definition: GeometryStoreItem.hpp:28
std::to_string
std::string to_string(::ad::map::access::GeometryStoreItem const &value)
overload of the std::to_string for GeometryStoreItem
Definition: GeometryStoreItem.hpp:183
LandmarkId.hpp
ad::map::landmark::LandmarkIdSet
std::set< LandmarkId > LandmarkIdSet
Set to store landmark identifiers.
Definition: LandmarkIdSet.hpp:30