DiskCacheOutputStreams.cs
1 using System; 2 using System.IO; 3 4 namespace Ryujinx.Graphics.Gpu.Shader.DiskCache 5 { 6 /// <summary> 7 /// Output streams for the disk shader cache. 8 /// </summary> 9 class DiskCacheOutputStreams : IDisposable 10 { 11 /// <summary> 12 /// Shared table of contents (TOC) file stream. 13 /// </summary> 14 public readonly FileStream TocFileStream; 15 16 /// <summary> 17 /// Shared data file stream. 18 /// </summary> 19 public readonly FileStream DataFileStream; 20 21 /// <summary> 22 /// Host table of contents (TOC) file stream. 23 /// </summary> 24 public readonly FileStream HostTocFileStream; 25 26 /// <summary> 27 /// Host data file stream. 28 /// </summary> 29 public readonly FileStream HostDataFileStream; 30 31 /// <summary> 32 /// Creates a new instance of a disk cache output stream container. 33 /// </summary> 34 /// <param name="tocFileStream">Stream for the shared table of contents file</param> 35 /// <param name="dataFileStream">Stream for the shared data file</param> 36 /// <param name="hostTocFileStream">Stream for the host table of contents file</param> 37 /// <param name="hostDataFileStream">Stream for the host data file</param> 38 public DiskCacheOutputStreams(FileStream tocFileStream, FileStream dataFileStream, FileStream hostTocFileStream, FileStream hostDataFileStream) 39 { 40 TocFileStream = tocFileStream; 41 DataFileStream = dataFileStream; 42 HostTocFileStream = hostTocFileStream; 43 HostDataFileStream = hostDataFileStream; 44 } 45 46 /// <summary> 47 /// Disposes the output file streams. 48 /// </summary> 49 public void Dispose() 50 { 51 TocFileStream.Dispose(); 52 DataFileStream.Dispose(); 53 HostTocFileStream.Dispose(); 54 HostDataFileStream.Dispose(); 55 } 56 } 57 }