Branch data Line data Source code
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 : : 11 : : /** 12 : : * Generated file 13 : : * @file 14 : : * 15 : : * Generator Version : 11.0.0-1997 16 : : */ 17 : : 18 : : #pragma once 19 : : 20 : : #include <iostream> 21 : : #include <memory> 22 : : #include <sstream> 23 : : #include "ad/map/point/GeoEdge.hpp" 24 : : /*! 25 : : * @brief namespace ad 26 : : */ 27 : : namespace ad { 28 : : /*! 29 : : * @brief namespace map 30 : : */ 31 : : namespace map { 32 : : /*! 33 : : * @brief namespace lane 34 : : * 35 : : * Handling of lanes 36 : : */ 37 : : namespace lane { 38 : : 39 : : /*! 40 : : * \brief DataType GeoBorder 41 : : * 42 : : * Lane borders in geo coordinates 43 : : */ 44 : 11 : struct GeoBorder 45 : : { 46 : : /*! 47 : : * \brief Smart pointer on GeoBorder 48 : : */ 49 : : typedef std::shared_ptr<GeoBorder> Ptr; 50 : : 51 : : /*! 52 : : * \brief Smart pointer on constant GeoBorder 53 : : */ 54 : : typedef std::shared_ptr<GeoBorder const> ConstPtr; 55 : : 56 : : /*! 57 : : * \brief standard constructor 58 : : */ 59 : 23 : GeoBorder() = default; 60 : : 61 : : /*! 62 : : * \brief standard destructor 63 : : */ 64 : 34 : ~GeoBorder() = default; 65 : : 66 : : /*! 67 : : * \brief standard copy constructor 68 : : */ 69 [ + - ]: 10 : GeoBorder(const GeoBorder &other) = default; 70 : : 71 : : /*! 72 : : * \brief standard move constructor 73 : : */ 74 : 1 : GeoBorder(GeoBorder &&other) = default; 75 : : 76 : : /** 77 : : * \brief standard assignment operator 78 : : * 79 : : * \param[in] other Other GeoBorder 80 : : * 81 : : * \returns Reference to this GeoBorder. 82 : : */ 83 : : GeoBorder &operator=(const GeoBorder &other) = default; 84 : : 85 : : /** 86 : : * \brief standard move operator 87 : : * 88 : : * \param[in] other Other GeoBorder 89 : : * 90 : : * \returns Reference to this GeoBorder. 91 : : */ 92 : : GeoBorder &operator=(GeoBorder &&other) = default; 93 : : 94 : : /** 95 : : * \brief standard comparison operator 96 : : * 97 : : * \param[in] other Other GeoBorder 98 : : * 99 : : * \returns \c true if both GeoBorder are equal 100 : : */ 101 : 10 : bool operator==(const GeoBorder &other) const 102 : : { 103 [ + + + + ]: 10 : return (left == other.left) && (right == other.right); 104 : : } 105 : : 106 : : /** 107 : : * \brief standard comparison operator 108 : : * 109 : : * \param[in] other Other GeoBorder. 110 : : * 111 : : * \returns \c true if both GeoBorder are different 112 : : */ 113 : 3 : bool operator!=(const GeoBorder &other) const 114 : : { 115 : 3 : return !operator==(other); 116 : : } 117 : : 118 : : /*! 119 : : * Left edge of border 120 : : */ 121 : : ::ad::map::point::GeoEdge left; 122 : : 123 : : /*! 124 : : * Right edge of border 125 : : */ 126 : : ::ad::map::point::GeoEdge right; 127 : : }; 128 : : 129 : : } // namespace lane 130 : : } // namespace map 131 : : } // namespace ad 132 : : 133 : : /*! 134 : : * \brief protect the definition of functions from duplicates by typedef usage within other data types 135 : : */ 136 : : #ifndef GEN_GUARD_AD_MAP_LANE_GEOBORDER 137 : : #define GEN_GUARD_AD_MAP_LANE_GEOBORDER 138 : : /*! 139 : : * @brief namespace ad 140 : : */ 141 : : namespace ad { 142 : : /*! 143 : : * @brief namespace map 144 : : */ 145 : : namespace map { 146 : : /*! 147 : : * @brief namespace lane 148 : : * 149 : : * Handling of lanes 150 : : */ 151 : : namespace lane { 152 : : 153 : : /** 154 : : * \brief standard ostream operator 155 : : * 156 : : * \param[in] os The output stream to write to 157 : : * \param[in] _value GeoBorder value 158 : : * 159 : : * \returns The stream object. 160 : : * 161 : : */ 162 : 2 : inline std::ostream &operator<<(std::ostream &os, GeoBorder const &_value) 163 : : { 164 : 2 : os << "GeoBorder("; 165 : 2 : os << "left:"; 166 : 2 : os << _value.left; 167 : 2 : os << ","; 168 : 2 : os << "right:"; 169 : 2 : os << _value.right; 170 : 2 : os << ")"; 171 : 2 : return os; 172 : : } 173 : : 174 : : } // namespace lane 175 : : } // namespace map 176 : : } // namespace ad 177 : : 178 : : namespace std { 179 : : /*! 180 : : * \brief overload of the std::to_string for GeoBorder 181 : : */ 182 : 1 : inline std::string to_string(::ad::map::lane::GeoBorder const &value) 183 : : { 184 [ + - ]: 2 : stringstream sstream; 185 [ + - ]: 1 : sstream << value; 186 [ + - ]: 2 : return sstream.str(); 187 : : } 188 : : } // namespace std 189 : : #endif // GEN_GUARD_AD_MAP_LANE_GEOBORDER