Branch data Line data Source code
1 : : /* 2 : : * ----------------- BEGIN LICENSE BLOCK --------------------------------- 3 : : * 4 : : * Copyright (C) 2018-2022 Intel Corporation 5 : : * 6 : : * SPDX-License-Identifier: LGPL-2.1-only 7 : : * 8 : : * ----------------- END LICENSE BLOCK ----------------------------------- 9 : : */ 10 : : 11 : : /** 12 : : * Generated file 13 : : * @file 14 : : * 15 : : * Generator Version : 11.0.0-2046 16 : : */ 17 : : 18 : : #pragma once 19 : : 20 : : #include <iostream> 21 : : #include <memory> 22 : : #include <sstream> 23 : : #include "ad/geometry/HeadingRange.hpp" 24 : : #include "ad/rss/state/UnstructuredConstellationResponse.hpp" 25 : : #include "ad/rss/state/UnstructuredConstellationStateInformation.hpp" 26 : : #include "ad/rss/world/LongitudinalRssAccelerationValues.hpp" 27 : : /*! 28 : : * @brief namespace ad 29 : : */ 30 : : namespace ad { 31 : : /*! 32 : : * @brief namespace rss 33 : : */ 34 : : namespace rss { 35 : : /*! 36 : : * @brief namespace state 37 : : */ 38 : : namespace state { 39 : : 40 : : /*! 41 : : * \brief DataType UnstructuredConstellationRssState 42 : : * 43 : : * Struct defining the unstructured constellation RSS state of a single object. 44 : : */ 45 : : struct UnstructuredConstellationRssState 46 : : { 47 : : /*! 48 : : * \brief Smart pointer on UnstructuredConstellationRssState 49 : : */ 50 : : typedef std::shared_ptr<UnstructuredConstellationRssState> Ptr; 51 : : 52 : : /*! 53 : : * \brief Smart pointer on constant UnstructuredConstellationRssState 54 : : */ 55 : : typedef std::shared_ptr<UnstructuredConstellationRssState const> ConstPtr; 56 : : 57 : : /*! 58 : : * \brief standard constructor 59 : : */ 60 [ # # ]: 67427 : UnstructuredConstellationRssState() = default; 61 : : 62 : : /*! 63 : : * \brief standard destructor 64 : : */ 65 : 194053 : ~UnstructuredConstellationRssState() = default; 66 : : 67 : : /*! 68 : : * \brief standard copy constructor 69 : : */ 70 : 58149 : UnstructuredConstellationRssState(const UnstructuredConstellationRssState &other) = default; 71 : : 72 : : /*! 73 : : * \brief standard move constructor 74 : : */ 75 : 68477 : UnstructuredConstellationRssState(UnstructuredConstellationRssState &&other) = default; 76 : : 77 : : /** 78 : : * \brief standard assignment operator 79 : : * 80 : : * \param[in] other Other UnstructuredConstellationRssState 81 : : * 82 : : * \returns Reference to this UnstructuredConstellationRssState. 83 : : */ 84 : 75 : UnstructuredConstellationRssState &operator=(const UnstructuredConstellationRssState &other) = default; 85 : : 86 : : /** 87 : : * \brief standard move operator 88 : : * 89 : : * \param[in] other Other UnstructuredConstellationRssState 90 : : * 91 : : * \returns Reference to this UnstructuredConstellationRssState. 92 : : */ 93 : 143 : UnstructuredConstellationRssState &operator=(UnstructuredConstellationRssState &&other) = default; 94 : : 95 : : /** 96 : : * \brief standard comparison operator 97 : : * 98 : : * \param[in] other Other UnstructuredConstellationRssState 99 : : * 100 : : * \returns \c true if both UnstructuredConstellationRssState are equal 101 : : */ 102 : 34 : bool operator==(const UnstructuredConstellationRssState &other) const 103 : : { 104 [ + + + + ]: 30 : return (is_safe == other.is_safe) && (response == other.response) && (heading_range == other.heading_range) 105 [ + + + + : 64 : && (rss_state_information == other.rss_state_information) && (alpha_lon == other.alpha_lon); + + ] 106 : : } 107 : : 108 : : /** 109 : : * \brief standard comparison operator 110 : : * 111 : : * \param[in] other Other UnstructuredConstellationRssState. 112 : : * 113 : : * \returns \c true if both UnstructuredConstellationRssState are different 114 : : */ 115 : 6 : bool operator!=(const UnstructuredConstellationRssState &other) const 116 : : { 117 : 6 : return !operator==(other); 118 : : } 119 : : 120 : : /*! 121 : : * Determines if the unstructured constellation is safe. 122 : : */ 123 : : bool is_safe; 124 : : 125 : : /*! 126 : : * The response resulting from an unstructured constellation. 127 : : */ 128 : : ::ad::rss::state::UnstructuredConstellationResponse response; 129 : : 130 : : /*! 131 : : * The allowed heading range resulting from a unstructured constellation drive away response. 132 : : */ 133 : : ::ad::geometry::HeadingRange heading_range; 134 : : 135 : : /*! 136 : : * Additional information on the creation of the RSS state. 137 : : */ 138 : : ::ad::rss::state::UnstructuredConstellationStateInformation rss_state_information; 139 : : 140 : : /*! 141 : : * RSS dynamics values along longitudinal coordinate system axis. 142 : : */ 143 : : ::ad::rss::world::LongitudinalRssAccelerationValues alpha_lon; 144 : : }; 145 : : 146 : : } // namespace state 147 : : } // namespace rss 148 : : } // namespace ad 149 : : 150 : : /*! 151 : : * \brief protect the definition of functions from duplicates by typedef usage within other data types 152 : : */ 153 : : #ifndef GEN_GUARD_AD_RSS_STATE_UNSTRUCTUREDCONSTELLATIONRSSSTATE 154 : : #define GEN_GUARD_AD_RSS_STATE_UNSTRUCTUREDCONSTELLATIONRSSSTATE 155 : : /*! 156 : : * @brief namespace ad 157 : : */ 158 : : namespace ad { 159 : : /*! 160 : : * @brief namespace rss 161 : : */ 162 : : namespace rss { 163 : : /*! 164 : : * @brief namespace state 165 : : */ 166 : : namespace state { 167 : : 168 : : /** 169 : : * \brief standard ostream operator 170 : : * 171 : : * \param[in] os The output stream to write to 172 : : * \param[in] _value UnstructuredConstellationRssState value 173 : : * 174 : : * \returns The stream object. 175 : : * 176 : : */ 177 : 6 : inline std::ostream &operator<<(std::ostream &os, UnstructuredConstellationRssState const &_value) 178 : : { 179 : 6 : os << "UnstructuredConstellationRssState("; 180 : 6 : os << "is_safe:"; 181 : 6 : os << _value.is_safe; 182 : 6 : os << ","; 183 : 6 : os << "response:"; 184 : 6 : os << _value.response; 185 : 6 : os << ","; 186 : 6 : os << "heading_range:"; 187 : 6 : os << _value.heading_range; 188 : 6 : os << ","; 189 : 6 : os << "rss_state_information:"; 190 : 6 : os << _value.rss_state_information; 191 : 6 : os << ","; 192 : 6 : os << "alpha_lon:"; 193 : 6 : os << _value.alpha_lon; 194 : 6 : os << ")"; 195 : 6 : return os; 196 : : } 197 : : 198 : : } // namespace state 199 : : } // namespace rss 200 : : } // namespace ad 201 : : 202 : : namespace std { 203 : : /*! 204 : : * \brief overload of the std::to_string for UnstructuredConstellationRssState 205 : : */ 206 : 1 : inline std::string to_string(::ad::rss::state::UnstructuredConstellationRssState const &value) 207 : : { 208 [ + - ]: 1 : stringstream sstream; 209 [ + - ]: 1 : sstream << value; 210 [ + - ]: 2 : return sstream.str(); 211 : 1 : } 212 : : } // namespace std 213 : : 214 : : /*! 215 : : * \brief overload of fmt::formatter calling std::to_string 216 : : */ 217 : : template <> struct fmt::formatter<::ad::rss::state::UnstructuredConstellationRssState> : formatter<string_view> 218 : : { 219 : : template <typename FormatContext> 220 : 0 : auto format(::ad::rss::state::UnstructuredConstellationRssState const &value, FormatContext &ctx) 221 : : { 222 : 0 : return formatter<string_view>::format(std::to_string(value), ctx); 223 : : } 224 : : }; 225 : : 226 : : #endif // GEN_GUARD_AD_RSS_STATE_UNSTRUCTUREDCONSTELLATIONRSSSTATE