using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace KFDtool.P25.Kmm { public class InventoryResponseListKmfRsi : KmmBody { public int KmfRsi { get; private set; } public override MessageId MessageId { get { return MessageId.InventoryResponse; } } public InventoryType InventoryType { get { return InventoryType.ListKmfRsi; } } public override ResponseKind ResponseKind { get { return ResponseKind.None; } } public InventoryResponseListKmfRsi() { } public override byte[] ToBytes() { throw new NotImplementedException(); } public override void Parse(byte[] contents) { if (contents.Length != 4) { throw new ArgumentOutOfRangeException(string.Format("length mismatch - expected 4, got {0} - {1}", contents.Length.ToString(), BitConverter.ToString(contents))); } /* inventory type */ if (contents[0] != (byte)InventoryType) { throw new Exception("inventory type mismatch"); } /* message number period */ KmfRsi |= contents[1] << 16; KmfRsi |= contents[2] << 8; KmfRsi |= contents[3]; } } }