ad_rss
RssState.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: LGPL-2.1-only
7  *
8  * ----------------- END LICENSE BLOCK -----------------------------------
9  */
10 
18 #pragma once
19 
20 #include <iostream>
21 #include <limits>
22 #include <memory>
23 #include <sstream>
33 namespace ad {
37 namespace rss {
41 namespace state {
42 
48 struct RssState
49 {
53  typedef std::shared_ptr<RssState> Ptr;
54 
58  typedef std::shared_ptr<RssState const> ConstPtr;
59 
63  RssState() = default;
64 
68  ~RssState() = default;
69 
73  RssState(const RssState &other) = default;
74 
78  RssState(RssState &&other) = default;
79 
87  RssState &operator=(const RssState &other) = default;
88 
96  RssState &operator=(RssState &&other) = default;
97 
105  bool operator==(const RssState &other) const
106  {
107  return (objectId == other.objectId) && (situationId == other.situationId)
110  && (situationType == other.situationType);
111  }
112 
120  bool operator!=(const RssState &other) const
121  {
122  return !operator==(other);
123  }
124 
129 
138 
143 
148 
153 
158 
163 };
164 
165 } // namespace state
166 } // namespace rss
167 } // namespace ad
168 
172 #ifndef GEN_GUARD_AD_RSS_STATE_RSSSTATE
173 #define GEN_GUARD_AD_RSS_STATE_RSSSTATE
174 
177 namespace ad {
181 namespace rss {
185 namespace state {
186 
196 inline std::ostream &operator<<(std::ostream &os, RssState const &_value)
197 {
198  os << "RssState(";
199  os << "objectId:";
200  os << _value.objectId;
201  os << ",";
202  os << "situationId:";
203  os << _value.situationId;
204  os << ",";
205  os << "longitudinalState:";
206  os << _value.longitudinalState;
207  os << ",";
208  os << "lateralStateRight:";
209  os << _value.lateralStateRight;
210  os << ",";
211  os << "lateralStateLeft:";
212  os << _value.lateralStateLeft;
213  os << ",";
214  os << "unstructuredSceneState:";
215  os << _value.unstructuredSceneState;
216  os << ",";
217  os << "situationType:";
218  os << _value.situationType;
219  os << ")";
220  return os;
221 }
222 
223 } // namespace state
224 } // namespace rss
225 } // namespace ad
226 
227 namespace std {
231 inline std::string to_string(::ad::rss::state::RssState const &value)
232 {
233  stringstream sstream;
234  sstream << value;
235  return sstream.str();
236 }
237 } // namespace std
238 #endif // GEN_GUARD_AD_RSS_STATE_RSSSTATE
ad
namespace ad
Definition: LateralRelativePosition.hpp:26
ad::rss::state::RssState::Ptr
std::shared_ptr< RssState > Ptr
Smart pointer on RssState.
Definition: RssState.hpp:53
ad::rss::state::RssState::lateralStateRight
::ad::rss::state::LateralRssState lateralStateRight
Definition: RssState.hpp:147
UnstructuredSceneRssState.hpp
ad::rss::state::RssState::operator!=
bool operator!=(const RssState &other) const
standard comparison operator
Definition: RssState.hpp:120
ad::rss::state::RssState::situationType
::ad::rss::situation::SituationType situationType
Definition: RssState.hpp:162
ad::rss::situation::SituationId
uint64_t SituationId
DataType SituationId.
Definition: SituationId.hpp:39
ad::rss::state::LongitudinalRssState
DataType LongitudinalRssState.
Definition: LongitudinalRssState.hpp:44
ad::rss::state::RssState::unstructuredSceneState
::ad::rss::state::UnstructuredSceneRssState unstructuredSceneState
Definition: RssState.hpp:157
std::to_string
std::string to_string(::ad::rss::situation::LateralRelativePosition const &value)
overload of the std::to_string for LateralRelativePosition
Definition: LateralRelativePosition.hpp:160
ad::rss::state::RssState
DataType RssState.
Definition: RssState.hpp:48
ObjectId.hpp
ad::rss::state::RssState::longitudinalState
::ad::rss::state::LongitudinalRssState longitudinalState
Definition: RssState.hpp:142
ad::rss::state::RssState::ConstPtr
std::shared_ptr< RssState const > ConstPtr
Smart pointer on constant RssState.
Definition: RssState.hpp:58
ad::rss::world::ObjectId
uint64_t ObjectId
DataType ObjectId.
Definition: ObjectId.hpp:39
LongitudinalRssState.hpp
ad::rss::state::RssState::operator=
RssState & operator=(const RssState &other)=default
standard assignment operator
ad::rss::state::operator<<
std::ostream & operator<<(std::ostream &os, AccelerationRestriction const &_value)
standard ostream operator
Definition: AccelerationRestriction.hpp:164
ad::rss::state::UnstructuredSceneRssState
DataType UnstructuredSceneRssState.
Definition: UnstructuredSceneRssState.hpp:43
SituationType.hpp
ad::rss::state::RssState::objectId
::ad::rss::world::ObjectId objectId
Definition: RssState.hpp:128
ad::rss::state::RssState::RssState
RssState()=default
standard constructor
LateralRssState.hpp
ad::rss::state::RssState::operator==
bool operator==(const RssState &other) const
standard comparison operator
Definition: RssState.hpp:105
ad::rss::state::LateralRssState
DataType LateralRssState.
Definition: LateralRssState.hpp:44
ad::rss::situation::SituationType
SituationType
DataType SituationType.
Definition: SituationType.hpp:41
ad::rss::state::RssState::~RssState
~RssState()=default
standard destructor
SituationId.hpp
ad::rss::state::RssState::lateralStateLeft
::ad::rss::state::LateralRssState lateralStateLeft
Definition: RssState.hpp:152
ad::rss::state::RssState::situationId
::ad::rss::situation::SituationId situationId
Definition: RssState.hpp:137