/ src / Ryujinx.Graphics.Gpu / Shader / DiskCache / DiskCacheOutputStreams.cs
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  }