4 * This software is distributed under a zlib-style license.
\r
5 * See license.txt for more information.
\r
9 using System.Collections.Generic;
\r
12 namespace Yubeshi.Ubx
\r
14 public class NavTimeUtc : Packet
\r
16 #region constructors
\r
18 public NavTimeUtc(byte[] sentence, int length)
\r
19 : base(sentence, length)
\r
27 public decimal TimeOfWeek
\r
31 uint tow = BitConverter.ToUInt32(Raw, 6 + 0);
\r
32 int ftow = BitConverter.ToInt32(Raw, 6 + 8);
\r
33 return tow * 1e-3m + ftow * 1e-9m;
\r
37 public decimal Accuracy
\r
41 return BitConverter.ToUInt32(Raw, 6 + 4) * 1e-9m;
\r
49 int y = BitConverter.ToUInt16(Raw, 6 + 12);
\r
50 int m = Raw[6 + 14];
\r
51 int d = Raw[6 + 14];
\r
52 int h = Raw[6 + 14];
\r
53 int min = Raw[6 + 14];
\r
54 int s = Raw[6 + 14];
\r
55 int ftow = BitConverter.ToInt32(Raw, 6 + 8);
\r
56 DateTime utc = new DateTime(y, m, d, h, min, s,
\r
58 return utc.AddTicks(ftow / 100);
\r
63 #region public methods
\r
65 public static bool TryParse(byte[] sentence, out UnknownPacket packet)
\r
67 return TryParse(sentence, out packet,
\r
68 MessageID.NavTimeUtc, 20, Build);
\r
73 #region private methods
\r
75 private static Packet Build(byte[] sentence, int length)
\r
77 return new NavTimeUtc(sentence, length);
\r