AWS SDK for C++

AWS SDK for C++ Version 1.11.768

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
30 public:
31 AWS_GEOROUTES_API IsolineCarOptions() = default;
32 AWS_GEOROUTES_API IsolineCarOptions(Aws::Utils::Json::JsonView jsonValue);
34 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline IsolineEngineType GetEngineType() const { return m_engineType; }
41 inline bool EngineTypeHasBeenSet() const { return m_engineTypeHasBeenSet; }
42 inline void SetEngineType(IsolineEngineType value) {
43 m_engineTypeHasBeenSet = true;
44 m_engineType = value;
45 }
47 SetEngineType(value);
48 return *this;
49 }
51
53
56 inline const IsolineVehicleLicensePlate& GetLicensePlate() const { return m_licensePlate; }
57 inline bool LicensePlateHasBeenSet() const { return m_licensePlateHasBeenSet; }
58 template <typename LicensePlateT = IsolineVehicleLicensePlate>
59 void SetLicensePlate(LicensePlateT&& value) {
60 m_licensePlateHasBeenSet = true;
61 m_licensePlate = std::forward<LicensePlateT>(value);
62 }
63 template <typename LicensePlateT = IsolineVehicleLicensePlate>
64 IsolineCarOptions& WithLicensePlate(LicensePlateT&& value) {
65 SetLicensePlate(std::forward<LicensePlateT>(value));
66 return *this;
67 }
69
71
74 inline double GetMaxSpeed() const { return m_maxSpeed; }
75 inline bool MaxSpeedHasBeenSet() const { return m_maxSpeedHasBeenSet; }
76 inline void SetMaxSpeed(double value) {
77 m_maxSpeedHasBeenSet = true;
78 m_maxSpeed = value;
79 }
80 inline IsolineCarOptions& WithMaxSpeed(double value) {
81 SetMaxSpeed(value);
82 return *this;
83 }
85
87
91 inline int GetOccupancy() const { return m_occupancy; }
92 inline bool OccupancyHasBeenSet() const { return m_occupancyHasBeenSet; }
93 inline void SetOccupancy(int value) {
94 m_occupancyHasBeenSet = true;
95 m_occupancy = value;
96 }
97 inline IsolineCarOptions& WithOccupancy(int value) {
98 SetOccupancy(value);
99 return *this;
100 }
102 private:
104
105 IsolineVehicleLicensePlate m_licensePlate;
106
107 double m_maxSpeed{0.0};
108
109 int m_occupancy{0};
110 bool m_engineTypeHasBeenSet = false;
111 bool m_licensePlateHasBeenSet = false;
112 bool m_maxSpeedHasBeenSet = false;
113 bool m_occupancyHasBeenSet = false;
114};
115
116} // namespace Model
117} // namespace GeoRoutes
118} // 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