protected override FileBase CreateFileAsFormatImpl(FileFormat aFormat, FileChunkStorageType aChunkStorageType, CompressionType aCompressionType, uint aMaxChunks, uint aSingleMipChunkArea) { FileBase fileBase = (FileBase)null; switch (aFormat) { case FileFormat.General: fileBase = (FileBase) new GeneralFile(aChunkStorageType, this.ArchiveName); break; case FileFormat.DDS: case FileFormat.XBoxDDS: fileBase = (FileBase) new ImageDDSFile(aChunkStorageType, this.ArchiveName, aMaxChunks, aSingleMipChunkArea); break; case FileFormat.GNF: fileBase = (FileBase) new ImageGNFFile(aChunkStorageType, this.ArchiveName, aMaxChunks, aSingleMipChunkArea); break; } fileBase.LoadFromFile(this.looseFilename, aCompressionType); return(fileBase); }