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