public static ResourceFile FileFromStream(BinaryReader rd, ResourceSpring owner) { ResourceFile file = new ResourceFile(owner); file.handler = rd.ReadString(); file.length = rd.ReadInt64(); file.offset = rd.ReadInt64(); return(file); }
public static void BuildFile(FileInfo file, ResourceDirectory parent, ResourceSpring target) { ResourceFile new_file = new ResourceFile(target); new_file.source_file = file.FullName; new_file.parent = parent; new_file.name = file.Name; parent.entries.Add(new_file); }
internal static ResourceDirectory DirFromStream(BinaryReader rd, ResourceSpring owner) { ResourceDirectory ret = new ResourceDirectory(owner); int count = rd.ReadInt32(); for (int i = 0; i < count; i++) { var entry = ResourceEntry.FromStream(rd, owner); entry.parent = ret; ret.entries.Add(entry); } return ret; }
internal static ResourceDirectory DirFromStream(BinaryReader rd, ResourceSpring owner) { ResourceDirectory ret = new ResourceDirectory(owner); int count = rd.ReadInt32(); for (int i = 0; i < count; i++) { var entry = ResourceEntry.FromStream(rd, owner); entry.parent = ret; ret.entries.Add(entry); } return(ret); }
internal static ResourceEntry FromStream(BinaryReader rd, ResourceSpring owner) { string name = rd.ReadString(); int type = rd.ReadInt32(); switch (type) { case 0: return(ResourceDirectory.DirFromStream(rd, owner)); case 1: return(ResourceFile.FileFromStream(rd, owner)); default: throw new InvalidDataException("Unexpected entrytype"); } }
public static void BuildSpring(System.IO.DirectoryInfo directory, string output) { ResourceSpring spring = new ResourceSpring(); BuildDirectory(directory, spring.root, spring); }
internal ResourceFile(ResourceSpring owner) : base(owner) { }
internal ResourceFile(ResourceSpring owner, ResourceDirectory parent) : base(owner, parent) { }
public ResourceDirectory(ResourceSpring spring) : base(spring, null) { }
internal static ResourceEntry FromStream(BinaryReader rd, ResourceSpring owner) { string name = rd.ReadString(); int type = rd.ReadInt32(); switch (type) { case 0: return ResourceDirectory.DirFromStream(rd, owner); case 1: return ResourceFile.FileFromStream(rd, owner); default: throw new InvalidDataException("Unexpected entrytype"); } }
public static ResourceFile FileFromStream(BinaryReader rd, ResourceSpring owner) { ResourceFile file = new ResourceFile(owner); file.handler = rd.ReadString(); file.length = rd.ReadInt64(); file.offset = rd.ReadInt64(); return file; }
public ResourceDirectory(ResourceSpring spring, ResourceDirectory parent) : base(spring, parent) { }
public static void BuildDirectory(DirectoryInfo dir, ResourceDirectory parent, ResourceSpring target) { var dirs = dir.GetDirectories(); foreach (var d in dirs) { ResourceDirectory new_dir = new ResourceDirectory(target); new_dir.name = d.Name; new_dir.parent = parent; parent.entries.Add(new_dir); BuildDirectory(d, new_dir, target); } var files = dir.GetFiles(); foreach (var file in files) BuildFile(file, parent, target); }
public static void BuildDirectory(DirectoryInfo dir, ResourceDirectory parent, ResourceSpring target) { var dirs = dir.GetDirectories(); foreach (var d in dirs) { ResourceDirectory new_dir = new ResourceDirectory(target); new_dir.name = d.Name; new_dir.parent = parent; parent.entries.Add(new_dir); BuildDirectory(d, new_dir, target); } var files = dir.GetFiles(); foreach (var file in files) { BuildFile(file, parent, target); } }
internal ResourceEntry(ResourceSpring spring) { this.owner = spring; }
internal ResourceEntry(ResourceSpring spring, ResourceDirectory parent) { this.parent = parent; this.owner = spring; }