mirror of
https://github.com/S7NetPlus/s7netplus.git
synced 2026-02-17 14:28:25 +08:00
Rename and Move DataRequestItem
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using S7.Net.Helper;
|
||||
using S7.Net.Protocol.S7;
|
||||
using S7.Net.Types;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@@ -243,7 +244,7 @@ namespace S7.Net
|
||||
}
|
||||
}
|
||||
|
||||
private static byte[] BuildReadRequestPackage(IList<DataRequestItem> dataItems)
|
||||
private static byte[] BuildReadRequestPackage(IList<DataItemAddress> dataItems)
|
||||
{
|
||||
int packageSize = 19 + (dataItems.Count * 12);
|
||||
var package = new System.IO.MemoryStream(packageSize);
|
||||
|
||||
@@ -7,6 +7,7 @@ using System.Threading.Tasks;
|
||||
using S7.Net.Protocol;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
using S7.Net.Protocol.S7;
|
||||
|
||||
namespace S7.Net
|
||||
{
|
||||
@@ -262,7 +263,7 @@ namespace S7.Net
|
||||
|
||||
try
|
||||
{
|
||||
var dataToSend = BuildReadRequestPackage(dataItems.Select(d=> new DataRequestItem(d)).ToList());
|
||||
var dataToSend = BuildReadRequestPackage(dataItems.Select(d => DataItem.GetDataItemAddress(d)).ToList());
|
||||
await stream.WriteAsync(dataToSend, 0, dataToSend.Length);
|
||||
|
||||
var s7data = await COTP.TSDU.ReadAsync(stream, cancellationToken);
|
||||
@@ -435,7 +436,7 @@ namespace S7.Net
|
||||
{
|
||||
var stream = GetStreamIfAvailable();
|
||||
|
||||
var dataToSend = BuildReadRequestPackage(new [] { new DataRequestItem(dataType, db, startByteAdr, count)});
|
||||
var dataToSend = BuildReadRequestPackage(new [] { new DataItemAddress(dataType, db, startByteAdr, count)});
|
||||
await stream.WriteAsync(dataToSend, 0, dataToSend.Length, cancellationToken);
|
||||
|
||||
var s7data = await COTP.TSDU.ReadAsync(stream, cancellationToken);
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
|
||||
using S7.Net.Types;
|
||||
|
||||
namespace S7.Net
|
||||
namespace S7.Net.Protocol.S7
|
||||
{
|
||||
internal class DataRequestItem
|
||||
/// <summary>
|
||||
/// Represents an area of memory in the PLC
|
||||
/// </summary>
|
||||
internal class DataItemAddress
|
||||
{
|
||||
public DataRequestItem(DataType dataType, int db, int startByteAddress, int byteLength)
|
||||
public DataItemAddress(DataType dataType, int db, int startByteAddress, int byteLength)
|
||||
{
|
||||
DataType = dataType;
|
||||
DB = db;
|
||||
@@ -13,11 +13,6 @@ namespace S7.Net
|
||||
ByteLength = byteLength;
|
||||
}
|
||||
|
||||
public DataRequestItem(DataItem dataItem)
|
||||
: this(dataItem.DataType, dataItem.DB, dataItem.StartByteAdr, Plc.VarTypeToByteLength(dataItem.VarType, dataItem.Count))
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Memory area to read
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using S7.Net.Protocol.S7;
|
||||
using System;
|
||||
|
||||
namespace S7.Net.Types
|
||||
{
|
||||
@@ -94,5 +95,10 @@ namespace S7.Net.Types
|
||||
|
||||
return dataItem;
|
||||
}
|
||||
|
||||
internal static DataItemAddress GetDataItemAddress(DataItem dataItem)
|
||||
{
|
||||
return new DataItemAddress(dataItem.DataType, dataItem.DB, dataItem.StartByteAdr, Plc.VarTypeToByteLength(dataItem.VarType, dataItem.Count));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user