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

Returns the result of the route matrix calculation.

See Also:

* AWS * API Reference

*/ class CalculateRouteMatrixResult { public: AWS_LOCATIONSERVICE_API CalculateRouteMatrixResult(); AWS_LOCATIONSERVICE_API CalculateRouteMatrixResult(const Aws::AmazonWebServiceResult& result); AWS_LOCATIONSERVICE_API CalculateRouteMatrixResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The calculated route matrix containing the results for all pairs of * DeparturePositions to DestinationPositions. Each row * corresponds to one entry in DeparturePositions. Each entry in the * row corresponds to the route from that entry in DeparturePositions * to an entry in DestinationPositions.

*/ inline const Aws::Vector>& GetRouteMatrix() const{ return m_routeMatrix; } /** *

The calculated route matrix containing the results for all pairs of * DeparturePositions to DestinationPositions. Each row * corresponds to one entry in DeparturePositions. Each entry in the * row corresponds to the route from that entry in DeparturePositions * to an entry in DestinationPositions.

*/ inline void SetRouteMatrix(const Aws::Vector>& value) { m_routeMatrix = value; } /** *

The calculated route matrix containing the results for all pairs of * DeparturePositions to DestinationPositions. Each row * corresponds to one entry in DeparturePositions. Each entry in the * row corresponds to the route from that entry in DeparturePositions * to an entry in DestinationPositions.

*/ inline void SetRouteMatrix(Aws::Vector>&& value) { m_routeMatrix = std::move(value); } /** *

The calculated route matrix containing the results for all pairs of * DeparturePositions to DestinationPositions. Each row * corresponds to one entry in DeparturePositions. Each entry in the * row corresponds to the route from that entry in DeparturePositions * to an entry in DestinationPositions.

*/ inline CalculateRouteMatrixResult& WithRouteMatrix(const Aws::Vector>& value) { SetRouteMatrix(value); return *this;} /** *

The calculated route matrix containing the results for all pairs of * DeparturePositions to DestinationPositions. Each row * corresponds to one entry in DeparturePositions. Each entry in the * row corresponds to the route from that entry in DeparturePositions * to an entry in DestinationPositions.

*/ inline CalculateRouteMatrixResult& WithRouteMatrix(Aws::Vector>&& value) { SetRouteMatrix(std::move(value)); return *this;} /** *

The calculated route matrix containing the results for all pairs of * DeparturePositions to DestinationPositions. Each row * corresponds to one entry in DeparturePositions. Each entry in the * row corresponds to the route from that entry in DeparturePositions * to an entry in DestinationPositions.

*/ inline CalculateRouteMatrixResult& AddRouteMatrix(const Aws::Vector& value) { m_routeMatrix.push_back(value); return *this; } /** *

The calculated route matrix containing the results for all pairs of * DeparturePositions to DestinationPositions. Each row * corresponds to one entry in DeparturePositions. Each entry in the * row corresponds to the route from that entry in DeparturePositions * to an entry in DestinationPositions.

*/ inline CalculateRouteMatrixResult& AddRouteMatrix(Aws::Vector&& value) { m_routeMatrix.push_back(std::move(value)); return *this; } /** *

For routes calculated using an Esri route calculator resource, departure * positions are snapped to the closest road. For Esri route calculator resources, * this returns the list of departure/origin positions used for calculation of the * RouteMatrix.

*/ inline const Aws::Vector>& GetSnappedDeparturePositions() const{ return m_snappedDeparturePositions; } /** *

For routes calculated using an Esri route calculator resource, departure * positions are snapped to the closest road. For Esri route calculator resources, * this returns the list of departure/origin positions used for calculation of the * RouteMatrix.

*/ inline void SetSnappedDeparturePositions(const Aws::Vector>& value) { m_snappedDeparturePositions = value; } /** *

For routes calculated using an Esri route calculator resource, departure * positions are snapped to the closest road. For Esri route calculator resources, * this returns the list of departure/origin positions used for calculation of the * RouteMatrix.

*/ inline void SetSnappedDeparturePositions(Aws::Vector>&& value) { m_snappedDeparturePositions = std::move(value); } /** *

For routes calculated using an Esri route calculator resource, departure * positions are snapped to the closest road. For Esri route calculator resources, * this returns the list of departure/origin positions used for calculation of the * RouteMatrix.

*/ inline CalculateRouteMatrixResult& WithSnappedDeparturePositions(const Aws::Vector>& value) { SetSnappedDeparturePositions(value); return *this;} /** *

For routes calculated using an Esri route calculator resource, departure * positions are snapped to the closest road. For Esri route calculator resources, * this returns the list of departure/origin positions used for calculation of the * RouteMatrix.

*/ inline CalculateRouteMatrixResult& WithSnappedDeparturePositions(Aws::Vector>&& value) { SetSnappedDeparturePositions(std::move(value)); return *this;} /** *

For routes calculated using an Esri route calculator resource, departure * positions are snapped to the closest road. For Esri route calculator resources, * this returns the list of departure/origin positions used for calculation of the * RouteMatrix.

*/ inline CalculateRouteMatrixResult& AddSnappedDeparturePositions(const Aws::Vector& value) { m_snappedDeparturePositions.push_back(value); return *this; } /** *

For routes calculated using an Esri route calculator resource, departure * positions are snapped to the closest road. For Esri route calculator resources, * this returns the list of departure/origin positions used for calculation of the * RouteMatrix.

*/ inline CalculateRouteMatrixResult& AddSnappedDeparturePositions(Aws::Vector&& value) { m_snappedDeparturePositions.push_back(std::move(value)); return *this; } /** *

The list of destination positions for the route matrix used for calculation * of the RouteMatrix.

*/ inline const Aws::Vector>& GetSnappedDestinationPositions() const{ return m_snappedDestinationPositions; } /** *

The list of destination positions for the route matrix used for calculation * of the RouteMatrix.

*/ inline void SetSnappedDestinationPositions(const Aws::Vector>& value) { m_snappedDestinationPositions = value; } /** *

The list of destination positions for the route matrix used for calculation * of the RouteMatrix.

*/ inline void SetSnappedDestinationPositions(Aws::Vector>&& value) { m_snappedDestinationPositions = std::move(value); } /** *

The list of destination positions for the route matrix used for calculation * of the RouteMatrix.

*/ inline CalculateRouteMatrixResult& WithSnappedDestinationPositions(const Aws::Vector>& value) { SetSnappedDestinationPositions(value); return *this;} /** *

The list of destination positions for the route matrix used for calculation * of the RouteMatrix.

*/ inline CalculateRouteMatrixResult& WithSnappedDestinationPositions(Aws::Vector>&& value) { SetSnappedDestinationPositions(std::move(value)); return *this;} /** *

The list of destination positions for the route matrix used for calculation * of the RouteMatrix.

*/ inline CalculateRouteMatrixResult& AddSnappedDestinationPositions(const Aws::Vector& value) { m_snappedDestinationPositions.push_back(value); return *this; } /** *

The list of destination positions for the route matrix used for calculation * of the RouteMatrix.

*/ inline CalculateRouteMatrixResult& AddSnappedDestinationPositions(Aws::Vector&& value) { m_snappedDestinationPositions.push_back(std::move(value)); return *this; } /** *

Contains information about the route matrix, DataSource, * DistanceUnit, RouteCount and * ErrorCount.

*/ inline const CalculateRouteMatrixSummary& GetSummary() const{ return m_summary; } /** *

Contains information about the route matrix, DataSource, * DistanceUnit, RouteCount and * ErrorCount.

*/ inline void SetSummary(const CalculateRouteMatrixSummary& value) { m_summary = value; } /** *

Contains information about the route matrix, DataSource, * DistanceUnit, RouteCount and * ErrorCount.

*/ inline void SetSummary(CalculateRouteMatrixSummary&& value) { m_summary = std::move(value); } /** *

Contains information about the route matrix, DataSource, * DistanceUnit, RouteCount and * ErrorCount.

*/ inline CalculateRouteMatrixResult& WithSummary(const CalculateRouteMatrixSummary& value) { SetSummary(value); return *this;} /** *

Contains information about the route matrix, DataSource, * DistanceUnit, RouteCount and * ErrorCount.

*/ inline CalculateRouteMatrixResult& WithSummary(CalculateRouteMatrixSummary&& value) { SetSummary(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline CalculateRouteMatrixResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline CalculateRouteMatrixResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline CalculateRouteMatrixResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::Vector> m_routeMatrix; Aws::Vector> m_snappedDeparturePositions; Aws::Vector> m_snappedDestinationPositions; CalculateRouteMatrixSummary m_summary; Aws::String m_requestId; }; } // namespace Model } // namespace LocationService } // namespace Aws