public RRCConnectionReestablishmentReject Decode(BitArrayInputStream input)
 {
     RRCConnectionReestablishmentReject reject = new RRCConnectionReestablishmentReject();
     reject.InitDefaults();
     reject.criticalExtensions = criticalExtensions_Type.PerDecoder.Instance.Decode(input);
     return reject;
 }
Пример #2
0
                    public c1_Type Decode(BitArrayInputStream input)
                    {
                        c1_Type type = new c1_Type();
                        type.InitDefaults();
                        switch (input.ReadBits(3))
                        {
                            case 0:
                                type.handoverPreparationInformation_r8 = HandoverPreparationInformation_r8_IEs.PerDecoder.Instance.Decode(input);
                                return type;

                            case 1:
                                return type;

                            case 2:
                                return type;

                            case 3:
                                return type;

                            case 4:
                                return type;

                            case 5:
                                return type;

                            case 6:
                                return type;

                            case 7:
                                return type;
                        }
                        throw new Exception(GetType().Name + ":NoChoice had been choose");
                    }
Пример #3
0
 public EmergencyAreaID_Broadcast_Item Decode(BitArrayInputStream input)
 {
     EmergencyAreaID_Broadcast_Item item = new EmergencyAreaID_Broadcast_Item();
     item.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 1) : new BitMaskStream(input, 1);
     input.skipUnreadedBits();
     item.emergencyAreaID = input.readOctetString(3);
     input.skipUnreadedBits();
     item.completedCellinEAI = new List<CompletedCellinEAI_Item>();
     int nBits = 0x10;
     int num5 = input.ReadBits(nBits) + 1;
     for (int i = 0; i < num5; i++)
     {
         CompletedCellinEAI_Item item2 = CompletedCellinEAI_Item.PerDecoder.Instance.Decode(input);
         item.completedCellinEAI.Add(item2);
     }
     if (stream.Read())
     {
         input.skipUnreadedBits();
         item.iE_Extensions = new List<ProtocolExtensionField>();
         nBits = 0x10;
         int num7 = input.ReadBits(nBits) + 1;
         for (int j = 0; j < num7; j++)
         {
             ProtocolExtensionField field = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             item.iE_Extensions.Add(field);
         }
     }
     return item;
 }
Пример #4
0
 public RelativeNarrowbandTxPower Decode(BitArrayInputStream input)
 {
     RelativeNarrowbandTxPower power = new RelativeNarrowbandTxPower();
     power.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 1) : new BitMaskStream(input, 1);
     input.ReadBit();
     int num = input.ReadBits(7);
     input.skipUnreadedBits();
     power.rNTP_PerPRB = input.ReadBitString(num + 6);
     int nBits = (input.ReadBit() == 0) ? 4 : 4;
     power.rNTP_Threshold = (RNTP_Threshold)input.ReadBits(nBits);
     nBits = (input.ReadBit() == 0) ? 2 : 2;
     power.numberOfCellSpecificAntennaPorts = (numberOfCellSpecificAntennaPorts_Enum)input.ReadBits(nBits);
     power.p_B = input.ReadBits(2);
     power.pDCCH_InterferenceImpact = input.ReadBits(3);
     if (stream.Read())
     {
         input.skipUnreadedBits();
         power.iE_Extensions = new List<ProtocolExtensionField>();
         nBits = 0x10;
         int num5 = input.ReadBits(nBits) + 1;
         for (int i = 0; i < num5; i++)
         {
             ProtocolExtensionField item = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             power.iE_Extensions.Add(item);
         }
     }
     return power;
 }
Пример #5
0
 public PRACH_ConfigSCell_r10 Decode(BitArrayInputStream input)
 {
     PRACH_ConfigSCell_r10 _r = new PRACH_ConfigSCell_r10();
     _r.InitDefaults();
     _r.prach_ConfigIndex_r10 = input.ReadBits(6);
     return _r;
 }
