コード例 #1
0
        public long StripeStride;         // aka num partitions

        protected override void DoReadFrom(byte[] buffer, int offset)
        {
            base.DoReadFrom(buffer, offset);

            int pos = offset + 0x18;

            Id           = ReadVarULong(buffer, ref pos);
            Name         = ReadVarString(buffer, ref pos);
            StatusString = ReadVarString(buffer, ref pos);
            MergeType    = (ExtentMergeType)ReadByte(buffer, ref pos);
            Unknown1     = ReadUInt(buffer, ref pos); // Zero
            NumExtents   = ReadVarULong(buffer, ref pos);
            Unknown2     = ReadUInt(buffer, ref pos);
            LinkId       = ReadUInt(buffer, ref pos);
            Unknown3     = ReadULong(buffer, ref pos);    // Zero
            VolumeId     = ReadVarULong(buffer, ref pos);
            Unknown4     = ReadVarULong(buffer, ref pos); // Zero

            if ((Flags & 0x1000) != 0)
            {
                StripeSizeSectors = ReadVarLong(buffer, ref pos);
                StripeStride      = ReadVarLong(buffer, ref pos);
            }
        }
コード例 #2
0
ファイル: ComponentRecord.cs プロジェクト: JGTM2016/discutils
        protected override void DoReadFrom(byte[] buffer, int offset)
        {
            base.DoReadFrom(buffer, offset);

            int pos = offset + 0x18;

            Id = ReadVarULong(buffer, ref pos);
            Name = ReadVarString(buffer, ref pos);
            StatusString = ReadVarString(buffer, ref pos);
            MergeType = (ExtentMergeType)ReadByte(buffer, ref pos);
            Unknown1 = ReadUInt(buffer, ref pos); // Zero
            NumExtents = ReadVarULong(buffer, ref pos);
            Unknown2 = ReadUInt(buffer, ref pos);
            LinkId = ReadUInt(buffer, ref pos);
            Unknown3 = ReadULong(buffer, ref pos); // Zero
            VolumeId = ReadVarULong(buffer, ref pos);
            Unknown4 = ReadVarULong(buffer, ref pos); // Zero

            if ((Flags & 0x1000) != 0)
            {
                StripeSizeSectors = ReadVarLong(buffer, ref pos);
                StripeStride = ReadVarLong(buffer, ref pos);
            }
        }