Пример #1
0
                public measResultNeighCells_Type Decode(BitArrayInputStream input)
                {
                    int num2;
                    measResultNeighCells_Type type = new measResultNeighCells_Type();

                    type.InitDefaults();
                    input.ReadBit();
                    switch (input.ReadBits(2))
                    {
                    case 0:
                    {
                        type.measResultListEUTRA = new List <MeasResultEUTRA>();
                        num2 = 3;
                        int num4 = input.ReadBits(num2) + 1;
                        for (int i = 0; i < num4; i++)
                        {
                            MeasResultEUTRA item = MeasResultEUTRA.PerDecoder.Instance.Decode(input);
                            type.measResultListEUTRA.Add(item);
                        }
                        return(type);
                    }

                    case 1:
                    {
                        type.measResultListUTRA = new List <MeasResultUTRA>();
                        num2 = 3;
                        int num6 = input.ReadBits(num2) + 1;
                        for (int j = 0; j < num6; j++)
                        {
                            MeasResultUTRA tutra = MeasResultUTRA.PerDecoder.Instance.Decode(input);
                            type.measResultListUTRA.Add(tutra);
                        }
                        return(type);
                    }

                    case 2:
                    {
                        type.measResultListGERAN = new List <MeasResultGERAN>();
                        num2 = 3;
                        int num8 = input.ReadBits(num2) + 1;
                        for (int k = 0; k < num8; k++)
                        {
                            MeasResultGERAN tgeran = MeasResultGERAN.PerDecoder.Instance.Decode(input);
                            type.measResultListGERAN.Add(tgeran);
                        }
                        return(type);
                    }

                    case 3:
                        type.measResultsCDMA2000 = MeasResultsCDMA2000.PerDecoder.Instance.Decode(input);
                        return(type);
                    }
                    throw new Exception(GetType().Name + ":NoChoice had been choose");
                }
Пример #2
0
            public MeasResultEUTRA Decode(BitArrayInputStream input)
            {
                MeasResultEUTRA teutra = new MeasResultEUTRA();

                teutra.InitDefaults();
                BitMaskStream stream = new BitMaskStream(input, 1);

                teutra.physCellId = input.ReadBits(9);
                if (stream.Read())
                {
                    teutra.cgi_Info = cgi_Info_Type.PerDecoder.Instance.Decode(input);
                }
                teutra.measResult = measResult_Type.PerDecoder.Instance.Decode(input);
                return(teutra);
            }
Пример #3
0
            public MeasResult2EUTRA_r9 Decode(BitArrayInputStream input)
            {
                MeasResult2EUTRA_r9 _r = new MeasResult2EUTRA_r9();

                _r.InitDefaults();
                _r.carrierFreq_r9    = input.ReadBits(0x10);
                _r.measResultList_r9 = new List <MeasResultEUTRA>();
                int nBits = 3;
                int num3  = input.ReadBits(nBits) + 1;

                for (int i = 0; i < num3; i++)
                {
                    MeasResultEUTRA item = MeasResultEUTRA.PerDecoder.Instance.Decode(input);
                    _r.measResultList_r9.Add(item);
                }
                return(_r);
            }
Пример #4
0
 public MeasResultEUTRA Decode(BitArrayInputStream input)
 {
     MeasResultEUTRA teutra = new MeasResultEUTRA();
     teutra.InitDefaults();
     BitMaskStream stream = new BitMaskStream(input, 1);
     teutra.physCellId = input.readBits(9);
     if (stream.Read())
     {
         teutra.cgi_Info = cgi_Info_Type.PerDecoder.Instance.Decode(input);
     }
     teutra.measResult = measResult_Type.PerDecoder.Instance.Decode(input);
     return teutra;
 }