#ifndef OTARCIKCAN_H #define OTARCIKCAN_H #include #include "MainWindow.h" #include "PCANInterface.h" #include "GeneralMessagesLogDispatcher.h" #include "CANDevice.h" #include #include "SystemConfig.h" #include "MQTTClientWrapper.h" #include "ComputerBoardInterface.h" #include "SysLogger.h" #include "InternetMonitor.h" #include "LANDevicesPresenceMonitor.h" class COtarcikCan : public QObject { Q_OBJECT public: explicit COtarcikCan(QObject *parent = 0); ~COtarcikCan(); CMainWindow mMainWindow; CSystemConfig mSystemConfig; CMQTTClientWrapper mCANBusMQTTClient; QTimer *mGPTimer; CComputerBoardInterface mCPUInterface; QTimer *mWatchdogTimer; CSysLogger mSysLogger; CInternetMonitor mInternetMonitor; CLANDevicesPresenceMonitor mLANDevicesPresenceMonitor; int Start(); int UpdateCANViewerDataRequest(QList *MsgList); int SaveCANDevicesConfigRequest(QList *DevicesConfigList); int SaveCloudLoggingConfigRequest(CCloudParams *CloudParams); int SaveGeneralParametersSettingsRequest(CGeneralSystemParams *GeneralParams); int SaveCPUWatchdogSettingsRequest(CCPUWatchdogConfig *CPUWatchdogParams); int SaveDeviceDetectionSettingsRequest(CDeviceDetectionConfig *DeviceDetectconfig); int SetCANConnectionStatusRequest(bool Connected); int SetMQTTConnectionSatusRequest(bool Connected); int UpdateCANModuleStatusRequest(QString ModuleName, QString ModuleStatus, QString Buffer); int UpdateMQTTBufferingStatusRequest(QString BufferingMode, QString FIFOSize,QString RemainingTime); int SaveCANWatchdogSettingsRequest(CCANWatchdogConfig *CANWatchdogConfig); int UpdateLANDevicesPresenceStatusRequest(QList LanDevicesStatus); void QuitApplicationRequest(); private: QList mCANDevicesList; CCloudParams mCloudLoggingParams; CGeneralSystemParams mGeneralSystemParams; CCPUWatchdogConfig mCPUWatchdogParams; CDeviceDetectionConfig mDeviceDetectionConfigParams; int PopulateCANDevicesList(QList *DevicesConfigsList); signals: public slots: void GPTimerExpired(); void WatchdogUpdateTimerExpired(); }; #endif // OTARCIKCAN_H