namespace BurnOutSharp.Models.MoPaQ { /// /// MPQ (MoPaQ) is an archive format developed by Blizzard Entertainment, /// purposed for storing data files, images, sounds, music and videos for /// their games. The name MoPaQ comes from the author of the format, /// Mike O'Brien (Mike O'brien PaCK). /// /// public class Archive { // TODO: Data before archive, ignored /// /// MPQ User Data (optional) /// public UserData UserData { get; set; } /// /// MPQ Header (required) /// public ArchiveHeader ArchiveHeader { get; set; } // TODO: Files (optional) // TODO: Special files (optional) /// /// HET Table (optional) /// public HetTable HetTable { get; set; } /// /// BET Table (optional) /// public BetTable BetTable { get; set; } /// /// Hash Table (optional) /// public HashEntry[] HashTable { get; set; } /// /// Block Table (optional) /// public BlockEntry[] BlockTable { get; set; } /// /// Hi-Block Table (optional) /// /// /// Since World of Warcraft - The Burning Crusade, Blizzard extended /// the MPQ format to support archives larger than 4GB. The hi-block /// table holds the higher 16-bits of the file position in the MPQ. /// Hi-block table is plain array of 16-bit values. This table is /// not encrypted. /// public short[] HiBlockTable { get; set; } // TODO: Strong digital signature } }