40 #ifndef _uitextureatlas_h
41 #define _uitextureatlas_h
44 #include "colourvalue.h"
45 #include "uienumerations.h"
53 template<
typename T>
class SharedPtr;
54 typedef SharedPtr<Material> MaterialPtr;
55 typedef SharedPtr<Texture> TexturePtr;
62 struct TextureAtlasInternalData;
89 TextureAtlasInternalData*
TAID;
107 void ParseTexture(
XML::Node& AtlasTextureNode);
109 void ParseFonts(
XML::Node& AtlasFontsNode);
117 void ParseSprites(
XML::Node& AtlasSpritesNode);
119 void Create2DMaterial();
121 void Create3DMaterial();
143 const String& GetName()
const;
154 FontDataContainer& GetFonts();
161 SpriteContainer& GetSprites();
167 Real GetWhitePixelX()
const;
170 Real GetWhitePixelY()
const;
173 Vector2 GetTextureSize()
const;
176 Real GetInvTextureCoordsX()
const;
179 Real GetInvTextureCoordsY()
const;
199 Ogre::Pass* _Get2DPass()
const;
203 Ogre::Pass* _Get3DPass()
const;
This class represents a collection of Glyphs in a common visual style.
SpriteContainer::const_iterator ConstSpriteIterator
Const Iterator type for images stored in this class.
This is a collection of smaller textures packed into a larger texture, intended to increase UI perfor...
SpriteContainer::iterator SpriteIterator
Iterator type for images stored in this class.
Vector2 WhitePixel
A known position on the atlas where the pixel is flat white. Surrounding pixels should also be white...
float Real
A Datatype used to represent a real floating point number.
FontDataContainer Fonts
A container of the fonts packed into this atlas.
SpriteContainer Sprites
A container of the images packed into this atlas.
FontDataContainer::const_iterator ConstFontDataIterator
Const Iterator type for fonts stored in this class.
Vector2 InverseTextureSize
This is (Size / 1) on the X and Y. Useful for doing math.
A light-weight handle for manipulating nodes in DOM tree.
uint32_t UInt32
An 32-bit unsigned integer.
This is used to represent a point on a 2 dimentional area, such as a screen.
TextureAtlasInternalData * TAID
A pointer to internal rendering data that cannot be exposed here.
std::map< String, FontData * > FontDataContainer
Container type for storing fonts packed into this atlas.
String AtlasName
The name of this atlas.
std::map< String, Sprite * > SpriteContainer
Container type for storing images packed into this atlas.
FontDataContainer::iterator FontDataIterator
Iterator type for fonts stored in this class.
The bulk of the engine components go in this namspace.
Basic class used to describe a portion of a texture to be applied to a Quad.
std::string String
A datatype used to a series of characters.