internal static ArchivePartitionEntry Read(Stream stream) { var pastPos = stream.Position; ArchivePartitionEntry archivepart = BinaryMapping.ReadObject <ArchivePartitionEntry>(stream); archivepart.LocationOffset = pastPos; return(archivepart); }
private static void ReadPartitionLba(IEnumerable <Partition <ArchivePartitionEntry> > partitions, Stream stream, int baseOffset) { stream.Position = baseOffset; foreach (var partition in partitions) { stream.Position = baseOffset + partition.Offset * LbaLength; partition.Lba = Enumerable.Range(0, partition.Count) .Select(x => ArchivePartitionEntry.Read(stream)).ToArray(); } }