2018-07-19 20:02:51 +01:00
|
|
|
using System;
|
|
|
|
|
2018-06-24 01:39:25 +01:00
|
|
|
namespace Ryujinx.Graphics.Gal
|
|
|
|
{
|
|
|
|
public interface IGalRasterizer
|
|
|
|
{
|
2018-07-10 03:01:59 +01:00
|
|
|
void LockCaches();
|
|
|
|
void UnlockCaches();
|
|
|
|
|
2018-08-10 05:09:40 +01:00
|
|
|
void ClearBuffers(
|
|
|
|
GalClearBufferFlags Flags,
|
2018-08-20 02:25:26 +01:00
|
|
|
int Attachment,
|
2018-10-17 22:02:23 +01:00
|
|
|
float Red,
|
|
|
|
float Green,
|
|
|
|
float Blue,
|
|
|
|
float Alpha,
|
2018-08-10 05:09:40 +01:00
|
|
|
float Depth,
|
|
|
|
int Stencil);
|
2018-06-24 01:39:25 +01:00
|
|
|
|
|
|
|
bool IsVboCached(long Key, long DataSize);
|
|
|
|
|
|
|
|
bool IsIboCached(long Key, long DataSize);
|
|
|
|
|
2018-07-19 20:02:51 +01:00
|
|
|
void CreateVbo(long Key, int DataSize, IntPtr HostAddress);
|
2018-06-24 01:39:25 +01:00
|
|
|
|
2018-07-19 20:02:51 +01:00
|
|
|
void CreateIbo(long Key, int DataSize, IntPtr HostAddress);
|
2018-10-13 02:37:01 +01:00
|
|
|
void CreateIbo(long Key, int DataSize, byte[] Buffer);
|
2018-06-24 01:39:25 +01:00
|
|
|
|
2018-07-10 03:01:59 +01:00
|
|
|
void SetIndexArray(int Size, GalIndexFormat Format);
|
2018-06-24 01:39:25 +01:00
|
|
|
|
2018-09-18 05:30:35 +01:00
|
|
|
void DrawArrays(int First, int Count, GalPrimitiveType PrimType);
|
2018-06-24 01:39:25 +01:00
|
|
|
|
2018-06-29 00:48:18 +01:00
|
|
|
void DrawElements(long IboKey, int First, int VertexBase, GalPrimitiveType PrimType);
|
2018-06-24 01:39:25 +01:00
|
|
|
}
|
|
|
|
}
|