Пример #6
0
 public E_RABSetupItemCtxtSURes Decode(BitArrayInputStream input)
 {
     E_RABSetupItemCtxtSURes res = new E_RABSetupItemCtxtSURes();
     res.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 1) : new BitMaskStream(input, 1);
     input.ReadBit();
     res.e_RAB_ID = input.ReadBits(4);
     input.ReadBit();
     int num = input.ReadBits(8);
     input.skipUnreadedBits();
     res.transportLayerAddress = input.ReadBitString(num + 1);
     input.skipUnreadedBits();
     res.gTP_TEID = input.readOctetString(4);
     if (stream.Read())
     {
         input.skipUnreadedBits();
         res.iE_Extensions = new List<ProtocolExtensionField>();
         int nBits = 0x10;
         int num5 = input.ReadBits(nBits) + 1;
         for (int i = 0; i < num5; i++)
         {
             ProtocolExtensionField item = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             res.iE_Extensions.Add(item);
         }
     }
     return res;
 }
Пример #7
0
 public ENB_StatusTransfer_TransparentContainer Decode(BitArrayInputStream input)
 {
     ENB_StatusTransfer_TransparentContainer container = new ENB_StatusTransfer_TransparentContainer();
     container.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 1) : new BitMaskStream(input, 1);
     input.skipUnreadedBits();
     container.bearers_SubjectToStatusTransferList = new List<ProtocolIE_Field>();
     int nBits = 8;
     int num5 = input.ReadBits(nBits) + 1;
     for (int i = 0; i < num5; i++)
     {
         ProtocolIE_Field item = ProtocolIE_Field.PerDecoder.Instance.Decode(input);
         container.bearers_SubjectToStatusTransferList.Add(item);
     }
     if (stream.Read())
     {
         input.skipUnreadedBits();
         container.iE_Extensions = new List<ProtocolExtensionField>();
         nBits = 0x10;
         int num7 = input.ReadBits(nBits) + 1;
         for (int j = 0; j < num7; j++)
         {
             ProtocolExtensionField field2 = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             container.iE_Extensions.Add(field2);
         }
     }
     return container;
 }
Пример #8
0
 public CompleteFailureCauseInformation_Item Decode(BitArrayInputStream input)
 {
     CompleteFailureCauseInformation_Item item = new CompleteFailureCauseInformation_Item();
     item.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 1) : new BitMaskStream(input, 1);
     item.cell_ID = ECGI.PerDecoder.Instance.Decode(input);
     item.measurementFailureCause_List = new List<ProtocolIE_Field>();
     int nBits = 5;
     int num5 = input.ReadBits(nBits) + 1;
     for (int i = 0; i < num5; i++)
     {
         ProtocolIE_Field field = ProtocolIE_Field.PerDecoder.Instance.Decode(input);
         item.measurementFailureCause_List.Add(field);
     }
     if (stream.Read())
     {
         input.skipUnreadedBits();
         item.iE_Extensions = new List<ProtocolExtensionField>();
         nBits = 0x10;
         int num7 = input.ReadBits(nBits) + 1;
         for (int j = 0; j < num7; j++)
         {
             ProtocolExtensionField field2 = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             item.iE_Extensions.Add(field2);
         }
     }
     return item;
 }
Пример #9
0
 public CompositeAvailableCapacity Decode(BitArrayInputStream input)
 {
     CompositeAvailableCapacity capacity = new CompositeAvailableCapacity();
     capacity.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 2) : new BitMaskStream(input, 2);
     if (stream.Read())
     {
         input.ReadBit();
         capacity.cellCapacityClassValue = input.ReadBits(7) + 1;
     }
     capacity.capacityValue = input.ReadBits(7);
     if (stream.Read())
     {
         input.skipUnreadedBits();
         capacity.iE_Extensions = new List<ProtocolExtensionField>();
         const int nBits = 0x10;
         int num5 = input.ReadBits(nBits) + 1;
         for (int i = 0; i < num5; i++)
         {
             ProtocolExtensionField item = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             capacity.iE_Extensions.Add(item);
         }
     }
     return capacity;
 }
 public cellAccessRelatedInfo_Type Decode(BitArrayInputStream input)
 {
     var type = new cellAccessRelatedInfo_Type();
     type.InitDefaults();
     var stream = new BitMaskStream(input, 1);
     type.plmn_IdentityList = new List<PLMN_IdentityInfo>();
     var nBits = 3;
     var num3 = input.ReadBits(nBits) + 1;
     for (var i = 0; i < num3; i++)
     {
         var item = PLMN_IdentityInfo.PerDecoder.Instance.Decode(input);
         type.plmn_IdentityList.Add(item);
     }
     type.trackingAreaCode = input.ReadBitString(0x10);
     type.cellIdentity = input.ReadBitString(0x1c);
     nBits = 1;
     type.cellBarred = (cellBarred_Enum)input.ReadBits(nBits);
     nBits = 1;
     type.intraFreqReselection = (intraFreqReselection_Enum)input.ReadBits(nBits);
     type.csg_Indication = input.ReadBit() == 1;
     if (stream.Read())
     {
         type.csg_Identity = input.ReadBitString(0x1b);
     }
     return type;
 }
