Started working on file extraction
This commit is contained in:
@@ -7,6 +7,7 @@ const Archive = @import("archive.zig");
|
|||||||
const DirEntry = @import("directory.zig");
|
const DirEntry = @import("directory.zig");
|
||||||
const ExtractionOptions = @import("options.zig");
|
const ExtractionOptions = @import("options.zig");
|
||||||
const Inode = @import("inode.zig");
|
const Inode = @import("inode.zig");
|
||||||
|
const DataExtractor = @import("util/data_extractor.zig");
|
||||||
const MetadataReader = @import("util/metadata.zig");
|
const MetadataReader = @import("util/metadata.zig");
|
||||||
|
|
||||||
const File = @This();
|
const File = @This();
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
const BlockSize = @import("inode_data/file.zig").BlockSize;
|
||||||
|
|
||||||
|
pub const FragEntry = extern struct {
|
||||||
|
start: u64,
|
||||||
|
size: BlockSize,
|
||||||
|
_: u32,
|
||||||
|
};
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
//! DataReader reads a regular file's data linearly from start to finish using Io.Reader interface.
|
||||||
|
|
||||||
|
const std = @import("std");
|
||||||
|
const Io = std.Io;
|
||||||
|
|
||||||
|
const BlockSize = @import("../inode_data/file.zig").BlockSize;
|
||||||
|
const Decompressor = @import("decompressor.zig");
|
||||||
|
const OffsetFile = @import("offset_file.zig");
|
||||||
|
|
||||||
|
const DataExtractor = @This();
|
||||||
|
|
||||||
|
fil: OffsetFile,
|
||||||
|
decomp: *const Decompressor,
|
||||||
|
block_size: u32,
|
||||||
|
|
||||||
|
file_size: u64,
|
||||||
|
cur_offset: u64,
|
||||||
|
blocks: []BlockSize,
|
||||||
|
|
||||||
|
interface: Io.Reader,
|
||||||
Reference in New Issue
Block a user