diff options
| author | Andrey Sukharev <SukharevAndrey@users.noreply.github.com> | 2022-12-05 16:47:39 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-12-05 14:47:39 +0100 |
| commit | 4da44e09cb2a32f69b4a6b47221117b78e4618dc (patch) | |
| tree | c3648a09202374dabff6fac472fe341bf9e1f0ee /Ryujinx.Graphics.Gpu/Image | |
| parent | ae13f0ab4da5b371bba746c1bd6598baaa44585d (diff) | |
Make structs readonly when applicable (#4002)
* Make all structs readonly when applicable. It should reduce amount of needless defensive copies
* Make structs with trivial boilerplate equality code record structs
* Remove unnecessary readonly modifiers from TextureCreateInfo
* Make BitMap structs readonly too
Diffstat (limited to 'Ryujinx.Graphics.Gpu/Image')
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Image/FormatInfo.cs | 2 | ||||
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Image/TextureBindingInfo.cs | 2 | ||||
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Image/TextureCache.cs | 2 | ||||
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Image/TextureGroup.cs | 2 | ||||
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Image/TextureInfo.cs | 2 |
5 files changed, 5 insertions, 5 deletions
diff --git a/Ryujinx.Graphics.Gpu/Image/FormatInfo.cs b/Ryujinx.Graphics.Gpu/Image/FormatInfo.cs index 62f41cbb..9ee649d2 100644 --- a/Ryujinx.Graphics.Gpu/Image/FormatInfo.cs +++ b/Ryujinx.Graphics.Gpu/Image/FormatInfo.cs @@ -5,7 +5,7 @@ namespace Ryujinx.Graphics.Gpu.Image /// <summary> /// Represents texture format information. /// </summary> - struct FormatInfo + readonly struct FormatInfo { /// <summary> /// A default, generic RGBA8 texture format. diff --git a/Ryujinx.Graphics.Gpu/Image/TextureBindingInfo.cs b/Ryujinx.Graphics.Gpu/Image/TextureBindingInfo.cs index be94f310..febe508b 100644 --- a/Ryujinx.Graphics.Gpu/Image/TextureBindingInfo.cs +++ b/Ryujinx.Graphics.Gpu/Image/TextureBindingInfo.cs @@ -7,7 +7,7 @@ namespace Ryujinx.Graphics.Gpu.Image /// Texture binding information. /// This is used for textures that needs to be accessed from shaders. /// </summary> - struct TextureBindingInfo + readonly struct TextureBindingInfo { /// <summary> /// Shader sampler target type. diff --git a/Ryujinx.Graphics.Gpu/Image/TextureCache.cs b/Ryujinx.Graphics.Gpu/Image/TextureCache.cs index a6bb5741..16bfc693 100644 --- a/Ryujinx.Graphics.Gpu/Image/TextureCache.cs +++ b/Ryujinx.Graphics.Gpu/Image/TextureCache.cs @@ -16,7 +16,7 @@ namespace Ryujinx.Graphics.Gpu.Image /// </summary> class TextureCache : IDisposable { - private struct OverlapInfo + private readonly struct OverlapInfo { public TextureViewCompatibility Compatibility { get; } public int FirstLayer { get; } diff --git a/Ryujinx.Graphics.Gpu/Image/TextureGroup.cs b/Ryujinx.Graphics.Gpu/Image/TextureGroup.cs index 9efd1802..ca54dc2f 100644 --- a/Ryujinx.Graphics.Gpu/Image/TextureGroup.cs +++ b/Ryujinx.Graphics.Gpu/Image/TextureGroup.cs @@ -14,7 +14,7 @@ namespace Ryujinx.Graphics.Gpu.Image /// <summary> /// An overlapping texture group with a given view compatibility. /// </summary> - struct TextureIncompatibleOverlap + readonly struct TextureIncompatibleOverlap { public readonly TextureGroup Group; public readonly TextureViewCompatibility Compatibility; diff --git a/Ryujinx.Graphics.Gpu/Image/TextureInfo.cs b/Ryujinx.Graphics.Gpu/Image/TextureInfo.cs index 571f440e..65cc698b 100644 --- a/Ryujinx.Graphics.Gpu/Image/TextureInfo.cs +++ b/Ryujinx.Graphics.Gpu/Image/TextureInfo.cs @@ -6,7 +6,7 @@ namespace Ryujinx.Graphics.Gpu.Image /// <summary> /// Texture information. /// </summary> - struct TextureInfo + readonly struct TextureInfo { /// <summary> /// Address of the texture in GPU mapped memory. |