Пример #11
0
 public interRAT_Parameters_Type Decode(BitArrayInputStream input)
 {
     interRAT_Parameters_Type type = new interRAT_Parameters_Type();
     type.InitDefaults();
     BitMaskStream stream = new BitMaskStream(input, 7);
     if (stream.Read())
     {
         type.utraFDD = IRAT_ParametersUTRA_FDD.PerDecoder.Instance.Decode(input);
     }
     if (stream.Read())
     {
         type.utraTDD128 = IRAT_ParametersUTRA_TDD128.PerDecoder.Instance.Decode(input);
     }
     if (stream.Read())
     {
         type.utraTDD384 = IRAT_ParametersUTRA_TDD384.PerDecoder.Instance.Decode(input);
     }
     if (stream.Read())
     {
         type.utraTDD768 = IRAT_ParametersUTRA_TDD768.PerDecoder.Instance.Decode(input);
     }
     if (stream.Read())
     {
         type.geran = IRAT_ParametersGERAN.PerDecoder.Instance.Decode(input);
     }
     if (stream.Read())
     {
         type.cdma2000_HRPD = IRAT_ParametersCDMA2000_HRPD.PerDecoder.Instance.Decode(input);
     }
     if (stream.Read())
     {
         type.cdma2000_1xRTT = IRAT_ParametersCDMA2000_1XRTT.PerDecoder.Instance.Decode(input);
     }
     return type;
 }
Пример #12
0
 public TraceActivation Decode(BitArrayInputStream input)
 {
     TraceActivation activation = new TraceActivation();
     activation.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 1) : new BitMaskStream(input, 1);
     input.skipUnreadedBits();
     activation.e_UTRAN_Trace_ID = input.readOctetString(8);
     activation.interfacesToTrace = input.ReadBitString(8);
     int nBits = (input.ReadBit() == 0) ? 3 : 3;
     activation.traceDepth = (TraceDepth)input.ReadBits(nBits);
     input.ReadBit();
     int num = input.ReadBits(8);
     input.skipUnreadedBits();
     activation.traceCollectionEntityIPAddress = input.ReadBitString(num + 1);
     if (stream.Read())
     {
         input.skipUnreadedBits();
         activation.iE_Extensions = new List<ProtocolExtensionField>();
         nBits = 0x10;
         int num5 = input.ReadBits(nBits) + 1;
         for (int i = 0; i < num5; i++)
         {
             ProtocolExtensionField item = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             activation.iE_Extensions.Add(item);
         }
     }
     return activation;
 }
Пример #13
0
 public OtherConfig_r9 Decode(BitArrayInputStream input)
 {
     OtherConfig_r9 _r = new OtherConfig_r9();
     _r.InitDefaults();
     bool flag = input.ReadBit() != 0;
     BitMaskStream stream = new BitMaskStream(input, 1);
     if (stream.Read())
     {
         _r.reportProximityConfig_r9 = ReportProximityConfig_r9.PerDecoder.Instance.Decode(input);
     }
     if (flag)
     {
         BitMaskStream stream2 = new BitMaskStream(input, 3);
         if (stream2.Read())
         {
             _r.idc_Config_r11 = IDC_Config_r11.PerDecoder.Instance.Decode(input);
         }
         if (stream2.Read())
         {
             _r.powerPrefIndicationConfig_r11 
                 = PowerPrefIndicationConfig_r11.PerDecoder.Instance.Decode(input);
         }
         if (stream2.Read())
         {
             _r.obtainLocationConfig_r11 = ObtainLocationConfig_r11.PerDecoder.Instance.Decode(input);
         }
     }
     return _r;
 }
