Exemple #1
0
            public AS_Config Decode(BitArrayInputStream input)
            {
                BitMaskStream stream;
                AS_Config     config = new AS_Config();

                config.InitDefaults();
                bool flag = input.readBit() != 0;

                config.sourceMeasConfig                  = MeasConfig.PerDecoder.Instance.Decode(input);
                config.sourceRadioResourceConfig         = RadioResourceConfigDedicated.PerDecoder.Instance.Decode(input);
                config.sourceSecurityAlgorithmConfig     = SecurityAlgorithmConfig.PerDecoder.Instance.Decode(input);
                config.sourceUE_Identity                 = input.readBitString(0x10);
                config.sourceMasterInformationBlock      = MasterInformationBlock.PerDecoder.Instance.Decode(input);
                config.sourceSystemInformationBlockType1 = SystemInformationBlockType1.PerDecoder.Instance.Decode(input);
                config.sourceSystemInformationBlockType2 = SystemInformationBlockType2.PerDecoder.Instance.Decode(input);
                config.antennaInfoCommon                 = AntennaInfoCommon.PerDecoder.Instance.Decode(input);
                config.sourceDl_CarrierFreq              = input.readBits(0x10);
                if (flag)
                {
                    stream = new BitMaskStream(input, 1);
                    if (stream.Read())
                    {
                        int nBits = input.readBits(8);
                        config.sourceSystemInformationBlockType1Ext = input.readOctetString(nBits);
                    }
                    config.sourceOtherConfig_r9 = OtherConfig_r9.PerDecoder.Instance.Decode(input);
                }
                if (flag)
                {
                    stream = new BitMaskStream(input, 1);
                    if (!stream.Read())
                    {
                        return(config);
                    }
                    config.sourceSCellConfigList_r10 = new List <SCellToAddMod_r10>();
                    int num2 = 2;
                    int num3 = input.readBits(num2) + 1;
                    for (int i = 0; i < num3; i++)
                    {
                        SCellToAddMod_r10 item = SCellToAddMod_r10.PerDecoder.Instance.Decode(input);
                        config.sourceSCellConfigList_r10.Add(item);
                    }
                }
                return(config);
            }
Exemple #2
0
 public AS_Config Decode(BitArrayInputStream input)
 {
     BitMaskStream stream;
     AS_Config config = new AS_Config();
     config.InitDefaults();
     bool flag = input.readBit() != 0;
     config.sourceMeasConfig = MeasConfig.PerDecoder.Instance.Decode(input);
     config.sourceRadioResourceConfig = RadioResourceConfigDedicated.PerDecoder.Instance.Decode(input);
     config.sourceSecurityAlgorithmConfig = SecurityAlgorithmConfig.PerDecoder.Instance.Decode(input);
     config.sourceUE_Identity = input.readBitString(0x10);
     config.sourceMasterInformationBlock = MasterInformationBlock.PerDecoder.Instance.Decode(input);
     config.sourceSystemInformationBlockType1 = SystemInformationBlockType1.PerDecoder.Instance.Decode(input);
     config.sourceSystemInformationBlockType2 = SystemInformationBlockType2.PerDecoder.Instance.Decode(input);
     config.antennaInfoCommon = AntennaInfoCommon.PerDecoder.Instance.Decode(input);
     config.sourceDl_CarrierFreq = input.readBits(0x10);
     if (flag)
     {
         stream = new BitMaskStream(input, 1);
         if (stream.Read())
         {
             int nBits = input.readBits(8);
             config.sourceSystemInformationBlockType1Ext = input.readOctetString(nBits);
         }
         config.sourceOtherConfig_r9 = OtherConfig_r9.PerDecoder.Instance.Decode(input);
     }
     if (flag)
     {
         stream = new BitMaskStream(input, 1);
         if (!stream.Read())
         {
             return config;
         }
         config.sourceSCellConfigList_r10 = new List<SCellToAddMod_r10>();
         int num2 = 2;
         int num3 = input.readBits(num2) + 1;
         for (int i = 0; i < num3; i++)
         {
             SCellToAddMod_r10 item = SCellToAddMod_r10.PerDecoder.Instance.Decode(input);
             config.sourceSCellConfigList_r10.Add(item);
         }
     }
     return config;
 }