Crazy Eddie's GUI System
0.8.4
Main Page
Related Pages
Namespaces
Classes
Files
File List
All
Classes
Namespaces
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Pages
RendererModules/Null/Texture.h
1
/***********************************************************************
2
created: Fri Jan 15 2010
3
author: Eugene Marcotte
4
*************************************************************************/
5
/***************************************************************************
6
* Copyright (C) 2004 - 2011 Paul D Turner & The CEGUI Development Team
7
*
8
* Permission is hereby granted, free of charge, to any person obtaining
9
* a copy of this software and associated documentation files (the
10
* "Software"), to deal in the Software without restriction, including
11
* without limitation the rights to use, copy, modify, merge, publish,
12
* distribute, sublicense, and/or sell copies of the Software, and to
13
* permit persons to whom the Software is furnished to do so, subject to
14
* the following conditions:
15
*
16
* The above copyright notice and this permission notice shall be
17
* included in all copies or substantial portions of the Software.
18
*
19
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
22
* IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
23
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
24
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
25
* OTHER DEALINGS IN THE SOFTWARE.
26
***************************************************************************/
27
#ifndef _CEGUINullTexture_h_
28
#define _CEGUINullTexture_h_
29
30
#include "../../Texture.h"
31
#include "CEGUI/RendererModules/Null/Renderer.h"
32
33
#if defined(_MSC_VER)
34
# pragma warning(push)
35
# pragma warning(disable : 4251)
36
#endif
37
38
// Start of CEGUI namespace section
39
namespace
CEGUI
40
{
42
class
NULL_GUIRENDERER_API
NullTexture
:
public
Texture
43
{
44
public
:
45
// implement CEGUI::Texture interface
46
const
String
& getName()
const
;
47
const
Sizef
& getSize()
const
;
48
const
Sizef
& getOriginalDataSize()
const
;
49
const
Vector2f
& getTexelScaling()
const
;
50
void
loadFromFile(
const
String
& filename,
const
String
& resourceGroup);
51
void
loadFromMemory(
const
void
* buffer,
const
Sizef
& buffer_size,
52
PixelFormat
pixel_format);
53
void
blitFromMemory(
const
void
* sourceData,
const
Rectf
& area);
54
void
blitToMemory(
void
* targetData);
55
bool
isPixelFormatSupported(
const
PixelFormat
fmt)
const
;
56
57
protected
:
58
// we all need a little help from out friends ;)
59
friend
Texture
&
NullRenderer::createTexture
(
const
String
&);
60
friend
Texture
&
NullRenderer::createTexture
(
const
String
&,
const
String
&,
const
String
&);
61
friend
Texture
&
NullRenderer::createTexture
(
const
String
&,
const
Sizef
&);
62
friend
void
NullRenderer::destroyTexture
(
Texture
&);
63
friend
void
NullRenderer::destroyTexture
(
const
String
&);
64
66
NullTexture
(
const
String
& name);
68
NullTexture
(
const
String
& name,
const
String
& filename,
69
const
String
& resourceGroup);
71
NullTexture
(
const
String
& name,
const
Sizef
& sz);
72
74
virtual
~
NullTexture
();
76
void
updateCachedScaleValues();
77
79
static
uint32
d_textureNumber
;
81
Sizef
d_size
;
83
Sizef
d_dataSize
;
85
Vector2f
d_texelScaling
;
87
const
String
d_name
;
88
};
89
90
}
// End of CEGUI namespace section
91
92
#if defined(_MSC_VER)
93
# pragma warning(pop)
94
#endif
95
96
#endif // end of guard _CEGUINullTexture_h_
cegui
include
CEGUI
RendererModules
Null
Texture.h
Generated by
1.8.3.1