mirror of
https://github.com/GreemDev/Ryujinx.git
synced 2024-12-22 19:15:47 +00:00
4da44e09cb
* 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
31 lines
No EOL
689 B
C#
31 lines
No EOL
689 B
C#
using Ryujinx.Common;
|
|
|
|
namespace Ryujinx.Graphics.GAL
|
|
{
|
|
public readonly struct Extents2D
|
|
{
|
|
public int X1 { get; }
|
|
public int Y1 { get; }
|
|
public int X2 { get; }
|
|
public int Y2 { get; }
|
|
|
|
public Extents2D(int x1, int y1, int x2, int y2)
|
|
{
|
|
X1 = x1;
|
|
Y1 = y1;
|
|
X2 = x2;
|
|
Y2 = y2;
|
|
}
|
|
|
|
public Extents2D Reduce(int level)
|
|
{
|
|
int div = 1 << level;
|
|
|
|
return new Extents2D(
|
|
X1 >> level,
|
|
Y1 >> level,
|
|
BitUtils.DivRoundUp(X2, div),
|
|
BitUtils.DivRoundUp(Y2, div));
|
|
}
|
|
}
|
|
} |