Beispiel #1
0
        private void ClearAllRadarOneEvents()
        {
            // COM part
            this.comboBoxCOM_Top_Status.Items.Clear();
            this.comboBoxCOM_RDPC_Selected.Items.Clear();
            this.comboBoxCOM_RDPC_Reset.Items.Clear();
            this.comboBoxCOM_RDP_Overload.Items.Clear();
            this.comboBoxCOM_Transmit_Overload.Items.Clear();
            this.comboBoxCOM_MON_Sys_Disconect.Items.Clear();
            this.comboBoxCOM_Time_Source_Status.Items.Clear();

            // SSR part
            this.comboBoxSSR_Channel_Status.Items.Clear();
            this.comboBoxSSR_Antenna_Selected.Items.Clear();
            this.comboBoxSSR_Overloaded.Items.Clear();
            this.comboBoxSSR_Mon_Sys_Disconect.Items.Clear();

            // MDS part
            this.comboBoxMDS_Channel_Status.Items.Clear();
            this.comboBoxMDS_Antena_Selected.Items.Clear();
            this.ccomboBoxMDS_Overoaded.Items.Clear();
            this.comboBoxMDS_Mon_Sys_Disconect.Items.Clear();
            this.comboBoxMDS_Ch_For_Cord.Items.Clear();
            this.comboBoxMDS_Ch_For_DataLink.Items.Clear();
            this.comboBoxMDS_DataLink_Overload.Items.Clear();
            this.comboBoxMDS_Comm_Overload.Items.Clear();

            // PSR part
            this.comboBoxPSR_Channel_Status.Items.Clear();
            this.comboBoxPSR_Antenna_Selected.Items.Clear();
            this.comboBoxPSR_Overloaded.Items.Clear();
            this.comboBoxPSR_Mon_Sys_Disconect.Items.Clear();

            MyCAT34I050UserData_Last_Cycle = new CAT34I050Types.CAT34I050UserData();
        }
