AWS SDK for C++

AWS SDK for C++ Version 1.11.793

Loading...
Searching...
No Matches
IsolineCarOptions.h
1
6#pragma once
7#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
8#include <aws/geo-routes/model/IsolineEngineType.h>
9#include <aws/geo-routes/model/IsolineVehicleLicensePlate.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
32 public:
33 AWS_GEOROUTES_API IsolineCarOptions() = default;
34 AWS_GEOROUTES_API IsolineCarOptions(Aws::Utils::Json::JsonView jsonValue);
36 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
47 inline IsolineEngineType GetEngineType() const { return m_engineType; }
48 inline bool EngineTypeHasBeenSet() const { return m_engineTypeHasBeenSet; }
49 inline void SetEngineType(IsolineEngineType value) {
50 m_engineTypeHasBeenSet = true;
51 m_engineType = value;
52 }
54 SetEngineType(value);
55 return *this;
56 }
58
60
64 inline const IsolineVehicleLicensePlate& GetLicensePlate() const { return m_licensePlate; }
65 inline bool LicensePlateHasBeenSet() const { return m_licensePlateHasBeenSet; }
66 template <typename LicensePlateT = IsolineVehicleLicensePlate>
67 void SetLicensePlate(LicensePlateT&& value) {
68 m_licensePlateHasBeenSet = true;
69 m_licensePlate = std::forward<LicensePlateT>(value);
70 }
71 template <typename LicensePlateT = IsolineVehicleLicensePlate>
72 IsolineCarOptions& WithLicensePlate(LicensePlateT&& value) {
73 SetLicensePlate(std::forward<LicensePlateT>(value));
74 return *this;
75 }
77
79
85 inline double GetMaxSpeed() const { return m_maxSpeed; }
86 inline bool MaxSpeedHasBeenSet() const { return m_maxSpeedHasBeenSet; }
87 inline void SetMaxSpeed(double value) {
88 m_maxSpeedHasBeenSet = true;
89 m_maxSpeed = value;
90 }
91 inline IsolineCarOptions& WithMaxSpeed(double value) {
92 SetMaxSpeed(value);
93 return *this;
94 }
96
98
103 inline int GetOccupancy() const { return m_occupancy; }
104 inline bool OccupancyHasBeenSet() const { return m_occupancyHasBeenSet; }
105 inline void SetOccupancy(int value) {
106 m_occupancyHasBeenSet = true;
107 m_occupancy = value;
108 }
109 inline IsolineCarOptions& WithOccupancy(int value) {
110 SetOccupancy(value);
111 return *this;
112 }
114 private:
116
117 IsolineVehicleLicensePlate m_licensePlate;
118
119 double m_maxSpeed{0.0};
120
121 int m_occupancy{0};
122 bool m_engineTypeHasBeenSet = false;
123 bool m_licensePlateHasBeenSet = false;
124 bool m_maxSpeedHasBeenSet = false;
125 bool m_occupancyHasBeenSet = false;
126};
127
128} // namespace Model
129} // namespace GeoRoutes
130} // namespace Aws
IsolineCarOptions & WithEngineType(IsolineEngineType value)
AWS_GEOROUTES_API IsolineCarOptions()=default
IsolineCarOptions & WithMaxSpeed(double value)
AWS_GEOROUTES_API IsolineCarOptions(Aws::Utils::Json::JsonView jsonValue)
AWS_GEOROUTES_API IsolineCarOptions & operator=(Aws::Utils::Json::JsonView jsonValue)
IsolineCarOptions & WithOccupancy(int value)
const IsolineVehicleLicensePlate & GetLicensePlate() const
void SetEngineType(IsolineEngineType value)
void SetLicensePlate(LicensePlateT &&value)
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
IsolineCarOptions & WithLicensePlate(LicensePlateT &&value)
Aws::Utils::Json::JsonValue JsonValue