MyGUI
3.0.1
Main Page
Related Pages
Namespaces
Data Structures
Files
Examples
File List
Globals
MyGUIEngine
include
MyGUI_RenderManager.h
Go to the documentation of this file.
1
7
/*
8
This file is part of MyGUI.
9
10
MyGUI is free software: you can redistribute it and/or modify
11
it under the terms of the GNU Lesser General Public License as published by
12
the Free Software Foundation, either version 3 of the License, or
13
(at your option) any later version.
14
15
MyGUI is distributed in the hope that it will be useful,
16
but WITHOUT ANY WARRANTY; without even the implied warranty of
17
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
GNU Lesser General Public License for more details.
19
20
You should have received a copy of the GNU Lesser General Public License
21
along with MyGUI. If not, see <http://www.gnu.org/licenses/>.
22
*/
23
#ifndef __MYGUI_RENDER_MANAGER_H__
24
#define __MYGUI_RENDER_MANAGER_H__
25
26
#include "
MyGUI_Prerequest.h
"
27
#include "
MyGUI_RenderFormat.h
"
28
#include "
MyGUI_ITexture.h
"
29
#include "
MyGUI_IVertexBuffer.h
"
30
#include "
MyGUI_IRenderTarget.h
"
31
32
namespace
MyGUI
33
{
34
35
class
MYGUI_EXPORT
RenderManager
36
{
37
public
:
38
RenderManager
();
39
virtual
~
RenderManager
() = 0;
40
41
static
RenderManager
& getInstance();
42
static
RenderManager
* getInstancePtr();
43
44
virtual
IVertexBuffer
* createVertexBuffer() = 0;
45
virtual
void
destroyVertexBuffer(
IVertexBuffer
* _buffer) = 0;
46
47
virtual
ITexture
* createTexture(
const
std::string& _name) = 0;
48
virtual
void
destroyTexture(
ITexture
* _texture) = 0;
49
virtual
ITexture
* getTexture(
const
std::string& _name) = 0;
50
51
//FIXME возможно перенести в структуру о рендер таргете
52
virtual
const
IntSize
& getViewSize()
const
= 0;
53
54
virtual
VertexColourType
getVertexFormat() = 0;
55
56
virtual
bool
isFormatSupported
(
PixelFormat
_format,
TextureUsage
_usage) {
return
true
; }
57
58
#if MYGUI_DEBUG_MODE == 1
59
virtual
bool
checkTexture(
ITexture
* _texture) {
return
true
; }
60
#endif
61
62
private
:
63
static
RenderManager* msInstance;
64
bool
mIsInitialise;
65
};
66
67
}
// namespace MyGUI
68
69
#endif // __MYGUI_RENDER_MANAGER_H__
Generated by
1.8.1.2