public static ItemIDToIndex ( string ID ) : int | ||
ID | string | |
return | int |
public static int ItemIDToIndex(string ID)
{
int index = 0;
switch (ID)
{
case "010":
index = 0;
break;
case "140":
index = 1;
break;
case "020":
index = 2;
break;
case "040":
index = 3;
break;
case "070":
index = 4;
break;
case "090":
index = 5;
break;
case "130":
index = 6;
break;
case "220":
index = 7;
break;
case "240":
index = 8;
break;
case "250":
index = 9;
break;
case "161":
index = 10;
break;
case "042":
index = 11;
break;
case "200":
index = 12;
break;
case "170":
index = 13;
break;
case "210":
index = 14;
break;
case "030":
index = 15;
break;
case "080":
index = 16;
break;
case "100":
index = 17;
break;
case "110":
index = 18;
break;
case "120":
index = 19;
break;
case "230":
index = 20;
break;
case "260":
index = 21;
break;
case "055":
index = 22;
break;
case "050":
index = 23;
break;
case "065":
index = 24;
break;
case "060":
index = 25;
break;
case "SPI":
index = 26;
break;
default:
break;
}
return index;
}
public static void DecodeCAT48I130(byte[] Data) { // At this time we do not care about the content of CAT048I130. // However it is necessary to determine how many subfields of 8 octets // is present so that data buffer can be updated accordingly on order to // decode the other fileds of interest // NOTE: We assume that only first 7 defined subfuled // I048/130 Radar Plot Characteristics 1 + 1+ int Number_Of_Octets_Present = 1; // at least two, but that will be determined below // Decode 020 if (CAT48.I048DataItems[CAT48.ItemIDToIndex("130")].HasBeenPresent == true) { // Get an instance of bit ops Bit_Ops BO = new Bit_Ops(); //Extract the first octet BO.DWord[Bit_Ops.Bits0_7_Of_DWord] = Data[CAT48.CurrentDataBufferOctalIndex + 1]; // Now check how many data octets is present. if (BO.DWord[CAT48I130Types.Subfiled_1] == true) { Number_Of_Octets_Present++; } if (BO.DWord[CAT48I130Types.Subfiled_2] == true) { Number_Of_Octets_Present++; } if (BO.DWord[CAT48I130Types.Subfiled_3] == true) { Number_Of_Octets_Present++; } if (BO.DWord[CAT48I130Types.Subfiled_4] == true) { Number_Of_Octets_Present++; } if (BO.DWord[CAT48I130Types.Subfiled_5] == true) { Number_Of_Octets_Present++; } if (BO.DWord[CAT48I130Types.Subfiled_6] == true) { Number_Of_Octets_Present++; } if (BO.DWord[CAT48I130Types.Subfiled_7] == true) { Number_Of_Octets_Present++; } // Increase data buffer index so it ready for the next data item. CAT48.CurrentDataBufferOctalIndex = CAT48.CurrentDataBufferOctalIndex + Number_Of_Octets_Present; } }