diff --git a/DiscImageChef.DiscImages/CDRDAO.cs b/DiscImageChef.DiscImages/CDRDAO.cs
index 1302eae39..97b1093fd 100644
--- a/DiscImageChef.DiscImages/CDRDAO.cs
+++ b/DiscImageChef.DiscImages/CDRDAO.cs
@@ -46,7 +46,7 @@ namespace DiscImageChef.DiscImages
{
// TODO: Doesn't support compositing from several files
// TODO: Doesn't support silences that are not in files
- public class Cdrdao : IMediaImage
+ public class Cdrdao : IWritableImage
{
/// Audio track, 2352 bytes/sector
const string CDRDAO_TRACK_TYPE_AUDIO = "AUDIO";
@@ -101,13 +101,20 @@ namespace DiscImageChef.DiscImages
const string REGEX_LANGUAGE_MAP = @"^\s*LANGUAGE_MAP\s*\{";
const string REGEX_LANGUAGE_MAPPING = @"^\s*(?\d+)\s?\:\s?(?\d+|\w+)";
- IFilter cdrdaoFilter;
- CdrdaoDisc discimage;
- ImageInfo imageInfo;
- Stream imageStream;
+ IFilter cdrdaoFilter;
+ StreamWriter descriptorStream;
+ CdrdaoDisc discimage;
+ ImageInfo imageInfo;
+ Stream imageStream;
/// Dictionary, index is track #, value is TrackFile
- Dictionary offsetmap;
- StreamReader tocStream;
+ Dictionary offsetmap;
+ bool separateTracksWriting;
+ StreamReader tocStream;
+ Dictionary trackFlags;
+ Dictionary trackIsrcs;
+ string writingBaseName;
+ Dictionary writingStreams;
+ List