/// <summary> EllDevice Constructor. </summary> /// <param name="deviceID"> Identifier for the device. </param> /// <param name="messageUpdater"> Thea message handler. To receive feedback on progress, supply a meddage handler, derived from /// <see cref="MessageUpdater"/> to process feedback. </param> internal ELLPaddlePolariser(DeviceID deviceID, MessageUpdater messageUpdater) : base(deviceID, 3, messageUpdater) { MinPos = (16m / 1023) * deviceID.Travel; MinPosRounded = Math.Ceiling(MinPos * 10) / 10; MaxPos = (1006m / 1023) * deviceID.Travel; MaxPosRounded = Math.Floor(MinPos * 10) / 10; }
public static DeviceID Configure(string deviceID, MessageUpdater messageUpdater) { if (string.IsNullOrEmpty(deviceID)) { return(null); } char address = deviceID[0]; if (!IsValidAddress(address)) { return(null); } DeviceID di = new DeviceID(deviceID); messageUpdater?.UpdateParameter(MessageUpdater.UpdateTypes.DeviceInfo, address, di); return(di); }
/// <summary> EllDevice Constructor. </summary> /// <param name="deviceID"> Identifier for the device. </param> /// <param name="messageUpdater"> Thea message handler. To receive feedback on progress, supply a meddage handler, derived from /// <see cref="MessageUpdater"/> to process feedback. </param> internal ELLDevice(DeviceID deviceID, MessageUpdater messageUpdater) : base(deviceID, 2, messageUpdater) { }
/// <summary> Specialised default constructor for use only by derived class. </summary> /// <param name="deviceID"> Identifier for the device. </param> /// <param name="motorCount"> Number of motors. </param> protected ELLBaseDevice(DeviceID deviceID, int motorCount) { _messageUpdater = null; InitializeClass(deviceID, (char)('0' + motorCount)); }
/// <summary> EllDevice Constructor. </summary> /// <param name="deviceID"> Identifier for the device. </param> /// <param name="motorCount"> Number of motors. </param> /// <param name="messageUpdater"> Thea message handler. To receive feedback on progress, supply a meddage handler, derived from /// <see cref="MessageUpdater"/> to process feedback. </param> internal ELLBaseDevice(DeviceID deviceID, int motorCount, MessageUpdater messageUpdater) { _messageUpdater = messageUpdater; InitializeClass(deviceID, (char)('0' + motorCount)); }