Beispiel #2
0
        private void HandleSystemStatusCAT34I50()
        {
            if (MainASTERIXDataStorage.CAT34Message.Count > 0)
            {
                MainASTERIXDataStorage.CAT34Data Msg = MainASTERIXDataStorage.CAT34Message[MainASTERIXDataStorage.CAT34Message.Count - 1];

                // Get the antenna rotation period
                if (Msg.CAT34DataItems[CAT34.ItemIDToIndex("041")].CurrentlyPresent)
                    this.labelAntenaPeriod034.Text = (string)((double)Msg.CAT34DataItems[CAT34.ItemIDToIndex("041")].value).ToString();
                else
                    this.labelAntenaPeriod034.Text = "N/A";

                // Get the latest System Configuration and Status message
                CAT34I050Types.CAT34I050UserData MyCAT34I050UserData = (CAT34I050Types.CAT34I050UserData)Msg.CAT34DataItems[CAT34.ItemIDToIndex("050")].value;

                string Time_String = DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString();

                if (MyCAT34I050UserData != null)
                {
                    /////////////////////////////////////////////////////////////////////////////////////////////////////
                    // COM BLOCK
                    /////////////////////////////////////////////////////////////////////////////////////////////////////

                    if (MyCAT34I050UserData.COM_Data.Data_Present)
                    {
                        if ((MyCAT34I050UserData_Last_Cycle.COM_Data.Data_Present == false) || (MyCAT34I050UserData.COM_Data.System_is_NOGO != MyCAT34I050UserData_Last_Cycle.COM_Data.System_is_NOGO))
                        {
                            if (MyCAT34I050UserData.COM_Data.System_is_NOGO)
                                this.comboBoxCOM_Top_Status.Items.Insert(0, "R " + Time_String + " NOGO");
                            else
                                this.comboBoxCOM_Top_Status.Items.Insert(0, "G " + Time_String + " GO");

                            this.comboBoxCOM_Top_Status.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.COM_Data.Data_Present == false) || (MyCAT34I050UserData.COM_Data.RDPC2_Selected != MyCAT34I050UserData_Last_Cycle.COM_Data.RDPC2_Selected))
                        {
                            if (MyCAT34I050UserData.COM_Data.RDPC2_Selected)
                                this.comboBoxCOM_RDPC_Selected.Items.Insert(0, "W " + Time_String + " RDPC 2 SELECTED");
                            else
                                this.comboBoxCOM_RDPC_Selected.Items.Insert(0, "W " + Time_String + " RDPC 1 SELECTED");

                            this.comboBoxCOM_RDPC_Selected.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.COM_Data.Data_Present == false) || (MyCAT34I050UserData.COM_Data.RDPC_Reset != MyCAT34I050UserData_Last_Cycle.COM_Data.RDPC_Reset))
                        {
                            if (MyCAT34I050UserData.COM_Data.RDPC_Reset)
                                this.comboBoxCOM_RDPC_Reset.Items.Insert(0, "R " + Time_String + " RDPC RESET");
                            else
                                this.comboBoxCOM_RDPC_Reset.Items.Insert(0, "G " + Time_String + " NO RDPC RESET");

                            this.comboBoxCOM_RDPC_Reset.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.COM_Data.Data_Present == false) || (MyCAT34I050UserData.COM_Data.RDP_Overloaded != MyCAT34I050UserData_Last_Cycle.COM_Data.RDP_Overloaded))
                        {
                            if (MyCAT34I050UserData.COM_Data.RDPC_Reset)
                                this.comboBoxCOM_RDP_Overload.Items.Insert(0, "R " + Time_String + " RDP OVERLOAD");
                            else
                                this.comboBoxCOM_RDP_Overload.Items.Insert(0, "G " + Time_String + " NO RDP OVERLOAD");

                            this.comboBoxCOM_RDP_Overload.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.COM_Data.Data_Present == false) || (MyCAT34I050UserData.COM_Data.Transmision_Sys_Overloaded != MyCAT34I050UserData_Last_Cycle.COM_Data.Transmision_Sys_Overloaded))
                        {
                            if (MyCAT34I050UserData.COM_Data.RDPC_Reset)
                                this.comboBoxCOM_Transmit_Overload.Items.Insert(0, "R " + Time_String + " TXMT SYS OVERLOAD");
                            else
                                this.comboBoxCOM_Transmit_Overload.Items.Insert(0, "G " + Time_String + " NO TXMT SYS OVERLOAD");

                            this.comboBoxCOM_Transmit_Overload.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.COM_Data.Data_Present == false) || (MyCAT34I050UserData.COM_Data.Monitor_Sys_Disconected != MyCAT34I050UserData_Last_Cycle.COM_Data.Monitor_Sys_Disconected))
                        {
                            if (MyCAT34I050UserData.COM_Data.RDPC_Reset)
                                this.comboBoxCOM_MON_Sys_Disconect.Items.Insert(0, "R " + Time_String + " MON SYS DISCONECT");
                            else
                                this.comboBoxCOM_MON_Sys_Disconect.Items.Insert(0, "G " + Time_String + " MON SYS CONNECTED");

                            this.comboBoxCOM_MON_Sys_Disconect.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.COM_Data.Data_Present == false) || (MyCAT34I050UserData.COM_Data.Time_Source_Invalid != MyCAT34I050UserData_Last_Cycle.COM_Data.Time_Source_Invalid))
                        {
                            if (MyCAT34I050UserData.COM_Data.RDPC_Reset)
                                this.comboBoxCOM_Time_Source_Status.Items.Insert(0, "R " + Time_String + " TIME SRC INVALID");
                            else
                                this.comboBoxCOM_Time_Source_Status.Items.Insert(0, "G " + Time_String + " TIME SRC VALID");

                            this.comboBoxCOM_Time_Source_Status.SelectedIndex = 0;
                        }
                    }
                    else
                    {
                        if ((MyCAT34I050UserData_Last_Cycle.COM_Data.Data_Present == true) && (MyCAT34I050UserData.COM_Data.Data_Present == false))
                        {
                            this.comboBoxCOM_Top_Status.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO COM DATA");
                            this.comboBoxCOM_Top_Status.SelectedIndex = 0;
                            this.comboBoxCOM_RDPC_Selected.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO COM DATA");
                            this.comboBoxCOM_RDPC_Selected.SelectedIndex = 0;
                            this.comboBoxCOM_RDPC_Reset.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO COM DATA");
                            this.comboBoxCOM_RDPC_Reset.SelectedIndex = 0;
                            this.comboBoxCOM_RDP_Overload.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO COM DATA");
                            this.comboBoxCOM_RDP_Overload.SelectedIndex = 0;
                            this.comboBoxCOM_Transmit_Overload.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO COM DATA");
                            this.comboBoxCOM_Transmit_Overload.SelectedIndex = 0;
                            this.comboBoxCOM_MON_Sys_Disconect.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO COM DATA");
                            this.comboBoxCOM_MON_Sys_Disconect.SelectedIndex = 0;
                            this.comboBoxCOM_Time_Source_Status.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO COM DATA");
                            this.comboBoxCOM_Time_Source_Status.SelectedIndex = 0;
                        }
                    }

                    /////////////////////////////////////////////////////////////////////////////////////////////////////
                    // SSR BLOCK
                    /////////////////////////////////////////////////////////////////////////////////////////////////////
                    if (MyCAT34I050UserData.SSR_Data.Data_Present)
                    {
                        if ((MyCAT34I050UserData_Last_Cycle.SSR_Data.Data_Present == false) || (MyCAT34I050UserData.SSR_Data.CH_Status != MyCAT34I050UserData_Last_Cycle.SSR_Data.CH_Status))
                        {
                            if (MyCAT34I050UserData.SSR_Data.CH_Status == CAT34I050Types.SSR.Channel_Status.No_Channel)
                                this.comboBoxSSR_Channel_Status.Items.Insert(0, "R " + Time_String + " NO Channel");
                            else if (MyCAT34I050UserData.SSR_Data.CH_Status == CAT34I050Types.SSR.Channel_Status.Invalid_Combination)
                                this.comboBoxSSR_Channel_Status.Items.Insert(0, "R " + Time_String + " Invalid CH combination");
                            else if (MyCAT34I050UserData.SSR_Data.CH_Status == CAT34I050Types.SSR.Channel_Status.Channel_A)
                                this.comboBoxSSR_Channel_Status.Items.Insert(0, "G " + Time_String + " Channel A");
                            else
                                this.comboBoxSSR_Channel_Status.Items.Insert(0, "G " + Time_String + " Channel B");

                            this.comboBoxSSR_Channel_Status.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.SSR_Data.Data_Present == false) || (MyCAT34I050UserData.SSR_Data.Ant_2_Selected != MyCAT34I050UserData_Last_Cycle.SSR_Data.Ant_2_Selected))
                        {
                            if (MyCAT34I050UserData.SSR_Data.Ant_2_Selected)
                                this.comboBoxSSR_Antenna_Selected.Items.Insert(0, "W " + Time_String + " Antenna 2 selected");
                            else
                                this.comboBoxSSR_Antenna_Selected.Items.Insert(0, "W " + Time_String + " Antenna 1 selected");

                            this.comboBoxSSR_Antenna_Selected.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.SSR_Data.Data_Present == false) || (MyCAT34I050UserData.SSR_Data.SSR_Overloaded != MyCAT34I050UserData_Last_Cycle.SSR_Data.SSR_Overloaded))
                        {
                            if (MyCAT34I050UserData.SSR_Data.SSR_Overloaded)
                                this.comboBoxSSR_Overloaded.Items.Insert(0, "R " + Time_String + " SYS Overload");
                            else
                                this.comboBoxSSR_Overloaded.Items.Insert(0, "G " + Time_String + " NO SYS Overload");

                            this.comboBoxSSR_Overloaded.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.SSR_Data.Data_Present == false) || (MyCAT34I050UserData.SSR_Data.Monitor_Sys_Disconected != MyCAT34I050UserData_Last_Cycle.SSR_Data.Monitor_Sys_Disconected))
                        {
                            if (MyCAT34I050UserData.SSR_Data.Monitor_Sys_Disconected)
                                this.comboBoxSSR_Mon_Sys_Disconect.Items.Insert(0, "R " + Time_String + " MON sys disconnect");
                            else
                                this.comboBoxSSR_Mon_Sys_Disconect.Items.Insert(0, "G " + Time_String + " MON sys connect");

                            this.comboBoxSSR_Mon_Sys_Disconect.SelectedIndex = 0;
                        }
                    }
                    else
                    {
                        if ((MyCAT34I050UserData_Last_Cycle.SSR_Data.Data_Present == true) && (MyCAT34I050UserData.SSR_Data.Data_Present == false))
                        {
                            this.comboBoxSSR_Channel_Status.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO SSR DATA");
                            this.comboBoxSSR_Channel_Status.SelectedIndex = 0;
                            this.comboBoxSSR_Antenna_Selected.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO SSR DATA");
                            this.comboBoxSSR_Antenna_Selected.SelectedIndex = 0;
                            this.comboBoxSSR_Overloaded.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO SSR DATA");
                            this.comboBoxSSR_Overloaded.SelectedIndex = 0;
                            this.comboBoxSSR_Mon_Sys_Disconect.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO SSR DATA");
                            this.comboBoxSSR_Mon_Sys_Disconect.SelectedIndex = 0;

                        }
                    }

                    /////////////////////////////////////////////////////////////////////////////////////////////////////
                    // MDS BLOCK
                    /////////////////////////////////////////////////////////////////////////////////////////////////////
                    if (MyCAT34I050UserData.MDS_Data.Data_Present)
                    {
                        if ((MyCAT34I050UserData_Last_Cycle.MDS_Data.Data_Present == false) || (MyCAT34I050UserData.MDS_Data.CH_Status != MyCAT34I050UserData_Last_Cycle.MDS_Data.CH_Status))
                        {
                            if (MyCAT34I050UserData.MDS_Data.CH_Status == CAT34I050Types.MDS.Channel_Status.No_Channel)
                                this.comboBoxMDS_Channel_Status.Items.Insert(0, "R " + Time_String + " NO Channel");
                            else if (MyCAT34I050UserData.MDS_Data.CH_Status == CAT34I050Types.MDS.Channel_Status.Illegal_Combination)
                                this.comboBoxMDS_Channel_Status.Items.Insert(0, "R " + Time_String + " Illegal CH combination");
                            else if (MyCAT34I050UserData.MDS_Data.CH_Status == CAT34I050Types.MDS.Channel_Status.Channel_A)
                                this.comboBoxMDS_Channel_Status.Items.Insert(0, "G " + Time_String + " Channel A");
                            else
                                this.comboBoxMDS_Channel_Status.Items.Insert(0, "G " + Time_String + " Channel B");

                            this.comboBoxMDS_Channel_Status.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.MDS_Data.Data_Present == false) || (MyCAT34I050UserData.MDS_Data.Ant_2_Selected != MyCAT34I050UserData_Last_Cycle.MDS_Data.Ant_2_Selected))
                        {
                            if (MyCAT34I050UserData.MDS_Data.Ant_2_Selected)
                                this.comboBoxMDS_Antena_Selected.Items.Insert(0, "W " + Time_String + " Antenna 2 selected");
                            else
                                this.comboBoxMDS_Antena_Selected.Items.Insert(0, "W " + Time_String + " Antenna 1 selected");

                            this.comboBoxMDS_Antena_Selected.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.SSR_Data.Data_Present == false) || (MyCAT34I050UserData.SSR_Data.SSR_Overloaded != MyCAT34I050UserData_Last_Cycle.SSR_Data.SSR_Overloaded))
                        {
                            if (MyCAT34I050UserData.MDS_Data.ModeS_Overloaded)
                                this.ccomboBoxMDS_Overoaded.Items.Insert(0, "R " + Time_String + " SYS Overload");
                            else
                                this.ccomboBoxMDS_Overoaded.Items.Insert(0, "G " + Time_String + " NO SYS Overload");

                            this.ccomboBoxMDS_Overoaded.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.MDS_Data.Data_Present == false) || (MyCAT34I050UserData.MDS_Data.Monitor_Sys_Disconected != MyCAT34I050UserData_Last_Cycle.MDS_Data.Monitor_Sys_Disconected))
                        {
                            if (MyCAT34I050UserData.MDS_Data.Monitor_Sys_Disconected)
                                this.comboBoxMDS_Mon_Sys_Disconect.Items.Insert(0, "R " + Time_String + " MON sys disconnect");
                            else
                                this.comboBoxMDS_Mon_Sys_Disconect.Items.Insert(0, "G " + Time_String + " MON sys connect");

                            this.comboBoxMDS_Mon_Sys_Disconect.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.MDS_Data.Data_Present == false) || (MyCAT34I050UserData.MDS_Data.CH2_For_Coordination_In_Use != MyCAT34I050UserData_Last_Cycle.MDS_Data.CH2_For_Coordination_In_Use))
                        {
                            if (MyCAT34I050UserData.MDS_Data.CH2_For_Coordination_In_Use)
                                this.comboBoxMDS_Ch_For_Cord.Items.Insert(0, "W " + Time_String + " CH#2 for Coordination");
                            else
                                this.comboBoxMDS_Ch_For_Cord.Items.Insert(0, "G " + Time_String + " CH#1 for Coordination");

                            this.comboBoxMDS_Ch_For_Cord.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.MDS_Data.Data_Present == false) || (MyCAT34I050UserData.MDS_Data.CH2_For_DataLink_In_Use != MyCAT34I050UserData_Last_Cycle.MDS_Data.CH2_For_DataLink_In_Use))
                        {
                            if (MyCAT34I050UserData.MDS_Data.CH2_For_DataLink_In_Use)
                                this.comboBoxMDS_Ch_For_Cord.Items.Insert(0, "W " + Time_String + " CH#2 for Data Link");
                            else
                                this.comboBoxMDS_Ch_For_Cord.Items.Insert(0, "W " + Time_String + " CH#1 for Data Link");

                            this.comboBoxMDS_Ch_For_Cord.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.MDS_Data.Data_Present == false) || (MyCAT34I050UserData.MDS_Data.DataLink_Func_Overload != MyCAT34I050UserData_Last_Cycle.MDS_Data.CH2_For_DataLink_In_Use))
                        {
                            if (MyCAT34I050UserData.MDS_Data.DataLink_Func_Overload)
                                this.comboBoxMDS_DataLink_Overload.Items.Insert(0, "R " + Time_String + " Overload Data Link");
                            else
                                this.comboBoxMDS_DataLink_Overload.Items.Insert(0, "G " + Time_String + " NO Overload Data Link");

                            this.comboBoxMDS_DataLink_Overload.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.MDS_Data.Data_Present == false) || (MyCAT34I050UserData.MDS_Data.Coordination_Func_Overload != MyCAT34I050UserData_Last_Cycle.MDS_Data.Coordination_Func_Overload))
                        {
                            if (MyCAT34I050UserData.MDS_Data.Coordination_Func_Overload)
                                this.comboBoxMDS_Comm_Overload.Items.Insert(0, "R " + Time_String + " Overload Coordination");
                            else
                                this.comboBoxMDS_Comm_Overload.Items.Insert(0, "G " + Time_String + " NO Overload Coordination");

                            this.comboBoxMDS_Comm_Overload.SelectedIndex = 0;
                        }
                    }
                    else
                    {
                        if ((MyCAT34I050UserData_Last_Cycle.MDS_Data.Data_Present == true) && (MyCAT34I050UserData.MDS_Data.Data_Present == false))
                        {
                            this.comboBoxMDS_Channel_Status.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO MDS DATA");
                            this.comboBoxMDS_Channel_Status.SelectedIndex = 0;
                            this.comboBoxMDS_Antena_Selected.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO MDS DATA");
                            this.comboBoxMDS_Antena_Selected.SelectedIndex = 0;
                            this.ccomboBoxMDS_Overoaded.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO MDS DATA");
                            this.ccomboBoxMDS_Overoaded.SelectedIndex = 0;
                            this.comboBoxMDS_Mon_Sys_Disconect.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO MDS DATA");
                            this.comboBoxMDS_Mon_Sys_Disconect.SelectedIndex = 0;
                            this.comboBoxMDS_Ch_For_Cord.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO MDS DATA");
                            this.comboBoxMDS_Ch_For_Cord.SelectedIndex = 0;
                            this.comboBoxMDS_Ch_For_DataLink.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO MDS DATA");
                            this.comboBoxMDS_Ch_For_DataLink.SelectedIndex = 0;
                            this.comboBoxMDS_DataLink_Overload.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO MDS DATA");
                            this.comboBoxMDS_DataLink_Overload.SelectedIndex = 0;
                            this.comboBoxMDS_Comm_Overload.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO MDS DATA");
                            this.comboBoxMDS_Comm_Overload.SelectedIndex = 0;
                        }
                    }

                    /////////////////////////////////////////////////////////////////////////////////////////////////////
                    // PSR BLOCK
                    /////////////////////////////////////////////////////////////////////////////////////////////////////
                    if (MyCAT34I050UserData.PSR_Data.Data_Present)
                    {
                        if ((MyCAT34I050UserData_Last_Cycle.PSR_Data.Data_Present == false) || (MyCAT34I050UserData.PSR_Data.CH_Status != MyCAT34I050UserData_Last_Cycle.PSR_Data.CH_Status))
                        {
                            if (MyCAT34I050UserData.PSR_Data.CH_Status == CAT34I050Types.PSR.Channel_Status.No_Channel)
                                this.comboBoxPSR_Channel_Status.Items.Insert(0, "R " + Time_String + " NO Channel");
                            else if (MyCAT34I050UserData.PSR_Data.CH_Status == CAT34I050Types.PSR.Channel_Status.Channel_A_and_B)
                                this.comboBoxPSR_Channel_Status.Items.Insert(0, "R " + Time_String + "  Channel A & B");
                            else if (MyCAT34I050UserData.PSR_Data.CH_Status == CAT34I050Types.PSR.Channel_Status.Channel_A)
                                this.comboBoxPSR_Channel_Status.Items.Insert(0, "G " + Time_String + " Channel A");
                            else
                                this.comboBoxPSR_Channel_Status.Items.Insert(0, "G " + Time_String + " Channel B");

                            this.comboBoxPSR_Channel_Status.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.PSR_Data.Data_Present == false) || (MyCAT34I050UserData.PSR_Data.Ant_2_Selected != MyCAT34I050UserData_Last_Cycle.PSR_Data.Ant_2_Selected))
                        {
                            if (MyCAT34I050UserData.PSR_Data.Ant_2_Selected)
                                this.comboBoxPSR_Antenna_Selected.Items.Insert(0, "W " + Time_String + " Antenna 2 selected");
                            else
                                this.comboBoxPSR_Antenna_Selected.Items.Insert(0, "W " + Time_String + " Antenna 1 selected");

                            this.comboBoxPSR_Antenna_Selected.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.PSR_Data.Data_Present == false) || (MyCAT34I050UserData.PSR_Data.PSR_Overloaded != MyCAT34I050UserData_Last_Cycle.PSR_Data.PSR_Overloaded))
                        {
                            if (MyCAT34I050UserData.PSR_Data.PSR_Overloaded)
                                this.comboBoxPSR_Overloaded.Items.Insert(0, "R " + Time_String + " SYS Overload");
                            else
                                this.comboBoxPSR_Overloaded.Items.Insert(0, "G " + Time_String + " NO SYS Overload");

                            this.comboBoxPSR_Overloaded.SelectedIndex = 0;
                        }

                        if ((MyCAT34I050UserData_Last_Cycle.PSR_Data.Data_Present == false) || (MyCAT34I050UserData.PSR_Data.Monitor_Sys_Disconected != MyCAT34I050UserData_Last_Cycle.PSR_Data.Monitor_Sys_Disconected))
                        {
                            if (MyCAT34I050UserData.PSR_Data.Monitor_Sys_Disconected)
                                this.comboBoxPSR_Mon_Sys_Disconect.Items.Insert(0, "R " + Time_String + " MON sys disconnect");
                            else
                                this.comboBoxPSR_Mon_Sys_Disconect.Items.Insert(0, "G " + Time_String + " MON sys connect");

                            this.comboBoxPSR_Mon_Sys_Disconect.SelectedIndex = 0;
                        }
                    }
                    else
                    {
                        if ((MyCAT34I050UserData_Last_Cycle.PSR_Data.Data_Present == true) && (MyCAT34I050UserData.PSR_Data.Data_Present == false))
                        {
                            this.comboBoxPSR_Channel_Status.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO PSR DATA");
                            this.comboBoxPSR_Channel_Status.SelectedIndex = 0;
                            this.comboBoxPSR_Antenna_Selected.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO PSR DATA");
                            this.comboBoxPSR_Antenna_Selected.SelectedIndex = 0;
                            this.comboBoxPSR_Overloaded.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO PSR DATA");
                            this.comboBoxPSR_Overloaded.SelectedIndex = 0;
                            this.comboBoxPSR_Mon_Sys_Disconect.Items.Insert(0, "W " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO PSR DATA");
                            this.comboBoxPSR_Mon_Sys_Disconect.SelectedIndex = 0;
                        }
                    }

                    // Sync the data for this cycle
                    MyCAT34I050UserData_Last_Cycle = MyCAT34I050UserData;
                }
            }
        }
