示例#1
0
        private ADSBMessageBase BuildVelocityMessage(string message)
        {
            ADSBVelocityMessage msg     = new ADSBVelocityMessage();
            ADSBMessageBase     baseMsg = msg as ADSBMessageBase;

            BuildBaseMessage(message, ref baseMsg);
            baseMsg        = payloadParserVelocity.ParseMessage(baseMsg);
            msg            = baseMsg as ADSBVelocityMessage;
            msg.TypeSimple = ADSBMessagetype.Velocity;

            return(msg);
        }
        public ADSBMessageBase ParseMessage(ADSBMessageBase message)
        {
            ADSBVelocityMessage tmpMessage = (ADSBVelocityMessage)message;

            tmpMessage.Subtype            = ParseSubtype(message.Payload);
            tmpMessage.IntentChange       = ParseIntentChange(message.Payload);
            tmpMessage.ReservedA          = ParseReservedA(message.Payload);
            tmpMessage.NavigationAccuracy = ParseNaviagationAccuracy(message.Payload);
            tmpMessage.Speed              = ParseSpeed(message.Payload);
            tmpMessage.Heading            = ParseHeading(message.Payload);
            tmpMessage.VerticalRateSource = ParseVerticalRateSource(message.Payload);
            tmpMessage.VerticalSpeed      = ParseVerticalSpeed(message.Payload);

            return(tmpMessage);
        }
示例#3
0
        private void listBox1_SelectedValueChanged(object sender, EventArgs e)
        {
            if (listBox1.SelectedItem == null)
            {
                return;
            }

            string icao = listBox1.SelectedItem.ToString();

            ADSBPositionMessage positionMessage = viewModel.GetPositionMessage(icao);

            if (positionMessage != null)
            {
                textBoxAltitude.Text = positionMessage.Altitude.ToString();
            }
            else
            {
                textBoxAltitude.Text = "No message available";
            }

            ADSBVelocityMessage velocityMessage = viewModel.GetVelocityMessage(icao);

            if (velocityMessage != null)
            {
                textBoxSpeed.Text = velocityMessage.Speed.ToString();
            }
            else
            {
                textBoxSpeed.Text = "No message available";
            }

            ADSBIdentificationMessage idMessage = viewModel.GetIdentificationMessage(icao);

            if (idMessage != null)
            {
                textBoxAircraftID.Text = idMessage.AircraftID.ToString();
            }
            else
            {
                textBoxAircraftID.Text = "No message available";
            }
        }
示例#4
0
        public ADSBVelocityMessage GetVelocityMessage(string icao)
        {
            ADSBVelocityMessage message = (ADSBVelocityMessage)Planes[icao].getADSBMessageContainer().FirstOrDefault(e => e.TypeSimple == ADSBMessagetype.Velocity);

            return(message);
        }