27 #ifndef _CEGUIOgreRenderer_h_ 28 #define _CEGUIOgreRenderer_h_ 30 #include "../../Renderer.h" 31 #include "../../Size.h" 32 #include "../../Vector.h" 33 #include "CEGUI/Config.h" 37 #if (defined( __WIN32__ ) || defined( _WIN32 )) && !defined(CEGUI_STATIC) 38 # ifdef CEGUIOGRERENDERER_EXPORTS 39 # define OGRE_GUIRENDERER_API __declspec(dllexport) 41 # define OGRE_GUIRENDERER_API __declspec(dllimport) 44 # define OGRE_GUIRENDERER_API 48 # pragma warning(push) 49 # pragma warning(disable : 4251) 57 #if (CEGUI_OGRE_VERSION < ((1 << 16) | (9 << 8) | 0)) 60 template<
typename T>
class SharedPtr;
62 typedef SharedPtr<Texture> TexturePtr;
70 class OgreGeometryBuffer;
72 class OgreResourceProvider;
74 class OgreWindowTarget;
75 struct OgreRenderer_impl;
78 class OGRE_GUIRENDERER_API OgreRenderer :
public Renderer
106 static OgreRenderer& bootstrapSystem(
const int abi = CEGUI_VERSION_ABI);
133 const int abi = CEGUI_VERSION_ABI);
151 static void destroySystem();
163 static OgreRenderer& create(
const int abi = CEGUI_VERSION_ABI);
171 const int abi = CEGUI_VERSION_ABI);
174 static void destroy(OgreRenderer& renderer);
177 static OgreResourceProvider& createOgreResourceProvider();
180 static void destroyOgreResourceProvider(OgreResourceProvider& rp);
183 static OgreImageCodec& createOgreImageCodec();
186 static void destroyOgreImageCodec(OgreImageCodec& ic);
189 void setRenderingEnabled(
const bool enabled);
192 bool isRenderingEnabled()
const;
212 bool take_ownership =
false);
215 void setupRenderingBlendMode(
const BlendMode mode,
216 const bool force =
false);
235 void setFrameControlExecutionEnabled(
const bool enabled);
254 bool isFrameControlExecutionEnabled()
const;
264 void initialiseRenderStateSettings();
286 bool isUsingShaders()
const;
306 void setUsingShaders(
const bool use_shaders);
326 void updateShaderParams()
const;
354 RenderTarget& getDefaultRenderTarget();
355 GeometryBuffer& createGeometryBuffer();
356 void destroyGeometryBuffer(
const GeometryBuffer& buffer);
357 void destroyAllGeometryBuffers();
358 TextureTarget* createTextureTarget();
359 void destroyTextureTarget(TextureTarget* target);
360 void destroyAllTextureTargets();
361 Texture& createTexture(
const String& name);
362 Texture& createTexture(
const String& name,
363 const String& filename,
364 const String& resourceGroup);
365 Texture& createTexture(
const String& name,
const Sizef& size);
366 void destroyTexture(Texture& texture);
367 void destroyTexture(
const String& name);
368 void destroyAllTextures();
369 Texture& getTexture(
const String& name)
const;
370 bool isTextureDefined(
const String& name)
const;
371 void beginRendering();
373 void setDisplaySize(
const Sizef& sz);
374 const Sizef& getDisplaySize()
const;
375 const Vector2f& getDisplayDPI()
const;
376 uint getMaxTextureSize()
const;
377 const String& getIdentifierString()
const;
385 virtual ~OgreRenderer();
388 void checkOgreInitialised();
390 void throwIfNameExists(
const String& name)
const;
392 static void logTextureCreation(
const String& name);
394 static void logTextureDestruction(
const String& name);
399 void initialiseShaders();
401 void cleanupShaders();
404 OgreRenderer_impl* d_pimpl;
410 #if defined(_MSC_VER) 411 # pragma warning(pop) 414 #endif // end of guard _CEGUIOgreRenderer_h_ Definition: python_CEGUIOgreRenderer.h:15
Main namespace for Crazy Eddie's GUI Library.
Definition: cegui/include/CEGUI/Affector.h:42
Definition: python_CEGUIOgreRenderer.h:17
Definition: python_CEGUIOgreRenderer.h:23
Definition: cegui/include/CEGUI/RendererModules/Ogre/GeometryBuffer.h:44