Beispiel #3
0
        public static void DecodeCAT34I050(byte[] Data)
        {
            // At this time we do not care about the content of CAT034I050.
            // However it is necessary to determine how many subfields of 8 octets
            // is present so that data buffer can be updated accordingly in order to
            // decode the other fileds of interest
            // NOTE: We assume that only first 7 defined subfields are present

            // I034/050     System Configuration and Status                          1 + 1+
            int Number_Of_Octets_Present = 1; // at least two, but that will be determined below

            // Decode 020
            if (CAT34.I034DataItems[CAT34.ItemIDToIndex("050")].HasBeenPresent == true)
            {
                // Get an instance of bit ops
                Bit_Ops BO = new Bit_Ops();
                Bit_Ops CAT34_I050_Data = new Bit_Ops();

                //Extract the first octet
                BO.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + 1];

                CAT34I050Types.CAT34I050UserData ThisCycleData = new CAT34I050Types.CAT34I050UserData();

                ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                // Now check how many data octets is present and decode the present subfileds at the same time
                ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


                //////////////////////////////////////////////////////////////////////////////////
                // COM - Common elements of a System
                //////////////////////////////////////////////////////////////////////////////////
                if (BO.DWord[CAT34I050Types.Subfiled_1] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                    ThisCycleData.COM_Data.Data_Present             = true;

                    ThisCycleData.COM_Data.System_is_NOGO             = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_1];
                    ThisCycleData.COM_Data.RDPC2_Selected             = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_2];
                    ThisCycleData.COM_Data.RDPC_Reset                 = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3];
                    ThisCycleData.COM_Data.RDP_Overloaded             = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_4];
                    ThisCycleData.COM_Data.Transmision_Sys_Overloaded = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_5];
                    ThisCycleData.COM_Data.Monitor_Sys_Disconected    = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_6];
                    ThisCycleData.COM_Data.Time_Source_Invalid        = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_7];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // Spare
                //////////////////////////////////////////////////////////////////////////////////

                if (BO.DWord[CAT34I050Types.Subfiled_2] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // Spare
                //////////////////////////////////////////////////////////////////////////////////

                if (BO.DWord[CAT34I050Types.Subfiled_3] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // PSR - Primary sensor component
                //////////////////////////////////////////////////////////////////////////////////
                if (BO.DWord[CAT34I050Types.Subfiled_4] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                    ThisCycleData.PSR_Data.Data_Present             = true;

                    ThisCycleData.PSR_Data.Ant_2_Selected = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_1];
                    if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == true && CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_2] == true)
                    {
                        ThisCycleData.PSR_Data.CH_Status = CAT34I050Types.PSR.Channel_Status.Channel_A_and_B;
                    }
                    else if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == false && CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_2] == false)
                    {
                        ThisCycleData.PSR_Data.CH_Status = CAT34I050Types.PSR.Channel_Status.No_Channel;
                    }
                    else if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == true)
                    {
                        ThisCycleData.PSR_Data.CH_Status = CAT34I050Types.PSR.Channel_Status.Channel_A;
                    }
                    else
                    {
                        ThisCycleData.PSR_Data.CH_Status = CAT34I050Types.PSR.Channel_Status.Channel_B;
                    }

                    ThisCycleData.PSR_Data.PSR_Overloaded          = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_4];
                    ThisCycleData.PSR_Data.Monitor_Sys_Disconected = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_5];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // SSR - Secondary sensor component
                //////////////////////////////////////////////////////////////////////////////////
                if (BO.DWord[CAT34I050Types.Subfiled_5] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                    ThisCycleData.SSR_Data.Data_Present             = true;

                    ThisCycleData.SSR_Data.Ant_2_Selected = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_1];
                    if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == true && CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_2] == true)
                    {
                        ThisCycleData.SSR_Data.CH_Status = CAT34I050Types.SSR.Channel_Status.Invalid_Combination;
                    }
                    else if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == false && CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_2] == false)
                    {
                        ThisCycleData.SSR_Data.CH_Status = CAT34I050Types.SSR.Channel_Status.No_Channel;
                    }
                    else if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == true)
                    {
                        ThisCycleData.SSR_Data.CH_Status = CAT34I050Types.SSR.Channel_Status.Channel_A;
                    }
                    else
                    {
                        ThisCycleData.SSR_Data.CH_Status = CAT34I050Types.SSR.Channel_Status.Channel_B;
                    }

                    ThisCycleData.SSR_Data.SSR_Overloaded          = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_4];
                    ThisCycleData.SSR_Data.Monitor_Sys_Disconected = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_5];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // MDS - Mode-S sensor component
                //////////////////////////////////////////////////////////////////////////////////

                if (BO.DWord[CAT34I050Types.Subfiled_6] == true)
                {
                    Number_Of_Octets_Present++;
                    // Mode S subfield is 2 octets
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                    ThisCycleData.MDS_Data.Data_Present             = true;


                    ThisCycleData.MDS_Data.Ant_2_Selected = BO.DWord[CAT34I050Types.Subfiled_1];

                    if (BO.DWord[CAT34I050Types.Subfiled_3] == true && BO.DWord[CAT34I050Types.Subfiled_2] == true)
                    {
                        ThisCycleData.MDS_Data.CH_Status = CAT34I050Types.MDS.Channel_Status.Illegal_Combination;
                    }
                    else if (BO.DWord[CAT34I050Types.Subfiled_3] == false && BO.DWord[CAT34I050Types.Subfiled_2] == false)
                    {
                        ThisCycleData.MDS_Data.CH_Status = CAT34I050Types.MDS.Channel_Status.No_Channel;
                    }
                    else if (BO.DWord[CAT34I050Types.Subfiled_3] == true)
                    {
                        ThisCycleData.MDS_Data.CH_Status = CAT34I050Types.MDS.Channel_Status.Channel_A;
                    }
                    else
                    {
                        ThisCycleData.MDS_Data.CH_Status = CAT34I050Types.MDS.Channel_Status.Channel_B;
                    }

                    ThisCycleData.MDS_Data.ModeS_Overloaded            = BO.DWord[CAT34I050Types.Subfiled_4];
                    ThisCycleData.MDS_Data.Monitor_Sys_Disconected     = BO.DWord[CAT34I050Types.Subfiled_5];
                    ThisCycleData.MDS_Data.CH2_For_Coordination_In_Use = BO.DWord[CAT34I050Types.Subfiled_6];
                    ThisCycleData.MDS_Data.CH2_For_DataLink_In_Use     = BO.DWord[CAT34I050Types.Subfiled_7];
                    ThisCycleData.MDS_Data.Coordination_Func_Overload  = BO.DWord[CAT34I050Types.FX_Primary_Subfiled]; // Not really FX but the index is correct

                    Number_Of_Octets_Present++;
                    // Mode S subfield is 2 octets
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];

                    ThisCycleData.MDS_Data.DataLink_Func_Overload = BO.DWord[CAT34I050Types.Subfiled_1];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // Spare
                //////////////////////////////////////////////////////////////////////////////////

                if (BO.DWord[CAT34I050Types.Subfiled_7] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                }

                //////////////////////////////////////////////////////////////////////////////////
                // Now assign it to the generic list
                CAT34.I034DataItems[CAT34.ItemIDToIndex("050")].value = ThisCycleData;
                //////////////////////////////////////////////////////////////////////////////////

                // Increase data buffer index so it ready for the next data item.
                CAT34.CurrentDataBufferOctalIndex = CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present;
            }
        }
