27 #ifndef _CEGUIIrrlichtTexture_h_ 28 #define _CEGUIIrrlichtTexture_h_ 30 #include "CEGUI/RendererModules/Irrlicht/RendererDef.h" 31 #include "../../Texture.h" 32 #include "CEGUI/RendererModules/Irrlicht/Renderer.h" 46 class IrrlichtRenderer;
49 class IRR_GUIRENDERER_API IrrlichtTexture :
public Texture
53 void setIrrlichtTexture(irr::video::ITexture* tex);
56 irr::video::ITexture* getIrrlichtTexture()
const;
65 void setOriginalDataSize(
const Sizef& sz);
68 static std::string getUniqueName();
71 const String& getName()
const;
72 const Sizef& getSize()
const;
73 const Sizef& getOriginalDataSize()
const;
74 const Vector2f& getTexelScaling()
const;
75 void loadFromFile(
const String& filename,
const String& resourceGroup);
76 void loadFromMemory(
const void* buffer,
const Sizef& buffer_size,
77 PixelFormat pixel_format);
78 void blitFromMemory(
const void* sourceData,
const Rectf& area);
79 void blitToMemory(
void* targetData);
80 bool isPixelFormatSupported(
const PixelFormat fmt)
const;
84 friend Texture& IrrlichtRenderer::createTexture(
const String&);
85 friend Texture& IrrlichtRenderer::createTexture(
const String&,
const String&,
87 friend Texture& IrrlichtRenderer::createTexture(
const String&,
const Sizef&);
88 friend void IrrlichtRenderer::destroyTexture(Texture&);
89 friend void IrrlichtRenderer::destroyTexture(
const String&);
92 IrrlichtTexture(IrrlichtRenderer& owner, irr::video::IVideoDriver& driver,
95 IrrlichtTexture(IrrlichtRenderer& owner, irr::video::IVideoDriver& driver,
96 const String& name,
const String& filename,
97 const String& resourceGroup);
99 IrrlichtTexture(IrrlichtRenderer& owner, irr::video::IVideoDriver& driver,
100 const String& name,
const Sizef& size);
105 void createIrrlichtTexture(
const Sizef& sz);
108 void freeIrrlichtTexture();
111 void updateCachedScaleValues();
114 static uint32 d_textureNumber;
116 irr::video::IVideoDriver& d_driver;
118 irr::video::ITexture* d_texture;
124 Vector2f d_texelScaling;
126 IrrlichtRenderer& d_owner;
133 #endif // end of guard _CEGUIIrrlichtTexture_h_ Main namespace for Crazy Eddie's GUI Library.
Definition: cegui/include/CEGUI/Affector.h:42
Definition: cegui/include/CEGUI/RendererModules/Irrlicht/ImageCodec.h:34