using DTS.Common.Classes.Sensors; using DTS.Common.Interface.Sensors; using DTS.Slice.Users.UserSettings; using DTS.Common.Constant; namespace DTS.SensorDB { public sealed class CanSettingDefaults : Common.Base.BasePropertyChanged, ICanSettingDefaults { private readonly ISensorData _defaultCan; public bool IsFD { get => _defaultCan.CanIsFD; set => _defaultCan.CanIsFD = value; } public int ArbBaseBitrate { get => _defaultCan.CanArbBaseBitrate; set => _defaultCan.CanArbBaseBitrate = value; } public int ArbBaseSJW { get => _defaultCan.CanArbBaseSJW; set => _defaultCan.CanArbBaseSJW = value; } public int DataBitrate { get => _defaultCan.CanDataBitrate; set => _defaultCan.CanDataBitrate = value; } public int DataSJW { get => _defaultCan.CanDataSJW; set => _defaultCan.CanDataSJW = value; } public string FileType { get => _defaultCan.CanFileType; set => _defaultCan.CanFileType = value; } public bool Validate() { return true; } public static void CommitChange(CanSettingDefaults settingDefaults, int userID) { TestSetupDefaults.SetUserSetting(userID, PropertyEnums.PropertyIds.DefaultCANIsFD, settingDefaults.IsFD); TestSetupDefaults.SetUserSetting(userID, PropertyEnums.PropertyIds.DefaultCANArbBaseBitrate, settingDefaults.ArbBaseBitrate); TestSetupDefaults.SetUserSetting(userID, PropertyEnums.PropertyIds.DefaultCANArbBaseSJW, settingDefaults.ArbBaseSJW); TestSetupDefaults.SetUserSetting(userID, PropertyEnums.PropertyIds.DefaultCANDataBitrate, settingDefaults.DataBitrate); TestSetupDefaults.SetUserSetting(userID, PropertyEnums.PropertyIds.DefaultCANDataSJW, settingDefaults.DataSJW); TestSetupDefaults.SetUserSetting(userID, PropertyEnums.PropertyIds.DefaultCANFileType, settingDefaults.FileType); } public static CanSettingDefaults GetCanSettingsDefault(int userID) { var sd = new SensorData() { CanIsFD = TestSetupDefaults.GetUserSettingValueBool(userID, PropertyEnums.PropertyIds.DefaultCANIsFD), CanArbBaseBitrate = TestSetupDefaults.GetUserSettingValueInt(userID, PropertyEnums.PropertyIds.DefaultCANArbBaseBitrate), CanArbBaseSJW = TestSetupDefaults.GetUserSettingValueInt(userID, PropertyEnums.PropertyIds.DefaultCANArbBaseSJW), CanDataBitrate = TestSetupDefaults.GetUserSettingValueInt(userID, PropertyEnums.PropertyIds.DefaultCANDataBitrate), CanDataSJW = TestSetupDefaults.GetUserSettingValueInt(userID, PropertyEnums.PropertyIds.DefaultCANDataSJW), CanFileType = TestSetupDefaults.GetUserSettingValueString(userID, PropertyEnums.PropertyIds.DefaultCANFileType) }; return new CanSettingDefaults(sd); } private CanSettingDefaults(ISensorData defaultCan) { _defaultCan = defaultCan; } public static void RestoreDefaults(ICanSettingDefaults sensorDefaults) { sensorDefaults.IsFD = EmbeddedSensors.CANISFD_DEFAULT; sensorDefaults.ArbBaseBitrate = EmbeddedSensors.CANFD_ARB_BASE_BITRATE_DEFAULT; sensorDefaults.ArbBaseSJW = EmbeddedSensors.CANFD_1000000_ARB_BASE_SJW_MAX; sensorDefaults.DataBitrate = EmbeddedSensors.DATA_BITRATE_DEFAULT; sensorDefaults.DataSJW = EmbeddedSensors.DATA_SJW_DEFAULT; sensorDefaults.FileType = EmbeddedSensors.FILETYPE_DEFAULT; } } }