/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace LocationService { namespace Model { /** *

The result for the calculated route of one DeparturePosition * DestinationPosition pair.

See Also:

AWS * API Reference

*/ class RouteMatrixEntry { public: AWS_LOCATIONSERVICE_API RouteMatrixEntry(); AWS_LOCATIONSERVICE_API RouteMatrixEntry(Aws::Utils::Json::JsonView jsonValue); AWS_LOCATIONSERVICE_API RouteMatrixEntry& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_LOCATIONSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The total distance of travel for the route.

*/ inline double GetDistance() const{ return m_distance; } /** *

The total distance of travel for the route.

*/ inline bool DistanceHasBeenSet() const { return m_distanceHasBeenSet; } /** *

The total distance of travel for the route.

*/ inline void SetDistance(double value) { m_distanceHasBeenSet = true; m_distance = value; } /** *

The total distance of travel for the route.

*/ inline RouteMatrixEntry& WithDistance(double value) { SetDistance(value); return *this;} /** *

The expected duration of travel for the route.

*/ inline double GetDurationSeconds() const{ return m_durationSeconds; } /** *

The expected duration of travel for the route.

*/ inline bool DurationSecondsHasBeenSet() const { return m_durationSecondsHasBeenSet; } /** *

The expected duration of travel for the route.

*/ inline void SetDurationSeconds(double value) { m_durationSecondsHasBeenSet = true; m_durationSeconds = value; } /** *

The expected duration of travel for the route.

*/ inline RouteMatrixEntry& WithDurationSeconds(double value) { SetDurationSeconds(value); return *this;} /** *

An error corresponding to the calculation of a route between the * DeparturePosition and DestinationPosition.

*/ inline const RouteMatrixEntryError& GetError() const{ return m_error; } /** *

An error corresponding to the calculation of a route between the * DeparturePosition and DestinationPosition.

*/ inline bool ErrorHasBeenSet() const { return m_errorHasBeenSet; } /** *

An error corresponding to the calculation of a route between the * DeparturePosition and DestinationPosition.

*/ inline void SetError(const RouteMatrixEntryError& value) { m_errorHasBeenSet = true; m_error = value; } /** *

An error corresponding to the calculation of a route between the * DeparturePosition and DestinationPosition.

*/ inline void SetError(RouteMatrixEntryError&& value) { m_errorHasBeenSet = true; m_error = std::move(value); } /** *

An error corresponding to the calculation of a route between the * DeparturePosition and DestinationPosition.

*/ inline RouteMatrixEntry& WithError(const RouteMatrixEntryError& value) { SetError(value); return *this;} /** *

An error corresponding to the calculation of a route between the * DeparturePosition and DestinationPosition.

*/ inline RouteMatrixEntry& WithError(RouteMatrixEntryError&& value) { SetError(std::move(value)); return *this;} private: double m_distance; bool m_distanceHasBeenSet = false; double m_durationSeconds; bool m_durationSecondsHasBeenSet = false; RouteMatrixEntryError m_error; bool m_errorHasBeenSet = false; }; } // namespace Model } // namespace LocationService } // namespace Aws