Пример #14
0
 public Paging Decode(BitArrayInputStream input)
 {
     int num2;
     Paging paging = new Paging();
     paging.InitDefaults();
     BitMaskStream stream = new BitMaskStream(input, 4);
     if (stream.Read())
     {
         paging.pagingRecordList = new List<PagingRecord>();
         num2 = 4;
         int num3 = input.ReadBits(num2) + 1;
         for (int i = 0; i < num3; i++)
         {
             PagingRecord item = PagingRecord.PerDecoder.Instance.Decode(input);
             paging.pagingRecordList.Add(item);
         }
     }
     if (stream.Read())
     {
         num2 = 1;
         paging.systemInfoModification = (systemInfoModification_Enum)input.ReadBits(num2);
     }
     if (stream.Read())
     {
         num2 = 1;
         paging.etws_Indication = (etws_Indication_Enum)input.ReadBits(num2);
     }
     if (stream.Read())
     {
         paging.nonCriticalExtension = Paging_v890_IEs.PerDecoder.Instance.Decode(input);
     }
     return paging;
 }
Пример #15
0
 public ForbiddenLAs_Item Decode(BitArrayInputStream input)
 {
     ForbiddenLAs_Item item = new ForbiddenLAs_Item();
     item.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 1) : new BitMaskStream(input, 1);
     input.skipUnreadedBits();
     item.pLMN_Identity = input.readOctetString(3);
     item.forbiddenLACs = new List<string>();
     int nBits = 12;
     int num5 = input.ReadBits(nBits) + 1;
     for (int i = 0; i < num5; i++)
     {
         input.skipUnreadedBits();
         string str = input.readOctetString(2);
         item.forbiddenLACs.Add(str);
     }
     if (stream.Read())
     {
         input.skipUnreadedBits();
         item.iE_Extensions = new List<ProtocolExtensionField>();
         nBits = 0x10;
         int num7 = input.ReadBits(nBits) + 1;
         for (int j = 0; j < num7; j++)
         {
             ProtocolExtensionField field = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             item.iE_Extensions.Add(field);
         }
     }
     return item;
 }
Пример #16
0
 public PRACH_Configuration Decode(BitArrayInputStream input)
 {
     PRACH_Configuration configuration = new PRACH_Configuration();
     configuration.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 2) : new BitMaskStream(input, 2);
     input.skipUnreadedBits();
     configuration.rootSequenceIndex = input.ReadBits(0x10);
     configuration.zeroCorrelationIndex = input.ReadBits(4);
     configuration.highSpeedFlag = input.ReadBit() == 1;
     configuration.prach_FreqOffset = input.ReadBits(7);
     if (stream.Read())
     {
         configuration.prach_ConfigIndex = input.ReadBits(6);
     }
     if (stream.Read())
     {
         input.skipUnreadedBits();
         configuration.iE_Extensions = new List<ProtocolExtensionField>();
         const int nBits = 0x10;
         int num5 = input.ReadBits(nBits) + 1;
         for (int i = 0; i < num5; i++)
         {
             ProtocolExtensionField item = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             configuration.iE_Extensions.Add(item);
         }
     }
     return configuration;
 }
