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;
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);
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;
357 void destroyAllGeometryBuffers();
360 void destroyAllTextureTargets();
364 const String& resourceGroup);
366 void destroyTexture(
Texture& texture);
367 void destroyTexture(
const String& name);
368 void destroyAllTextures();
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;
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();
410 #if defined(_MSC_VER)
411 # pragma warning(pop)
414 #endif // end of guard _CEGUIOgreRenderer_h_
Definition: python_CEGUIOgreRenderer.h:15
CEGUI::Renderer implementation for the Ogre engine.
Definition: cegui/include/CEGUI/RendererModules/Ogre/Renderer.h:78
Main namespace for Crazy Eddie's GUI Library.
Definition: cegui/include/CEGUI/Affector.h:42
ImageCodec object that loads data via image loading facilities in Ogre.
Definition: cegui/include/CEGUI/RendererModules/Ogre/ImageCodec.h:40
Definition: python_CEGUIOgreRenderer.h:17
Abstract class defining the interface for objects that buffer geometry for later rendering.
Definition: cegui/include/CEGUI/GeometryBuffer.h:42
Definition: cegui/include/CEGUI/RendererModules/Ogre/ResourceProvider.h:38
Specialisation of RenderTarget interface that should be used as the base class for RenderTargets that...
Definition: cegui/include/CEGUI/TextureTarget.h:40
Definition: python_CEGUIOgreRenderer.h:23
Abstract base class specifying the required interface for Texture objects.
Definition: cegui/include/CEGUI/Texture.h:52
Abstract class defining the basic required interface for Renderer objects.
Definition: cegui/include/CEGUI/Renderer.h:82
BlendMode
Enumerated type that contains the valid options that specify the type of blending that is to be perfo...
Definition: cegui/include/CEGUI/Renderer.h:61
Definition: cegui/include/CEGUI/RendererModules/Ogre/GeometryBuffer.h:44
Defines interface to some surface that can be rendered to. Concrete instances of objects that impleme...
Definition: cegui/include/CEGUI/RenderTarget.h:57
Definition: Ogre/Renderer.cpp:165
OgreRenderer_impl * d_pimpl
Pointer to the hidden implementation data.
Definition: cegui/include/CEGUI/RendererModules/Ogre/Renderer.h:404
String class used within the GUI system.
Definition: cegui/include/CEGUI/String.h:62