Beispiel #4
0
        private void HandleNoDataForCAT034I050(bool Blank_Out)
        {
            if (Blank_Out)
            {
                ClearAllRadarOneEvents();
            }
            else
            {
                // COM part
                this.comboBoxCOM_Top_Status.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxCOM_Top_Status.SelectedIndex = 0;
                this.comboBoxCOM_RDPC_Selected.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxCOM_RDPC_Selected.SelectedIndex = 0;
                this.comboBoxCOM_RDPC_Reset.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxCOM_RDPC_Reset.SelectedIndex = 0;
                this.comboBoxCOM_RDP_Overload.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxCOM_RDP_Overload.SelectedIndex = 0;
                this.comboBoxCOM_Transmit_Overload.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxCOM_Transmit_Overload.SelectedIndex = 0;
                this.comboBoxCOM_MON_Sys_Disconect.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxCOM_MON_Sys_Disconect.SelectedIndex = 0;
                this.comboBoxCOM_Time_Source_Status.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxCOM_Time_Source_Status.SelectedIndex = 0;

                // SSR part
                this.comboBoxSSR_Channel_Status.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxSSR_Channel_Status.SelectedIndex = 0;
                this.comboBoxSSR_Antenna_Selected.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxSSR_Antenna_Selected.SelectedIndex = 0;
                this.comboBoxSSR_Overloaded.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxSSR_Overloaded.SelectedIndex = 0;
                this.comboBoxSSR_Mon_Sys_Disconect.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxSSR_Mon_Sys_Disconect.SelectedIndex = 0;

                // MDS part
                this.comboBoxMDS_Channel_Status.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxMDS_Channel_Status.SelectedIndex = 0;
                this.comboBoxMDS_Antena_Selected.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxMDS_Antena_Selected.SelectedIndex = 0;
                this.ccomboBoxMDS_Overoaded.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.ccomboBoxMDS_Overoaded.SelectedIndex = 0;
                this.comboBoxMDS_Mon_Sys_Disconect.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxMDS_Mon_Sys_Disconect.SelectedIndex = 0;
                this.comboBoxMDS_Ch_For_Cord.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxMDS_Ch_For_Cord.SelectedIndex = 0;
                this.comboBoxMDS_Ch_For_DataLink.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxMDS_Ch_For_DataLink.SelectedIndex = 0;
                this.comboBoxMDS_DataLink_Overload.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxMDS_DataLink_Overload.SelectedIndex = 0;
                this.comboBoxMDS_Comm_Overload.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxMDS_Comm_Overload.SelectedIndex = 0;

                // PSR part
                this.comboBoxPSR_Channel_Status.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxPSR_Channel_Status.SelectedIndex = 0;
                this.comboBoxPSR_Antenna_Selected.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxPSR_Antenna_Selected.SelectedIndex = 0;
                this.comboBoxPSR_Overloaded.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxPSR_Overloaded.SelectedIndex = 0;
                this.comboBoxPSR_Mon_Sys_Disconect.Items.Insert(0, "R " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + " NO DATA");
                this.comboBoxPSR_Mon_Sys_Disconect.SelectedIndex = 0;

                this.labelAntenaPeriod034.Text = "N/A";
                MyCAT34I050UserData_Last_Cycle = new CAT34I050Types.CAT34I050UserData();
            }
        }
        public static void DecodeCAT34I050(byte[] Data)
        {
            // At this time we do not care about the content of CAT034I050.
            // However it is necessary to determine how many subfields of 8 octets
            // is present so that data buffer can be updated accordingly in order to
            // decode the other fileds of interest
            // NOTE: We assume that only first 7 defined subfields are present

            // I034/050 	System Configuration and Status                          1 + 1+
            int Number_Of_Octets_Present = 1; // at least two, but that will be determined below

            // Decode 020
            if (CAT34.I034DataItems[CAT34.ItemIDToIndex("050")].HasBeenPresent == true)
            {
                // Get an instance of bit ops
                Bit_Ops BO = new Bit_Ops();
                Bit_Ops CAT34_I050_Data = new Bit_Ops();

                //Extract the first octet
                BO.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + 1];

                CAT34I050Types.CAT34I050UserData ThisCycleData = new CAT34I050Types.CAT34I050UserData();

                ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                // Now check how many data octets is present and decode the present subfileds at the same time
                ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

                //////////////////////////////////////////////////////////////////////////////////
                // COM - Common elements of a System
                //////////////////////////////////////////////////////////////////////////////////
                if (BO.DWord[CAT34I050Types.Subfiled_1] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                    ThisCycleData.COM_Data.Data_Present = true;

                    ThisCycleData.COM_Data.System_is_NOGO = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_1];
                    ThisCycleData.COM_Data.RDPC2_Selected = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_2];
                    ThisCycleData.COM_Data.RDPC_Reset = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3];
                    ThisCycleData.COM_Data.RDP_Overloaded = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_4];
                    ThisCycleData.COM_Data.Transmision_Sys_Overloaded = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_5];
                    ThisCycleData.COM_Data.Monitor_Sys_Disconected = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_6];
                    ThisCycleData.COM_Data.Time_Source_Invalid = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_7];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // Spare
                //////////////////////////////////////////////////////////////////////////////////

                if (BO.DWord[CAT34I050Types.Subfiled_2] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // Spare
                //////////////////////////////////////////////////////////////////////////////////

                if (BO.DWord[CAT34I050Types.Subfiled_3] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // PSR - Primary sensor component
                //////////////////////////////////////////////////////////////////////////////////
                if (BO.DWord[CAT34I050Types.Subfiled_4] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                    ThisCycleData.PSR_Data.Data_Present = true;

                    ThisCycleData.PSR_Data.Ant_2_Selected = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_1];
                    if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == true && CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_2] == true)
                        ThisCycleData.PSR_Data.CH_Status = CAT34I050Types.PSR.Channel_Status.Channel_A_and_B;
                    else if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == false && CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_2] == false)
                        ThisCycleData.PSR_Data.CH_Status = CAT34I050Types.PSR.Channel_Status.No_Channel;
                    else if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == true)
                        ThisCycleData.PSR_Data.CH_Status = CAT34I050Types.PSR.Channel_Status.Channel_A;
                    else
                        ThisCycleData.PSR_Data.CH_Status = CAT34I050Types.PSR.Channel_Status.Channel_B;

                    ThisCycleData.PSR_Data.PSR_Overloaded = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_4];
                    ThisCycleData.PSR_Data.Monitor_Sys_Disconected = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_5];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // SSR - Secondary sensor component
                //////////////////////////////////////////////////////////////////////////////////
                if (BO.DWord[CAT34I050Types.Subfiled_5] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                    ThisCycleData.SSR_Data.Data_Present = true;

                    ThisCycleData.SSR_Data.Ant_2_Selected = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_1];
                    if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == true && CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_2] == true)
                        ThisCycleData.SSR_Data.CH_Status = CAT34I050Types.SSR.Channel_Status.Invalid_Combination;
                    else if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == false && CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_2] == false)
                        ThisCycleData.SSR_Data.CH_Status = CAT34I050Types.SSR.Channel_Status.No_Channel;
                    else if (CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_3] == true)
                        ThisCycleData.SSR_Data.CH_Status = CAT34I050Types.SSR.Channel_Status.Channel_A;
                    else
                        ThisCycleData.SSR_Data.CH_Status = CAT34I050Types.SSR.Channel_Status.Channel_B;

                    ThisCycleData.SSR_Data.SSR_Overloaded = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_4];
                    ThisCycleData.SSR_Data.Monitor_Sys_Disconected = CAT34_I050_Data.DWord[CAT34I050Types.Subfiled_5];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // MDS - Mode-S sensor component
                //////////////////////////////////////////////////////////////////////////////////

                if (BO.DWord[CAT34I050Types.Subfiled_6] == true)
                {
                    Number_Of_Octets_Present++;
                    // Mode S subfield is 2 octets
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                    ThisCycleData.MDS_Data.Data_Present = true;

                    ThisCycleData.MDS_Data.Ant_2_Selected = BO.DWord[CAT34I050Types.Subfiled_1];

                    if (BO.DWord[CAT34I050Types.Subfiled_3] == true && BO.DWord[CAT34I050Types.Subfiled_2] == true)
                        ThisCycleData.MDS_Data.CH_Status = CAT34I050Types.MDS.Channel_Status.Illegal_Combination;
                    else if (BO.DWord[CAT34I050Types.Subfiled_3] == false && BO.DWord[CAT34I050Types.Subfiled_2] == false)
                        ThisCycleData.MDS_Data.CH_Status = CAT34I050Types.MDS.Channel_Status.No_Channel;
                    else if (BO.DWord[CAT34I050Types.Subfiled_3] == true)
                        ThisCycleData.MDS_Data.CH_Status = CAT34I050Types.MDS.Channel_Status.Channel_A;
                    else
                        ThisCycleData.MDS_Data.CH_Status = CAT34I050Types.MDS.Channel_Status.Channel_B;

                    ThisCycleData.MDS_Data.ModeS_Overloaded = BO.DWord[CAT34I050Types.Subfiled_4];
                    ThisCycleData.MDS_Data.Monitor_Sys_Disconected = BO.DWord[CAT34I050Types.Subfiled_5];
                    ThisCycleData.MDS_Data.CH2_For_Coordination_In_Use = BO.DWord[CAT34I050Types.Subfiled_6];
                    ThisCycleData.MDS_Data.CH2_For_DataLink_In_Use = BO.DWord[CAT34I050Types.Subfiled_7];
                    ThisCycleData.MDS_Data.Coordination_Func_Overload = BO.DWord[CAT34I050Types.FX_Primary_Subfiled]; // Not really FX but the index is correct

                    Number_Of_Octets_Present++;
                    // Mode S subfield is 2 octets
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];

                    ThisCycleData.MDS_Data.DataLink_Func_Overload = BO.DWord[CAT34I050Types.Subfiled_1];
                }
                //////////////////////////////////////////////////////////////////////////////////
                // Spare
                //////////////////////////////////////////////////////////////////////////////////

                if (BO.DWord[CAT34I050Types.Subfiled_7] == true)
                {
                    Number_Of_Octets_Present++;
                    CAT34_I050_Data.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present];
                }

                //////////////////////////////////////////////////////////////////////////////////
                // Now assign it to the generic list
                CAT34.I034DataItems[CAT34.ItemIDToIndex("050")].value = ThisCycleData;
                //////////////////////////////////////////////////////////////////////////////////

                // Increase data buffer index so it ready for the next data item.
                CAT34.CurrentDataBufferOctalIndex = CAT34.CurrentDataBufferOctalIndex + Number_Of_Octets_Present;
            }
        }