2018-06-24 01:39:25 +01:00
|
|
|
using System;
|
|
|
|
|
|
|
|
namespace Ryujinx.Graphics.Gal
|
|
|
|
{
|
|
|
|
public interface IGalFrameBuffer
|
|
|
|
{
|
2018-08-20 02:25:26 +01:00
|
|
|
void BindColor(long Key, int Attachment);
|
2018-06-24 01:39:25 +01:00
|
|
|
|
2018-08-20 02:25:26 +01:00
|
|
|
void UnbindColor(int Attachment);
|
|
|
|
|
|
|
|
void BindZeta(long Key);
|
|
|
|
|
|
|
|
void UnbindZeta();
|
2018-06-24 01:39:25 +01:00
|
|
|
|
|
|
|
void BindTexture(long Key, int Index);
|
|
|
|
|
|
|
|
void Set(long Key);
|
|
|
|
|
|
|
|
void Set(byte[] Data, int Width, int Height);
|
|
|
|
|
2018-07-23 15:21:05 +01:00
|
|
|
void SetTransform(bool FlipX, bool FlipY, int Top, int Left, int Right, int Bottom);
|
2018-06-24 01:39:25 +01:00
|
|
|
|
|
|
|
void SetWindowSize(int Width, int Height);
|
|
|
|
|
|
|
|
void SetViewport(int X, int Y, int Width, int Height);
|
|
|
|
|
|
|
|
void Render();
|
|
|
|
|
2018-07-19 06:30:21 +01:00
|
|
|
void Copy(
|
|
|
|
long SrcKey,
|
|
|
|
long DstKey,
|
|
|
|
int SrcX0,
|
|
|
|
int SrcY0,
|
|
|
|
int SrcX1,
|
|
|
|
int SrcY1,
|
|
|
|
int DstX0,
|
|
|
|
int DstY0,
|
|
|
|
int DstX1,
|
|
|
|
int DstY1);
|
|
|
|
|
2018-06-24 01:39:25 +01:00
|
|
|
void GetBufferData(long Key, Action<byte[]> Callback);
|
2018-07-19 06:30:21 +01:00
|
|
|
|
|
|
|
void SetBufferData(
|
|
|
|
long Key,
|
|
|
|
int Width,
|
|
|
|
int Height,
|
|
|
|
byte[] Buffer);
|
2018-06-24 01:39:25 +01:00
|
|
|
}
|
|
|
|
}
|