Innovenergy_trunk/csharp/Lib/Protocols/Modbus/Reflection/Attributes/HoldingRegister.cs

32 lines
803 B
C#

using InnovEnergy.Lib.Protocols.Modbus.Protocol;
namespace InnovEnergy.Lib.Protocols.Modbus.Reflection.Attributes;
public class HoldingRegister : ModbusRegister
{
private static readonly Type DefaultModbusType = typeof(UInt16);
public Boolean Writable { get; }
public HoldingRegister(UInt16 address, Boolean writable = false) : this(address, DefaultModbusType, writable)
{
}
public HoldingRegister(UInt16 address, Type modbusType, Boolean writable = false) : base(address, modbusType, ModbusKind.HoldingRegister )
{
Writable = writable;
}
}
public class HoldingRegister<T> : HoldingRegister where T : IConvertible
{
public HoldingRegister(UInt16 address, Boolean writable = false) : base(address, typeof(T), writable)
{
}
}