AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
Leg.h
1
6#pragma once
7#include <aws/location/LocationService_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/location/model/LegGeometry.h>
10#include <aws/location/model/Step.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace LocationService
24{
25namespace Model
26{
27
47 class Leg
48 {
49 public:
50 AWS_LOCATIONSERVICE_API Leg();
51 AWS_LOCATIONSERVICE_API Leg(Aws::Utils::Json::JsonView jsonValue);
52 AWS_LOCATIONSERVICE_API Leg& operator=(Aws::Utils::Json::JsonView jsonValue);
53 AWS_LOCATIONSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const;
54
55
57
64 inline const Aws::Vector<double>& GetStartPosition() const{ return m_startPosition; }
65 inline bool StartPositionHasBeenSet() const { return m_startPositionHasBeenSet; }
66 inline void SetStartPosition(const Aws::Vector<double>& value) { m_startPositionHasBeenSet = true; m_startPosition = value; }
67 inline void SetStartPosition(Aws::Vector<double>&& value) { m_startPositionHasBeenSet = true; m_startPosition = std::move(value); }
68 inline Leg& WithStartPosition(const Aws::Vector<double>& value) { SetStartPosition(value); return *this;}
69 inline Leg& WithStartPosition(Aws::Vector<double>&& value) { SetStartPosition(std::move(value)); return *this;}
70 inline Leg& AddStartPosition(double value) { m_startPositionHasBeenSet = true; m_startPosition.push_back(value); return *this; }
72
74
81 inline const Aws::Vector<double>& GetEndPosition() const{ return m_endPosition; }
82 inline bool EndPositionHasBeenSet() const { return m_endPositionHasBeenSet; }
83 inline void SetEndPosition(const Aws::Vector<double>& value) { m_endPositionHasBeenSet = true; m_endPosition = value; }
84 inline void SetEndPosition(Aws::Vector<double>&& value) { m_endPositionHasBeenSet = true; m_endPosition = std::move(value); }
85 inline Leg& WithEndPosition(const Aws::Vector<double>& value) { SetEndPosition(value); return *this;}
86 inline Leg& WithEndPosition(Aws::Vector<double>&& value) { SetEndPosition(std::move(value)); return *this;}
87 inline Leg& AddEndPosition(double value) { m_endPositionHasBeenSet = true; m_endPosition.push_back(value); return *this; }
89
91
97 inline double GetDistance() const{ return m_distance; }
98 inline bool DistanceHasBeenSet() const { return m_distanceHasBeenSet; }
99 inline void SetDistance(double value) { m_distanceHasBeenSet = true; m_distance = value; }
100 inline Leg& WithDistance(double value) { SetDistance(value); return *this;}
102
104
109 inline double GetDurationSeconds() const{ return m_durationSeconds; }
110 inline bool DurationSecondsHasBeenSet() const { return m_durationSecondsHasBeenSet; }
111 inline void SetDurationSeconds(double value) { m_durationSecondsHasBeenSet = true; m_durationSeconds = value; }
112 inline Leg& WithDurationSeconds(double value) { SetDurationSeconds(value); return *this;}
114
116
119 inline const LegGeometry& GetGeometry() const{ return m_geometry; }
120 inline bool GeometryHasBeenSet() const { return m_geometryHasBeenSet; }
121 inline void SetGeometry(const LegGeometry& value) { m_geometryHasBeenSet = true; m_geometry = value; }
122 inline void SetGeometry(LegGeometry&& value) { m_geometryHasBeenSet = true; m_geometry = std::move(value); }
123 inline Leg& WithGeometry(const LegGeometry& value) { SetGeometry(value); return *this;}
124 inline Leg& WithGeometry(LegGeometry&& value) { SetGeometry(std::move(value)); return *this;}
126
128
134 inline const Aws::Vector<Step>& GetSteps() const{ return m_steps; }
135 inline bool StepsHasBeenSet() const { return m_stepsHasBeenSet; }
136 inline void SetSteps(const Aws::Vector<Step>& value) { m_stepsHasBeenSet = true; m_steps = value; }
137 inline void SetSteps(Aws::Vector<Step>&& value) { m_stepsHasBeenSet = true; m_steps = std::move(value); }
138 inline Leg& WithSteps(const Aws::Vector<Step>& value) { SetSteps(value); return *this;}
139 inline Leg& WithSteps(Aws::Vector<Step>&& value) { SetSteps(std::move(value)); return *this;}
140 inline Leg& AddSteps(const Step& value) { m_stepsHasBeenSet = true; m_steps.push_back(value); return *this; }
141 inline Leg& AddSteps(Step&& value) { m_stepsHasBeenSet = true; m_steps.push_back(std::move(value)); return *this; }
143 private:
144
145 Aws::Vector<double> m_startPosition;
146 bool m_startPositionHasBeenSet = false;
147
148 Aws::Vector<double> m_endPosition;
149 bool m_endPositionHasBeenSet = false;
150
151 double m_distance;
152 bool m_distanceHasBeenSet = false;
153
154 double m_durationSeconds;
155 bool m_durationSecondsHasBeenSet = false;
156
157 LegGeometry m_geometry;
158 bool m_geometryHasBeenSet = false;
159
160 Aws::Vector<Step> m_steps;
161 bool m_stepsHasBeenSet = false;
162 };
163
164} // namespace Model
165} // namespace LocationService
166} // namespace Aws
void SetGeometry(const LegGeometry &value)
Definition Leg.h:121
Leg & WithSteps(Aws::Vector< Step > &&value)
Definition Leg.h:139
AWS_LOCATIONSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
double GetDurationSeconds() const
Definition Leg.h:109
bool StartPositionHasBeenSet() const
Definition Leg.h:65
Leg & WithDurationSeconds(double value)
Definition Leg.h:112
Leg & WithEndPosition(Aws::Vector< double > &&value)
Definition Leg.h:86
bool EndPositionHasBeenSet() const
Definition Leg.h:82
void SetDurationSeconds(double value)
Definition Leg.h:111
void SetSteps(const Aws::Vector< Step > &value)
Definition Leg.h:136
Leg & WithGeometry(const LegGeometry &value)
Definition Leg.h:123
bool GeometryHasBeenSet() const
Definition Leg.h:120
Leg & AddSteps(Step &&value)
Definition Leg.h:141
void SetEndPosition(Aws::Vector< double > &&value)
Definition Leg.h:84
Leg & AddEndPosition(double value)
Definition Leg.h:87
bool DistanceHasBeenSet() const
Definition Leg.h:98
const LegGeometry & GetGeometry() const
Definition Leg.h:119
AWS_LOCATIONSERVICE_API Leg & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetGeometry(LegGeometry &&value)
Definition Leg.h:122
AWS_LOCATIONSERVICE_API Leg(Aws::Utils::Json::JsonView jsonValue)
Leg & WithStartPosition(const Aws::Vector< double > &value)
Definition Leg.h:68
bool StepsHasBeenSet() const
Definition Leg.h:135
bool DurationSecondsHasBeenSet() const
Definition Leg.h:110
AWS_LOCATIONSERVICE_API Leg()
Leg & WithSteps(const Aws::Vector< Step > &value)
Definition Leg.h:138
Leg & WithDistance(double value)
Definition Leg.h:100
double GetDistance() const
Definition Leg.h:97
Leg & AddSteps(const Step &value)
Definition Leg.h:140
void SetEndPosition(const Aws::Vector< double > &value)
Definition Leg.h:83
void SetSteps(Aws::Vector< Step > &&value)
Definition Leg.h:137
Leg & AddStartPosition(double value)
Definition Leg.h:70
Leg & WithStartPosition(Aws::Vector< double > &&value)
Definition Leg.h:69
Leg & WithGeometry(LegGeometry &&value)
Definition Leg.h:124
const Aws::Vector< Step > & GetSteps() const
Definition Leg.h:134
void SetDistance(double value)
Definition Leg.h:99
Leg & WithEndPosition(const Aws::Vector< double > &value)
Definition Leg.h:85
void SetStartPosition(Aws::Vector< double > &&value)
Definition Leg.h:67
const Aws::Vector< double > & GetEndPosition() const
Definition Leg.h:81
void SetStartPosition(const Aws::Vector< double > &value)
Definition Leg.h:66
const Aws::Vector< double > & GetStartPosition() const
Definition Leg.h:64
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue