private void PopulateSSRCodeLookup()
{
// Each time the form is opened reset code lookup
// and then populate based on the latest received
// data
for (int I = 0; I < SSR_Code_Lookup.Length; I++)
SSR_Code_Lookup[I] = false;
// On load determine what SSR codes are present end populate the combo box
if (MainASTERIXDataStorage.CAT01Message.Count > 0)
{
foreach (MainASTERIXDataStorage.CAT01Data Msg in MainASTERIXDataStorage.CAT01Message)
{
if (Msg.CAT01DataItems[CAT01.ItemIDToIndex("070")].CurrentlyPresent == true)
{
CAT01I070Types.CAT01070Mode3UserData MyData = (CAT01I070Types.CAT01070Mode3UserData)Msg.CAT01DataItems[CAT01.ItemIDToIndex("070")].value;
int Result;
if (int.TryParse(MyData.Mode3A_Code, out Result) == true)
SSR_Code_Lookup[Result] = true;
}
}
}
else if (MainASTERIXDataStorage.CAT48Message.Count > 0)
{
foreach (MainASTERIXDataStorage.CAT48Data Msg in MainASTERIXDataStorage.CAT48Message)
{
if (Msg.CAT48DataItems[CAT48.ItemIDToIndex("070")].CurrentlyPresent == true)
{
CAT48I070Types.CAT48I070Mode3UserData MyData = (CAT48I070Types.CAT48I070Mode3UserData)Msg.CAT48DataItems[CAT48.ItemIDToIndex("070")].value;
int Result;
if (int.TryParse(MyData.Mode3A_Code, out Result) == true)
SSR_Code_Lookup[Result] = true;
}
}
}
else if (MainASTERIXDataStorage.CAT62Message.Count > 0)
{
foreach (MainASTERIXDataStorage.CAT62Data Msg in MainASTERIXDataStorage.CAT62Message)
{
if (Msg.CAT62DataItems[CAT62.ItemIDToIndex("060")].CurrentlyPresent == true)
{
CAT62I060Types.CAT62060Mode3UserData MyData = (CAT62I060Types.CAT62060Mode3UserData)Msg.CAT62DataItems[CAT62.ItemIDToIndex("060")].value;
int Result;
if (int.TryParse(MyData.Mode3A_Code, out Result) == true)
SSR_Code_Lookup[Result] = true;
}
}
}
else
{
}
this.comboBoxSSRFilterBox.Items.Clear();
for (int I = 0; I < SSR_Code_Lookup.Length; I++)
{
if (SSR_Code_Lookup[I] == true)
this.comboBoxSSRFilterBox.Items.Add(I.ToString().PadLeft(4, '0'));
}
if (this.comboBoxSSRFilterBox.Items.Count > 0)
this.comboBoxSSRFilterBox.SelectedIndex = 0;
}