#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" #include "DeviceDetectionConfig.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(); QList *GetCloudParams(); int SetCloudParamsList(QList *CloudParams); CGeneralSystemParams *GetGeneralSystemSettings(); int SetGeneralSystemParams(CGeneralSystemParams *GeneralParams); CCPUWatchdogConfig *GetCPUWatchdogSettings(); int SetCPUWatchdogPArams(CCPUWatchdogConfig *CPUWatchdogParams); CDeviceDetectionConfig *GetDeviceDetectionConfig(); int SetDeviceDetectionConfig (CDeviceDetectionConfig *DeviceDetectconfig); //Can devices configs QList mCANDeviceConfigList; //Cloud interface config QList mCloudLoggingParamsList; // 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; //Device detection and reporting config CDeviceDetectionConfig mDeviceDetectionParams; // }; #endif // SYSTEMCONFIG_H