42 lines
1002 B
C#
42 lines
1002 B
C#
using System;
|
|
|
|
namespace ModBus.Net
|
|
{
|
|
public abstract class AddressFormater
|
|
{
|
|
public abstract string FormatAddress(string area, int address);
|
|
}
|
|
|
|
public class AddressFormaterSimense : AddressFormater
|
|
{
|
|
public override string FormatAddress(string area, int address)
|
|
{
|
|
if (area.Length > 1 &&
|
|
area.ToUpper().Substring(0,2) == "DB")
|
|
{
|
|
return area.ToUpper() + "." + "DB" + address;
|
|
}
|
|
else
|
|
{
|
|
return area.ToUpper() + address;
|
|
}
|
|
}
|
|
}
|
|
|
|
public class AddressFormaterBase : AddressFormater
|
|
{
|
|
public override string FormatAddress(string area, int address)
|
|
{
|
|
return area + "." + address;
|
|
}
|
|
}
|
|
|
|
public class AddressFormaterNA200H : AddressFormater
|
|
{
|
|
public override string FormatAddress(string area, int address)
|
|
{
|
|
return area + address;
|
|
}
|
|
}
|
|
}
|