Пример #17
0
            public ResetType Decode(BitArrayInputStream input)
            {
                int num4;
                ResetType type = new ResetType();
                type.InitDefaults();
                input.ReadBit();
                switch (input.ReadBits(1))
                {
                    case 0:
                        num4 = 1;
                        type.s1_Interface = (ResetAll)input.ReadBits(num4);
                        return type;

                    case 1:
                        {
                            input.skipUnreadedBits();
                            type.partOfS1_Interface = new List<ProtocolIE_Field>();
                            num4 = 8;
                            int num6 = input.ReadBits(num4) + 1;
                            for (int i = 0; i < num6; i++)
                            {
                                ProtocolIE_Field item = ProtocolIE_Field.PerDecoder.Instance.Decode(input);
                                type.partOfS1_Interface.Add(item);
                            }
                            return type;
                        }
                }
                throw new Exception(GetType().Name + ":NoChoice had been choose");
            }
Пример #18
0
            public string Decode(BitArrayInputStream input)
            {
                input.skipUnreadedBits();
                int nBits = 0;
                while (true)
                {
                    switch (input.ReadBit())
                    {
                        case 0:
                            nBits += input.ReadBits(7);
                            goto Label_0096;

                        case 1:
                            switch (input.ReadBit())
                            {
                                case 0:
                                    nBits += input.ReadBits(14);
                                    goto Label_0096;

                                case 1:
                                    input.ReadBits(2);
                                    nBits += input.ReadBits(4) * 0x400;
                                    break;
                            }
                            break;
                    }
                }
            Label_0096:
                return input.readOctetString(nBits);
            }
Пример #19
0
 public CellMeasurementResult_Item Decode(BitArrayInputStream input)
 {
     CellMeasurementResult_Item item = new CellMeasurementResult_Item();
     item.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 4) : new BitMaskStream(input, 4);
     item.cell_ID = ECGI.PerDecoder.Instance.Decode(input);
     if (stream.Read())
     {
         item.hWOverLoadIndicator = HWLoadIndicator.PerDecoder.Instance.Decode(input);
     }
     if (stream.Read())
     {
         item.s1TNLOverLoadIndicator = S1TNLLoadIndicator.PerDecoder.Instance.Decode(input);
     }
     if (stream.Read())
     {
         item.radioResourceStatus = RadioResourceStatus.PerDecoder.Instance.Decode(input);
     }
     if (stream.Read())
     {
         input.skipUnreadedBits();
         item.iE_Extensions = new List<ProtocolExtensionField>();
         const int nBits = 0x10;
         int num5 = input.ReadBits(nBits) + 1;
         for (int i = 0; i < num5; i++)
         {
             ProtocolExtensionField field = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             item.iE_Extensions.Add(field);
         }
     }
     return item;
 }
Пример #20
0
 public PLMN_Identity Decode(BitArrayInputStream input)
 {
     int num2;
     PLMN_Identity identity = new PLMN_Identity();
     identity.InitDefaults();
     BitMaskStream stream = new BitMaskStream(input, 1);
     if (stream.Read())
     {
         identity.mcc = new List<long>();
         num2 = 0;
         int num3 = input.ReadBits(num2) + 3;
         for (int j = 0; j < num3; j++)
         {
             long item = input.ReadBits(4);
             identity.mcc.Add(item);
         }
     }
     identity.mnc = new List<long>();
     num2 = 1;
     int num6 = input.ReadBits(num2) + 2;
     for (int i = 0; i < num6; i++)
     {
         long num8 = input.ReadBits(4);
         identity.mnc.Add(num8);
     }
     return identity;
 }
Пример #21
0
 public long Decode(BitArrayInputStream input)
 {
     input.ReadBit();
     int num2 = input.ReadBits(2) + 1;
     input.skipUnreadedBits();
     return input.ReadBits(num2 * 8) + 0x10000;
 }
 public SystemInformationBlockType1_v9e0_IEs Decode(BitArrayInputStream input)
 {
     var es = new SystemInformationBlockType1_v9e0_IEs();
     es.InitDefaults();
     var stream = new BitMaskStream(input, 3);
     if (stream.Read())
     {
         es.freqBandIndicator_v9e0 = input.ReadBits(8) + 0x41;
     }
     if (stream.Read())
     {
         es.multiBandInfoList_v9e0 = new List<MultiBandInfo_v9e0>();
         const int nBits = 3;
         var num3 = input.ReadBits(nBits) + 1;
         for (var i = 0; i < num3; i++)
         {
             var item = MultiBandInfo_v9e0.PerDecoder.Instance.Decode(input);
             es.multiBandInfoList_v9e0.Add(item);
         }
     }
     if (stream.Read())
     {
         es.nonCriticalExtension = nonCriticalExtension_Type.PerDecoder.Instance.Decode(input);
     }
     return es;
 }
