using CapMachine.Wpf.Dtos;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CapMachine.Wpf.LinDrive
{
///
/// Lin指令数据
///
public class LinCmdData
{
///
/// 配置项名称-比如转速、功率限制等
///
public string? ConfigName { get; set; }
///
/// 消息名称/Frame名称/帧名称
///
public string? MsgName { get; set; }
///
/// 信号名称
///
public string? SignalName { get; set; }
///
/// 指令数据改变Handler
/// 改变发送消息名称/帧名称
///
public event EventHandler? LinCmdDataChangedHandler;
private double _SignalCmdValue;
///
/// 指令值
/// 没有的话,则给默认值
///
public double SignalCmdValue
{
get { return _SignalCmdValue; }
set
{
if (_SignalCmdValue != value)
{
_SignalCmdValue = value;
LinCmdDataChangedHandler?.Invoke(this, MsgName!);
}
}
}
/////
///// 逻辑规则Id
/////
//public long LogicRuleId { get; set; }
///
/// CanLinConfig的逻辑转换规则
/// 比如:速度下发的数据SV是4000,但是下发到CAN的值是40,可能是其他的逻辑转换规则,这里就是保存其中的逻辑规则
///
public LogicRuleDto? LogicRuleDto { get; set; }
}
}