137 lines
3.6 KiB
C#
137 lines
3.6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Thermo.Active.Model.DTOModels.ThIO
|
|
{
|
|
public class DTOChannelsIOVal
|
|
{
|
|
public List<DigInVal> DI { get; set; } = new List<DigInVal>();
|
|
public List<DigOutVal> DO { get; set; } = new List<DigOutVal>();
|
|
public List<AnalInVal> AI { get; set; } = new List<AnalInVal>();
|
|
public List<AnalOutVal> AO { get; set; } = new List<AnalOutVal>();
|
|
}
|
|
public class DigInVal: IoItem
|
|
{
|
|
public bool Value { get; set; } = false;
|
|
|
|
public override bool Equals(object obj)
|
|
{
|
|
if (!(obj is DigInVal item))
|
|
return false;
|
|
|
|
if (Id != item.Id)
|
|
return false;
|
|
if (Value != item.Value)
|
|
return false;
|
|
|
|
return true;
|
|
}
|
|
/// <summary>
|
|
/// Hash gen
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public override int GetHashCode()
|
|
{
|
|
return base.GetHashCode();
|
|
}
|
|
}
|
|
public class AnalInVal: IoItem
|
|
{
|
|
public int Value { get; set; } = 0;
|
|
|
|
public override bool Equals(object obj)
|
|
{
|
|
if (!(obj is AnalInVal item))
|
|
return false;
|
|
|
|
if (Id != item.Id)
|
|
return false;
|
|
if (Value != item.Value)
|
|
return false;
|
|
|
|
return true;
|
|
}
|
|
/// <summary>
|
|
/// Hash gen
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public override int GetHashCode()
|
|
{
|
|
return base.GetHashCode();
|
|
}
|
|
}
|
|
public class DigOutVal : DigInVal
|
|
{
|
|
public bool ForceEnabled { get; set; } = true;
|
|
public bool ForceZero { get; set; } = false;
|
|
public bool ForceOne { get; set; } = false;
|
|
public bool IsForced { get; set; } = false;
|
|
|
|
public override bool Equals(object obj)
|
|
{
|
|
if (!(obj is DigOutVal item))
|
|
return false;
|
|
|
|
if (Id != item.Id)
|
|
return false;
|
|
if (ForceEnabled != item.ForceEnabled)
|
|
return false;
|
|
if (ForceZero != item.ForceZero)
|
|
return false;
|
|
if (ForceOne != item.ForceOne)
|
|
return false;
|
|
if (IsForced != item.IsForced)
|
|
return false;
|
|
if (Value != item.Value)
|
|
return false;
|
|
|
|
return true;
|
|
}
|
|
/// <summary>
|
|
/// Hash gen
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public override int GetHashCode()
|
|
{
|
|
return base.GetHashCode();
|
|
}
|
|
}
|
|
public class AnalOutVal : AnalInVal
|
|
{
|
|
public bool ForceEnabled { get; set; } = true;
|
|
public int ForcedValue { get; set; } = 0;
|
|
public bool IsForced { get; set; } = false;
|
|
|
|
public override bool Equals(object obj)
|
|
{
|
|
if (!(obj is AnalOutVal item))
|
|
return false;
|
|
|
|
if (Id != item.Id)
|
|
return false;
|
|
if (ForceEnabled != item.ForceEnabled)
|
|
return false;
|
|
if (ForcedValue != item.ForcedValue)
|
|
return false;
|
|
if (IsForced != item.IsForced)
|
|
return false;
|
|
if (Value != item.Value)
|
|
return false;
|
|
|
|
return true;
|
|
}
|
|
/// <summary>
|
|
/// Hash gen
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public override int GetHashCode()
|
|
{
|
|
return base.GetHashCode();
|
|
}
|
|
}
|
|
|
|
}
|