internal IndexEntry(byte[] bytes, int offset) { RecordNumber = (BitConverter.ToUInt64(bytes, 0x00 + offset) & 0x0000FFFFFFFFFFFF); Size = BitConverter.ToUInt16(bytes, 0x08 + offset); StreamSize = BitConverter.ToUInt16(bytes, 0x0A + offset); Flags = bytes[0x0C + offset]; Stream = Helper.GetSubArray(bytes, 0x10 + offset, this.StreamSize); if (!(this.Stream.Length == 0)) { // Instantiate a FileName Object from IndexEntry Stream Entry = new FileName(this.Stream); Filename = Entry.Filename; } }
internal ushort StreamSize; // Length of the stream #endregion Fields #region Constructors internal IndexEntry(byte[] bytes) { RecordNumber = (BitConverter.ToUInt64(bytes, 0x00) & 0x0000FFFFFFFFFFFF); Size = BitConverter.ToUInt16(bytes, 0x08); StreamSize = BitConverter.ToUInt16(bytes, 0x0A); Flags = bytes[0x0C]; Stream = NativeMethods.GetSubArray(bytes, 0x10, this.StreamSize); if (!(this.Stream.Length == 0)) { // Instantiate a FileName Object from IndexEntry Stream Entry = new FileName(this.Stream); Filename = Entry.Filename; } }