Пример #23
0
        public static object Switcher(long unique, string membername, BitArrayInputStream input)
        {
            long num = unique;
            if (num <= 0x2aL)
            {
                if (num < 0x29L)
                {
                    goto Label_0081;
                }
                switch (((int)(num - 0x29L)))
                {
                    case 0:
                        return id_Number_of_AntennaportsClass.GetMemberObj(membername, input);

                    case 1:
                        return id_CompositeAvailableCapacityGroupClass.GetMemberObj(membername, input);
                }
            }
            if ((num <= 0x3bL) && (num >= 0x37L))
            {
                switch (((int)(num - 0x37L)))
                {
                    case 0:
                        return id_PRACH_ConfigurationClass.GetMemberObj(membername, input);

                    case 1:
                        return id_MBSFN_Subframe_InfoClass.GetMemberObj(membername, input);

                    case 4:
                        return id_DeactivationIndicationClass.GetMemberObj(membername, input);
                }
            }
        Label_0081:
            return null;
        }
Пример #24
0
 public GBR_QosInformation Decode(BitArrayInputStream input)
 {
     GBR_QosInformation information = new GBR_QosInformation();
     information.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 1) : new BitMaskStream(input, 1);
     int nBits = input.ReadBits(3) + 1;
     input.skipUnreadedBits();
     information.e_RAB_MaximumBitrateDL = input.ReadBits(nBits * 8);
     nBits = input.ReadBits(3) + 1;
     input.skipUnreadedBits();
     information.e_RAB_MaximumBitrateUL = input.ReadBits(nBits * 8);
     nBits = input.ReadBits(3) + 1;
     input.skipUnreadedBits();
     information.e_RAB_GuaranteedBitrateDL = input.ReadBits(nBits * 8);
     nBits = input.ReadBits(3) + 1;
     input.skipUnreadedBits();
     information.e_RAB_GuaranteedBitrateUL = input.ReadBits(nBits * 8);
     if (stream.Read())
     {
         input.skipUnreadedBits();
         information.iE_Extensions = new List<ProtocolExtensionField>();
         nBits = 0x10;
         int num5 = input.ReadBits(nBits) + 1;
         for (int i = 0; i < num5; i++)
         {
             ProtocolExtensionField item = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             information.iE_Extensions.Add(item);
         }
     }
     return information;
 }
Пример #25
0
 public CellBasedMDT Decode(BitArrayInputStream input)
 {
     CellBasedMDT dmdt = new CellBasedMDT();
     dmdt.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 1) : new BitMaskStream(input, 1);
     dmdt.cellIdListforMDT = new List<ECGI>();
     int nBits = 5;
     int num5 = input.ReadBits(nBits) + 1;
     for (int i = 0; i < num5; i++)
     {
         ECGI item = ECGI.PerDecoder.Instance.Decode(input);
         dmdt.cellIdListforMDT.Add(item);
     }
     if (stream.Read())
     {
         input.skipUnreadedBits();
         dmdt.iE_Extensions = new List<ProtocolExtensionField>();
         nBits = 0x10;
         int num7 = input.ReadBits(nBits) + 1;
         for (int j = 0; j < num7; j++)
         {
             ProtocolExtensionField field = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             dmdt.iE_Extensions.Add(field);
         }
     }
     return dmdt;
 }
