public PoseListener()
        {
            client = new PoseClient(IPAddress.Parse("239.132.1.33"), 4839);
            client.PoseAbsReceived += client_PoseAbsReceived;
            client.PoseRelReceived += client_PoseRelReceived;

            lastPacketTime = new CarTimestamp(-10000);

            BiasEstimator = new HeadingBiasEstimator();
        }
        public VehicleSeparationDisplay()
        {
            InitializeComponent();
            this.Information = null;
            this.comms = new Communicator(this);

            // set our style
            base.SetStyle(ControlStyles.UserPaint, true);
            base.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
            base.SetStyle(ControlStyles.Opaque, true);
            base.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
            base.SetStyle(ControlStyles.ResizeRedraw, true);
            base.SetStyle(ControlStyles.Selectable, true);

            Thread t = new Thread(ForceRedraw);
            t.IsBackground = true;
            t.Start();

            client = new PoseClient(IPAddress.Parse("239.132.1.33"), 4839);
            client.PoseAbsReceived += new EventHandler<PoseAbsReceivedEventArgs>(client_PoseAbsReceived);
            client.Start();
        }