Added missing launcher
[mupen64plus-pandora.git] / source / rice_gles / src / ExtendedRender.h
CommitLineData
d07c171f 1/*
2Copyright (C) 2003 Rice1964
3
4This program is free software; you can redistribute it and/or
5modify it under the terms of the GNU General Public License
6as published by the Free Software Foundation; either version 2
7of the License, or (at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program; if not, write to the Free Software
16Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17*/
18
19#ifndef _EXTENDED_RENDER_H_
20#define _EXTENDED_RENDER_H_
21
22#include "RSP_Parser.h"
23#include "RSP_S2DEX.h"
24
25// Define the render extension interface and provide empty implementation of
26// the render extension functions.
27// Real render can either implement or not implement these extended render functions
28
29// These extended render functions are in different groups:
30// - Group #1: Related to frame buffer
31// - Group #2: Related to 2D sprite
32// - Group #3: Related BG and ScaledBG
33class CExtendedRender
34{
35public:
36 virtual ~CExtendedRender() {}
37
38 virtual void DrawFrameBuffer(bool useVIreg=false, uint32 left=0, uint32 top=0, uint32 width=0, uint32 height=0) {};
39 virtual void LoadFrameBuffer(bool useVIreg=false, uint32 left=0, uint32 top=0, uint32 width=0, uint32 height=0) {};
40 virtual void LoadTxtrBufFromRDRAM(void) {};
41 virtual void LoadTxtrBufIntoTexture(void) {};
42
43 virtual void DrawSprite2D(Sprite2DInfo &info, uint32 ucode) {};
44 virtual void LoadSprite2D(Sprite2DInfo &info, uint32 ucode) {};
45
46
47 virtual void DrawSprite(uObjTxSprite &sprite, bool rectR = true) {};
48 virtual void DrawObjBG1CYC(uObjScaleBg &bg, bool scaled=true) {};
49 virtual void DrawObjBGCopy(uObjBg &info) {};
50 virtual void LoadObjBGCopy(uObjBg &info) {};
51 virtual void LoadObjBG1CYC(uObjScaleBg &info) {};
52 virtual void LoadObjSprite(uObjTxSprite &info, bool useTIAddr=false) {};
53
54 virtual void DrawText(const char* str, RECT *rect) {};
55};
56
57
58#endif
59