Exemplo n.º 1
0
 private void InitailEvent(uint recordLength, uint recordType, BigEndianBinaryReader _contentStream, Hashtable htEventPm)
 {
     RecordLength = recordLength;
     RecordType = recordType;
     byte[] buffer = _contentStream.ReadBytes(((int)recordLength) - 4);
     recordLength -= 4;
     MemoryStream input = new MemoryStream(buffer);
     BigEndianBinaryReader reader = new BigEndianBinaryReader(input);
     long position = reader.BaseStream.Position;
     long num3;
     EventId = reader.ReadUInts(3);
     _AsnType = htEventPm[(int)EventId] as EricPmEvent;
     TimeStampHour = reader.ReadByte();
     TimeStampMinute = reader.ReadByte();
     TimeStampSecond = reader.ReadByte();
     TimeStampMilliSec = reader.ReadUInt16();
     ScannerId = reader.ReadUInts(3);
     RbsModuleId = reader.ReadByte();
     GlobalCellId = reader.ReadUInt32();
     if (((_AsnType == null) || _AsnType.EventType.Equals("CELL")) || _AsnType.EventType.Equals("RBS"))
     {
         num3 = reader.BaseStream.Position - position;
         UnPaserTraseContent = reader.ReadHex((int)(recordLength - num3));
     }
     else
     {
         EnbS1ApId = reader.ReadUInts(3);
         MmeS1ApId = reader.ReadUInt32();
         Gummei = reader.ReadHex(7);
         RacUeRef = reader.ReadUInt32();
         TraceRecordingSessionReference = reader.ReadUInts(3);
         MessageDirection = reader.ReadByte();
         if (_AsnType.EventType.Equals("UE"))
         {
             num3 = reader.BaseStream.Position - position;
             UnPaserTraseContent = reader.ReadHex((int)(recordLength - num3));
         }
         else
         {
             L3MessageLength = reader.ReadUInt16();
             L3MessageContents = reader.ReadBytes(L3MessageLength);
             num3 = reader.BaseStream.Position - position;
             PaddingBytes = reader.ReadChars((int)(recordLength - num3));
         }
     }
 }