Files
DP44/DataPRO/SensorDB/CanSettingDefaults.cs
2026-04-17 14:55:32 -04:00

64 lines
3.6 KiB
C#

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;
}
}
}