#ifndef CLORANETWORKCOMMIF_H #define CLORANETWORKCOMMIF_H #include #include #include #include "NetworkProtocol.h" #include "AbstractNetworkInterface.h" #include "NetworkDevice.h" #define LORA_MAGIC_WORD 0xBAADCAFE class CLoraNetworkCommIF : public QObject, public CNetworkProtocol, public CAbstractNetworkCommIF { Q_OBJECT public: CLoraNetworkCommIF(); QString mLoraSerialPortName; qint32 mLoraSerialPortBaudRate; unsigned short mMyLoraAddress; unsigned char mMyLoraChannel; QSerialPort mLoraDeviceSerialPort; int SendLoraFrame(unsigned short DestAddress,unsigned char DestChannel,QByteArray Payload); int SetLoraSerialPortSettings(QString PortName, qint32 BaudRate); //NetworkProtocol implementation int NewFrameReceived(int DeviceID, int DeviceAddress, int MessageID, int DataSize, QByteArray Data); //NetworkCommIF implementation virtual int SendNetworkMessage(int DeviceID, int DeviceAddress, int MessageID, int DataSize, QByteArray *Data); private: QByteArray GetLoraFrame(unsigned short DestAddress,unsigned char DestChannel,QByteArray Payload); qint32 mRxLoraTestMsgBuf; QByteArray mLoraMagicResponse; public slots: void LoraDeviceNewDataReady(); }; #endif // CLORADEVICE_H