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

Information about a position.

See Also:

AWS * API Reference

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

The elevation of the equipment at this position.

*/ inline double GetElevation() const{ return m_elevation; } /** *

The elevation of the equipment at this position.

*/ inline bool ElevationHasBeenSet() const { return m_elevationHasBeenSet; } /** *

The elevation of the equipment at this position.

*/ inline void SetElevation(double value) { m_elevationHasBeenSet = true; m_elevation = value; } /** *

The elevation of the equipment at this position.

*/ inline Position& WithElevation(double value) { SetElevation(value); return *this;} /** *

The reference point from which elevation is reported.

*/ inline const ElevationReference& GetElevationReference() const{ return m_elevationReference; } /** *

The reference point from which elevation is reported.

*/ inline bool ElevationReferenceHasBeenSet() const { return m_elevationReferenceHasBeenSet; } /** *

The reference point from which elevation is reported.

*/ inline void SetElevationReference(const ElevationReference& value) { m_elevationReferenceHasBeenSet = true; m_elevationReference = value; } /** *

The reference point from which elevation is reported.

*/ inline void SetElevationReference(ElevationReference&& value) { m_elevationReferenceHasBeenSet = true; m_elevationReference = std::move(value); } /** *

The reference point from which elevation is reported.

*/ inline Position& WithElevationReference(const ElevationReference& value) { SetElevationReference(value); return *this;} /** *

The reference point from which elevation is reported.

*/ inline Position& WithElevationReference(ElevationReference&& value) { SetElevationReference(std::move(value)); return *this;} /** *

The units used to measure the elevation of the position.

*/ inline const ElevationUnit& GetElevationUnit() const{ return m_elevationUnit; } /** *

The units used to measure the elevation of the position.

*/ inline bool ElevationUnitHasBeenSet() const { return m_elevationUnitHasBeenSet; } /** *

The units used to measure the elevation of the position.

*/ inline void SetElevationUnit(const ElevationUnit& value) { m_elevationUnitHasBeenSet = true; m_elevationUnit = value; } /** *

The units used to measure the elevation of the position.

*/ inline void SetElevationUnit(ElevationUnit&& value) { m_elevationUnitHasBeenSet = true; m_elevationUnit = std::move(value); } /** *

The units used to measure the elevation of the position.

*/ inline Position& WithElevationUnit(const ElevationUnit& value) { SetElevationUnit(value); return *this;} /** *

The units used to measure the elevation of the position.

*/ inline Position& WithElevationUnit(ElevationUnit&& value) { SetElevationUnit(std::move(value)); return *this;} /** *

The latitude of the position.

*/ inline double GetLatitude() const{ return m_latitude; } /** *

The latitude of the position.

*/ inline bool LatitudeHasBeenSet() const { return m_latitudeHasBeenSet; } /** *

The latitude of the position.

*/ inline void SetLatitude(double value) { m_latitudeHasBeenSet = true; m_latitude = value; } /** *

The latitude of the position.

*/ inline Position& WithLatitude(double value) { SetLatitude(value); return *this;} /** *

The longitude of the position.

*/ inline double GetLongitude() const{ return m_longitude; } /** *

The longitude of the position.

*/ inline bool LongitudeHasBeenSet() const { return m_longitudeHasBeenSet; } /** *

The longitude of the position.

*/ inline void SetLongitude(double value) { m_longitudeHasBeenSet = true; m_longitude = value; } /** *

The longitude of the position.

*/ inline Position& WithLongitude(double value) { SetLongitude(value); return *this;} private: double m_elevation; bool m_elevationHasBeenSet = false; ElevationReference m_elevationReference; bool m_elevationReferenceHasBeenSet = false; ElevationUnit m_elevationUnit; bool m_elevationUnitHasBeenSet = false; double m_latitude; bool m_latitudeHasBeenSet = false; double m_longitude; bool m_longitudeHasBeenSet = false; }; } // namespace Model } // namespace PrivateNetworks } // namespace Aws