diff options
Diffstat (limited to 'src/MTS_IO_ICellularRadio.cpp')
-rw-r--r-- | src/MTS_IO_ICellularRadio.cpp | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/MTS_IO_ICellularRadio.cpp b/src/MTS_IO_ICellularRadio.cpp index 73737c7..9f63408 100644 --- a/src/MTS_IO_ICellularRadio.cpp +++ b/src/MTS_IO_ICellularRadio.cpp @@ -513,3 +513,51 @@ std::string MTS::IO::ICellularRadio::getCodeAsString(CODE eCode) { } } +MTS::IO::ICellularRadio::CODE MTS::IO::ICellularRadio::convertUeModeToString(MTS::IO::ICellularRadio::UE_MODES_OF_OPERATION mode, std::string &string) { + CODE rc; + switch (mode) { + case ICellularRadio::UE_MODES_OF_OPERATION::PS_MODE1: + string = "ps_1"; + rc = CODE::SUCCESS; + break; + case ICellularRadio::UE_MODES_OF_OPERATION::PS_MODE2: + string = "ps_2"; + rc = CODE::SUCCESS; + break; + case ICellularRadio::UE_MODES_OF_OPERATION::CS_PS_MODE1: + string = "csps_1"; + rc = CODE::SUCCESS; + break; + case ICellularRadio::UE_MODES_OF_OPERATION::CS_PS_MODE2: + string = "csps_2"; + rc = CODE::SUCCESS; + break; + default: + string = MTS::IO::ICellularRadio::VALUE_UNKNOWN; + rc = CODE::FAILURE; + break; + } + return rc; +} + +MTS::IO::ICellularRadio::CODE MTS::IO::ICellularRadio::convertStringToUeMode(const std::string &sMode, UE_MODES_OF_OPERATION& mode) { + using namespace MTS::IO; + CODE rc; + if (sMode == "ps_1") { + mode = ICellularRadio::UE_MODES_OF_OPERATION::PS_MODE1; + rc = CODE::SUCCESS; + } else if (sMode == "ps_2") { + mode = ICellularRadio::UE_MODES_OF_OPERATION::PS_MODE2; + rc = CODE::SUCCESS; + } else if (sMode == "csps_1") { + mode = ICellularRadio::UE_MODES_OF_OPERATION::CS_PS_MODE1; + rc = CODE::SUCCESS; + } else if (sMode == "csps_2") { + mode = ICellularRadio::UE_MODES_OF_OPERATION::CS_PS_MODE2; + rc = CODE::SUCCESS; + } else { + mode = ICellularRadio::UNKNOWN_MODE; + rc = CODE::FAILURE; + } + return rc; +} |