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