// /*************************************************************************** // The Disc Image Chef // ---------------------------------------------------------------------------- // // Filename : Structs.cs // Author(s) : Natalia Portillo // // Component : Disk image plugins. // // --[ Description ] ---------------------------------------------------------- // // Contains structures for CDRWin cuesheets (cue/bin). // // --[ 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-2019 Natalia Portillo // ****************************************************************************/ using System.Collections.Generic; using DiscImageChef.CommonTypes; using DiscImageChef.CommonTypes.Interfaces; using DiscImageChef.CommonTypes.Structs; namespace DiscImageChef.DiscImages { public partial class CdrWin { struct CdrWinTrackFile { /// Track # public uint Sequence; /// Filter of file containing track public IFilter Datafilter; /// Offset of track start in file public ulong Offset; /// Type of file public string Filetype; } struct CdrWinTrack { /// Track # public uint Sequence; /// Track title (from CD-Text) public string Title; /// Track genre (from CD-Text) public string Genre; /// Track arranger (from CD-Text) public string Arranger; /// Track composer (from CD-Text) public string Composer; /// Track performer (from CD-Text) public string Performer; /// Track song writer (from CD-Text) public string Songwriter; /// Track ISRC public string Isrc; /// File struct for this track public CdrWinTrackFile Trackfile; /// Indexes on this track public Dictionary Indexes; /// Track pre-gap in sectors public ulong Pregap; /// Track post-gap in sectors public ulong Postgap; /// Digical Copy Permitted public bool FlagDcp; /// Track is quadraphonic public bool Flag4ch; /// Track has preemphasis public bool FlagPre; /// Track has SCMS public bool FlagScms; /// Bytes per sector public ushort Bps; /// Sectors in track public ulong Sectors; /// Track type public string Tracktype; /// Track session public ushort Session; } struct CdrWinDisc { /// Disk title (from CD-Text) public string Title; /// Disk genre (from CD-Text) public string Genre; /// Disk arranger (from CD-Text) public string Arranger; /// Disk composer (from CD-Text) public string Composer; /// Disk performer (from CD-Text) public string Performer; /// Disk song writer (from CD-Text) public string Songwriter; /// Media catalog number public string Mcn; /// Disk type public MediaType Disktype; /// Disk type string public string Disktypestr; /// Disk CDDB ID public string DiskId; /// Disk UPC/EAN public string Barcode; /// Sessions public List Sessions; /// Tracks public List Tracks; /// Disk comment public string Comment; /// File containing CD-Text public string Cdtextfile; /// Has trurip extensions public bool IsTrurip; /// Disc image hashes public Dictionary DiscHashes; } } }