Example #1
0
        private void HandleWriteRequest(WriteRegister writeRegisterParams)
        {
            var description =
                this.configurationProvider.Devices
                .FirstOrDefault(d => d.Id.ToString() == writeRegisterParams.Device)
                ?.Registers.FirstOrDefault(r => r.IntegerAddress.ToString() == writeRegisterParams.Register);

            if (description?.WriteAddress == null)
            {
                return;
            }

            var registerId = new RegisterId(Convert.ToUInt32(writeRegisterParams.Device), description);
            var value      = Convert.ToDouble(writeRegisterParams.Value);

            this
            .surveyService
            .ScheduleWriteOperation(
                new RegisterWriteRequest(registerId, description.IntegerAddress, description.FloatAddress, (uint)description.WriteAddress, value),
                writeRegisterParams.onFinish);
        }
Example #2
0
 public Instruction(Operation op, Register a, WriteRegister b)
 {
     Command = $"{op} {a} {b}";
 }