diff options
author | rodion.shyshkin <rodion.shyshkin@globallogic.com> | 2021-03-31 20:49:08 +0300 |
---|---|---|
committer | rodion.shyshkin <rodion.shyshkin@globallogic.com> | 2021-03-31 20:49:08 +0300 |
commit | 285cee922e229cb1bbd704e6227dbbb3756bd889 (patch) | |
tree | 2c0547033ed3e6a030594476ee37c3bb2fb15beb /src/MTS_IO_CellularRadio.cpp | |
parent | ad6b4d51ac469d4e7300fd74d1ada87b1caece93 (diff) | |
download | libmts-io-285cee922e229cb1bbd704e6227dbbb3756bd889.tar.gz libmts-io-285cee922e229cb1bbd704e6227dbbb3756bd889.tar.bz2 libmts-io-285cee922e229cb1bbd704e6227dbbb3756bd889.zip |
[GP-1111] mPower R. Apr 2021: +CEMODE shall be set to CEMODE=2 - libmts-io for Telit
Adding an ability to set UE mode of operation to libmts-io.
There was added two clear virtual methods in iCellularRadio,
correct implementation for them for Telit LTE modems and implementation
with error messages for all other.
Diffstat (limited to 'src/MTS_IO_CellularRadio.cpp')
-rw-r--r-- | src/MTS_IO_CellularRadio.cpp | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/MTS_IO_CellularRadio.cpp b/src/MTS_IO_CellularRadio.cpp index fe252c0..ee45ace 100644 --- a/src/MTS_IO_CellularRadio.cpp +++ b/src/MTS_IO_CellularRadio.cpp @@ -1378,3 +1378,42 @@ ICellularRadio::CODE CellularRadio::readChunk(int fd, char* pChunk, size_t dChun return rc; } + +ICellularRadio::CODE CellularRadio::setUeModeOfOperation(UE_MODES_OF_OPERATION newmode) { + printTrace("%s| Set UE Mode Of Operation: not applicable", m_sName.c_str()); + return CODE::NOT_APPLICABLE; +} + +ICellularRadio::CODE CellularRadio::getUeModeOfOperation(UE_MODES_OF_OPERATION &newmode) { + printTrace("%s| Get UE Mode Of Operation: not applicable", m_sName.c_str()); + newmode = UE_MODES_OF_OPERATION::UNKNOWN_MODE; + return CODE::NOT_APPLICABLE; +} + +ICellularRadio::CODE CellularRadio::convertUeModeToString(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 = "unknown"; + rc = CODE::FAILURE; + break; + } + return rc; +} + |