2018-07-27 14:07:16 -07:00
|
|
|
|
using System.Net;
|
|
|
|
|
|
using MatterHackers.MatterControl.SlicerConfiguration;
|
|
|
|
|
|
using MatterHackers.SerialPortCommunication.FrostedSerial;
|
|
|
|
|
|
|
|
|
|
|
|
namespace TcpipDriver
|
|
|
|
|
|
{
|
|
|
|
|
|
public class TcpipSerialPortFactory : FrostedSerialPortFactory
|
|
|
|
|
|
{
|
|
|
|
|
|
public override bool SerialPortAlreadyOpen(string portName) => false;
|
|
|
|
|
|
|
|
|
|
|
|
protected override string GetDriverType() => "TCPIP";
|
|
|
|
|
|
|
2018-11-30 12:35:56 -08:00
|
|
|
|
public override IFrostedSerialPort Create(string serialPortName, PrinterSettings settings)
|
2018-07-27 14:07:16 -07:00
|
|
|
|
{
|
2018-11-30 12:35:56 -08:00
|
|
|
|
return new TcpipSerialPort(settings, serialPortName);
|
2018-07-27 14:07:16 -07:00
|
|
|
|
}
|
|
|
|
|
|
|
2018-11-30 12:35:56 -08:00
|
|
|
|
public override bool SerialPortIsAvailable(string serialPortName, PrinterSettings settings)
|
2018-07-27 14:07:16 -07:00
|
|
|
|
{
|
2018-11-30 12:35:56 -08:00
|
|
|
|
return int.TryParse(settings.GetValue(SettingsKey.ip_port), out _)
|
|
|
|
|
|
&& IPAddress.TryParse(settings.GetValue(SettingsKey.ip_address), out _);
|
2018-07-27 14:07:16 -07:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|