ad_rss
UnstructuredSettings.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 <cstdint>
21 #include <iostream>
22 #include <limits>
23 #include <memory>
24 #include <sstream>
25 #include "ad/physics/Angle.hpp"
26 #include "ad/physics/AngularAcceleration.hpp"
27 #include "ad/physics/Distance.hpp"
28 #include "ad/physics/Duration.hpp"
32 namespace ad {
36 namespace rss {
40 namespace world {
41 
48 {
52  typedef std::shared_ptr<UnstructuredSettings> Ptr;
53 
57  typedef std::shared_ptr<UnstructuredSettings const> ConstPtr;
58 
62  UnstructuredSettings() = default;
63 
67  ~UnstructuredSettings() = default;
68 
72  UnstructuredSettings(const UnstructuredSettings &other) = default;
73 
77  UnstructuredSettings(UnstructuredSettings &&other) = default;
78 
86  UnstructuredSettings &operator=(const UnstructuredSettings &other) = default;
87 
96 
104  bool operator==(const UnstructuredSettings &other) const
105  {
124  }
125 
133  bool operator!=(const UnstructuredSettings &other) const
134  {
135  return !operator==(other);
136  }
137 
143  ::ad::physics::Distance pedestrianTurningRadius;
144 
150  ::ad::physics::Angle driveAwayMaxAngle;
151 
156  ::ad::physics::AngularAcceleration vehicleYawRateChange;
157 
161  ::ad::physics::Distance vehicleMinRadius;
162 
169  ::ad::physics::Duration vehicleTrajectoryCalculationStep;
170 
178 
186 
192 
198 
203 
208 
213 
218 
226 
234 };
235 
236 } // namespace world
237 } // namespace rss
238 } // namespace ad
239 
243 #ifndef GEN_GUARD_AD_RSS_WORLD_UNSTRUCTUREDSETTINGS
244 #define GEN_GUARD_AD_RSS_WORLD_UNSTRUCTUREDSETTINGS
245 
248 namespace ad {
252 namespace rss {
256 namespace world {
257 
267 inline std::ostream &operator<<(std::ostream &os, UnstructuredSettings const &_value)
268 {
269  os << "UnstructuredSettings(";
270  os << "pedestrianTurningRadius:";
271  os << _value.pedestrianTurningRadius;
272  os << ",";
273  os << "driveAwayMaxAngle:";
274  os << _value.driveAwayMaxAngle;
275  os << ",";
276  os << "vehicleYawRateChange:";
277  os << _value.vehicleYawRateChange;
278  os << ",";
279  os << "vehicleMinRadius:";
280  os << _value.vehicleMinRadius;
281  os << ",";
282  os << "vehicleTrajectoryCalculationStep:";
284  os << ",";
285  os << "vehicleFrontIntermediateYawRateChangeRatioSteps:";
287  os << ",";
288  os << "vehicleBackIntermediateYawRateChangeRatioSteps:";
290  os << ",";
291  os << "vehicleBrakeIntermediateAccelerationSteps:";
293  os << ",";
294  os << "vehicleContinueForwardIntermediateAccelerationSteps:";
296  os << ",";
297  os << "vehicleContinueForwardIntermediateYawRateChangeRatioSteps:";
299  os << ",";
300  os << "pedestrianContinueForwardIntermediateHeadingChangeRatioSteps:";
302  os << ",";
303  os << "pedestrianContinueForwardIntermediateAccelerationSteps:";
305  os << ",";
306  os << "pedestrianBrakeIntermediateAccelerationSteps:";
308  os << ",";
309  os << "pedestrianFrontIntermediateHeadingChangeRatioSteps:";
311  os << ",";
312  os << "pedestrianBackIntermediateHeadingChangeRatioSteps:";
314  os << ")";
315  return os;
316 }
317 
318 } // namespace world
319 } // namespace rss
320 } // namespace ad
321 
322 namespace std {
326 inline std::string to_string(::ad::rss::world::UnstructuredSettings const &value)
327 {
328  stringstream sstream;
329  sstream << value;
330  return sstream.str();
331 }
332 } // namespace std
333 #endif // GEN_GUARD_AD_RSS_WORLD_UNSTRUCTUREDSETTINGS
ad
namespace ad
Definition: LateralRelativePosition.hpp:26
ad::rss::world::UnstructuredSettings::operator!=
bool operator!=(const UnstructuredSettings &other) const
standard comparison operator
Definition: UnstructuredSettings.hpp:133
ad::rss::world::UnstructuredSettings::UnstructuredSettings
UnstructuredSettings()=default
standard constructor
ad::rss::world::UnstructuredSettings::vehicleBrakeIntermediateAccelerationSteps
uint32_t vehicleBrakeIntermediateAccelerationSteps
Definition: UnstructuredSettings.hpp:191
ad::rss::world::UnstructuredSettings::vehicleContinueForwardIntermediateYawRateChangeRatioSteps
uint32_t vehicleContinueForwardIntermediateYawRateChangeRatioSteps
Definition: UnstructuredSettings.hpp:202
ad::rss::world::UnstructuredSettings::pedestrianFrontIntermediateHeadingChangeRatioSteps
uint32_t pedestrianFrontIntermediateHeadingChangeRatioSteps
Definition: UnstructuredSettings.hpp:225
ad::rss::world::UnstructuredSettings::pedestrianContinueForwardIntermediateHeadingChangeRatioSteps
uint32_t pedestrianContinueForwardIntermediateHeadingChangeRatioSteps
Definition: UnstructuredSettings.hpp:207
ad::rss::world::UnstructuredSettings::pedestrianBackIntermediateHeadingChangeRatioSteps
uint32_t pedestrianBackIntermediateHeadingChangeRatioSteps
Definition: UnstructuredSettings.hpp:233
ad::rss::world::UnstructuredSettings::pedestrianContinueForwardIntermediateAccelerationSteps
uint32_t pedestrianContinueForwardIntermediateAccelerationSteps
Definition: UnstructuredSettings.hpp:212
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::world::UnstructuredSettings::vehicleYawRateChange
::ad::physics::AngularAcceleration vehicleYawRateChange
Definition: UnstructuredSettings.hpp:156
ad::rss::world::UnstructuredSettings::vehicleMinRadius
::ad::physics::Distance vehicleMinRadius
Definition: UnstructuredSettings.hpp:161
ad::rss::world::operator<<
std::ostream & operator<<(std::ostream &os, LaneDrivingDirection const &value)
standard ostream operator
Definition: LaneDrivingDirection.hpp:132
ad::rss::world::UnstructuredSettings::pedestrianBrakeIntermediateAccelerationSteps
uint32_t pedestrianBrakeIntermediateAccelerationSteps
Definition: UnstructuredSettings.hpp:217
ad::rss::world::UnstructuredSettings::vehicleBackIntermediateYawRateChangeRatioSteps
uint32_t vehicleBackIntermediateYawRateChangeRatioSteps
Definition: UnstructuredSettings.hpp:185
ad::rss::world::UnstructuredSettings::operator==
bool operator==(const UnstructuredSettings &other) const
standard comparison operator
Definition: UnstructuredSettings.hpp:104
ad::rss::world::UnstructuredSettings::Ptr
std::shared_ptr< UnstructuredSettings > Ptr
Smart pointer on UnstructuredSettings.
Definition: UnstructuredSettings.hpp:52
ad::rss::world::UnstructuredSettings::vehicleContinueForwardIntermediateAccelerationSteps
uint32_t vehicleContinueForwardIntermediateAccelerationSteps
Definition: UnstructuredSettings.hpp:197
ad::rss::world::UnstructuredSettings::vehicleFrontIntermediateYawRateChangeRatioSteps
uint32_t vehicleFrontIntermediateYawRateChangeRatioSteps
Definition: UnstructuredSettings.hpp:177
ad::rss::world::UnstructuredSettings::pedestrianTurningRadius
::ad::physics::Distance pedestrianTurningRadius
Definition: UnstructuredSettings.hpp:143
ad::rss::world::UnstructuredSettings::vehicleTrajectoryCalculationStep
::ad::physics::Duration vehicleTrajectoryCalculationStep
Definition: UnstructuredSettings.hpp:169
ad::rss::world::UnstructuredSettings::ConstPtr
std::shared_ptr< UnstructuredSettings const > ConstPtr
Smart pointer on constant UnstructuredSettings.
Definition: UnstructuredSettings.hpp:57
ad::rss::world::UnstructuredSettings::operator=
UnstructuredSettings & operator=(const UnstructuredSettings &other)=default
standard assignment operator
ad::rss::world::UnstructuredSettings::driveAwayMaxAngle
::ad::physics::Angle driveAwayMaxAngle
Definition: UnstructuredSettings.hpp:150
ad::rss::world::UnstructuredSettings
DataType UnstructuredSettings.
Definition: UnstructuredSettings.hpp:47
ad::rss::world::UnstructuredSettings::~UnstructuredSettings
~UnstructuredSettings()=default
standard destructor