PresetVolumeRequest.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. using Edge.Core.Parser.BinaryParser.Util;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace Wayne_Pump_Dart.MessageEntity.Outgoing
  8. {
  9. public class PresetVolumeRequest : MessageBase
  10. {
  11. /// <summary>
  12. ///
  13. /// </summary>
  14. /// <param name="address"></param>
  15. /// <param name="blockSeqNumber"></param>
  16. /// <param name="amount">should the value without decimal points, max 8 figures.</param>
  17. public PresetVolumeRequest(byte address, byte blockSeqNumber, int volume)
  18. {
  19. base.Adrs = address;
  20. base.BlockSeqNumber = blockSeqNumber;
  21. base.ControlCharacter = ControlCharacter.DATA;
  22. var bcdEncoded = volume.GetBCDBytes(4);
  23. base.TransactionDatas = new List<TransactionData>()
  24. {
  25. new TransactionData()
  26. {
  27. TransactionNumber = 0x03,
  28. RawData = bcdEncoded.ToList()
  29. }
  30. };
  31. }
  32. }
  33. }