Exemplo n.º 1
0
 public TimeSynchronizationInfo Decode(BitArrayInputStream input)
 {
     TimeSynchronizationInfo info = new TimeSynchronizationInfo();
     info.InitDefaults();
     BitMaskStream stream = (input.ReadBit() != 0) ? new BitMaskStream(input, 1) : new BitMaskStream(input, 1);
     input.ReadBit();
     info.stratumLevel = input.ReadBits(2);
     int nBits = 1;
     info.synchronizationStatus = (SynchronizationStatus)input.ReadBits(nBits);
     if (stream.Read())
     {
         input.skipUnreadedBits();
         info.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);
             info.iE_Extensions.Add(item);
         }
     }
     return info;
 }