Beispiel #1
0
        public void FromByteArray(byte[] array)
        {
            using (var ms = new MemoryStream(array)) {
                var buffer = new byte[sizeof(int)];
                ms.Read(buffer);
                Id = BitConverter.ToInt32(buffer);

                ms.Read(buffer);
                RegisterNumber = BitConverter.ToInt32(buffer);

                ms.Read(buffer);
                var descLength = BitConverter.ToInt32(buffer);

                buffer = new byte[MaxDescriptionLength];
                ms.Read(buffer);
                Description = Encoding.UTF8.GetString(buffer).Substring(0, descLength);

                buffer = new byte[Gps1.GetSize()];
                ms.Read(buffer);
                Gps1.FromByteArray(buffer);

                ms.Read(buffer);
                Gps2.FromByteArray(buffer);
            }
        }
Beispiel #2
0
 public int GetSize()
 {
     return(sizeof(byte) * MaxDescriptionLength // Description full length
            + sizeof(int) * 3                   // Id, RegisterNumber, Real Description length
            + Gps1.GetSize() * 2);
 }