ad_rss
UnstructuredConstellationRssState.hpp
Go to the documentation of this file.
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 
18 #pragma once
19 
20 #include <iostream>
21 #include <memory>
22 #include <sstream>
23 #include "ad/geometry/HeadingRange.hpp"
30 namespace ad {
34 namespace rss {
38 namespace state {
39 
46 {
50  typedef std::shared_ptr<UnstructuredConstellationRssState> Ptr;
51 
55  typedef std::shared_ptr<UnstructuredConstellationRssState const> ConstPtr;
56 
61 
66 
71 
76 
85 
94 
103  {
104  return (is_safe == other.is_safe) && (response == other.response) && (heading_range == other.heading_range)
106  }
107 
116  {
117  return !operator==(other);
118  }
119 
123  bool is_safe;
124 
129 
133  ::ad::geometry::HeadingRange heading_range;
134 
139 
144 };
145 
146 } // namespace state
147 } // namespace rss
148 } // namespace ad
149 
153 #ifndef GEN_GUARD_AD_RSS_STATE_UNSTRUCTUREDCONSTELLATIONRSSSTATE
154 #define GEN_GUARD_AD_RSS_STATE_UNSTRUCTUREDCONSTELLATIONRSSSTATE
158 namespace ad {
162 namespace rss {
166 namespace state {
167 
177 inline std::ostream &operator<<(std::ostream &os, UnstructuredConstellationRssState const &_value)
178 {
179  os << "UnstructuredConstellationRssState(";
180  os << "is_safe:";
181  os << _value.is_safe;
182  os << ",";
183  os << "response:";
184  os << _value.response;
185  os << ",";
186  os << "heading_range:";
187  os << _value.heading_range;
188  os << ",";
189  os << "rss_state_information:";
190  os << _value.rss_state_information;
191  os << ",";
192  os << "alpha_lon:";
193  os << _value.alpha_lon;
194  os << ")";
195  return os;
196 }
197 
198 } // namespace state
199 } // namespace rss
200 } // namespace ad
201 
202 namespace std {
207 {
208  stringstream sstream;
209  sstream << value;
210  return sstream.str();
211 }
212 } // namespace std
213 
217 template <> struct fmt::formatter<::ad::rss::state::UnstructuredConstellationRssState> : formatter<string_view>
218 {
219  template <typename FormatContext>
220  auto format(::ad::rss::state::UnstructuredConstellationRssState const &value, FormatContext &ctx)
221  {
222  return formatter<string_view>::format(std::to_string(value), ctx);
223  }
224 };
225 
226 #endif // GEN_GUARD_AD_RSS_STATE_UNSTRUCTUREDCONSTELLATIONRSSSTATE
std::string to_string(::ad::rss::core::LateralRelativePosition const &value)
overload of the std::to_string for LateralRelativePosition
Definition: LateralRelativePosition.hpp:162
std::ostream & operator<<(std::ostream &os, AccelerationRestriction const &_value)
standard ostream operator
Definition: AccelerationRestriction.hpp:164
UnstructuredConstellationResponse
DataType UnstructuredConstellationResponse.
Definition: UnstructuredConstellationResponse.hpp:44
namespace ad
Definition: LateralRelativePosition.hpp:28
DataType UnstructuredConstellationRssState.
Definition: UnstructuredConstellationRssState.hpp:46
::ad::rss::state::UnstructuredConstellationStateInformation rss_state_information
Definition: UnstructuredConstellationRssState.hpp:138
UnstructuredConstellationRssState & operator=(UnstructuredConstellationRssState &&other)=default
standard move operator
bool operator==(const UnstructuredConstellationRssState &other) const
standard comparison operator
Definition: UnstructuredConstellationRssState.hpp:102
~UnstructuredConstellationRssState()=default
standard destructor
UnstructuredConstellationRssState()=default
standard constructor
::ad::rss::state::UnstructuredConstellationResponse response
Definition: UnstructuredConstellationRssState.hpp:128
UnstructuredConstellationRssState(const UnstructuredConstellationRssState &other)=default
standard copy constructor
::ad::rss::world::LongitudinalRssAccelerationValues alpha_lon
Definition: UnstructuredConstellationRssState.hpp:143
::ad::geometry::HeadingRange heading_range
Definition: UnstructuredConstellationRssState.hpp:133
UnstructuredConstellationRssState & operator=(const UnstructuredConstellationRssState &other)=default
standard assignment operator
std::shared_ptr< UnstructuredConstellationRssState > Ptr
Smart pointer on UnstructuredConstellationRssState.
Definition: UnstructuredConstellationRssState.hpp:50
std::shared_ptr< UnstructuredConstellationRssState const > ConstPtr
Smart pointer on constant UnstructuredConstellationRssState.
Definition: UnstructuredConstellationRssState.hpp:55
bool is_safe
Definition: UnstructuredConstellationRssState.hpp:123
UnstructuredConstellationRssState(UnstructuredConstellationRssState &&other)=default
standard move constructor
bool operator!=(const UnstructuredConstellationRssState &other) const
standard comparison operator
Definition: UnstructuredConstellationRssState.hpp:115
DataType UnstructuredConstellationStateInformation.
Definition: UnstructuredConstellationStateInformation.hpp:45
DataType LongitudinalRssAccelerationValues.
Definition: LongitudinalRssAccelerationValues.hpp:44