Files
DP44/DataPRO/SLICECommands/MulticastCommands/MulticastGetIpAddress.cs
2026-04-17 14:55:32 -04:00

47 lines
1.5 KiB
C#

using System.Collections.Generic;
using DTS.Common.Enums.DASFactory;
using DTS.Common.ICommunication;
namespace DTS.DASLib.Command.SLICE.MulticastCommands
{
public class MulticastGetIpAddress : MulticastCommandBase
{
protected override Commands Command => Commands.GetIpAddress;
private string _ip;
public string Ip => _ip;
public MulticastGetIpAddress(DTS.Common.Interface.DASFactory.ICommunication sock)
: base(sock)
{
}
public MulticastGetIpAddress(DTS.Common.Interface.DASFactory.ICommunication sock, int timeoutMillisec)
: base(sock, timeoutMillisec)
{
}
protected override CommandReceiveAction WholePackage()
{
if (response.Status == DFConstantsAndEnums.CommandStatus.StatusNoError)
{
base.WholePackage();
response.GetParameter(DOUBLE_MAC_ADDR_SIZE, out _ip);
}
return CommandReceiveAction.StopReceiving;
}
public override void CommandToString(ref List<List<string>> lines)
{
base.CommandToString(ref lines);
lines.Add(new List<string> { $"MAC: {CommandClientMac} " });
}
public override void ResponseToString(ref List<List<string>> lines)
{
base.ResponseToString(ref lines);
lines.Add(new List<string> { $"MAC: {CommandClientMac} IP: {_ip}" });
}
}
}