Пример #26
0
 public RRCConnectionRequest Decode(BitArrayInputStream input)
 {
     RRCConnectionRequest request = new RRCConnectionRequest();
     request.InitDefaults();
     request.criticalExtensions = criticalExtensions_Type.PerDecoder.Instance.Decode(input);
     return request;
 }
 public Bearers_SubjectToStatusTransfer_Item Decode(BitArrayInputStream input)
 {
     Bearers_SubjectToStatusTransfer_Item item = new Bearers_SubjectToStatusTransfer_Item();
     item.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 2) : new BitMaskStream(input, 2);
     input.ReadBit();
     item.e_RAB_ID = input.ReadBits(4);
     item.uL_COUNTvalue = COUNTvalue.PerDecoder.Instance.Decode(input);
     item.dL_COUNTvalue = COUNTvalue.PerDecoder.Instance.Decode(input);
     if (stream.Read())
     {
         input.skipUnreadedBits();
         item.receiveStatusofULPDCPSDUs = input.ReadBitString(0x1000);
     }
     if (stream.Read())
     {
         input.skipUnreadedBits();
         item.iE_Extensions = new List<ProtocolExtensionField>();
         int nBits = 0x10;
         int num5 = input.ReadBits(nBits) + 1;
         for (int i = 0; i < num5; i++)
         {
             ProtocolExtensionField field = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             item.iE_Extensions.Add(field);
         }
     }
     return item;
 }
Пример #28
0
 public UE_associatedLogicalS1_ConnectionItem Decode(BitArrayInputStream input)
 {
     int num4;
     UE_associatedLogicalS1_ConnectionItem item = new UE_associatedLogicalS1_ConnectionItem();
     item.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 3) : new BitMaskStream(input, 3);
     if (stream.Read())
     {
         num4 = input.ReadBits(2) + 1;
         input.skipUnreadedBits();
         item.mME_UE_S1AP_ID = input.ReadBits(num4 * 8);
     }
     if (stream.Read())
     {
         num4 = input.ReadBits(2) + 1;
         input.skipUnreadedBits();
         item.eNB_UE_S1AP_ID = input.ReadBits(num4 * 8);
     }
     if (stream.Read())
     {
         input.skipUnreadedBits();
         item.iE_Extensions = new List<ProtocolExtensionField>();
         num4 = 0x10;
         int num5 = input.ReadBits(num4) + 1;
         for (int i = 0; i < num5; i++)
         {
             ProtocolExtensionField field = ProtocolExtensionField.PerDecoder.Instance.Decode(input);
             item.iE_Extensions.Add(field);
         }
     }
     return item;
 }
Пример #29
0
 public RRM_Config Decode(BitArrayInputStream input)
 {
     int num2;
     RRM_Config config = new RRM_Config();
     config.InitDefaults();
     bool flag = input.ReadBit() != 0;
     BitMaskStream stream = new BitMaskStream(input, 1);
     if (stream.Read())
     {
         num2 = 6;
         config.ue_InactiveTime = (ue_InactiveTime_Enum)input.ReadBits(num2);
     }
     if (flag)
     {
         BitMaskStream stream2 = new BitMaskStream(input, 1);
         if (!stream2.Read())
         {
             return config;
         }
         config.candidateCellInfoList_r10 = new List<CandidateCellInfo_r10>();
         num2 = 3;
         int num3 = input.ReadBits(num2) + 1;
         for (int i = 0; i < num3; i++)
         {
             CandidateCellInfo_r10 item = CandidateCellInfo_r10.PerDecoder.Instance.Decode(input);
             config.candidateCellInfoList_r10.Add(item);
         }
     }
     return config;
 }
Пример #30
0
            public RLC_Config Decode(BitArrayInputStream input)
            {
                RLC_Config config = new RLC_Config();
                config.InitDefaults();
                input.ReadBit();
                switch (input.ReadBits(2))
                {
                    case 0:
                        config.am = am_Type.PerDecoder.Instance.Decode(input);
                        return config;

                    case 1:
                        config.um_Bi_Directional = um_Bi_Directional_Type.PerDecoder.Instance.Decode(input);
                        return config;

                    case 2:
                        config.um_Uni_Directional_UL = um_Uni_Directional_UL_Type.PerDecoder.Instance.Decode(input);
                        return config;

                    case 3:
                        config.um_Uni_Directional_DL = um_Uni_Directional_DL_Type.PerDecoder.Instance.Decode(input);
                        return config;
                }
                throw new Exception(GetType().Name + ":NoChoice had been choose");
            }