public WriteResult WriteSingleCoil(ushort index, bool value, Database database) { if (database.UpdateCoil(index, value)) { return(WriteResult.SuccessInit()); } else { return(WriteResult.ExceptionInit(rodbus.ModbusException.IllegalDataAddress)); } }
public WriteResult WriteSingleRegister(ushort index, ushort value, Database database) { if (database.UpdateHoldingRegister(index, value)) { return(WriteResult.SuccessInit()); } else { return(WriteResult.ExceptionInit(rodbus.ModbusException.IllegalDataAddress)); } }
public WriteResult WriteMultipleRegisters(ushort start, ICollection <RegisterValue> it, Database database) { foreach (var bit in it) { if (!database.UpdateHoldingRegister(bit.Index, bit.Value)) { return(WriteResult.ExceptionInit(rodbus.ModbusException.IllegalDataAddress)); } } return(WriteResult.SuccessInit()); }
public WriteResult WriteMultipleCoils(ushort start, ICollection <BitValue> it, Database database) { var result = WriteResult.SuccessInit(); foreach (var bit in it) { if (!database.UpdateCoil(bit.Index, bit.Value)) { result = WriteResult.ExceptionInit(rodbus.ModbusException.IllegalDataAddress); } } return(result); }