AWS SDK for C++

AWS SDK for C++ Version 1.11.765

Loading...
Searching...
No Matches
RoadSnapTracePoint.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace GeoRoutes {
21namespace Model {
22
30 public:
31 AWS_GEOROUTES_API RoadSnapTracePoint() = default;
32 AWS_GEOROUTES_API RoadSnapTracePoint(Aws::Utils::Json::JsonView jsonValue);
34 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline double GetHeading() const { return m_heading; }
41 inline bool HeadingHasBeenSet() const { return m_headingHasBeenSet; }
42 inline void SetHeading(double value) {
43 m_headingHasBeenSet = true;
44 m_heading = value;
45 }
46 inline RoadSnapTracePoint& WithHeading(double value) {
47 SetHeading(value);
48 return *this;
49 }
51
53
56 inline const Aws::Vector<double>& GetPosition() const { return m_position; }
57 inline bool PositionHasBeenSet() const { return m_positionHasBeenSet; }
58 template <typename PositionT = Aws::Vector<double>>
59 void SetPosition(PositionT&& value) {
60 m_positionHasBeenSet = true;
61 m_position = std::forward<PositionT>(value);
62 }
63 template <typename PositionT = Aws::Vector<double>>
64 RoadSnapTracePoint& WithPosition(PositionT&& value) {
65 SetPosition(std::forward<PositionT>(value));
66 return *this;
67 }
68 inline RoadSnapTracePoint& AddPosition(double value) {
69 m_positionHasBeenSet = true;
70 m_position.push_back(value);
71 return *this;
72 }
74
76
80 inline double GetSpeed() const { return m_speed; }
81 inline bool SpeedHasBeenSet() const { return m_speedHasBeenSet; }
82 inline void SetSpeed(double value) {
83 m_speedHasBeenSet = true;
84 m_speed = value;
85 }
86 inline RoadSnapTracePoint& WithSpeed(double value) {
87 SetSpeed(value);
88 return *this;
89 }
91
93
96 inline const Aws::String& GetTimestamp() const { return m_timestamp; }
97 inline bool TimestampHasBeenSet() const { return m_timestampHasBeenSet; }
98 template <typename TimestampT = Aws::String>
99 void SetTimestamp(TimestampT&& value) {
100 m_timestampHasBeenSet = true;
101 m_timestamp = std::forward<TimestampT>(value);
102 }
103 template <typename TimestampT = Aws::String>
104 RoadSnapTracePoint& WithTimestamp(TimestampT&& value) {
105 SetTimestamp(std::forward<TimestampT>(value));
106 return *this;
107 }
109 private:
110 double m_heading{0.0};
111
112 Aws::Vector<double> m_position;
113
114 double m_speed{0.0};
115
116 Aws::String m_timestamp;
117 bool m_headingHasBeenSet = false;
118 bool m_positionHasBeenSet = false;
119 bool m_speedHasBeenSet = false;
120 bool m_timestampHasBeenSet = false;
121};
122
123} // namespace Model
124} // namespace GeoRoutes
125} // namespace Aws
RoadSnapTracePoint & WithHeading(double value)
AWS_GEOROUTES_API RoadSnapTracePoint()=default
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< double > & GetPosition() const
RoadSnapTracePoint & WithPosition(PositionT &&value)
RoadSnapTracePoint & WithTimestamp(TimestampT &&value)
RoadSnapTracePoint & WithSpeed(double value)
AWS_GEOROUTES_API RoadSnapTracePoint(Aws::Utils::Json::JsonView jsonValue)
RoadSnapTracePoint & AddPosition(double value)
AWS_GEOROUTES_API RoadSnapTracePoint & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue