public FatDataStream(FatFileSystem fat, DirectoryEntry entry, bool ignoreSize) : this(fat, (uint)(entry.fstClusHI << 16) | entry.fstClusLO) { if (!ignoreSize) { _length = entry.fileSize; } }
public FatDataStream(FatFileSystem fat, uint firstCluster) { _fat = fat; _base = fat.GetStream(); _clusters = fat.GetClusterChain(firstCluster); _length = (uint)_clusters.Length * fat.BytesPerCluster; }
public static IEnumerable <DirectoryEntry> ReadRootDirectory(FatFileSystem fat, bool includeDeleted = false) { var stream = fat.GetStream(); stream.Position = (fat.ReservedSectors + fat.ClusterMapsSectors) * fat.BiosParameterBlock.BytesPerLogicalSector; return(ReadDirectory(stream, fat.BiosParameterBlock.RootDirectoryEntries, includeDeleted)); }
public FatDirectory(FatFileSystem fat, DirectoryEntry entry, LongDirectoryEntry[]?lfnEntries, Directory parent) : base(fat, parent) { this.entry = entry; this.lfnEntries = lfnEntries; }
public FatDirectory(FatFileSystem fat) : base(fat, null) { }
public static IEnumerable <DirectoryEntry> ReadSubdirectory(FatFileSystem fat, uint cluster, bool includeDeleted = false) => ReadDirectory(new FatDataStream(fat, cluster), int.MaxValue, includeDeleted);
public FatDataStream(FatFileSystem fat, DirectoryEntry entry) : this(fat, entry, false) { }
public FatFile(FatFileSystem fat, DirectoryEntry entry, LongDirectoryEntry[]?lfnEntries, Directory dir) : base(fat, dir) { this.entry = entry; this.lfnEntries = lfnEntries; }