27 #ifndef _CEGUIRenderEffectManager_h_
28 #define _CEGUIRenderEffectManager_h_
30 #include "CEGUI/Singleton.h"
31 #include "CEGUI/IteratorBase.h"
32 #include "CEGUI/Logger.h"
33 #include "CEGUI/Exceptions.h"
34 #include "CEGUI/RenderEffectFactory.h"
38 # pragma warning(push)
39 # pragma warning(disable : 4251)
50 class CEGUIEXPORT RenderEffectManager :
51 public Singleton<RenderEffectManager>,
52 public AllocatedObject<RenderEffectManager>
56 typedef std::map<String, RenderEffectFactory*, StringFastLessCompare
57 CEGUI_MAP_ALLOC(String, RenderEffectFactory*)> RenderEffectRegistry;
60 typedef std::map<RenderEffect*, RenderEffectFactory*, std::less<RenderEffect*>
61 CEGUI_MAP_ALLOC(RenderEffect*, RenderEffectFactory*)> EffectCreatorMap;
64 RenderEffectRegistry d_effectRegistry;
66 EffectCreatorMap d_effects;
99 void addEffect(
const String& name);
117 void removeEffect(
const String& name);
131 bool isEffectAvailable(
const String& name)
const;
176 template <
typename T>
181 "A RenderEffect is already registered under the name '" +
187 Logger::getSingleton().logEvent(
188 "Registered RenderEffect named '" + name +
"'");
196 #if defined(_MSC_VER)
197 # pragma warning(pop)
200 #endif // end of guard _CEGUIRenderEffectManager_h_
Interface for objects that hook into RenderingWindow to affect the rendering process, thus allowing various effects to be achieved.
Definition: cegui/include/CEGUI/RenderEffect.h:40
Singleton class that manages creation and destruction of RenderEffect based objects.
Definition: cegui/include/CEGUI/RenderEffectManager.h:50
void addEffect(const String &name)
Register a RenderEffect type with the system and associate it with the identifier name...
Definition: cegui/include/CEGUI/RenderEffectManager.h:177
Main namespace for Crazy Eddie's GUI Library.
Definition: cegui/include/CEGUI/Affector.h:42
Exception class used when an attempt is made create a named object of a particular type when an objec...
Definition: cegui/include/CEGUI/Exceptions.h:483
ConstMapIterator< RenderEffectRegistry > RenderEffectIterator
Iterator type that iterates over entries in the RenderEffectRegistry.
Definition: debian/tmp/usr/include/cegui-0.8.7/CEGUI/RenderEffectManager.h:70
Templatised RenderEffectFactory subclass used internally by the system.
Definition: cegui/include/CEGUI/RenderEffectFactory.h:56
An abstract base class providing common functionality and specifying the required interface for deriv...
Definition: cegui/include/CEGUI/Window.h:149
bool isEffectAvailable(const String &name) const
Return whether a RenderEffect has been registered under the specified name.
Definition: RenderEffectManager.cpp:79
iterator class for maps
Definition: cegui/include/CEGUI/IteratorBase.h:196
String class used within the GUI system.
Definition: cegui/include/CEGUI/String.h:62