summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSerhii Kostiuk <serhii.o.kostiuk@globallogic.com>2019-06-11 18:19:36 +0300
committerSerhii Kostiuk <serhii.o.kostiuk@globallogic.com>2019-06-11 18:19:36 +0300
commit20471af5d887ab2255716c734661abb95953676c (patch)
tree6fdc82fcb14408daa318b5539cbe184aab29e6d0 /include
parent69e73df7f4939f68b105362777db26e728ade091 (diff)
downloadlibmts-io-20471af5d887ab2255716c734661abb95953676c.tar.gz
libmts-io-20471af5d887ab2255716c734661abb95953676c.tar.bz2
libmts-io-20471af5d887ab2255716c734661abb95953676c.zip
[MTS-MTQ] QuectelRadio implementation
Added the full implementation of QuectelRadio class. Ported the changes from a local branch to the new libmts-io architecture.
Diffstat (limited to 'include')
-rw-r--r--include/mts/MTS_IO_QuectelRadio.h55
1 files changed, 50 insertions, 5 deletions
diff --git a/include/mts/MTS_IO_QuectelRadio.h b/include/mts/MTS_IO_QuectelRadio.h
index 55eac60..b486323 100644
--- a/include/mts/MTS_IO_QuectelRadio.h
+++ b/include/mts/MTS_IO_QuectelRadio.h
@@ -1,15 +1,60 @@
-#ifndef MTS_IO_QUECTELRADIO_H
-#define MTS_IO_QUECTELRADIO_H
+/*
+ * Copyright (C) 2019 by Multi-Tech Systems
+ *
+ * This file is part of libmts-io.
+ *
+ * libmts-io is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * libmts-io is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with libmts-io. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+#ifndef MTS_IO_QUECTELRADIO_H_
+#define MTS_IO_QUECTELRADIO_H_
#include <mts/MTS_IO_CellularRadio.h>
namespace MTS {
namespace IO {
- class QuectelRadio : public CellularRadio
- {
+
+ class QuectelRadio : public CellularRadio {
+
+ public:
+ bool resetRadio(uint32_t iTimeoutMillis = 5000) override;
+
+ CODE getModel(std::string& sModel) override;
+ CODE getIccid(std::string& sIccid) override;
+ CODE getService(std::string& sService) override;
+ CODE getNetwork(std::string& sNetwork) override;
+ CODE getNetworkStatus(Json::Value& jData) override;
+
+ CODE convertSignalStrengthTodBm(const int32_t& iRssi, int32_t& dBm) override;
+ CODE convertdBmToSignalStrength(const int32_t& dBm, int32_t& iRssi) override;
+
+ CODE setMdn(const Json::Value& jArgs) override;
+
+ protected:
+ QuectelRadio(const std::string& sName, const std::string& sRadioPort);
+
+ bool getCarrierFromFirmware(const std::string& sFirmware, std::string& sCarrier) override;
+ bool getHardwareVersionFromFirmware(const std::string& sFirmware, std::string& sHardware) override;
+
+ virtual CODE getServiceDomain(SERVICEDOMAIN& sd);
+ virtual CODE convertToActiveBand(const std::string& sQuectelBand, ACTIVEBAND& band);
+
+ private:
};
}
}
-#endif
+#endif /* MTS_IO_QUECTELRADIO_H_ */