Renamed array-extension to "BigEndian"
This commit is contained in:
@@ -6,23 +6,23 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
[System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
|
||||
internal static class ArrayExtensions
|
||||
{
|
||||
public static void SwapNetworkOrder(this byte[] bytes)
|
||||
public static void SwapBigEndian(this byte[] bytes)
|
||||
{
|
||||
if (BitConverter.IsLittleEndian)
|
||||
Array.Reverse(bytes);
|
||||
}
|
||||
|
||||
public static ushort NetworkUInt16(this byte[] bytes, int offset = 0)
|
||||
public static ushort GetBigEndianUInt16(this byte[] bytes, int offset = 0)
|
||||
{
|
||||
byte[] b = bytes.Skip(offset).Take(2).ToArray();
|
||||
b.SwapNetworkOrder();
|
||||
b.SwapBigEndian();
|
||||
return BitConverter.ToUInt16(b, 0);
|
||||
}
|
||||
|
||||
public static byte[] ToNetworkBytes(this ushort value)
|
||||
public static byte[] ToBigEndianBytes(this ushort value)
|
||||
{
|
||||
byte[] b = BitConverter.GetBytes(value);
|
||||
b.SwapNetworkOrder();
|
||||
b.SwapBigEndian();
|
||||
return b;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -49,7 +49,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
blob[i * 2 + 1] = registers[i].LowByte;
|
||||
}
|
||||
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
return BitConverter.ToSingle(blob, 0);
|
||||
}
|
||||
|
||||
@@ -93,7 +93,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
blob[i * 2 + 1] = registers[i].LowByte;
|
||||
}
|
||||
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
return BitConverter.ToDouble(blob, 0);
|
||||
}
|
||||
|
||||
@@ -107,7 +107,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
public static IEnumerable<HoldingRegister> ToRegister(this float value, ushort address, bool reverseRegisterOrder = false)
|
||||
{
|
||||
byte[] blob = BitConverter.GetBytes(value);
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
|
||||
int numRegisters = blob.Length / 2;
|
||||
for (int i = 0; i < numRegisters; i++)
|
||||
@@ -135,7 +135,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
public static IEnumerable<HoldingRegister> ToRegister(this double value, ushort address, bool reverseRegisterOrder = false)
|
||||
{
|
||||
byte[] blob = BitConverter.GetBytes(value);
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
|
||||
int numRegisters = blob.Length / 2;
|
||||
for (int i = 0; i < numRegisters; i++)
|
||||
|
||||
@@ -99,7 +99,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
blob[i * 2 + 1] = registers[i].LowByte;
|
||||
}
|
||||
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
return BitConverter.ToInt32(blob, 0);
|
||||
}
|
||||
|
||||
@@ -143,7 +143,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
blob[i * 2 + 1] = registers[i].LowByte;
|
||||
}
|
||||
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
return BitConverter.ToInt64(blob, 0);
|
||||
}
|
||||
|
||||
@@ -171,7 +171,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
public static HoldingRegister ToRegister(this short value, ushort address)
|
||||
{
|
||||
byte[] blob = BitConverter.GetBytes(value);
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
|
||||
return new HoldingRegister
|
||||
{
|
||||
@@ -191,7 +191,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
public static IEnumerable<HoldingRegister> ToRegister(this int value, ushort address, bool reverseRegisterOrder = false)
|
||||
{
|
||||
byte[] blob = BitConverter.GetBytes(value);
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
|
||||
int numRegisters = blob.Length / 2;
|
||||
for (int i = 0; i < numRegisters; i++)
|
||||
@@ -219,7 +219,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
public static IEnumerable<HoldingRegister> ToRegister(this long value, ushort address, bool reverseRegisterOrder = false)
|
||||
{
|
||||
byte[] blob = BitConverter.GetBytes(value);
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
|
||||
int numRegisters = blob.Length / 2;
|
||||
for (int i = 0; i < numRegisters; i++)
|
||||
|
||||
@@ -99,7 +99,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
blob[i * 2 + 1] = registers[i].LowByte;
|
||||
}
|
||||
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
return BitConverter.ToUInt32(blob, 0);
|
||||
}
|
||||
|
||||
@@ -143,7 +143,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
blob[i * 2 + 1] = registers[i].LowByte;
|
||||
}
|
||||
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
return BitConverter.ToUInt64(blob, 0);
|
||||
}
|
||||
|
||||
@@ -171,7 +171,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
public static HoldingRegister ToRegister(this ushort value, ushort address)
|
||||
{
|
||||
byte[] blob = BitConverter.GetBytes(value);
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
|
||||
return new HoldingRegister
|
||||
{
|
||||
@@ -191,7 +191,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
public static IEnumerable<HoldingRegister> ToRegister(this uint value, ushort address, bool reverseRegisterOrder = false)
|
||||
{
|
||||
byte[] blob = BitConverter.GetBytes(value);
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
|
||||
int numRegisters = blob.Length / 2;
|
||||
for (int i = 0; i < numRegisters; i++)
|
||||
@@ -219,7 +219,7 @@ namespace AMWD.Protocols.Modbus.Common
|
||||
public static IEnumerable<HoldingRegister> ToRegister(this ulong value, ushort address, bool reverseRegisterOrder = false)
|
||||
{
|
||||
byte[] blob = BitConverter.GetBytes(value);
|
||||
blob.SwapNetworkOrder();
|
||||
blob.SwapBigEndian();
|
||||
|
||||
int numRegisters = blob.Length / 2;
|
||||
for (int i = 0; i < numRegisters; i++)
|
||||
|
||||
Reference in New Issue
Block a user