// /*************************************************************************** // Aaru Data Preservation Suite // ---------------------------------------------------------------------------- // // Filename : Constants.cs // Author(s) : Natalia Portillo // // Component : Disk image plugins. // // --[ Description ] ---------------------------------------------------------- // // Contains constants for Aaru Format disk images. // // --[ License ] -------------------------------------------------------------- // // This library is free software; you can redistribute it and/or modify // it under the terms of the GNU Lesser General Public License as // published by the Free Software Foundation; either version 2.1 of the // License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, but // WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, see . // // ---------------------------------------------------------------------------- // Copyright © 2011-2021 Natalia Portillo // ****************************************************************************/ namespace Aaru.DiscImages { public sealed partial class AaruFormat { /// Old magic identifier = "DICMFRMT". const ulong DIC_MAGIC = 0x544D52464D434944; /// Magic identifier = "AARUFRMT". const ulong AARU_MAGIC = 0x544D524655524141; /// /// Image format version. A change in this number indicates an incompatible change to the format that prevents /// older implementations from reading it correctly, if at all. /// const byte AARUFMT_VERSION_V1 = 1; /// Adds new index format with 64-bit entries counter const byte AARUFMT_VERSION = 2; /// Maximum read cache size, 256MiB. const uint MAX_CACHE_SIZE = 256 * 1024 * 1024; /// Size in bytes of LZMA properties. const int LZMA_PROPERTIES_LENGTH = 5; /// Maximum number of entries for the DDT cache. const int MAX_DDT_ENTRY_CACHE = 16000000; /// How many samples are contained in a RedBook sector. const int SAMPLES_PER_SECTOR = 588; /// Maximum number of samples for a FLAC block. Bigger than 4608 gives no benefit. const int MAX_FLAKE_BLOCK = 4608; /// /// Minimum number of samples for a FLAC block. does not support it to be /// smaller than 256. /// const int MIN_FLAKE_BLOCK = 256; /// This mask is to check for flags in CompactDisc suffix/prefix DDT const uint CD_XFIX_MASK = 0xFF000000; /// This mask is to check for position in CompactDisc suffix/prefix deduplicated block const uint CD_DFIX_MASK = 0x00FFFFFF; } }