Renamed array-extension to "BigEndian"

This commit is contained in:
2024-03-26 20:23:35 +01:00
parent d6bc5f1a4a
commit 7d5f3194c2
9 changed files with 67 additions and 67 deletions

View File

@@ -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;
}
}

View File

@@ -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++)

View File

@@ -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++)

View File

@@ -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++)