Exemple #1
0
                public A21MobileSubscriptionInformation Decode(BitArrayInputStream input)
                {
                    A21MobileSubscriptionInformation information = new A21MobileSubscriptionInformation {
                        A21ElementIdentifier = input.readOctetString(1),
                        Length                 = input.ReadBits(8),
                        RecordIdentifier       = input.readOctetString(1),
                        RecordLength           = input.ReadBits(8),
                        AllBandClassesIncluded = input.ReadBits(1),
                        CurrentBandSubclass    = input.ReadBits(7),
                        BandClassList          = new List <BandClass>()
                    };

                    for (int i = 1; i < information.RecordLength; i++)
                    {
                        BandClass item = new BandClass {
                            BandClassValue         = input.ReadBits(8),
                            AllBandClassesIncluded = input.ReadBits(1)
                        };
                        input.ReadBits(3);
                        item.BandSubclassLength = input.ReadBits(4);
                        i += 2;
                        item.SubClassesList = new List <SubClasses>();
                        for (int j = 0; j < item.BandSubclassLength; j++)
                        {
                            SubClasses classes = new SubClasses {
                                SC7 = input.ReadBit(),
                                SC6 = input.ReadBit(),
                                SC5 = input.ReadBit(),
                                SC4 = input.ReadBit(),
                                SC3 = input.ReadBit(),
                                SC2 = input.ReadBit(),
                                SC1 = input.ReadBit(),
                                SC0 = input.ReadBit()
                            };
                            item.SubClassesList.Add(classes);
                            i++;
                        }
                        information.BandClassList.Add(item);
                    }
                    return(information);
                }
 public A21MobileSubscriptionInformation Decode(BitArrayInputStream input)
 {
     A21MobileSubscriptionInformation information = new A21MobileSubscriptionInformation {
         A21ElementIdentifier = input.readOctetString(1),
         Length = input.ReadBits(8),
         RecordIdentifier = input.readOctetString(1),
         RecordLength = input.ReadBits(8),
         AllBandClassesIncluded = input.ReadBits(1),
         CurrentBandSubclass = input.ReadBits(7),
         BandClassList = new List<BandClass>()
     };
     for (int i = 1; i < information.RecordLength; i++)
     {
         BandClass item = new BandClass {
             BandClassValue = input.ReadBits(8),
             AllBandClassesIncluded = input.ReadBits(1)
         };
         input.ReadBits(3);
         item.BandSubclassLength = input.ReadBits(4);
         i += 2;
         item.SubClassesList = new List<SubClasses>();
         for (int j = 0; j < item.BandSubclassLength; j++)
         {
             SubClasses classes = new SubClasses {
                 SC7 = input.ReadBit(),
                 SC6 = input.ReadBit(),
                 SC5 = input.ReadBit(),
                 SC4 = input.ReadBit(),
                 SC3 = input.ReadBit(),
                 SC2 = input.ReadBit(),
                 SC1 = input.ReadBit(),
                 SC0 = input.ReadBit()
             };
             item.SubClassesList.Add(classes);
             i++;
         }
         information.BandClassList.Add(item);
     }
     return information;
 }