YULTek/Otarcik_CAN/Sources/Gui/LoggingSettingsPage.h
2024-03-05 16:29:13 -05:00

73 lines
1.7 KiB
C++

#ifndef LOGGINGSETTINGSPAGE_H
#define LOGGINGSETTINGSPAGE_H
#include <QWidget>
#include "CloudParams.h"
#include "GeneralSystemParams.h"
#include "CPUWatchdogConfig.h"
#include <DeviceDetectionConfig.h>
class COtarcikCan;
namespace Ui {
class CLoggingSettingsPage;
}
class CLoggingSettingsPage : public QWidget
{
Q_OBJECT
public:
explicit CLoggingSettingsPage(QWidget *parent = 0);
~CLoggingSettingsPage();
int SetCloudParams(const CCloudParams *CloudParams);
int SetGeneralSettingsParams(const CGeneralSystemParams *GeneralParams);
int SetCPUWatchdogSettings(const CCPUWatchdogConfig *CPUWatchdogParams);
int SetDeviceConfigSettings(const CDeviceDetectionConfig *DevDetectCfgParams);
int SetMQTTPresenceStatus(bool);
int SetLANDevicesPresenceStatus(QList<bool> LANDevicesPresenceList);
COtarcikCan *mProgramHandle;
private:
int UpdateCloudConfig();
int UpdateGeneralParams();
int UpdateCPUWatchdogParams();
int UpdateCANFlagsParams();
int UpdateDevicePresenceParams(bool Restore = true);
Ui::CLoggingSettingsPage *ui;
bool EditMode;
CCloudParams mCloudParams;
CGeneralSystemParams mGeneralSystemParams;
CCPUWatchdogConfig mCPUWatchdogParams;
CDeviceDetectionConfig mDeviceDetectConfigHandle;
bool mDevicePresenceEditMode;
public slots:
void ModifyParamsBtnPressed();
void CancelBtnPressed();
void VerbosityParamsChanged(int value);
void EnableCPUWDCheckBxClicked(int state);
void CPUWDTimeoutChanged(int value);
void DevicePresenceEnableChkBxChanged(int state);
void DevicePresenceModifyParamsBtnPressed();
void DevicePresenceCancelBtnPressed();
void SetInternetPresenceStatus(bool);
};
#endif // LOGGINGSETTINGSPAGE_H