Added canlogserver CAN remote capture

This commit is contained in:
Generoso Cesaro
2023-11-17 16:21:38 +01:00
parent aada0daf55
commit cb2725e6c4
9 changed files with 280 additions and 0 deletions
+57
View File
@@ -0,0 +1,57 @@
#ifndef CANLOGSERVER_H
#define CANLOGSERVER_H
#include <stdio.h>
#include <QCanBusDevice>
#include <QThread>
#include <QTimer>
#include <QTcpSocket>
/*************/
#include <QDateTime>
/*************/
#include "canframemodel.h"
#include "canconnection.h"
#include "canconmanager.h"
class CanLogServer : public CANConnection
{
Q_OBJECT
public:
CanLogServer(QString serverAddress);
virtual ~CanLogServer();
// Interface
protected:
virtual void piStarted();
virtual void piStop();
virtual void piSetBusSettings(int pBusIdx, CANBus pBus);
virtual bool piGetBusSettings(int pBusIdx, CANBus& pBus);
virtual void piSuspend(bool pSuspend);
virtual bool piSendFrame(const CANFrame&);
private slots:
void readNetworkData();
void networkConnected();
void networkDisconnected();
// Utility
private:
void readSettings();
void connectToDevice();
void disconnectFromDevice();
void heartbeat();
// Attributes
protected:
QTcpSocket *m_ptcpSocket = nullptr;
QString m_qsAddress;
// QUdpSocket *_udpClient;
// QTimer *_heartbeatTimer;
};
#endif // CANLOGSERVER_H