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

The wrapper for a position configuration.

See Also:

AWS * API Reference

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

Resource identifier for the position configuration.

*/ inline const Aws::String& GetResourceIdentifier() const{ return m_resourceIdentifier; } /** *

Resource identifier for the position configuration.

*/ inline bool ResourceIdentifierHasBeenSet() const { return m_resourceIdentifierHasBeenSet; } /** *

Resource identifier for the position configuration.

*/ inline void SetResourceIdentifier(const Aws::String& value) { m_resourceIdentifierHasBeenSet = true; m_resourceIdentifier = value; } /** *

Resource identifier for the position configuration.

*/ inline void SetResourceIdentifier(Aws::String&& value) { m_resourceIdentifierHasBeenSet = true; m_resourceIdentifier = std::move(value); } /** *

Resource identifier for the position configuration.

*/ inline void SetResourceIdentifier(const char* value) { m_resourceIdentifierHasBeenSet = true; m_resourceIdentifier.assign(value); } /** *

Resource identifier for the position configuration.

*/ inline PositionConfigurationItem& WithResourceIdentifier(const Aws::String& value) { SetResourceIdentifier(value); return *this;} /** *

Resource identifier for the position configuration.

*/ inline PositionConfigurationItem& WithResourceIdentifier(Aws::String&& value) { SetResourceIdentifier(std::move(value)); return *this;} /** *

Resource identifier for the position configuration.

*/ inline PositionConfigurationItem& WithResourceIdentifier(const char* value) { SetResourceIdentifier(value); return *this;} /** *

Resource type of the resource for the position configuration.

*/ inline const PositionResourceType& GetResourceType() const{ return m_resourceType; } /** *

Resource type of the resource for the position configuration.

*/ inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } /** *

Resource type of the resource for the position configuration.

*/ inline void SetResourceType(const PositionResourceType& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } /** *

Resource type of the resource for the position configuration.

*/ inline void SetResourceType(PositionResourceType&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } /** *

Resource type of the resource for the position configuration.

*/ inline PositionConfigurationItem& WithResourceType(const PositionResourceType& value) { SetResourceType(value); return *this;} /** *

Resource type of the resource for the position configuration.

*/ inline PositionConfigurationItem& WithResourceType(PositionResourceType&& value) { SetResourceType(std::move(value)); return *this;} /** *

The details of the positioning solver object used to compute the * location.

*/ inline const PositionSolverDetails& GetSolvers() const{ return m_solvers; } /** *

The details of the positioning solver object used to compute the * location.

*/ inline bool SolversHasBeenSet() const { return m_solversHasBeenSet; } /** *

The details of the positioning solver object used to compute the * location.

*/ inline void SetSolvers(const PositionSolverDetails& value) { m_solversHasBeenSet = true; m_solvers = value; } /** *

The details of the positioning solver object used to compute the * location.

*/ inline void SetSolvers(PositionSolverDetails&& value) { m_solversHasBeenSet = true; m_solvers = std::move(value); } /** *

The details of the positioning solver object used to compute the * location.

*/ inline PositionConfigurationItem& WithSolvers(const PositionSolverDetails& value) { SetSolvers(value); return *this;} /** *

The details of the positioning solver object used to compute the * location.

*/ inline PositionConfigurationItem& WithSolvers(PositionSolverDetails&& value) { SetSolvers(std::move(value)); return *this;} /** *

The position data destination that describes the AWS IoT rule that processes * the device's position data for use by AWS IoT Core for LoRaWAN.

*/ inline const Aws::String& GetDestination() const{ return m_destination; } /** *

The position data destination that describes the AWS IoT rule that processes * the device's position data for use by AWS IoT Core for LoRaWAN.

*/ inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; } /** *

The position data destination that describes the AWS IoT rule that processes * the device's position data for use by AWS IoT Core for LoRaWAN.

*/ inline void SetDestination(const Aws::String& value) { m_destinationHasBeenSet = true; m_destination = value; } /** *

The position data destination that describes the AWS IoT rule that processes * the device's position data for use by AWS IoT Core for LoRaWAN.

*/ inline void SetDestination(Aws::String&& value) { m_destinationHasBeenSet = true; m_destination = std::move(value); } /** *

The position data destination that describes the AWS IoT rule that processes * the device's position data for use by AWS IoT Core for LoRaWAN.

*/ inline void SetDestination(const char* value) { m_destinationHasBeenSet = true; m_destination.assign(value); } /** *

The position data destination that describes the AWS IoT rule that processes * the device's position data for use by AWS IoT Core for LoRaWAN.

*/ inline PositionConfigurationItem& WithDestination(const Aws::String& value) { SetDestination(value); return *this;} /** *

The position data destination that describes the AWS IoT rule that processes * the device's position data for use by AWS IoT Core for LoRaWAN.

*/ inline PositionConfigurationItem& WithDestination(Aws::String&& value) { SetDestination(std::move(value)); return *this;} /** *

The position data destination that describes the AWS IoT rule that processes * the device's position data for use by AWS IoT Core for LoRaWAN.

*/ inline PositionConfigurationItem& WithDestination(const char* value) { SetDestination(value); return *this;} private: Aws::String m_resourceIdentifier; bool m_resourceIdentifierHasBeenSet = false; PositionResourceType m_resourceType; bool m_resourceTypeHasBeenSet = false; PositionSolverDetails m_solvers; bool m_solversHasBeenSet = false; Aws::String m_destination; bool m_destinationHasBeenSet = false; }; } // namespace Model } // namespace IoTWireless } // namespace Aws