using OrpaonEMS.Core.Enums;
using Prism.Mvvm;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OrpaonEMS.App.Models
{
///
/// 布尔类型数据单元
///
public class DataCell : BindableBase
{
private short _SrRtValue;
///
/// 标签原始的实时值
///
public short SrRtValue
{
set
{
if (_SrRtValue != value)
{
_SrRtValue = value;
RtValue = (value + Offset);
}
//LastUpdateTime = DateTime.Now;
}
}
private double _RtValue;
///
/// 标签实时值
///
public double RtValue
{
get { return _RtValue; }
set
{
_RtValue = value;
if (IsUI)
{
RaisePropertyChanged();
}
//if (PopValue != null)
//{
// PopValue(Name, value);
//}
}
}
///
/// 偏移值
///
public int Offset { get; set; }
///
/// 分辨率
///
public double Ratio { get; set; }
///
/// 读写类型
///
public IOType IoTypeInfo { get; set; }
///
/// Index 连续区域的位置
///
public int Index { get; set; }
///
/// Index 连续区域的位置基础基数
///
public int Base { get; set; }
///
/// 值长度
///
public int Lengh { get; set; }
///
/// 地址标签
///
public string? Address { get; set; }
///
/// 标签名称
///
public string? Name { get; set; }
///
/// 单位
///
public string? Unit { get; set; }
///
/// 是否关注这个数据,比如关注后,那么就在界面上展示,此时RaisePropertyChanged()就会被使能,单独在界面上展示否则就可以在表格里面展示
///
public bool IsUI { get; set; }
///
/// 当前数据的范围
///
public ValueRange? ValueRangeInfo { get; set; }
/////
///// Tag状态
/////
//public bool TagLinkState { get; set; }
/////
///// 上次更新时间信息
/////
//public DateTime LastUpdateTime { get; set; }
}
}