#ifndef SYSTEMCONFIG_H #define SYSTEMCONFIG_H #include "CANDevice.h" #include #include #include #include "CANDeviceConfig.h" #include "CloudParams.h" #include "CANWatchdogConfig.h" #include "GeneralSystemParams.h" #include "CPUWatchdogConfig.h" #define OTARCIK_CURRENT_CONFIG_FILE_VERSION 0x02 #define OTARCIK_CONFIG_FILE_MAGIC_NBR 0xDEADBEEF //class CCANDeviceConfig; class CSystemConfig { public: CSystemConfig(); ~CSystemConfig(); int LoadConfig(/*QList *DevicesList*/); int SaveConfig(/*QList *DevicesConfigList*/); int CreateEmptyConfig(); int SetCANDevicesConfigList(QList *DevicesConfigList); QList *GetCANDevicesConfigList(); CCloudParams *GetCloudParams(); int SetCloudParams(CCloudParams *CloudParams); CGeneralSystemParams *GetGeneralSystemSettings(); int SetGeneralSystemParams(CGeneralSystemParams *GeneralParams); CCPUWatchdogConfig *GetCPUWatchdogSettings(); int SetCPUWatchdogPArams(CCPUWatchdogConfig *CPUWatchdogParams); //Can devices configs QList mCANDeviceConfigList; //Cloud interface config CCloudParams mCloudLoggingParams; //Misc general system settings CGeneralSystemParams mGeneralSystemParams; //CAN Module watchdog settings CCANWatchdogConfig mCANWatchdogParams; CCANWatchdogConfig *GetCANWatchdogConfig(); int SetCANWatchdogConfig(CCANWatchdogConfig *Config); //Hardware watchdog settings CCPUWatchdogConfig mCPUWatchdogParams; }; #endif // SYSTEMCONFIG_H