ad_map_access
GeometryStoreItem.hpp
Go to the documentation of this file.
1 /*
2  * ----------------- BEGIN LICENSE BLOCK ---------------------------------
3  *
4  * Copyright (C) 2018-2020 Intel Corporation
5  *
6  * SPDX-License-Identifier: MIT
7  *
8  * ----------------- END LICENSE BLOCK -----------------------------------
9  */
10 
18 #pragma once
19 
20 #include <cstdint>
21 #include <iostream>
22 #include <limits>
23 #include <memory>
24 #include <sstream>
28 namespace ad {
32 namespace map {
38 namespace access {
39 
44 {
48  typedef std::shared_ptr<GeometryStoreItem> Ptr;
49 
53  typedef std::shared_ptr<GeometryStoreItem const> ConstPtr;
54 
58  GeometryStoreItem() = default;
59 
63  ~GeometryStoreItem() = default;
64 
68  GeometryStoreItem(const GeometryStoreItem &other) = default;
69 
73  GeometryStoreItem(GeometryStoreItem &&other) = default;
74 
82  GeometryStoreItem &operator=(const GeometryStoreItem &other) = default;
83 
91  GeometryStoreItem &operator=(GeometryStoreItem &&other) = default;
92 
100  bool operator==(const GeometryStoreItem &other) const
101  {
102  return (leftEdgeOffset == other.leftEdgeOffset) && (rightEdgeOffset == other.rightEdgeOffset)
103  && (leftEdgePoints == other.leftEdgePoints) && (rightEdgePoints == other.rightEdgePoints);
104  }
105 
113  bool operator!=(const GeometryStoreItem &other) const
114  {
115  return !operator==(other);
116  }
117 
118  uint32_t leftEdgeOffset{0};
119  uint32_t rightEdgeOffset{0};
120  uint32_t leftEdgePoints{0};
121  uint32_t rightEdgePoints{0};
122 };
123 
124 } // namespace access
125 } // namespace map
126 } // namespace ad
127 
131 #ifndef GEN_GUARD_AD_MAP_ACCESS_GEOMETRYSTOREITEM
132 #define GEN_GUARD_AD_MAP_ACCESS_GEOMETRYSTOREITEM
133 
136 namespace ad {
140 namespace map {
146 namespace access {
147 
157 inline std::ostream &operator<<(std::ostream &os, GeometryStoreItem const &_value)
158 {
159  os << "GeometryStoreItem(";
160  os << "leftEdgeOffset:";
161  os << _value.leftEdgeOffset;
162  os << ",";
163  os << "rightEdgeOffset:";
164  os << _value.rightEdgeOffset;
165  os << ",";
166  os << "leftEdgePoints:";
167  os << _value.leftEdgePoints;
168  os << ",";
169  os << "rightEdgePoints:";
170  os << _value.rightEdgePoints;
171  os << ")";
172  return os;
173 }
174 
175 } // namespace access
176 } // namespace map
177 } // namespace ad
178 
179 namespace std {
183 inline std::string to_string(::ad::map::access::GeometryStoreItem const &value)
184 {
185  stringstream sstream;
186  sstream << value;
187  return sstream.str();
188 }
189 } // namespace std
190 #endif // GEN_GUARD_AD_MAP_ACCESS_GEOMETRYSTOREITEM
ad::map::access::GeometryStoreItem::operator!=
bool operator!=(const GeometryStoreItem &other) const
standard comparison operator
Definition: GeometryStoreItem.hpp:113
ad
namespace ad
Definition: GeometryStoreItem.hpp:28
ad::map::access::GeometryStoreItem::GeometryStoreItem
GeometryStoreItem()=default
standard constructor
ad::map::access::GeometryStoreItem::ConstPtr
std::shared_ptr< GeometryStoreItem const > ConstPtr
Smart pointer on constant GeometryStoreItem.
Definition: GeometryStoreItem.hpp:53
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
ad::map::access::GeometryStoreItem
DataType GeometryStoreItem.
Definition: GeometryStoreItem.hpp:43
ad::map::access::GeometryStoreItem::operator==
bool operator==(const GeometryStoreItem &other) const
standard comparison operator
Definition: GeometryStoreItem.hpp:100
ad::map::access::GeometryStoreItem::operator=
GeometryStoreItem & operator=(const GeometryStoreItem &other)=default
standard assignment operator
ad::map::access::GeometryStoreItem::Ptr
std::shared_ptr< GeometryStoreItem > Ptr
Smart pointer on GeometryStoreItem.
Definition: GeometryStoreItem.hpp:48
ad::map::access::GeometryStoreItem::~GeometryStoreItem
~GeometryStoreItem()=default
standard destructor
ad::map::access::operator<<
std::ostream & operator<<(std::ostream &os, GeometryStoreItem const &_value)
standard ostream operator
Definition: GeometryStoreItem.hpp:157