Пример #1
0
        // Token: 0x06000960 RID: 2400 RVA: 0x0002C2D8 File Offset: 0x0002A4D8
        public static EseLogRecordPosition GetLastLogRecordPosition(EseLogRecord[] records)
        {
            EseLogRecordPosition eseLogRecordPosition = null;

            if (records.Length > 0)
            {
                int logSectorSize = 0;
                EseLogHeaderRecord eseLogHeaderRecord = records[0] as EseLogHeaderRecord;
                if (eseLogHeaderRecord != null)
                {
                    logSectorSize = eseLogHeaderRecord.SectorSize;
                }
                logSectorSize        = EseLogPos.CheckSectorSize(logSectorSize);
                eseLogRecordPosition = new EseLogRecordPosition();
                eseLogRecordPosition.LogSectorSize = logSectorSize;
                for (int i = records.Length - 1; i >= 1; i--)
                {
                    if (records[i].LogPos != null)
                    {
                        eseLogRecordPosition.LogPos          = records[i].LogPos;
                        eseLogRecordPosition.LogRecordLength = records[i].LogRecSize;
                        break;
                    }
                }
            }
            return(eseLogRecordPosition);
        }
Пример #2
0
        // Token: 0x06000996 RID: 2454 RVA: 0x0002D8D0 File Offset: 0x0002BAD0
        public static EseLogPos BuildNextPos(EseLogPos inPos, int logRecordLen, int logSectorSize)
        {
            logSectorSize = EseLogPos.CheckSectorSize(logSectorSize);
            EseLogPos eseLogPos = new EseLogPos();

            eseLogPos.Generation = inPos.Generation;
            int num = inPos.Sector * logSectorSize + inPos.ByteOffset + logRecordLen;

            eseLogPos.Sector     = num / logSectorSize;
            eseLogPos.ByteOffset = num % logSectorSize;
            return(eseLogPos);
        }
Пример #3
0
 // Token: 0x06000997 RID: 2455 RVA: 0x0002D91C File Offset: 0x0002BB1C
 public int ToBytePos(int logSectorSize)
 {
     logSectorSize = EseLogPos.CheckSectorSize(logSectorSize);
     return(this.Sector * logSectorSize + this.ByteOffset);
 }
Пример #4
0
 // Token: 0x060009AC RID: 2476 RVA: 0x0002DB7C File Offset: 0x0002BD7C
 protected void SetLogPosAndSize(Match m)
 {
     this.LogPos     = EseLogPos.Parse(m.Groups["LogPos"].ToString());
     this.LogRecSize = int.Parse(m.Groups["LogRecSize"].ToString(), NumberStyles.HexNumber, CultureInfo.InvariantCulture);
 }