mirror of
https://github.com/aaru-dps/Aaru.git
synced 2025-12-16 11:14:25 +00:00
186 lines
5.2 KiB
C#
186 lines
5.2 KiB
C#
// /***************************************************************************
|
|
// Aaru Data Preservation Suite
|
|
// ----------------------------------------------------------------------------
|
|
//
|
|
// Filename : Enums.cs
|
|
// Author(s) : Natalia Portillo <claunia@claunia.com>
|
|
//
|
|
// Component : Device structures decoders.
|
|
//
|
|
// --[ Description ] ----------------------------------------------------------
|
|
//
|
|
// Contains various DVD enumerations.
|
|
//
|
|
// --[ 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 <http://www.gnu.org/licenses/>.
|
|
//
|
|
// ----------------------------------------------------------------------------
|
|
// Copyright © 2011-2023 Natalia Portillo
|
|
// ****************************************************************************/
|
|
|
|
|
|
// ReSharper disable UnusedMember.Global
|
|
// ReSharper disable InconsistentNaming
|
|
// ReSharper disable UnusedType.Global
|
|
|
|
namespace Aaru.Decoders.DVD;
|
|
|
|
#region Public enumerations
|
|
|
|
public enum DiskCategory : byte
|
|
{
|
|
/// <summary>DVD-ROM. Version 1 is ECMA-267 and ECMA-268.</summary>
|
|
DVDROM = 0,
|
|
/// <summary>DVD-RAM. Version 1 is ECMA-272. Version 6 is ECMA-330.</summary>
|
|
DVDRAM = 1,
|
|
/// <summary>DVD-R. Version 1 is ECMA-279. Version 5 is ECMA-359. Version 6 is ECMA-382.</summary>
|
|
DVDR = 2,
|
|
/// <summary>DVD-RW. Version 2 is ECMA-338. Version 3 is ECMA-384.</summary>
|
|
DVDRW = 3,
|
|
/// <summary>HD DVD-ROM</summary>
|
|
HDDVDROM = 4,
|
|
/// <summary>HD DVD-RAM</summary>
|
|
HDDVDRAM = 5,
|
|
/// <summary>HD DVD-R</summary>
|
|
HDDVDR = 6,
|
|
/// <summary>HD DVD-RW</summary>
|
|
HDDVDRW = 7,
|
|
/// <summary>UMD. Version 0 is ECMA-365.</summary>
|
|
UMD = 8,
|
|
/// <summary>DVD+RW. Version 1 is ECMA-274. Version 2 is ECMA-337. Version 3 is ECMA-371.</summary>
|
|
DVDPRW = 9,
|
|
/// <summary>DVD+R. Version 1 is ECMA-349.</summary>
|
|
DVDPR = 10,
|
|
/// <summary>DVD+RW DL. Version 1 is ECMA-374.</summary>
|
|
DVDPRWDL = 13,
|
|
/// <summary>DVD+R DL. Version 1 is ECMA-364.</summary>
|
|
DVDPRDL = 14,
|
|
/// <summary>According to standards this value is reserved. It's used by Nintendo GODs and WODs.</summary>
|
|
Nintendo = 15
|
|
}
|
|
|
|
public enum MaximumRateField : byte
|
|
{
|
|
/// <summary>2.52 Mbps</summary>
|
|
TwoMbps = 0x00,
|
|
/// <summary>5.04 Mbps</summary>
|
|
FiveMbps = 0x01,
|
|
/// <summary>10.08 Mbps</summary>
|
|
TenMbps = 0x02,
|
|
/// <summary>20.16 Mbps</summary>
|
|
TwentyMbps = 0x03,
|
|
/// <summary>30.24 Mbps</summary>
|
|
ThirtyMbps = 0x04,
|
|
Unspecified = 0x0F
|
|
}
|
|
|
|
public enum LayerTypeFieldMask : byte
|
|
{
|
|
Embossed = 0x01,
|
|
Recordable = 0x02,
|
|
Rewritable = 0x04,
|
|
Reserved = 0x08
|
|
}
|
|
|
|
public enum LinearDensityField : byte
|
|
{
|
|
/// <summary>0.267 μm/bit</summary>
|
|
TwoSix = 0x00,
|
|
/// <summary>0.293 μm/bit</summary>
|
|
TwoNine = 0x01,
|
|
/// <summary>0.409 to 0.435 μm/bit</summary>
|
|
FourZero = 0x02,
|
|
/// <summary>0.280 to 0.291 μm/bit</summary>
|
|
TwoEight = 0x04,
|
|
/// <summary>0.153 μm/bit</summary>
|
|
OneFive = 0x05,
|
|
/// <summary>0.130 to 0.140 μm/bit</summary>
|
|
OneThree = 0x06,
|
|
/// <summary>0.353 μm/bit</summary>
|
|
ThreeFive = 0x08
|
|
}
|
|
|
|
public enum TrackDensityField : byte
|
|
{
|
|
/// <summary>0.74 μm/track</summary>
|
|
Seven = 0x00,
|
|
/// <summary>0.80 μm/track</summary>
|
|
Eight = 0x01,
|
|
/// <summary>0.615 μm/track</summary>
|
|
Six = 0x02,
|
|
/// <summary>0.40 μm/track</summary>
|
|
Four = 0x03,
|
|
/// <summary>0.34 μm/track</summary>
|
|
Three = 0x04
|
|
}
|
|
|
|
public enum CopyrightType : byte
|
|
{
|
|
/// <summary>There is no copy protection</summary>
|
|
NoProtection = 0x00,
|
|
/// <summary>Copy protection is CSS/CPPM</summary>
|
|
CSS = 0x01,
|
|
/// <summary>Copy protection is CPRM</summary>
|
|
CPRM = 0x02,
|
|
/// <summary>Copy protection is AACS</summary>
|
|
AACS = 0x10
|
|
}
|
|
|
|
public enum WPDiscTypes : byte
|
|
{
|
|
/// <summary>Should not write without a cartridge</summary>
|
|
DoNotWrite = 0x00,
|
|
/// <summary>Can write without a cartridge</summary>
|
|
CanWrite = 0x01,
|
|
Reserved1 = 0x02,
|
|
Reserved2 = 0x03
|
|
}
|
|
|
|
public enum DVDSize
|
|
{
|
|
/// <summary>120 mm</summary>
|
|
OneTwenty = 0,
|
|
/// <summary>80 mm</summary>
|
|
Eighty = 1
|
|
}
|
|
|
|
public enum DVDRAMDiscType
|
|
{
|
|
/// <summary>Shall not be recorded without a case</summary>
|
|
Cased = 0,
|
|
/// <summary>May be recorded without a case or within one</summary>
|
|
Uncased = 1
|
|
}
|
|
|
|
public enum DVDLayerStructure
|
|
{
|
|
Unspecified = 0,
|
|
InvertedStack = 1,
|
|
TwoP = 2,
|
|
Reserved = 3
|
|
}
|
|
|
|
public enum DVDRecordingSpeed
|
|
{
|
|
None = 0,
|
|
Two = 0,
|
|
Four = 0x10,
|
|
Six = 0x20,
|
|
Eight = 0x30,
|
|
Ten = 0x40,
|
|
Twelve = 0x50
|
|
}
|
|
|
|
#endregion |