/** * 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 { /** *

LTE object.

See Also:

AWS * API Reference

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

Mobile Country Code.

*/ inline int GetMcc() const{ return m_mcc; } /** *

Mobile Country Code.

*/ inline bool MccHasBeenSet() const { return m_mccHasBeenSet; } /** *

Mobile Country Code.

*/ inline void SetMcc(int value) { m_mccHasBeenSet = true; m_mcc = value; } /** *

Mobile Country Code.

*/ inline LteObj& WithMcc(int value) { SetMcc(value); return *this;} /** *

Mobile Network Code.

*/ inline int GetMnc() const{ return m_mnc; } /** *

Mobile Network Code.

*/ inline bool MncHasBeenSet() const { return m_mncHasBeenSet; } /** *

Mobile Network Code.

*/ inline void SetMnc(int value) { m_mncHasBeenSet = true; m_mnc = value; } /** *

Mobile Network Code.

*/ inline LteObj& WithMnc(int value) { SetMnc(value); return *this;} /** *

E-UTRAN (Evolved Universal Terrestrial Radio Access Network) Cell Global * Identifier.

*/ inline int GetEutranCid() const{ return m_eutranCid; } /** *

E-UTRAN (Evolved Universal Terrestrial Radio Access Network) Cell Global * Identifier.

*/ inline bool EutranCidHasBeenSet() const { return m_eutranCidHasBeenSet; } /** *

E-UTRAN (Evolved Universal Terrestrial Radio Access Network) Cell Global * Identifier.

*/ inline void SetEutranCid(int value) { m_eutranCidHasBeenSet = true; m_eutranCid = value; } /** *

E-UTRAN (Evolved Universal Terrestrial Radio Access Network) Cell Global * Identifier.

*/ inline LteObj& WithEutranCid(int value) { SetEutranCid(value); return *this;} /** *

LTE tracking area code.

*/ inline int GetTac() const{ return m_tac; } /** *

LTE tracking area code.

*/ inline bool TacHasBeenSet() const { return m_tacHasBeenSet; } /** *

LTE tracking area code.

*/ inline void SetTac(int value) { m_tacHasBeenSet = true; m_tac = value; } /** *

LTE tracking area code.

*/ inline LteObj& WithTac(int value) { SetTac(value); return *this;} /** *

LTE local identification (local ID) information.

*/ inline const LteLocalId& GetLteLocalId() const{ return m_lteLocalId; } /** *

LTE local identification (local ID) information.

*/ inline bool LteLocalIdHasBeenSet() const { return m_lteLocalIdHasBeenSet; } /** *

LTE local identification (local ID) information.

*/ inline void SetLteLocalId(const LteLocalId& value) { m_lteLocalIdHasBeenSet = true; m_lteLocalId = value; } /** *

LTE local identification (local ID) information.

*/ inline void SetLteLocalId(LteLocalId&& value) { m_lteLocalIdHasBeenSet = true; m_lteLocalId = std::move(value); } /** *

LTE local identification (local ID) information.

*/ inline LteObj& WithLteLocalId(const LteLocalId& value) { SetLteLocalId(value); return *this;} /** *

LTE local identification (local ID) information.

*/ inline LteObj& WithLteLocalId(LteLocalId&& value) { SetLteLocalId(std::move(value)); return *this;} /** *

LTE timing advance.

*/ inline int GetLteTimingAdvance() const{ return m_lteTimingAdvance; } /** *

LTE timing advance.

*/ inline bool LteTimingAdvanceHasBeenSet() const { return m_lteTimingAdvanceHasBeenSet; } /** *

LTE timing advance.

*/ inline void SetLteTimingAdvance(int value) { m_lteTimingAdvanceHasBeenSet = true; m_lteTimingAdvance = value; } /** *

LTE timing advance.

*/ inline LteObj& WithLteTimingAdvance(int value) { SetLteTimingAdvance(value); return *this;} /** *

Signal power of the reference signal received, measured in dBm * (decibel-milliwatts).

*/ inline int GetRsrp() const{ return m_rsrp; } /** *

Signal power of the reference signal received, measured in dBm * (decibel-milliwatts).

*/ inline bool RsrpHasBeenSet() const { return m_rsrpHasBeenSet; } /** *

Signal power of the reference signal received, measured in dBm * (decibel-milliwatts).

*/ inline void SetRsrp(int value) { m_rsrpHasBeenSet = true; m_rsrp = value; } /** *

Signal power of the reference signal received, measured in dBm * (decibel-milliwatts).

*/ inline LteObj& WithRsrp(int value) { SetRsrp(value); return *this;} /** *

Signal quality of the reference Signal received, measured in decibels * (dB).

*/ inline double GetRsrq() const{ return m_rsrq; } /** *

Signal quality of the reference Signal received, measured in decibels * (dB).

*/ inline bool RsrqHasBeenSet() const { return m_rsrqHasBeenSet; } /** *

Signal quality of the reference Signal received, measured in decibels * (dB).

*/ inline void SetRsrq(double value) { m_rsrqHasBeenSet = true; m_rsrq = value; } /** *

Signal quality of the reference Signal received, measured in decibels * (dB).

*/ inline LteObj& WithRsrq(double value) { SetRsrq(value); return *this;} /** *

Parameter that determines whether the LTE object is capable of supporting NR * (new radio).

*/ inline bool GetNrCapable() const{ return m_nrCapable; } /** *

Parameter that determines whether the LTE object is capable of supporting NR * (new radio).

*/ inline bool NrCapableHasBeenSet() const { return m_nrCapableHasBeenSet; } /** *

Parameter that determines whether the LTE object is capable of supporting NR * (new radio).

*/ inline void SetNrCapable(bool value) { m_nrCapableHasBeenSet = true; m_nrCapable = value; } /** *

Parameter that determines whether the LTE object is capable of supporting NR * (new radio).

*/ inline LteObj& WithNrCapable(bool value) { SetNrCapable(value); return *this;} /** *

LTE object for network measurement reports.

*/ inline const Aws::Vector& GetLteNmr() const{ return m_lteNmr; } /** *

LTE object for network measurement reports.

*/ inline bool LteNmrHasBeenSet() const { return m_lteNmrHasBeenSet; } /** *

LTE object for network measurement reports.

*/ inline void SetLteNmr(const Aws::Vector& value) { m_lteNmrHasBeenSet = true; m_lteNmr = value; } /** *

LTE object for network measurement reports.

*/ inline void SetLteNmr(Aws::Vector&& value) { m_lteNmrHasBeenSet = true; m_lteNmr = std::move(value); } /** *

LTE object for network measurement reports.

*/ inline LteObj& WithLteNmr(const Aws::Vector& value) { SetLteNmr(value); return *this;} /** *

LTE object for network measurement reports.

*/ inline LteObj& WithLteNmr(Aws::Vector&& value) { SetLteNmr(std::move(value)); return *this;} /** *

LTE object for network measurement reports.

*/ inline LteObj& AddLteNmr(const LteNmrObj& value) { m_lteNmrHasBeenSet = true; m_lteNmr.push_back(value); return *this; } /** *

LTE object for network measurement reports.

*/ inline LteObj& AddLteNmr(LteNmrObj&& value) { m_lteNmrHasBeenSet = true; m_lteNmr.push_back(std::move(value)); return *this; } private: int m_mcc; bool m_mccHasBeenSet = false; int m_mnc; bool m_mncHasBeenSet = false; int m_eutranCid; bool m_eutranCidHasBeenSet = false; int m_tac; bool m_tacHasBeenSet = false; LteLocalId m_lteLocalId; bool m_lteLocalIdHasBeenSet = false; int m_lteTimingAdvance; bool m_lteTimingAdvanceHasBeenSet = false; int m_rsrp; bool m_rsrpHasBeenSet = false; double m_rsrq; bool m_rsrqHasBeenSet = false; bool m_nrCapable; bool m_nrCapableHasBeenSet = false; Aws::Vector m_lteNmr; bool m_lteNmrHasBeenSet = false; }; } // namespace Model } // namespace IoTWireless } // namespace Aws