Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            var client = new TcpClient();

            client.Connect("192.168.191.99", 30003);

            var stream = client.GetStream();

            var spt = new SimplePlaneTracker();

            var sle = new StreamLineEmitter(stream);

            sle.Line += (sender, s) =>
            {
                var message = BaseStation.Parse(s);
                spt.Consume(message);
                spt.Heartbeat();
                Print(spt);
            };

            sle.Start();

            var mres = new ManualResetEventSlim();

            mres.Wait();
        }
Ejemplo n.º 2
0
        private static void Print(SimplePlaneTracker spt)
        {
            Console.SetCursorPosition(0, 0);
            Console.WriteLine($"{"Hex",-7}{"Call",-8}{"Lat",-9}{"Long",-9}{"Since",-9}");

            var now = DateTime.Now;

            foreach (var plane in spt.Planes)
            {
                Console.WriteLine(
                    $"{plane.HexIdent,-7}{plane.Callsign,-8}{plane.Latitude,-9}{plane.Longitude,-9}{Math.Floor((now - plane.LastMessage).TotalSeconds),9}");
            }
        }